break kconfig dependency loop
authorGerd Hoffmann <kraxel@redhat.com>
Tue, 11 Nov 2014 08:17:00 +0000 (09:17 +0100)
committerGerd Hoffmann <kraxel@redhat.com>
Tue, 2 Jun 2015 08:17:21 +0000 (10:17 +0200)
After adding virtio-gpu I get this funky kconfig dependency loop.

scripts/kconfig/conf --oldconfig Kconfig
drivers/video/fbdev/Kconfig:5:error: recursive dependency detected!
drivers/video/fbdev/Kconfig:5:  symbol FB is selected by DRM_KMS_FB_HELPER
drivers/gpu/drm/Kconfig:34:     symbol DRM_KMS_FB_HELPER is selected by DRM_VIRTIO_GPU
drivers/gpu/drm/virtio/Kconfig:1:       symbol DRM_VIRTIO_GPU depends on VIRTIO
drivers/virtio/Kconfig:1:       symbol VIRTIO is selected by REMOTEPROC
drivers/remoteproc/Kconfig:4:   symbol REMOTEPROC is selected by OMAP_REMOTEPROC
drivers/remoteproc/Kconfig:12:  symbol OMAP_REMOTEPROC depends on OMAP_IOMMU
drivers/iommu/Kconfig:141:      symbol OMAP_IOMMU is selected by VIDEO_OMAP3
drivers/media/platform/Kconfig:96:      symbol VIDEO_OMAP3 depends on VIDEO_V4L2
drivers/media/v4l2-core/Kconfig:6:      symbol VIDEO_V4L2 depends on I2C
drivers/i2c/Kconfig:7:  symbol I2C is selected by FB_DDC
drivers/video/fbdev/Kconfig:59: symbol FB_DDC is selected by FB_CYBER2000_DDC
drivers/video/fbdev/Kconfig:374:        symbol FB_CYBER2000_DDC depends on FB_CYBER2000
drivers/video/fbdev/Kconfig:362:        symbol FB_CYBER2000 depends on FB

Making VIDEO_OMAP3 depend on OMAP_IOMMU instead of selecting it breaks the
loop, which looks like the best way to handle it to me.  Updated OMAP_IOMMU
help text accordingly.

Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Acked-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
drivers/iommu/Kconfig
drivers/media/platform/Kconfig

index 1ae4e547b419b909a9748b54cc6b973d31ff0221..a5c8d5e62871f23160dbc21d94fadd4617ca12ac 100644 (file)
@@ -178,6 +178,9 @@ config OMAP_IOMMU
        depends on ARM && MMU
        depends on ARCH_OMAP2PLUS || COMPILE_TEST
        select IOMMU_API
+       ---help---
+         The OMAP3 media platform drivers depend on iommu support,
+         if you need them say Y here.
 
 config OMAP_IOMMU_DEBUG
        bool "Export OMAP IOMMU internals in DebugFS"
index 421f53188c6ce9c5fbe26d0b93762e759ed5a874..19306f7229c0b1c960cbe3551949e2e3cc2bb892 100644 (file)
@@ -87,8 +87,8 @@ config VIDEO_OMAP3
        tristate "OMAP 3 Camera support"
        depends on VIDEO_V4L2 && I2C && VIDEO_V4L2_SUBDEV_API && ARCH_OMAP3
        depends on HAS_DMA
+       depends on OMAP_IOMMU
        select ARM_DMA_USE_IOMMU
-       select OMAP_IOMMU
        select VIDEOBUF2_DMA_CONTIG
        select MFD_SYSCON
        ---help---