aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Xiao <Jack.Xiao@amd.com>2019-01-18 05:13:36 -0500
committerAlex Deucher <alexander.deucher@amd.com>2019-01-25 16:15:35 -0500
commitc4c905ec7b8aaeb06331ee875d3cc9b73dfa481f (patch)
tree109c55c019d77d12fbae3e71e584f147349a05d0
parenta7cd97718166be64b3359f586bbe0a6bb64a6ba4 (diff)
drm/amdgpu: add flags to emit_ib interface v2
Replace the last bool type parameter with a general flags parameter, to make the last parameter be able to contain more information. v2: drop setting need_ctx_switch = false Reviewed-by: Christian König <christian.koenig@amd.com> Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com> Signed-off-by: Jack Xiao <Jack.Xiao@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c10
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/cik_sdma.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c6
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/si_dma.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c4
-rw-r--r--drivers/gpu/drm/amd/amdgpu/vce_v3_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/vce_v4_0.c2
-rw-r--r--drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c6
20 files changed, 34 insertions, 34 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
index c48207b377bc..0b8ef2d27d6b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ib.c
@@ -202,12 +202,12 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
202 amdgpu_asic_flush_hdp(adev, ring); 202 amdgpu_asic_flush_hdp(adev, ring);
203 } 203 }
204 204
205 if (need_ctx_switch)
206 status |= AMDGPU_HAVE_CTX_SWITCH;
207
205 skip_preamble = ring->current_ctx == fence_ctx; 208 skip_preamble = ring->current_ctx == fence_ctx;
206 if (job && ring->funcs->emit_cntxcntl) { 209 if (job && ring->funcs->emit_cntxcntl) {
207 if (need_ctx_switch)
208 status |= AMDGPU_HAVE_CTX_SWITCH;
209 status |= job->preamble_status; 210 status |= job->preamble_status;
210
211 amdgpu_ring_emit_cntxcntl(ring, status); 211 amdgpu_ring_emit_cntxcntl(ring, status);
212 } 212 }
213 213
@@ -221,8 +221,8 @@ int amdgpu_ib_schedule(struct amdgpu_ring *ring, unsigned num_ibs,
221 !amdgpu_sriov_vf(adev)) /* for SRIOV preemption, Preamble CE ib must be inserted anyway */ 221 !amdgpu_sriov_vf(adev)) /* for SRIOV preemption, Preamble CE ib must be inserted anyway */
222 continue; 222 continue;
223 223
224 amdgpu_ring_emit_ib(ring, job, ib, need_ctx_switch); 224 amdgpu_ring_emit_ib(ring, job, ib, status);
225 need_ctx_switch = false; 225 status &= ~AMDGPU_HAVE_CTX_SWITCH;
226 } 226 }
227 227
228 if (ring->funcs->emit_tmz) 228 if (ring->funcs->emit_tmz)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
index d87e828a084b..d7fae2676269 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h
@@ -131,7 +131,7 @@ struct amdgpu_ring_funcs {
131 void (*emit_ib)(struct amdgpu_ring *ring, 131 void (*emit_ib)(struct amdgpu_ring *ring,
132 struct amdgpu_job *job, 132 struct amdgpu_job *job,
133 struct amdgpu_ib *ib, 133 struct amdgpu_ib *ib,
134 bool ctx_switch); 134 uint32_t flags);
135 void (*emit_fence)(struct amdgpu_ring *ring, uint64_t addr, 135 void (*emit_fence)(struct amdgpu_ring *ring, uint64_t addr,
136 uint64_t seq, unsigned flags); 136 uint64_t seq, unsigned flags);
137 void (*emit_pipeline_sync)(struct amdgpu_ring *ring); 137 void (*emit_pipeline_sync)(struct amdgpu_ring *ring);
@@ -229,7 +229,7 @@ struct amdgpu_ring {
229#define amdgpu_ring_get_rptr(r) (r)->funcs->get_rptr((r)) 229#define amdgpu_ring_get_rptr(r) (r)->funcs->get_rptr((r))
230#define amdgpu_ring_get_wptr(r) (r)->funcs->get_wptr((r)) 230#define amdgpu_ring_get_wptr(r) (r)->funcs->get_wptr((r))
231#define amdgpu_ring_set_wptr(r) (r)->funcs->set_wptr((r)) 231#define amdgpu_ring_set_wptr(r) (r)->funcs->set_wptr((r))
232#define amdgpu_ring_emit_ib(r, job, ib, c) ((r)->funcs->emit_ib((r), (job), (ib), (c))) 232#define amdgpu_ring_emit_ib(r, job, ib, flags) ((r)->funcs->emit_ib((r), (job), (ib), (flags)))
233#define amdgpu_ring_emit_pipeline_sync(r) (r)->funcs->emit_pipeline_sync((r)) 233#define amdgpu_ring_emit_pipeline_sync(r) (r)->funcs->emit_pipeline_sync((r))
234#define amdgpu_ring_emit_vm_flush(r, vmid, addr) (r)->funcs->emit_vm_flush((r), (vmid), (addr)) 234#define amdgpu_ring_emit_vm_flush(r, vmid, addr) (r)->funcs->emit_vm_flush((r), (vmid), (addr))
235#define amdgpu_ring_emit_fence(r, addr, seq, flags) (r)->funcs->emit_fence((r), (addr), (seq), (flags)) 235#define amdgpu_ring_emit_fence(r, addr, seq, flags) (r)->funcs->emit_fence((r), (addr), (seq), (flags))
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
index 98a1b2ce2b9d..c021b114c8a4 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
@@ -1035,7 +1035,7 @@ out:
1035void amdgpu_vce_ring_emit_ib(struct amdgpu_ring *ring, 1035void amdgpu_vce_ring_emit_ib(struct amdgpu_ring *ring,
1036 struct amdgpu_job *job, 1036 struct amdgpu_job *job,
1037 struct amdgpu_ib *ib, 1037 struct amdgpu_ib *ib,
1038 bool ctx_switch) 1038 uint32_t flags)
1039{ 1039{
1040 amdgpu_ring_write(ring, VCE_CMD_IB); 1040 amdgpu_ring_write(ring, VCE_CMD_IB);
1041 amdgpu_ring_write(ring, lower_32_bits(ib->gpu_addr)); 1041 amdgpu_ring_write(ring, lower_32_bits(ib->gpu_addr));
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h
index 50293652af14..30ea54dd9117 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vce.h
@@ -66,7 +66,7 @@ void amdgpu_vce_free_handles(struct amdgpu_device *adev, struct drm_file *filp);
66int amdgpu_vce_ring_parse_cs(struct amdgpu_cs_parser *p, uint32_t ib_idx); 66int amdgpu_vce_ring_parse_cs(struct amdgpu_cs_parser *p, uint32_t ib_idx);
67int amdgpu_vce_ring_parse_cs_vm(struct amdgpu_cs_parser *p, uint32_t ib_idx); 67int amdgpu_vce_ring_parse_cs_vm(struct amdgpu_cs_parser *p, uint32_t ib_idx);
68void amdgpu_vce_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, 68void amdgpu_vce_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job,
69 struct amdgpu_ib *ib, bool ctx_switch); 69 struct amdgpu_ib *ib, uint32_t flags);
70void amdgpu_vce_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq, 70void amdgpu_vce_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64 seq,
71 unsigned flags); 71 unsigned flags);
72int amdgpu_vce_ring_test_ring(struct amdgpu_ring *ring); 72int amdgpu_vce_ring_test_ring(struct amdgpu_ring *ring);
diff --git a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
index 45795191de1f..189599b694e8 100644
--- a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
+++ b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c
@@ -220,7 +220,7 @@ static void cik_sdma_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count)
220static void cik_sdma_ring_emit_ib(struct amdgpu_ring *ring, 220static void cik_sdma_ring_emit_ib(struct amdgpu_ring *ring,
221 struct amdgpu_job *job, 221 struct amdgpu_job *job,
222 struct amdgpu_ib *ib, 222 struct amdgpu_ib *ib,
223 bool ctx_switch) 223 uint32_t flags)
224{ 224{
225 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 225 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
226 u32 extra_bits = vmid & 0xf; 226 u32 extra_bits = vmid & 0xf;
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
index 1dc3013ea1d5..305276c7e4bf 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v6_0.c
@@ -1842,13 +1842,13 @@ static void gfx_v6_0_ring_emit_fence(struct amdgpu_ring *ring, u64 addr,
1842static void gfx_v6_0_ring_emit_ib(struct amdgpu_ring *ring, 1842static void gfx_v6_0_ring_emit_ib(struct amdgpu_ring *ring,
1843 struct amdgpu_job *job, 1843 struct amdgpu_job *job,
1844 struct amdgpu_ib *ib, 1844 struct amdgpu_ib *ib,
1845 bool ctx_switch) 1845 uint32_t flags)
1846{ 1846{
1847 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1847 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
1848 u32 header, control = 0; 1848 u32 header, control = 0;
1849 1849
1850 /* insert SWITCH_BUFFER packet before first IB in the ring frame */ 1850 /* insert SWITCH_BUFFER packet before first IB in the ring frame */
1851 if (ctx_switch) { 1851 if (flags & AMDGPU_HAVE_CTX_SWITCH) {
1852 amdgpu_ring_write(ring, PACKET3(PACKET3_SWITCH_BUFFER, 0)); 1852 amdgpu_ring_write(ring, PACKET3(PACKET3_SWITCH_BUFFER, 0));
1853 amdgpu_ring_write(ring, 0); 1853 amdgpu_ring_write(ring, 0);
1854 } 1854 }
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
index 3a9fb6018c16..7984292f9282 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
@@ -2228,13 +2228,13 @@ static void gfx_v7_0_ring_emit_fence_compute(struct amdgpu_ring *ring,
2228static void gfx_v7_0_ring_emit_ib_gfx(struct amdgpu_ring *ring, 2228static void gfx_v7_0_ring_emit_ib_gfx(struct amdgpu_ring *ring,
2229 struct amdgpu_job *job, 2229 struct amdgpu_job *job,
2230 struct amdgpu_ib *ib, 2230 struct amdgpu_ib *ib,
2231 bool ctx_switch) 2231 uint32_t flags)
2232{ 2232{
2233 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 2233 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
2234 u32 header, control = 0; 2234 u32 header, control = 0;
2235 2235
2236 /* insert SWITCH_BUFFER packet before first IB in the ring frame */ 2236 /* insert SWITCH_BUFFER packet before first IB in the ring frame */
2237 if (ctx_switch) { 2237 if (flags & AMDGPU_HAVE_CTX_SWITCH) {
2238 amdgpu_ring_write(ring, PACKET3(PACKET3_SWITCH_BUFFER, 0)); 2238 amdgpu_ring_write(ring, PACKET3(PACKET3_SWITCH_BUFFER, 0));
2239 amdgpu_ring_write(ring, 0); 2239 amdgpu_ring_write(ring, 0);
2240 } 2240 }
@@ -2259,7 +2259,7 @@ static void gfx_v7_0_ring_emit_ib_gfx(struct amdgpu_ring *ring,
2259static void gfx_v7_0_ring_emit_ib_compute(struct amdgpu_ring *ring, 2259static void gfx_v7_0_ring_emit_ib_compute(struct amdgpu_ring *ring,
2260 struct amdgpu_job *job, 2260 struct amdgpu_job *job,
2261 struct amdgpu_ib *ib, 2261 struct amdgpu_ib *ib,
2262 bool ctx_switch) 2262 uint32_t flags)
2263{ 2263{
2264 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 2264 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
2265 u32 control = INDIRECT_BUFFER_VALID | ib->length_dw | (vmid << 24); 2265 u32 control = INDIRECT_BUFFER_VALID | ib->length_dw | (vmid << 24);
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
index 57cb3a51bda7..a26747681ed6 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
@@ -6047,7 +6047,7 @@ static void gfx_v8_0_ring_emit_vgt_flush(struct amdgpu_ring *ring)
6047static void gfx_v8_0_ring_emit_ib_gfx(struct amdgpu_ring *ring, 6047static void gfx_v8_0_ring_emit_ib_gfx(struct amdgpu_ring *ring,
6048 struct amdgpu_job *job, 6048 struct amdgpu_job *job,
6049 struct amdgpu_ib *ib, 6049 struct amdgpu_ib *ib,
6050 bool ctx_switch) 6050 uint32_t flags)
6051{ 6051{
6052 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 6052 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
6053 u32 header, control = 0; 6053 u32 header, control = 0;
@@ -6079,7 +6079,7 @@ static void gfx_v8_0_ring_emit_ib_gfx(struct amdgpu_ring *ring,
6079static void gfx_v8_0_ring_emit_ib_compute(struct amdgpu_ring *ring, 6079static void gfx_v8_0_ring_emit_ib_compute(struct amdgpu_ring *ring,
6080 struct amdgpu_job *job, 6080 struct amdgpu_job *job,
6081 struct amdgpu_ib *ib, 6081 struct amdgpu_ib *ib,
6082 bool ctx_switch) 6082 uint32_t flags)
6083{ 6083{
6084 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 6084 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
6085 u32 control = INDIRECT_BUFFER_VALID | ib->length_dw | (vmid << 24); 6085 u32 control = INDIRECT_BUFFER_VALID | ib->length_dw | (vmid << 24);
diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
index fbca0494f871..262ee3cf6f1c 100644
--- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
@@ -3972,7 +3972,7 @@ static void gfx_v9_0_ring_emit_hdp_flush(struct amdgpu_ring *ring)
3972static void gfx_v9_0_ring_emit_ib_gfx(struct amdgpu_ring *ring, 3972static void gfx_v9_0_ring_emit_ib_gfx(struct amdgpu_ring *ring,
3973 struct amdgpu_job *job, 3973 struct amdgpu_job *job,
3974 struct amdgpu_ib *ib, 3974 struct amdgpu_ib *ib,
3975 bool ctx_switch) 3975 uint32_t flags)
3976{ 3976{
3977 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 3977 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
3978 u32 header, control = 0; 3978 u32 header, control = 0;
@@ -4005,7 +4005,7 @@ static void gfx_v9_0_ring_emit_ib_gfx(struct amdgpu_ring *ring,
4005static void gfx_v9_0_ring_emit_ib_compute(struct amdgpu_ring *ring, 4005static void gfx_v9_0_ring_emit_ib_compute(struct amdgpu_ring *ring,
4006 struct amdgpu_job *job, 4006 struct amdgpu_job *job,
4007 struct amdgpu_ib *ib, 4007 struct amdgpu_ib *ib,
4008 bool ctx_switch) 4008 uint32_t flags)
4009{ 4009{
4010 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 4010 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
4011 u32 control = INDIRECT_BUFFER_VALID | ib->length_dw | (vmid << 24); 4011 u32 control = INDIRECT_BUFFER_VALID | ib->length_dw | (vmid << 24);
diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
index 9f3cb2aec7c2..cca3552b36ed 100644
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c
@@ -247,7 +247,7 @@ static void sdma_v2_4_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count)
247static void sdma_v2_4_ring_emit_ib(struct amdgpu_ring *ring, 247static void sdma_v2_4_ring_emit_ib(struct amdgpu_ring *ring,
248 struct amdgpu_job *job, 248 struct amdgpu_job *job,
249 struct amdgpu_ib *ib, 249 struct amdgpu_ib *ib,
250 bool ctx_switch) 250 uint32_t flags)
251{ 251{
252 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 252 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
253 253
diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
index 06c5a277aa76..0ce8331baeb2 100644
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
@@ -421,7 +421,7 @@ static void sdma_v3_0_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count)
421static void sdma_v3_0_ring_emit_ib(struct amdgpu_ring *ring, 421static void sdma_v3_0_ring_emit_ib(struct amdgpu_ring *ring,
422 struct amdgpu_job *job, 422 struct amdgpu_job *job,
423 struct amdgpu_ib *ib, 423 struct amdgpu_ib *ib,
424 bool ctx_switch) 424 uint32_t flags)
425{ 425{
426 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 426 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
427 427
diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
index 48a166ba9fed..127b85983e8f 100644
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
@@ -500,7 +500,7 @@ static void sdma_v4_0_ring_insert_nop(struct amdgpu_ring *ring, uint32_t count)
500static void sdma_v4_0_ring_emit_ib(struct amdgpu_ring *ring, 500static void sdma_v4_0_ring_emit_ib(struct amdgpu_ring *ring,
501 struct amdgpu_job *job, 501 struct amdgpu_job *job,
502 struct amdgpu_ib *ib, 502 struct amdgpu_ib *ib,
503 bool ctx_switch) 503 uint32_t flags)
504{ 504{
505 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 505 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
506 506
diff --git a/drivers/gpu/drm/amd/amdgpu/si_dma.c b/drivers/gpu/drm/amd/amdgpu/si_dma.c
index b6e473134e19..f15f196684ba 100644
--- a/drivers/gpu/drm/amd/amdgpu/si_dma.c
+++ b/drivers/gpu/drm/amd/amdgpu/si_dma.c
@@ -63,7 +63,7 @@ static void si_dma_ring_set_wptr(struct amdgpu_ring *ring)
63static void si_dma_ring_emit_ib(struct amdgpu_ring *ring, 63static void si_dma_ring_emit_ib(struct amdgpu_ring *ring,
64 struct amdgpu_job *job, 64 struct amdgpu_job *job,
65 struct amdgpu_ib *ib, 65 struct amdgpu_ib *ib,
66 bool ctx_switch) 66 uint32_t flags)
67{ 67{
68 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 68 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
69 /* The indirect buffer packet must end on an 8 DW boundary in the DMA ring. 69 /* The indirect buffer packet must end on an 8 DW boundary in the DMA ring.
diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c b/drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c
index d69c8f6daaf8..c4fb58667fd4 100644
--- a/drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c
+++ b/drivers/gpu/drm/amd/amdgpu/uvd_v4_2.c
@@ -511,7 +511,7 @@ static int uvd_v4_2_ring_test_ring(struct amdgpu_ring *ring)
511static void uvd_v4_2_ring_emit_ib(struct amdgpu_ring *ring, 511static void uvd_v4_2_ring_emit_ib(struct amdgpu_ring *ring,
512 struct amdgpu_job *job, 512 struct amdgpu_job *job,
513 struct amdgpu_ib *ib, 513 struct amdgpu_ib *ib,
514 bool ctx_switch) 514 uint32_t flags)
515{ 515{
516 amdgpu_ring_write(ring, PACKET0(mmUVD_RBC_IB_BASE, 0)); 516 amdgpu_ring_write(ring, PACKET0(mmUVD_RBC_IB_BASE, 0));
517 amdgpu_ring_write(ring, ib->gpu_addr); 517 amdgpu_ring_write(ring, ib->gpu_addr);
diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c b/drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c
index ee8cd06ddc38..52bd8a654734 100644
--- a/drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/uvd_v5_0.c
@@ -526,7 +526,7 @@ static int uvd_v5_0_ring_test_ring(struct amdgpu_ring *ring)
526static void uvd_v5_0_ring_emit_ib(struct amdgpu_ring *ring, 526static void uvd_v5_0_ring_emit_ib(struct amdgpu_ring *ring,
527 struct amdgpu_job *job, 527 struct amdgpu_job *job,
528 struct amdgpu_ib *ib, 528 struct amdgpu_ib *ib,
529 bool ctx_switch) 529 uint32_t flags)
530{ 530{
531 amdgpu_ring_write(ring, PACKET0(mmUVD_LMI_RBC_IB_64BIT_BAR_LOW, 0)); 531 amdgpu_ring_write(ring, PACKET0(mmUVD_LMI_RBC_IB_64BIT_BAR_LOW, 0));
532 amdgpu_ring_write(ring, lower_32_bits(ib->gpu_addr)); 532 amdgpu_ring_write(ring, lower_32_bits(ib->gpu_addr));
diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c
index d4f4a66f8324..c9edddf9f88a 100644
--- a/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/uvd_v6_0.c
@@ -977,7 +977,7 @@ static int uvd_v6_0_ring_test_ring(struct amdgpu_ring *ring)
977static void uvd_v6_0_ring_emit_ib(struct amdgpu_ring *ring, 977static void uvd_v6_0_ring_emit_ib(struct amdgpu_ring *ring,
978 struct amdgpu_job *job, 978 struct amdgpu_job *job,
979 struct amdgpu_ib *ib, 979 struct amdgpu_ib *ib,
980 bool ctx_switch) 980 uint32_t flags)
981{ 981{
982 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 982 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
983 983
@@ -1003,7 +1003,7 @@ static void uvd_v6_0_ring_emit_ib(struct amdgpu_ring *ring,
1003static void uvd_v6_0_enc_ring_emit_ib(struct amdgpu_ring *ring, 1003static void uvd_v6_0_enc_ring_emit_ib(struct amdgpu_ring *ring,
1004 struct amdgpu_job *job, 1004 struct amdgpu_job *job,
1005 struct amdgpu_ib *ib, 1005 struct amdgpu_ib *ib,
1006 bool ctx_switch) 1006 uint32_t flags)
1007{ 1007{
1008 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1008 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
1009 1009
diff --git a/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c b/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
index aef924026a28..dc461df48da0 100644
--- a/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/uvd_v7_0.c
@@ -1272,7 +1272,7 @@ static int uvd_v7_0_ring_patch_cs_in_place(struct amdgpu_cs_parser *p,
1272static void uvd_v7_0_ring_emit_ib(struct amdgpu_ring *ring, 1272static void uvd_v7_0_ring_emit_ib(struct amdgpu_ring *ring,
1273 struct amdgpu_job *job, 1273 struct amdgpu_job *job,
1274 struct amdgpu_ib *ib, 1274 struct amdgpu_ib *ib,
1275 bool ctx_switch) 1275 uint32_t flags)
1276{ 1276{
1277 struct amdgpu_device *adev = ring->adev; 1277 struct amdgpu_device *adev = ring->adev;
1278 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1278 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
@@ -1303,7 +1303,7 @@ static void uvd_v7_0_ring_emit_ib(struct amdgpu_ring *ring,
1303static void uvd_v7_0_enc_ring_emit_ib(struct amdgpu_ring *ring, 1303static void uvd_v7_0_enc_ring_emit_ib(struct amdgpu_ring *ring,
1304 struct amdgpu_job *job, 1304 struct amdgpu_job *job,
1305 struct amdgpu_ib *ib, 1305 struct amdgpu_ib *ib,
1306 bool ctx_switch) 1306 uint32_t flags)
1307{ 1307{
1308 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1308 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
1309 1309
diff --git a/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c b/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c
index 2668effadd27..6ec65cf11112 100644
--- a/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/vce_v3_0.c
@@ -834,7 +834,7 @@ out:
834static void vce_v3_0_ring_emit_ib(struct amdgpu_ring *ring, 834static void vce_v3_0_ring_emit_ib(struct amdgpu_ring *ring,
835 struct amdgpu_job *job, 835 struct amdgpu_job *job,
836 struct amdgpu_ib *ib, 836 struct amdgpu_ib *ib,
837 bool ctx_switch) 837 uint32_t flags)
838{ 838{
839 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 839 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
840 840
diff --git a/drivers/gpu/drm/amd/amdgpu/vce_v4_0.c b/drivers/gpu/drm/amd/amdgpu/vce_v4_0.c
index 9fb34b7d8e03..aadc3e66ebd7 100644
--- a/drivers/gpu/drm/amd/amdgpu/vce_v4_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/vce_v4_0.c
@@ -947,7 +947,7 @@ static int vce_v4_0_set_powergating_state(void *handle,
947#endif 947#endif
948 948
949static void vce_v4_0_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job, 949static void vce_v4_0_ring_emit_ib(struct amdgpu_ring *ring, struct amdgpu_job *job,
950 struct amdgpu_ib *ib, bool ctx_switch) 950 struct amdgpu_ib *ib, uint32_t flags)
951{ 951{
952 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 952 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
953 953
diff --git a/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c b/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
index 89bb2fef90eb..3dbc51f9d3b9 100644
--- a/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/vcn_v1_0.c
@@ -1371,7 +1371,7 @@ static void vcn_v1_0_dec_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u64
1371static void vcn_v1_0_dec_ring_emit_ib(struct amdgpu_ring *ring, 1371static void vcn_v1_0_dec_ring_emit_ib(struct amdgpu_ring *ring,
1372 struct amdgpu_job *job, 1372 struct amdgpu_job *job,
1373 struct amdgpu_ib *ib, 1373 struct amdgpu_ib *ib,
1374 bool ctx_switch) 1374 uint32_t flags)
1375{ 1375{
1376 struct amdgpu_device *adev = ring->adev; 1376 struct amdgpu_device *adev = ring->adev;
1377 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1377 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
@@ -1531,7 +1531,7 @@ static void vcn_v1_0_enc_ring_insert_end(struct amdgpu_ring *ring)
1531static void vcn_v1_0_enc_ring_emit_ib(struct amdgpu_ring *ring, 1531static void vcn_v1_0_enc_ring_emit_ib(struct amdgpu_ring *ring,
1532 struct amdgpu_job *job, 1532 struct amdgpu_job *job,
1533 struct amdgpu_ib *ib, 1533 struct amdgpu_ib *ib,
1534 bool ctx_switch) 1534 uint32_t flags)
1535{ 1535{
1536 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1536 unsigned vmid = AMDGPU_JOB_GET_VMID(job);
1537 1537
@@ -1736,7 +1736,7 @@ static void vcn_v1_0_jpeg_ring_emit_fence(struct amdgpu_ring *ring, u64 addr, u6
1736static void vcn_v1_0_jpeg_ring_emit_ib(struct amdgpu_ring *ring, 1736static void vcn_v1_0_jpeg_ring_emit_ib(struct amdgpu_ring *ring,
1737 struct amdgpu_job *job, 1737 struct amdgpu_job *job,
1738 struct amdgpu_ib *ib, 1738 struct amdgpu_ib *ib,
1739 bool ctx_switch) 1739 uint32_t flags)
1740{ 1740{
1741 struct amdgpu_device *adev = ring->adev; 1741 struct amdgpu_device *adev = ring->adev;
1742 unsigned vmid = AMDGPU_JOB_GET_VMID(job); 1742 unsigned vmid = AMDGPU_JOB_GET_VMID(job);