]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
drm/amdgpu: make function pointers mandatory
authorChristian König <christian.koenig@amd.com>
Mon, 17 Sep 2018 13:41:45 +0000 (15:41 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 27 Sep 2018 02:09:21 +0000 (21:09 -0500)
We always want those to be setup correctly.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
20 files changed:
drivers/gpu/drm/amd/amdgpu/cik_ih.c
drivers/gpu/drm/amd/amdgpu/cik_sdma.c
drivers/gpu/drm/amd/amdgpu/cz_ih.c
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c
drivers/gpu/drm/amd/amdgpu/dce_v11_0.c
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c
drivers/gpu/drm/amd/amdgpu/dce_virtual.c
drivers/gpu/drm/amd/amdgpu/gmc_v6_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v7_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v8_0.c
drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c
drivers/gpu/drm/amd/amdgpu/iceland_ih.c
drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
drivers/gpu/drm/amd/amdgpu/si_dma.c
drivers/gpu/drm/amd/amdgpu/si_ih.c
drivers/gpu/drm/amd/amdgpu/tonga_ih.c
drivers/gpu/drm/amd/amdgpu/vega10_ih.c

index 44d10c2172f69b822695a71b4fd7efb1831a8107..e75183e0982070ac32440137e5aa8d6101c0f141 100644 (file)
@@ -468,8 +468,7 @@ static const struct amdgpu_ih_funcs cik_ih_funcs = {
 
 static void cik_ih_set_interrupt_funcs(struct amdgpu_device *adev)
 {
-       if (adev->irq.ih_funcs == NULL)
-               adev->irq.ih_funcs = &cik_ih_funcs;
+       adev->irq.ih_funcs = &cik_ih_funcs;
 }
 
 const struct amdgpu_ip_block_version cik_ih_ip_block =
index 154b1499b07ec47e8964602907b20e4d3f42d71c..ee9d5c92edb10ad2a4bbdfaac059f736b6d32500 100644 (file)
@@ -1370,10 +1370,8 @@ static const struct amdgpu_buffer_funcs cik_sdma_buffer_funcs = {
 
 static void cik_sdma_set_buffer_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mman.buffer_funcs == NULL) {
-               adev->mman.buffer_funcs = &cik_sdma_buffer_funcs;
-               adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
-       }
+       adev->mman.buffer_funcs = &cik_sdma_buffer_funcs;
+       adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
 }
 
 static const struct amdgpu_vm_pte_funcs cik_sdma_vm_pte_funcs = {
@@ -1389,15 +1387,13 @@ static void cik_sdma_set_vm_pte_funcs(struct amdgpu_device *adev)
        struct drm_gpu_scheduler *sched;
        unsigned i;
 
-       if (adev->vm_manager.vm_pte_funcs == NULL) {
-               adev->vm_manager.vm_pte_funcs = &cik_sdma_vm_pte_funcs;
-               for (i = 0; i < adev->sdma.num_instances; i++) {
-                       sched = &adev->sdma.instance[i].ring.sched;
-                       adev->vm_manager.vm_pte_rqs[i] =
-                               &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
-               }
-               adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
+       adev->vm_manager.vm_pte_funcs = &cik_sdma_vm_pte_funcs;
+       for (i = 0; i < adev->sdma.num_instances; i++) {
+               sched = &adev->sdma.instance[i].ring.sched;
+               adev->vm_manager.vm_pte_rqs[i] =
+                       &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
        }
+       adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
 }
 
 const struct amdgpu_ip_block_version cik_sdma_ip_block =
index 960c29e17da6574da108b0e77979557d94a3bcab..9385da1e1e40c4c2c07529b2d974b9021911a937 100644 (file)
@@ -449,8 +449,7 @@ static const struct amdgpu_ih_funcs cz_ih_funcs = {
 
 static void cz_ih_set_interrupt_funcs(struct amdgpu_device *adev)
 {
-       if (adev->irq.ih_funcs == NULL)
-               adev->irq.ih_funcs = &cz_ih_funcs;
+       adev->irq.ih_funcs = &cz_ih_funcs;
 }
 
 const struct amdgpu_ip_block_version cz_ih_ip_block =
index 3916aa6cc4ec0b9b3d2230a149ec025d4bba7e94..89c09c396fe6450f4ff39da30fdc266a85749869 100644 (file)
@@ -3570,8 +3570,7 @@ static const struct amdgpu_display_funcs dce_v10_0_display_funcs = {
 
 static void dce_v10_0_set_display_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mode_info.funcs == NULL)
-               adev->mode_info.funcs = &dce_v10_0_display_funcs;
+       adev->mode_info.funcs = &dce_v10_0_display_funcs;
 }
 
 static const struct amdgpu_irq_src_funcs dce_v10_0_crtc_irq_funcs = {
index 4ffb612a4e532d43f913acbc44569d463e02b76d..cf6faaa05dbbf8d15a607deca29197f7f6f39077 100644 (file)
@@ -3702,8 +3702,7 @@ static const struct amdgpu_display_funcs dce_v11_0_display_funcs = {
 
 static void dce_v11_0_set_display_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mode_info.funcs == NULL)
-               adev->mode_info.funcs = &dce_v11_0_display_funcs;
+       adev->mode_info.funcs = &dce_v11_0_display_funcs;
 }
 
 static const struct amdgpu_irq_src_funcs dce_v11_0_crtc_irq_funcs = {
index 480c5348a14f2f873461b1d46e9d0bc4ff50a3d1..371aa05bf537c2ef5cf80c31a4dd0b2c3b4cfdda 100644 (file)
@@ -3376,8 +3376,7 @@ static const struct amdgpu_display_funcs dce_v6_0_display_funcs = {
 
 static void dce_v6_0_set_display_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mode_info.funcs == NULL)
-               adev->mode_info.funcs = &dce_v6_0_display_funcs;
+       adev->mode_info.funcs = &dce_v6_0_display_funcs;
 }
 
 static const struct amdgpu_irq_src_funcs dce_v6_0_crtc_irq_funcs = {
index 797196476c94c32464d7d072c5459747b6cf4ede..30e76f2407c23e953e91d4db97a850979f9ac768 100644 (file)
@@ -3458,8 +3458,7 @@ static const struct amdgpu_display_funcs dce_v8_0_display_funcs = {
 
 static void dce_v8_0_set_display_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mode_info.funcs == NULL)
-               adev->mode_info.funcs = &dce_v8_0_display_funcs;
+       adev->mode_info.funcs = &dce_v8_0_display_funcs;
 }
 
 static const struct amdgpu_irq_src_funcs dce_v8_0_crtc_irq_funcs = {
index 15257634a53aa673e30f04068bf3c1e48b541ac7..2cc480d653941bb87d30068feab4c5fe4d478d70 100644 (file)
@@ -649,8 +649,7 @@ static const struct amdgpu_display_funcs dce_virtual_display_funcs = {
 
 static void dce_virtual_set_display_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mode_info.funcs == NULL)
-               adev->mode_info.funcs = &dce_virtual_display_funcs;
+       adev->mode_info.funcs = &dce_virtual_display_funcs;
 }
 
 static int dce_virtual_pageflip(struct amdgpu_device *adev,
index 4411463ca719a4e9b6f505110d385a41ec5261aa..3b8ac4442f06280c1346248e9de870091fd47e64 100644 (file)
@@ -1180,8 +1180,7 @@ static const struct amdgpu_irq_src_funcs gmc_v6_0_irq_funcs = {
 
 static void gmc_v6_0_set_gmc_funcs(struct amdgpu_device *adev)
 {
-       if (adev->gmc.gmc_funcs == NULL)
-               adev->gmc.gmc_funcs = &gmc_v6_0_gmc_funcs;
+       adev->gmc.gmc_funcs = &gmc_v6_0_gmc_funcs;
 }
 
 static void gmc_v6_0_set_irq_funcs(struct amdgpu_device *adev)
index ae776ce9a4153eb55bd5a68a90a4ef9d7439ddc5..899634ce42386b0395b4dd9b7c63d1f63a51ecd5 100644 (file)
@@ -1388,8 +1388,7 @@ static const struct amdgpu_irq_src_funcs gmc_v7_0_irq_funcs = {
 
 static void gmc_v7_0_set_gmc_funcs(struct amdgpu_device *adev)
 {
-       if (adev->gmc.gmc_funcs == NULL)
-               adev->gmc.gmc_funcs = &gmc_v7_0_gmc_funcs;
+       adev->gmc.gmc_funcs = &gmc_v7_0_gmc_funcs;
 }
 
 static void gmc_v7_0_set_irq_funcs(struct amdgpu_device *adev)
index 53ae49b8bde85fc57daf31fcfb7eb1d857574300..79143ca7cfac1558919065dffd6cf95ea4d01c1f 100644 (file)
@@ -1733,8 +1733,7 @@ static const struct amdgpu_irq_src_funcs gmc_v8_0_irq_funcs = {
 
 static void gmc_v8_0_set_gmc_funcs(struct amdgpu_device *adev)
 {
-       if (adev->gmc.gmc_funcs == NULL)
-               adev->gmc.gmc_funcs = &gmc_v8_0_gmc_funcs;
+       adev->gmc.gmc_funcs = &gmc_v8_0_gmc_funcs;
 }
 
 static void gmc_v8_0_set_irq_funcs(struct amdgpu_device *adev)
index aad3c7c5fb3a1fec2c08daa8fe905510244fa728..f35d7a554ad539af16c6dfc4864efcabcbd10980 100644 (file)
@@ -593,8 +593,7 @@ static const struct amdgpu_gmc_funcs gmc_v9_0_gmc_funcs = {
 
 static void gmc_v9_0_set_gmc_funcs(struct amdgpu_device *adev)
 {
-       if (adev->gmc.gmc_funcs == NULL)
-               adev->gmc.gmc_funcs = &gmc_v9_0_gmc_funcs;
+       adev->gmc.gmc_funcs = &gmc_v9_0_gmc_funcs;
 }
 
 static int gmc_v9_0_early_init(void *handle)
index 842c4b677b4d96b083ff2481dd87b5215a043c26..45ef0a818e1125f60033bcaa77140c11a217fea0 100644 (file)
@@ -447,8 +447,7 @@ static const struct amdgpu_ih_funcs iceland_ih_funcs = {
 
 static void iceland_ih_set_interrupt_funcs(struct amdgpu_device *adev)
 {
-       if (adev->irq.ih_funcs == NULL)
-               adev->irq.ih_funcs = &iceland_ih_funcs;
+       adev->irq.ih_funcs = &iceland_ih_funcs;
 }
 
 const struct amdgpu_ip_block_version iceland_ih_ip_block =
index c403bdf8ad708bac558a60dc7b7f6f521c4d27ae..0c5a576dee13196c0080c62b0bc55a1af76cb820 100644 (file)
@@ -1296,10 +1296,8 @@ static const struct amdgpu_buffer_funcs sdma_v2_4_buffer_funcs = {
 
 static void sdma_v2_4_set_buffer_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mman.buffer_funcs == NULL) {
-               adev->mman.buffer_funcs = &sdma_v2_4_buffer_funcs;
-               adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
-       }
+       adev->mman.buffer_funcs = &sdma_v2_4_buffer_funcs;
+       adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
 }
 
 static const struct amdgpu_vm_pte_funcs sdma_v2_4_vm_pte_funcs = {
@@ -1315,15 +1313,13 @@ static void sdma_v2_4_set_vm_pte_funcs(struct amdgpu_device *adev)
        struct drm_gpu_scheduler *sched;
        unsigned i;
 
-       if (adev->vm_manager.vm_pte_funcs == NULL) {
-               adev->vm_manager.vm_pte_funcs = &sdma_v2_4_vm_pte_funcs;
-               for (i = 0; i < adev->sdma.num_instances; i++) {
-                       sched = &adev->sdma.instance[i].ring.sched;
-                       adev->vm_manager.vm_pte_rqs[i] =
-                               &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
-               }
-               adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
+       adev->vm_manager.vm_pte_funcs = &sdma_v2_4_vm_pte_funcs;
+       for (i = 0; i < adev->sdma.num_instances; i++) {
+               sched = &adev->sdma.instance[i].ring.sched;
+               adev->vm_manager.vm_pte_rqs[i] =
+                       &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
        }
+       adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
 }
 
 const struct amdgpu_ip_block_version sdma_v2_4_ip_block =
index 2677d6a1bf42147c999f8fc1348fe512993cae87..2587b8de918a1fdf8c424732d3c79cd733fccb67 100644 (file)
@@ -1736,10 +1736,8 @@ static const struct amdgpu_buffer_funcs sdma_v3_0_buffer_funcs = {
 
 static void sdma_v3_0_set_buffer_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mman.buffer_funcs == NULL) {
-               adev->mman.buffer_funcs = &sdma_v3_0_buffer_funcs;
-               adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
-       }
+       adev->mman.buffer_funcs = &sdma_v3_0_buffer_funcs;
+       adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
 }
 
 static const struct amdgpu_vm_pte_funcs sdma_v3_0_vm_pte_funcs = {
@@ -1755,15 +1753,13 @@ static void sdma_v3_0_set_vm_pte_funcs(struct amdgpu_device *adev)
        struct drm_gpu_scheduler *sched;
        unsigned i;
 
-       if (adev->vm_manager.vm_pte_funcs == NULL) {
-               adev->vm_manager.vm_pte_funcs = &sdma_v3_0_vm_pte_funcs;
-               for (i = 0; i < adev->sdma.num_instances; i++) {
-                       sched = &adev->sdma.instance[i].ring.sched;
-                       adev->vm_manager.vm_pte_rqs[i] =
-                               &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
-               }
-               adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
+       adev->vm_manager.vm_pte_funcs = &sdma_v3_0_vm_pte_funcs;
+       for (i = 0; i < adev->sdma.num_instances; i++) {
+               sched = &adev->sdma.instance[i].ring.sched;
+               adev->vm_manager.vm_pte_rqs[i] =
+                       &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
        }
+       adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
 }
 
 const struct amdgpu_ip_block_version sdma_v3_0_ip_block =
index 9da4a1bff5c55619decc43f3460ee5e556cfd969..a3e2ed15fff258a4aff2f96396093c8da7dbba30 100644 (file)
@@ -1807,10 +1807,8 @@ static const struct amdgpu_buffer_funcs sdma_v4_0_buffer_funcs = {
 
 static void sdma_v4_0_set_buffer_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mman.buffer_funcs == NULL) {
-               adev->mman.buffer_funcs = &sdma_v4_0_buffer_funcs;
-               adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
-       }
+       adev->mman.buffer_funcs = &sdma_v4_0_buffer_funcs;
+       adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
 }
 
 static const struct amdgpu_vm_pte_funcs sdma_v4_0_vm_pte_funcs = {
@@ -1826,15 +1824,13 @@ static void sdma_v4_0_set_vm_pte_funcs(struct amdgpu_device *adev)
        struct drm_gpu_scheduler *sched;
        unsigned i;
 
-       if (adev->vm_manager.vm_pte_funcs == NULL) {
-               adev->vm_manager.vm_pte_funcs = &sdma_v4_0_vm_pte_funcs;
-               for (i = 0; i < adev->sdma.num_instances; i++) {
-                       sched = &adev->sdma.instance[i].ring.sched;
-                       adev->vm_manager.vm_pte_rqs[i] =
-                               &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
-               }
-               adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
+       adev->vm_manager.vm_pte_funcs = &sdma_v4_0_vm_pte_funcs;
+       for (i = 0; i < adev->sdma.num_instances; i++) {
+               sched = &adev->sdma.instance[i].ring.sched;
+               adev->vm_manager.vm_pte_rqs[i] =
+                       &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
        }
+       adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
 }
 
 const struct amdgpu_ip_block_version sdma_v4_0_ip_block = {
index fafaf259b17b837b4dbd27ab9103b93bdfe919a5..c3510a703f9ff4c4c66d8575b5c1c85f81d5b514 100644 (file)
@@ -863,10 +863,8 @@ static const struct amdgpu_buffer_funcs si_dma_buffer_funcs = {
 
 static void si_dma_set_buffer_funcs(struct amdgpu_device *adev)
 {
-       if (adev->mman.buffer_funcs == NULL) {
-               adev->mman.buffer_funcs = &si_dma_buffer_funcs;
-               adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
-       }
+       adev->mman.buffer_funcs = &si_dma_buffer_funcs;
+       adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
 }
 
 static const struct amdgpu_vm_pte_funcs si_dma_vm_pte_funcs = {
@@ -882,15 +880,13 @@ static void si_dma_set_vm_pte_funcs(struct amdgpu_device *adev)
        struct drm_gpu_scheduler *sched;
        unsigned i;
 
-       if (adev->vm_manager.vm_pte_funcs == NULL) {
-               adev->vm_manager.vm_pte_funcs = &si_dma_vm_pte_funcs;
-               for (i = 0; i < adev->sdma.num_instances; i++) {
-                       sched = &adev->sdma.instance[i].ring.sched;
-                       adev->vm_manager.vm_pte_rqs[i] =
-                               &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
-               }
-               adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
+       adev->vm_manager.vm_pte_funcs = &si_dma_vm_pte_funcs;
+       for (i = 0; i < adev->sdma.num_instances; i++) {
+               sched = &adev->sdma.instance[i].ring.sched;
+               adev->vm_manager.vm_pte_rqs[i] =
+                       &sched->sched_rq[DRM_SCHED_PRIORITY_KERNEL];
        }
+       adev->vm_manager.vm_pte_num_rqs = adev->sdma.num_instances;
 }
 
 const struct amdgpu_ip_block_version si_dma_ip_block =
index 60dad63098a2aa4db47de4804174a992fb78039e..97711d327527cec2d8485981c7a38c304f3e05bb 100644 (file)
@@ -308,8 +308,7 @@ static const struct amdgpu_ih_funcs si_ih_funcs = {
 
 static void si_ih_set_interrupt_funcs(struct amdgpu_device *adev)
 {
-       if (adev->irq.ih_funcs == NULL)
-               adev->irq.ih_funcs = &si_ih_funcs;
+       adev->irq.ih_funcs = &si_ih_funcs;
 }
 
 const struct amdgpu_ip_block_version si_ih_ip_block =
index 52853d8a8fdda04a98bbedde7b70ee3a52d21b18..a79a3776888aeda5f51868560b4ec083066949c8 100644 (file)
@@ -513,8 +513,7 @@ static const struct amdgpu_ih_funcs tonga_ih_funcs = {
 
 static void tonga_ih_set_interrupt_funcs(struct amdgpu_device *adev)
 {
-       if (adev->irq.ih_funcs == NULL)
-               adev->irq.ih_funcs = &tonga_ih_funcs;
+       adev->irq.ih_funcs = &tonga_ih_funcs;
 }
 
 const struct amdgpu_ip_block_version tonga_ih_ip_block =
index acbe5a770207b7fd1f853d2a52bfaf92a4ee0c1a..37487b4cbd6eeb7328be32b2ba040645cc622538 100644 (file)
@@ -494,8 +494,7 @@ static const struct amdgpu_ih_funcs vega10_ih_funcs = {
 
 static void vega10_ih_set_interrupt_funcs(struct amdgpu_device *adev)
 {
-       if (adev->irq.ih_funcs == NULL)
-               adev->irq.ih_funcs = &vega10_ih_funcs;
+       adev->irq.ih_funcs = &vega10_ih_funcs;
 }
 
 const struct amdgpu_ip_block_version vega10_ih_ip_block =