On Wed, Oct 8, 2025 at 10:48 PM Victor Zhao <[email protected]> wrote: > > Add kiq hdp flush callbacks for gfx ips to support gpu hdp flush when no > ring presents > > Signed-off-by: Victor Zhao <[email protected]>
This patch is: Acked-by: Alex Deucher <[email protected]> > --- > drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 1 + > drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c | 5 +++-- > drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c | 1 + > drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 1 + > drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 1 + > drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c | 1 + > 6 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c > b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c > index 8841d7213de4..751732f3e883 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c > @@ -9951,6 +9951,7 @@ static const struct amdgpu_ring_funcs > gfx_v10_0_ring_funcs_kiq = { > .emit_wreg = gfx_v10_0_ring_emit_wreg, > .emit_reg_wait = gfx_v10_0_ring_emit_reg_wait, > .emit_reg_write_reg_wait = gfx_v10_0_ring_emit_reg_write_reg_wait, > + .emit_hdp_flush = gfx_v10_0_ring_emit_hdp_flush, > }; > > static void gfx_v10_0_set_ring_funcs(struct amdgpu_device *adev) > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c > b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c > index 66c47c466532..10d2219866f3 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c > @@ -2438,7 +2438,7 @@ static int gfx_v11_0_rlc_load_microcode(struct > amdgpu_device *adev) > if (version_minor == 3) > gfx_v11_0_load_rlcp_rlcv_microcode(adev); > } > - > + > return 0; > } > > @@ -3886,7 +3886,7 @@ static int gfx_v11_0_cp_compute_load_microcode(struct > amdgpu_device *adev) > } > > memcpy(fw, fw_data, fw_size); > - > + > amdgpu_bo_kunmap(adev->gfx.mec.mec_fw_obj); > amdgpu_bo_unreserve(adev->gfx.mec.mec_fw_obj); > > @@ -7320,6 +7320,7 @@ static const struct amdgpu_ring_funcs > gfx_v11_0_ring_funcs_kiq = { > .emit_wreg = gfx_v11_0_ring_emit_wreg, > .emit_reg_wait = gfx_v11_0_ring_emit_reg_wait, > .emit_reg_write_reg_wait = gfx_v11_0_ring_emit_reg_write_reg_wait, > + .emit_hdp_flush = gfx_v11_0_ring_emit_hdp_flush, > }; > > static void gfx_v11_0_set_ring_funcs(struct amdgpu_device *adev) > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c > b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c > index 710ec9c34e43..e2bb8668150d 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c > @@ -5597,6 +5597,7 @@ static const struct amdgpu_ring_funcs > gfx_v12_0_ring_funcs_kiq = { > .emit_wreg = gfx_v12_0_ring_emit_wreg, > .emit_reg_wait = gfx_v12_0_ring_emit_reg_wait, > .emit_reg_write_reg_wait = gfx_v12_0_ring_emit_reg_write_reg_wait, > + .emit_hdp_flush = gfx_v12_0_ring_emit_hdp_flush, > }; > > static void gfx_v12_0_set_ring_funcs(struct amdgpu_device *adev) > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > index 0856ff65288c..d3d0a4b0380c 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c > @@ -6939,6 +6939,7 @@ static const struct amdgpu_ring_funcs > gfx_v8_0_ring_funcs_kiq = { > .pad_ib = amdgpu_ring_generic_pad_ib, > .emit_rreg = gfx_v8_0_ring_emit_rreg, > .emit_wreg = gfx_v8_0_ring_emit_wreg, > + .emit_hdp_flush = gfx_v8_0_ring_emit_hdp_flush, > }; > > static void gfx_v8_0_set_ring_funcs(struct amdgpu_device *adev) > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c > b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c > index dd19a97436db..f1a2efc2a8d0 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c > @@ -7586,6 +7586,7 @@ static const struct amdgpu_ring_funcs > gfx_v9_0_ring_funcs_kiq = { > .emit_wreg = gfx_v9_0_ring_emit_wreg, > .emit_reg_wait = gfx_v9_0_ring_emit_reg_wait, > .emit_reg_write_reg_wait = gfx_v9_0_ring_emit_reg_write_reg_wait, > + .emit_hdp_flush = gfx_v9_0_ring_emit_hdp_flush, > }; > > static void gfx_v9_0_set_ring_funcs(struct amdgpu_device *adev) > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c > b/drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c > index fb5585ab52be..e0b50c690f8c 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c > @@ -4792,6 +4792,7 @@ static const struct amdgpu_ring_funcs > gfx_v9_4_3_ring_funcs_kiq = { > .emit_wreg = gfx_v9_4_3_ring_emit_wreg, > .emit_reg_wait = gfx_v9_4_3_ring_emit_reg_wait, > .emit_reg_write_reg_wait = gfx_v9_4_3_ring_emit_reg_write_reg_wait, > + .emit_hdp_flush = gfx_v9_4_3_ring_emit_hdp_flush, > }; > > static void gfx_v9_4_3_set_ring_funcs(struct amdgpu_device *adev) > -- > 2.25.1 >
