aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-06-18 21:55:29 -0400
committerDave Airlie <airlied@redhat.com>2015-06-18 21:55:29 -0400
commit031fea43670c265a55aa5037dd08f8d5a10d2803 (patch)
tree760f4476788856c7f20fcafc14a1d12db2761f91
parent25161084b1c1b0c29948f6f77266a35f302196b7 (diff)
parent7f017e56770e82c8fe2d4d8c59e58f519f455ad7 (diff)
Merge branch 'drm-fixes-4.1' of git://people.freedesktop.org/~deathsimple/linux into drm-fixes
two radeon fixes one MST fix, one query addition, destined for stable, and to fix a regression * 'drm-fixes-4.1' of git://people.freedesktop.org/~deathsimple/linux: drm/radeon: don't probe MST on hw we don't support it on drm/radeon: Add RADEON_INFO_VA_UNMAP_WORKING query
-rw-r--r--drivers/gpu/drm/radeon/radeon_dp_mst.c5
-rw-r--r--drivers/gpu/drm/radeon/radeon_kms.c3
-rw-r--r--include/uapi/drm/radeon_drm.h1
3 files changed, 9 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
diff --git a/drivers/gpu/drm/radeon/radeon_kms.c b/drivers/gpu/drm/radeon/radeon_kms.c
index 7b2a7335cc5d..b0acf50d9558 100644
--- a/drivers/gpu/drm/radeon/radeon_kms.c
+++ b/drivers/gpu/drm/radeon/radeon_kms.c
@@ -576,6 +576,9 @@ static int radeon_info_ioctl(struct drm_device *dev, void *data, struct drm_file
576 if (radeon_get_allowed_info_register(rdev, *value, value)) 576 if (radeon_get_allowed_info_register(rdev, *value, value))
577 return -EINVAL; 577 return -EINVAL;
578 break; 578 break;
579 case RADEON_INFO_VA_UNMAP_WORKING:
580 *value = true;
581 break;
579 default: 582 default:
580 DRM_DEBUG_KMS("Invalid request %d\n", info->request); 583 DRM_DEBUG_KMS("Invalid request %d\n", info->request);
581 return -EINVAL; 584 return -EINVAL;
diff --git a/include/uapi/drm/radeon_drm.h b/include/uapi/drm/radeon_drm.h
index 871e73f99a4d..94d44ab2fda1 100644
--- a/include/uapi/drm/radeon_drm.h
+++ b/include/uapi/drm/radeon_drm.h
@@ -1038,6 +1038,7 @@ struct drm_radeon_cs {
1038#define RADEON_INFO_CURRENT_GPU_SCLK 0x22 1038#define RADEON_INFO_CURRENT_GPU_SCLK 0x22
1039#define RADEON_INFO_CURRENT_GPU_MCLK 0x23 1039#define RADEON_INFO_CURRENT_GPU_MCLK 0x23
1040#define RADEON_INFO_READ_REG 0x24 1040#define RADEON_INFO_READ_REG 0x24
1041#define RADEON_INFO_VA_UNMAP_WORKING 0x25
1041 1042
1042struct drm_radeon_info { 1043struct drm_radeon_info {
1043 uint32_t request; 1044 uint32_t request;