diff options
author | Leo Liu <leo.liu@amd.com> | 2017-10-31 21:03:39 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2017-11-01 23:37:00 -0400 |
commit | cb4b02d7cac56a69d8137d8d843507cca9182aed (patch) | |
tree | 87ed12e7da1e867e96ba6acccda0d5ea848e302a | |
parent | d3daa2c7865cbfa830651b11c8ad1df23465b46e (diff) |
drm/amdgpu: return -ENOENT from uvd 6.0 early init for harvesting
Fixes init failures on polaris cards with harvested UVD.
Signed-off-by: Leo Liu <leo.liu@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Cc: stable@vger.kernel.org
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c index 430a6b4dfac9..62cd16a23921 100644 --- a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c +++ b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | |||
@@ -93,6 +93,10 @@ static int uvd_v6_0_early_init(void *handle) | |||
93 | { | 93 | { |
94 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; | 94 | struct amdgpu_device *adev = (struct amdgpu_device *)handle; |
95 | 95 | ||
96 | if (!(adev->flags & AMD_IS_APU) && | ||
97 | (RREG32_SMC(ixCC_HARVEST_FUSES) & CC_HARVEST_FUSES__UVD_DISABLE_MASK)) | ||
98 | return -ENOENT; | ||
99 | |||
96 | uvd_v6_0_set_ring_funcs(adev); | 100 | uvd_v6_0_set_ring_funcs(adev); |
97 | uvd_v6_0_set_irq_funcs(adev); | 101 | uvd_v6_0_set_irq_funcs(adev); |
98 | 102 | ||