drm/amdgpu: disable HDP flushes on APUs
authorChristian König <christian.koenig@amd.com>
Fri, 17 Feb 2017 14:04:31 +0000 (15:04 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 30 Mar 2017 03:53:25 +0000 (23:53 -0400)
We completely bypass the HDP now.

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_ib.c

index e02a70d..e357e42 100644 (file)
@@ -172,7 +172,11 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
                }
        }
 
-       if (ring->funcs->emit_hdp_flush)
+       if (ring->funcs->emit_hdp_flush
+#ifdef CONFIG_X86_64
+           && !(adev->flags & AMD_IS_APU)
+#endif
+          )
                amdgpu_ring_emit_hdp_flush(ring);
 
        skip_preamble = ring->current_ctx == fence_ctx;
@@ -202,7 +206,11 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
                need_ctx_switch = false;
        }
 
-       if (ring->funcs->emit_hdp_invalidate)
+       if (ring->funcs->emit_hdp_invalidate
+#ifdef CONFIG_X86_64
+           && !(adev->flags & AMD_IS_APU)
+#endif
+          )
                amdgpu_ring_emit_hdp_invalidate(ring);
 
        r = amdgpu_fence_emit(ring, f);