V4L/DVB (11373): v4l2-common: add explicit v4l2_device pointer as first arg to new_(probed)_subdev
The functions v4l2_i2c_new_subdev and v4l2_i2c_new_probed_subdev relied on
i2c_get_adapdata to return the v4l2_device. However, this is not always
possible on embedded platforms. So modify the API to pass the v4l2_device
pointer explicitly.
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
diff --git a/drivers/media/video/vino.c b/drivers/media/video/vino.c
index c39a2d4..9434375 100644
--- a/drivers/media/video/vino.c
+++ b/drivers/media/video/vino.c
@@ -4337,11 +4337,13 @@
vino_init_stage++;
addr[0] = 0x45;
- vino_drvdata->decoder = v4l2_i2c_new_probed_subdev(&vino_i2c_adapter,
- "saa7191", "saa7191", addr);
+ vino_drvdata->decoder =
+ v4l2_i2c_new_probed_subdev(&vino_drvdata->v4l2_dev,
+ &vino_i2c_adapter, "saa7191", "saa7191", addr);
addr[0] = 0x2b;
- vino_drvdata->camera = v4l2_i2c_new_probed_subdev(&vino_i2c_adapter,
- "indycam", "indycam", addr);
+ vino_drvdata->camera =
+ v4l2_i2c_new_probed_subdev(&vino_drvdata->v4l2_dev,
+ &vino_i2c_adapter, "indycam", "indycam", addr);
dprintk("init complete!\n");