RE: [PATCH] drm/amdgpu/vcn: fix gfxoff issue

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[AMD Official Use Only - Internal Distribution Only]

This actually introduced at very early stage we enabled GFXOFF for the first time on Raven platform. At that time gfxoff can't work with Video play back (this is general issue across all OSes). So we disabled gfxoff when there is workload on VCN.

For most ASICs, it shall be removed. The only concern is some old Raven platform where the rlc fw fixes are not available. 

I had a quick chat with @Zhu, Changfeng who will have a quick validation on his old Raven platform so that we can safely remove this workaround finally.

Regards,
Hawking
-----Original Message-----
From: Zhu, James <James.Zhu@xxxxxxx> 
Sent: Tuesday, April 14, 2020 23:00
To: Alex Deucher <alexdeucher@xxxxxxxxx>; Zhu, James <James.Zhu@xxxxxxx>; Zhang, Hawking <Hawking.Zhang@xxxxxxx>
Cc: amd-gfx list <amd-gfx@xxxxxxxxxxxxxxxxxxxxx>; Zhu, Changfeng <Changfeng.Zhu@xxxxxxx>
Subject: Re: [PATCH] drm/amdgpu/vcn: fix gfxoff issue

+Hawking

Hi Hawking,

can we drop this WA?

Thanks!

James

On 2020-04-14 10:52 a.m., James Zhu wrote:
> +Rex
>
> This is introduce by below patch.
>
> commit 3fded222f4bf7f4c56ef4854872a39a4de08f7a8
> Author: Rex Zhu <Rex.Zhu@xxxxxxx>
> Date:   Fri Jul 27 17:00:02 2018 +0800
>
>     drm/amdgpu: Disable gfx off if VCN is busy
>
>     this patch is a workaround for the gpu hang
>     at video begin/end time if gfx off is enabled.
>
>     Reviewed-by: Hawking Zhang <Hawking.Zhang@xxxxxxx>
>     Signed-off-by: Rex Zhu <Rex.Zhu@xxxxxxx>
>     Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
>
>
> On 2020-04-14 10:22 a.m., Alex Deucher wrote:
>> On Tue, Apr 14, 2020 at 8:05 AM James Zhu <James.Zhu@xxxxxxx> wrote:
>>> Turn off gfxoff control when vcn is gated.
>>>
>>> Signed-off-by: James Zhu <James.Zhu@xxxxxxx>
>>> ---
>>>   drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c | 8 +++++---
>>>   1 file changed, 5 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
>>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
>>> index dab34f6..aa9a7a5 100644
>>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
>>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.c
>>> @@ -369,9 +369,11 @@ void amdgpu_vcn_ring_begin_use(struct 
>>> amdgpu_ring *ring) cancel_delayed_work_sync(&adev->vcn.idle_work);
>>>
>>>          mutex_lock(&adev->vcn.vcn_pg_lock);
>>> -       amdgpu_gfx_off_ctrl(adev, false);
>>> -       amdgpu_device_ip_set_powergating_state(adev,
>>> AMD_IP_BLOCK_TYPE_VCN,
>>> -              AMD_PG_STATE_UNGATE);
>>> +       if (adev->vcn.cur_state == AMD_PG_STATE_GATE) {
>>> +               amdgpu_gfx_off_ctrl(adev, false);
>>> +               amdgpu_device_ip_set_powergating_state(adev,
>>> AMD_IP_BLOCK_TYPE_VCN,
>>> +                      AMD_PG_STATE_UNGATE);
>>> +       }
>>>
>> Why are we touching gfxoff with VCN?  Was this a leftover from bring 
>> up?  Can we just drop all of this gfxoff stuff from VCN handling?  I 
>> don't see why there would be a dependency.
>>
>> Alex
>>
>>>          if (adev->pg_flags & AMD_PG_SUPPORT_VCN_DPG)    {
>>>                  struct dpg_pause_state new_state;
>>> --
>>> 2.7.4
>>>
>>> _______________________________________________
>>> amd-gfx mailing list
>>> amd-gfx@xxxxxxxxxxxxxxxxxxxxx
>>> https://nam11.safelinks.protection.outlook.com/?url=https%3A%2F%2Fli
>>> sts.freedesktop.org%2Fmailman%2Flistinfo%2Famd-gfx&amp;data=02%7C01%
>>> 7CJames.Zhu%40amd.com%7C3dd9135c717a4b3011e308d7e07f52b6%7C3dd8961fe
>>> 4884e608e11a82d994e183d%7C0%7C0%7C637224709763391845&amp;sdata=Y%2Bt
>>> sJQNB1TXCQ9v86DW%2F0FC63gOSHsfzzZFu0MDvCHw%3D&amp;reserved=0
>>>
_______________________________________________
amd-gfx mailing list
amd-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/amd-gfx




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux