config DRM_KUNIT_TEST
        tristate "KUnit tests for DRM" if !KUNIT_ALL_TESTS
-       depends on DRM
-       depends on DRM_DISPLAY_HELPER
-       depends on KUNIT
-       depends on MMU
+       depends on DRM && KUNIT && MMU
        select DRM_BUDDY
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_EXEC
        select DRM_EXPORT_FOR_TESTS if m
        select DRM_GEM_SHMEM_HELPER
 
 
 config DRM_AMDGPU
        tristate "AMD GPU"
-       depends on DRM
-       depends on DRM_DISPLAY_HELPER
-       depends on MMU
-       depends on PCI
+       depends on DRM && PCI && MMU
        depends on !UML
        select FW_LOADER
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDMI_HELPER
        select DRM_DISPLAY_HDCP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select DRM_SCHED
        select DRM_TTM
 
 
 config DRM_ITE_IT6505
        tristate "ITE IT6505 DisplayPort bridge"
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        select EXTCON
 
 config DRM_PARADE_PS8640
        tristate "Parade PS8640 MIPI DSI to eDP Converter"
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        select DRM_MIPI_DSI
 
 config DRM_TOSHIBA_TC358767
        tristate "Toshiba TC358767 eDP bridge"
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select REGMAP_I2C
        select DRM_MIPI_DSI
 
 config DRM_TOSHIBA_TC358775
        tristate "Toshiba TC358775 DSI/LVDS bridge"
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select REGMAP_I2C
        select DRM_PANEL
 
 config DRM_TI_SN65DSI86
        tristate "TI SN65DSI86 DSI to eDP bridge"
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select REGMAP_I2C
        select DRM_PANEL
 
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_ANALOGIX_ANX6345
        tristate "Analogix ANX6345 bridge"
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_ANALOGIX_DP
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select REGMAP_I2C
        help
 
 config DRM_ANALOGIX_ANX78XX
        tristate "Analogix ANX78XX bridge"
-       depends on DRM_DISPLAY_HELPER
        select DRM_ANALOGIX_DP
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select REGMAP_I2C
        help
 config DRM_ANALOGIX_ANX7625
        tristate "Analogix Anx7625 MIPI to DP interface support"
        depends on DRM
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        select DRM_MIPI_DSI
        help
 
 
 config DRM_CDNS_MHDP8546
        tristate "Cadence DPI/DP bridge"
-       depends on DRM_DISPLAY_HELPER
-       depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select DRM_PANEL_BRIDGE
+       depends on OF
        help
          Support Cadence DPI to DP bridge. This is an internal
          bridge and is meant to be directly embedded in a SoC.
 
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_DW_HDMI
        tristate
-       depends on DRM_DISPLAY_HELPER
        select DRM_DISPLAY_HDMI_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select REGMAP_MMIO
        select CEC_CORE if CEC_NOTIFIER
 
 config DRM_DISPLAY_HELPER
        tristate "DRM Display Helpers"
        depends on DRM
-       default y
        help
          DRM helpers for display adapters.
 
 
        depends on OF && DRM && COMMON_CLK
        depends on ARCH_S3C64XX || ARCH_S5PV210 || ARCH_EXYNOS || COMPILE_TEST
        depends on MMU
+       select DRM_DISPLAY_HELPER if DRM_EXYNOS_DP
        select DRM_KMS_HELPER
        select VIDEOMODE_HELPERS
        select FB_DMAMEM_HELPERS if DRM_FBDEV_EMULATION
 config DRM_EXYNOS_DP
        bool "Exynos specific extensions for Analogix DP driver"
        depends on DRM_EXYNOS_FIMD || DRM_EXYNOS7_DECON
-       depends on DRM_DISPLAY_HELPER
        select DRM_ANALOGIX_DP
        select DRM_DISPLAY_DP_HELPER
        default DRM_EXYNOS
 
 config DRM_I915
        tristate "Intel 8xx/9xx/G3x/G4x/HD Graphics"
        depends on DRM
-       depends on DRM_DISPLAY_HELPER
        depends on X86 && PCI
        depends on !PREEMPT_RT
        select INTEL_GTT if X86
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
        select DRM_DISPLAY_HDMI_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select DRM_PANEL
        select DRM_MIPI_DSI
 
 
 config DRM_MEDIATEK_DP
        tristate "DRM DPTX Support for MediaTek SoCs"
-       depends on DRM_DISPLAY_HELPER
        depends on DRM_MEDIATEK
        select PHY_MTK_DP
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        help
 
 
 config DRM_MSM
        tristate "MSM DRM"
+       depends on DRM
        depends on ARCH_QCOM || SOC_IMX5 || COMPILE_TEST
        depends on COMMON_CLK
-       depends on DRM
-       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
        select REGULATOR
        select DRM_DISPLAY_DP_AUX_BUS
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_EXEC
        select DRM_KMS_HELPER
        select DRM_PANEL
 
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_NOUVEAU
        tristate "Nouveau (NVIDIA) cards"
-       depends on DRM
-       depends on DRM_DISPLAY_HELPER
-       depends on PCI
-       depends on MMU
+       depends on DRM && PCI && MMU
        select IOMMU_API
        select FW_LOADER
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDMI_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select DRM_TTM
        select DRM_TTM_HELPER
 
 
 config DRM_PANEL_RAYDIUM_RM692E5
        tristate "Raydium RM692E5-based DSI panel"
-       depends on BACKLIGHT_CLASS_DEVICE
-       depends on DRM_DISPLAY_HELPER
-       depends on DRM_MIPI_DSI
        depends on OF
+       depends on DRM_MIPI_DSI
+       depends on BACKLIGHT_CLASS_DEVICE
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        help
          Say Y here if you want to enable support for Raydium RM692E5-based
          display panels, such as the one found in the Fairphone 5 smartphone.
 
 config DRM_PANEL_SAMSUNG_ATNA33XC20
        tristate "Samsung ATNA33XC20 eDP panel"
-       depends on BACKLIGHT_CLASS_DEVICE
-       depends on DRM_DISPLAY_HELPER
        depends on OF
+       depends on BACKLIGHT_CLASS_DEVICE
        depends on PM
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        help
          DRM panel driver for the Samsung ATNA33XC20 panel. This panel can't
 
 config DRM_PANEL_EDP
        tristate "support for simple Embedded DisplayPort panels"
-       depends on BACKLIGHT_CLASS_DEVICE
-       depends on DRM_DISPLAY_HELPER
        depends on OF
+       depends on BACKLIGHT_CLASS_DEVICE
        depends on PM
        select VIDEOMODE_HELPERS
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        help
 
 config DRM_PANEL_VISIONOX_R66451
        tristate "Visionox R66451"
-       depends on BACKLIGHT_CLASS_DEVICE
-       depends on DRM_DISPLAY_HELPER
-       depends on DRM_MIPI_DSI
        depends on OF
+       depends on DRM_MIPI_DSI
+       depends on BACKLIGHT_CLASS_DEVICE
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        help
          Say Y here if you want to enable support for Visionox
          R66451 1080x2340 AMOLED DSI panel.
 
 
 config DRM_RADEON
        tristate "ATI Radeon"
+       depends on DRM && PCI && MMU
        depends on AGP || !AGP
-       depends on DRM
-       depends on DRM_DISPLAY_HELPER
-       depends on PCI
-       depends on MMU
        select FW_LOADER
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
         select DRM_KMS_HELPER
        select DRM_SUBALLOC_HELPER
         select DRM_TTM
 
 
 config ROCKCHIP_ANALOGIX_DP
        bool "Rockchip specific extensions for Analogix DP driver"
-       depends on DRM_DISPLAY_HELPER
        depends on ROCKCHIP_VOP
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_HELPER
        help
          This selects support for Rockchip SoC specific extensions
 
 config ROCKCHIP_CDN_DP
        bool "Rockchip cdn DP"
-       depends on DRM_DISPLAY_HELPER
        depends on EXTCON=y || (EXTCON=m && DRM_ROCKCHIP=m)
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_HELPER
        help
          This selects support for Rockchip SoC specific extensions
 
        depends on ARCH_TEGRA || COMPILE_TEST
        depends on COMMON_CLK
        depends on DRM
-       depends on DRM_DISPLAY_HELPER
        depends on OF
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDMI_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_AUX_BUS
        select DRM_KMS_HELPER
        select DRM_MIPI_DSI
 
 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_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 DRM
        depends on SND && SND_SOC
+       depends on COMMON_CLK
+       depends on PM
        select DRM_DISPLAY_HDMI_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_KMS_HELPER
        select DRM_GEM_DMA_HELPER
        select DRM_PANEL_BRIDGE
 
 # SPDX-License-Identifier: GPL-2.0-only
 config DRM_XE
        tristate "Intel Xe Graphics"
-       depends on (m || (y && KUNIT=y))
-       depends on DRM
-       depends on DRM_DISPLAY_HELPER
-       depends on MMU
-       depends on PCI
+       depends on DRM && PCI && MMU && (m || (y && KUNIT=y))
        select INTERVAL_TREE
        # we need shmfs for the swappable backing store, and in particular
        # the shmem_readpage() which depends upon tmpfs
        select DRM_DISPLAY_DP_HELPER
        select DRM_DISPLAY_HDCP_HELPER
        select DRM_DISPLAY_HDMI_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_MIPI_DSI
        select RELAY
        select IRQ_WORK
 
 config DRM_ZYNQMP_DPSUB
        tristate "ZynqMP DisplayPort Controller Driver"
        depends on ARCH_ZYNQMP || COMPILE_TEST
-       depends on COMMON_CLK
+       depends on COMMON_CLK && DRM && OF
        depends on DMADEVICES
-       depends on DRM
-       depends on DRM_DISPLAY_HELPER
-       depends on OF
        depends on PHY_XILINX_ZYNQMP
        depends on XILINX_ZYNQMP_DPDMA
        select DMA_ENGINE
        select DRM_DISPLAY_DP_HELPER
+       select DRM_DISPLAY_HELPER
        select DRM_GEM_DMA_HELPER
        select DRM_KMS_HELPER
        select GENERIC_PHY