summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2024-10-11 02:40:38 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2024-10-11 02:40:38 +0000
commitfe67708d166247ed305846eecf4dc1f70bb85f19 (patch)
treef1b38609b165ee770c90cd3f6a99b5e943555986 /sys/dev/pci/drm
parenteae8b3203729f7016468b1ad3c1e5179f2101114 (diff)
drm/amdgpu/gfx9: use rlc safe mode for soft recovery
From Alex Deucher 3ffbdc977d8008868431edb0195b81dec58944be in linux-6.6.y/6.6.55 3ec2ad7c34c412bd9264cd1ff235d0812be90e82 in mainline linux
Diffstat (limited to 'sys/dev/pci/drm')
-rw-r--r--sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c b/sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
index b5e2c6a2f0a..32ecdae8948 100644
--- a/sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
+++ b/sys/dev/pci/drm/amd/amdgpu/gfx_v9_0.c
@@ -5709,7 +5709,9 @@ static void gfx_v9_0_ring_soft_recovery(struct amdgpu_ring *ring, unsigned vmid)
value = REG_SET_FIELD(value, SQ_CMD, MODE, 0x01);
value = REG_SET_FIELD(value, SQ_CMD, CHECK_VMID, 1);
value = REG_SET_FIELD(value, SQ_CMD, VM_ID, vmid);
+ amdgpu_gfx_rlc_enter_safe_mode(adev, 0);
WREG32_SOC15(GC, 0, mmSQ_CMD, value);
+ amdgpu_gfx_rlc_exit_safe_mode(adev, 0);
}
static void gfx_v9_0_set_gfx_eop_interrupt_state(struct amdgpu_device *adev,