From 206e1623c82f21354c97a5100e829a073aef6204 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Glisse?= Date: Fri, 25 Jul 2014 17:08:05 -0400 Subject: [PATCH] radeonsi: hack to make accel work on hawaii --- src/gallium/drivers/radeonsi/si_blit.c | 2 ++ src/gallium/drivers/radeonsi/si_descriptors.c | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index 9b01867..0b5a149 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -322,10 +322,12 @@ static void si_clear(struct pipe_context *ctx, unsigned buffers, struct si_context *sctx = (struct si_context *)ctx; struct pipe_framebuffer_state *fb = &sctx->framebuffer.state; +#if 0 if (buffers & PIPE_CLEAR_COLOR) { evergreen_do_fast_color_clear(&sctx->b, fb, &sctx->framebuffer.atom, &buffers, color); } +#endif if (buffers & PIPE_CLEAR_COLOR) { int i; diff --git a/src/gallium/drivers/radeonsi/si_descriptors.c b/src/gallium/drivers/radeonsi/si_descriptors.c index 4751b8b..fedd609 100644 --- a/src/gallium/drivers/radeonsi/si_descriptors.c +++ b/src/gallium/drivers/radeonsi/si_descriptors.c @@ -59,6 +59,7 @@ static void si_emit_cp_dma_copy_buffer(struct si_context *sctx, assert((size & ((1<<21)-1)) == size); if (sctx->b.chip_class >= CIK) { +#if 0 radeon_emit(cs, PKT3(PKT3_DMA_DATA, 5, 0)); radeon_emit(cs, sync_flag); /* CP_SYNC [31] */ radeon_emit(cs, src_va); /* SRC_ADDR_LO [31:0] */ @@ -66,6 +67,7 @@ static void si_emit_cp_dma_copy_buffer(struct si_context *sctx, radeon_emit(cs, dst_va); /* DST_ADDR_LO [31:0] */ radeon_emit(cs, dst_va >> 32); /* DST_ADDR_HI [31:0] */ radeon_emit(cs, size | raw_wait); /* COMMAND [29:22] | BYTE_COUNT [20:0] */ +#endif } else { radeon_emit(cs, PKT3(PKT3_CP_DMA, 4, 0)); radeon_emit(cs, src_va); /* SRC_ADDR_LO [31:0] */ @@ -89,6 +91,7 @@ static void si_emit_cp_dma_clear_buffer(struct si_context *sctx, assert((size & ((1<<21)-1)) == size); if (sctx->b.chip_class >= CIK) { +#if 0 radeon_emit(cs, PKT3(PKT3_DMA_DATA, 5, 0)); radeon_emit(cs, sync_flag | PKT3_CP_DMA_SRC_SEL(2)); /* CP_SYNC [31] | SRC_SEL[30:29] */ radeon_emit(cs, clear_value); /* DATA [31:0] */ @@ -96,6 +99,7 @@ static void si_emit_cp_dma_clear_buffer(struct si_context *sctx, radeon_emit(cs, dst_va); /* DST_ADDR_LO [31:0] */ radeon_emit(cs, dst_va >> 32); /* DST_ADDR_HI [15:0] */ radeon_emit(cs, size | raw_wait); /* COMMAND [29:22] | BYTE_COUNT [20:0] */ +#endif } else { radeon_emit(cs, PKT3(PKT3_CP_DMA, 4, 0)); radeon_emit(cs, clear_value); /* DATA [31:0] */ -- 1.9.3