i965: Create a hardware context before initializing state module.
brw_init_state() calls brw_upload_initial_gpu_state(). If hardware contexts are enabled (brw->hw_ctx != NULL), this will upload some initial invariant state for the GPU. Without hardware contexts, we rely on this state being uploaded via atoms that subscribe to the BRW_NEW_CONTEXT bit. Commit46d3c2bf4d
accidentally moved the call to brw_init_state() before creating a hardware context. This meant brw_upload_initial_gpu_state would always early return. Except on Gen6+, we stopped uploading the initial GPU state via state atoms, so it never happened. Fixes a regression since46d3c2bf4d
. Cc: "10.0 10.1" <mesa-stable@lists.freedesktop.org> Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
e3823147a5
commit
3663bbe773
|
@ -700,12 +700,6 @@ brwCreateContext(gl_api api,
|
|||
|
||||
intel_batchbuffer_init(brw);
|
||||
|
||||
brw_init_state(brw);
|
||||
|
||||
intelInitExtensions(ctx);
|
||||
|
||||
intel_fbo_init(brw);
|
||||
|
||||
if (brw->gen >= 6) {
|
||||
/* Create a new hardware context. Using a hardware context means that
|
||||
* our GPU state will be saved/restored on context switch, allowing us
|
||||
|
@ -723,6 +717,12 @@ brwCreateContext(gl_api api,
|
|||
}
|
||||
}
|
||||
|
||||
brw_init_state(brw);
|
||||
|
||||
intelInitExtensions(ctx);
|
||||
|
||||
intel_fbo_init(brw);
|
||||
|
||||
brw_init_surface_formats(brw);
|
||||
|
||||
if (brw->is_g4x || brw->gen >= 5) {
|
||||
|
|
Loading…
Reference in New Issue