Mesa (master): i965/gen6: Add a spec citation about push constant packet requirements.

Kenneth Graunke kwg at kemper.freedesktop.org
Wed Jul 2 19:46:29 UTC 2014


Module: Mesa
Branch: master
Commit: 6ded75ed08aed8a88b638c664efbfe14e0476f37
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=6ded75ed08aed8a88b638c664efbfe14e0476f37

Author: Eric Anholt <eric at anholt.net>
Date:   Wed May 21 14:31:31 2014 -0700

i965/gen6: Add a spec citation about push constant packet requirements.

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>

---

 src/mesa/drivers/dri/i965/gen6_wm_state.c |    9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/mesa/drivers/dri/i965/gen6_wm_state.c b/src/mesa/drivers/dri/i965/gen6_wm_state.c
index db0e3aa..047e036 100644
--- a/src/mesa/drivers/dri/i965/gen6_wm_state.c
+++ b/src/mesa/drivers/dri/i965/gen6_wm_state.c
@@ -76,7 +76,14 @@ upload_wm_state(struct brw_context *brw)
    /* _NEW_BUFFERS */
    bool multisampled_fbo = ctx->DrawBuffer->Visual.samples > 1;
 
-    /* CACHE_NEW_WM_PROG */
+   /* CACHE_NEW_WM_PROG
+    *
+    * We can't fold this into gen6_upload_wm_push_constants(), because
+    * according to the SNB PRM, vol 2 part 1 section 7.2.2
+    * (3DSTATE_CONSTANT_PS [DevSNB]):
+    *
+    *     "[DevSNB]: This packet must be followed by WM_STATE."
+    */
    if (brw->wm.prog_data->base.nr_params == 0) {
       /* Disable the push constant buffers. */
       BEGIN_BATCH(5);




More information about the mesa-commit mailing list