i965/gen10+: Initialize new fields in STATE_BASE_ADDRESS
authorJordan Justen <jordan.l.justen@intel.com>
Wed, 10 Oct 2018 09:31:00 +0000 (02:31 -0700)
committerJordan Justen <jordan.l.justen@intel.com>
Thu, 11 Oct 2018 22:16:04 +0000 (15:16 -0700)
Ref: 263b584d5e4 "i965/skl: Emit extra zeros in STATE_BASE_ADDRESS on Skylake."
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Rafael Antognolli <rafael.antognolli@intel.com>
src/mesa/drivers/dri/i965/brw_misc_state.c

index 0895e1f2b7f02de0aafcfb2394494fcb92e2b673..9bff2c8ac923ead2e208e68954199e4ea710ff75 100644 (file)
@@ -688,7 +688,7 @@ brw_upload_state_base_address(struct brw_context *brw)
        * to the bottom 4GB.
        */
       uint32_t mocs_wb = devinfo->gen >= 9 ? SKL_MOCS_WB : BDW_MOCS_WB;
-      int pkt_len = devinfo->gen >= 9 ? 19 : 16;
+      int pkt_len = devinfo->gen >= 10 ? 22 : (devinfo->gen >= 9 ? 19 : 16);
 
       BEGIN_BATCH(pkt_len);
       OUT_BATCH(CMD_STATE_BASE_ADDRESS << 16 | (pkt_len - 2));
@@ -718,6 +718,11 @@ brw_upload_state_base_address(struct brw_context *brw)
          OUT_BATCH(0);
          OUT_BATCH(0);
       }
+      if (devinfo->gen >= 10) {
+         OUT_BATCH(1);
+         OUT_BATCH(0);
+         OUT_BATCH(0);
+      }
       ADVANCE_BATCH();
    } else if (devinfo->gen >= 6) {
       uint8_t mocs = devinfo->gen == 7 ? GEN7_MOCS_L3 : 0;