drm/amdgpu/display: add a late register connector callback
authorAlex Deucher <alexander.deucher@amd.com>
Tue, 4 Feb 2020 22:11:18 +0000 (17:11 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 26 Feb 2020 19:21:13 +0000 (14:21 -0500)
To handle debugfs setup on non DP MST connectors.

Tested-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c

index ecbf381..dd35ac0 100644 (file)
@@ -4619,6 +4619,19 @@ amdgpu_dm_connector_atomic_duplicate_state(struct drm_connector *connector)
        return &new_state->base;
 }
 
+static int
+amdgpu_dm_connector_late_register(struct drm_connector *connector)
+{
+       struct amdgpu_dm_connector *amdgpu_dm_connector =
+               to_amdgpu_dm_connector(connector);
+
+#if defined(CONFIG_DEBUG_FS)
+       connector_debugfs_init(amdgpu_dm_connector);
+#endif
+
+       return 0;
+}
+
 static const struct drm_connector_funcs amdgpu_dm_connector_funcs = {
        .reset = amdgpu_dm_connector_funcs_reset,
        .detect = amdgpu_dm_connector_detect,
@@ -4628,6 +4641,7 @@ static const struct drm_connector_funcs amdgpu_dm_connector_funcs = {
        .atomic_destroy_state = drm_atomic_helper_connector_destroy_state,
        .atomic_set_property = amdgpu_dm_connector_atomic_set_property,
        .atomic_get_property = amdgpu_dm_connector_atomic_get_property,
+       .late_register = amdgpu_dm_connector_late_register,
        .early_unregister = amdgpu_dm_connector_unregister
 };
 
@@ -5967,10 +5981,6 @@ static int amdgpu_dm_connector_init(struct amdgpu_display_manager *dm,
        drm_connector_attach_encoder(
                &aconnector->base, &aencoder->base);
 
-#if defined(CONFIG_DEBUG_FS)
-       connector_debugfs_init(aconnector);
-#endif
-
        if (connector_type == DRM_MODE_CONNECTOR_DisplayPort
                || connector_type == DRM_MODE_CONNECTOR_eDP)
                amdgpu_dm_initialize_dp_connector(dm, aconnector);