Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

media: i2c: add KConfig dependencies

The new ov5670 driver fails to build when VIDEO_V4L2_SUBDEV_API
or MEDIA_CONTROLLER are disabled:

drivers/media/i2c/ov5670.c: In function 'ov5670_open':
drivers/media/i2c/ov5670.c:1917:5: error: implicit declaration of function 'v4l2_subdev_get_try_format'; did you mean 'v4l2_subdev_notify_event'? [-Werror=implicit-function-declaration]
v4l2_subdev_get_try_format(sd, fh->pad, 0);
^~~~~~~~~~~~~~~~~~~~~~~~~~
v4l2_subdev_notify_event
drivers/media/i2c/ov5670.c:1917:38: error: 'struct v4l2_subdev_fh' has no member named 'pad'
v4l2_subdev_get_try_format(sd, fh->pad, 0);
^~
drivers/media/i2c/ov5670.c: In function 'ov5670_do_get_pad_format':
drivers/media/i2c/ov5670.c:2198:17: error: invalid type argument of unary '*' (have 'int')
fmt->format = *v4l2_subdev_get_try_format(&ov5670->sd, cfg,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
fmt->pad);
~~~~~~~~~
drivers/media/i2c/ov5670.c: At top level:
drivers/media/i2c/ov5670.c:2444:19: error: 'v4l2_subdev_link_validate' undeclared here (not in a function); did you mean 'v4l2_subdev_init'?
.link_validate = v4l2_subdev_link_validate,
^~~~~~~~~~~~~~~~~~~~~~~~~
v4l2_subdev_init
drivers/media/i2c/ov5670.c: In function 'ov5670_probe':
drivers/media/i2c/ov5670.c:2492:12: error: 'struct v4l2_subdev' has no member named 'entity'

This adds both to the Kconfig entry.

Fixes: 5de35c9b8dcd ("media: i2c: Add Omnivision OV5670 5M sensor support")

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>

authored by

Arnd Bergmann and committed by
Mauro Carvalho Chehab
fa31c117 f3c8e4b5

+2 -1
+2 -1
drivers/media/i2c/Kconfig
··· 618 618 619 619 config VIDEO_OV5670 620 620 tristate "OmniVision OV5670 sensor support" 621 - depends on I2C && VIDEO_V4L2 621 + depends on I2C && VIDEO_V4L2 && VIDEO_V4L2_SUBDEV_API 622 622 depends on MEDIA_CAMERA_SUPPORT 623 + depends on MEDIA_CONTROLLER 623 624 select V4L2_FWNODE 624 625 ---help--- 625 626 This is a Video4Linux2 sensor-level driver for the OmniVision