summaryrefslogtreecommitdiffstats
path: root/drivers/media/i2c/ths7303.c
diff options
context:
space:
mode:
authorLad, Prabhakar2013-05-25 18:39:35 +0200
committerMauro Carvalho Chehab2013-06-13 16:41:47 +0200
commit8524ce558a0111762efa1a6b5ba9ce5e092b4707 (patch)
treebb4935607cf3aa0ad088e5f8ebf6d3db6c8f1ba5 /drivers/media/i2c/ths7303.c
parent[media] media: i2c: ths7303: remove init_enable option from pdata (diff)
downloadkernel-qcow2-linux-8524ce558a0111762efa1a6b5ba9ce5e092b4707.tar.gz
kernel-qcow2-linux-8524ce558a0111762efa1a6b5ba9ce5e092b4707.tar.xz
kernel-qcow2-linux-8524ce558a0111762efa1a6b5ba9ce5e092b4707.zip
[media] media: i2c: ths7303: remove unnecessary function ths7303_setup()
the ths7303_setup() was doing the same thing as ths7303_setval() except that ths7303_setval() sets it to some particular mode. This patch removes ths7303_setup() function and calls ths7303_setval() in the probe setting the device to 480I_576I filter mode in the probe. Signed-off-by: Lad, Prabhakar <prabhakar.csengg@gmail.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/i2c/ths7303.c')
-rw-r--r--drivers/media/i2c/ths7303.c31
1 files changed, 4 insertions, 27 deletions
diff --git a/drivers/media/i2c/ths7303.c b/drivers/media/i2c/ths7303.c
index 8cddcd0cfa09..af06187c74f8 100644
--- a/drivers/media/i2c/ths7303.c
+++ b/drivers/media/i2c/ths7303.c
@@ -349,30 +349,6 @@ static const struct v4l2_subdev_ops ths7303_ops = {
.video = &ths7303_video_ops,
};
-static int ths7303_setup(struct v4l2_subdev *sd)
-{
- struct ths7303_state *state = to_state(sd);
- struct ths7303_platform_data *pdata = &state->pdata;
- int ret;
- u8 mask;
-
- mask = 0xf8;
-
- ret = ths7303_write(sd, THS7303_CHANNEL_1, pdata->ch_1 & mask);
- if (ret)
- return ret;
-
- ret = ths7303_write(sd, THS7303_CHANNEL_2, pdata->ch_2 & mask);
- if (ret)
- return ret;
-
- ret = ths7303_write(sd, THS7303_CHANNEL_3, pdata->ch_3 & mask);
- if (ret)
- return ret;
-
- return 0;
-}
-
static int ths7303_probe(struct i2c_client *client,
const struct i2c_device_id *id)
{
@@ -402,9 +378,10 @@ static int ths7303_probe(struct i2c_client *client,
/* store the driver data to differntiate the chip */
state->driver_data = (int)id->driver_data;
- if (ths7303_setup(sd) < 0) {
- v4l_err(client, "init failed\n");
- return -EIO;
+ /* set to default 480I_576I filter mode */
+ if (ths7303_setval(sd, THS7303_FILTER_MODE_480I_576I) < 0) {
+ v4l_err(client, "Setting to 480I_576I filter mode failed!\n");
+ return -EINVAL;
}
return 0;