* [PATCH 1/2] media: v4l: cadence: add VIDEO_V4L2 dependency
@ 2018-05-30 22:07 Arnd Bergmann
2018-05-30 22:07 ` [PATCH 2/2] media: v4l: omap: " Arnd Bergmann
2018-05-31 8:07 ` [PATCH 1/2] media: v4l: cadence: " Maxime Ripard
0 siblings, 2 replies; 3+ messages in thread
From: Arnd Bergmann @ 2018-05-30 22:07 UTC (permalink / raw)
To: Mauro Carvalho Chehab
Cc: Arnd Bergmann, Maxime Ripard, Sakari Ailus, Benoit Parrot,
Niklas Söderlund, linux-media, linux-kernel
The cadence media drivers can be built-in while the v4l2 core is a loadable
module. This is a mistake and leads to link errors:
drivers/media/v4l2-core/v4l2-fwnode.o: In function `v4l2_async_register_subdev_sensor_common':
v4l2-fwnode.c:(.text+0x12f0): undefined reference to `v4l2_async_subdev_notifier_register'
v4l2-fwnode.c:(.text+0x1304): undefined reference to `v4l2_async_register_subdev'
v4l2-fwnode.c:(.text+0x1318): undefined reference to `v4l2_async_notifier_unregister'
v4l2-fwnode.c:(.text+0x1338): undefined reference to `v4l2_async_notifier_cleanup'
cdns-csi2rx.c:(.text+0x9f8): undefined reference to `v4l2_subdev_init'
cdns-csi2rx.c:(.text+0xa78): undefined reference to `v4l2_async_register_subdev'
drivers/media/platform/cadence/cdns-csi2tx.o: In function `csi2tx_remove':
cdns-csi2tx.c:(.text+0x88): undefined reference to `v4l2_async_unregister_subdev'
drivers/media/platform/cadence/cdns-csi2tx.o: In function `csi2tx_probe':
cdns-csi2tx.c:(.text+0x884): undefined reference to `v4l2_subdev_init'
cdns-csi2tx.c:(.text+0xa9c): undefined reference to `v4l2_async_register_subdev'
An explicit Kconfig dependency on VIDEO_V4L2 avoids the problem.
Fixes: 1fc3b37f34f6 ("media: v4l: cadence: Add Cadence MIPI-CSI2 RX driver")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/media/platform/cadence/Kconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/media/platform/cadence/Kconfig b/drivers/media/platform/cadence/Kconfig
index 3bf0f2454384..cf6124da3c54 100644
--- a/drivers/media/platform/cadence/Kconfig
+++ b/drivers/media/platform/cadence/Kconfig
@@ -11,6 +11,7 @@ if VIDEO_CADENCE
config VIDEO_CADENCE_CSI2RX
tristate "Cadence MIPI-CSI2 RX Controller"
+ depends on VIDEO_V4L2
depends on MEDIA_CONTROLLER
depends on VIDEO_V4L2_SUBDEV_API
select V4L2_FWNODE
@@ -22,6 +23,7 @@ config VIDEO_CADENCE_CSI2RX
config VIDEO_CADENCE_CSI2TX
tristate "Cadence MIPI-CSI2 TX Controller"
+ depends on VIDEO_V4L2
depends on MEDIA_CONTROLLER
depends on VIDEO_V4L2_SUBDEV_API
select V4L2_FWNODE
--
2.9.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 2/2] media: v4l: omap: add VIDEO_V4L2 dependency
2018-05-30 22:07 [PATCH 1/2] media: v4l: cadence: add VIDEO_V4L2 dependency Arnd Bergmann
@ 2018-05-30 22:07 ` Arnd Bergmann
2018-05-31 8:07 ` [PATCH 1/2] media: v4l: cadence: " Maxime Ripard
1 sibling, 0 replies; 3+ messages in thread
From: Arnd Bergmann @ 2018-05-30 22:07 UTC (permalink / raw)
To: Mauro Carvalho Chehab; +Cc: Arnd Bergmann, linux-media, linux-kernel
The omap media driver can be built-in while the v4l2 core is a loadable
module. This is a mistake and leads to link errors:
drivers/media/platform/omap/omap_vout.o: In function `omap_vout_remove':
omap_vout.c:(.text+0xec): undefined reference to `v4l2_device_unregister'
omap_vout.c:(.text+0x140): undefined reference to `video_device_release'
omap_vout.c:(.text+0x150): undefined reference to `video_unregister_device'
omap_vout.c:(.text+0x15c): undefined reference to `v4l2_ctrl_handler_free'
An explicit Kconfig dependency on VIDEO_V4L2 avoids the problem.
I ran into this problem for the first time today during my randconfig
builds, but could not find what caused it.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
drivers/media/platform/omap/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/media/platform/omap/Kconfig b/drivers/media/platform/omap/Kconfig
index d827b6c285a6..4b5e55d41ad4 100644
--- a/drivers/media/platform/omap/Kconfig
+++ b/drivers/media/platform/omap/Kconfig
@@ -8,6 +8,7 @@ config VIDEO_OMAP2_VOUT
depends on MMU
depends on FB_OMAP2 || (COMPILE_TEST && FB_OMAP2=n)
depends on ARCH_OMAP2 || ARCH_OMAP3 || COMPILE_TEST
+ depends on VIDEO_V4L2
select VIDEOBUF_GEN
select VIDEOBUF_DMA_CONTIG
select OMAP2_VRFB if ARCH_OMAP2 || ARCH_OMAP3
--
2.9.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 1/2] media: v4l: cadence: add VIDEO_V4L2 dependency
2018-05-30 22:07 [PATCH 1/2] media: v4l: cadence: add VIDEO_V4L2 dependency Arnd Bergmann
2018-05-30 22:07 ` [PATCH 2/2] media: v4l: omap: " Arnd Bergmann
@ 2018-05-31 8:07 ` Maxime Ripard
1 sibling, 0 replies; 3+ messages in thread
From: Maxime Ripard @ 2018-05-31 8:07 UTC (permalink / raw)
To: Arnd Bergmann
Cc: Mauro Carvalho Chehab, Sakari Ailus, Benoit Parrot,
Niklas Söderlund, linux-media, linux-kernel
On Thu, May 31, 2018 at 12:07:10AM +0200, Arnd Bergmann wrote:
> The cadence media drivers can be built-in while the v4l2 core is a loadable
> module. This is a mistake and leads to link errors:
>
> drivers/media/v4l2-core/v4l2-fwnode.o: In function `v4l2_async_register_subdev_sensor_common':
> v4l2-fwnode.c:(.text+0x12f0): undefined reference to `v4l2_async_subdev_notifier_register'
> v4l2-fwnode.c:(.text+0x1304): undefined reference to `v4l2_async_register_subdev'
> v4l2-fwnode.c:(.text+0x1318): undefined reference to `v4l2_async_notifier_unregister'
> v4l2-fwnode.c:(.text+0x1338): undefined reference to `v4l2_async_notifier_cleanup'
> cdns-csi2rx.c:(.text+0x9f8): undefined reference to `v4l2_subdev_init'
> cdns-csi2rx.c:(.text+0xa78): undefined reference to `v4l2_async_register_subdev'
> drivers/media/platform/cadence/cdns-csi2tx.o: In function `csi2tx_remove':
> cdns-csi2tx.c:(.text+0x88): undefined reference to `v4l2_async_unregister_subdev'
> drivers/media/platform/cadence/cdns-csi2tx.o: In function `csi2tx_probe':
> cdns-csi2tx.c:(.text+0x884): undefined reference to `v4l2_subdev_init'
> cdns-csi2tx.c:(.text+0xa9c): undefined reference to `v4l2_async_register_subdev'
>
> An explicit Kconfig dependency on VIDEO_V4L2 avoids the problem.
>
> Fixes: 1fc3b37f34f6 ("media: v4l: cadence: Add Cadence MIPI-CSI2 RX driver")
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
Thanks!
Maxime
--
Maxime Ripard, Bootlin (formerly Free Electrons)
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-05-31 8:08 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-30 22:07 [PATCH 1/2] media: v4l: cadence: add VIDEO_V4L2 dependency Arnd Bergmann
2018-05-30 22:07 ` [PATCH 2/2] media: v4l: omap: " Arnd Bergmann
2018-05-31 8:07 ` [PATCH 1/2] media: v4l: cadence: " Maxime Ripard
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.