aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom St Denis <tom.stdenis@amd.com>2017-10-23 11:27:35 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-10-25 09:32:14 -0400
commitd3daa2c7865cbfa830651b11c8ad1df23465b46e (patch)
treef204d8b586719fc6704864f6e328f082e5c8fddd
parent8b95f4f730cba02ef6febbdc4ca7e55ca045b00e (diff)
drm/amd/amdgpu: Remove workaround check for UVD6 on APUs
On APUs the uvd6 driver was skipping proper suspend/resume routines resulting in a broken state upon resume. Signed-off-by: Tom St Denis <tom.stdenis@amd.com> Acked-by: Alex Deucher <alexander.deucher@amd.com> Reviewed-by: Leo Liu <leo.liu@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c
index 31db356476f8..430a6b4dfac9 100644
--- a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c
@@ -225,11 +225,7 @@ static int uvd_v6_0_suspend(void *handle)
225 if (r) 225 if (r)
226 return r; 226 return r;
227 227
228 /* Skip this for APU for now */ 228 return amdgpu_uvd_suspend(adev);
229 if (!(adev->flags & AMD_IS_APU))
230 r = amdgpu_uvd_suspend(adev);
231
232 return r;
233} 229}
234 230
235static int uvd_v6_0_resume(void *handle) 231static int uvd_v6_0_resume(void *handle)
@@ -237,12 +233,10 @@ static int uvd_v6_0_resume(void *handle)
237 int r; 233 int r;
238 struct amdgpu_device *adev = (struct amdgpu_device *)handle; 234 struct amdgpu_device *adev = (struct amdgpu_device *)handle;
239 235
240 /* Skip this for APU for now */ 236 r = amdgpu_uvd_resume(adev);
241 if (!(adev->flags & AMD_IS_APU)) { 237 if (r)
242 r = amdgpu_uvd_resume(adev); 238 return r;
243 if (r) 239
244 return r;
245 }
246 return uvd_v6_0_hw_init(adev); 240 return uvd_v6_0_hw_init(adev);
247} 241}
248 242