[PATCH v2] drm/amd : Add HDP flush during jpeg init

Alex Deucher alexdeucher at gmail.com
Fri Sep 8 20:45:54 UTC 2023


On Fri, Sep 8, 2023 at 4:40 PM Timmy Tsai <timmtsai at amd.com> wrote:
>
> During jpeg init, CPU writes to frame buffer which can be cached by HDP,
> occasionally causing invalid header to be sent to MMSCH.  Perform HDP flush
> after writing to frame buffer before continuing with jpeg init sequence.
>
> Signed-off-by: Timmy Tsai <timmtsai at amd.com>

Reviewed-by: Alex Deucher <alexander.deucher at amd.com>

> ---
>  drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c b/drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
> index 3eb3dcd56..02b8eca91 100644
> --- a/drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
> @@ -468,6 +468,9 @@ static int jpeg_v4_0_start_sriov(struct amdgpu_device *adev)
>         table_loc = (uint32_t *)table->cpu_addr;
>         memcpy((void *)table_loc, &header, size);
>
> +       /* Perform HDP flush before writing to MMSCH registers */
> +       amdgpu_device_flush_hdp(adev, NULL);
> +
>         /* message MMSCH (in VCN[0]) to initialize this client
>          * 1, write to mmsch_vf_ctx_addr_lo/hi register with GPU mc addr
>          * of memory descriptor location
> --
> 2.34.1
>


More information about the amd-gfx mailing list