summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJerome Glisse <jglisse@redhat.com>2010-02-18 14:13:48 +0100
committerJerome Glisse <jglisse@redhat.com>2010-02-18 14:13:48 +0100
commita3b730eceb522c7ac1ef3dd6f6c7d773118d03f7 (patch)
tree69cb02bc1b9c622c3c839150abbebc4d439ff2a6
parent579cdcf9b4e38c791a497b747a055fc0a07d8dd6 (diff)
r6xx/kms: when reseting BO force default state emission
In KMS world each cs need to fully initialize the 3D engine when we were erasing cs in IBDiscard for r6xx we weren't forcing reemission of default state. This patch force this emission. Fix : http://bugs.freedesktop.org/show_bug.cgi?id=26603 http://bugzilla.kernel.org/show_bug.cgi?id=15284
-rw-r--r--src/r6xx_accel.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/r6xx_accel.c b/src/r6xx_accel.c
index c0be4d53..a0695303 100644
--- a/src/r6xx_accel.c
+++ b/src/r6xx_accel.c
@@ -109,6 +109,10 @@ void R600IBDiscard(ScrnInfoPtr pScrn, drmBufPtr ib)
ret = radeon_cs_space_check(info->cs);
if (ret)
ErrorF("space check failed in flush\n");
+ if (info->dri2.enabled) {
+ info->accel_state->XInited3D = FALSE;
+ info->accel_state->engineMode = EXA_ENGINEMODE_UNKNOWN;
+ }
}
#endif
if (!ib) return;