Commit 03527f0d authored by Mikita Lipski's avatar Mikita Lipski Committed by Alex Deucher

drm/amd/display: Fix debugfs on MST connectors

[why]
Previous patch allowed to initialize debugfs entries on both MST
and SST connectors, but MST connectors get registered much later
which exposed an issue of debugfs entries being initialized in the
same folder.

[how]
Return SST debugfs entries' initialization back to where it was.
For MST connectors we should initialize debugfs entries in connector
register function after the connector is registered.
Signed-off-by: default avatarMikita Lipski <mikita.lipski@amd.com>
Reviewed-by: default avatarNicholas Kazlauskas <Nicholas.Kazlauskas@amd.com>
Acked-by: default avatarRodrigo Siqueira <Rodrigo.Siqueira@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent be32c989
...@@ -5584,12 +5584,6 @@ void amdgpu_dm_connector_init_helper(struct amdgpu_display_manager *dm, ...@@ -5584,12 +5584,6 @@ void amdgpu_dm_connector_init_helper(struct amdgpu_display_manager *dm,
drm_connector_attach_content_protection_property(&aconnector->base, false); drm_connector_attach_content_protection_property(&aconnector->base, false);
#endif #endif
} }
#if defined(CONFIG_DEBUG_FS)
connector_debugfs_init(aconnector);
aconnector->debugfs_dpcd_address = 0;
aconnector->debugfs_dpcd_size = 0;
#endif
} }
static int amdgpu_dm_i2c_xfer(struct i2c_adapter *i2c_adap, static int amdgpu_dm_i2c_xfer(struct i2c_adapter *i2c_adap,
...@@ -5712,8 +5706,6 @@ static int amdgpu_dm_connector_init(struct amdgpu_display_manager *dm, ...@@ -5712,8 +5706,6 @@ static int amdgpu_dm_connector_init(struct amdgpu_display_manager *dm,
&aconnector->base, &aconnector->base,
&amdgpu_dm_connector_helper_funcs); &amdgpu_dm_connector_helper_funcs);
drm_connector_register(&aconnector->base);
amdgpu_dm_connector_init_helper( amdgpu_dm_connector_init_helper(
dm, dm,
aconnector, aconnector,
...@@ -5724,6 +5716,13 @@ static int amdgpu_dm_connector_init(struct amdgpu_display_manager *dm, ...@@ -5724,6 +5716,13 @@ static int amdgpu_dm_connector_init(struct amdgpu_display_manager *dm,
drm_connector_attach_encoder( drm_connector_attach_encoder(
&aconnector->base, &aencoder->base); &aconnector->base, &aencoder->base);
drm_connector_register(&aconnector->base);
#if defined(CONFIG_DEBUG_FS)
connector_debugfs_init(aconnector);
aconnector->debugfs_dpcd_address = 0;
aconnector->debugfs_dpcd_size = 0;
#endif
if (connector_type == DRM_MODE_CONNECTOR_DisplayPort if (connector_type == DRM_MODE_CONNECTOR_DisplayPort
|| connector_type == DRM_MODE_CONNECTOR_eDP) || connector_type == DRM_MODE_CONNECTOR_eDP)
amdgpu_dm_initialize_dp_connector(dm, aconnector); amdgpu_dm_initialize_dp_connector(dm, aconnector);
......
...@@ -36,7 +36,9 @@ ...@@ -36,7 +36,9 @@
#include "dc_link_ddc.h" #include "dc_link_ddc.h"
#include "i2caux_interface.h" #include "i2caux_interface.h"
#if defined(CONFIG_DEBUG_FS)
#include "amdgpu_dm_debugfs.h"
#endif
/* #define TRACE_DPCD */ /* #define TRACE_DPCD */
#ifdef TRACE_DPCD #ifdef TRACE_DPCD
...@@ -147,6 +149,12 @@ amdgpu_dm_mst_connector_late_register(struct drm_connector *connector) ...@@ -147,6 +149,12 @@ amdgpu_dm_mst_connector_late_register(struct drm_connector *connector)
to_amdgpu_dm_connector(connector); to_amdgpu_dm_connector(connector);
struct drm_dp_mst_port *port = amdgpu_dm_connector->port; struct drm_dp_mst_port *port = amdgpu_dm_connector->port;
#if defined(CONFIG_DEBUG_FS)
connector_debugfs_init(amdgpu_dm_connector);
amdgpu_dm_connector->debugfs_dpcd_address = 0;
amdgpu_dm_connector->debugfs_dpcd_size = 0;
#endif
return drm_dp_mst_connector_late_register(connector, port); return drm_dp_mst_connector_late_register(connector, port);
} }
......
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