diff options
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/radeon/radeon_uvd.c | 6 | ||||
-rw-r--r-- | src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/src/gallium/drivers/radeon/radeon_uvd.c b/src/gallium/drivers/radeon/radeon_uvd.c index fa8110541c5..a8b17e6376e 100644 --- a/src/gallium/drivers/radeon/radeon_uvd.c +++ b/src/gallium/drivers/radeon/radeon_uvd.c @@ -104,12 +104,6 @@ static unsigned alloc_stream_handle() /* flush IB to the hardware */ static void flush(struct ruvd_decoder *dec) { - uint32_t *pm4 = dec->cs->buf; - - // align IB - while(dec->cs->cdw % 16) - pm4[dec->cs->cdw++] = RUVD_PKT2(); - dec->ws->cs_flush(dec->cs, RADEON_FLUSH_ASYNC, 0); } diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c index d530011be66..62f77044b3a 100644 --- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c +++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c @@ -494,6 +494,12 @@ static void radeon_drm_cs_flush(struct radeon_winsys_cs *rcs, unsigned flags, ui OUT_CS(&cs->base, 0x80000000); /* type2 nop packet */ } break; + case RING_UVD: + while (rcs->cdw & 15) + OUT_CS(&cs->base, 0x80000000); /* type2 nop packet */ + break; + default: + break; } if (rcs->cdw > RADEON_MAX_CMDBUF_DWORDS) { |