From: Nicolai Hähnle <nicolai.haeh...@amd.com>

Mostly generated using a sed-script, with manual fix-up for multi-line
statements.
---
 src/gallium/drivers/r600/evergreen_hw_context.c |  10 +-
 src/gallium/drivers/r600/evergreen_state.c      |  26 +++---
 src/gallium/drivers/r600/r600_hw_context.c      |  36 ++++----
 src/gallium/drivers/r600/r600_pipe.h            |   4 +-
 src/gallium/drivers/r600/r600_state.c           |  22 ++---
 src/gallium/drivers/r600/r600_state_common.c    | 118 ++++++++++++------------
 src/gallium/drivers/radeon/radeon_uvd.c         |   5 +-
 src/gallium/drivers/radeonsi/cik_sdma.c         |  50 +++++-----
 src/gallium/drivers/radeonsi/si_dma.c           |  32 +++----
 9 files changed, 151 insertions(+), 152 deletions(-)

diff --git a/src/gallium/drivers/r600/evergreen_hw_context.c 
b/src/gallium/drivers/r600/evergreen_hw_context.c
index a0f4680..4b034af 100644
--- a/src/gallium/drivers/r600/evergreen_hw_context.c
+++ b/src/gallium/drivers/r600/evergreen_hw_context.c
@@ -68,11 +68,11 @@ void evergreen_dma_copy_buffer(struct r600_context *rctx,
                                      RADEON_PRIO_SDMA_BUFFER);
                radeon_add_to_buffer_list(&rctx->b, &rctx->b.dma, rdst, 
RADEON_USAGE_WRITE,
                                      RADEON_PRIO_SDMA_BUFFER);
-               cs->buf[cs->cdw++] = DMA_PACKET(DMA_PACKET_COPY, sub_cmd, 
csize);
-               cs->buf[cs->cdw++] = dst_offset & 0xffffffff;
-               cs->buf[cs->cdw++] = src_offset & 0xffffffff;
-               cs->buf[cs->cdw++] = (dst_offset >> 32UL) & 0xff;
-               cs->buf[cs->cdw++] = (src_offset >> 32UL) & 0xff;
+               radeon_emit(cs, DMA_PACKET(DMA_PACKET_COPY, sub_cmd, csize));
+               radeon_emit(cs, dst_offset & 0xffffffff);
+               radeon_emit(cs, src_offset & 0xffffffff);
+               radeon_emit(cs, (dst_offset >> 32UL) & 0xff);
+               radeon_emit(cs, (src_offset >> 32UL) & 0xff);
                dst_offset += csize << shift;
                src_offset += csize << shift;
                size -= csize;
diff --git a/src/gallium/drivers/r600/evergreen_state.c 
b/src/gallium/drivers/r600/evergreen_state.c
index 5224e42..0ac54ed 100644
--- a/src/gallium/drivers/r600/evergreen_state.c
+++ b/src/gallium/drivers/r600/evergreen_state.c
@@ -1736,8 +1736,8 @@ static void evergreen_emit_db_state(struct r600_context 
*rctx, struct r600_atom
                radeon_set_context_reg(cs, R_028014_DB_HTILE_DATA_BASE, 
a->rsurf->db_htile_data_base);
                reloc_idx = radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx, 
rtex->htile_buffer,
                                                  RADEON_USAGE_READWRITE, 
RADEON_PRIO_HTILE);
-               cs->buf[cs->cdw++] = PKT3(PKT3_NOP, 0, 0);
-               cs->buf[cs->cdw++] = reloc_idx;
+               radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
+               radeon_emit(cs, reloc_idx);
        } else {
                radeon_set_context_reg(cs, R_028ABC_DB_HTILE_SURFACE, 0);
                radeon_set_context_reg(cs, R_028AC8_DB_PRELOAD_CONTROL, 0);
@@ -3455,17 +3455,17 @@ static void evergreen_dma_copy_tile(struct r600_context 
*rctx,
                                      RADEON_USAGE_READ, 
RADEON_PRIO_SDMA_TEXTURE);
                radeon_add_to_buffer_list(&rctx->b, &rctx->b.dma, 
&rdst->resource,
                                      RADEON_USAGE_WRITE, 
RADEON_PRIO_SDMA_TEXTURE);
-               cs->buf[cs->cdw++] = DMA_PACKET(DMA_PACKET_COPY, sub_cmd, size);
-               cs->buf[cs->cdw++] = base >> 8;
-               cs->buf[cs->cdw++] = (detile << 31) | (array_mode << 27) |
-                                       (lbpp << 24) | (bank_h << 21) |
-                                       (bank_w << 18) | (mt_aspect << 16);
-               cs->buf[cs->cdw++] = (pitch_tile_max << 0) | ((height - 1) << 
16);
-               cs->buf[cs->cdw++] = (slice_tile_max << 0);
-               cs->buf[cs->cdw++] = (x << 0) | (z << 18);
-               cs->buf[cs->cdw++] = (y << 0) | (tile_split << 21) | (nbanks << 
25) | (non_disp_tiling << 28);
-               cs->buf[cs->cdw++] = addr & 0xfffffffc;
-               cs->buf[cs->cdw++] = (addr >> 32UL) & 0xff;
+               radeon_emit(cs, DMA_PACKET(DMA_PACKET_COPY, sub_cmd, size));
+               radeon_emit(cs, base >> 8);
+               radeon_emit(cs, (detile << 31) | (array_mode << 27) |
+                               (lbpp << 24) | (bank_h << 21) |
+                               (bank_w << 18) | (mt_aspect << 16));
+               radeon_emit(cs, (pitch_tile_max << 0) | ((height - 1) << 16));
+               radeon_emit(cs, (slice_tile_max << 0));
+               radeon_emit(cs, (x << 0) | (z << 18));
+               radeon_emit(cs, (y << 0) | (tile_split << 21) | (nbanks << 25) 
| (non_disp_tiling << 28));
+               radeon_emit(cs, addr & 0xfffffffc);
+               radeon_emit(cs, (addr >> 32UL) & 0xff);
                copy_height -= cheight;
                addr += cheight * pitch;
                y += cheight;
diff --git a/src/gallium/drivers/r600/r600_hw_context.c 
b/src/gallium/drivers/r600/r600_hw_context.c
index 2bc6d3f..24cce6f 100644
--- a/src/gallium/drivers/r600/r600_hw_context.c
+++ b/src/gallium/drivers/r600/r600_hw_context.c
@@ -115,20 +115,20 @@ void r600_flush_emit(struct r600_context *rctx)
        }
 
        if (rctx->b.flags & R600_CONTEXT_PS_PARTIAL_FLUSH) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_EVENT_WRITE, 0, 0);
-               cs->buf[cs->cdw++] = EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | 
EVENT_INDEX(4);
+               radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
+               radeon_emit(cs, EVENT_TYPE(EVENT_TYPE_PS_PARTIAL_FLUSH) | 
EVENT_INDEX(4));
        }
 
        if (rctx->b.chip_class >= R700 &&
            (rctx->b.flags & R600_CONTEXT_FLUSH_AND_INV_CB_META)) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_EVENT_WRITE, 0, 0);
-               cs->buf[cs->cdw++] = 
EVENT_TYPE(EVENT_TYPE_FLUSH_AND_INV_CB_META) | EVENT_INDEX(0);
+               radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
+               radeon_emit(cs, EVENT_TYPE(EVENT_TYPE_FLUSH_AND_INV_CB_META) | 
EVENT_INDEX(0));
        }
 
        if (rctx->b.chip_class >= R700 &&
            (rctx->b.flags & R600_CONTEXT_FLUSH_AND_INV_DB_META)) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_EVENT_WRITE, 0, 0);
-               cs->buf[cs->cdw++] = 
EVENT_TYPE(EVENT_TYPE_FLUSH_AND_INV_DB_META) | EVENT_INDEX(0);
+               radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
+               radeon_emit(cs, EVENT_TYPE(EVENT_TYPE_FLUSH_AND_INV_DB_META) | 
EVENT_INDEX(0));
 
                /* Set FULL_CACHE_ENA for DB META flushes on r7xx and later.
                 *
@@ -141,8 +141,8 @@ void r600_flush_emit(struct r600_context *rctx)
 
        if (rctx->b.flags & R600_CONTEXT_FLUSH_AND_INV ||
            (rctx->b.chip_class == R600 && rctx->b.flags & 
R600_CONTEXT_STREAMOUT_FLUSH)) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_EVENT_WRITE, 0, 0);
-               cs->buf[cs->cdw++] = 
EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT) | EVENT_INDEX(0);
+               radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
+               radeon_emit(cs, 
EVENT_TYPE(EVENT_TYPE_CACHE_FLUSH_AND_INV_EVENT) | EVENT_INDEX(0));
        }
 
        if (rctx->b.flags & R600_CONTEXT_INV_CONST_CACHE) {
@@ -215,11 +215,11 @@ void r600_flush_emit(struct r600_context *rctx)
        }
 
        if (cp_coher_cntl) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_SURFACE_SYNC, 3, 0);
-               cs->buf[cs->cdw++] = cp_coher_cntl;   /* CP_COHER_CNTL */
-               cs->buf[cs->cdw++] = 0xffffffff;      /* CP_COHER_SIZE */
-               cs->buf[cs->cdw++] = 0;               /* CP_COHER_BASE */
-               cs->buf[cs->cdw++] = 0x0000000A;      /* POLL_INTERVAL */
+               radeon_emit(cs, PKT3(PKT3_SURFACE_SYNC, 3, 0));
+               radeon_emit(cs, cp_coher_cntl);   /* CP_COHER_CNTL */
+               radeon_emit(cs, 0xffffffff);      /* CP_COHER_SIZE */
+               radeon_emit(cs, 0);               /* CP_COHER_BASE */
+               radeon_emit(cs, 0x0000000A);      /* POLL_INTERVAL */
        }
 
        if (rctx->b.flags & R600_CONTEXT_START_PIPELINE_STATS) {
@@ -475,11 +475,11 @@ void r600_dma_copy_buffer(struct r600_context *rctx,
                                      RADEON_PRIO_SDMA_BUFFER);
                radeon_add_to_buffer_list(&rctx->b, &rctx->b.dma, rdst, 
RADEON_USAGE_WRITE,
                                      RADEON_PRIO_SDMA_BUFFER);
-               cs->buf[cs->cdw++] = DMA_PACKET(DMA_PACKET_COPY, 0, 0, csize);
-               cs->buf[cs->cdw++] = dst_offset & 0xfffffffc;
-               cs->buf[cs->cdw++] = src_offset & 0xfffffffc;
-               cs->buf[cs->cdw++] = (dst_offset >> 32UL) & 0xff;
-               cs->buf[cs->cdw++] = (src_offset >> 32UL) & 0xff;
+               radeon_emit(cs, DMA_PACKET(DMA_PACKET_COPY, 0, 0, csize));
+               radeon_emit(cs, dst_offset & 0xfffffffc);
+               radeon_emit(cs, src_offset & 0xfffffffc);
+               radeon_emit(cs, (dst_offset >> 32UL) & 0xff);
+               radeon_emit(cs, (src_offset >> 32UL) & 0xff);
                dst_offset += csize << 2;
                src_offset += csize << 2;
                size -= csize;
diff --git a/src/gallium/drivers/r600/r600_pipe.h 
b/src/gallium/drivers/r600/r600_pipe.h
index b8d0cf1..cdb8e82 100644
--- a/src/gallium/drivers/r600/r600_pipe.h
+++ b/src/gallium/drivers/r600/r600_pipe.h
@@ -881,8 +881,8 @@ static inline void radeon_set_ctl_const_seq(struct 
radeon_winsys_cs *cs, unsigne
 {
        assert(reg >= R600_CTL_CONST_OFFSET);
        assert(cs->cdw+2+num <= cs->max_dw);
-       cs->buf[cs->cdw++] = PKT3(PKT3_SET_CTL_CONST, num, 0);
-       cs->buf[cs->cdw++] = (reg - R600_CTL_CONST_OFFSET) >> 2;
+       radeon_emit(cs, PKT3(PKT3_SET_CTL_CONST, num, 0));
+       radeon_emit(cs, (reg - R600_CTL_CONST_OFFSET) >> 2);
 }
 
 static inline void radeon_compute_set_context_reg(struct radeon_winsys_cs *cs, 
unsigned reg, unsigned value)
diff --git a/src/gallium/drivers/r600/r600_state.c 
b/src/gallium/drivers/r600/r600_state.c
index 2291096..8f786e2 100644
--- a/src/gallium/drivers/r600/r600_state.c
+++ b/src/gallium/drivers/r600/r600_state.c
@@ -1568,8 +1568,8 @@ static void r600_emit_db_state(struct r600_context *rctx, 
struct r600_atom *atom
                radeon_set_context_reg(cs, R_028014_DB_HTILE_DATA_BASE, 
a->rsurf->db_htile_data_base);
                reloc_idx = radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx, 
rtex->htile_buffer,
                                                  RADEON_USAGE_READWRITE, 
RADEON_PRIO_HTILE);
-               cs->buf[cs->cdw++] = PKT3(PKT3_NOP, 0, 0);
-               cs->buf[cs->cdw++] = reloc_idx;
+               radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
+               radeon_emit(cs, reloc_idx);
        } else {
                radeon_set_context_reg(cs, R_028D24_DB_HTILE_SURFACE, 0);
        }
@@ -2928,15 +2928,15 @@ static boolean r600_dma_copy_tile(struct r600_context 
*rctx,
                                      RADEON_PRIO_SDMA_TEXTURE);
                radeon_add_to_buffer_list(&rctx->b, &rctx->b.dma, 
&rdst->resource, RADEON_USAGE_WRITE,
                                      RADEON_PRIO_SDMA_TEXTURE);
-               cs->buf[cs->cdw++] = DMA_PACKET(DMA_PACKET_COPY, 1, 0, size);
-               cs->buf[cs->cdw++] = base >> 8;
-               cs->buf[cs->cdw++] = (detile << 31) | (array_mode << 27) |
-                                       (lbpp << 24) | ((height - 1) << 10) |
-                                       pitch_tile_max;
-               cs->buf[cs->cdw++] = (slice_tile_max << 12) | (z << 0);
-               cs->buf[cs->cdw++] = (x << 3) | (y << 17);
-               cs->buf[cs->cdw++] = addr & 0xfffffffc;
-               cs->buf[cs->cdw++] = (addr >> 32UL) & 0xff;
+               radeon_emit(cs, DMA_PACKET(DMA_PACKET_COPY, 1, 0, size));
+               radeon_emit(cs, base >> 8);
+               radeon_emit(cs, (detile << 31) | (array_mode << 27) |
+                               (lbpp << 24) | ((height - 1) << 10) |
+                               pitch_tile_max);
+               radeon_emit(cs, (slice_tile_max << 12) | (z << 0));
+               radeon_emit(cs, (x << 3) | (y << 17));
+               radeon_emit(cs, addr & 0xfffffffc);
+               radeon_emit(cs, (addr >> 32UL) & 0xff);
                copy_height -= cheight;
                addr += cheight * pitch;
                y += cheight;
diff --git a/src/gallium/drivers/r600/r600_state_common.c 
b/src/gallium/drivers/r600/r600_state_common.c
index cac240e..9fe0a6d 100644
--- a/src/gallium/drivers/r600/r600_state_common.c
+++ b/src/gallium/drivers/r600/r600_state_common.c
@@ -1871,8 +1871,8 @@ static void r600_draw_vbo(struct pipe_context *ctx, const 
struct pipe_draw_info
 
        /* Draw packets. */
        if (!info.indirect) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_NUM_INSTANCES, 0, 0);
-               cs->buf[cs->cdw++] = info.instance_count;
+               radeon_emit(cs, PKT3(PKT3_NUM_INSTANCES, 0, 0));
+               radeon_emit(cs, info.instance_count);
        }
 
        if (unlikely(info.indirect)) {
@@ -1883,66 +1883,66 @@ static void r600_draw_vbo(struct pipe_context *ctx, 
const struct pipe_draw_info
                rctx->vgt_state.last_draw_was_indirect = true;
                rctx->last_start_instance = -1;
 
-               cs->buf[cs->cdw++] = PKT3(EG_PKT3_SET_BASE, 2, 0);
-               cs->buf[cs->cdw++] = EG_DRAW_INDEX_INDIRECT_PATCH_TABLE_BASE;
-               cs->buf[cs->cdw++] = va;
-               cs->buf[cs->cdw++] = (va >> 32UL) & 0xFF;
+               radeon_emit(cs, PKT3(EG_PKT3_SET_BASE, 2, 0));
+               radeon_emit(cs, EG_DRAW_INDEX_INDIRECT_PATCH_TABLE_BASE);
+               radeon_emit(cs, va);
+               radeon_emit(cs, (va >> 32UL) & 0xFF);
 
-               cs->buf[cs->cdw++] = PKT3(PKT3_NOP, 0, 0);
-               cs->buf[cs->cdw++] = radeon_add_to_buffer_list(&rctx->b, 
&rctx->b.gfx,
-                                                          (struct 
r600_resource*)info.indirect,
-                                                          RADEON_USAGE_READ,
-                                                           
RADEON_PRIO_DRAW_INDIRECT);
+               radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
+               radeon_emit(cs, radeon_add_to_buffer_list(&rctx->b, 
&rctx->b.gfx,
+                                                         (struct 
r600_resource*)info.indirect,
+                                                         RADEON_USAGE_READ,
+                                                          
RADEON_PRIO_DRAW_INDIRECT));
        }
 
        if (info.indexed) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_INDEX_TYPE, 0, 0);
-               cs->buf[cs->cdw++] = ib.index_size == 4 ?
-                                       (VGT_INDEX_32 | (R600_BIG_ENDIAN ? 
VGT_DMA_SWAP_32_BIT : 0)) :
-                                       (VGT_INDEX_16 | (R600_BIG_ENDIAN ? 
VGT_DMA_SWAP_16_BIT : 0));
+               radeon_emit(cs, PKT3(PKT3_INDEX_TYPE, 0, 0));
+               radeon_emit(cs, ib.index_size == 4 ?
+                               (VGT_INDEX_32 | (R600_BIG_ENDIAN ? 
VGT_DMA_SWAP_32_BIT : 0)) :
+                               (VGT_INDEX_16 | (R600_BIG_ENDIAN ? 
VGT_DMA_SWAP_16_BIT : 0)));
 
                if (ib.user_buffer) {
                        unsigned size_bytes = info.count*ib.index_size;
                        unsigned size_dw = align(size_bytes, 4) / 4;
-                       cs->buf[cs->cdw++] = PKT3(PKT3_DRAW_INDEX_IMMD, 1 + 
size_dw, render_cond_bit);
-                       cs->buf[cs->cdw++] = info.count;
-                       cs->buf[cs->cdw++] = V_0287F0_DI_SRC_SEL_IMMEDIATE;
+                       radeon_emit(cs, PKT3(PKT3_DRAW_INDEX_IMMD, 1 + size_dw, 
render_cond_bit));
+                       radeon_emit(cs, info.count);
+                       radeon_emit(cs, V_0287F0_DI_SRC_SEL_IMMEDIATE);
                        memcpy(cs->buf+cs->cdw, ib.user_buffer, size_bytes);
                        cs->cdw += size_dw;
                } else {
                        uint64_t va = r600_resource(ib.buffer)->gpu_address + 
ib.offset;
 
                        if (likely(!info.indirect)) {
-                               cs->buf[cs->cdw++] = PKT3(PKT3_DRAW_INDEX, 3, 
render_cond_bit);
-                               cs->buf[cs->cdw++] = va;
-                               cs->buf[cs->cdw++] = (va >> 32UL) & 0xFF;
-                               cs->buf[cs->cdw++] = info.count;
-                               cs->buf[cs->cdw++] = V_0287F0_DI_SRC_SEL_DMA;
-                               cs->buf[cs->cdw++] = PKT3(PKT3_NOP, 0, 0);
-                               cs->buf[cs->cdw++] = 
radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx,
-                                                                          
(struct r600_resource*)ib.buffer,
-                                                                          
RADEON_USAGE_READ,
-                                                                           
RADEON_PRIO_INDEX_BUFFER);
+                               radeon_emit(cs, PKT3(PKT3_DRAW_INDEX, 3, 
render_cond_bit));
+                               radeon_emit(cs, va);
+                               radeon_emit(cs, (va >> 32UL) & 0xFF);
+                               radeon_emit(cs, info.count);
+                               radeon_emit(cs, V_0287F0_DI_SRC_SEL_DMA);
+                               radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
+                               radeon_emit(cs, 
radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx,
+                                                                         
(struct r600_resource*)ib.buffer,
+                                                                         
RADEON_USAGE_READ,
+                                                                          
RADEON_PRIO_INDEX_BUFFER));
                        }
                        else {
                                uint32_t max_size = (ib.buffer->width0 - 
ib.offset) / ib.index_size;
 
-                               cs->buf[cs->cdw++] = PKT3(EG_PKT3_INDEX_BASE, 
1, 0);
-                               cs->buf[cs->cdw++] = va;
-                               cs->buf[cs->cdw++] = (va >> 32UL) & 0xFF;
+                               radeon_emit(cs, PKT3(EG_PKT3_INDEX_BASE, 1, 0));
+                               radeon_emit(cs, va);
+                               radeon_emit(cs, (va >> 32UL) & 0xFF);
 
-                               cs->buf[cs->cdw++] = PKT3(PKT3_NOP, 0, 0);
-                               cs->buf[cs->cdw++] = 
radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx,
-                                                                          
(struct r600_resource*)ib.buffer,
-                                                                          
RADEON_USAGE_READ,
-                                                                           
RADEON_PRIO_INDEX_BUFFER);
+                               radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
+                               radeon_emit(cs, 
radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx,
+                                                                         
(struct r600_resource*)ib.buffer,
+                                                                         
RADEON_USAGE_READ,
+                                                                          
RADEON_PRIO_INDEX_BUFFER));
 
-                               cs->buf[cs->cdw++] = 
PKT3(EG_PKT3_INDEX_BUFFER_SIZE, 0, 0);
-                               cs->buf[cs->cdw++] = max_size;
+                               radeon_emit(cs, PKT3(EG_PKT3_INDEX_BUFFER_SIZE, 
0, 0));
+                               radeon_emit(cs, max_size);
 
-                               cs->buf[cs->cdw++] = 
PKT3(EG_PKT3_DRAW_INDEX_INDIRECT, 1, render_cond_bit);
-                               cs->buf[cs->cdw++] = info.indirect_offset;
-                               cs->buf[cs->cdw++] = V_0287F0_DI_SRC_SEL_DMA;
+                               radeon_emit(cs, 
PKT3(EG_PKT3_DRAW_INDEX_INDIRECT, 1, render_cond_bit));
+                               radeon_emit(cs, info.indirect_offset);
+                               radeon_emit(cs, V_0287F0_DI_SRC_SEL_DMA);
                        }
                }
        } else {
@@ -1952,29 +1952,29 @@ static void r600_draw_vbo(struct pipe_context *ctx, 
const struct pipe_draw_info
 
                        radeon_set_context_reg(cs, 
R_028B30_VGT_STRMOUT_DRAW_OPAQUE_VERTEX_STRIDE, t->stride_in_dw);
 
-                       cs->buf[cs->cdw++] = PKT3(PKT3_COPY_DW, 4, 0);
-                       cs->buf[cs->cdw++] = COPY_DW_SRC_IS_MEM | 
COPY_DW_DST_IS_REG;
-                       cs->buf[cs->cdw++] = va & 0xFFFFFFFFUL;     /* src 
address lo */
-                       cs->buf[cs->cdw++] = (va >> 32UL) & 0xFFUL; /* src 
address hi */
-                       cs->buf[cs->cdw++] = 
R_028B2C_VGT_STRMOUT_DRAW_OPAQUE_BUFFER_FILLED_SIZE >> 2; /* dst register */
-                       cs->buf[cs->cdw++] = 0; /* unused */
+                       radeon_emit(cs, PKT3(PKT3_COPY_DW, 4, 0));
+                       radeon_emit(cs, COPY_DW_SRC_IS_MEM | 
COPY_DW_DST_IS_REG);
+                       radeon_emit(cs, va & 0xFFFFFFFFUL);     /* src address 
lo */
+                       radeon_emit(cs, (va >> 32UL) & 0xFFUL); /* src address 
hi */
+                       radeon_emit(cs, 
R_028B2C_VGT_STRMOUT_DRAW_OPAQUE_BUFFER_FILLED_SIZE >> 2); /* dst register */
+                       radeon_emit(cs, 0); /* unused */
 
-                       cs->buf[cs->cdw++] = PKT3(PKT3_NOP, 0, 0);
-                       cs->buf[cs->cdw++] = 
radeon_add_to_buffer_list(&rctx->b, &rctx->b.gfx,
-                                                                  
t->buf_filled_size, RADEON_USAGE_READ,
-                                                                  
RADEON_PRIO_SO_FILLED_SIZE);
+                       radeon_emit(cs, PKT3(PKT3_NOP, 0, 0));
+                       radeon_emit(cs, radeon_add_to_buffer_list(&rctx->b, 
&rctx->b.gfx,
+                                                                 
t->buf_filled_size, RADEON_USAGE_READ,
+                                                                 
RADEON_PRIO_SO_FILLED_SIZE));
                }
 
                if (likely(!info.indirect)) {
-                       cs->buf[cs->cdw++] = PKT3(PKT3_DRAW_INDEX_AUTO, 1, 
render_cond_bit);
-                       cs->buf[cs->cdw++] = info.count;
+                       radeon_emit(cs, PKT3(PKT3_DRAW_INDEX_AUTO, 1, 
render_cond_bit));
+                       radeon_emit(cs, info.count);
                }
                else {
-                       cs->buf[cs->cdw++] = PKT3(EG_PKT3_DRAW_INDIRECT, 1, 
render_cond_bit);
-                       cs->buf[cs->cdw++] = info.indirect_offset;
+                       radeon_emit(cs, PKT3(EG_PKT3_DRAW_INDIRECT, 1, 
render_cond_bit));
+                       radeon_emit(cs, info.indirect_offset);
                }
-               cs->buf[cs->cdw++] = V_0287F0_DI_SRC_SEL_AUTO_INDEX |
-                                       (info.count_from_stream_output ? 
S_0287F0_USE_OPAQUE(1) : 0);
+               radeon_emit(cs, V_0287F0_DI_SRC_SEL_AUTO_INDEX |
+                               (info.count_from_stream_output ? 
S_0287F0_USE_OPAQUE(1) : 0));
        }
 
        /* SMX returns CONTEXT_DONE too early workaround */
@@ -1991,8 +1991,8 @@ static void r600_draw_vbo(struct pipe_context *ctx, const 
struct pipe_draw_info
 
        /* ES ring rolling over at EOP - workaround */
        if (rctx->b.chip_class == R600) {
-               cs->buf[cs->cdw++] = PKT3(PKT3_EVENT_WRITE, 0, 0);
-               cs->buf[cs->cdw++] = EVENT_TYPE(EVENT_TYPE_SQ_NON_EVENT);
+               radeon_emit(cs, PKT3(PKT3_EVENT_WRITE, 0, 0));
+               radeon_emit(cs, EVENT_TYPE(EVENT_TYPE_SQ_NON_EVENT));
        }
 
        /* Set the depth buffer as dirty. */
diff --git a/src/gallium/drivers/radeon/radeon_uvd.c 
b/src/gallium/drivers/radeon/radeon_uvd.c
index b775cd3..a2d1d2d 100644
--- a/src/gallium/drivers/radeon/radeon_uvd.c
+++ b/src/gallium/drivers/radeon/radeon_uvd.c
@@ -100,9 +100,8 @@ static void flush(struct ruvd_decoder *dec)
 /* add a new set register command to the IB */
 static void set_reg(struct ruvd_decoder *dec, unsigned reg, uint32_t val)
 {
-       uint32_t *pm4 = dec->cs->buf;
-       pm4[dec->cs->cdw++] = RUVD_PKT0(reg >> 2, 0);
-       pm4[dec->cs->cdw++] = val;
+       radeon_emit(dec->cs, RUVD_PKT0(reg >> 2, 0));
+       radeon_emit(dec->cs, val);
 }
 
 /* send a command to the VCPU through the GPCOM registers */
diff --git a/src/gallium/drivers/radeonsi/cik_sdma.c 
b/src/gallium/drivers/radeonsi/cik_sdma.c
index 2a996c1..80fbbd3 100644
--- a/src/gallium/drivers/radeonsi/cik_sdma.c
+++ b/src/gallium/drivers/radeonsi/cik_sdma.c
@@ -56,15 +56,15 @@ static void cik_sdma_do_copy_buffer(struct si_context *ctx,
 
        for (i = 0; i < ncopy; i++) {
                csize = size < CIK_SDMA_COPY_MAX_SIZE ? size : 
CIK_SDMA_COPY_MAX_SIZE;
-               cs->buf[cs->cdw++] = CIK_SDMA_PACKET(CIK_SDMA_OPCODE_COPY,
-                                                    
CIK_SDMA_COPY_SUB_OPCODE_LINEAR,
-                                                    0);
-               cs->buf[cs->cdw++] = csize;
-               cs->buf[cs->cdw++] = 0; /* src/dst endian swap */
-               cs->buf[cs->cdw++] = src_offset;
-               cs->buf[cs->cdw++] = src_offset >> 32;
-               cs->buf[cs->cdw++] = dst_offset;
-               cs->buf[cs->cdw++] = dst_offset >> 32;
+               radeon_emit(cs, CIK_SDMA_PACKET(CIK_SDMA_OPCODE_COPY,
+                                               CIK_SDMA_COPY_SUB_OPCODE_LINEAR,
+                                               0));
+               radeon_emit(cs, csize);
+               radeon_emit(cs, 0); /* src/dst endian swap */
+               radeon_emit(cs, src_offset);
+               radeon_emit(cs, src_offset >> 32);
+               radeon_emit(cs, dst_offset);
+               radeon_emit(cs, dst_offset >> 32);
                dst_offset += csize;
                src_offset += csize;
                size -= csize;
@@ -171,22 +171,22 @@ static void cik_sdma_copy_tile(struct si_context *ctx,
                }
                size = (cheight * pitch) / 4;
 
-               cs->buf[cs->cdw++] = CIK_SDMA_PACKET(CIK_SDMA_OPCODE_COPY,
-                                                    sub_op, detile << 15);
-               cs->buf[cs->cdw++] = base;
-               cs->buf[cs->cdw++] = base >> 32;
-               cs->buf[cs->cdw++] = ((height - 1) << 16) | pitch_tile_max;
-               cs->buf[cs->cdw++] = slice_tile_max;
-               cs->buf[cs->cdw++] = (pipe_config << 26) | (mt_aspect << 24) |
-                       (nbanks << 21) | (bank_h << 18) | (bank_w << 15) |
-                       (tile_split << 11) | (mt << 8) | (array_mode << 3) |
-                       lbpe;
-               cs->buf[cs->cdw++] = y << 16; /* | x */
-               cs->buf[cs->cdw++] = 0; /* z */
-               cs->buf[cs->cdw++] = addr & 0xfffffffc;
-               cs->buf[cs->cdw++] = addr >> 32;
-               cs->buf[cs->cdw++] = (pitch / bpe) - 1;
-               cs->buf[cs->cdw++] = size;
+               radeon_emit(cs, CIK_SDMA_PACKET(CIK_SDMA_OPCODE_COPY,
+                                               sub_op, detile << 15));
+               radeon_emit(cs, base);
+               radeon_emit(cs, base >> 32);
+               radeon_emit(cs, ((height - 1) << 16) | pitch_tile_max);
+               radeon_emit(cs, slice_tile_max);
+               radeon_emit(cs, (pipe_config << 26) | (mt_aspect << 24) |
+                               (nbanks << 21) | (bank_h << 18) | (bank_w << 
15) |
+                               (tile_split << 11) | (mt << 8) | (array_mode << 
3) |
+                               lbpe);
+               radeon_emit(cs, y << 16); /* | x */
+               radeon_emit(cs, 0); /* z */
+               radeon_emit(cs, addr & 0xfffffffc);
+               radeon_emit(cs, addr >> 32);
+               radeon_emit(cs, (pitch / bpe) - 1);
+               radeon_emit(cs, size);
 
                copy_height -= cheight;
                y += cheight;
diff --git a/src/gallium/drivers/radeonsi/si_dma.c 
b/src/gallium/drivers/radeonsi/si_dma.c
index 72956ac..ec245d7 100644
--- a/src/gallium/drivers/radeonsi/si_dma.c
+++ b/src/gallium/drivers/radeonsi/si_dma.c
@@ -73,11 +73,11 @@ static void si_dma_copy_buffer(struct si_context *ctx,
 
        for (i = 0; i < ncopy; i++) {
                csize = size < max_csize ? size : max_csize;
-               cs->buf[cs->cdw++] = SI_DMA_PACKET(SI_DMA_PACKET_COPY, sub_cmd, 
csize);
-               cs->buf[cs->cdw++] = dst_offset;
-               cs->buf[cs->cdw++] = src_offset;
-               cs->buf[cs->cdw++] = (dst_offset >> 32UL) & 0xff;
-               cs->buf[cs->cdw++] = (src_offset >> 32UL) & 0xff;
+               radeon_emit(cs, SI_DMA_PACKET(SI_DMA_PACKET_COPY, sub_cmd, 
csize));
+               radeon_emit(cs, dst_offset);
+               radeon_emit(cs, src_offset);
+               radeon_emit(cs, (dst_offset >> 32UL) & 0xff);
+               radeon_emit(cs, (src_offset >> 32UL) & 0xff);
                dst_offset += csize << shift;
                src_offset += csize << shift;
                size -= csize;
@@ -173,17 +173,17 @@ static void si_dma_copy_tile(struct si_context *ctx,
                        cheight = (SI_DMA_COPY_MAX_SIZE_DW * 4) / pitch;
                }
                size = (cheight * pitch) / 4;
-               cs->buf[cs->cdw++] = SI_DMA_PACKET(SI_DMA_PACKET_COPY, sub_cmd, 
size);
-               cs->buf[cs->cdw++] = base >> 8;
-               cs->buf[cs->cdw++] = (detile << 31) | (array_mode << 27) |
-                                       (lbpp << 24) | (bank_h << 21) |
-                                       (bank_w << 18) | (mt_aspect << 16);
-               cs->buf[cs->cdw++] = (pitch_tile_max << 0) | ((height - 1) << 
16);
-               cs->buf[cs->cdw++] = (slice_tile_max << 0) | (pipe_config << 
26);
-               cs->buf[cs->cdw++] = (tiled_x << 0) | (tiled_z << 18);
-               cs->buf[cs->cdw++] = (tiled_y << 0) | (tile_split << 21) | 
(nbanks << 25) | (mt << 27);
-               cs->buf[cs->cdw++] = addr & 0xfffffffc;
-               cs->buf[cs->cdw++] = (addr >> 32UL) & 0xff;
+               radeon_emit(cs, SI_DMA_PACKET(SI_DMA_PACKET_COPY, sub_cmd, 
size));
+               radeon_emit(cs, base >> 8);
+               radeon_emit(cs, (detile << 31) | (array_mode << 27) |
+                               (lbpp << 24) | (bank_h << 21) |
+                               (bank_w << 18) | (mt_aspect << 16));
+               radeon_emit(cs, (pitch_tile_max << 0) | ((height - 1) << 16));
+               radeon_emit(cs, (slice_tile_max << 0) | (pipe_config << 26));
+               radeon_emit(cs, (tiled_x << 0) | (tiled_z << 18));
+               radeon_emit(cs, (tiled_y << 0) | (tile_split << 21) | (nbanks 
<< 25) | (mt << 27));
+               radeon_emit(cs, addr & 0xfffffffc);
+               radeon_emit(cs, (addr >> 32UL) & 0xff);
                copy_height -= cheight;
                addr += cheight * pitch;
                tiled_y += cheight;
-- 
2.7.4

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to