summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
diff options
context:
space:
mode:
authorAlex Deucher <alexander.deucher@amd.com>2024-07-18 10:22:00 -0400
committerAlex Deucher <alexander.deucher@amd.com>2024-09-02 11:41:22 -0400
commit1a1995b1dc948d471854360ec0fd3306f54dfbae (patch)
tree654584540baafd5a28010d435486374b11ebdec9 /drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
parent01163079e136e6d6ce4474b964b8a7ec954cac81 (diff)
drm/amdgpu/gfx12: per queue reset only on bare metal
It's not supported under SR-IOV at the moment. Acked-by: Vitaly Prosyak <vitaly.prosyak@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
index 6e2883e2dbe5..5935cc55a098 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v12_0.c
@@ -5163,6 +5163,9 @@ static int gfx_v12_0_reset_kgq(struct amdgpu_ring *ring, unsigned int vmid)
struct amdgpu_device *adev = ring->adev;
int r;
+ if (amdgpu_sriov_vf(adev))
+ return -EINVAL;
+
r = amdgpu_mes_reset_legacy_queue(ring->adev, ring, vmid, false);
if (r) {
dev_err(adev->dev, "reset via MES failed %d\n", r);
@@ -5200,6 +5203,9 @@ static int gfx_v12_0_reset_kcq(struct amdgpu_ring *ring, unsigned int vmid)
struct amdgpu_device *adev = ring->adev;
int r, i;
+ if (amdgpu_sriov_vf(adev))
+ return -EINVAL;
+
gfx_v12_0_set_safe_mode(adev, 0);
mutex_lock(&adev->srbm_mutex);
soc24_grbm_select(adev, ring->me, ring->pipe, ring->queue, 0);