soc-camera: unify i2c camera device platform data
authorGuennadi Liakhovetski <g.liakhovetski@gmx.de>
Tue, 12 May 2009 15:13:32 +0000 (15:13 +0000)
committerPaul Mundt <lethal@linux-sh.org>
Wed, 17 Jun 2009 07:22:34 +0000 (16:22 +0900)
Unify i2c camera device platform data to point to struct soc_camera_link
for a smooth transition to soc-camera as a platform driver.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
arch/sh/boards/board-ap325rxa.c
arch/sh/boards/mach-migor/setup.c
drivers/media/video/ov772x.c
drivers/media/video/tw9910.c

index 1c4d83e..8cc4687 100644 (file)
@@ -417,7 +417,7 @@ static struct i2c_board_info __initdata ap325rxa_i2c_devices[] = {
        },
        {
                I2C_BOARD_INFO("ov772x", 0x21),
-               .platform_data = &ov7725_info,
+               .platform_data = &ov7725_info.link,
        },
 };
 
index 6ed401c..95d9021 100644 (file)
@@ -430,11 +430,11 @@ static struct i2c_board_info migor_i2c_devices[] = {
        },
        {
                I2C_BOARD_INFO("ov772x", 0x21),
-               .platform_data = &ov7725_info,
+               .platform_data = &ov7725_info.link,
        },
        {
                I2C_BOARD_INFO("tw9910", 0x45),
-               .platform_data = &tw9910_info,
+               .platform_data = &tw9910_info.link,
        },
 };
 
index c0d9112..0bce255 100644 (file)
@@ -1067,10 +1067,12 @@ static int ov772x_probe(struct i2c_client *client,
        struct i2c_adapter        *adapter = to_i2c_adapter(client->dev.parent);
        int                        ret;
 
-       info = client->dev.platform_data;
-       if (!info)
+       if (!client->dev.platform_data)
                return -EINVAL;
 
+       info = container_of(client->dev.platform_data,
+                           struct ov772x_camera_info, link);
+
        if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA)) {
                dev_err(&adapter->dev,
                        "I2C-Adapter doesn't support "
index a399476..aa5065e 100644 (file)
@@ -875,10 +875,12 @@ static int tw9910_probe(struct i2c_client *client,
        const struct tw9910_scale_ctrl *scale;
        int                             i, ret;
 
-       info = client->dev.platform_data;
-       if (!info)
+       if (!client->dev.platform_data)
                return -EINVAL;
 
+       info = container_of(client->dev.platform_data,
+                           struct tw9910_video_info, link);
+
        if (!i2c_check_functionality(to_i2c_adapter(client->dev.parent),
                                     I2C_FUNC_SMBUS_BYTE_DATA)) {
                dev_err(&client->dev,