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_DP_AUX_BUS to depend on it.

Reviewed-by: Jani Nikula <jani.nik...@intel.com>
Signed-off-by: Maxime Ripard <mrip...@kernel.org>
---
 drivers/gpu/drm/bridge/Kconfig          | 6 +++---
 drivers/gpu/drm/bridge/analogix/Kconfig | 2 +-
 drivers/gpu/drm/display/Kconfig         | 1 +
 drivers/gpu/drm/mediatek/Kconfig        | 2 +-
 drivers/gpu/drm/msm/Kconfig             | 2 +-
 drivers/gpu/drm/panel/Kconfig           | 4 ++--
 drivers/gpu/drm/tegra/Kconfig           | 2 +-
 7 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/drivers/gpu/drm/bridge/Kconfig b/drivers/gpu/drm/bridge/Kconfig
index aa870e68e165..5d0193a87314 100644
--- a/drivers/gpu/drm/bridge/Kconfig
+++ b/drivers/gpu/drm/bridge/Kconfig
@@ -90,15 +90,15 @@ config DRM_FSL_LDB
        help
          Support for i.MX8MP DPI-to-LVDS on-SoC encoder.
 
 config DRM_ITE_IT6505
        tristate "ITE IT6505 DisplayPort bridge"
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        select DRM_DP_HELPER
        select EXTCON
        select CRYPTO
        select CRYPTO_HASH
@@ -224,14 +224,14 @@ config DRM_PARADE_PS8622
        help
          Parade eDP-LVDS bridge chip driver.
 
 config DRM_PARADE_PS8640
        tristate "Parade PS8640 MIPI DSI to eDP Converter"
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        select DRM_MIPI_DSI
        select DRM_PANEL
        help
          Choose this option if you have PS8640 for display
@@ -379,19 +379,19 @@ config DRM_TI_SN65DSI83
        help
          Texas Instruments SN65DSI83 and SN65DSI84 DSI to LVDS Bridge driver
 
 config DRM_TI_SN65DSI86
        tristate "TI SN65DSI86 DSI to eDP bridge"
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_KMS_HELPER
        select REGMAP_I2C
        select DRM_PANEL
        select DRM_MIPI_DSI
        select AUXILIARY_BUS
-       select DRM_DISPLAY_DP_AUX_BUS
        help
          Texas Instruments SN65DSI86 DSI to eDP Bridge driver
 
 config DRM_TI_TPD12S015
        tristate "TI TPD12S015 HDMI level shifter and ESD protection"
diff --git a/drivers/gpu/drm/bridge/analogix/Kconfig 
b/drivers/gpu/drm/bridge/analogix/Kconfig
index 16d18dde483a..ec98c9453573 100644
--- a/drivers/gpu/drm/bridge/analogix/Kconfig
+++ b/drivers/gpu/drm/bridge/analogix/Kconfig
@@ -31,15 +31,15 @@ config DRM_ANALOGIX_DP
        depends on DRM
 
 config DRM_ANALOGIX_ANX7625
        tristate "Analogix Anx7625 MIPI to DP interface support"
        depends on DRM
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        select DRM_MIPI_DSI
        help
          ANX7625 is an ultra-low power 4K mobile HD transmitter
          designed for portable devices. It converts MIPI/DPI to
          DisplayPort1.3 4K.
diff --git a/drivers/gpu/drm/display/Kconfig b/drivers/gpu/drm/display/Kconfig
index cffa2acdbc6c..0cd439691422 100644
--- a/drivers/gpu/drm/display/Kconfig
+++ b/drivers/gpu/drm/display/Kconfig
@@ -9,10 +9,11 @@ config DRM_DISPLAY_HELPER
 
 config DRM_DISPLAY_DP_AUX_BUS
        tristate "DRM DisplayPort AUX bus support"
        depends on DRM
        depends on OF || COMPILE_TEST
+       default y
 
 config DRM_DISPLAY_DP_AUX_CEC
        bool "Enable DisplayPort CEC-Tunneling-over-AUX HDMI support"
        depends on DRM
        depends on DRM_DISPLAY_HELPER
diff --git a/drivers/gpu/drm/mediatek/Kconfig b/drivers/gpu/drm/mediatek/Kconfig
index 50bb28327f65..2add54486ac4 100644
--- a/drivers/gpu/drm/mediatek/Kconfig
+++ b/drivers/gpu/drm/mediatek/Kconfig
@@ -20,15 +20,15 @@ config DRM_MEDIATEK
          This driver provides kernel mode setting and
          buffer management to userspace.
 
 config DRM_MEDIATEK_DP
        tristate "DRM DPTX Support for MediaTek SoCs"
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on DRM_MEDIATEK
        select PHY_MTK_DP
        select DRM_DISPLAY_DP_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        help
          DRM/KMS Display Port driver for MediaTek SoCs.
 
 config DRM_MEDIATEK_HDMI
        tristate "DRM HDMI Support for Mediatek SoCs"
diff --git a/drivers/gpu/drm/msm/Kconfig b/drivers/gpu/drm/msm/Kconfig
index 2055266506e5..28a898722ace 100644
--- a/drivers/gpu/drm/msm/Kconfig
+++ b/drivers/gpu/drm/msm/Kconfig
@@ -3,21 +3,21 @@
 config DRM_MSM
        tristate "MSM DRM"
        depends on ARCH_QCOM || SOC_IMX5 || COMPILE_TEST
        depends on COMMON_CLK
        depends on DRM
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on IOMMU_SUPPORT
        depends on QCOM_AOSS_QMP || QCOM_AOSS_QMP=n
        depends on QCOM_OCMEM || QCOM_OCMEM=n
        depends on QCOM_LLCC || QCOM_LLCC=n
        depends on QCOM_COMMAND_DB || QCOM_COMMAND_DB=n
        depends on PM
        select IOMMU_IO_PGTABLE
        select QCOM_MDT_LOADER if ARCH_QCOM
        select REGULATOR
-       select DRM_DISPLAY_DP_AUX_BUS
        select DRM_DISPLAY_DP_HELPER
        select DRM_EXEC
        select DRM_KMS_HELPER
        select DRM_PANEL
        select DRM_BRIDGE
diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
index c83285811bb3..01235397c493 100644
--- a/drivers/gpu/drm/panel/Kconfig
+++ b/drivers/gpu/drm/panel/Kconfig
@@ -558,15 +558,15 @@ config DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01
        select VIDEOMODE_HELPERS
 
 config DRM_PANEL_SAMSUNG_ATNA33XC20
        tristate "Samsung ATNA33XC20 eDP panel"
        depends on BACKLIGHT_CLASS_DEVICE
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        depends on PM
        select DRM_DISPLAY_DP_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        help
          DRM panel driver for the Samsung ATNA33XC20 panel. This panel can't
          be handled by the DRM_PANEL_SIMPLE driver because its power
          sequencing is non-standard.
 
@@ -798,16 +798,16 @@ config DRM_PANEL_STARTEK_KD070FHFID015
          the host, a built-in LED backlight and touch controller.
 
 config DRM_PANEL_EDP
        tristate "support for simple Embedded DisplayPort panels"
        depends on BACKLIGHT_CLASS_DEVICE
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        depends on PM
        select VIDEOMODE_HELPERS
        select DRM_DISPLAY_DP_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        help
          DRM panel driver for dumb eDP panels that need at most a regulator and
          a GPIO to be powered up. Optionally a backlight can be attached so
          that it can be automatically turned off when the panel goes into a
diff --git a/drivers/gpu/drm/tegra/Kconfig b/drivers/gpu/drm/tegra/Kconfig
index 44381ee6ea9e..e0385d175ec6 100644
--- a/drivers/gpu/drm/tegra/Kconfig
+++ b/drivers/gpu/drm/tegra/Kconfig
@@ -2,15 +2,15 @@
 config DRM_TEGRA
        tristate "NVIDIA Tegra DRM"
        depends on ARCH_TEGRA || COMPILE_TEST
        depends on COMMON_CLK
        depends on DRM
+       depends on DRM_DISPLAY_DP_AUX_BUS
        depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDMI_HELPER
-       select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        select DRM_MIPI_DSI
        select DRM_PANEL
        select FB_DMAMEM_HELPERS if DRM_FBDEV_EMULATION
        select TEGRA_HOST1X

-- 
2.44.0

Reply via email to