1428d7b3dSmrg /************************************************************************** 2428d7b3dSmrg * 3428d7b3dSmrg * Copyright 2005 Tungsten Graphics, Inc., Cedar Park, Texas. 4428d7b3dSmrg * All Rights Reserved. 5428d7b3dSmrg * 6428d7b3dSmrg * Permission is hereby granted, free of charge, to any person obtaining a 7428d7b3dSmrg * copy of this software and associated documentation files (the 8428d7b3dSmrg * "Software"), to deal in the Software without restriction, including 9428d7b3dSmrg * without limitation the rights to use, copy, modify, merge, publish, 10428d7b3dSmrg * distribute, sub license, and/or sell copies of the Software, and to 11428d7b3dSmrg * permit persons to whom the Software is furnished to do so, subject to 12428d7b3dSmrg * the following conditions: 13428d7b3dSmrg * 14428d7b3dSmrg * The above copyright notice and this permission notice (including the 15428d7b3dSmrg * next paragraph) shall be included in all copies or substantial portions 16428d7b3dSmrg * of the Software. 17428d7b3dSmrg * 18428d7b3dSmrg * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 19428d7b3dSmrg * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20428d7b3dSmrg * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 21428d7b3dSmrg * IN NO EVENT SHALL TUNGSTEN GRAPHICS AND/OR ITS SUPPLIERS BE LIABLE FOR 22428d7b3dSmrg * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23428d7b3dSmrg * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24428d7b3dSmrg * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 25428d7b3dSmrg * 26428d7b3dSmrg **************************************************************************/ 27428d7b3dSmrg 28428d7b3dSmrg#ifndef BRW_DEFINES_H 29428d7b3dSmrg#define BRW_DEFINES_H 30428d7b3dSmrg 31428d7b3dSmrg/* 32428d7b3dSmrg */ 33428d7b3dSmrg#if 0 34428d7b3dSmrg#define MI_NOOP 0x00 35428d7b3dSmrg#define MI_USER_INTERRUPT 0x02 36428d7b3dSmrg#define MI_WAIT_FOR_EVENT 0x03 37428d7b3dSmrg#define MI_FLUSH 0x04 38428d7b3dSmrg#define MI_REPORT_HEAD 0x07 39428d7b3dSmrg#define MI_ARB_ON_OFF 0x08 40428d7b3dSmrg#define MI_BATCH_BUFFER_END 0x0A 41428d7b3dSmrg#define MI_OVERLAY_FLIP 0x11 42428d7b3dSmrg#define MI_LOAD_SCAN_LINES_INCL 0x12 43428d7b3dSmrg#define MI_LOAD_SCAN_LINES_EXCL 0x13 44428d7b3dSmrg#define MI_DISPLAY_BUFFER_INFO 0x14 45428d7b3dSmrg#define MI_SET_CONTEXT 0x18 46428d7b3dSmrg#define MI_STORE_DATA_IMM 0x20 47428d7b3dSmrg#define MI_STORE_DATA_INDEX 0x21 48428d7b3dSmrg#define MI_LOAD_REGISTER_IMM 0x22 49428d7b3dSmrg#define MI_STORE_REGISTER_MEM 0x24 50428d7b3dSmrg#define MI_BATCH_BUFFER_START 0x31 51428d7b3dSmrg 52428d7b3dSmrg#define MI_SYNCHRONOUS_FLIP 0x0 53428d7b3dSmrg#define MI_ASYNCHRONOUS_FLIP 0x1 54428d7b3dSmrg 55428d7b3dSmrg#define MI_BUFFER_SECURE 0x0 56428d7b3dSmrg#define MI_BUFFER_NONSECURE 0x1 57428d7b3dSmrg 58428d7b3dSmrg#define MI_ARBITRATE_AT_CHAIN_POINTS 0x0 59428d7b3dSmrg#define MI_ARBITRATE_BETWEEN_INSTS 0x1 60428d7b3dSmrg#define MI_NO_ARBITRATION 0x3 61428d7b3dSmrg 62428d7b3dSmrg#define MI_CONDITION_CODE_WAIT_DISABLED 0x0 63428d7b3dSmrg#define MI_CONDITION_CODE_WAIT_0 0x1 64428d7b3dSmrg#define MI_CONDITION_CODE_WAIT_1 0x2 65428d7b3dSmrg#define MI_CONDITION_CODE_WAIT_2 0x3 66428d7b3dSmrg#define MI_CONDITION_CODE_WAIT_3 0x4 67428d7b3dSmrg#define MI_CONDITION_CODE_WAIT_4 0x5 68428d7b3dSmrg 69428d7b3dSmrg#define MI_DISPLAY_PIPE_A 0x0 70428d7b3dSmrg#define MI_DISPLAY_PIPE_B 0x1 71428d7b3dSmrg 72428d7b3dSmrg#define MI_DISPLAY_PLANE_A 0x0 73428d7b3dSmrg#define MI_DISPLAY_PLANE_B 0x1 74428d7b3dSmrg#define MI_DISPLAY_PLANE_C 0x2 75428d7b3dSmrg 76428d7b3dSmrg#define MI_STANDARD_FLIP 0x0 77428d7b3dSmrg#define MI_ENQUEUE_FLIP_PERFORM_BASE_FRAME_NUMBER_LOAD 0x1 78428d7b3dSmrg#define MI_ENQUEUE_FLIP_TARGET_FRAME_NUMBER_RELATIVE 0x2 79428d7b3dSmrg#define MI_ENQUEUE_FLIP_ABSOLUTE_TARGET_FRAME_NUMBER 0x3 80428d7b3dSmrg 81428d7b3dSmrg#define MI_PHYSICAL_ADDRESS 0x0 82428d7b3dSmrg#define MI_VIRTUAL_ADDRESS 0x1 83428d7b3dSmrg 84428d7b3dSmrg#define MI_BUFFER_MEMORY_MAIN 0x0 85428d7b3dSmrg#define MI_BUFFER_MEMORY_GTT 0x2 86428d7b3dSmrg#define MI_BUFFER_MEMORY_PER_PROCESS_GTT 0x3 87428d7b3dSmrg 88428d7b3dSmrg#define MI_FLIP_CONTINUE 0x0 89428d7b3dSmrg#define MI_FLIP_ON 0x1 90428d7b3dSmrg#define MI_FLIP_OFF 0x2 91428d7b3dSmrg 92428d7b3dSmrg#define MI_UNTRUSTED_REGISTER_SPACE 0x0 93428d7b3dSmrg#define MI_TRUSTED_REGISTER_SPACE 0x1 94428d7b3dSmrg#endif 95428d7b3dSmrg 96428d7b3dSmrg/* 3D state: 97428d7b3dSmrg */ 98428d7b3dSmrg#define _3DOP_3DSTATE_PIPELINED 0x0 99428d7b3dSmrg#define _3DOP_3DSTATE_NONPIPELINED 0x1 100428d7b3dSmrg#define _3DOP_3DCONTROL 0x2 101428d7b3dSmrg#define _3DOP_3DPRIMITIVE 0x3 102428d7b3dSmrg 103428d7b3dSmrg#define _3DSTATE_PIPELINED_POINTERS 0x00 104428d7b3dSmrg#define _3DSTATE_BINDING_TABLE_POINTERS 0x01 105428d7b3dSmrg#define _3DSTATE_VERTEX_BUFFERS 0x08 106428d7b3dSmrg#define _3DSTATE_VERTEX_ELEMENTS 0x09 107428d7b3dSmrg#define _3DSTATE_INDEX_BUFFER 0x0A 108428d7b3dSmrg#define _3DSTATE_VF_STATISTICS 0x0B 109428d7b3dSmrg#define _3DSTATE_DRAWING_RECTANGLE 0x00 110428d7b3dSmrg#define _3DSTATE_CONSTANT_COLOR 0x01 111428d7b3dSmrg#define _3DSTATE_SAMPLER_PALETTE_LOAD 0x02 112428d7b3dSmrg#define _3DSTATE_CHROMA_KEY 0x04 113428d7b3dSmrg#define _3DSTATE_DEPTH_BUFFER 0x05 114428d7b3dSmrg#define _3DSTATE_POLY_STIPPLE_OFFSET 0x06 115428d7b3dSmrg#define _3DSTATE_POLY_STIPPLE_PATTERN 0x07 116428d7b3dSmrg#define _3DSTATE_LINE_STIPPLE 0x08 117428d7b3dSmrg#define _3DSTATE_GLOBAL_DEPTH_OFFSET_CLAMP 0x09 118428d7b3dSmrg#define _3DCONTROL 0x00 119428d7b3dSmrg#define _3DPRIMITIVE 0x00 120428d7b3dSmrg 121428d7b3dSmrg#define PIPE_CONTROL_NOWRITE 0x00 122428d7b3dSmrg#define PIPE_CONTROL_WRITEIMMEDIATE 0x01 123428d7b3dSmrg#define PIPE_CONTROL_WRITEDEPTH 0x02 124428d7b3dSmrg#define PIPE_CONTROL_WRITETIMESTAMP 0x03 125428d7b3dSmrg 126428d7b3dSmrg#define PIPE_CONTROL_GTTWRITE_PROCESS_LOCAL 0x00 127428d7b3dSmrg#define PIPE_CONTROL_GTTWRITE_GLOBAL 0x01 128428d7b3dSmrg 129428d7b3dSmrg#define _3DPRIM_POINTLIST 0x01 130428d7b3dSmrg#define _3DPRIM_LINELIST 0x02 131428d7b3dSmrg#define _3DPRIM_LINESTRIP 0x03 132428d7b3dSmrg#define _3DPRIM_TRILIST 0x04 133428d7b3dSmrg#define _3DPRIM_TRISTRIP 0x05 134428d7b3dSmrg#define _3DPRIM_TRIFAN 0x06 135428d7b3dSmrg#define _3DPRIM_QUADLIST 0x07 136428d7b3dSmrg#define _3DPRIM_QUADSTRIP 0x08 137428d7b3dSmrg#define _3DPRIM_LINELIST_ADJ 0x09 138428d7b3dSmrg#define _3DPRIM_LINESTRIP_ADJ 0x0A 139428d7b3dSmrg#define _3DPRIM_TRILIST_ADJ 0x0B 140428d7b3dSmrg#define _3DPRIM_TRISTRIP_ADJ 0x0C 141428d7b3dSmrg#define _3DPRIM_TRISTRIP_REVERSE 0x0D 142428d7b3dSmrg#define _3DPRIM_POLYGON 0x0E 143428d7b3dSmrg#define _3DPRIM_RECTLIST 0x0F 144428d7b3dSmrg#define _3DPRIM_LINELOOP 0x10 145428d7b3dSmrg#define _3DPRIM_POINTLIST_BF 0x11 146428d7b3dSmrg#define _3DPRIM_LINESTRIP_CONT 0x12 147428d7b3dSmrg#define _3DPRIM_LINESTRIP_BF 0x13 148428d7b3dSmrg#define _3DPRIM_LINESTRIP_CONT_BF 0x14 149428d7b3dSmrg#define _3DPRIM_TRIFAN_NOSTIPPLE 0x15 150428d7b3dSmrg 151428d7b3dSmrg#define _3DPRIM_VERTEXBUFFER_ACCESS_SEQUENTIAL 0 152428d7b3dSmrg#define _3DPRIM_VERTEXBUFFER_ACCESS_RANDOM 1 153428d7b3dSmrg 154428d7b3dSmrg#define BRW_ANISORATIO_2 0 155428d7b3dSmrg#define BRW_ANISORATIO_4 1 156428d7b3dSmrg#define BRW_ANISORATIO_6 2 157428d7b3dSmrg#define BRW_ANISORATIO_8 3 158428d7b3dSmrg#define BRW_ANISORATIO_10 4 159428d7b3dSmrg#define BRW_ANISORATIO_12 5 160428d7b3dSmrg#define BRW_ANISORATIO_14 6 161428d7b3dSmrg#define BRW_ANISORATIO_16 7 162428d7b3dSmrg 163428d7b3dSmrg#define BRW_BLENDFACTOR_ONE 0x1 164428d7b3dSmrg#define BRW_BLENDFACTOR_SRC_COLOR 0x2 165428d7b3dSmrg#define BRW_BLENDFACTOR_SRC_ALPHA 0x3 166428d7b3dSmrg#define BRW_BLENDFACTOR_DST_ALPHA 0x4 167428d7b3dSmrg#define BRW_BLENDFACTOR_DST_COLOR 0x5 168428d7b3dSmrg#define BRW_BLENDFACTOR_SRC_ALPHA_SATURATE 0x6 169428d7b3dSmrg#define BRW_BLENDFACTOR_CONST_COLOR 0x7 170428d7b3dSmrg#define BRW_BLENDFACTOR_CONST_ALPHA 0x8 171428d7b3dSmrg#define BRW_BLENDFACTOR_SRC1_COLOR 0x9 172428d7b3dSmrg#define BRW_BLENDFACTOR_SRC1_ALPHA 0x0A 173428d7b3dSmrg#define BRW_BLENDFACTOR_ZERO 0x11 174428d7b3dSmrg#define BRW_BLENDFACTOR_INV_SRC_COLOR 0x12 175428d7b3dSmrg#define BRW_BLENDFACTOR_INV_SRC_ALPHA 0x13 176428d7b3dSmrg#define BRW_BLENDFACTOR_INV_DST_ALPHA 0x14 177428d7b3dSmrg#define BRW_BLENDFACTOR_INV_DST_COLOR 0x15 178428d7b3dSmrg#define BRW_BLENDFACTOR_INV_CONST_COLOR 0x17 179428d7b3dSmrg#define BRW_BLENDFACTOR_INV_CONST_ALPHA 0x18 180428d7b3dSmrg#define BRW_BLENDFACTOR_INV_SRC1_COLOR 0x19 181428d7b3dSmrg#define BRW_BLENDFACTOR_INV_SRC1_ALPHA 0x1A 182428d7b3dSmrg 183428d7b3dSmrg#define BRW_BLENDFUNCTION_ADD 0 184428d7b3dSmrg#define BRW_BLENDFUNCTION_SUBTRACT 1 185428d7b3dSmrg#define BRW_BLENDFUNCTION_REVERSE_SUBTRACT 2 186428d7b3dSmrg#define BRW_BLENDFUNCTION_MIN 3 187428d7b3dSmrg#define BRW_BLENDFUNCTION_MAX 4 188428d7b3dSmrg 189428d7b3dSmrg#define BRW_ALPHATEST_FORMAT_UNORM8 0 190428d7b3dSmrg#define BRW_ALPHATEST_FORMAT_FLOAT32 1 191428d7b3dSmrg 192428d7b3dSmrg#define BRW_CHROMAKEY_KILL_ON_ANY_MATCH 0 193428d7b3dSmrg#define BRW_CHROMAKEY_REPLACE_BLACK 1 194428d7b3dSmrg 195428d7b3dSmrg#define BRW_CLIP_API_OGL 0 196428d7b3dSmrg#define BRW_CLIP_API_DX 1 197428d7b3dSmrg 198428d7b3dSmrg#define BRW_CLIPMODE_NORMAL 0 199428d7b3dSmrg#define BRW_CLIPMODE_CLIP_ALL 1 200428d7b3dSmrg#define BRW_CLIPMODE_CLIP_NON_REJECTED 2 201428d7b3dSmrg#define BRW_CLIPMODE_REJECT_ALL 3 202428d7b3dSmrg#define BRW_CLIPMODE_ACCEPT_ALL 4 203428d7b3dSmrg 204428d7b3dSmrg#define BRW_CLIP_NDCSPACE 0 205428d7b3dSmrg#define BRW_CLIP_SCREENSPACE 1 206428d7b3dSmrg 207428d7b3dSmrg#define BRW_COMPAREFUNCTION_ALWAYS 0 208428d7b3dSmrg#define BRW_COMPAREFUNCTION_NEVER 1 209428d7b3dSmrg#define BRW_COMPAREFUNCTION_LESS 2 210428d7b3dSmrg#define BRW_COMPAREFUNCTION_EQUAL 3 211428d7b3dSmrg#define BRW_COMPAREFUNCTION_LEQUAL 4 212428d7b3dSmrg#define BRW_COMPAREFUNCTION_GREATER 5 213428d7b3dSmrg#define BRW_COMPAREFUNCTION_NOTEQUAL 6 214428d7b3dSmrg#define BRW_COMPAREFUNCTION_GEQUAL 7 215428d7b3dSmrg 216428d7b3dSmrg#define BRW_COVERAGE_PIXELS_HALF 0 217428d7b3dSmrg#define BRW_COVERAGE_PIXELS_1 1 218428d7b3dSmrg#define BRW_COVERAGE_PIXELS_2 2 219428d7b3dSmrg#define BRW_COVERAGE_PIXELS_4 3 220428d7b3dSmrg 221428d7b3dSmrg#define BRW_CULLMODE_BOTH 0 222428d7b3dSmrg#define BRW_CULLMODE_NONE 1 223428d7b3dSmrg#define BRW_CULLMODE_FRONT 2 224428d7b3dSmrg#define BRW_CULLMODE_BACK 3 225428d7b3dSmrg 226428d7b3dSmrg#define BRW_DEFAULTCOLOR_R8G8B8A8_UNORM 0 227428d7b3dSmrg#define BRW_DEFAULTCOLOR_R32G32B32A32_FLOAT 1 228428d7b3dSmrg 229428d7b3dSmrg#define BRW_DEPTHFORMAT_D32_FLOAT_S8X24_UINT 0 230428d7b3dSmrg#define BRW_DEPTHFORMAT_D32_FLOAT 1 231428d7b3dSmrg#define BRW_DEPTHFORMAT_D24_UNORM_S8_UINT 2 232428d7b3dSmrg#define BRW_DEPTHFORMAT_D16_UNORM 5 233428d7b3dSmrg 234428d7b3dSmrg#define BRW_FLOATING_POINT_IEEE_754 0 235428d7b3dSmrg#define BRW_FLOATING_POINT_NON_IEEE_754 1 236428d7b3dSmrg 237428d7b3dSmrg#define BRW_FRONTWINDING_CW 0 238428d7b3dSmrg#define BRW_FRONTWINDING_CCW 1 239428d7b3dSmrg 240428d7b3dSmrg#define BRW_INDEX_BYTE 0 241428d7b3dSmrg#define BRW_INDEX_WORD 1 242428d7b3dSmrg#define BRW_INDEX_DWORD 2 243428d7b3dSmrg 244428d7b3dSmrg#define BRW_LOGICOPFUNCTION_CLEAR 0 245428d7b3dSmrg#define BRW_LOGICOPFUNCTION_NOR 1 246428d7b3dSmrg#define BRW_LOGICOPFUNCTION_AND_INVERTED 2 247428d7b3dSmrg#define BRW_LOGICOPFUNCTION_COPY_INVERTED 3 248428d7b3dSmrg#define BRW_LOGICOPFUNCTION_AND_REVERSE 4 249428d7b3dSmrg#define BRW_LOGICOPFUNCTION_INVERT 5 250428d7b3dSmrg#define BRW_LOGICOPFUNCTION_XOR 6 251428d7b3dSmrg#define BRW_LOGICOPFUNCTION_NAND 7 252428d7b3dSmrg#define BRW_LOGICOPFUNCTION_AND 8 253428d7b3dSmrg#define BRW_LOGICOPFUNCTION_EQUIV 9 254428d7b3dSmrg#define BRW_LOGICOPFUNCTION_NOOP 10 255428d7b3dSmrg#define BRW_LOGICOPFUNCTION_OR_INVERTED 11 256428d7b3dSmrg#define BRW_LOGICOPFUNCTION_COPY 12 257428d7b3dSmrg#define BRW_LOGICOPFUNCTION_OR_REVERSE 13 258428d7b3dSmrg#define BRW_LOGICOPFUNCTION_OR 14 259428d7b3dSmrg#define BRW_LOGICOPFUNCTION_SET 15 260428d7b3dSmrg 261428d7b3dSmrg#define BRW_MAPFILTER_NEAREST 0x0 262428d7b3dSmrg#define BRW_MAPFILTER_LINEAR 0x1 263428d7b3dSmrg#define BRW_MAPFILTER_ANISOTROPIC 0x2 264428d7b3dSmrg 265428d7b3dSmrg#define BRW_MIPFILTER_NONE 0 266428d7b3dSmrg#define BRW_MIPFILTER_NEAREST 1 267428d7b3dSmrg#define BRW_MIPFILTER_LINEAR 3 268428d7b3dSmrg 269428d7b3dSmrg#define BRW_POLYGON_FRONT_FACING 0 270428d7b3dSmrg#define BRW_POLYGON_BACK_FACING 1 271428d7b3dSmrg 272428d7b3dSmrg#define BRW_PREFILTER_ALWAYS 0x0 273428d7b3dSmrg#define BRW_PREFILTER_NEVER 0x1 274428d7b3dSmrg#define BRW_PREFILTER_LESS 0x2 275428d7b3dSmrg#define BRW_PREFILTER_EQUAL 0x3 276428d7b3dSmrg#define BRW_PREFILTER_LEQUAL 0x4 277428d7b3dSmrg#define BRW_PREFILTER_GREATER 0x5 278428d7b3dSmrg#define BRW_PREFILTER_NOTEQUAL 0x6 279428d7b3dSmrg#define BRW_PREFILTER_GEQUAL 0x7 280428d7b3dSmrg 281428d7b3dSmrg#define BRW_PROVOKING_VERTEX_0 0 282428d7b3dSmrg#define BRW_PROVOKING_VERTEX_1 1 283428d7b3dSmrg#define BRW_PROVOKING_VERTEX_2 2 284428d7b3dSmrg 285428d7b3dSmrg#define BRW_RASTRULE_UPPER_LEFT 0 286428d7b3dSmrg#define BRW_RASTRULE_UPPER_RIGHT 1 287428d7b3dSmrg 288428d7b3dSmrg#define BRW_RENDERTARGET_CLAMPRANGE_UNORM 0 289428d7b3dSmrg#define BRW_RENDERTARGET_CLAMPRANGE_SNORM 1 290428d7b3dSmrg#define BRW_RENDERTARGET_CLAMPRANGE_FORMAT 2 291428d7b3dSmrg 292428d7b3dSmrg#define BRW_STENCILOP_KEEP 0 293428d7b3dSmrg#define BRW_STENCILOP_ZERO 1 294428d7b3dSmrg#define BRW_STENCILOP_REPLACE 2 295428d7b3dSmrg#define BRW_STENCILOP_INCRSAT 3 296428d7b3dSmrg#define BRW_STENCILOP_DECRSAT 4 297428d7b3dSmrg#define BRW_STENCILOP_INCR 5 298428d7b3dSmrg#define BRW_STENCILOP_DECR 6 299428d7b3dSmrg#define BRW_STENCILOP_INVERT 7 300428d7b3dSmrg 301428d7b3dSmrg#define BRW_SURFACE_MIPMAPLAYOUT_BELOW 0 302428d7b3dSmrg#define BRW_SURFACE_MIPMAPLAYOUT_RIGHT 1 303428d7b3dSmrg 304428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_FLOAT 0x000 305428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_SINT 0x001 306428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_UINT 0x002 307428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_UNORM 0x003 308428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_SNORM 0x004 309428d7b3dSmrg#define BRW_SURFACEFORMAT_R64G64_FLOAT 0x005 310428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32X32_FLOAT 0x006 311428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_SSCALED 0x007 312428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32A32_USCALED 0x008 313428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_FLOAT 0x040 314428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_SINT 0x041 315428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_UINT 0x042 316428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_UNORM 0x043 317428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_SNORM 0x044 318428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_SSCALED 0x045 319428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32B32_USCALED 0x046 320428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_UNORM 0x080 321428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_SNORM 0x081 322428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_SINT 0x082 323428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_UINT 0x083 324428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_FLOAT 0x084 325428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_FLOAT 0x085 326428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_SINT 0x086 327428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_UINT 0x087 328428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_FLOAT_X8X24_TYPELESS 0x088 329428d7b3dSmrg#define BRW_SURFACEFORMAT_X32_TYPELESS_G8X24_UINT 0x089 330428d7b3dSmrg#define BRW_SURFACEFORMAT_L32A32_FLOAT 0x08A 331428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_UNORM 0x08B 332428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_SNORM 0x08C 333428d7b3dSmrg#define BRW_SURFACEFORMAT_R64_FLOAT 0x08D 334428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16X16_UNORM 0x08E 335428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16X16_FLOAT 0x08F 336428d7b3dSmrg#define BRW_SURFACEFORMAT_A32X32_FLOAT 0x090 337428d7b3dSmrg#define BRW_SURFACEFORMAT_L32X32_FLOAT 0x091 338428d7b3dSmrg#define BRW_SURFACEFORMAT_I32X32_FLOAT 0x092 339428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_SSCALED 0x093 340428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16A16_USCALED 0x094 341428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_SSCALED 0x095 342428d7b3dSmrg#define BRW_SURFACEFORMAT_R32G32_USCALED 0x096 343428d7b3dSmrg#define BRW_SURFACEFORMAT_B8G8R8A8_UNORM 0x0C0 344428d7b3dSmrg#define BRW_SURFACEFORMAT_B8G8R8A8_UNORM_SRGB 0x0C1 345428d7b3dSmrg#define BRW_SURFACEFORMAT_R10G10B10A2_UNORM 0x0C2 346428d7b3dSmrg#define BRW_SURFACEFORMAT_R10G10B10A2_UNORM_SRGB 0x0C3 347428d7b3dSmrg#define BRW_SURFACEFORMAT_R10G10B10A2_UINT 0x0C4 348428d7b3dSmrg#define BRW_SURFACEFORMAT_R10G10B10_SNORM_A2_UNORM 0x0C5 349428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_UNORM 0x0C7 350428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_UNORM_SRGB 0x0C8 351428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_SNORM 0x0C9 352428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_SINT 0x0CA 353428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_UINT 0x0CB 354428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_UNORM 0x0CC 355428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_SNORM 0x0CD 356428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_SINT 0x0CE 357428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_UINT 0x0CF 358428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_FLOAT 0x0D0 359428d7b3dSmrg#define BRW_SURFACEFORMAT_B10G10R10A2_UNORM 0x0D1 360428d7b3dSmrg#define BRW_SURFACEFORMAT_B10G10R10A2_UNORM_SRGB 0x0D2 361428d7b3dSmrg#define BRW_SURFACEFORMAT_R11G11B10_FLOAT 0x0D3 362428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_SINT 0x0D6 363428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_UINT 0x0D7 364428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_FLOAT 0x0D8 365428d7b3dSmrg#define BRW_SURFACEFORMAT_R24_UNORM_X8_TYPELESS 0x0D9 366428d7b3dSmrg#define BRW_SURFACEFORMAT_X24_TYPELESS_G8_UINT 0x0DA 367428d7b3dSmrg#define BRW_SURFACEFORMAT_L16A16_UNORM 0x0DF 368428d7b3dSmrg#define BRW_SURFACEFORMAT_I24X8_UNORM 0x0E0 369428d7b3dSmrg#define BRW_SURFACEFORMAT_L24X8_UNORM 0x0E1 370428d7b3dSmrg#define BRW_SURFACEFORMAT_A24X8_UNORM 0x0E2 371428d7b3dSmrg#define BRW_SURFACEFORMAT_I32_FLOAT 0x0E3 372428d7b3dSmrg#define BRW_SURFACEFORMAT_L32_FLOAT 0x0E4 373428d7b3dSmrg#define BRW_SURFACEFORMAT_A32_FLOAT 0x0E5 374428d7b3dSmrg#define BRW_SURFACEFORMAT_B8G8R8X8_UNORM 0x0E9 375428d7b3dSmrg#define BRW_SURFACEFORMAT_B8G8R8X8_UNORM_SRGB 0x0EA 376428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8X8_UNORM 0x0EB 377428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8X8_UNORM_SRGB 0x0EC 378428d7b3dSmrg#define BRW_SURFACEFORMAT_R9G9B9E5_SHAREDEXP 0x0ED 379428d7b3dSmrg#define BRW_SURFACEFORMAT_B10G10R10X2_UNORM 0x0EE 380428d7b3dSmrg#define BRW_SURFACEFORMAT_L16A16_FLOAT 0x0F0 381428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_UNORM 0x0F1 382428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_SNORM 0x0F2 383428d7b3dSmrg#define BRW_SURFACEFORMAT_R10G10B10X2_USCALED 0x0F3 384428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_SSCALED 0x0F4 385428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8A8_USCALED 0x0F5 386428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_SSCALED 0x0F6 387428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16_USCALED 0x0F7 388428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_SSCALED 0x0F8 389428d7b3dSmrg#define BRW_SURFACEFORMAT_R32_USCALED 0x0F9 390428d7b3dSmrg#define BRW_SURFACEFORMAT_B5G6R5_UNORM 0x100 391428d7b3dSmrg#define BRW_SURFACEFORMAT_B5G6R5_UNORM_SRGB 0x101 392428d7b3dSmrg#define BRW_SURFACEFORMAT_B5G5R5A1_UNORM 0x102 393428d7b3dSmrg#define BRW_SURFACEFORMAT_B5G5R5A1_UNORM_SRGB 0x103 394428d7b3dSmrg#define BRW_SURFACEFORMAT_B4G4R4A4_UNORM 0x104 395428d7b3dSmrg#define BRW_SURFACEFORMAT_B4G4R4A4_UNORM_SRGB 0x105 396428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8_UNORM 0x106 397428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8_SNORM 0x107 398428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8_SINT 0x108 399428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8_UINT 0x109 400428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_UNORM 0x10A 401428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_SNORM 0x10B 402428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_SINT 0x10C 403428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_UINT 0x10D 404428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_FLOAT 0x10E 405428d7b3dSmrg#define BRW_SURFACEFORMAT_I16_UNORM 0x111 406428d7b3dSmrg#define BRW_SURFACEFORMAT_L16_UNORM 0x112 407428d7b3dSmrg#define BRW_SURFACEFORMAT_A16_UNORM 0x113 408428d7b3dSmrg#define BRW_SURFACEFORMAT_L8A8_UNORM 0x114 409428d7b3dSmrg#define BRW_SURFACEFORMAT_I16_FLOAT 0x115 410428d7b3dSmrg#define BRW_SURFACEFORMAT_L16_FLOAT 0x116 411428d7b3dSmrg#define BRW_SURFACEFORMAT_A16_FLOAT 0x117 412428d7b3dSmrg#define BRW_SURFACEFORMAT_R5G5_SNORM_B6_UNORM 0x119 413428d7b3dSmrg#define BRW_SURFACEFORMAT_B5G5R5X1_UNORM 0x11A 414428d7b3dSmrg#define BRW_SURFACEFORMAT_B5G5R5X1_UNORM_SRGB 0x11B 415428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8_SSCALED 0x11C 416428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8_USCALED 0x11D 417428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_SSCALED 0x11E 418428d7b3dSmrg#define BRW_SURFACEFORMAT_R16_USCALED 0x11F 419428d7b3dSmrg#define BRW_SURFACEFORMAT_R8_UNORM 0x140 420428d7b3dSmrg#define BRW_SURFACEFORMAT_R8_SNORM 0x141 421428d7b3dSmrg#define BRW_SURFACEFORMAT_R8_SINT 0x142 422428d7b3dSmrg#define BRW_SURFACEFORMAT_R8_UINT 0x143 423428d7b3dSmrg#define BRW_SURFACEFORMAT_A8_UNORM 0x144 424428d7b3dSmrg#define BRW_SURFACEFORMAT_I8_UNORM 0x145 425428d7b3dSmrg#define BRW_SURFACEFORMAT_L8_UNORM 0x146 426428d7b3dSmrg#define BRW_SURFACEFORMAT_P4A4_UNORM 0x147 427428d7b3dSmrg#define BRW_SURFACEFORMAT_A4P4_UNORM 0x148 428428d7b3dSmrg#define BRW_SURFACEFORMAT_R8_SSCALED 0x149 429428d7b3dSmrg#define BRW_SURFACEFORMAT_R8_USCALED 0x14A 430428d7b3dSmrg#define BRW_SURFACEFORMAT_R1_UINT 0x181 431428d7b3dSmrg#define BRW_SURFACEFORMAT_YCRCB_NORMAL 0x182 432428d7b3dSmrg#define BRW_SURFACEFORMAT_YCRCB_SWAPUVY 0x183 433428d7b3dSmrg#define BRW_SURFACEFORMAT_BC1_UNORM 0x186 434428d7b3dSmrg#define BRW_SURFACEFORMAT_BC2_UNORM 0x187 435428d7b3dSmrg#define BRW_SURFACEFORMAT_BC3_UNORM 0x188 436428d7b3dSmrg#define BRW_SURFACEFORMAT_BC4_UNORM 0x189 437428d7b3dSmrg#define BRW_SURFACEFORMAT_BC5_UNORM 0x18A 438428d7b3dSmrg#define BRW_SURFACEFORMAT_BC1_UNORM_SRGB 0x18B 439428d7b3dSmrg#define BRW_SURFACEFORMAT_BC2_UNORM_SRGB 0x18C 440428d7b3dSmrg#define BRW_SURFACEFORMAT_BC3_UNORM_SRGB 0x18D 441428d7b3dSmrg#define BRW_SURFACEFORMAT_MONO8 0x18E 442428d7b3dSmrg#define BRW_SURFACEFORMAT_YCRCB_SWAPUV 0x18F 443428d7b3dSmrg#define BRW_SURFACEFORMAT_YCRCB_SWAPY 0x190 444428d7b3dSmrg#define BRW_SURFACEFORMAT_DXT1_RGB 0x191 445428d7b3dSmrg#define BRW_SURFACEFORMAT_FXT1 0x192 446428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8_UNORM 0x193 447428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8_SNORM 0x194 448428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8_SSCALED 0x195 449428d7b3dSmrg#define BRW_SURFACEFORMAT_R8G8B8_USCALED 0x196 450428d7b3dSmrg#define BRW_SURFACEFORMAT_R64G64B64A64_FLOAT 0x197 451428d7b3dSmrg#define BRW_SURFACEFORMAT_R64G64B64_FLOAT 0x198 452428d7b3dSmrg#define BRW_SURFACEFORMAT_BC4_SNORM 0x199 453428d7b3dSmrg#define BRW_SURFACEFORMAT_BC5_SNORM 0x19A 454428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16_UNORM 0x19C 455428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16_SNORM 0x19D 456428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16_SSCALED 0x19E 457428d7b3dSmrg#define BRW_SURFACEFORMAT_R16G16B16_USCALED 0x19F 458428d7b3dSmrg 459428d7b3dSmrg#define BRW_SURFACERETURNFORMAT_FLOAT32 0 460428d7b3dSmrg#define BRW_SURFACERETURNFORMAT_S1 1 461428d7b3dSmrg 462428d7b3dSmrg#define BRW_SURFACE_1D 0 463428d7b3dSmrg#define BRW_SURFACE_2D 1 464428d7b3dSmrg#define BRW_SURFACE_3D 2 465428d7b3dSmrg#define BRW_SURFACE_CUBE 3 466428d7b3dSmrg#define BRW_SURFACE_BUFFER 4 467428d7b3dSmrg#define BRW_SURFACE_NULL 7 468428d7b3dSmrg 469428d7b3dSmrg#define BRW_BORDER_COLOR_MODE_DEFAULT 0 470428d7b3dSmrg#define BRW_BORDER_COLOR_MODE_LEGACY 1 471428d7b3dSmrg 472428d7b3dSmrg#define HSW_SCS_ZERO 0 473428d7b3dSmrg#define HSW_SCS_ONE 1 474428d7b3dSmrg#define HSW_SCS_RED 4 475428d7b3dSmrg#define HSW_SCS_GREEN 5 476428d7b3dSmrg#define HSW_SCS_BLUE 6 477428d7b3dSmrg#define HSW_SCS_ALPHA 7 478428d7b3dSmrg 479428d7b3dSmrg#define BRW_TEXCOORDMODE_WRAP 0 480428d7b3dSmrg#define BRW_TEXCOORDMODE_MIRROR 1 481428d7b3dSmrg#define BRW_TEXCOORDMODE_CLAMP 2 482428d7b3dSmrg#define BRW_TEXCOORDMODE_CUBE 3 483428d7b3dSmrg#define BRW_TEXCOORDMODE_CLAMP_BORDER 4 484428d7b3dSmrg#define BRW_TEXCOORDMODE_MIRROR_ONCE 5 485428d7b3dSmrg 486428d7b3dSmrg#define BRW_THREAD_PRIORITY_NORMAL 0 487428d7b3dSmrg#define BRW_THREAD_PRIORITY_HIGH 1 488428d7b3dSmrg 489428d7b3dSmrg#define BRW_TILEWALK_XMAJOR 0 490428d7b3dSmrg#define BRW_TILEWALK_YMAJOR 1 491428d7b3dSmrg 492428d7b3dSmrg#define BRW_VERTEX_SUBPIXEL_PRECISION_8BITS 0 493428d7b3dSmrg#define BRW_VERTEX_SUBPIXEL_PRECISION_4BITS 1 494428d7b3dSmrg 495428d7b3dSmrg#define BRW_VERTEXBUFFER_ACCESS_VERTEXDATA 0 496428d7b3dSmrg#define BRW_VERTEXBUFFER_ACCESS_INSTANCEDATA 1 497428d7b3dSmrg 498428d7b3dSmrg#define BRW_VFCOMPONENT_NOSTORE 0 499428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_SRC 1 500428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_0 2 501428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_1_FLT 3 502428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_1_INT 4 503428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_VID 5 504428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_IID 6 505428d7b3dSmrg#define BRW_VFCOMPONENT_STORE_PID 7 506428d7b3dSmrg 507428d7b3dSmrg 508428d7b3dSmrg 509428d7b3dSmrg/* Execution Unit (EU) defines 510428d7b3dSmrg */ 511428d7b3dSmrg 512428d7b3dSmrg#define BRW_ALIGN_1 0 513428d7b3dSmrg#define BRW_ALIGN_16 1 514428d7b3dSmrg 515428d7b3dSmrg#define BRW_ADDRESS_DIRECT 0 516428d7b3dSmrg#define BRW_ADDRESS_REGISTER_INDIRECT_REGISTER 1 517428d7b3dSmrg 518428d7b3dSmrg#define BRW_CHANNEL_X 0 519428d7b3dSmrg#define BRW_CHANNEL_Y 1 520428d7b3dSmrg#define BRW_CHANNEL_Z 2 521428d7b3dSmrg#define BRW_CHANNEL_W 3 522428d7b3dSmrg 523428d7b3dSmrg#define BRW_COMPRESSION_NONE 0 524428d7b3dSmrg#define BRW_COMPRESSION_2NDHALF 1 525428d7b3dSmrg#define BRW_COMPRESSION_COMPRESSED 2 526428d7b3dSmrg 527428d7b3dSmrg#define BRW_CONDITIONAL_NONE 0 528428d7b3dSmrg#define BRW_CONDITIONAL_Z 1 529428d7b3dSmrg#define BRW_CONDITIONAL_NZ 2 530428d7b3dSmrg#define BRW_CONDITIONAL_EQ 1 /* Z */ 531428d7b3dSmrg#define BRW_CONDITIONAL_NEQ 2 /* NZ */ 532428d7b3dSmrg#define BRW_CONDITIONAL_G 3 533428d7b3dSmrg#define BRW_CONDITIONAL_GE 4 534428d7b3dSmrg#define BRW_CONDITIONAL_L 5 535428d7b3dSmrg#define BRW_CONDITIONAL_LE 6 536428d7b3dSmrg#define BRW_CONDITIONAL_C 7 537428d7b3dSmrg#define BRW_CONDITIONAL_O 8 538428d7b3dSmrg 539428d7b3dSmrg#define BRW_DEBUG_NONE 0 540428d7b3dSmrg#define BRW_DEBUG_BREAKPOINT 1 541428d7b3dSmrg 542428d7b3dSmrg#define BRW_DEPENDENCY_NORMAL 0 543428d7b3dSmrg#define BRW_DEPENDENCY_NOTCLEARED 1 544428d7b3dSmrg#define BRW_DEPENDENCY_NOTCHECKED 2 545428d7b3dSmrg#define BRW_DEPENDENCY_DISABLE 3 546428d7b3dSmrg 547428d7b3dSmrg#define BRW_EXECUTE_1 0 548428d7b3dSmrg#define BRW_EXECUTE_2 1 549428d7b3dSmrg#define BRW_EXECUTE_4 2 550428d7b3dSmrg#define BRW_EXECUTE_8 3 551428d7b3dSmrg#define BRW_EXECUTE_16 4 552428d7b3dSmrg#define BRW_EXECUTE_32 5 553428d7b3dSmrg 554428d7b3dSmrg#define BRW_HORIZONTAL_STRIDE_0 0 555428d7b3dSmrg#define BRW_HORIZONTAL_STRIDE_1 1 556428d7b3dSmrg#define BRW_HORIZONTAL_STRIDE_2 2 557428d7b3dSmrg#define BRW_HORIZONTAL_STRIDE_4 3 558428d7b3dSmrg 559428d7b3dSmrg#define BRW_INSTRUCTION_NORMAL 0 560428d7b3dSmrg#define BRW_INSTRUCTION_SATURATE 1 561428d7b3dSmrg 562428d7b3dSmrg#define BRW_MASK_ENABLE 0 563428d7b3dSmrg#define BRW_MASK_DISABLE 1 564428d7b3dSmrg 565428d7b3dSmrg#define BRW_OPCODE_MOV 1 566428d7b3dSmrg#define BRW_OPCODE_SEL 2 567428d7b3dSmrg#define BRW_OPCODE_NOT 4 568428d7b3dSmrg#define BRW_OPCODE_AND 5 569428d7b3dSmrg#define BRW_OPCODE_OR 6 570428d7b3dSmrg#define BRW_OPCODE_XOR 7 571428d7b3dSmrg#define BRW_OPCODE_SHR 8 572428d7b3dSmrg#define BRW_OPCODE_SHL 9 573428d7b3dSmrg#define BRW_OPCODE_RSR 10 574428d7b3dSmrg#define BRW_OPCODE_RSL 11 575428d7b3dSmrg#define BRW_OPCODE_ASR 12 576428d7b3dSmrg#define BRW_OPCODE_CMP 16 577428d7b3dSmrg#define BRW_OPCODE_JMPI 32 578428d7b3dSmrg#define BRW_OPCODE_IF 34 579428d7b3dSmrg#define BRW_OPCODE_IFF 35 580428d7b3dSmrg#define BRW_OPCODE_ELSE 36 581428d7b3dSmrg#define BRW_OPCODE_ENDIF 37 582428d7b3dSmrg#define BRW_OPCODE_DO 38 583428d7b3dSmrg#define BRW_OPCODE_WHILE 39 584428d7b3dSmrg#define BRW_OPCODE_BREAK 40 585428d7b3dSmrg#define BRW_OPCODE_CONTINUE 41 586428d7b3dSmrg#define BRW_OPCODE_HALT 42 587428d7b3dSmrg#define BRW_OPCODE_MSAVE 44 588428d7b3dSmrg#define BRW_OPCODE_MRESTORE 45 589428d7b3dSmrg#define BRW_OPCODE_PUSH 46 590428d7b3dSmrg#define BRW_OPCODE_POP 47 591428d7b3dSmrg#define BRW_OPCODE_WAIT 48 592428d7b3dSmrg#define BRW_OPCODE_SEND 49 593428d7b3dSmrg#define BRW_OPCODE_ADD 64 594428d7b3dSmrg#define BRW_OPCODE_MUL 65 595428d7b3dSmrg#define BRW_OPCODE_AVG 66 596428d7b3dSmrg#define BRW_OPCODE_FRC 67 597428d7b3dSmrg#define BRW_OPCODE_RNDU 68 598428d7b3dSmrg#define BRW_OPCODE_RNDD 69 599428d7b3dSmrg#define BRW_OPCODE_RNDE 70 600428d7b3dSmrg#define BRW_OPCODE_RNDZ 71 601428d7b3dSmrg#define BRW_OPCODE_MAC 72 602428d7b3dSmrg#define BRW_OPCODE_MACH 73 603428d7b3dSmrg#define BRW_OPCODE_LZD 74 604428d7b3dSmrg#define BRW_OPCODE_SAD2 80 605428d7b3dSmrg#define BRW_OPCODE_SADA2 81 606428d7b3dSmrg#define BRW_OPCODE_DP4 84 607428d7b3dSmrg#define BRW_OPCODE_DPH 85 608428d7b3dSmrg#define BRW_OPCODE_DP3 86 609428d7b3dSmrg#define BRW_OPCODE_DP2 87 610428d7b3dSmrg#define BRW_OPCODE_DPA2 88 611428d7b3dSmrg#define BRW_OPCODE_LINE 89 612428d7b3dSmrg#define BRW_OPCODE_NOP 126 613428d7b3dSmrg 614428d7b3dSmrg#define BRW_PREDICATE_NONE 0 615428d7b3dSmrg#define BRW_PREDICATE_NORMAL 1 616428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ANYV 2 617428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ALLV 3 618428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ANY2H 4 619428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ALL2H 5 620428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ANY4H 6 621428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ALL4H 7 622428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ANY8H 8 623428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ALL8H 9 624428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ANY16H 10 625428d7b3dSmrg#define BRW_PREDICATE_ALIGN1_ALL16H 11 626428d7b3dSmrg#define BRW_PREDICATE_ALIGN16_REPLICATE_X 2 627428d7b3dSmrg#define BRW_PREDICATE_ALIGN16_REPLICATE_Y 3 628428d7b3dSmrg#define BRW_PREDICATE_ALIGN16_REPLICATE_Z 4 629428d7b3dSmrg#define BRW_PREDICATE_ALIGN16_REPLICATE_W 5 630428d7b3dSmrg#define BRW_PREDICATE_ALIGN16_ANY4H 6 631428d7b3dSmrg#define BRW_PREDICATE_ALIGN16_ALL4H 7 632428d7b3dSmrg 633428d7b3dSmrg#define BRW_ARCHITECTURE_REGISTER_FILE 0 634428d7b3dSmrg#define BRW_GENERAL_REGISTER_FILE 1 635428d7b3dSmrg#define BRW_MESSAGE_REGISTER_FILE 2 636428d7b3dSmrg#define BRW_IMMEDIATE_VALUE 3 637428d7b3dSmrg 638428d7b3dSmrg#define BRW_REGISTER_TYPE_UD 0 639428d7b3dSmrg#define BRW_REGISTER_TYPE_D 1 640428d7b3dSmrg#define BRW_REGISTER_TYPE_UW 2 641428d7b3dSmrg#define BRW_REGISTER_TYPE_W 3 642428d7b3dSmrg#define BRW_REGISTER_TYPE_UB 4 643428d7b3dSmrg#define BRW_REGISTER_TYPE_B 5 644428d7b3dSmrg#define BRW_REGISTER_TYPE_VF 5 /* packed float vector, immediates only? */ 645428d7b3dSmrg#define BRW_REGISTER_TYPE_HF 6 646428d7b3dSmrg#define BRW_REGISTER_TYPE_V 6 /* packed int vector, immediates only, uword dest only */ 647428d7b3dSmrg#define BRW_REGISTER_TYPE_F 7 648428d7b3dSmrg 649428d7b3dSmrg#define BRW_ARF_NULL 0x00 650428d7b3dSmrg#define BRW_ARF_ADDRESS 0x10 651428d7b3dSmrg#define BRW_ARF_ACCUMULATOR 0x20 652428d7b3dSmrg#define BRW_ARF_FLAG 0x30 653428d7b3dSmrg#define BRW_ARF_MASK 0x40 654428d7b3dSmrg#define BRW_ARF_MASK_STACK 0x50 655428d7b3dSmrg#define BRW_ARF_MASK_STACK_DEPTH 0x60 656428d7b3dSmrg#define BRW_ARF_STATE 0x70 657428d7b3dSmrg#define BRW_ARF_CONTROL 0x80 658428d7b3dSmrg#define BRW_ARF_NOTIFICATION_COUNT 0x90 659428d7b3dSmrg#define BRW_ARF_IP 0xA0 660428d7b3dSmrg 661428d7b3dSmrg#define BRW_AMASK 0 662428d7b3dSmrg#define BRW_IMASK 1 663428d7b3dSmrg#define BRW_LMASK 2 664428d7b3dSmrg#define BRW_CMASK 3 665428d7b3dSmrg 666428d7b3dSmrg 667428d7b3dSmrg 668428d7b3dSmrg#define BRW_THREAD_NORMAL 0 669428d7b3dSmrg#define BRW_THREAD_ATOMIC 1 670428d7b3dSmrg#define BRW_THREAD_SWITCH 2 671428d7b3dSmrg 672428d7b3dSmrg#define BRW_VERTICAL_STRIDE_0 0 673428d7b3dSmrg#define BRW_VERTICAL_STRIDE_1 1 674428d7b3dSmrg#define BRW_VERTICAL_STRIDE_2 2 675428d7b3dSmrg#define BRW_VERTICAL_STRIDE_4 3 676428d7b3dSmrg#define BRW_VERTICAL_STRIDE_8 4 677428d7b3dSmrg#define BRW_VERTICAL_STRIDE_16 5 678428d7b3dSmrg#define BRW_VERTICAL_STRIDE_32 6 679428d7b3dSmrg#define BRW_VERTICAL_STRIDE_64 7 680428d7b3dSmrg#define BRW_VERTICAL_STRIDE_128 8 681428d7b3dSmrg#define BRW_VERTICAL_STRIDE_256 9 682428d7b3dSmrg#define BRW_VERTICAL_STRIDE_ONE_DIMENSIONAL 0xF 683428d7b3dSmrg 684428d7b3dSmrg#define BRW_WIDTH_1 0 685428d7b3dSmrg#define BRW_WIDTH_2 1 686428d7b3dSmrg#define BRW_WIDTH_4 2 687428d7b3dSmrg#define BRW_WIDTH_8 3 688428d7b3dSmrg#define BRW_WIDTH_16 4 689428d7b3dSmrg 690428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_1K 0 691428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_2K 1 692428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_4K 2 693428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_8K 3 694428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_16K 4 695428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_32K 5 696428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_64K 6 697428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_128K 7 698428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_256K 8 699428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_512K 9 700428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_1M 10 701428d7b3dSmrg#define BRW_STATELESS_BUFFER_BOUNDARY_2M 11 702428d7b3dSmrg 703428d7b3dSmrg#define BRW_POLYGON_FACING_FRONT 0 704428d7b3dSmrg#define BRW_POLYGON_FACING_BACK 1 705428d7b3dSmrg 706428d7b3dSmrg#define BRW_MESSAGE_TARGET_NULL 0 707428d7b3dSmrg#define BRW_MESSAGE_TARGET_MATH 1 708428d7b3dSmrg#define BRW_MESSAGE_TARGET_SAMPLER 2 709428d7b3dSmrg#define BRW_MESSAGE_TARGET_GATEWAY 3 710428d7b3dSmrg#define BRW_MESSAGE_TARGET_DATAPORT_READ 4 711428d7b3dSmrg#define BRW_MESSAGE_TARGET_DATAPORT_WRITE 5 712428d7b3dSmrg#define BRW_MESSAGE_TARGET_URB 6 713428d7b3dSmrg#define BRW_MESSAGE_TARGET_THREAD_SPAWNER 7 714428d7b3dSmrg 715428d7b3dSmrg#define BRW_SAMPLER_RETURN_FORMAT_FLOAT32 0 716428d7b3dSmrg#define BRW_SAMPLER_RETURN_FORMAT_UINT32 2 717428d7b3dSmrg#define BRW_SAMPLER_RETURN_FORMAT_SINT32 3 718428d7b3dSmrg 719428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD8_SAMPLE 0 720428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE 0 721428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_BIAS 0 722428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD8_KILLPIX 1 723428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD4X2_SAMPLE_LOD 1 724428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_LOD 1 725428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD4X2_SAMPLE_GRADIENTS 2 726428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD8_SAMPLE_GRADIENTS 2 727428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD4X2_SAMPLE_COMPARE 0 728428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD16_SAMPLE_COMPARE 2 729428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD4X2_RESINFO 2 730428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD8_RESINFO 2 731428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD16_RESINFO 2 732428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD4X2_LD 3 733428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD8_LD 3 734428d7b3dSmrg#define BRW_SAMPLER_MESSAGE_SIMD16_LD 3 735428d7b3dSmrg 736428d7b3dSmrg#define BRW_DATAPORT_OWORD_BLOCK_1_OWORDLOW 0 737428d7b3dSmrg#define BRW_DATAPORT_OWORD_BLOCK_1_OWORDHIGH 1 738428d7b3dSmrg#define BRW_DATAPORT_OWORD_BLOCK_2_OWORDS 2 739428d7b3dSmrg#define BRW_DATAPORT_OWORD_BLOCK_4_OWORDS 3 740428d7b3dSmrg#define BRW_DATAPORT_OWORD_BLOCK_8_OWORDS 4 741428d7b3dSmrg 742428d7b3dSmrg#define BRW_DATAPORT_OWORD_DUAL_BLOCK_1OWORD 0 743428d7b3dSmrg#define BRW_DATAPORT_OWORD_DUAL_BLOCK_4OWORDS 2 744428d7b3dSmrg 745428d7b3dSmrg#define BRW_DATAPORT_DWORD_SCATTERED_BLOCK_8DWORDS 2 746428d7b3dSmrg#define BRW_DATAPORT_DWORD_SCATTERED_BLOCK_16DWORDS 3 747428d7b3dSmrg 748428d7b3dSmrg#define BRW_DATAPORT_READ_MESSAGE_OWORD_BLOCK_READ 0 749428d7b3dSmrg#define BRW_DATAPORT_READ_MESSAGE_OWORD_DUAL_BLOCK_READ 1 750428d7b3dSmrg#define BRW_DATAPORT_READ_MESSAGE_DWORD_BLOCK_READ 2 751428d7b3dSmrg#define BRW_DATAPORT_READ_MESSAGE_DWORD_SCATTERED_READ 3 752428d7b3dSmrg 753428d7b3dSmrg#define BRW_DATAPORT_READ_TARGET_DATA_CACHE 0 754428d7b3dSmrg#define BRW_DATAPORT_READ_TARGET_RENDER_CACHE 1 755428d7b3dSmrg#define BRW_DATAPORT_READ_TARGET_SAMPLER_CACHE 2 756428d7b3dSmrg 757428d7b3dSmrg#define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD16_SINGLE_SOURCE 0 758428d7b3dSmrg#define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD16_SINGLE_SOURCE_REPLICATED 1 759428d7b3dSmrg#define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD8_DUAL_SOURCE_SUBSPAN01 2 760428d7b3dSmrg#define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD8_DUAL_SOURCE_SUBSPAN23 3 761428d7b3dSmrg#define BRW_DATAPORT_RENDER_TARGET_WRITE_SIMD8_SINGLE_SOURCE_SUBSPAN01 4 762428d7b3dSmrg 763428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_OWORD_BLOCK_WRITE 0 764428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_OWORD_DUAL_BLOCK_WRITE 1 765428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_DWORD_BLOCK_WRITE 2 766428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_DWORD_SCATTERED_WRITE 3 767428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_RENDER_TARGET_WRITE 4 768428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_STREAMED_VERTEX_BUFFER_WRITE 5 769428d7b3dSmrg#define BRW_DATAPORT_WRITE_MESSAGE_FLUSH_RENDER_CACHE 7 770428d7b3dSmrg 771428d7b3dSmrg#define BRW_MATH_FUNCTION_INV 1 772428d7b3dSmrg#define BRW_MATH_FUNCTION_LOG 2 773428d7b3dSmrg#define BRW_MATH_FUNCTION_EXP 3 774428d7b3dSmrg#define BRW_MATH_FUNCTION_SQRT 4 775428d7b3dSmrg#define BRW_MATH_FUNCTION_RSQ 5 776428d7b3dSmrg#define BRW_MATH_FUNCTION_SIN 6 /* was 7 */ 777428d7b3dSmrg#define BRW_MATH_FUNCTION_COS 7 /* was 8 */ 778428d7b3dSmrg#define BRW_MATH_FUNCTION_SINCOS 8 /* was 6 */ 779428d7b3dSmrg#define BRW_MATH_FUNCTION_TAN 9 780428d7b3dSmrg#define BRW_MATH_FUNCTION_POW 10 781428d7b3dSmrg#define BRW_MATH_FUNCTION_INT_DIV_QUOTIENT_AND_REMAINDER 11 782428d7b3dSmrg#define BRW_MATH_FUNCTION_INT_DIV_QUOTIENT 12 783428d7b3dSmrg#define BRW_MATH_FUNCTION_INT_DIV_REMAINDER 13 784428d7b3dSmrg 785428d7b3dSmrg#define BRW_MATH_INTEGER_UNSIGNED 0 786428d7b3dSmrg#define BRW_MATH_INTEGER_SIGNED 1 787428d7b3dSmrg 788428d7b3dSmrg#define BRW_MATH_PRECISION_FULL 0 789428d7b3dSmrg#define BRW_MATH_PRECISION_PARTIAL 1 790428d7b3dSmrg 791428d7b3dSmrg#define BRW_MATH_SATURATE_NONE 0 792428d7b3dSmrg#define BRW_MATH_SATURATE_SATURATE 1 793428d7b3dSmrg 794428d7b3dSmrg#define BRW_MATH_DATA_VECTOR 0 795428d7b3dSmrg#define BRW_MATH_DATA_SCALAR 1 796428d7b3dSmrg 797428d7b3dSmrg#define BRW_URB_OPCODE_WRITE 0 798428d7b3dSmrg 799428d7b3dSmrg#define BRW_URB_SWIZZLE_NONE 0 800428d7b3dSmrg#define BRW_URB_SWIZZLE_INTERLEAVE 1 801428d7b3dSmrg#define BRW_URB_SWIZZLE_TRANSPOSE 2 802428d7b3dSmrg 803428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_1K 0 804428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_2K 1 805428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_4K 2 806428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_8K 3 807428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_16K 4 808428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_32K 5 809428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_64K 6 810428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_128K 7 811428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_256K 8 812428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_512K 9 813428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_1M 10 814428d7b3dSmrg#define BRW_SCRATCH_SPACE_SIZE_2M 11 815428d7b3dSmrg 816428d7b3dSmrg 817428d7b3dSmrg 818428d7b3dSmrg 819428d7b3dSmrg#define CMD_URB_FENCE 0x6000 820428d7b3dSmrg#define CMD_CONST_BUFFER_STATE 0x6001 821428d7b3dSmrg#define CMD_CONST_BUFFER 0x6002 822428d7b3dSmrg 823428d7b3dSmrg#define CMD_STATE_BASE_ADDRESS 0x6101 824428d7b3dSmrg#define CMD_STATE_INSN_POINTER 0x6102 825428d7b3dSmrg#define CMD_PIPELINE_SELECT 0x6104 826428d7b3dSmrg 827428d7b3dSmrg#define CMD_PIPELINED_STATE_POINTERS 0x7800 828428d7b3dSmrg#define CMD_BINDING_TABLE_PTRS 0x7801 829428d7b3dSmrg#define CMD_VERTEX_BUFFER 0x7808 830428d7b3dSmrg#define CMD_VERTEX_ELEMENT 0x7809 831428d7b3dSmrg#define CMD_INDEX_BUFFER 0x780a 832428d7b3dSmrg#define CMD_VF_STATISTICS 0x780b 833428d7b3dSmrg 834428d7b3dSmrg#define CMD_DRAW_RECT 0x7900 835428d7b3dSmrg#define CMD_BLEND_CONSTANT_COLOR 0x7901 836428d7b3dSmrg#define CMD_CHROMA_KEY 0x7904 837428d7b3dSmrg#define CMD_DEPTH_BUFFER 0x7905 838428d7b3dSmrg#define CMD_POLY_STIPPLE_OFFSET 0x7906 839428d7b3dSmrg#define CMD_POLY_STIPPLE_PATTERN 0x7907 840428d7b3dSmrg#define CMD_LINE_STIPPLE_PATTERN 0x7908 841428d7b3dSmrg#define CMD_GLOBAL_DEPTH_OFFSET_CLAMP 0x7908 842428d7b3dSmrg 843428d7b3dSmrg#define CMD_PIPE_CONTROL 0x7a00 844428d7b3dSmrg 845428d7b3dSmrg#define CMD_3D_PRIM 0x7b00 846428d7b3dSmrg 847428d7b3dSmrg#define CMD_MI_FLUSH 0x0200 848428d7b3dSmrg 849428d7b3dSmrg 850428d7b3dSmrg/* Various values from the R0 vertex header: 851428d7b3dSmrg */ 852428d7b3dSmrg#define R02_PRIM_END 0x1 853428d7b3dSmrg#define R02_PRIM_START 0x2 854428d7b3dSmrg 855428d7b3dSmrg/* media pipeline */ 856428d7b3dSmrg 857428d7b3dSmrg#define BRW_VFE_MODE_GENERIC 0x0 858428d7b3dSmrg#define BRW_VFE_MODE_VLD_MPEG2 0x1 859428d7b3dSmrg#define BRW_VFE_MODE_IS 0x2 860428d7b3dSmrg#define BRW_VFE_MODE_AVC_MC 0x4 861428d7b3dSmrg#define BRW_VFE_MODE_AVC_IT 0x7 862428d7b3dSmrg#define BRW_VFE_MODE_VC1_IT 0xB 863428d7b3dSmrg 864428d7b3dSmrg#define BRW_VFE_DEBUG_COUNTER_FREE 0 865428d7b3dSmrg#define BRW_VFE_DEBUG_COUNTER_FROZEN 1 866428d7b3dSmrg#define BRW_VFE_DEBUG_COUNTER_ONCE 2 867428d7b3dSmrg#define BRW_VFE_DEBUG_COUNTER_ALWAYS 3 868428d7b3dSmrg 869428d7b3dSmrg/* VLD_STATE */ 870428d7b3dSmrg#define BRW_MPEG_TOP_FIELD 1 871428d7b3dSmrg#define BRW_MPEG_BOTTOM_FIELD 2 872428d7b3dSmrg#define BRW_MPEG_FRAME 3 873428d7b3dSmrg#define BRW_MPEG_QSCALE_LINEAR 0 874428d7b3dSmrg#define BRW_MPEG_QSCALE_NONLINEAR 1 875428d7b3dSmrg#define BRW_MPEG_ZIGZAG_SCAN 0 876428d7b3dSmrg#define BRW_MPEG_ALTER_VERTICAL_SCAN 1 877428d7b3dSmrg#define BRW_MPEG_I_PICTURE 1 878428d7b3dSmrg#define BRW_MPEG_P_PICTURE 2 879428d7b3dSmrg#define BRW_MPEG_B_PICTURE 3 880428d7b3dSmrg 881428d7b3dSmrg#endif 882