diff options
Diffstat (limited to 'src/mesa/pipe/i915simple/i915_context.h')
-rw-r--r-- | src/mesa/pipe/i915simple/i915_context.h | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/src/mesa/pipe/i915simple/i915_context.h b/src/mesa/pipe/i915simple/i915_context.h index a037b20289..849c3b0efc 100644 --- a/src/mesa/pipe/i915simple/i915_context.h +++ b/src/mesa/pipe/i915simple/i915_context.h @@ -76,6 +76,32 @@ #define I915_MAX_CONSTANT 32 + +/** + * New vertex format stuff... + */ +#define MAX_VERT_ATTRIBS 12 /* OK? */ + +#define FORMAT_OMIT 0 +#define FORMAT_1F 1 +#define FORMAT_2F 2 +#define FORMAT_3F 3 +#define FORMAT_4F 4 +#define FORMAT_4UB 5 + +struct vertex_info +{ + uint num_attribs; + uint hwfmt[2]; /** hardware format info for this format */ + uint attr_mask; /** mask of VF_ATTR_ bits */ + uint slot_to_attrib[MAX_VERT_ATTRIBS]; + uint interp_mode[MAX_VERT_ATTRIBS]; + uint format[MAX_VERT_ATTRIBS]; /**< FORMAT_x */ +}; + + + + struct i915_cache_context; /* Use to calculate differences between state emitted to hardware and @@ -95,10 +121,17 @@ struct i915_state uint *program; uint program_len; + /* texture sampler state */ unsigned sampler[I915_TEX_UNITS][3]; unsigned sampler_enable_flags; unsigned sampler_enable_nr; - + + /* texture image buffers */ + unsigned texbuffer[I915_TEX_UNITS][2]; + + /* vertex format registers */ + struct vertex_info vertex_info; + unsigned id; /* track lost context events */ }; |