Commit 3c338405 authored by Thomas Zimmermann's avatar Thomas Zimmermann

drm: Don't make DRM_PANEL_BRIDGE dependent on DRM_KMS_HELPERS

Fix a number of undefined references to drm_kms_helper.ko in
drm_dp_helper.ko:

  arm-suse-linux-gnueabi-ld: drivers/gpu/drm/dp/drm_dp_mst_topology.o: in function `drm_dp_mst_duplicate_state':
  drm_dp_mst_topology.c:(.text+0x2df0): undefined reference to `__drm_atomic_helper_private_obj_duplicate_state'
  arm-suse-linux-gnueabi-ld: drivers/gpu/drm/dp/drm_dp_mst_topology.o: in function `drm_dp_delayed_destroy_work':
  drm_dp_mst_topology.c:(.text+0x370c): undefined reference to `drm_kms_helper_hotplug_event'
  arm-suse-linux-gnueabi-ld: drivers/gpu/drm/dp/drm_dp_mst_topology.o: in function `drm_dp_mst_up_req_work':
  drm_dp_mst_topology.c:(.text+0x7938): undefined reference to `drm_kms_helper_hotplug_event'
  arm-suse-linux-gnueabi-ld: drivers/gpu/drm/dp/drm_dp_mst_topology.o: in function `drm_dp_mst_link_probe_work':
  drm_dp_mst_topology.c:(.text+0x82e0): undefined reference to `drm_kms_helper_hotplug_event'

This happens if panel-edp.ko has been configured with

  DRM_PANEL_EDP=y
  DRM_DP_HELPER=y
  DRM_KMS_HELPER=m

which builds DP helpers into the kernel and KMS helpers sa a module.
Making DRM_PANEL_EDP select DRM_KMS_HELPER resolves this problem.

To avoid a resulting cyclic dependency with DRM_PANEL_BRIDGE, don't
make the latter depend on DRM_KMS_HELPER and fix the one DRM bridge
drivers that doesn't already select DRM_KMS_HELPER. As KMS helpers
cannot be selected directly by the user, config symbols should avoid
depending on it anyway.
Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Fixes: 3755d35e ("drm/panel: Select DRM_DP_HELPER for DRM_PANEL_EDP")
Acked-by: default avatarSam Ravnborg <sam@ravnborg.org>
Tested-by: default avatarBrian Masney <bmasney@redhat.com>
Reported-by: default avatarkernel test robot <lkp@intel.com>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Cc: Naresh Kamboju <naresh.kamboju@linaro.org>
Cc: Linux Kernel Functional Testing <lkft@linaro.org>
Cc: Lyude Paul <lyude@redhat.com>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Daniel Vetter <daniel@ffwll.ch>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: dri-devel@lists.freedesktop.org
Cc: Dave Airlie <airlied@redhat.com>
Cc: Thierry Reding <thierry.reding@gmail.com>
Link: https://patchwork.freedesktop.org/patch/478296/
parent a8253684
...@@ -8,7 +8,6 @@ config DRM_BRIDGE ...@@ -8,7 +8,6 @@ config DRM_BRIDGE
config DRM_PANEL_BRIDGE config DRM_PANEL_BRIDGE
def_bool y def_bool y
depends on DRM_BRIDGE depends on DRM_BRIDGE
depends on DRM_KMS_HELPER
select DRM_PANEL select DRM_PANEL
help help
DRM bridge wrapper of DRM panels DRM bridge wrapper of DRM panels
...@@ -30,6 +29,7 @@ config DRM_CDNS_DSI ...@@ -30,6 +29,7 @@ config DRM_CDNS_DSI
config DRM_CHIPONE_ICN6211 config DRM_CHIPONE_ICN6211
tristate "Chipone ICN6211 MIPI-DSI/RGB Converter bridge" tristate "Chipone ICN6211 MIPI-DSI/RGB Converter bridge"
depends on OF depends on OF
select DRM_KMS_HELPER
select DRM_MIPI_DSI select DRM_MIPI_DSI
select DRM_PANEL_BRIDGE select DRM_PANEL_BRIDGE
help help
......
...@@ -107,6 +107,7 @@ config DRM_PANEL_EDP ...@@ -107,6 +107,7 @@ config DRM_PANEL_EDP
select VIDEOMODE_HELPERS select VIDEOMODE_HELPERS
select DRM_DP_AUX_BUS select DRM_DP_AUX_BUS
select DRM_DP_HELPER select DRM_DP_HELPER
select DRM_KMS_HELPER
help help
DRM panel driver for dumb eDP panels that need at most a regulator and 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 a GPIO to be powered up. Optionally a backlight can be attached so
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment