i965/skl: Force a BINDING_TABLE_POINTER_* after push constant command
According to the SKL bspec the 3DSTATE_CONSTANT_* commands only take effect on the next corresponding 3DSTATE_BINDING_TABLE_POINTER_* command. This patch just makes it set the BRW_NEW_SURFACES state when uploading the push constants to ensure the binding tables will be updated. This fixes the fbo-blending-formats Piglit test and possibly others. Reviewed-by: Kristian Høgsberg <krh@bitplanet.net> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
@@ -60,6 +60,13 @@ gen7_upload_constant_state(struct brw_context *brw,
|
||||
}
|
||||
|
||||
ADVANCE_BATCH();
|
||||
|
||||
/* On SKL+ the new constants don't take effect until the next corresponding
|
||||
* 3DSTATE_BINDING_TABLE_POINTER_* command is parsed so we need to ensure
|
||||
* that is sent
|
||||
*/
|
||||
if (brw->gen >= 9)
|
||||
brw->state.dirty.brw |= BRW_NEW_SURFACES;
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user