]> Gentwo Git Trees - linux/.git/commitdiff
drm/amdgpu: use common defines for HUB faults
authorAlex Deucher <alexander.deucher@amd.com>
Tue, 18 Nov 2025 21:56:54 +0000 (16:56 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 2 Dec 2025 16:02:07 +0000 (11:02 -0500)
Use common definitions for the fault bits in the IH sourc
data for the gmc9-12 memory hub faults

Reviewed-by: Timur Kristóf <timur.kristof@gmail.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.h
drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v12_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c

index 55097ca107382552e1de6d9cd344557a51a59f3c..727342689d4ba35dfa756729824d2594d27ce02a 100644 (file)
@@ -86,6 +86,11 @@ enum amdgpu_memory_partition {
 
 #define AMDGPU_MAX_MEM_RANGES 8
 
+#define AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY 0x80
+#define AMDGPU_GMC9_FAULT_SOURCE_DATA_READ  0x40
+#define AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE 0x20
+#define AMDGPU_GMC9_FAULT_SOURCE_DATA_EXE   0x10
+
 /*
  * GMC page fault information
  */
index d7499be8c4bfc2a4d8ab4da66d17d13842e059a4..ce6e04242c522c78a26095ac2e5e954a52ab852a 100644 (file)
@@ -103,8 +103,10 @@ static int gmc_v10_0_process_interrupt(struct amdgpu_device *adev,
        uint32_t vmhub_index = entry->client_id == SOC15_IH_CLIENTID_VMC ?
                               AMDGPU_MMHUB0(0) : AMDGPU_GFXHUB(0);
        struct amdgpu_vmhub *hub = &adev->vmhub[vmhub_index];
-       bool retry_fault = !!(entry->src_data[1] & 0x80);
-       bool write_fault = !!(entry->src_data[1] & 0x20);
+       bool retry_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
+       bool write_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
        struct amdgpu_task_info *task_info;
        uint32_t status = 0;
        u64 addr;
index 8acc912e7e4cb3877fabf94e78dd203428631e72..ba59ee8e398a807ed54dd44fdc6d4ec7c89c02d0 100644 (file)
@@ -103,8 +103,10 @@ static int gmc_v11_0_process_interrupt(struct amdgpu_device *adev,
        uint32_t vmhub_index = entry->client_id == SOC21_IH_CLIENTID_VMC ?
                               AMDGPU_MMHUB0(0) : AMDGPU_GFXHUB(0);
        struct amdgpu_vmhub *hub = &adev->vmhub[vmhub_index];
-       bool retry_fault = !!(entry->src_data[1] & 0x80);
-       bool write_fault = !!(entry->src_data[1] & 0x20);
+       bool retry_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
+       bool write_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
        uint32_t status = 0;
        u64 addr;
 
index f22b4197a1c96ded71348c35d1453c39251753ff..7a9d6894e3216bd1c7ab43cd85364fba88c21728 100644 (file)
@@ -91,8 +91,10 @@ static int gmc_v12_0_process_interrupt(struct amdgpu_device *adev,
                                       struct amdgpu_iv_entry *entry)
 {
        struct amdgpu_vmhub *hub;
-       bool retry_fault = !!(entry->src_data[1] & 0x80);
-       bool write_fault = !!(entry->src_data[1] & 0x20);
+       bool retry_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
+       bool write_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
        uint32_t status = 0;
        u64 addr;
 
index e716097dfde4811fee88edddbe156ef524f861fa..8ad7519f7b581859e011300eece29d1deea25858 100644 (file)
@@ -544,8 +544,10 @@ static int gmc_v9_0_process_interrupt(struct amdgpu_device *adev,
                                      struct amdgpu_irq_src *source,
                                      struct amdgpu_iv_entry *entry)
 {
-       bool retry_fault = !!(entry->src_data[1] & 0x80);
-       bool write_fault = !!(entry->src_data[1] & 0x20);
+       bool retry_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_RETRY);
+       bool write_fault = !!(entry->src_data[1] &
+                             AMDGPU_GMC9_FAULT_SOURCE_DATA_WRITE);
        uint32_t status = 0, cid = 0, rw = 0, fed = 0;
        struct amdgpu_task_info *task_info;
        struct amdgpu_vmhub *hub;