aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-06-18 00:29:18 -0400
committerChristian König <christian.koenig@amd.com>2015-06-18 14:36:56 -0400
commit7f017e56770e82c8fe2d4d8c59e58f519f455ad7 (patch)
tree760f4476788856c7f20fcafc14a1d12db2761f91
parent3bc980bf19bb62007e923691fa2869ba113be895 (diff)
drm/radeon: don't probe MST on hw we don't support it on
If you do radeon.mst=1 on a gpu without mst hw, and then plug some mst hw it will oops instead of falling back. So check we have DCE5 at least before proceeding. Signed-off-by: Dave Airlie <airlied@redhat.com> Signed-off-by: Christian König <christian.koenig@amd.com>
-rw-r--r--drivers/gpu/drm/radeon/radeon_dp_mst.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/radeon/radeon_dp_mst.c b/drivers/gpu/drm/radeon/radeon_dp_mst.c
index 2b98ed3e684d..257b10be5cda 100644
--- a/drivers/gpu/drm/radeon/radeon_dp_mst.c
+++ b/drivers/gpu/drm/radeon/radeon_dp_mst.c
@@ -663,12 +663,17 @@ int
663radeon_dp_mst_probe(struct radeon_connector *radeon_connector) 663radeon_dp_mst_probe(struct radeon_connector *radeon_connector)
664{ 664{
665 struct radeon_connector_atom_dig *dig_connector = radeon_connector->con_priv; 665 struct radeon_connector_atom_dig *dig_connector = radeon_connector->con_priv;
666 struct drm_device *dev = radeon_connector->base.dev;
667 struct radeon_device *rdev = dev->dev_private;
666 int ret; 668 int ret;
667 u8 msg[1]; 669 u8 msg[1];
668 670
669 if (!radeon_mst) 671 if (!radeon_mst)
670 return 0; 672 return 0;
671 673
674 if (!ASIC_IS_DCE5(rdev))
675 return 0;
676
672 if (dig_connector->dpcd[DP_DPCD_REV] < 0x12) 677 if (dig_connector->dpcd[DP_DPCD_REV] < 0x12)
673 return 0; 678 return 0;
674 679