aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorMonk Liu <Monk.Liu@amd.com>2017-04-05 04:39:11 -0400
committerAlex Deucher <alexander.deucher@amd.com>2017-04-06 13:28:04 -0400
commit377e275946340916c74c169c4cb0a39da99704ce (patch)
tree89092e8eada744840fde05174bc300e220bf2138 /drivers/gpu
parentbb5c9ca588d1e7856f5c95250adb2c2d2617ccf9 (diff)
drm/amdgpu:no need to involv HDP in KIQ
1,KIQ won't touch VRAM so no need to involv HDP flush/invalidate at all. 2,According to CP hw designer KIQ better not use any PM4 package lead to wait behave. Signed-off-by: Monk Liu <Monk.Liu@amd.com> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c2
3 files changed, 0 insertions, 8 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
index ecef35a1fe33..ba8b8ae6234f 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_virt.c
@@ -122,9 +122,7 @@ uint32_t amdgpu_virt_kiq_rreg(struct amdgpu_device *adev, uint32_t reg)
122 122
123 mutex_lock(&adev->virt.lock_kiq); 123 mutex_lock(&adev->virt.lock_kiq);
124 amdgpu_ring_alloc(ring, 32); 124 amdgpu_ring_alloc(ring, 32);
125 amdgpu_ring_emit_hdp_flush(ring);
126 amdgpu_ring_emit_rreg(ring, reg); 125 amdgpu_ring_emit_rreg(ring, reg);
127 amdgpu_ring_emit_hdp_invalidate(ring);
128 amdgpu_fence_emit(ring, &f); 126 amdgpu_fence_emit(ring, &f);
129 amdgpu_ring_commit(ring); 127 amdgpu_ring_commit(ring);
130 mutex_unlock(&adev->virt.lock_kiq); 128 mutex_unlock(&adev->virt.lock_kiq);
@@ -150,9 +148,7 @@ void amdgpu_virt_kiq_wreg(struct amdgpu_device *adev, uint32_t reg, uint32_t v)
150 148
151 mutex_lock(&adev->virt.lock_kiq); 149 mutex_lock(&adev->virt.lock_kiq);
152 amdgpu_ring_alloc(ring, 32); 150 amdgpu_ring_alloc(ring, 32);
153 amdgpu_ring_emit_hdp_flush(ring);
154 amdgpu_ring_emit_wreg(ring, reg, v); 151 amdgpu_ring_emit_wreg(ring, reg, v);
155 amdgpu_ring_emit_hdp_invalidate(ring);
156 amdgpu_fence_emit(ring, &f); 152 amdgpu_fence_emit(ring, &f);
157 amdgpu_ring_commit(ring); 153 amdgpu_ring_commit(ring);
158 mutex_unlock(&adev->virt.lock_kiq); 154 mutex_unlock(&adev->virt.lock_kiq);
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
index cf2a4d76afbf..dad8a4cd1b37 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
@@ -7135,8 +7135,6 @@ static const struct amdgpu_ring_funcs gfx_v8_0_ring_funcs_kiq = {
7135 .emit_ib_size = 4, /* gfx_v8_0_ring_emit_ib_compute */ 7135 .emit_ib_size = 4, /* gfx_v8_0_ring_emit_ib_compute */
7136 .emit_ib = gfx_v8_0_ring_emit_ib_compute, 7136 .emit_ib = gfx_v8_0_ring_emit_ib_compute,
7137 .emit_fence = gfx_v8_0_ring_emit_fence_kiq, 7137 .emit_fence = gfx_v8_0_ring_emit_fence_kiq,
7138 .emit_hdp_flush = gfx_v8_0_ring_emit_hdp_flush,
7139 .emit_hdp_invalidate = gfx_v8_0_ring_emit_hdp_invalidate,
7140 .test_ring = gfx_v8_0_ring_test_ring, 7138 .test_ring = gfx_v8_0_ring_test_ring,
7141 .test_ib = gfx_v8_0_ring_test_ib, 7139 .test_ib = gfx_v8_0_ring_test_ib,
7142 .insert_nop = amdgpu_ring_insert_nop, 7140 .insert_nop = amdgpu_ring_insert_nop,
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
index c386e8b8711f..a447b70841c9 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
@@ -3542,8 +3542,6 @@ static const struct amdgpu_ring_funcs gfx_v9_0_ring_funcs_kiq = {
3542 .emit_ib_size = 4, /* gfx_v9_0_ring_emit_ib_compute */ 3542 .emit_ib_size = 4, /* gfx_v9_0_ring_emit_ib_compute */
3543 .emit_ib = gfx_v9_0_ring_emit_ib_compute, 3543 .emit_ib = gfx_v9_0_ring_emit_ib_compute,
3544 .emit_fence = gfx_v9_0_ring_emit_fence_kiq, 3544 .emit_fence = gfx_v9_0_ring_emit_fence_kiq,
3545 .emit_hdp_flush = gfx_v9_0_ring_emit_hdp_flush,
3546 .emit_hdp_invalidate = gfx_v9_0_ring_emit_hdp_invalidate,
3547 .test_ring = gfx_v9_0_ring_test_ring, 3545 .test_ring = gfx_v9_0_ring_test_ring,
3548 .test_ib = gfx_v9_0_ring_test_ib, 3546 .test_ib = gfx_v9_0_ring_test_ib,
3549 .insert_nop = amdgpu_ring_insert_nop, 3547 .insert_nop = amdgpu_ring_insert_nop,