Move gen5 blitter work-around to lib

Suggested by Chris Wilson to prevent utterly strange gpu hangs.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
This commit is contained in:
Daniel Vetter
2011-03-25 22:09:28 +01:00
parent bfa6f5d94f
commit ad515f817a
2 changed files with 9 additions and 14 deletions
+9
View File
@@ -72,6 +72,8 @@ intel_batchbuffer_free(struct intel_batchbuffer *batch)
free(batch);
}
#define CMD_POLY_STIPPLE_OFFSET 0x7906
void
intel_batchbuffer_flush(struct intel_batchbuffer *batch)
{
@@ -82,6 +84,13 @@ intel_batchbuffer_flush(struct intel_batchbuffer *batch)
if (used == 0)
return;
if (IS_GEN5(batch->devid)) {
BEGIN_BATCH(2);
OUT_BATCH(CMD_POLY_STIPPLE_OFFSET << 16);
OUT_BATCH(0);
ADVANCE_BATCH();
}
/* Round batchbuffer usage to 2 DWORDs. */
if ((used & 4) == 0) {
*(uint32_t *) (batch->ptr) = 0; /* noop */