On 14/02/2024 12:38, Dawei Li wrote: > Kernel test robot reports: > ld: drivers/media/i2c/ov7670.o: in function `ov7670_remove': > drivers/media/i2c/ov7670.c:2011: undefined reference to > `v4l2_async_unregister_subdev' > ld: drivers/media/i2c/ov7670.o: in function `ov7670_parse_dt': > drivers/media/i2c/ov7670.c:1836: undefined reference to > `v4l2_fwnode_endpoint_parse' > ld: drivers/media/i2c/ov7670.o: in function `ov7670_probe': > drivers/media/i2c/ov7670.c:1990: undefined reference to > `v4l2_async_register_subdev' > ld: drivers/media/platform/marvell/cafe-driver.o: in function > `cafe_pci_probe': >>> drivers/media/platform/marvell/cafe-driver.c:543: undefined reference > to `v4l2_async_nf_init' >>> ld: drivers/media/platform/marvell/cafe-driver.c:545: undefined > reference to `__v4l2_async_nf_add_i2c' > ld: drivers/media/platform/marvell/mcam-core.o: in function > `mccic_shutdown': >>> drivers/media/platform/marvell/mcam-core.c:1931: undefined reference to > `v4l2_async_nf_unregister' >>> ld: drivers/media/platform/marvell/mcam-core.c:1932: undefined reference > to `v4l2_async_nf_cleanup' > ld: drivers/media/platform/marvell/mcam-core.o: in function > `mccic_register': > drivers/media/platform/marvell/mcam-core.c:1910: undefined reference to > `v4l2_async_nf_unregister' > ld: drivers/media/platform/marvell/mcam-core.c:1911: undefined reference > to `v4l2_async_nf_cleanup' >>> ld: drivers/media/platform/marvell/mcam-core.c:1873: undefined reference > to `v4l2_async_nf_register' > > Add explicit dependency on CONFIG_V4L2_ASYNC to mute ld errors. > > Reported-by: kernel test robot <lkp@xxxxxxxxx> > Closes: https://lore.kernel.org/oe-kbuild-all/202402130955.f6uxzdCA-lkp@xxxxxxxxx/ > Signed-off-by: Dawei Li <dawei.li@xxxxxxxxxxxx> This is a duplicate of: https://patchwork.linuxtv.org/project/linux-media/patch/20240213095555.454392-1-arnd@xxxxxxxxxx/ The ov7670 undefined reference has been resolved quite some time ago, this kernel test robot build is from a 6 months old tree. I'll take Arnd's patch instead of yours. Regards, Hans > --- > drivers/media/i2c/Kconfig | 1 + > drivers/media/platform/marvell/Kconfig | 2 ++ > 2 files changed, 3 insertions(+) > > diff --git a/drivers/media/i2c/Kconfig b/drivers/media/i2c/Kconfig > index 4c3435921f19..453cb4b81d6f 100644 > --- a/drivers/media/i2c/Kconfig > +++ b/drivers/media/i2c/Kconfig > @@ -523,6 +523,7 @@ config VIDEO_OV7640 > module will be called ov7640. > > config VIDEO_OV7670 > + select V4L2_ASYNC > tristate "OmniVision OV7670 sensor support" > help > This is a Video4Linux2 sensor driver for the OmniVision > diff --git a/drivers/media/platform/marvell/Kconfig b/drivers/media/platform/marvell/Kconfig > index d6499ffe30e8..48f5484478a0 100644 > --- a/drivers/media/platform/marvell/Kconfig > +++ b/drivers/media/platform/marvell/Kconfig > @@ -11,6 +11,7 @@ config VIDEO_CAFE_CCIC > select VIDEOBUF2_VMALLOC > select VIDEOBUF2_DMA_CONTIG > select VIDEOBUF2_DMA_SG > + select V4L2_ASYNC > help > This is a video4linux2 driver for the Marvell 88ALP01 integrated > CMOS camera controller. This is the controller found on first- > @@ -27,6 +28,7 @@ config VIDEO_MMP_CAMERA > select VIDEOBUF2_VMALLOC > select VIDEOBUF2_DMA_CONTIG > select VIDEOBUF2_DMA_SG > + select V4L2_ASYNC > help > This is a Video4Linux2 driver for the integrated camera > controller found on Marvell Armada 610 application