]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/amdgpu: introduce vmhub definition for multi-partition cases (v3)
authorHawking Zhang <Hawking.Zhang@amd.com>
Wed, 14 Sep 2022 08:35:50 +0000 (16:35 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 9 Jun 2023 13:40:03 +0000 (09:40 -0400)
v1: Each partition has its own gfxhub or mmhub. adjust
the num of MAX_VMHUBS and the GFXHUB/MMHUB layout (Le)

v2: re-design the AMDGPU_GFXHUB/AMDGPU_MMHUB layout (Le)

v3: apply the gfxhub/mmhub layout to new IPs (Hawking)

v4: fix up gmc11 (Alex)

v5: rebase (Alex)

Signed-off-by: Le Ma <le.ma@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
47 files changed:
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c
drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h
drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v11_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
drivers/gpu/drm/amd/amdgpu/gfx_v9_4_2.c
drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v1_2.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.c
drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.c
drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v11_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.c
drivers/gpu/drm/amd/amdgpu/jpeg_v2_0.c
drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.c
drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.c
drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.c
drivers/gpu/drm/amd/amdgpu/mes_v10_1.c
drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.c
drivers/gpu/drm/amd/amdgpu/mmhub_v1_7.c
drivers/gpu/drm/amd/amdgpu/mmhub_v1_8.c
drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.c
drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.c
drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.c
drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.c
drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.c
drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.c
drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c
drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c
drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c
drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c
drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
drivers/gpu/drm/amd/amdgpu/vce_v4_0.c
drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c
drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c
drivers/gpu/drm/amd/amdgpu/vcn_v3_0.c
drivers/gpu/drm/amd/amdgpu/vcn_v4_0.c

index a46285841d175e236cf33f77cd1168f399834192..f0a136d3527981b6d9ea58641dbfcb99c674b8ef 100644 (file)
@@ -736,7 +736,7 @@ int amdgpu_amdkfd_flush_gpu_tlb_vmid(struct amdgpu_device *adev,
                for (i = 0; i < adev->num_vmhubs; i++)
                        amdgpu_gmc_flush_gpu_tlb(adev, vmid, i, 0);
        } else {
-               amdgpu_gmc_flush_gpu_tlb(adev, vmid, AMDGPU_GFXHUB_0, 0);
+               amdgpu_gmc_flush_gpu_tlb(adev, vmid, AMDGPU_GFXHUB(0), 0);
        }
 
        return 0;
index 87e1a1a9f29881f84b83cb3e802672d7678692a9..488b3bb6dcb1360ddcd2b8272c0b5c46a24e6d85 100644 (file)
@@ -315,7 +315,7 @@ int amdgpu_gfx_kiq_init_ring(struct amdgpu_device *adev,
        ring->use_doorbell = true;
        ring->doorbell_index = adev->doorbell_index.kiq;
        ring->xcc_id = xcc_id;
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        if (xcc_id >= 1)
                ring->doorbell_index = adev->doorbell_index.xcc1_kiq_start +
                                        xcc_id - 1;
index 4e2531758866c6e370622152661efcddf218a31b..0a4e5fcfec6bb99f43817cafa862a7172fc1a34c 100644 (file)
@@ -670,7 +670,7 @@ void amdgpu_gmc_set_vm_fault_masks(struct amdgpu_device *adev, int hub_type,
        for (i = 0; i < 16; i++) {
                reg = hub->vm_context0_cntl + hub->ctx_distance * i;
 
-               tmp = (hub_type == AMDGPU_GFXHUB_0) ?
+               tmp = (hub_type == AMDGPU_GFXHUB(0)) ?
                        RREG32_SOC15_IP(GC, reg) :
                        RREG32_SOC15_IP(MMHUB, reg);
 
@@ -679,7 +679,7 @@ void amdgpu_gmc_set_vm_fault_masks(struct amdgpu_device *adev, int hub_type,
                else
                        tmp &= ~hub->vm_cntx_cntl_vm_fault;
 
-               (hub_type == AMDGPU_GFXHUB_0) ?
+               (hub_type == AMDGPU_GFXHUB(0)) ?
                        WREG32_SOC15_IP(GC, reg, tmp) :
                        WREG32_SOC15_IP(MMHUB, reg, tmp);
        }
index b6bd667df6763ffb444074840019431284f1dbae..c3964c14f215b135d84fcceeabee540c6fa8df53 100644 (file)
@@ -2374,12 +2374,12 @@ int amdgpu_vm_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
        case AMDGPU_VM_OP_RESERVE_VMID:
                /* We only have requirement to reserve vmid from gfxhub */
                r = amdgpu_vmid_alloc_reserved(adev, &fpriv->vm,
-                                              AMDGPU_GFXHUB_0);
+                                              AMDGPU_GFXHUB(0));
                if (r)
                        return r;
                break;
        case AMDGPU_VM_OP_UNRESERVE_VMID:
-               amdgpu_vmid_free_reserved(adev, &fpriv->vm, AMDGPU_GFXHUB_0);
+               amdgpu_vmid_free_reserved(adev, &fpriv->vm, AMDGPU_GFXHUB(0));
                break;
        default:
                return -EINVAL;
index 6f085f0b4ef3f818b449d2a09d2f5c5f0fff9786..9f5d32b0fda1f3552beb17bfac34615c1085750f 100644 (file)
@@ -111,11 +111,14 @@ struct amdgpu_mem_stats;
 /* Reserve 4MB VRAM for page tables */
 #define AMDGPU_VM_RESERVED_VRAM                (8ULL << 20)
 
-/* max number of VMHUB */
-#define AMDGPU_MAX_VMHUBS                      3
-#define AMDGPU_GFXHUB_0                                0
-#define AMDGPU_MMHUB_0                         1
-#define AMDGPU_MMHUB_1                         2
+/*
+ * max number of VMHUB
+ * layout: max 8 GFXHUB + 4 MMHUB0 + 1 MMHUB1
+ */
+#define AMDGPU_MAX_VMHUBS                      13
+#define AMDGPU_GFXHUB(x)                       (x)
+#define AMDGPU_MMHUB0(x)                       (8 + x)
+#define AMDGPU_MMHUB1(x)                       (8 + 4 + x)
 
 /* Reserve 2MB at top/bottom of address space for kernel use */
 #define AMDGPU_VA_RESERVED_SIZE                        (2ULL << 20)
index 8e86b2c23c0a59fd6bcc5db878a27841b0bae42a..7b585141e10e08227b0d9615d227d5678d0f4fd4 100644 (file)
@@ -4461,7 +4461,7 @@ static int gfx_v10_0_gfx_ring_init(struct amdgpu_device *adev, int ring_id,
                ring->doorbell_index = adev->doorbell_index.gfx_ring0 << 1;
        else
                ring->doorbell_index = adev->doorbell_index.gfx_ring1 << 1;
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        sprintf(ring->name, "gfx_%d.%d.%d", ring->me, ring->pipe, ring->queue);
 
        irq_type = AMDGPU_CP_IRQ_GFX_ME0_PIPE0_EOP + ring->pipe;
@@ -4490,7 +4490,7 @@ static int gfx_v10_0_compute_ring_init(struct amdgpu_device *adev, int ring_id,
        ring->doorbell_index = (adev->doorbell_index.mec_ring0 + ring_id) << 1;
        ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr
                                + (ring_id * GFX10_MEC_HPD_SIZE);
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        sprintf(ring->name, "comp_%d.%d.%d", ring->me, ring->pipe, ring->queue);
 
        irq_type = AMDGPU_CP_IRQ_COMPUTE_MEC1_PIPE0_EOP
@@ -4978,7 +4978,7 @@ static void gfx_v10_0_constants_init(struct amdgpu_device *adev)
        /* XXX SH_MEM regs */
        /* where to put LDS, scratch, GPUVM in FSA64 space */
        mutex_lock(&adev->srbm_mutex);
-       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB_0].num_ids; i++) {
+       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB(0)].num_ids; i++) {
                nv_grbm_select(adev, 0, 0, 0, i);
                /* CP and shaders */
                WREG32_SOC15(GC, 0, mmSH_MEM_CONFIG, DEFAULT_SH_MEM_CONFIG);
index f77779c31043bab85e3d5c09bc9bd7b96bc5ec1e..790df2cc3480f32ea4e43f85889e35eb835e795d 100644 (file)
@@ -906,7 +906,7 @@ static int gfx_v11_0_gfx_ring_init(struct amdgpu_device *adev, int ring_id,
                ring->doorbell_index = adev->doorbell_index.gfx_ring0 << 1;
        else
                ring->doorbell_index = adev->doorbell_index.gfx_ring1 << 1;
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        sprintf(ring->name, "gfx_%d.%d.%d", ring->me, ring->pipe, ring->queue);
 
        irq_type = AMDGPU_CP_IRQ_GFX_ME0_PIPE0_EOP + ring->pipe;
@@ -937,7 +937,7 @@ static int gfx_v11_0_compute_ring_init(struct amdgpu_device *adev, int ring_id,
        ring->doorbell_index = (adev->doorbell_index.mec_ring0 + ring_id) << 1;
        ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr
                                + (ring_id * GFX11_MEC_HPD_SIZE);
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        sprintf(ring->name, "comp_%d.%d.%d", ring->me, ring->pipe, ring->queue);
 
        irq_type = AMDGPU_CP_IRQ_COMPUTE_MEC1_PIPE0_EOP
@@ -1707,7 +1707,7 @@ static void gfx_v11_0_constants_init(struct amdgpu_device *adev)
        /* XXX SH_MEM regs */
        /* where to put LDS, scratch, GPUVM in FSA64 space */
        mutex_lock(&adev->srbm_mutex);
-       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB_0].num_ids; i++) {
+       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB(0)].num_ids; i++) {
                soc21_grbm_select(adev, 0, 0, 0, i);
                /* CP and shaders */
                WREG32_SOC15(GC, 0, regSH_MEM_CONFIG, DEFAULT_SH_MEM_CONFIG);
@@ -4190,7 +4190,7 @@ static int gfx_v11_0_gfxhub_enable(struct amdgpu_device *adev)
                false : true;
 
        adev->gfxhub.funcs->set_fault_enable_default(adev, value);
-       amdgpu_gmc_flush_gpu_tlb(adev, 0, AMDGPU_GFXHUB_0, 0);
+       amdgpu_gmc_flush_gpu_tlb(adev, 0, AMDGPU_GFXHUB(0), 0);
 
        return 0;
 }
index 46577b59cb0429b38e915ceaa446de508b2ee6a0..91814dc083c9eae4f109f76b01b915355b661c4c 100644 (file)
@@ -2005,7 +2005,7 @@ static int gfx_v9_0_compute_ring_init(struct amdgpu_device *adev, int ring_id,
        ring->doorbell_index = (adev->doorbell_index.mec_ring0 + ring_id) << 1;
        ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr
                                + (ring_id * GFX9_MEC_HPD_SIZE);
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        sprintf(ring->name, "comp_%d.%d.%d", ring->me, ring->pipe, ring->queue);
 
        irq_type = AMDGPU_CP_IRQ_COMPUTE_MEC1_PIPE0_EOP
@@ -2105,7 +2105,7 @@ static int gfx_v9_0_sw_init(void *handle)
 
                /* disable scheduler on the real ring */
                ring->no_scheduler = true;
-               ring->vm_hub = AMDGPU_GFXHUB_0;
+               ring->vm_hub = AMDGPU_GFXHUB(0);
                r = amdgpu_ring_init(adev, ring, 1024, &adev->gfx.eop_irq,
                                     AMDGPU_CP_IRQ_GFX_ME0_PIPE0_EOP,
                                     AMDGPU_RING_PRIO_DEFAULT, NULL);
@@ -2123,7 +2123,7 @@ static int gfx_v9_0_sw_init(void *handle)
                        ring->doorbell_index = adev->doorbell_index.gfx_ring0 << 1;
                        ring->is_sw_ring = true;
                        hw_prio = amdgpu_sw_ring_priority(i);
-                       ring->vm_hub = AMDGPU_GFXHUB_0;
+                       ring->vm_hub = AMDGPU_GFXHUB(0);
                        r = amdgpu_ring_init(adev, ring, 1024, &adev->gfx.eop_irq,
                                             AMDGPU_CP_IRQ_GFX_ME0_PIPE0_EOP, hw_prio,
                                             NULL);
@@ -2393,7 +2393,7 @@ static void gfx_v9_0_constants_init(struct amdgpu_device *adev)
        /* XXX SH_MEM regs */
        /* where to put LDS, scratch, GPUVM in FSA64 space */
        mutex_lock(&adev->srbm_mutex);
-       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB_0].num_ids; i++) {
+       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB(0)].num_ids; i++) {
                soc15_grbm_select(adev, 0, 0, 0, i, 0);
                /* CP and shaders */
                if (i == 0) {
index d648a29c33e0a1cbb56363e69640d0b6d239e879..ec7c049c5952158709ed8a317b50d77a828153ab 100644 (file)
@@ -1935,7 +1935,7 @@ static bool gfx_v9_4_2_query_uctl2_poison_status(struct amdgpu_device *adev)
        u32 status = 0;
        struct amdgpu_vmhub *hub;
 
-       hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        status = RREG32(hub->vm_l2_pro_fault_status);
        /* reset page fault status */
        WREG32_P(hub->vm_l2_pro_fault_cntl, 1, ~1);
index 9d17dcfae1306f35e3c7db579029f502a5fd9631..f5104b982633745e59b4447398a4d04ab41eac4e 100644 (file)
@@ -757,7 +757,7 @@ static int gfx_v9_4_3_compute_ring_init(struct amdgpu_device *adev, int ring_id,
                                (adev->doorbell_index.mec_ring0 + ring_id) << 1;
        ring->eop_gpu_addr = adev->gfx.mec.hpd_eop_gpu_addr
                                + (ring_id * GFX9_MEC_HPD_SIZE);
-       ring->vm_hub = AMDGPU_GFXHUB_0;
+       ring->vm_hub = AMDGPU_GFXHUB(0);
        sprintf(ring->name, "comp_%d.%d.%d.%d",
                        ring->xcc_id, ring->me, ring->pipe, ring->queue);
 
@@ -996,7 +996,7 @@ static void gfx_v9_4_3_constants_init(struct amdgpu_device *adev)
        /* XXX SH_MEM regs */
        /* where to put LDS, scratch, GPUVM in FSA64 space */
        mutex_lock(&adev->srbm_mutex);
-       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB_0].num_ids; i++) {
+       for (i = 0; i < adev->vm_manager.id_mgr[AMDGPU_GFXHUB(0)].num_ids; i++) {
                for (j = 0; j < adev->gfx.num_xcd; j++) {
                        soc15_grbm_select(adev, 0, 0, 0, i, j);
                        /* CP and shaders */
index ab2325f6c7ac5fc36d3e2f2bcabcc6f5175599b3..d94cc1ec7242db0ce8ca0f1b265bb9f4f64fe986 100644 (file)
@@ -40,7 +40,7 @@ static void gfxhub_v1_0_setup_vm_pt_regs(struct amdgpu_device *adev,
                                         uint32_t vmid,
                                         uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        WREG32_SOC15_OFFSET(GC, 0, mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -247,7 +247,7 @@ static void gfxhub_v1_0_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void gfxhub_v1_0_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned num_level, block_size;
        uint32_t tmp;
        int i;
@@ -307,7 +307,7 @@ static void gfxhub_v1_0_setup_vmid_config(struct amdgpu_device *adev)
 
 static void gfxhub_v1_0_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned i;
 
        for (i = 0 ; i < 18; ++i) {
@@ -338,7 +338,7 @@ static int gfxhub_v1_0_gart_enable(struct amdgpu_device *adev)
 
 static void gfxhub_v1_0_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        u32 tmp;
        u32 i;
 
@@ -411,7 +411,7 @@ static void gfxhub_v1_0_set_fault_enable_default(struct amdgpu_device *adev,
 
 static void gfxhub_v1_0_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(GC, 0,
index 79af32bb078c81ea76ec09b09c98e21216c24ea4..9c385ce3a8c4069d12f838860260e29aff9908dd 100644 (file)
@@ -42,7 +42,7 @@ static void gfxhub_v1_2_setup_vm_pt_regs(struct amdgpu_device *adev,
                                         uint32_t vmid,
                                         uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        int i;
 
        for (i = 0; i < adev->gfx.num_xcd; i++) {
@@ -291,7 +291,7 @@ static void gfxhub_v1_2_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void gfxhub_v1_2_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned num_level, block_size;
        uint32_t tmp;
        int i, j;
@@ -357,7 +357,7 @@ static void gfxhub_v1_2_setup_vmid_config(struct amdgpu_device *adev)
 
 static void gfxhub_v1_2_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned i, j;
 
        for (j = 0; j < adev->gfx.num_xcd; j++) {
@@ -406,7 +406,7 @@ static int gfxhub_v1_2_gart_enable(struct amdgpu_device *adev)
 
 static void gfxhub_v1_2_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        u32 tmp;
        u32 i, j;
 
@@ -483,7 +483,7 @@ static void gfxhub_v1_2_set_fault_enable_default(struct amdgpu_device *adev,
 
 static void gfxhub_v1_2_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(GC, 0,
index 9b3a0252731818dee104f1011f73e56c5603a37b..f173a61c6c15af3159c55fd3958fd0eb25ae0cfc 100644 (file)
@@ -120,7 +120,7 @@ static u64 gfxhub_v2_0_get_mc_fb_offset(struct amdgpu_device *adev)
 static void gfxhub_v2_0_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        WREG32_SOC15_OFFSET(GC, 0, mmGCVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -282,7 +282,7 @@ static void gfxhub_v2_0_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void gfxhub_v2_0_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        int i;
        uint32_t tmp;
 
@@ -331,7 +331,7 @@ static void gfxhub_v2_0_setup_vmid_config(struct amdgpu_device *adev)
 
 static void gfxhub_v2_0_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned i;
 
        for (i = 0 ; i < 18; ++i) {
@@ -360,7 +360,7 @@ static int gfxhub_v2_0_gart_enable(struct amdgpu_device *adev)
 
 static void gfxhub_v2_0_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        u32 tmp;
        u32 i;
 
@@ -433,7 +433,7 @@ static const struct amdgpu_vmhub_funcs gfxhub_v2_0_vmhub_funcs = {
 
 static void gfxhub_v2_0_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(GC, 0,
index 4aacbbec31e28a85d918e5c4a10dab28a716587c..d8fc3e8088cd003104175a5bf23a9d2b63331431 100644 (file)
@@ -123,7 +123,7 @@ static u64 gfxhub_v2_1_get_mc_fb_offset(struct amdgpu_device *adev)
 static void gfxhub_v2_1_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        WREG32_SOC15_OFFSET(GC, 0, mmGCVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -291,7 +291,7 @@ static void gfxhub_v2_1_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void gfxhub_v2_1_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        int i;
        uint32_t tmp;
 
@@ -340,7 +340,7 @@ static void gfxhub_v2_1_setup_vmid_config(struct amdgpu_device *adev)
 
 static void gfxhub_v2_1_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned i;
 
        for (i = 0 ; i < 18; ++i) {
@@ -381,7 +381,7 @@ static int gfxhub_v2_1_gart_enable(struct amdgpu_device *adev)
 
 static void gfxhub_v2_1_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        u32 tmp;
        u32 i;
 
@@ -462,7 +462,7 @@ static const struct amdgpu_vmhub_funcs gfxhub_v2_1_vmhub_funcs = {
 
 static void gfxhub_v2_1_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(GC, 0,
@@ -651,7 +651,7 @@ static void gfxhub_v2_1_restore_regs(struct amdgpu_device *adev)
 
 static void gfxhub_v2_1_halt(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        int i;
        uint32_t tmp;
        int time = 1000;
index 13712640fa46fa628f4cee14332705d7785da653..c53147f9c9fc0b2653fad912558a1d8848510fa9 100644 (file)
@@ -119,7 +119,7 @@ static u64 gfxhub_v3_0_get_mc_fb_offset(struct amdgpu_device *adev)
 static void gfxhub_v3_0_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        WREG32_SOC15_OFFSET(GC, 0, regGCVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -290,7 +290,7 @@ static void gfxhub_v3_0_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void gfxhub_v3_0_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        int i;
        uint32_t tmp;
 
@@ -339,7 +339,7 @@ static void gfxhub_v3_0_setup_vmid_config(struct amdgpu_device *adev)
 
 static void gfxhub_v3_0_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned i;
 
        for (i = 0 ; i < 18; ++i) {
@@ -380,7 +380,7 @@ static int gfxhub_v3_0_gart_enable(struct amdgpu_device *adev)
 
 static void gfxhub_v3_0_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        u32 tmp;
        u32 i;
 
@@ -463,7 +463,7 @@ static const struct amdgpu_vmhub_funcs gfxhub_v3_0_vmhub_funcs = {
 
 static void gfxhub_v3_0_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(GC, 0,
index 6e0bd628c8895a927017091d65f18ce326b3a5c9..ae777487d72efc3ef5871e037af03f02765e4ed8 100644 (file)
@@ -122,7 +122,7 @@ static u64 gfxhub_v3_0_3_get_mc_fb_offset(struct amdgpu_device *adev)
 static void gfxhub_v3_0_3_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        WREG32_SOC15_OFFSET(GC, 0, regGCVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -295,7 +295,7 @@ static void gfxhub_v3_0_3_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void gfxhub_v3_0_3_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        int i;
        uint32_t tmp;
 
@@ -344,7 +344,7 @@ static void gfxhub_v3_0_3_setup_vmid_config(struct amdgpu_device *adev)
 
 static void gfxhub_v3_0_3_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        unsigned i;
 
        for (i = 0 ; i < 18; ++i) {
@@ -373,7 +373,7 @@ static int gfxhub_v3_0_3_gart_enable(struct amdgpu_device *adev)
 
 static void gfxhub_v3_0_3_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        u32 tmp;
        u32 i;
 
@@ -451,7 +451,7 @@ static const struct amdgpu_vmhub_funcs gfxhub_v3_0_3_vmhub_funcs = {
 
 static void gfxhub_v3_0_3_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(GC, 0,
index 5697b66bf0de1142ee8f950d9898b6bbe886d1f7..ea2a448147e37126ec815151d3371cade41c3dce 100644 (file)
@@ -76,7 +76,7 @@ gmc_v10_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
        switch (state) {
        case AMDGPU_IRQ_STATE_DISABLE:
                /* MM HUB */
-               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB_0, false);
+               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB0(0), false);
                /* GFX HUB */
                /* This works because this interrupt is only
                 * enabled at init/resume and disabled in
@@ -84,11 +84,11 @@ gmc_v10_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
                 * change over the course of suspend/resume.
                 */
                if (!adev->in_s0ix)
-                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB_0, false);
+                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB(0), false);
                break;
        case AMDGPU_IRQ_STATE_ENABLE:
                /* MM HUB */
-               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB_0, true);
+               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB0(0), true);
                /* GFX HUB */
                /* This works because this interrupt is only
                 * enabled at init/resume and disabled in
@@ -96,7 +96,7 @@ gmc_v10_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
                 * change over the course of suspend/resume.
                 */
                if (!adev->in_s0ix)
-                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB_0, true);
+                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB(0), true);
                break;
        default:
                break;
@@ -149,7 +149,7 @@ static int gmc_v10_0_process_interrupt(struct amdgpu_device *adev,
                 * be updated to avoid reading an incorrect value due to
                 * the new fast GRBM interface.
                 */
-               if ((entry->vmid_src == AMDGPU_GFXHUB_0) &&
+               if ((entry->vmid_src == AMDGPU_GFXHUB(0)) &&
                    (adev->ip_versions[GC_HWIP][0] < IP_VERSION(10, 3, 0)))
                        RREG32(hub->vm_l2_pro_fault_status);
 
@@ -212,8 +212,7 @@ static void gmc_v10_0_set_irq_funcs(struct amdgpu_device *adev)
 static bool gmc_v10_0_use_invalidate_semaphore(struct amdgpu_device *adev,
                                       uint32_t vmhub)
 {
-       return ((vmhub == AMDGPU_MMHUB_0 ||
-                vmhub == AMDGPU_MMHUB_1) &&
+       return ((vmhub == AMDGPU_MMHUB0(0)) &&
                (!amdgpu_sriov_vf(adev)));
 }
 
@@ -249,7 +248,7 @@ static void gmc_v10_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid,
        unsigned int i;
        unsigned char hub_ip = 0;
 
-       hub_ip = (vmhub == AMDGPU_GFXHUB_0) ?
+       hub_ip = (vmhub == AMDGPU_GFXHUB(0)) ?
                   GC_HWIP : MMHUB_HWIP;
 
        spin_lock(&adev->gmc.invalidate_lock);
@@ -284,7 +283,7 @@ static void gmc_v10_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid,
         * Issue a dummy read to wait for the ACK register to be cleared
         * to avoid a false ACK due to the new fast GRBM interface.
         */
-       if ((vmhub == AMDGPU_GFXHUB_0) &&
+       if ((vmhub == AMDGPU_GFXHUB(0)) &&
            (adev->ip_versions[GC_HWIP][0] < IP_VERSION(10, 3, 0)))
                RREG32_RLC_NO_KIQ(hub->vm_inv_eng0_req +
                                  hub->eng_distance * eng, hub_ip);
@@ -361,19 +360,19 @@ static void gmc_v10_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid,
 
        mutex_lock(&adev->mman.gtt_window_lock);
 
-       if (vmhub == AMDGPU_MMHUB_0) {
-               gmc_v10_0_flush_vm_hub(adev, vmid, AMDGPU_MMHUB_0, 0);
+       if (vmhub == AMDGPU_MMHUB0(0)) {
+               gmc_v10_0_flush_vm_hub(adev, vmid, AMDGPU_MMHUB0(0), 0);
                mutex_unlock(&adev->mman.gtt_window_lock);
                return;
        }
 
-       BUG_ON(vmhub != AMDGPU_GFXHUB_0);
+       BUG_ON(vmhub != AMDGPU_GFXHUB(0));
 
        if (!adev->mman.buffer_funcs_enabled ||
            !adev->ib_pool_ready ||
            amdgpu_in_reset(adev) ||
            ring->sched.ready == false) {
-               gmc_v10_0_flush_vm_hub(adev, vmid, AMDGPU_GFXHUB_0, 0);
+               gmc_v10_0_flush_vm_hub(adev, vmid, AMDGPU_GFXHUB(0), 0);
                mutex_unlock(&adev->mman.gtt_window_lock);
                return;
        }
@@ -466,7 +465,7 @@ static int gmc_v10_0_flush_gpu_tlb_pasid(struct amdgpu_device *adev,
                                                        i, flush_type);
                        } else {
                                gmc_v10_0_flush_gpu_tlb(adev, vmid,
-                                               AMDGPU_GFXHUB_0, flush_type);
+                                               AMDGPU_GFXHUB(0), flush_type);
                        }
                        if (!adev->enable_mes)
                                break;
@@ -534,7 +533,7 @@ static void gmc_v10_0_emit_pasid_mapping(struct amdgpu_ring *ring, unsigned vmid
        if (ring->is_mes_queue)
                return;
 
-       if (ring->vm_hub == AMDGPU_GFXHUB_0)
+       if (ring->vm_hub == AMDGPU_GFXHUB(0))
                reg = SOC15_REG_OFFSET(OSSSYS, 0, mmIH_VMID_0_LUT) + vmid;
        else
                reg = SOC15_REG_OFFSET(OSSSYS, 0, mmIH_VMID_0_LUT_MM) + vmid;
@@ -1075,9 +1074,9 @@ static int gmc_v10_0_gart_enable(struct amdgpu_device *adev)
        if (!adev->in_s0ix)
                adev->gfxhub.funcs->set_fault_enable_default(adev, value);
        adev->mmhub.funcs->set_fault_enable_default(adev, value);
-       gmc_v10_0_flush_gpu_tlb(adev, 0, AMDGPU_MMHUB_0, 0);
+       gmc_v10_0_flush_gpu_tlb(adev, 0, AMDGPU_MMHUB0(0), 0);
        if (!adev->in_s0ix)
-               gmc_v10_0_flush_gpu_tlb(adev, 0, AMDGPU_GFXHUB_0, 0);
+               gmc_v10_0_flush_gpu_tlb(adev, 0, AMDGPU_GFXHUB(0), 0);
 
        DRM_INFO("PCIE GART of %uM enabled (table at 0x%016llX).\n",
                 (unsigned)(adev->gmc.gart_size >> 20),
index 2f570fb5febe37ef94c27df230b769caaba66c5f..fb2ac31cbba72ffe706a177e3c40a48e20a56e5e 100644 (file)
@@ -64,7 +64,7 @@ gmc_v11_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
        switch (state) {
        case AMDGPU_IRQ_STATE_DISABLE:
                /* MM HUB */
-               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB_0, false);
+               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB0(0), false);
                /* GFX HUB */
                /* This works because this interrupt is only
                 * enabled at init/resume and disabled in
@@ -72,11 +72,11 @@ gmc_v11_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
                 * change over the course of suspend/resume.
                 */
                if (!adev->in_s0ix)
-                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB_0, false);
+                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB(0), false);
                break;
        case AMDGPU_IRQ_STATE_ENABLE:
                /* MM HUB */
-               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB_0, true);
+               amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_MMHUB0(0), true);
                /* GFX HUB */
                /* This works because this interrupt is only
                 * enabled at init/resume and disabled in
@@ -84,7 +84,7 @@ gmc_v11_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
                 * change over the course of suspend/resume.
                 */
                if (!adev->in_s0ix)
-                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB_0, true);
+                       amdgpu_gmc_set_vm_fault_masks(adev, AMDGPU_GFXHUB(0), true);
                break;
        default:
                break;
@@ -110,7 +110,7 @@ static int gmc_v11_0_process_interrupt(struct amdgpu_device *adev,
                 * be updated to avoid reading an incorrect value due to
                 * the new fast GRBM interface.
                 */
-               if (entry->vmid_src == AMDGPU_GFXHUB_0)
+               if (entry->vmid_src == AMDGPU_GFXHUB(0))
                        RREG32(hub->vm_l2_pro_fault_status);
 
                status = RREG32(hub->vm_l2_pro_fault_status);
@@ -170,7 +170,7 @@ static void gmc_v11_0_set_irq_funcs(struct amdgpu_device *adev)
 static bool gmc_v11_0_use_invalidate_semaphore(struct amdgpu_device *adev,
                                       uint32_t vmhub)
 {
-       return ((vmhub == AMDGPU_MMHUB_0) &&
+       return ((vmhub == AMDGPU_MMHUB0(0)) &&
                (!amdgpu_sriov_vf(adev)));
 }
 
@@ -202,7 +202,7 @@ static void gmc_v11_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid,
        unsigned int i;
        unsigned char hub_ip = 0;
 
-       hub_ip = (vmhub == AMDGPU_GFXHUB_0) ?
+       hub_ip = (vmhub == AMDGPU_GFXHUB(0)) ?
                   GC_HWIP : MMHUB_HWIP;
 
        spin_lock(&adev->gmc.invalidate_lock);
@@ -251,7 +251,7 @@ static void gmc_v11_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid,
                              hub->eng_distance * eng, 0, hub_ip);
 
        /* Issue additional private vm invalidation to MMHUB */
-       if ((vmhub != AMDGPU_GFXHUB_0) &&
+       if ((vmhub != AMDGPU_GFXHUB(0)) &&
            (hub->vm_l2_bank_select_reserved_cid2) &&
                !amdgpu_sriov_vf(adev)) {
                inv_req = RREG32_NO_KIQ(hub->vm_l2_bank_select_reserved_cid2);
@@ -284,7 +284,7 @@ static void gmc_v11_0_flush_vm_hub(struct amdgpu_device *adev, uint32_t vmid,
 static void gmc_v11_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid,
                                        uint32_t vmhub, uint32_t flush_type)
 {
-       if ((vmhub == AMDGPU_GFXHUB_0) && !adev->gfx.is_poweron)
+       if ((vmhub == AMDGPU_GFXHUB(0)) && !adev->gfx.is_poweron)
                return;
 
        /* flush hdp cache */
@@ -369,7 +369,7 @@ static int gmc_v11_0_flush_gpu_tlb_pasid(struct amdgpu_device *adev,
                                                        i, flush_type);
                        } else {
                                gmc_v11_0_flush_gpu_tlb(adev, vmid,
-                                               AMDGPU_GFXHUB_0, flush_type);
+                                               AMDGPU_GFXHUB(0), flush_type);
                        }
                }
        }
@@ -435,7 +435,7 @@ static void gmc_v11_0_emit_pasid_mapping(struct amdgpu_ring *ring, unsigned vmid
        if (ring->is_mes_queue)
                return;
 
-       if (ring->vm_hub == AMDGPU_GFXHUB_0)
+       if (ring->vm_hub == AMDGPU_GFXHUB(0))
                reg = SOC15_REG_OFFSET(OSSSYS, 0, regIH_VMID_0_LUT) + vmid;
        else
                reg = SOC15_REG_OFFSET(OSSSYS, 0, regIH_VMID_0_LUT_MM) + vmid;
@@ -886,7 +886,7 @@ static int gmc_v11_0_sw_fini(void *handle)
 static void gmc_v11_0_init_golden_registers(struct amdgpu_device *adev)
 {
        if (amdgpu_sriov_vf(adev)) {
-               struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+               struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
                WREG32(hub->vm_contexts_disable, 0);
                return;
@@ -921,7 +921,7 @@ static int gmc_v11_0_gart_enable(struct amdgpu_device *adev)
                false : true;
 
        adev->mmhub.funcs->set_fault_enable_default(adev, value);
-       gmc_v11_0_flush_gpu_tlb(adev, 0, AMDGPU_MMHUB_0, 0);
+       gmc_v11_0_flush_gpu_tlb(adev, 0, AMDGPU_MMHUB0(0), 0);
 
        DRM_INFO("PCIE GART of %uM enabled (table at 0x%016llX).\n",
                 (unsigned)(adev->gmc.gart_size >> 20),
index 6ae5cee9b64bee272f0cb3b28eb6c7cda29ada5b..193ba4d912a6958d141ab962ad3bd81908210316 100644 (file)
@@ -491,20 +491,20 @@ static int gmc_v9_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
                                 * fini/suspend, so the overall state doesn't
                                 * change over the course of suspend/resume.
                                 */
-                               if (adev->in_s0ix && (j == AMDGPU_GFXHUB_0))
+                               if (adev->in_s0ix && (j == AMDGPU_GFXHUB(0)))
                                        continue;
 
-                               if (j == AMDGPU_GFXHUB_0)
-                                       tmp = RREG32_SOC15_IP(GC, reg);
-                               else
+                               if (j >= AMDGPU_MMHUB0(0))
                                        tmp = RREG32_SOC15_IP(MMHUB, reg);
+                               else
+                                       tmp = RREG32_SOC15_IP(GC, reg);
 
                                tmp &= ~bits;
 
-                               if (j == AMDGPU_GFXHUB_0)
-                                       WREG32_SOC15_IP(GC, reg, tmp);
-                               else
+                               if (j >= AMDGPU_MMHUB0(0))
                                        WREG32_SOC15_IP(MMHUB, reg, tmp);
+                               else
+                                       WREG32_SOC15_IP(GC, reg, tmp);
                        }
                }
                break;
@@ -519,20 +519,20 @@ static int gmc_v9_0_vm_fault_interrupt_state(struct amdgpu_device *adev,
                                 * fini/suspend, so the overall state doesn't
                                 * change over the course of suspend/resume.
                                 */
-                               if (adev->in_s0ix && (j == AMDGPU_GFXHUB_0))
+                               if (adev->in_s0ix && (j == AMDGPU_GFXHUB(0)))
                                        continue;
 
-                               if (j == AMDGPU_GFXHUB_0)
-                                       tmp = RREG32_SOC15_IP(GC, reg);
-                               else
+                               if (j >= AMDGPU_MMHUB0(0))
                                        tmp = RREG32_SOC15_IP(MMHUB, reg);
+                               else
+                                       tmp = RREG32_SOC15_IP(GC, reg);
 
                                tmp |= bits;
 
-                               if (j == AMDGPU_GFXHUB_0)
-                                       WREG32_SOC15_IP(GC, reg, tmp);
-                               else
+                               if (j >= AMDGPU_MMHUB0(0))
                                        WREG32_SOC15_IP(MMHUB, reg, tmp);
+                               else
+                                       WREG32_SOC15_IP(GC, reg, tmp);
                        }
                }
                break;
@@ -605,13 +605,13 @@ static int gmc_v9_0_process_interrupt(struct amdgpu_device *adev,
 
        if (entry->client_id == SOC15_IH_CLIENTID_VMC) {
                hub_name = "mmhub0";
-               hub = &adev->vmhub[AMDGPU_MMHUB_0];
+               hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        } else if (entry->client_id == SOC15_IH_CLIENTID_VMC1) {
                hub_name = "mmhub1";
-               hub = &adev->vmhub[AMDGPU_MMHUB_1];
+               hub = &adev->vmhub[AMDGPU_MMHUB1(0)];
        } else {
                hub_name = "gfxhub0";
-               hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+               hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        }
 
        memset(&task_info, 0, sizeof(struct amdgpu_task_info));
@@ -636,7 +636,7 @@ static int gmc_v9_0_process_interrupt(struct amdgpu_device *adev,
         * be updated to avoid reading an incorrect value due to
         * the new fast GRBM interface.
         */
-       if ((entry->vmid_src == AMDGPU_GFXHUB_0) &&
+       if ((entry->vmid_src == AMDGPU_GFXHUB(0)) &&
            (adev->ip_versions[GC_HWIP][0] < IP_VERSION(9, 4, 2)))
                RREG32(hub->vm_l2_pro_fault_status);
 
@@ -649,7 +649,7 @@ static int gmc_v9_0_process_interrupt(struct amdgpu_device *adev,
        dev_err(adev->dev,
                "VM_L2_PROTECTION_FAULT_STATUS:0x%08X\n",
                status);
-       if (hub == &adev->vmhub[AMDGPU_GFXHUB_0]) {
+       if (hub == &adev->vmhub[AMDGPU_GFXHUB(0)]) {
                dev_err(adev->dev, "\t Faulty UTCL2 client ID: %s (0x%x)\n",
                        cid >= ARRAY_SIZE(gfxhub_client_ids) ? "unknown" :
                        gfxhub_client_ids[cid],
@@ -759,8 +759,8 @@ static bool gmc_v9_0_use_invalidate_semaphore(struct amdgpu_device *adev,
            adev->ip_versions[GC_HWIP][0] == IP_VERSION(9, 4, 3))
                return false;
 
-       return ((vmhub == AMDGPU_MMHUB_0 ||
-                vmhub == AMDGPU_MMHUB_1) &&
+       return ((vmhub == AMDGPU_MMHUB0(0) ||
+                vmhub == AMDGPU_MMHUB1(0)) &&
                (!amdgpu_sriov_vf(adev)) &&
                (!(!(adev->apu_flags & AMD_APU_IS_RAVEN2) &&
                   (adev->apu_flags & AMD_APU_IS_PICASSO))));
@@ -849,11 +849,10 @@ static void gmc_v9_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid,
        if (use_semaphore) {
                for (j = 0; j < adev->usec_timeout; j++) {
                        /* a read return value of 1 means semaphore acquire */
-                       if (vmhub == AMDGPU_GFXHUB_0)
-                               tmp = RREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_sem + hub->eng_distance * eng);
-                       else
+                       if (vmhub >= AMDGPU_MMHUB0(0))
                                tmp = RREG32_SOC15_IP_NO_KIQ(MMHUB, hub->vm_inv_eng0_sem + hub->eng_distance * eng);
-
+                       else
+                               tmp = RREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_sem + hub->eng_distance * eng);
                        if (tmp & 0x1)
                                break;
                        udelay(1);
@@ -864,27 +863,26 @@ static void gmc_v9_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid,
        }
 
        do {
-               if (vmhub == AMDGPU_GFXHUB_0)
-                       WREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_req + hub->eng_distance * eng, inv_req);
-               else
+               if (vmhub >= AMDGPU_MMHUB0(0))
                        WREG32_SOC15_IP_NO_KIQ(MMHUB, hub->vm_inv_eng0_req + hub->eng_distance * eng, inv_req);
+               else
+                       WREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_req + hub->eng_distance * eng, inv_req);
 
                /*
                 * Issue a dummy read to wait for the ACK register to
                 * be cleared to avoid a false ACK due to the new fast
                 * GRBM interface.
                 */
-               if ((vmhub == AMDGPU_GFXHUB_0) &&
+               if ((vmhub == AMDGPU_GFXHUB(0)) &&
                    (adev->ip_versions[GC_HWIP][0] < IP_VERSION(9, 4, 2)))
                        RREG32_NO_KIQ(hub->vm_inv_eng0_req +
                                      hub->eng_distance * eng);
 
                for (j = 0; j < adev->usec_timeout; j++) {
-                       if (vmhub == AMDGPU_GFXHUB_0)
-                               tmp = RREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_ack + hub->eng_distance * eng);
-                       else
+                       if (vmhub >= AMDGPU_MMHUB0(0))
                                tmp = RREG32_SOC15_IP_NO_KIQ(MMHUB, hub->vm_inv_eng0_ack + hub->eng_distance * eng);
-
+                       else
+                               tmp = RREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_ack + hub->eng_distance * eng);
                        if (tmp & (1 << vmid))
                                break;
                        udelay(1);
@@ -900,10 +898,10 @@ static void gmc_v9_0_flush_gpu_tlb(struct amdgpu_device *adev, uint32_t vmid,
                 * add semaphore release after invalidation,
                 * write with 0 means semaphore release
                 */
-               if (vmhub == AMDGPU_GFXHUB_0)
-                       WREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_sem + hub->eng_distance * eng, 0);
+               if (vmhub >= AMDGPU_MMHUB0(0))
+                       WREG32_SOC15_IP_NO_KIQ(MMHUB, hub->vm_inv_eng0_req + hub->eng_distance * eng, inv_req);
                else
-                       WREG32_SOC15_IP_NO_KIQ(MMHUB, hub->vm_inv_eng0_sem + hub->eng_distance * eng, 0);
+                       WREG32_SOC15_IP_NO_KIQ(GC, hub->vm_inv_eng0_req + hub->eng_distance * eng, inv_req);
        }
 
        spin_unlock(&adev->gmc.invalidate_lock);
@@ -994,7 +992,7 @@ static int gmc_v9_0_flush_gpu_tlb_pasid(struct amdgpu_device *adev,
                                                        i, flush_type);
                        } else {
                                gmc_v9_0_flush_gpu_tlb(adev, vmid,
-                                               AMDGPU_GFXHUB_0, flush_type);
+                                               AMDGPU_GFXHUB(0), flush_type);
                        }
                        break;
                }
@@ -1060,10 +1058,10 @@ static void gmc_v9_0_emit_pasid_mapping(struct amdgpu_ring *ring, unsigned vmid,
        uint32_t reg;
 
        /* Do nothing because there's no lut register for mmhub1. */
-       if (ring->vm_hub == AMDGPU_MMHUB_1)
+       if (ring->vm_hub == AMDGPU_MMHUB1(0))
                return;
 
-       if (ring->vm_hub == AMDGPU_GFXHUB_0)
+       if (ring->vm_hub == AMDGPU_GFXHUB(0))
                reg = SOC15_REG_OFFSET(OSSSYS, 0, mmIH_VMID_0_LUT) + vmid;
        else
                reg = SOC15_REG_OFFSET(OSSSYS, 0, mmIH_VMID_0_LUT_MM) + vmid;
@@ -1947,7 +1945,7 @@ static int gmc_v9_0_hw_init(void *handle)
                adev->mmhub.funcs->set_fault_enable_default(adev, value);
        }
        for (i = 0; i < adev->num_vmhubs; ++i) {
-               if (adev->in_s0ix && (i == AMDGPU_GFXHUB_0))
+               if (adev->in_s0ix && (i == AMDGPU_GFXHUB(0)))
                        continue;
                gmc_v9_0_flush_gpu_tlb(adev, 0, i, 0);
        }
index a3076eb8af6acd14641e4a4588db13afe61ac41e..71fe7f6f9889c4a5ff0613c1343cbf2c6ce2b4f4 100644 (file)
@@ -485,7 +485,7 @@ int jpeg_v1_0_sw_init(void *handle)
                return r;
 
        ring = &adev->jpeg.inst->ring_dec;
-       ring->vm_hub = AMDGPU_MMHUB_0;
+       ring->vm_hub = AMDGPU_MMHUB0(0);
        sprintf(ring->name, "jpeg_dec");
        r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq,
                             0, AMDGPU_RING_PRIO_DEFAULT, NULL);
index 0eddf7c824a728e85e11ab9ad97ce5473245634a..3a43e42f4834db97db0cdb912eea39132a2a47bf 100644 (file)
@@ -86,7 +86,7 @@ static int jpeg_v2_0_sw_init(void *handle)
        ring = &adev->jpeg.inst->ring_dec;
        ring->use_doorbell = true;
        ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 1;
-       ring->vm_hub = AMDGPU_MMHUB_0;
+       ring->vm_hub = AMDGPU_MMHUB0(0);
        sprintf(ring->name, "jpeg_dec");
        r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq,
                             0, AMDGPU_RING_PRIO_DEFAULT, NULL);
index b040f51d9aa9d2847ea7f0c1023a15de8e0ed381..259b7ba6a842c90e4dba032451141a38c3cb053b 100644 (file)
@@ -128,9 +128,9 @@ static int jpeg_v2_5_sw_init(void *handle)
                ring = &adev->jpeg.inst[i].ring_dec;
                ring->use_doorbell = true;
                if (adev->ip_versions[UVD_HWIP][0] == IP_VERSION(2, 5, 0))
-                       ring->vm_hub = AMDGPU_MMHUB_1;
+                       ring->vm_hub = AMDGPU_MMHUB1(0);
                else
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
                ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 1 + 8 * i;
                sprintf(ring->name, "jpeg_dec_%d", i);
                r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst[i].irq,
index 1c2292cc5f2ce2cf3836902dd5beb7db9997ef18..c55386c22311aabd60777665271ac31309387d26 100644 (file)
@@ -101,7 +101,7 @@ static int jpeg_v3_0_sw_init(void *handle)
        ring = &adev->jpeg.inst->ring_dec;
        ring->use_doorbell = true;
        ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 1;
-       ring->vm_hub = AMDGPU_MMHUB_0;
+       ring->vm_hub = AMDGPU_MMHUB0(0);
        sprintf(ring->name, "jpeg_dec");
        r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0,
                             AMDGPU_RING_PRIO_DEFAULT, NULL);
index 77e1e64aa1d1c7b7987d15aa5a771b553754a230..d7d5ffc293937c3f0962f44a3dbe7745fd3b7e5a 100644 (file)
@@ -108,7 +108,7 @@ static int jpeg_v4_0_sw_init(void *handle)
        ring = &adev->jpeg.inst->ring_dec;
        ring->use_doorbell = true;
        ring->doorbell_index = amdgpu_sriov_vf(adev) ? (((adev->doorbell_index.vcn.vcn_ring0_1) << 1) + 4) : ((adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 1);
-       ring->vm_hub = AMDGPU_MMHUB_0;
+       ring->vm_hub = AMDGPU_MMHUB0(0);
 
        sprintf(ring->name, "jpeg_dec");
        r = amdgpu_ring_init(adev, ring, 512, &adev->jpeg.inst->irq, 0,
index 4560476c7c317dca5bc0b3a87e14cb0a454674ab..f1a6abdad21b6684c79a9046e454868f17dc4c38 100644 (file)
@@ -149,7 +149,7 @@ static int mes_v10_1_add_hw_queue(struct amdgpu_mes *mes,
 {
        struct amdgpu_device *adev = mes->adev;
        union MESAPI__ADD_QUEUE mes_add_queue_pkt;
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        uint32_t vm_cntx_cntl = hub->vm_cntx_cntl;
 
        memset(&mes_add_queue_pkt, 0, sizeof(mes_add_queue_pkt));
index 3adb450eec07275d9e96c144ca981b2404262dfa..9791f35817865a6a7210c641c2b607f77c75913f 100644 (file)
@@ -164,7 +164,7 @@ static int mes_v11_0_add_hw_queue(struct amdgpu_mes *mes,
 {
        struct amdgpu_device *adev = mes->adev;
        union MESAPI__ADD_QUEUE mes_add_queue_pkt;
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_GFXHUB(0)];
        uint32_t vm_cntx_cntl = hub->vm_cntx_cntl;
 
        memset(&mes_add_queue_pkt, 0, sizeof(mes_add_queue_pkt));
index 15e7cbeae75b815b88c9fab0842fcb302ed6d099..fb91b31056cae70585a082cc5f1ee1f92e5a541f 100644 (file)
@@ -54,7 +54,7 @@ static u64 mmhub_v1_0_get_fb_location(struct amdgpu_device *adev)
 static void mmhub_v1_0_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, mmVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -229,7 +229,7 @@ static void mmhub_v1_0_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v1_0_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned num_level, block_size;
        uint32_t tmp;
        int i;
@@ -285,7 +285,7 @@ static void mmhub_v1_0_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v1_0_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -338,7 +338,7 @@ static int mmhub_v1_0_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v1_0_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -415,7 +415,7 @@ static void mmhub_v1_0_set_fault_enable_default(struct amdgpu_device *adev, bool
 
 static void mmhub_v1_0_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 73afbf2facc9e7f51015c4853082d04beb51c424..9086f2fdfaf422b4312d47c4fd3096e62cce1e60 100644 (file)
@@ -54,7 +54,7 @@ static u64 mmhub_v1_7_get_fb_location(struct amdgpu_device *adev)
 static void mmhub_v1_7_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, regVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                        hub->ctx_addr_distance * vmid, lower_32_bits(page_table_base));
@@ -261,7 +261,7 @@ static void mmhub_v1_7_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v1_7_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned num_level, block_size;
        uint32_t tmp;
        int i;
@@ -319,7 +319,7 @@ static void mmhub_v1_7_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v1_7_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -348,7 +348,7 @@ static int mmhub_v1_7_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v1_7_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -425,7 +425,7 @@ static void mmhub_v1_7_set_fault_enable_default(struct amdgpu_device *adev, bool
 
 static void mmhub_v1_7_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 342d1702104cb4e63c06ef614485efc6e536626b..9ec06f9db761733111fb92cf815683e6f224ea85 100644 (file)
@@ -53,7 +53,7 @@ static u64 mmhub_v1_8_get_fb_location(struct amdgpu_device *adev)
 static void mmhub_v1_8_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, regVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid, lower_32_bits(page_table_base));
@@ -253,7 +253,7 @@ static void mmhub_v1_8_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v1_8_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned num_level, block_size;
        uint32_t tmp;
        int i;
@@ -311,7 +311,7 @@ static void mmhub_v1_8_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v1_8_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -352,7 +352,7 @@ static int mmhub_v1_8_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v1_8_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -426,7 +426,7 @@ static void mmhub_v1_8_set_fault_enable_default(struct amdgpu_device *adev, bool
 
 static void mmhub_v1_8_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 278e32db878d7f987d36656091c278a2d1d1d911..8f76c6ecf50a86481a1f02a265f73ce154192bb9 100644 (file)
@@ -187,7 +187,7 @@ mmhub_v2_0_print_l2_protection_fault_status(struct amdgpu_device *adev,
 static void mmhub_v2_0_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET_RLC(MMHUB, 0, mmMMVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -362,7 +362,7 @@ static void mmhub_v2_0_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v2_0_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        int i;
        uint32_t tmp;
 
@@ -412,7 +412,7 @@ static void mmhub_v2_0_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v2_0_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -441,7 +441,7 @@ static int mmhub_v2_0_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v2_0_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -520,7 +520,7 @@ static const struct amdgpu_vmhub_funcs mmhub_v2_0_vmhub_funcs = {
 
 static void mmhub_v2_0_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index fcf2813e70db80850535c2eb724e0a06318d22e6..8bd0fc8d9d25ed13ca9181805771b17b2f536433 100644 (file)
@@ -121,7 +121,7 @@ static void mmhub_v2_3_setup_vm_pt_regs(struct amdgpu_device *adev,
                                        uint32_t vmid,
                                        uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, mmMMVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid, lower_32_bits(page_table_base));
@@ -280,7 +280,7 @@ static void mmhub_v2_3_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v2_3_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        int i;
        uint32_t tmp;
 
@@ -330,7 +330,7 @@ static void mmhub_v2_3_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v2_3_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -373,7 +373,7 @@ static int mmhub_v2_3_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v2_3_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -446,7 +446,7 @@ static const struct amdgpu_vmhub_funcs mmhub_v2_3_vmhub_funcs = {
 
 static void mmhub_v2_3_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 17a792616979ce5aca2dbd2919bddf1b27d31e51..441379e91cfa8e02cc9bf203171d348a28e63692 100644 (file)
@@ -136,7 +136,7 @@ mmhub_v3_0_print_l2_protection_fault_status(struct amdgpu_device *adev,
 static void mmhub_v3_0_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, regMMVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -319,7 +319,7 @@ static void mmhub_v3_0_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        int i;
        uint32_t tmp;
 
@@ -369,7 +369,7 @@ static void mmhub_v3_0_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -398,7 +398,7 @@ static int mmhub_v3_0_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -477,7 +477,7 @@ static const struct amdgpu_vmhub_funcs mmhub_v3_0_vmhub_funcs = {
 
 static void mmhub_v3_0_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 26509b6b8c2402611c17eca9200d2a6e1d06592e..12c7f4b46ea94f69ceeae1f7a015ba5c91e7ebc4 100644 (file)
@@ -138,7 +138,7 @@ static void mmhub_v3_0_1_setup_vm_pt_regs(struct amdgpu_device *adev,
                                          uint32_t vmid,
                                          uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, regMMVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -306,7 +306,7 @@ static void mmhub_v3_0_1_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_1_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        int i;
        uint32_t tmp;
 
@@ -356,7 +356,7 @@ static void mmhub_v3_0_1_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_1_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -385,7 +385,7 @@ static int mmhub_v3_0_1_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_1_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -459,7 +459,7 @@ static const struct amdgpu_vmhub_funcs mmhub_v3_0_1_vmhub_funcs = {
 
 static void mmhub_v3_0_1_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 26abbc6a47ab282cdb7bcfe9890fe490eacdd763..5dadc85abf7ef337ebbe6e68ba9fb1b849f72d84 100644 (file)
@@ -129,7 +129,7 @@ mmhub_v3_0_2_print_l2_protection_fault_status(struct amdgpu_device *adev,
 static void mmhub_v3_0_2_setup_vm_pt_regs(struct amdgpu_device *adev, uint32_t vmid,
                                uint64_t page_table_base)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0, regMMVM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
                            hub->ctx_addr_distance * vmid,
@@ -311,7 +311,7 @@ static void mmhub_v3_0_2_disable_identity_aperture(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_2_setup_vmid_config(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        int i;
        uint32_t tmp;
 
@@ -361,7 +361,7 @@ static void mmhub_v3_0_2_setup_vmid_config(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_2_program_invalidation(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -390,7 +390,7 @@ static int mmhub_v3_0_2_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v3_0_2_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i;
 
@@ -469,7 +469,7 @@ static const struct amdgpu_vmhub_funcs mmhub_v3_0_2_vmhub_funcs = {
 
 static void mmhub_v3_0_2_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        hub->ctx0_ptb_addr_lo32 =
                SOC15_REG_OFFSET(MMHUB, 0,
index 72083e96222f03f05e108faeebf42d73055eecda..e790f890aec656b196cd7e010a4a011edb4ed309 100644 (file)
@@ -57,7 +57,7 @@ static u64 mmhub_v9_4_get_fb_location(struct amdgpu_device *adev)
 static void mmhub_v9_4_setup_hubid_vm_pt_regs(struct amdgpu_device *adev, int hubid,
                                uint32_t vmid, uint64_t value)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
 
        WREG32_SOC15_OFFSET(MMHUB, 0,
                            mmVML2VC0_VM_CONTEXT0_PAGE_TABLE_BASE_ADDR_LO32,
@@ -294,7 +294,7 @@ static void mmhub_v9_4_disable_identity_aperture(struct amdgpu_device *adev,
 
 static void mmhub_v9_4_setup_vmid_config(struct amdgpu_device *adev, int hubid)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned int num_level, block_size;
        uint32_t tmp;
        int i;
@@ -363,7 +363,7 @@ static void mmhub_v9_4_setup_vmid_config(struct amdgpu_device *adev, int hubid)
 static void mmhub_v9_4_program_invalidation(struct amdgpu_device *adev,
                                            int hubid)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        unsigned i;
 
        for (i = 0; i < 18; ++i) {
@@ -404,7 +404,7 @@ static int mmhub_v9_4_gart_enable(struct amdgpu_device *adev)
 
 static void mmhub_v9_4_gart_disable(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB_0];
+       struct amdgpu_vmhub *hub = &adev->vmhub[AMDGPU_MMHUB0(0)];
        u32 tmp;
        u32 i, j;
 
@@ -507,8 +507,8 @@ static void mmhub_v9_4_set_fault_enable_default(struct amdgpu_device *adev, bool
 
 static void mmhub_v9_4_init(struct amdgpu_device *adev)
 {
-       struct amdgpu_vmhub *hub[MMHUB_NUM_INSTANCES] =
-               {&adev->vmhub[AMDGPU_MMHUB_0], &adev->vmhub[AMDGPU_MMHUB_1]};
+       struct amdgpu_vmhub *hub[MMHUB_NUM_INSTANCES] = {
+               &adev->vmhub[AMDGPU_MMHUB0(0)], &adev->vmhub[AMDGPU_MMHUB1(0)]};
        int i;
 
        for (i = 0; i < MMHUB_NUM_INSTANCES; i++) {
index 9295ac7edd5650adf959e1240ada69bef3357032..50b6eb9bcfda7f0a3bbf5a7ccc35677de97d47de 100644 (file)
@@ -1825,12 +1825,12 @@ static int sdma_v4_0_sw_init(void *handle)
 
                /*
                 * On Arcturus, SDMA instance 5~7 has a different vmhub
-                * type(AMDGPU_MMHUB_1).
+                * type(AMDGPU_MMHUB1).
                 */
                if (adev->ip_versions[SDMA0_HWIP][0] == IP_VERSION(4, 2, 2) && i >= 5)
-                       ring->vm_hub = AMDGPU_MMHUB_1;
+                       ring->vm_hub = AMDGPU_MMHUB1(0);
                else
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
 
                sprintf(ring->name, "sdma%d", i);
                r = amdgpu_ring_init(adev, ring, 1024, &adev->sdma.trap_irq,
@@ -1851,9 +1851,9 @@ static int sdma_v4_0_sw_init(void *handle)
                        ring->doorbell_index += 0x400;
 
                        if (adev->ip_versions[SDMA0_HWIP][0] == IP_VERSION(4, 2, 2) && i >= 5)
-                               ring->vm_hub = AMDGPU_MMHUB_1;
+                               ring->vm_hub = AMDGPU_MMHUB1(0);
                        else
-                               ring->vm_hub = AMDGPU_MMHUB_0;
+                               ring->vm_hub = AMDGPU_MMHUB0(0);
 
                        sprintf(ring->name, "page%d", i);
                        r = amdgpu_ring_init(adev, ring, 1024,
index 64dcaa2670dd155cc00fe74126b37f94aa2f9508..7efe7c43fffbeb8632300e6fbf8ee47f09bd6473 100644 (file)
@@ -1309,7 +1309,7 @@ static int sdma_v4_4_2_sw_init(void *handle)
 
                /* doorbell size is 2 dwords, get DWORD offset */
                ring->doorbell_index = adev->doorbell_index.sdma_engine[i] << 1;
-               ring->vm_hub = AMDGPU_MMHUB_0;
+               ring->vm_hub = AMDGPU_MMHUB0(0);
 
                sprintf(ring->name, "sdma%d", i);
                r = amdgpu_ring_init(adev, ring, 1024, &adev->sdma.trap_irq,
@@ -1328,7 +1328,7 @@ static int sdma_v4_4_2_sw_init(void *handle)
                         */
                        ring->doorbell_index = adev->doorbell_index.sdma_engine[i] << 1;
                        ring->doorbell_index += 0x400;
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
 
                        sprintf(ring->name, "page%d", i);
                        r = amdgpu_ring_init(adev, ring, 1024,
index 92e1299be021950146fd99bf530644b5b063a3a1..a0077cf412955376928e1cfd4e15fce79724cda8 100644 (file)
@@ -1389,7 +1389,7 @@ static int sdma_v5_0_sw_init(void *handle)
                        (adev->doorbell_index.sdma_engine[0] << 1) //get DWORD offset
                        : (adev->doorbell_index.sdma_engine[1] << 1); // get DWORD offset
 
-               ring->vm_hub = AMDGPU_GFXHUB_0;
+               ring->vm_hub = AMDGPU_GFXHUB(0);
                sprintf(ring->name, "sdma%d", i);
                r = amdgpu_ring_init(adev, ring, 1024, &adev->sdma.trap_irq,
                                     (i == 0) ? AMDGPU_SDMA_IRQ_INSTANCE0 :
index ca7e8757d78e5eba40acf7c9522d556774ea18e1..efa2c84ee78e5a5c6da7aefd017e42c72cf84c51 100644 (file)
@@ -1253,7 +1253,7 @@ static int sdma_v5_2_sw_init(void *handle)
                ring->doorbell_index =
                        (adev->doorbell_index.sdma_engine[i] << 1); //get DWORD offset
 
-               ring->vm_hub = AMDGPU_GFXHUB_0;
+               ring->vm_hub = AMDGPU_GFXHUB(0);
                sprintf(ring->name, "sdma%d", i);
                r = amdgpu_ring_init(adev, ring, 1024, &adev->sdma.trap_irq,
                                     AMDGPU_SDMA_IRQ_INSTANCE0 + i,
index 3d9a80511a45083bca937e7d8752be72b4d54371..79d09792d2ce310eda0c22f8625a423c29460c99 100644 (file)
@@ -1298,7 +1298,7 @@ static int sdma_v6_0_sw_init(void *handle)
                ring->doorbell_index =
                        (adev->doorbell_index.sdma_engine[i] << 1); // get DWORD offset
 
-               ring->vm_hub = AMDGPU_GFXHUB_0;
+               ring->vm_hub = AMDGPU_GFXHUB(0);
                sprintf(ring->name, "sdma%d", i);
                r = amdgpu_ring_init(adev, ring, 1024,
                                     &adev->sdma.trap_irq,
index e32b656b3dab8ea280109bf16207fff040a70a78..abaa4463e906c988b2a252f23582d58f8833edb9 100644 (file)
@@ -444,7 +444,7 @@ static int uvd_v7_0_sw_init(void *handle)
                        continue;
                if (!amdgpu_sriov_vf(adev)) {
                        ring = &adev->uvd.inst[j].ring;
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
                        sprintf(ring->name, "uvd_%d", ring->me);
                        r = amdgpu_ring_init(adev, ring, 512,
                                             &adev->uvd.inst[j].irq, 0,
@@ -455,7 +455,7 @@ static int uvd_v7_0_sw_init(void *handle)
 
                for (i = 0; i < adev->uvd.num_enc_rings; ++i) {
                        ring = &adev->uvd.inst[j].ring_enc[i];
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
                        sprintf(ring->name, "uvd_enc_%d.%d", ring->me, i);
                        if (amdgpu_sriov_vf(adev)) {
                                ring->use_doorbell = true;
index 57b85bb6a1e491f37ef40cecf23b00f7f8b337bd..e0b70cd3b697c53de7128f5bc28f5924e8848ba7 100644 (file)
@@ -466,7 +466,7 @@ static int vce_v4_0_sw_init(void *handle)
                enum amdgpu_ring_priority_level hw_prio = amdgpu_vce_get_ring_prio(i);
 
                ring = &adev->vce.ring[i];
-               ring->vm_hub = AMDGPU_MMHUB_0;
+               ring->vm_hub = AMDGPU_MMHUB0(0);
                sprintf(ring->name, "vce%d", i);
                if (amdgpu_sriov_vf(adev)) {
                        /* DOORBELL only works under SRIOV */
index 761c28fa6ec14cd5294fe0b5a239f8b879086b22..f877c39c7cdde24d3f8c4def47630edda3ab380f 100644 (file)
@@ -120,7 +120,7 @@ static int vcn_v1_0_sw_init(void *handle)
                return r;
 
        ring = &adev->vcn.inst->ring_dec;
-       ring->vm_hub = AMDGPU_MMHUB_0;
+       ring->vm_hub = AMDGPU_MMHUB0(0);
        sprintf(ring->name, "vcn_dec");
        r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst->irq, 0,
                             AMDGPU_RING_PRIO_DEFAULT, NULL);
@@ -142,7 +142,7 @@ static int vcn_v1_0_sw_init(void *handle)
                enum amdgpu_ring_priority_level hw_prio = amdgpu_vcn_get_enc_ring_prio(i);
 
                ring = &adev->vcn.inst->ring_enc[i];
-               ring->vm_hub = AMDGPU_MMHUB_0;
+               ring->vm_hub = AMDGPU_MMHUB0(0);
                sprintf(ring->name, "vcn_enc%d", i);
                r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst->irq, 0,
                                     hw_prio, NULL);
index 7c2b3aa480836c502f74413e729915f3faa99588..c975aed2f6c7845f480e0a9b17db92a7110ba217 100644 (file)
@@ -129,7 +129,7 @@ static int vcn_v2_0_sw_init(void *handle)
 
        ring->use_doorbell = true;
        ring->doorbell_index = adev->doorbell_index.vcn.vcn_ring0_1 << 1;
-       ring->vm_hub = AMDGPU_MMHUB_0;
+       ring->vm_hub = AMDGPU_MMHUB0(0);
 
        sprintf(ring->name, "vcn_dec");
        r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst->irq, 0,
@@ -160,7 +160,7 @@ static int vcn_v2_0_sw_init(void *handle)
 
                ring = &adev->vcn.inst->ring_enc[i];
                ring->use_doorbell = true;
-               ring->vm_hub = AMDGPU_MMHUB_0;
+               ring->vm_hub = AMDGPU_MMHUB0(0);
                if (!amdgpu_sriov_vf(adev))
                        ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 2 + i;
                else
index ab0b45d0ead18ae6f315a8b59be901247f05aefe..7044bd7c9f62038cca552798604fc4dc9f7be039 100644 (file)
@@ -188,9 +188,9 @@ static int vcn_v2_5_sw_init(void *handle)
                                (amdgpu_sriov_vf(adev) ? 2*j : 8*j);
 
                if (adev->ip_versions[UVD_HWIP][0] == IP_VERSION(2, 5, 0))
-                       ring->vm_hub = AMDGPU_MMHUB_1;
+                       ring->vm_hub = AMDGPU_MMHUB1(0);
                else
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
 
                sprintf(ring->name, "vcn_dec_%d", j);
                r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst[j].irq,
@@ -208,9 +208,9 @@ static int vcn_v2_5_sw_init(void *handle)
                                        (amdgpu_sriov_vf(adev) ? (1 + i + 2*j) : (2 + i + 8*j));
 
                        if (adev->ip_versions[UVD_HWIP][0] == IP_VERSION(2, 5, 0))
-                               ring->vm_hub = AMDGPU_MMHUB_1;
+                               ring->vm_hub = AMDGPU_MMHUB1(0);
                        else
-                               ring->vm_hub = AMDGPU_MMHUB_0;
+                               ring->vm_hub = AMDGPU_MMHUB0(0);
 
                        sprintf(ring->name, "vcn_enc_%d.%d", j, i);
                        r = amdgpu_ring_init(adev, ring, 512,
index 3eab186261aabd0a8960684a59bf68d80d6ffdf5..70fefbf26c48a57e99a20df849dc8496245036de 100644 (file)
@@ -189,7 +189,7 @@ static int vcn_v3_0_sw_init(void *handle)
                } else {
                        ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 8 * i;
                }
-               ring->vm_hub = AMDGPU_MMHUB_0;
+               ring->vm_hub = AMDGPU_MMHUB0(0);
                sprintf(ring->name, "vcn_dec_%d", i);
                r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst[i].irq, 0,
                                     AMDGPU_RING_PRIO_DEFAULT,
@@ -213,7 +213,7 @@ static int vcn_v3_0_sw_init(void *handle)
                        } else {
                                ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 2 + j + 8 * i;
                        }
-                       ring->vm_hub = AMDGPU_MMHUB_0;
+                       ring->vm_hub = AMDGPU_MMHUB0(0);
                        sprintf(ring->name, "vcn_enc_%d.%d", i, j);
                        r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst[i].irq, 0,
                                             hw_prio, &adev->vcn.inst[i].sched_score);
index bf0674039598d3154776c682400d10dfd5db5f29..81446e6996df6f100f37fa0b6aac847baa5777ff 100644 (file)
@@ -149,7 +149,7 @@ static int vcn_v4_0_sw_init(void *handle)
                        ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + i * (adev->vcn.num_enc_rings + 1) + 1;
                else
                        ring->doorbell_index = (adev->doorbell_index.vcn.vcn_ring0_1 << 1) + 2 + 8 * i;
-               ring->vm_hub = AMDGPU_MMHUB_0;
+               ring->vm_hub = AMDGPU_MMHUB0(0);
                sprintf(ring->name, "vcn_unified_%d", i);
 
                r = amdgpu_ring_init(adev, ring, 512, &adev->vcn.inst[i].irq, 0,