From: Marek Olšák <marek.ol...@amd.com>

It must be disabled until the kernel bug is fixed, and then we'll enable CE
based on the DRM version.

Cc: 12.0 13.0 <mesa-sta...@lists.freedesktop.org>
---
 src/gallium/drivers/radeonsi/si_pipe.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_pipe.c 
b/src/gallium/drivers/radeonsi/si_pipe.c
index 71fc557..88685f9 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -180,21 +180,24 @@ static struct pipe_context *si_create_context(struct 
pipe_screen *screen,
        } else {
                sctx->b.b.create_video_codec = vl_create_decoder;
                sctx->b.b.create_video_buffer = vl_video_buffer_create;
        }
 
        sctx->b.gfx.cs = ws->cs_create(sctx->b.ctx, RING_GFX,
                                       si_context_gfx_flush, sctx);
 
        /* SI + AMDGPU + CE = GPU hang */
        if (!(sscreen->b.debug_flags & DBG_NO_CE) && ws->cs_add_const_ib &&
-           sscreen->b.chip_class != SI) {
+           sscreen->b.chip_class != SI &&
+           /* These can't use CE due to a power gating bug in the kernel. */
+           sscreen->b.family != CHIP_CARRIZO &&
+           sscreen->b.family != CHIP_STONEY) {
                sctx->ce_ib = ws->cs_add_const_ib(sctx->b.gfx.cs);
                if (!sctx->ce_ib)
                        goto fail;
 
                if (ws->cs_add_const_preamble_ib) {
                        sctx->ce_preamble_ib =
                                   ws->cs_add_const_preamble_ib(sctx->b.gfx.cs);
 
                        if (!sctx->ce_preamble_ib)
                                goto fail;
-- 
2.7.4

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

Reply via email to