From: Alex Deucher <alexander.deuc...@amd.com>

commit 05211e7fbbf042dd7f51155ebe64eb2ecacb25cb upstream.

Fixes a crash in drm_object_property_set_value() because the property
is not set for internal DP ports that connect to a bridge chips
(e.g., DP to VGA or DP to LVDS).

Bug: https://bugzilla.kernel.org/show_bug.cgi?id=210739
Fixes: 65bf2cf95d3ade ("drm/amdgpu: utilize subconnector property for DP 
through atombios")
Tested-By: Kris Karas <bugs-...@moonlit-rail.com>
Cc: Oleg Vasilev <oleg.vasi...@intel.com>
Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
Cc: sta...@vger.kernel.org # 5.10.x
Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org>

---
 drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c |   10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.c
@@ -1414,10 +1414,12 @@ out:
                pm_runtime_put_autosuspend(connector->dev->dev);
        }
 
-       drm_dp_set_subconnector_property(&amdgpu_connector->base,
-                                        ret,
-                                        amdgpu_dig_connector->dpcd,
-                                        
amdgpu_dig_connector->downstream_ports);
+       if (connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort ||
+           connector->connector_type == DRM_MODE_CONNECTOR_eDP)
+               drm_dp_set_subconnector_property(&amdgpu_connector->base,
+                                                ret,
+                                                amdgpu_dig_connector->dpcd,
+                                                
amdgpu_dig_connector->downstream_ports);
        return ret;
 }
 


Reply via email to