Browse Source

i965: Set the state base address on Sandybridge.

tags/7.8-rc1
Eric Anholt 15 years ago
parent
commit
a38096aa94

+ 14
- 1
src/mesa/drivers/dri/i965/brw_misc_state.c View File

@@ -559,7 +559,20 @@ static void upload_state_base_address( struct brw_context *brw )
/* Output the structure (brw_state_base_address) directly to the
* batchbuffer, so we can emit relocations inline.
*/
if (intel->is_ironlake) {
if (intel->gen >= 6) {
BEGIN_BATCH(10);
OUT_BATCH(CMD_STATE_BASE_ADDRESS << 16 | (10 - 2));
OUT_BATCH(1); /* General state base address */
OUT_BATCH(1); /* Surface state base address */
OUT_BATCH(1); /* Dynamic state base address */
OUT_BATCH(1); /* Indirect object base address */
OUT_BATCH(1); /* Instruction base address */
OUT_BATCH(1); /* General state upper bound */
OUT_BATCH(1); /* Dynamic state upper bound */
OUT_BATCH(1); /* Indirect object upper bound */
OUT_BATCH(1); /* Instruction access upper bound */
ADVANCE_BATCH();
} else if (intel->is_ironlake) {
BEGIN_BATCH(8);
OUT_BATCH(CMD_STATE_BASE_ADDRESS << 16 | (8 - 2));
OUT_BATCH(1); /* General state base address */

+ 3
- 0
src/mesa/drivers/dri/i965/brw_state_upload.c View File

@@ -145,8 +145,11 @@ const struct brw_tracked_state *gen6_atoms[] =
/* Command packets:
*/
&brw_invarient_state,
#endif

&brw_state_base_address,

#if 0
&brw_binding_table_pointers,
&brw_blend_constant_color,
#endif

Loading…
Cancel
Save