From: Tim Huang <[email protected]>

This initializes MMHUB IP version 3.4.0.

v2: squash in clients table update (Alex)

Signed-off-by: Tim Huang <[email protected]>
Signed-off-by: Alex Deucher <[email protected]>
---
 drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c  |  1 +
 drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c | 34 +++++++++++++++++++++++++
 2 files changed, 35 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c 
b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
index ad5e512e3fb8a..7bd361057c3c5 100644
--- a/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
@@ -584,6 +584,7 @@ static void gmc_v11_0_set_mmhub_funcs(struct amdgpu_device 
*adev)
        case IP_VERSION(3, 3, 0):
        case IP_VERSION(3, 3, 1):
        case IP_VERSION(3, 3, 2):
+       case IP_VERSION(3, 4, 0):
                adev->mmhub.funcs = &mmhub_v3_3_funcs;
                break;
        default:
diff --git a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c 
b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c
index f6fc9778bc305..daf1f8ad4ccaa 100644
--- a/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c
+++ b/drivers/gpu/drm/amd/amdgpu/mmhub_v3_3.c
@@ -163,6 +163,35 @@ static const char *mmhub_client_ids_v3_3_1[][2] = {
        [32+30][1] = "VCN1",
 };
 
+static const char *mmhub_client_ids_v3_4[][2] = {
+       [0][0] = "VMC",
+       [4][0] = "DCEDMC",
+       [5][0] = "MPXSP",
+       [6][0] = "MPASP",
+       [7][0] = "MP1",
+       [8][0] = "MPM",
+       [23][0] = "HDP",
+       [24][0] = "LSDMA",
+       [25][0] = "JPEG",
+       [26][0] = "VPE",
+       [27][0] = "VSCH",
+       [28][0] = "VCNU",
+       [30][0] = "VCNRD",
+       [3][1] = "DCEDWB",
+       [4][1] = "DCEDMC",
+       [5][1] = "MPXSP",
+       [6][1] = "MPASAP",
+       [7][1] = "MP1",
+       [8][1] = "MPM",
+       [21][1] = "OSSSYS",
+       [23][1] = "HDP",
+       [24][1] = "LSDMA",
+       [25][1] = "JPEG",
+       [26][1] = "VPE",
+       [27][1] = "VSCH",
+       [29][1] = "VCNWR",
+};
+
 static uint32_t mmhub_v3_3_get_invalidate_req(unsigned int vmid,
                                                uint32_t flush_type)
 {
@@ -211,6 +240,11 @@ mmhub_v3_3_print_l2_protection_fault_status(struct 
amdgpu_device *adev,
                            mmhub_client_ids_v3_3_1[cid][rw] :
                            cid == 0x140 ? "UMSCH" : NULL;
                break;
+       case IP_VERSION(3, 4, 0):
+               mmhub_cid = cid < ARRAY_SIZE(mmhub_client_ids_v3_4) ?
+                       mmhub_client_ids_v3_4[cid][rw] :
+               cid == 0x140 ? "UMSCH" : NULL;
+               break;
        default:
                mmhub_cid = NULL;
                break;
-- 
2.52.0

Reply via email to