[PATCH v5 10/10] drm/amdgpu: add delay after userqueue mapping
Shashank Sharma
shashank.sharma at amd.com
Thu Jul 6 18:30:00 UTC 2023
On 06/07/2023 19:41, Alex Deucher wrote:
> On Thu, Jul 6, 2023 at 8:36 AM Shashank Sharma <shashank.sharma at amd.com> wrote:
>> It has been observed that the MES FW needs 250-300us to map the gfx
>> userqueue, and if the user rings the doorbell before this duration,
>> the FW never recognizes the work. This patch adds the delay of 300
>> us after the queue mapping.
>>
>> V1: Moved the delay from userspace IOCTL to kernel (Alex).
>>
>> Cc: Alex Deucher <alexander.deucher at amd.com>
>> Cc: Christian Koenig <christian.koenig at amd.com>
>> Signed-off-by: Shashank Sharma <shashank.sharma at amd.com>
>> Signed-off-by: Arvind Yadav <arvind.yadav at amd.com>
>> ---
>> drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 7 +++++++
>> 1 file changed, 7 insertions(+)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
>> index 8edb020683a1..78b58c5d0fd8 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
>> @@ -25,6 +25,7 @@
>> #include <linux/firmware.h>
>> #include <linux/module.h>
>> #include <linux/pci.h>
>> +#include <linux/delay.h>
>> #include "amdgpu.h"
>> #include "amdgpu_gfx.h"
>> #include "amdgpu_psp.h"
>> @@ -6749,6 +6750,12 @@ static int gfx_v11_0_userq_mqd_create(struct amdgpu_userq_mgr *uq_mgr,
>> goto free_ctx;
>> }
>>
>> + /*
>> + * It has been observed that HWS needs appx 250-300us to map the queue, and the
>> + * user needs to wait this duration before ringing the doorbell, or else the FW
>> + * will never recognize the work.
>> + */
>> + udelay(300);
> Is there a way we can query the MES to verify that the queue is mapped
> and ready? We should talk to the MES team. This is hacky and may
> fail if the MES is busy, etc.
So far I have not received any input on this, I can restart a discussion.
- Shashank
> Alex
>
>
>> return 0;
>>
>> free_ctx:
>> --
>> 2.40.1
>>
More information about the amd-gfx
mailing list