On 2/4/2025 3:13 AM, Alex Deucher wrote: > Manually disallow and then allow gfxoff in begin_use > and end_use to avoid any potential FW races when > ringing the doorbell. There are no known issues > with gfxoff that this solves, but it shouldn't hurt anything > and shouldn't affect power usage since we are only > toggling it around the doorbell update. I think, this path shouldn't be pursued unless there is a bug identified in specific SOCs. This really needs to be taken care by hardware/firmware and driver shouldn't be involved. This may only be employed as a workaround only if a real solution is not available. Thanks, Lijo > > Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx> > --- > drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 4 ++-- > 1 file changed, 2 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 7b01828eea8dc..96346a19950b9 100644 > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c > @@ -9826,14 +9826,14 @@ static void gfx_v10_0_ring_emit_cleaner_shader(struct amdgpu_ring *ring) > static void gfx_v10_0_ring_begin_use(struct amdgpu_ring *ring) > { > amdgpu_gfx_profile_ring_begin_use(ring); > - > amdgpu_gfx_enforce_isolation_ring_begin_use(ring); > + amdgpu_gfx_off_ctrl_immediate(ring->adev, false); > } > > static void gfx_v10_0_ring_end_use(struct amdgpu_ring *ring) > { > + amdgpu_gfx_off_ctrl_immediate(ring->adev, true); > amdgpu_gfx_profile_ring_end_use(ring); > - > amdgpu_gfx_enforce_isolation_ring_end_use(ring); > } >