• Thomas Zimmermann's avatar
    drm: Don't make DRM_PANEL_BRIDGE dependent on DRM_KMS_HELPERS · 3c338405
    Thomas Zimmermann authored
    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/
    3c338405
Kconfig 21.7 KB