[Intel-gfx] [PATCH 05/11] i965: setup system routine
Eric Anholt
eric at anholt.net
Sat Jun 25 02:39:33 CEST 2011
On Fri, 24 Jun 2011 12:42:50 -0700, Ben Widawsky <ben at bwidawsk.net> wrote:
> Upload the system routine as part of the invariant state if debugging.
>
> Remove SIP setting if not debugging to make it more friendly for others
> that may be debugging shaders or media kernels.
Instructions are from an offset of the brw->cache.bo these days. So
you'd need to load the program data into there, and be careful to retain
the SIP when brw_clear_cache() is called.
> Signed-off-by: Ben Widawsky <ben at bwidawsk.net>
> ---
> src/mesa/drivers/dri/i965/brw_misc_state.c | 24 +++++++++++-------------
> 1 files changed, 11 insertions(+), 13 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_misc_state.c b/src/mesa/drivers/dri/i965/brw_misc_state.c
> index 1f3b64f..2465bc0 100644
> --- a/src/mesa/drivers/dri/i965/brw_misc_state.c
> +++ b/src/mesa/drivers/dri/i965/brw_misc_state.c
> @@ -633,19 +633,17 @@ static void upload_invarient_state( struct brw_context *brw )
> }
> }
> }
> -
> - /* 0x61020000 State Instruction Pointer */
> - {
> - struct brw_system_instruction_pointer sip;
> - memset(&sip, 0, sizeof(sip));
> -
> - sip.header.opcode = CMD_STATE_INSN_POINTER;
> - sip.header.length = 0;
> - sip.bits0.pad = 0;
> - sip.bits0.system_instruction_pointer = 0;
> - BRW_BATCH_STRUCT(brw, &sip);
> - }
> -
> + /* The system routine must be set after a change to Instruction base */
> + if (brw->wm.debugging) {
> + assert(brw->wm.system_routine != NULL);
> + /* assert instruction base == 0 */
> + BEGIN_BATCH(4);
> + OUT_BATCH(CMD_STATE_INSN_POINTER << 16);
> + OUT_RELOC(brw->wm.system_routine, I915_GEM_DOMAIN_RENDER, 0, 0);
> + OUT_BATCH(MI_FLUSH | 1 << 1);
> + OUT_BATCH(MI_NOOP);
> + ADVANCE_BATCH();
> + }
>
> {
> struct brw_vf_statistics vfs;
> --
> 1.7.5.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/intel-gfx/attachments/20110624/8a481097/attachment.sig>
More information about the Intel-gfx
mailing list