1<?xml version="1.0" encoding="UTF-8"?> 2<database xmlns="http://nouveau.freedesktop.org/" 3xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4xsi:schemaLocation="https://gitlab.freedesktop.org/freedreno/ rules-fd.xsd"> 5<import file="freedreno_copyright.xml"/> 6<import file="adreno/adreno_common.xml"/> 7<import file="adreno/adreno_pm4.xml"/> 8 9<enum name="a6xx_tile_mode"> 10 <value name="TILE6_LINEAR" value="0"/> 11 <value name="TILE6_2" value="2"/> 12 <value name="TILE6_3" value="3"/> 13</enum> 14 15<enum name="a6xx_format"> 16 <value value="0x02" name="FMT6_A8_UNORM"/> 17 <value value="0x03" name="FMT6_8_UNORM"/> 18 <value value="0x04" name="FMT6_8_SNORM"/> 19 <value value="0x05" name="FMT6_8_UINT"/> 20 <value value="0x06" name="FMT6_8_SINT"/> 21 22 <value value="0x08" name="FMT6_4_4_4_4_UNORM"/> 23 <value value="0x0a" name="FMT6_5_5_5_1_UNORM"/> 24 <value value="0x0c" name="FMT6_1_5_5_5_UNORM"/> <!-- read only --> 25 <value value="0x0e" name="FMT6_5_6_5_UNORM"/> 26 27 <value value="0x0f" name="FMT6_8_8_UNORM"/> 28 <value value="0x10" name="FMT6_8_8_SNORM"/> 29 <value value="0x11" name="FMT6_8_8_UINT"/> 30 <value value="0x12" name="FMT6_8_8_SINT"/> 31 <value value="0x13" name="FMT6_L8_A8_UNORM"/> 32 33 <value value="0x15" name="FMT6_16_UNORM"/> 34 <value value="0x16" name="FMT6_16_SNORM"/> 35 <value value="0x17" name="FMT6_16_FLOAT"/> 36 <value value="0x18" name="FMT6_16_UINT"/> 37 <value value="0x19" name="FMT6_16_SINT"/> 38 39 <value value="0x21" name="FMT6_8_8_8_UNORM"/> 40 <value value="0x22" name="FMT6_8_8_8_SNORM"/> 41 <value value="0x23" name="FMT6_8_8_8_UINT"/> 42 <value value="0x24" name="FMT6_8_8_8_SINT"/> 43 44 <value value="0x30" name="FMT6_8_8_8_8_UNORM"/> 45 <value value="0x31" name="FMT6_8_8_8_X8_UNORM"/> <!-- samples 1 for alpha --> 46 <value value="0x32" name="FMT6_8_8_8_8_SNORM"/> 47 <value value="0x33" name="FMT6_8_8_8_8_UINT"/> 48 <value value="0x34" name="FMT6_8_8_8_8_SINT"/> 49 50 <value value="0x35" name="FMT6_9_9_9_E5_FLOAT"/> 51 52 <value value="0x36" name="FMT6_10_10_10_2_UNORM"/> 53 <value value="0x37" name="FMT6_10_10_10_2_UNORM_DEST"/> 54 <value value="0x39" name="FMT6_10_10_10_2_SNORM"/> 55 <value value="0x3a" name="FMT6_10_10_10_2_UINT"/> 56 <value value="0x3b" name="FMT6_10_10_10_2_SINT"/> 57 58 <value value="0x42" name="FMT6_11_11_10_FLOAT"/> 59 60 <value value="0x43" name="FMT6_16_16_UNORM"/> 61 <value value="0x44" name="FMT6_16_16_SNORM"/> 62 <value value="0x45" name="FMT6_16_16_FLOAT"/> 63 <value value="0x46" name="FMT6_16_16_UINT"/> 64 <value value="0x47" name="FMT6_16_16_SINT"/> 65 66 <value value="0x48" name="FMT6_32_UNORM"/> 67 <value value="0x49" name="FMT6_32_SNORM"/> 68 <value value="0x4a" name="FMT6_32_FLOAT"/> 69 <value value="0x4b" name="FMT6_32_UINT"/> 70 <value value="0x4c" name="FMT6_32_SINT"/> 71 <value value="0x4d" name="FMT6_32_FIXED"/> 72 73 <value value="0x58" name="FMT6_16_16_16_UNORM"/> 74 <value value="0x59" name="FMT6_16_16_16_SNORM"/> 75 <value value="0x5a" name="FMT6_16_16_16_FLOAT"/> 76 <value value="0x5b" name="FMT6_16_16_16_UINT"/> 77 <value value="0x5c" name="FMT6_16_16_16_SINT"/> 78 79 <value value="0x60" name="FMT6_16_16_16_16_UNORM"/> 80 <value value="0x61" name="FMT6_16_16_16_16_SNORM"/> 81 <value value="0x62" name="FMT6_16_16_16_16_FLOAT"/> 82 <value value="0x63" name="FMT6_16_16_16_16_UINT"/> 83 <value value="0x64" name="FMT6_16_16_16_16_SINT"/> 84 85 <value value="0x65" name="FMT6_32_32_UNORM"/> 86 <value value="0x66" name="FMT6_32_32_SNORM"/> 87 <value value="0x67" name="FMT6_32_32_FLOAT"/> 88 <value value="0x68" name="FMT6_32_32_UINT"/> 89 <value value="0x69" name="FMT6_32_32_SINT"/> 90 <value value="0x6a" name="FMT6_32_32_FIXED"/> 91 92 <value value="0x70" name="FMT6_32_32_32_UNORM"/> 93 <value value="0x71" name="FMT6_32_32_32_SNORM"/> 94 <value value="0x72" name="FMT6_32_32_32_UINT"/> 95 <value value="0x73" name="FMT6_32_32_32_SINT"/> 96 <value value="0x74" name="FMT6_32_32_32_FLOAT"/> 97 <value value="0x75" name="FMT6_32_32_32_FIXED"/> 98 99 <value value="0x80" name="FMT6_32_32_32_32_UNORM"/> 100 <value value="0x81" name="FMT6_32_32_32_32_SNORM"/> 101 <value value="0x82" name="FMT6_32_32_32_32_FLOAT"/> 102 <value value="0x83" name="FMT6_32_32_32_32_UINT"/> 103 <value value="0x84" name="FMT6_32_32_32_32_SINT"/> 104 <value value="0x85" name="FMT6_32_32_32_32_FIXED"/> 105 106 <value value="0x8c" name="FMT6_G8R8B8R8_422_UNORM"/> <!-- UYVY --> 107 <value value="0x8d" name="FMT6_R8G8R8B8_422_UNORM"/> <!-- YUYV --> 108 <value value="0x8e" name="FMT6_R8_G8B8_2PLANE_420_UNORM"/> <!-- NV12 --> 109 <value value="0x8f" name="FMT6_NV21"/> 110 <value value="0x90" name="FMT6_R8_G8_B8_3PLANE_420_UNORM"/> <!-- YV12 --> 111 112 <value value="0x91" name="FMT6_Z24_UNORM_S8_UINT_AS_R8G8B8A8"/> 113 114 <!-- Note: tiling/UBWC for these may be different from equivalent formats 115 For example FMT6_NV12_Y is not compatible with FMT6_8_UNORM 116 --> 117 <value value="0x94" name="FMT6_NV12_Y"/> 118 <value value="0x95" name="FMT6_NV12_UV"/> 119 <value value="0x96" name="FMT6_NV12_VU"/> 120 <value value="0x97" name="FMT6_NV12_4R"/> 121 <value value="0x98" name="FMT6_NV12_4R_Y"/> 122 <value value="0x99" name="FMT6_NV12_4R_UV"/> 123 <value value="0x9a" name="FMT6_P010"/> 124 <value value="0x9b" name="FMT6_P010_Y"/> 125 <value value="0x9c" name="FMT6_P010_UV"/> 126 <value value="0x9d" name="FMT6_TP10"/> 127 <value value="0x9e" name="FMT6_TP10_Y"/> 128 <value value="0x9f" name="FMT6_TP10_UV"/> 129 130 <value value="0xa0" name="FMT6_Z24_UNORM_S8_UINT"/> 131 132 <value value="0xab" name="FMT6_ETC2_RG11_UNORM"/> 133 <value value="0xac" name="FMT6_ETC2_RG11_SNORM"/> 134 <value value="0xad" name="FMT6_ETC2_R11_UNORM"/> 135 <value value="0xae" name="FMT6_ETC2_R11_SNORM"/> 136 <value value="0xaf" name="FMT6_ETC1"/> 137 <value value="0xb0" name="FMT6_ETC2_RGB8"/> 138 <value value="0xb1" name="FMT6_ETC2_RGBA8"/> 139 <value value="0xb2" name="FMT6_ETC2_RGB8A1"/> 140 <value value="0xb3" name="FMT6_DXT1"/> 141 <value value="0xb4" name="FMT6_DXT3"/> 142 <value value="0xb5" name="FMT6_DXT5"/> 143 <value value="0xb6" name="FMT6_RGTC1_UNORM"/> 144 <value value="0xb7" name="FMT6_RGTC1_UNORM_FAST"/> 145 <value value="0xb8" name="FMT6_RGTC1_SNORM"/> 146 <value value="0xb9" name="FMT6_RGTC1_SNORM_FAST"/> 147 <value value="0xba" name="FMT6_RGTC2_UNORM"/> 148 <value value="0xbb" name="FMT6_RGTC2_UNORM_FAST"/> 149 <value value="0xbc" name="FMT6_RGTC2_SNORM"/> 150 <value value="0xbd" name="FMT6_RGTC2_SNORM_FAST"/> 151 <value value="0xbe" name="FMT6_BPTC_UFLOAT"/> 152 <value value="0xbf" name="FMT6_BPTC_FLOAT"/> 153 <value value="0xc0" name="FMT6_BPTC"/> 154 <value value="0xc1" name="FMT6_ASTC_4x4"/> 155 <value value="0xc2" name="FMT6_ASTC_5x4"/> 156 <value value="0xc3" name="FMT6_ASTC_5x5"/> 157 <value value="0xc4" name="FMT6_ASTC_6x5"/> 158 <value value="0xc5" name="FMT6_ASTC_6x6"/> 159 <value value="0xc6" name="FMT6_ASTC_8x5"/> 160 <value value="0xc7" name="FMT6_ASTC_8x6"/> 161 <value value="0xc8" name="FMT6_ASTC_8x8"/> 162 <value value="0xc9" name="FMT6_ASTC_10x5"/> 163 <value value="0xca" name="FMT6_ASTC_10x6"/> 164 <value value="0xcb" name="FMT6_ASTC_10x8"/> 165 <value value="0xcc" name="FMT6_ASTC_10x10"/> 166 <value value="0xcd" name="FMT6_ASTC_12x10"/> 167 <value value="0xce" name="FMT6_ASTC_12x12"/> 168 169 <!-- for sampling stencil (integer, 2nd channel), not available on a630 --> 170 <value value="0xea" name="FMT6_Z24_UINT_S8_UINT"/> 171 172 <!-- Not a hw enum, used internally in driver --> 173 <value value="0xff" name="FMT6_NONE"/> 174 175</enum> 176 177<!-- probably same as a5xx --> 178<enum name="a6xx_polygon_mode"> 179 <value name="POLYMODE6_POINTS" value="1"/> 180 <value name="POLYMODE6_LINES" value="2"/> 181 <value name="POLYMODE6_TRIANGLES" value="3"/> 182</enum> 183 184<enum name="a6xx_depth_format"> 185 <value name="DEPTH6_NONE" value="0"/> 186 <value name="DEPTH6_16" value="1"/> 187 <value name="DEPTH6_24_8" value="2"/> 188 <value name="DEPTH6_32" value="4"/> 189</enum> 190 191<bitset name="a6x_cp_protect" inline="yes"> 192 <bitfield name="BASE_ADDR" low="0" high="17"/> 193 <bitfield name="MASK_LEN" low="18" high="30"/> 194 <bitfield name="READ" pos="31" type="boolean"/> 195</bitset> 196 197<enum name="a6xx_shader_id"> 198 <value value="0x9" name="A6XX_TP0_TMO_DATA"/> 199 <value value="0xa" name="A6XX_TP0_SMO_DATA"/> 200 <value value="0xb" name="A6XX_TP0_MIPMAP_BASE_DATA"/> 201 <value value="0x19" name="A6XX_TP1_TMO_DATA"/> 202 <value value="0x1a" name="A6XX_TP1_SMO_DATA"/> 203 <value value="0x1b" name="A6XX_TP1_MIPMAP_BASE_DATA"/> 204 <value value="0x29" name="A6XX_SP_INST_DATA"/> 205 <value value="0x2a" name="A6XX_SP_LB_0_DATA"/> 206 <value value="0x2b" name="A6XX_SP_LB_1_DATA"/> 207 <value value="0x2c" name="A6XX_SP_LB_2_DATA"/> 208 <value value="0x2d" name="A6XX_SP_LB_3_DATA"/> 209 <value value="0x2e" name="A6XX_SP_LB_4_DATA"/> 210 <value value="0x2f" name="A6XX_SP_LB_5_DATA"/> 211 <value value="0x30" name="A6XX_SP_CB_BINDLESS_DATA"/> 212 <value value="0x31" name="A6XX_SP_CB_LEGACY_DATA"/> 213 <value value="0x32" name="A6XX_SP_GFX_UAV_BASE_DATA"/> 214 <value value="0x33" name="A6XX_SP_INST_TAG"/> 215 <value value="0x34" name="A6XX_SP_CB_BINDLESS_TAG"/> 216 <value value="0x35" name="A6XX_SP_TMO_UMO_TAG"/> 217 <value value="0x36" name="A6XX_SP_SMO_TAG"/> 218 <value value="0x37" name="A6XX_SP_STATE_DATA"/> 219 <value value="0x49" name="A6XX_HLSQ_CHUNK_CVS_RAM"/> 220 <value value="0x4a" name="A6XX_HLSQ_CHUNK_CPS_RAM"/> 221 <value value="0x4b" name="A6XX_HLSQ_CHUNK_CVS_RAM_TAG"/> 222 <value value="0x4c" name="A6XX_HLSQ_CHUNK_CPS_RAM_TAG"/> 223 <value value="0x4d" name="A6XX_HLSQ_ICB_CVS_CB_BASE_TAG"/> 224 <value value="0x4e" name="A6XX_HLSQ_ICB_CPS_CB_BASE_TAG"/> 225 <value value="0x50" name="A6XX_HLSQ_CVS_MISC_RAM"/> 226 <value value="0x51" name="A6XX_HLSQ_CPS_MISC_RAM"/> 227 <value value="0x52" name="A6XX_HLSQ_INST_RAM"/> 228 <value value="0x53" name="A6XX_HLSQ_GFX_CVS_CONST_RAM"/> 229 <value value="0x54" name="A6XX_HLSQ_GFX_CPS_CONST_RAM"/> 230 <value value="0x55" name="A6XX_HLSQ_CVS_MISC_RAM_TAG"/> 231 <value value="0x56" name="A6XX_HLSQ_CPS_MISC_RAM_TAG"/> 232 <value value="0x57" name="A6XX_HLSQ_INST_RAM_TAG"/> 233 <value value="0x58" name="A6XX_HLSQ_GFX_CVS_CONST_RAM_TAG"/> 234 <value value="0x59" name="A6XX_HLSQ_GFX_CPS_CONST_RAM_TAG"/> 235 <value value="0x5a" name="A6XX_HLSQ_PWR_REST_RAM"/> 236 <value value="0x5b" name="A6XX_HLSQ_PWR_REST_TAG"/> 237 <value value="0x60" name="A6XX_HLSQ_DATAPATH_META"/> 238 <value value="0x61" name="A6XX_HLSQ_FRONTEND_META"/> 239 <value value="0x62" name="A6XX_HLSQ_INDIRECT_META"/> 240 <value value="0x63" name="A6XX_HLSQ_BACKEND_META"/> 241 <value value="0x70" name="A6XX_SP_LB_6_DATA"/> 242 <value value="0x71" name="A6XX_SP_LB_7_DATA"/> 243 <value value="0x73" name="A6XX_HLSQ_INST_RAM_1"/> 244</enum> 245 246<enum name="a6xx_debugbus_id"> 247 <value value="0x1" name="A6XX_DBGBUS_CP"/> 248 <value value="0x2" name="A6XX_DBGBUS_RBBM"/> 249 <value value="0x3" name="A6XX_DBGBUS_VBIF"/> 250 <value value="0x4" name="A6XX_DBGBUS_HLSQ"/> 251 <value value="0x5" name="A6XX_DBGBUS_UCHE"/> 252 <value value="0x6" name="A6XX_DBGBUS_DPM"/> 253 <value value="0x7" name="A6XX_DBGBUS_TESS"/> 254 <value value="0x8" name="A6XX_DBGBUS_PC"/> 255 <value value="0x9" name="A6XX_DBGBUS_VFDP"/> 256 <value value="0xa" name="A6XX_DBGBUS_VPC"/> 257 <value value="0xb" name="A6XX_DBGBUS_TSE"/> 258 <value value="0xc" name="A6XX_DBGBUS_RAS"/> 259 <value value="0xd" name="A6XX_DBGBUS_VSC"/> 260 <value value="0xe" name="A6XX_DBGBUS_COM"/> 261 <value value="0x10" name="A6XX_DBGBUS_LRZ"/> 262 <value value="0x11" name="A6XX_DBGBUS_A2D"/> 263 <value value="0x12" name="A6XX_DBGBUS_CCUFCHE"/> 264 <value value="0x13" name="A6XX_DBGBUS_GMU_CX"/> 265 <value value="0x14" name="A6XX_DBGBUS_RBP"/> 266 <value value="0x15" name="A6XX_DBGBUS_DCS"/> 267 <value value="0x16" name="A6XX_DBGBUS_DBGC"/> 268 <value value="0x17" name="A6XX_DBGBUS_CX"/> 269 <value value="0x18" name="A6XX_DBGBUS_GMU_GX"/> 270 <value value="0x19" name="A6XX_DBGBUS_TPFCHE"/> 271 <value value="0x1a" name="A6XX_DBGBUS_GBIF_GX"/> 272 <value value="0x1d" name="A6XX_DBGBUS_GPC"/> 273 <value value="0x1e" name="A6XX_DBGBUS_LARC"/> 274 <value value="0x1f" name="A6XX_DBGBUS_HLSQ_SPTP"/> 275 <value value="0x20" name="A6XX_DBGBUS_RB_0"/> 276 <value value="0x21" name="A6XX_DBGBUS_RB_1"/> 277 <value value="0x22" name="A6XX_DBGBUS_RB_2"/> 278 <value value="0x24" name="A6XX_DBGBUS_UCHE_WRAPPER"/> 279 <value value="0x28" name="A6XX_DBGBUS_CCU_0"/> 280 <value value="0x29" name="A6XX_DBGBUS_CCU_1"/> 281 <value value="0x2a" name="A6XX_DBGBUS_CCU_2"/> 282 <value value="0x38" name="A6XX_DBGBUS_VFD_0"/> 283 <value value="0x39" name="A6XX_DBGBUS_VFD_1"/> 284 <value value="0x3a" name="A6XX_DBGBUS_VFD_2"/> 285 <value value="0x3b" name="A6XX_DBGBUS_VFD_3"/> 286 <value value="0x3c" name="A6XX_DBGBUS_VFD_4"/> 287 <value value="0x3d" name="A6XX_DBGBUS_VFD_5"/> 288 <value value="0x40" name="A6XX_DBGBUS_SP_0"/> 289 <value value="0x41" name="A6XX_DBGBUS_SP_1"/> 290 <value value="0x42" name="A6XX_DBGBUS_SP_2"/> 291 <value value="0x48" name="A6XX_DBGBUS_TPL1_0"/> 292 <value value="0x49" name="A6XX_DBGBUS_TPL1_1"/> 293 <value value="0x4a" name="A6XX_DBGBUS_TPL1_2"/> 294 <value value="0x4b" name="A6XX_DBGBUS_TPL1_3"/> 295 <value value="0x4c" name="A6XX_DBGBUS_TPL1_4"/> 296 <value value="0x4d" name="A6XX_DBGBUS_TPL1_5"/> 297 <value value="0x58" name="A6XX_DBGBUS_SPTP_0"/> 298 <value value="0x59" name="A6XX_DBGBUS_SPTP_1"/> 299 <value value="0x5a" name="A6XX_DBGBUS_SPTP_2"/> 300 <value value="0x5b" name="A6XX_DBGBUS_SPTP_3"/> 301 <value value="0x5c" name="A6XX_DBGBUS_SPTP_4"/> 302 <value value="0x5d" name="A6XX_DBGBUS_SPTP_5"/> 303</enum> 304 305<!-- 306Used in a6xx_a2d_bit_cntl.. the value mostly seems to correlate to the 307component type/size, so I think it relates to internal format used for 308blending? The one exception is that 16b unorm and 32b float use the 309same value... maybe 16b unorm is uncommon enough that it was just easier 310to upconvert to 32b float internally? 311 312 8b unorm: 10 (sometimes 0, is the high bit part of something else?) 31316b unorm: 4 314 31532b int: 7 31616b int: 6 317 8b int: 5 318 31932b float: 4 32016b float: 3 321 --> 322<enum name="a6xx_2d_ifmt"> 323 <value value="0x7" name="R2D_INT32"/> 324 <value value="0x6" name="R2D_INT16"/> 325 <value value="0x5" name="R2D_INT8"/> 326 <value value="0x4" name="R2D_FLOAT32"/> 327 <value value="0x3" name="R2D_FLOAT16"/> 328 <value value="0x2" name="R2D_SNORM8"/> 329 <value value="0x1" name="R2D_UNORM8_SRGB"/> 330 <value value="0x0" name="R2D_UNORM8"/> 331</enum> 332 333<enum name="a6xx_tex_type"> 334 <value name="A6XX_TEX_1D" value="0"/> 335 <value name="A6XX_TEX_2D" value="1"/> 336 <value name="A6XX_TEX_CUBE" value="2"/> 337 <value name="A6XX_TEX_3D" value="3"/> 338 <value name="A6XX_TEX_BUFFER" value="4"/> 339 <doc> 340 A special buffer type for usage as the source for buffer 341 to image copies with lower alignment requirements than 342 A6XX_TEX_2D, available since A7XX. 343 </doc> 344 <value name="A6XX_TEX_IMG_BUFFER" value="5"/> 345</enum> 346 347<enum name="a6xx_ztest_mode"> 348 <doc>Allow early z-test and early-lrz (if applicable)</doc> 349 <value value="0x0" name="A6XX_EARLY_Z"/> 350 <doc>Disable early z-test and early-lrz test (if applicable)</doc> 351 <value value="0x1" name="A6XX_LATE_Z"/> 352 <doc> 353 A special mode that allows early-lrz (if applicable) or early-z 354 tests, but also does late-z tests at which point it writes depth. 355 356 This mode is used when fragment can be killed (via discard or 357 sample mask) after early-z tests and it writes depth. In such case 358 depth can be written only at late-z stage, but it's ok to use 359 early-z to discard fragments. 360 361 However this mode is not compatible with: 362 - Lack of D/S attachment 363 - Stencil writes on stencil or depth test failures 364 - Per-sample shading 365 </doc> 366 <value value="0x2" name="A6XX_EARLY_Z_LATE_Z"/> 367 <doc>Not a real hw value, used internally by mesa</doc> 368 <value value="0x3" name="A6XX_INVALID_ZTEST"/> 369</enum> 370 371<enum name="a6xx_tess_spacing"> 372 <value value="0x0" name="TESS_EQUAL"/> 373 <value value="0x2" name="TESS_FRACTIONAL_ODD"/> 374 <value value="0x3" name="TESS_FRACTIONAL_EVEN"/> 375</enum> 376<enum name="a6xx_tess_output"> 377 <value value="0x0" name="TESS_POINTS"/> 378 <value value="0x1" name="TESS_LINES"/> 379 <value value="0x2" name="TESS_CW_TRIS"/> 380 <value value="0x3" name="TESS_CCW_TRIS"/> 381</enum> 382 383<enum name="a6xx_tex_filter"> <!-- same as a4xx? --> 384 <value name="A6XX_TEX_NEAREST" value="0"/> 385 <value name="A6XX_TEX_LINEAR" value="1"/> 386 <value name="A6XX_TEX_ANISO" value="2"/> 387 <value name="A6XX_TEX_CUBIC" value="3"/> <!-- a650 only --> 388</enum> 389 390<enum name="a6xx_tex_clamp"> <!-- same as a4xx? --> 391 <value name="A6XX_TEX_REPEAT" value="0"/> 392 <value name="A6XX_TEX_CLAMP_TO_EDGE" value="1"/> 393 <value name="A6XX_TEX_MIRROR_REPEAT" value="2"/> 394 <value name="A6XX_TEX_CLAMP_TO_BORDER" value="3"/> 395 <value name="A6XX_TEX_MIRROR_CLAMP" value="4"/> 396</enum> 397 398<enum name="a6xx_tex_aniso"> <!-- same as a4xx? --> 399 <value name="A6XX_TEX_ANISO_1" value="0"/> 400 <value name="A6XX_TEX_ANISO_2" value="1"/> 401 <value name="A6XX_TEX_ANISO_4" value="2"/> 402 <value name="A6XX_TEX_ANISO_8" value="3"/> 403 <value name="A6XX_TEX_ANISO_16" value="4"/> 404</enum> 405 406<enum name="a6xx_reduction_mode"> 407 <value name="A6XX_REDUCTION_MODE_AVERAGE" value="0"/> 408 <value name="A6XX_REDUCTION_MODE_MIN" value="1"/> 409 <value name="A6XX_REDUCTION_MODE_MAX" value="2"/> 410</enum> 411 412<enum name="a6xx_fast_border_color"> 413 <!-- R B G A --> 414 <value name="A6XX_BORDER_COLOR_0_0_0_0" value="0"/> 415 <value name="A6XX_BORDER_COLOR_0_0_0_1" value="1"/> 416 <value name="A6XX_BORDER_COLOR_1_1_1_0" value="2"/> 417 <value name="A6XX_BORDER_COLOR_1_1_1_1" value="3"/> 418</enum> 419 420<enum name="a6xx_tex_swiz"> <!-- same as a4xx? --> 421 <value name="A6XX_TEX_X" value="0"/> 422 <value name="A6XX_TEX_Y" value="1"/> 423 <value name="A6XX_TEX_Z" value="2"/> 424 <value name="A6XX_TEX_W" value="3"/> 425 <value name="A6XX_TEX_ZERO" value="4"/> 426 <value name="A6XX_TEX_ONE" value="5"/> 427</enum> 428 429</database> 430