Most of our helpers have relied on being selected so far through
Kconfig, but that creates issues when we have multiple layers of helpers
with some depending on others.

Indeed, select doesn't select a dependency's dependencies, and thus
isn't super intuitive. Depends on however doesn't have that limitation,
so we can just switch all the drivers that were selecting
DRM_DISPLAY_HDMI_HELPER to depend on it.

Signed-off-by: Maxime Ripard <mrip...@kernel.org>
---
 drivers/gpu/drm/amd/amdgpu/Kconfig      | 2 +-
 drivers/gpu/drm/bridge/synopsys/Kconfig | 2 +-
 drivers/gpu/drm/i915/Kconfig            | 2 +-
 drivers/gpu/drm/nouveau/Kconfig         | 2 +-
 drivers/gpu/drm/tegra/Kconfig           | 2 +-
 drivers/gpu/drm/vc4/Kconfig             | 2 +-
 drivers/gpu/drm/xe/Kconfig              | 2 +-
 7 files changed, 7 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/Kconfig 
b/drivers/gpu/drm/amd/amdgpu/Kconfig
index 1662dc49f18e..b0365cc1374e 100644
--- a/drivers/gpu/drm/amd/amdgpu/Kconfig
+++ b/drivers/gpu/drm/amd/amdgpu/Kconfig
@@ -3,16 +3,16 @@
 config DRM_AMDGPU
        tristate "AMD GPU"
        depends on DRM
        depends on DRM_DISPLAY_DP_HELPER
        depends on DRM_DISPLAY_HDCP_HELPER
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
        depends on MMU
        depends on PCI
        depends on !UML
        select FW_LOADER
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_KMS_HELPER
        select DRM_SCHED
        select DRM_TTM
        select DRM_TTM_HELPER
        select POWER_SUPPLY
diff --git a/drivers/gpu/drm/bridge/synopsys/Kconfig 
b/drivers/gpu/drm/bridge/synopsys/Kconfig
index f366ece47146..387f5bd86089 100644
--- a/drivers/gpu/drm/bridge/synopsys/Kconfig
+++ b/drivers/gpu/drm/bridge/synopsys/Kconfig
@@ -1,10 +1,10 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_DW_HDMI
        tristate
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_KMS_HELPER
        select REGMAP_MMIO
        select CEC_CORE if CEC_NOTIFIER
 
 config DRM_DW_HDMI_AHB_AUDIO
diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
index 87ef8c4d72a5..4f0d18a16b0f 100644
--- a/drivers/gpu/drm/i915/Kconfig
+++ b/drivers/gpu/drm/i915/Kconfig
@@ -2,20 +2,20 @@
 config DRM_I915
        tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
        depends on DRM
        depends on DRM_DISPLAY_DP_HELPER
        depends on DRM_DISPLAY_HDCP_HELPER
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
        depends on X86 && PCI
        depends on !PREEMPT_RT
        select INTEL_GTT if X86
        select INTERVAL_TREE
        # we need shmfs for the swappable backing store, and in particular
        # the shmem_readpage() which depends upon tmpfs
        select SHMEM
        select TMPFS
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_KMS_HELPER
        select DRM_PANEL
        select DRM_MIPI_DSI
        select FB_IOMEM_HELPERS if DRM_FBDEV_EMULATION
        select RELAY
diff --git a/drivers/gpu/drm/nouveau/Kconfig b/drivers/gpu/drm/nouveau/Kconfig
index 7cc305b2826d..4c10b400658c 100644
--- a/drivers/gpu/drm/nouveau/Kconfig
+++ b/drivers/gpu/drm/nouveau/Kconfig
@@ -1,16 +1,16 @@
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_NOUVEAU
        tristate "Nouveau (NVIDIA) cards"
        depends on DRM
        depends on DRM_DISPLAY_DP_HELPER
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
        depends on PCI
        depends on MMU
        select IOMMU_API
        select FW_LOADER
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_KMS_HELPER
        select DRM_TTM
        select DRM_TTM_HELPER
        select DRM_EXEC
        select DRM_GPUVM
diff --git a/drivers/gpu/drm/tegra/Kconfig b/drivers/gpu/drm/tegra/Kconfig
index bb6e35261f11..6974caa99ece 100644
--- a/drivers/gpu/drm/tegra/Kconfig
+++ b/drivers/gpu/drm/tegra/Kconfig
@@ -4,13 +4,13 @@ config DRM_TEGRA
        depends on ARCH_TEGRA || COMPILE_TEST
        depends on COMMON_CLK
        depends on DRM
        depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_DP_HELPER
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
        depends on OF
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_KMS_HELPER
        select DRM_MIPI_DSI
        select DRM_PANEL
        select FB_DMAMEM_HELPERS if DRM_FBDEV_EMULATION
        select TEGRA_HOST1X
diff --git a/drivers/gpu/drm/vc4/Kconfig b/drivers/gpu/drm/vc4/Kconfig
index 98772a6b5bf0..4801f8b64d3d 100644
--- a/drivers/gpu/drm/vc4/Kconfig
+++ b/drivers/gpu/drm/vc4/Kconfig
@@ -2,17 +2,17 @@
 config DRM_VC4
        tristate "Broadcom VC4 Graphics"
        depends on ARCH_BCM || ARCH_BCM2835 || COMPILE_TEST
        depends on COMMON_CLK
        depends on DRM
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
        depends on PM
        # Make sure not 'y' when RASPBERRYPI_FIRMWARE is 'm'. This can only
        # happen when COMPILE_TEST=y, hence the added !RASPBERRYPI_FIRMWARE.
        depends on RASPBERRYPI_FIRMWARE || (COMPILE_TEST && 
!RASPBERRYPI_FIRMWARE)
        depends on SND && SND_SOC
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_KMS_HELPER
        select DRM_GEM_DMA_HELPER
        select DRM_PANEL_BRIDGE
        select SND_PCM
        select SND_PCM_ELD
diff --git a/drivers/gpu/drm/xe/Kconfig b/drivers/gpu/drm/xe/Kconfig
index 1fa8ef75823c..bfa0e9d4bd64 100644
--- a/drivers/gpu/drm/xe/Kconfig
+++ b/drivers/gpu/drm/xe/Kconfig
@@ -3,10 +3,11 @@ config DRM_XE
        tristate "Intel Xe Graphics"
        depends on (m || (y && KUNIT=y))
        depends on DRM
        depends on DRM_DISPLAY_DP_HELPER
        depends on DRM_DISPLAY_HDCP_HELPER
+       depends on DRM_DISPLAY_HDMI_HELPER
        depends on DRM_DISPLAY_HELPER
        depends on MMU
        depends on PCI
        select INTERVAL_TREE
        # we need shmfs for the swappable backing store, and in particular
@@ -17,11 +18,10 @@ config DRM_XE
        select DRM_EXEC
        select DRM_KMS_HELPER
        select DRM_KUNIT_TEST_HELPERS if DRM_XE_KUNIT_TEST != n
        select DRM_PANEL
        select DRM_SUBALLOC_HELPER
-       select DRM_DISPLAY_HDMI_HELPER
        select DRM_MIPI_DSI
        select RELAY
        select IRQ_WORK
        # xe depends on ACPI_VIDEO when ACPI is enabled
        # but for select to work, need to select ACPI_VIDEO's dependencies, ick

-- 
2.44.0

Reply via email to