[Public]

Series is:
Reviewed-by: Alex Deucher <alexander.deuc...@amd.com>
________________________________
From: amd-gfx <amd-gfx-boun...@lists.freedesktop.org> on behalf of 
jesse.zh...@amd.com <jesse.zh...@amd.com>
Sent: Monday, December 9, 2024 10:53 PM
To: amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org>
Cc: Deucher, Alexander <alexander.deuc...@amd.com>; Koenig, Christian 
<christian.koe...@amd.com>; Zhu, Jiadong <jiadong....@amd.com>; Liang, Prike 
<prike.li...@amd.com>; Huang, Tim <tim.hu...@amd.com>; Zhang, Jesse(Jie) 
<jesse.zh...@amd.com>
Subject: [PATCH 5/5] drm/amdgpu/sdma7: Add queue reset sysfs for sdmav7

sdmv7 queue reset already supports by mmio, add its sys file.

Signed-off-by: Jesse Zhang <jesse.zh...@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c 
b/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c
index 627e0173b64d..8e69b84e0165 100644
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c
@@ -1368,6 +1368,9 @@ static int sdma_v7_0_sw_init(struct amdgpu_ip_block 
*ip_block)
                         return r;
         }

+       adev->sdma.supported_reset =
+               amdgpu_get_soft_full_reset_mask(&adev->sdma.instance[0].ring);
+       adev->sdma.supported_reset |= AMDGPU_RESET_TYPE_PER_QUEUE;
         /* Allocate memory for SDMA IP Dump buffer */
         ptr = kcalloc(adev->sdma.num_instances * reg_count, sizeof(uint32_t), 
GFP_KERNEL);
         if (ptr)
@@ -1378,7 +1381,9 @@ static int sdma_v7_0_sw_init(struct amdgpu_ip_block 
*ip_block)
 #ifdef CONFIG_DRM_AMDGPU_NAVI3X_USERQ
         adev->userq_funcs[AMDGPU_HW_IP_DMA] = &userq_mes_funcs;
 #endif
-
+       r = amdgpu_sdma_sysfs_reset_mask_init(adev);
+       if (r)
+               return r;

         return r;
 }
@@ -1391,6 +1396,7 @@ static int sdma_v7_0_sw_fini(struct amdgpu_ip_block 
*ip_block)
         for (i = 0; i < adev->sdma.num_instances; i++)
                 amdgpu_ring_fini(&adev->sdma.instance[i].ring);

+       amdgpu_sdma_sysfs_reset_mask_fini(adev);
         amdgpu_sdma_destroy_inst_ctx(adev, true);

         if (adev->firmware.load_type == AMDGPU_FW_LOAD_DIRECT)
--
2.25.1

Reply via email to