Mesa (master): winsys/radeon: use type-3 NOPs for CS padding on CIK
Marek Olšák
mareko at kemper.freedesktop.org
Mon Nov 4 18:11:06 UTC 2013
Module: Mesa
Branch: master
Commit: 5e438194757fb7e013ea039dfddd75ae469d8164
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5e438194757fb7e013ea039dfddd75ae469d8164
Author: Marek Olšák <marek.olsak at amd.com>
Date: Wed Oct 30 00:22:01 2013 +0100
winsys/radeon: use type-3 NOPs for CS padding on CIK
The type-2 NOPs are said to be unstable. It doesn't make a difference here.
---
src/gallium/winsys/radeon/drm/radeon_drm_cs.c | 9 +++++++--
1 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c
index e5723a5..acb12b2 100644
--- a/src/gallium/winsys/radeon/drm/radeon_drm_cs.c
+++ b/src/gallium/winsys/radeon/drm/radeon_drm_cs.c
@@ -491,8 +491,13 @@ static void radeon_drm_cs_flush(struct radeon_winsys_cs *rcs, unsigned flags, ui
OUT_CS(&cs->base, 0xffff1000); /* type3 nop packet */
}
} else {
- while (rcs->cdw & 7)
- OUT_CS(&cs->base, 0x80000000); /* type2 nop packet */
+ if (cs->ws->info.chip_class <= SI) {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0x80000000); /* type2 nop packet */
+ } else {
+ while (rcs->cdw & 7)
+ OUT_CS(&cs->base, 0xffff1000); /* type3 nop packet */
+ }
}
break;
case RING_UVD:
More information about the mesa-commit
mailing list