diff options
author | Dave Airlie <airlied@redhat.com> | 2015-06-18 00:29:18 -0400 |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2015-06-18 14:36:56 -0400 |
commit | 7f017e56770e82c8fe2d4d8c59e58f519f455ad7 (patch) | |
tree | 760f4476788856c7f20fcafc14a1d12db2761f91 | |
parent | 3bc980bf19bb62007e923691fa2869ba113be895 (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.c | 5 |
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 | |||
663 | radeon_dp_mst_probe(struct radeon_connector *radeon_connector) | 663 | radeon_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 | ||