]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/display: stop depending on DRM_DISPLAY_HELPER
authorDmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tue, 3 Sep 2024 02:01:56 +0000 (05:01 +0300)
committerMaxime Ripard <mripard@kernel.org>
Tue, 3 Sep 2024 08:18:28 +0000 (10:18 +0200)
Kconfig symbols should not declare dependency on DRM_DISPLAY_HELPER.
Move all parts of DRM_DISPLAY_HELPER to an if DRM_DISPLAY_HELPER block.

It is not possible to make those symbols select DRM_DISPLAY_HELPER
because of the link issues when a part of the helper is selected to be
built-in, while other part is selected to be as module. In such a case
the modular part doesn't get built at all, leading to undefined symbols.

The only viable alternative is to split drm_display_helper.ko into
several small modules, each of them having their own dependencies.

Suggested-by: Maxime Ripard <mripard@kernel.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20240903-drm-bridge-connector-fix-hdmi-reset-v5-1-daebde6d9857@linaro.org
Signed-off-by: Maxime Ripard <mripard@kernel.org>
drivers/gpu/drm/display/Kconfig

index 479e62690d75a2ea1d0804ccd188e1cda84a6255..e6fc253cb4b5bc0dd08ee91658169f9768ee479b 100644 (file)
@@ -1,19 +1,20 @@
 # SPDX-License-Identifier: MIT
 
+config DRM_DISPLAY_DP_AUX_BUS
+       tristate
+       depends on DRM
+       depends on OF || COMPILE_TEST
+
 config DRM_DISPLAY_HELPER
        tristate
        depends on DRM
        help
          DRM helpers for display adapters.
 
-config DRM_DISPLAY_DP_AUX_BUS
-       tristate
-       depends on DRM
-       depends on OF || COMPILE_TEST
+if DRM_DISPLAY_HELPER
 
 config DRM_DISPLAY_DP_AUX_CEC
        bool "Enable DisplayPort CEC-Tunneling-over-AUX HDMI support"
-       depends on DRM && DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_HELPER
        select CEC_CORE
        help
@@ -25,7 +26,6 @@ config DRM_DISPLAY_DP_AUX_CEC
 
 config DRM_DISPLAY_DP_AUX_CHARDEV
        bool "DRM DP AUX Interface"
-       depends on DRM && DRM_DISPLAY_HELPER
        select DRM_DISPLAY_DP_HELPER
        help
          Choose this option to enable a /dev/drm_dp_auxN node that allows to
@@ -34,7 +34,6 @@ config DRM_DISPLAY_DP_AUX_CHARDEV
 
 config DRM_DISPLAY_DP_HELPER
        bool
-       depends on DRM_DISPLAY_HELPER
        help
          DRM display helpers for DisplayPort.
 
@@ -61,19 +60,18 @@ config DRM_DISPLAY_DP_TUNNEL_STATE_DEBUG
 
 config DRM_DISPLAY_HDCP_HELPER
        bool
-       depends on DRM_DISPLAY_HELPER
        help
          DRM display helpers for HDCP.
 
 config DRM_DISPLAY_HDMI_HELPER
        bool
-       depends on DRM_DISPLAY_HELPER
        help
          DRM display helpers for HDMI.
 
 config DRM_DISPLAY_HDMI_STATE_HELPER
        bool
-       depends on DRM_DISPLAY_HELPER
        select DRM_DISPLAY_HDMI_HELPER
        help
          DRM KMS state helpers for HDMI.
+
+endif # DRM_DISPLAY_HELPER