On 6/26/26 05:59, Liang, Prike wrote: > Public > > Regards, > Prike > >> -----Original Message----- >> From: Koenig, Christian <[email protected]> >> Sent: Thursday, June 25, 2026 6:40 PM >> To: Liang, Prike <[email protected]>; [email protected] >> Cc: Deucher, Alexander <[email protected]>; Liu, Shaoyun >> <[email protected]> >> Subject: Re: [PATCH 2/3] drm/amdgpu/mes11: set doorbell offset for suspending >> userq >> >> >> >> On 6/25/26 05:12, Prike Liang wrote: >>> Updating the union MESAPI__SUSPEND and union MESAPI__RESUME to add >> the >>> doorbell offset for suspending userq. >>> >>> Signed-off-by: Prike Liang <[email protected]> >>> --- >>> drivers/gpu/drm/amd/amdgpu/mes_v11_0.c | 2 ++ >>> drivers/gpu/drm/amd/include/mes_v11_api_def.h | 2 ++ >>> 2 files changed, 4 insertions(+) >>> >>> diff --git a/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c >>> b/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c >>> index 9e27d01cbfa3..ab0de6d04ff8 100644 >>> --- a/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c >>> +++ b/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c >>> @@ -783,6 +783,7 @@ static int mes_v11_0_suspend_gang(struct amdgpu_mes >> *mes, >>> mes_suspend_gang_pkt.gang_context_addr = input->gang_context_addr; >>> mes_suspend_gang_pkt.suspend_fence_addr = input- >>> suspend_fence_addr; >>> mes_suspend_gang_pkt.suspend_fence_value = >>> input->suspend_fence_value; >>> + mes_suspend_gang_pkt.doorbell_offset = input->doorbell_offset; >>> >>> return mes_v11_0_submit_pkt_and_poll_completion(mes, >>> &mes_suspend_gang_pkt, sizeof(mes_suspend_gang_pkt), >> @@ -802,6 >>> +803,7 @@ static int mes_v11_0_resume_gang(struct amdgpu_mes *mes, >>> >>> mes_resume_gang_pkt.resume_all_gangs = input->resume_all_gangs; >>> mes_resume_gang_pkt.gang_context_addr = input->gang_context_addr; >>> + mes_resume_gang_pkt.doorbell_offset = input->doorbell_offset; >>> >>> return mes_v11_0_submit_pkt_and_poll_completion(mes, >>> &mes_resume_gang_pkt, sizeof(mes_resume_gang_pkt), diff >> --git >>> a/drivers/gpu/drm/amd/include/mes_v11_api_def.h >>> b/drivers/gpu/drm/amd/include/mes_v11_api_def.h >>> index 6644fabeb0b7..b06412ac8583 100644 >>> --- a/drivers/gpu/drm/amd/include/mes_v11_api_def.h >>> +++ b/drivers/gpu/drm/amd/include/mes_v11_api_def.h >>> @@ -428,6 +428,7 @@ union MESAPI__SUSPEND { >>> uint32_t suspend_fence_value; >>> >>> struct MES_API_STATUS api_status; >>> + uint32_t doorbell_offset; >>> }; >>> >>> uint32_t max_dwords_in_api[API_FRAME_SIZE_IN_DWORDS]; >>> @@ -445,6 +446,7 @@ union MESAPI__RESUME { >>> uint64_t gang_context_addr; >>> >>> struct MES_API_STATUS api_status; >>> + uint32_t doorbell_offset; >> >> Is this backward compatible? >> >> Keep in mind that we can't break the FW interface. > > > This patch aligns the MESAPI__SUSPEND/RESUME structure definition with > the MES firmware. In MES11, the doorbell_offset field is also included > in the SUSPEND/RESUME structures. However, the driver-provided > doorbell_offset is not directly used by MES FW; this field may be > removed in a future revision.
In that case Acked-by: Christian König <[email protected]> for the whole series. Thanks, Christian. > >> >> Regards, >> Christian. >> >>> }; >>> >>> uint32_t max_dwords_in_api[API_FRAME_SIZE_IN_DWORDS]; >
