]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/amdgpu: move adjust_mc_addr into amdgpu_gart_funcs
authorChristian König <christian.koenig@amd.com>
Thu, 30 Mar 2017 13:55:07 +0000 (15:55 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 5 Apr 2017 03:34:21 +0000 (23:34 -0400)
We should probably rename amdgpu_gart_funcs sooner or later.

Reviewed-by: Junwei Zhang <Jerry.Zhang@amd.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu.h
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c

index 46c22e7df99db1160bc1b6e68d196168a644c9e5..0a617601fcca7942b0b44c6dddfa299e0157a317 100644 (file)
@@ -304,10 +304,6 @@ struct amdgpu_gart_funcs {
        /* set pte flags based per asic */
        uint64_t (*get_vm_pte_flags)(struct amdgpu_device *adev,
                                     uint32_t flags);
-};
-
-/* provided by the mc block */
-struct amdgpu_mc_funcs {
        /* adjust mc addr in fb for APU case */
        u64 (*adjust_mc_addr)(struct amdgpu_device *adev, u64 addr);
 };
@@ -613,7 +609,6 @@ struct amdgpu_mc {
        u64                                     private_aperture_end;
        /* protects concurrent invalidation */
        spinlock_t              invalidate_lock;
-       const struct amdgpu_mc_funcs *mc_funcs;
 };
 
 /*
index 9225493c8366788f0fc8656631988740139b5928..14f0889f7563056ba266f993eb6d5669ad88c793 100644 (file)
@@ -571,8 +571,8 @@ static u64 amdgpu_vm_adjust_mc_addr(struct amdgpu_device *adev, u64 mc_addr)
 {
        u64 addr = mc_addr;
 
-       if (adev->mc.mc_funcs && adev->mc.mc_funcs->adjust_mc_addr)
-               addr = adev->mc.mc_funcs->adjust_mc_addr(adev, addr);
+       if (adev->gart.gart_funcs->adjust_mc_addr)
+               addr = adev->gart.gart_funcs->adjust_mc_addr(adev, addr);
 
        return addr;
 }
index 8dd99b2a0026b5332dc5c55703dc5ec30400e4cc..268cedb421d21487dee73c36f3bfed7995cea53e 100644 (file)
@@ -331,30 +331,22 @@ static uint64_t gmc_v9_0_get_vm_pte_flags(struct amdgpu_device *adev,
        return pte_flag;
 }
 
-static const struct amdgpu_gart_funcs gmc_v9_0_gart_funcs = {
-       .flush_gpu_tlb = gmc_v9_0_gart_flush_gpu_tlb,
-       .set_pte_pde = gmc_v9_0_gart_set_pte_pde,
-       .get_vm_pte_flags = gmc_v9_0_get_vm_pte_flags
-};
-
-static void gmc_v9_0_set_gart_funcs(struct amdgpu_device *adev)
-{
-       if (adev->gart.gart_funcs == NULL)
-               adev->gart.gart_funcs = &gmc_v9_0_gart_funcs;
-}
-
 static u64 gmc_v9_0_adjust_mc_addr(struct amdgpu_device *adev, u64 mc_addr)
 {
        return adev->vm_manager.vram_base_offset + mc_addr - adev->mc.vram_start;
 }
 
-static const struct amdgpu_mc_funcs gmc_v9_0_mc_funcs = {
+static const struct amdgpu_gart_funcs gmc_v9_0_gart_funcs = {
+       .flush_gpu_tlb = gmc_v9_0_gart_flush_gpu_tlb,
+       .set_pte_pde = gmc_v9_0_gart_set_pte_pde,
+       .get_vm_pte_flags = gmc_v9_0_get_vm_pte_flags,
        .adjust_mc_addr = gmc_v9_0_adjust_mc_addr,
 };
 
-static void gmc_v9_0_set_mc_funcs(struct amdgpu_device *adev)
+static void gmc_v9_0_set_gart_funcs(struct amdgpu_device *adev)
 {
-       adev->mc.mc_funcs = &gmc_v9_0_mc_funcs;
+       if (adev->gart.gart_funcs == NULL)
+               adev->gart.gart_funcs = &gmc_v9_0_gart_funcs;
 }
 
 static int gmc_v9_0_early_init(void *handle)
@@ -362,7 +354,6 @@ static int gmc_v9_0_early_init(void *handle)
        struct amdgpu_device *adev = (struct amdgpu_device *)handle;
 
        gmc_v9_0_set_gart_funcs(adev);
-       gmc_v9_0_set_mc_funcs(adev);
        gmc_v9_0_set_irq_funcs(adev);
 
        return 0;