On 10/24/2017 09:07 AM, Tom St Denis wrote: > Thanks Leo, > > I don't have any uvd7 gear but that code has the same "workaround." > Should that be removed as well? Good question. Since we don't have UVD7 APUs to verify, it's up to you to either re-visit later or remove it now. Leo > > Cheers, > Tom > > On 23/10/17 02:40 PM, Leo Liu wrote: >> Reviewed-by: Leo Liu <leo.liu at amd.com> >> >> >> On 10/23/2017 01:34 PM, Alex Deucher wrote: >>> On Mon, Oct 23, 2017 at 1:03 PM, Tom St Denis <tom.stdenis at amd.com> >>> wrote: >>>> 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 at amd.com> >>> Acked-by: Alex Deucher <alexander.deucher at amd.com> >>> >>>> --- >>>> Â drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c | 16 +++++----------- >>>> Â 1 file 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 71299c67c517..2581543b35a7 100644 >>>> --- a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c >>>> +++ b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c >>>> @@ -565,11 +565,7 @@ static int uvd_v6_0_suspend(void *handle) >>>> Â Â Â Â Â Â Â Â if (r) >>>> Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â return r; >>>> >>>> -Â Â Â Â Â Â /* Skip this for APU for now */ >>>> -Â Â Â Â Â Â if (!(adev->flags & AMD_IS_APU)) >>>> -Â Â Â Â Â Â Â Â Â Â Â Â Â Â r = amdgpu_uvd_suspend(adev); >>>> - >>>> -Â Â Â Â Â Â return r; >>>> +Â Â Â Â Â Â return amdgpu_uvd_suspend(adev); >>>> Â } >>>> >>>> Â static int uvd_v6_0_resume(void *handle) >>>> @@ -577,12 +573,10 @@ static int uvd_v6_0_resume(void *handle) >>>> Â Â Â Â Â Â Â Â int r; >>>> Â Â Â Â Â Â Â Â struct amdgpu_device *adev = (struct amdgpu_device *)handle; >>>> >>>> -Â Â Â Â Â Â /* Skip this for APU for now */ >>>> -Â Â Â Â Â Â if (!(adev->flags & AMD_IS_APU)) { >>>> -Â Â Â Â Â Â Â Â Â Â Â Â Â Â r = amdgpu_uvd_resume(adev); >>>> -Â Â Â Â Â Â Â Â Â Â Â Â Â Â if (r) >>>> -Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â Â return r; >>>> -Â Â Â Â Â Â } >>>> +Â Â Â Â Â Â r = amdgpu_uvd_resume(adev); >>>> +Â Â Â Â Â Â if (r) >>>> +Â Â Â Â Â Â Â Â Â Â Â Â Â Â return r; >>>> + >>>> Â Â Â Â Â Â Â Â return uvd_v6_0_hw_init(adev); >>>> Â } >>>> >>>> -- >>>> 2.12.0 >>>> >>>> _______________________________________________ >>>> amd-gfx mailing list >>>> amd-gfx at lists.freedesktop.org >>>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx >>> _______________________________________________ >>> amd-gfx mailing list >>> amd-gfx at lists.freedesktop.org >>> https://lists.freedesktop.org/mailman/listinfo/amd-gfx >> >