Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/msm: update generated headers

Pull in additional regs needed for a430, etc.

Signed-off-by: Rob Clark <robdclark@gmail.com>

Rob Clark a2272e48 61965d3d

+1749 -172
+6 -5
drivers/gpu/drm/msm/adreno/a2xx.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/adreno.xml ( 398 bytes, from 2015-09-24 17:25:31) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/adreno/a2xx.xml ( 32901 bytes, from 2015-05-20 20:03:14) 14 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 10755 bytes, from 2015-09-14 20:46:55) 15 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 14968 bytes, from 2015-05-20 20:12:27) 16 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 67771 bytes, from 2015-09-14 20:46:55) 17 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 63970 bytes, from 2015-09-14 20:50:12) 14 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 11518 bytes, from 2016-02-10 21:03:25) 15 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 16166 bytes, from 2016-02-11 21:20:31) 16 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 83967 bytes, from 2016-02-10 17:07:21) 17 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 109916 bytes, from 2016-02-20 18:44:48) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2015-09-24 17:30:00) 19 19 20 20 Copyright (C) 2013-2015 by the following authors: 21 21 - Rob Clark <robdclark@gmail.com> (robclark) 22 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 22 23 23 24 Permission is hereby granted, free of charge, to any person obtaining 24 25 a copy of this software and associated documentation files (the
+432 -69
drivers/gpu/drm/msm/adreno/a3xx.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/adreno.xml ( 398 bytes, from 2015-09-24 17:25:31) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/adreno/a2xx.xml ( 32901 bytes, from 2015-05-20 20:03:14) 14 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 10755 bytes, from 2015-09-14 20:46:55) 15 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 14968 bytes, from 2015-05-20 20:12:27) 16 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 67771 bytes, from 2015-09-14 20:46:55) 17 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 63970 bytes, from 2015-09-14 20:50:12) 14 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 11518 bytes, from 2016-02-10 21:03:25) 15 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 16166 bytes, from 2016-02-11 21:20:31) 16 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 83967 bytes, from 2016-02-10 17:07:21) 17 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 109916 bytes, from 2016-02-20 18:44:48) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2015-09-24 17:30:00) 19 19 20 - Copyright (C) 2013-2015 by the following authors: 20 + Copyright (C) 2013-2016 by the following authors: 21 21 - Rob Clark <robdclark@gmail.com> (robclark) 22 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 22 23 23 24 Permission is hereby granted, free of charge, to any person obtaining 24 25 a copy of this software and associated documentation files (the ··· 112 111 VFMT_8_8_SNORM = 53, 113 112 VFMT_8_8_8_SNORM = 54, 114 113 VFMT_8_8_8_8_SNORM = 55, 115 - VFMT_10_10_10_2_UINT = 60, 116 - VFMT_10_10_10_2_UNORM = 61, 117 - VFMT_10_10_10_2_SINT = 62, 118 - VFMT_10_10_10_2_SNORM = 63, 114 + VFMT_10_10_10_2_UINT = 56, 115 + VFMT_10_10_10_2_UNORM = 57, 116 + VFMT_10_10_10_2_SINT = 58, 117 + VFMT_10_10_10_2_SNORM = 59, 118 + VFMT_2_10_10_10_UINT = 60, 119 + VFMT_2_10_10_10_UNORM = 61, 120 + VFMT_2_10_10_10_SINT = 62, 121 + VFMT_2_10_10_10_SNORM = 63, 119 122 }; 120 123 121 124 enum a3xx_tex_fmt { ··· 143 138 TFMT_DXT1 = 36, 144 139 TFMT_DXT3 = 37, 145 140 TFMT_DXT5 = 38, 141 + TFMT_2_10_10_10_UNORM = 40, 146 142 TFMT_10_10_10_2_UNORM = 41, 147 143 TFMT_9_9_9_E5_FLOAT = 42, 148 144 TFMT_11_11_10_FLOAT = 43, 149 145 TFMT_A8_UNORM = 44, 146 + TFMT_L8_UNORM = 45, 150 147 TFMT_L8_A8_UNORM = 47, 151 148 TFMT_8_UNORM = 48, 152 149 TFMT_8_8_UNORM = 49, ··· 190 183 TFMT_32_SINT = 92, 191 184 TFMT_32_32_SINT = 93, 192 185 TFMT_32_32_32_32_SINT = 95, 186 + TFMT_2_10_10_10_UINT = 96, 187 + TFMT_10_10_10_2_UINT = 97, 193 188 TFMT_ETC2_RG11_SNORM = 112, 194 189 TFMT_ETC2_RG11_UNORM = 113, 195 190 TFMT_ETC2_R11_SNORM = 114, ··· 224 215 RB_R8_UINT = 14, 225 216 RB_R8_SINT = 15, 226 217 RB_R10G10B10A2_UNORM = 16, 218 + RB_A2R10G10B10_UNORM = 17, 219 + RB_R10G10B10A2_UINT = 18, 220 + RB_A2R10G10B10_UINT = 19, 227 221 RB_A8_UNORM = 20, 228 222 RB_R8_UNORM = 21, 229 223 RB_R16_FLOAT = 24, ··· 256 244 RB_R32G32B32A32_UINT = 59, 257 245 }; 258 246 259 - enum a3xx_sp_perfcounter_select { 260 - SP_FS_CFLOW_INSTRUCTIONS = 12, 261 - SP_FS_FULL_ALU_INSTRUCTIONS = 14, 262 - SP0_ICL1_MISSES = 26, 263 - SP_ALU_ACTIVE_CYCLES = 29, 247 + enum a3xx_cp_perfcounter_select { 248 + CP_ALWAYS_COUNT = 0, 249 + CP_AHB_PFPTRANS_WAIT = 3, 250 + CP_AHB_NRTTRANS_WAIT = 6, 251 + CP_CSF_NRT_READ_WAIT = 8, 252 + CP_CSF_I1_FIFO_FULL = 9, 253 + CP_CSF_I2_FIFO_FULL = 10, 254 + CP_CSF_ST_FIFO_FULL = 11, 255 + CP_RESERVED_12 = 12, 256 + CP_CSF_RING_ROQ_FULL = 13, 257 + CP_CSF_I1_ROQ_FULL = 14, 258 + CP_CSF_I2_ROQ_FULL = 15, 259 + CP_CSF_ST_ROQ_FULL = 16, 260 + CP_RESERVED_17 = 17, 261 + CP_MIU_TAG_MEM_FULL = 18, 262 + CP_MIU_NRT_WRITE_STALLED = 22, 263 + CP_MIU_NRT_READ_STALLED = 23, 264 + CP_ME_REGS_RB_DONE_FIFO_FULL = 26, 265 + CP_ME_REGS_VS_EVENT_FIFO_FULL = 27, 266 + CP_ME_REGS_PS_EVENT_FIFO_FULL = 28, 267 + CP_ME_REGS_CF_EVENT_FIFO_FULL = 29, 268 + CP_ME_MICRO_RB_STARVED = 30, 269 + CP_AHB_RBBM_DWORD_SENT = 40, 270 + CP_ME_BUSY_CLOCKS = 41, 271 + CP_ME_WAIT_CONTEXT_AVAIL = 42, 272 + CP_PFP_TYPE0_PACKET = 43, 273 + CP_PFP_TYPE3_PACKET = 44, 274 + CP_CSF_RB_WPTR_NEQ_RPTR = 45, 275 + CP_CSF_I1_SIZE_NEQ_ZERO = 46, 276 + CP_CSF_I2_SIZE_NEQ_ZERO = 47, 277 + CP_CSF_RBI1I2_FETCHING = 48, 264 278 }; 265 279 266 - enum a3xx_rop_code { 267 - ROP_CLEAR = 0, 268 - ROP_NOR = 1, 269 - ROP_AND_INVERTED = 2, 270 - ROP_COPY_INVERTED = 3, 271 - ROP_AND_REVERSE = 4, 272 - ROP_INVERT = 5, 273 - ROP_XOR = 6, 274 - ROP_NAND = 7, 275 - ROP_AND = 8, 276 - ROP_EQUIV = 9, 277 - ROP_NOOP = 10, 278 - ROP_OR_INVERTED = 11, 279 - ROP_COPY = 12, 280 - ROP_OR_REVERSE = 13, 281 - ROP_OR = 14, 282 - ROP_SET = 15, 280 + enum a3xx_gras_tse_perfcounter_select { 281 + GRAS_TSEPERF_INPUT_PRIM = 0, 282 + GRAS_TSEPERF_INPUT_NULL_PRIM = 1, 283 + GRAS_TSEPERF_TRIVAL_REJ_PRIM = 2, 284 + GRAS_TSEPERF_CLIPPED_PRIM = 3, 285 + GRAS_TSEPERF_NEW_PRIM = 4, 286 + GRAS_TSEPERF_ZERO_AREA_PRIM = 5, 287 + GRAS_TSEPERF_FACENESS_CULLED_PRIM = 6, 288 + GRAS_TSEPERF_ZERO_PIXEL_PRIM = 7, 289 + GRAS_TSEPERF_OUTPUT_NULL_PRIM = 8, 290 + GRAS_TSEPERF_OUTPUT_VISIBLE_PRIM = 9, 291 + GRAS_TSEPERF_PRE_CLIP_PRIM = 10, 292 + GRAS_TSEPERF_POST_CLIP_PRIM = 11, 293 + GRAS_TSEPERF_WORKING_CYCLES = 12, 294 + GRAS_TSEPERF_PC_STARVE = 13, 295 + GRAS_TSERASPERF_STALL = 14, 296 + }; 297 + 298 + enum a3xx_gras_ras_perfcounter_select { 299 + GRAS_RASPERF_16X16_TILES = 0, 300 + GRAS_RASPERF_8X8_TILES = 1, 301 + GRAS_RASPERF_4X4_TILES = 2, 302 + GRAS_RASPERF_WORKING_CYCLES = 3, 303 + GRAS_RASPERF_STALL_CYCLES_BY_RB = 4, 304 + GRAS_RASPERF_STALL_CYCLES_BY_VSC = 5, 305 + GRAS_RASPERF_STARVE_CYCLES_BY_TSE = 6, 306 + }; 307 + 308 + enum a3xx_hlsq_perfcounter_select { 309 + HLSQ_PERF_SP_VS_CONSTANT = 0, 310 + HLSQ_PERF_SP_VS_INSTRUCTIONS = 1, 311 + HLSQ_PERF_SP_FS_CONSTANT = 2, 312 + HLSQ_PERF_SP_FS_INSTRUCTIONS = 3, 313 + HLSQ_PERF_TP_STATE = 4, 314 + HLSQ_PERF_QUADS = 5, 315 + HLSQ_PERF_PIXELS = 6, 316 + HLSQ_PERF_VERTICES = 7, 317 + HLSQ_PERF_FS8_THREADS = 8, 318 + HLSQ_PERF_FS16_THREADS = 9, 319 + HLSQ_PERF_FS32_THREADS = 10, 320 + HLSQ_PERF_VS8_THREADS = 11, 321 + HLSQ_PERF_VS16_THREADS = 12, 322 + HLSQ_PERF_SP_VS_DATA_BYTES = 13, 323 + HLSQ_PERF_SP_FS_DATA_BYTES = 14, 324 + HLSQ_PERF_ACTIVE_CYCLES = 15, 325 + HLSQ_PERF_STALL_CYCLES_SP_STATE = 16, 326 + HLSQ_PERF_STALL_CYCLES_SP_VS = 17, 327 + HLSQ_PERF_STALL_CYCLES_SP_FS = 18, 328 + HLSQ_PERF_STALL_CYCLES_UCHE = 19, 329 + HLSQ_PERF_RBBM_LOAD_CYCLES = 20, 330 + HLSQ_PERF_DI_TO_VS_START_SP0 = 21, 331 + HLSQ_PERF_DI_TO_FS_START_SP0 = 22, 332 + HLSQ_PERF_VS_START_TO_DONE_SP0 = 23, 333 + HLSQ_PERF_FS_START_TO_DONE_SP0 = 24, 334 + HLSQ_PERF_SP_STATE_COPY_CYCLES_VS = 25, 335 + HLSQ_PERF_SP_STATE_COPY_CYCLES_FS = 26, 336 + HLSQ_PERF_UCHE_LATENCY_CYCLES = 27, 337 + HLSQ_PERF_UCHE_LATENCY_COUNT = 28, 338 + }; 339 + 340 + enum a3xx_pc_perfcounter_select { 341 + PC_PCPERF_VISIBILITY_STREAMS = 0, 342 + PC_PCPERF_TOTAL_INSTANCES = 1, 343 + PC_PCPERF_PRIMITIVES_PC_VPC = 2, 344 + PC_PCPERF_PRIMITIVES_KILLED_BY_VS = 3, 345 + PC_PCPERF_PRIMITIVES_VISIBLE_BY_VS = 4, 346 + PC_PCPERF_DRAWCALLS_KILLED_BY_VS = 5, 347 + PC_PCPERF_DRAWCALLS_VISIBLE_BY_VS = 6, 348 + PC_PCPERF_VERTICES_TO_VFD = 7, 349 + PC_PCPERF_REUSED_VERTICES = 8, 350 + PC_PCPERF_CYCLES_STALLED_BY_VFD = 9, 351 + PC_PCPERF_CYCLES_STALLED_BY_TSE = 10, 352 + PC_PCPERF_CYCLES_STALLED_BY_VBIF = 11, 353 + PC_PCPERF_CYCLES_IS_WORKING = 12, 354 + }; 355 + 356 + enum a3xx_rb_perfcounter_select { 357 + RB_RBPERF_ACTIVE_CYCLES_ANY = 0, 358 + RB_RBPERF_ACTIVE_CYCLES_ALL = 1, 359 + RB_RBPERF_STARVE_CYCLES_BY_SP = 2, 360 + RB_RBPERF_STARVE_CYCLES_BY_RAS = 3, 361 + RB_RBPERF_STARVE_CYCLES_BY_MARB = 4, 362 + RB_RBPERF_STALL_CYCLES_BY_MARB = 5, 363 + RB_RBPERF_STALL_CYCLES_BY_HLSQ = 6, 364 + RB_RBPERF_RB_MARB_DATA = 7, 365 + RB_RBPERF_SP_RB_QUAD = 8, 366 + RB_RBPERF_RAS_EARLY_Z_QUADS = 9, 367 + RB_RBPERF_GMEM_CH0_READ = 10, 368 + RB_RBPERF_GMEM_CH1_READ = 11, 369 + RB_RBPERF_GMEM_CH0_WRITE = 12, 370 + RB_RBPERF_GMEM_CH1_WRITE = 13, 371 + RB_RBPERF_CP_CONTEXT_DONE = 14, 372 + RB_RBPERF_CP_CACHE_FLUSH = 15, 373 + RB_RBPERF_CP_ZPASS_DONE = 16, 374 + }; 375 + 376 + enum a3xx_rbbm_perfcounter_select { 377 + RBBM_ALAWYS_ON = 0, 378 + RBBM_VBIF_BUSY = 1, 379 + RBBM_TSE_BUSY = 2, 380 + RBBM_RAS_BUSY = 3, 381 + RBBM_PC_DCALL_BUSY = 4, 382 + RBBM_PC_VSD_BUSY = 5, 383 + RBBM_VFD_BUSY = 6, 384 + RBBM_VPC_BUSY = 7, 385 + RBBM_UCHE_BUSY = 8, 386 + RBBM_VSC_BUSY = 9, 387 + RBBM_HLSQ_BUSY = 10, 388 + RBBM_ANY_RB_BUSY = 11, 389 + RBBM_ANY_TEX_BUSY = 12, 390 + RBBM_ANY_USP_BUSY = 13, 391 + RBBM_ANY_MARB_BUSY = 14, 392 + RBBM_ANY_ARB_BUSY = 15, 393 + RBBM_AHB_STATUS_BUSY = 16, 394 + RBBM_AHB_STATUS_STALLED = 17, 395 + RBBM_AHB_STATUS_TXFR = 18, 396 + RBBM_AHB_STATUS_TXFR_SPLIT = 19, 397 + RBBM_AHB_STATUS_TXFR_ERROR = 20, 398 + RBBM_AHB_STATUS_LONG_STALL = 21, 399 + RBBM_RBBM_STATUS_MASKED = 22, 400 + }; 401 + 402 + enum a3xx_sp_perfcounter_select { 403 + SP_LM_LOAD_INSTRUCTIONS = 0, 404 + SP_LM_STORE_INSTRUCTIONS = 1, 405 + SP_LM_ATOMICS = 2, 406 + SP_UCHE_LOAD_INSTRUCTIONS = 3, 407 + SP_UCHE_STORE_INSTRUCTIONS = 4, 408 + SP_UCHE_ATOMICS = 5, 409 + SP_VS_TEX_INSTRUCTIONS = 6, 410 + SP_VS_CFLOW_INSTRUCTIONS = 7, 411 + SP_VS_EFU_INSTRUCTIONS = 8, 412 + SP_VS_FULL_ALU_INSTRUCTIONS = 9, 413 + SP_VS_HALF_ALU_INSTRUCTIONS = 10, 414 + SP_FS_TEX_INSTRUCTIONS = 11, 415 + SP_FS_CFLOW_INSTRUCTIONS = 12, 416 + SP_FS_EFU_INSTRUCTIONS = 13, 417 + SP_FS_FULL_ALU_INSTRUCTIONS = 14, 418 + SP_FS_HALF_ALU_INSTRUCTIONS = 15, 419 + SP_FS_BARY_INSTRUCTIONS = 16, 420 + SP_VS_INSTRUCTIONS = 17, 421 + SP_FS_INSTRUCTIONS = 18, 422 + SP_ADDR_LOCK_COUNT = 19, 423 + SP_UCHE_READ_TRANS = 20, 424 + SP_UCHE_WRITE_TRANS = 21, 425 + SP_EXPORT_VPC_TRANS = 22, 426 + SP_EXPORT_RB_TRANS = 23, 427 + SP_PIXELS_KILLED = 24, 428 + SP_ICL1_REQUESTS = 25, 429 + SP_ICL1_MISSES = 26, 430 + SP_ICL0_REQUESTS = 27, 431 + SP_ICL0_MISSES = 28, 432 + SP_ALU_ACTIVE_CYCLES = 29, 433 + SP_EFU_ACTIVE_CYCLES = 30, 434 + SP_STALL_CYCLES_BY_VPC = 31, 435 + SP_STALL_CYCLES_BY_TP = 32, 436 + SP_STALL_CYCLES_BY_UCHE = 33, 437 + SP_STALL_CYCLES_BY_RB = 34, 438 + SP_ACTIVE_CYCLES_ANY = 35, 439 + SP_ACTIVE_CYCLES_ALL = 36, 440 + }; 441 + 442 + enum a3xx_tp_perfcounter_select { 443 + TPL1_TPPERF_L1_REQUESTS = 0, 444 + TPL1_TPPERF_TP0_L1_REQUESTS = 1, 445 + TPL1_TPPERF_TP0_L1_MISSES = 2, 446 + TPL1_TPPERF_TP1_L1_REQUESTS = 3, 447 + TPL1_TPPERF_TP1_L1_MISSES = 4, 448 + TPL1_TPPERF_TP2_L1_REQUESTS = 5, 449 + TPL1_TPPERF_TP2_L1_MISSES = 6, 450 + TPL1_TPPERF_TP3_L1_REQUESTS = 7, 451 + TPL1_TPPERF_TP3_L1_MISSES = 8, 452 + TPL1_TPPERF_OUTPUT_TEXELS_POINT = 9, 453 + TPL1_TPPERF_OUTPUT_TEXELS_BILINEAR = 10, 454 + TPL1_TPPERF_OUTPUT_TEXELS_MIP = 11, 455 + TPL1_TPPERF_OUTPUT_TEXELS_ANISO = 12, 456 + TPL1_TPPERF_BILINEAR_OPS = 13, 457 + TPL1_TPPERF_QUADSQUADS_OFFSET = 14, 458 + TPL1_TPPERF_QUADQUADS_SHADOW = 15, 459 + TPL1_TPPERF_QUADS_ARRAY = 16, 460 + TPL1_TPPERF_QUADS_PROJECTION = 17, 461 + TPL1_TPPERF_QUADS_GRADIENT = 18, 462 + TPL1_TPPERF_QUADS_1D2D = 19, 463 + TPL1_TPPERF_QUADS_3DCUBE = 20, 464 + TPL1_TPPERF_ZERO_LOD = 21, 465 + TPL1_TPPERF_OUTPUT_TEXELS = 22, 466 + TPL1_TPPERF_ACTIVE_CYCLES_ANY = 23, 467 + TPL1_TPPERF_ACTIVE_CYCLES_ALL = 24, 468 + TPL1_TPPERF_STALL_CYCLES_BY_ARB = 25, 469 + TPL1_TPPERF_LATENCY = 26, 470 + TPL1_TPPERF_LATENCY_TRANS = 27, 471 + }; 472 + 473 + enum a3xx_vfd_perfcounter_select { 474 + VFD_PERF_UCHE_BYTE_FETCHED = 0, 475 + VFD_PERF_UCHE_TRANS = 1, 476 + VFD_PERF_VPC_BYPASS_COMPONENTS = 2, 477 + VFD_PERF_FETCH_INSTRUCTIONS = 3, 478 + VFD_PERF_DECODE_INSTRUCTIONS = 4, 479 + VFD_PERF_ACTIVE_CYCLES = 5, 480 + VFD_PERF_STALL_CYCLES_UCHE = 6, 481 + VFD_PERF_STALL_CYCLES_HLSQ = 7, 482 + VFD_PERF_STALL_CYCLES_VPC_BYPASS = 8, 483 + VFD_PERF_STALL_CYCLES_VPC_ALLOC = 9, 484 + }; 485 + 486 + enum a3xx_vpc_perfcounter_select { 487 + VPC_PERF_SP_LM_PRIMITIVES = 0, 488 + VPC_PERF_COMPONENTS_FROM_SP = 1, 489 + VPC_PERF_SP_LM_COMPONENTS = 2, 490 + VPC_PERF_ACTIVE_CYCLES = 3, 491 + VPC_PERF_STALL_CYCLES_LM = 4, 492 + VPC_PERF_STALL_CYCLES_RAS = 5, 493 + }; 494 + 495 + enum a3xx_uche_perfcounter_select { 496 + UCHE_UCHEPERF_VBIF_READ_BEATS_TP = 0, 497 + UCHE_UCHEPERF_VBIF_READ_BEATS_VFD = 1, 498 + UCHE_UCHEPERF_VBIF_READ_BEATS_HLSQ = 2, 499 + UCHE_UCHEPERF_VBIF_READ_BEATS_MARB = 3, 500 + UCHE_UCHEPERF_VBIF_READ_BEATS_SP = 4, 501 + UCHE_UCHEPERF_READ_REQUESTS_TP = 8, 502 + UCHE_UCHEPERF_READ_REQUESTS_VFD = 9, 503 + UCHE_UCHEPERF_READ_REQUESTS_HLSQ = 10, 504 + UCHE_UCHEPERF_READ_REQUESTS_MARB = 11, 505 + UCHE_UCHEPERF_READ_REQUESTS_SP = 12, 506 + UCHE_UCHEPERF_WRITE_REQUESTS_MARB = 13, 507 + UCHE_UCHEPERF_WRITE_REQUESTS_SP = 14, 508 + UCHE_UCHEPERF_TAG_CHECK_FAILS = 15, 509 + UCHE_UCHEPERF_EVICTS = 16, 510 + UCHE_UCHEPERF_FLUSHES = 17, 511 + UCHE_UCHEPERF_VBIF_LATENCY_CYCLES = 18, 512 + UCHE_UCHEPERF_VBIF_LATENCY_SAMPLES = 19, 513 + UCHE_UCHEPERF_ACTIVE_CYCLES = 20, 283 514 }; 284 515 285 516 enum a3xx_rb_blend_opcode { ··· 1684 1429 #define REG_A3XX_PC_RESTART_INDEX 0x000021ed 1685 1430 1686 1431 #define REG_A3XX_HLSQ_CONTROL_0_REG 0x00002200 1687 - #define A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE__MASK 0x00000010 1432 + #define A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE__MASK 0x00000030 1688 1433 #define A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE__SHIFT 4 1689 1434 static inline uint32_t A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE(enum a3xx_threadsize val) 1690 1435 { 1691 1436 return ((val) << A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE__SHIFT) & A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE__MASK; 1692 1437 } 1693 1438 #define A3XX_HLSQ_CONTROL_0_REG_FSSUPERTHREADENABLE 0x00000040 1439 + #define A3XX_HLSQ_CONTROL_0_REG_COMPUTEMODE 0x00000100 1694 1440 #define A3XX_HLSQ_CONTROL_0_REG_SPSHADERRESTART 0x00000200 1695 1441 #define A3XX_HLSQ_CONTROL_0_REG_RESERVED2 0x00000400 1442 + #define A3XX_HLSQ_CONTROL_0_REG_CYCLETIMEOUTLIMITVPC__MASK 0x00fff000 1443 + #define A3XX_HLSQ_CONTROL_0_REG_CYCLETIMEOUTLIMITVPC__SHIFT 12 1444 + static inline uint32_t A3XX_HLSQ_CONTROL_0_REG_CYCLETIMEOUTLIMITVPC(uint32_t val) 1445 + { 1446 + return ((val) << A3XX_HLSQ_CONTROL_0_REG_CYCLETIMEOUTLIMITVPC__SHIFT) & A3XX_HLSQ_CONTROL_0_REG_CYCLETIMEOUTLIMITVPC__MASK; 1447 + } 1448 + #define A3XX_HLSQ_CONTROL_0_REG_FSONLYTEX 0x02000000 1696 1449 #define A3XX_HLSQ_CONTROL_0_REG_CHUNKDISABLE 0x04000000 1697 1450 #define A3XX_HLSQ_CONTROL_0_REG_CONSTMODE__MASK 0x08000000 1698 1451 #define A3XX_HLSQ_CONTROL_0_REG_CONSTMODE__SHIFT 27 ··· 1714 1451 #define A3XX_HLSQ_CONTROL_0_REG_SINGLECONTEXT 0x80000000 1715 1452 1716 1453 #define REG_A3XX_HLSQ_CONTROL_1_REG 0x00002201 1717 - #define A3XX_HLSQ_CONTROL_1_REG_VSTHREADSIZE__MASK 0x00000040 1454 + #define A3XX_HLSQ_CONTROL_1_REG_VSTHREADSIZE__MASK 0x000000c0 1718 1455 #define A3XX_HLSQ_CONTROL_1_REG_VSTHREADSIZE__SHIFT 6 1719 1456 static inline uint32_t A3XX_HLSQ_CONTROL_1_REG_VSTHREADSIZE(enum a3xx_threadsize val) 1720 1457 { 1721 1458 return ((val) << A3XX_HLSQ_CONTROL_1_REG_VSTHREADSIZE__SHIFT) & A3XX_HLSQ_CONTROL_1_REG_VSTHREADSIZE__MASK; 1722 1459 } 1723 1460 #define A3XX_HLSQ_CONTROL_1_REG_VSSUPERTHREADENABLE 0x00000100 1724 - #define A3XX_HLSQ_CONTROL_1_REG_RESERVED1 0x00000200 1725 - #define A3XX_HLSQ_CONTROL_1_REG_ZWCOORD 0x02000000 1461 + #define A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDXYREGID__MASK 0x00ff0000 1462 + #define A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDXYREGID__SHIFT 16 1463 + static inline uint32_t A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDXYREGID(uint32_t val) 1464 + { 1465 + return ((val) << A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDXYREGID__SHIFT) & A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDXYREGID__MASK; 1466 + } 1467 + #define A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDZWREGID__MASK 0xff000000 1468 + #define A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDZWREGID__SHIFT 24 1469 + static inline uint32_t A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDZWREGID(uint32_t val) 1470 + { 1471 + return ((val) << A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDZWREGID__SHIFT) & A3XX_HLSQ_CONTROL_1_REG_FRAGCOORDZWREGID__MASK; 1472 + } 1726 1473 1727 1474 #define REG_A3XX_HLSQ_CONTROL_2_REG 0x00002202 1475 + #define A3XX_HLSQ_CONTROL_2_REG_FACENESSREGID__MASK 0x000003fc 1476 + #define A3XX_HLSQ_CONTROL_2_REG_FACENESSREGID__SHIFT 2 1477 + static inline uint32_t A3XX_HLSQ_CONTROL_2_REG_FACENESSREGID(uint32_t val) 1478 + { 1479 + return ((val) << A3XX_HLSQ_CONTROL_2_REG_FACENESSREGID__SHIFT) & A3XX_HLSQ_CONTROL_2_REG_FACENESSREGID__MASK; 1480 + } 1481 + #define A3XX_HLSQ_CONTROL_2_REG_COVVALUEREGID__MASK 0x03fc0000 1482 + #define A3XX_HLSQ_CONTROL_2_REG_COVVALUEREGID__SHIFT 18 1483 + static inline uint32_t A3XX_HLSQ_CONTROL_2_REG_COVVALUEREGID(uint32_t val) 1484 + { 1485 + return ((val) << A3XX_HLSQ_CONTROL_2_REG_COVVALUEREGID__SHIFT) & A3XX_HLSQ_CONTROL_2_REG_COVVALUEREGID__MASK; 1486 + } 1728 1487 #define A3XX_HLSQ_CONTROL_2_REG_PRIMALLOCTHRESHOLD__MASK 0xfc000000 1729 1488 #define A3XX_HLSQ_CONTROL_2_REG_PRIMALLOCTHRESHOLD__SHIFT 26 1730 1489 static inline uint32_t A3XX_HLSQ_CONTROL_2_REG_PRIMALLOCTHRESHOLD(uint32_t val) ··· 1763 1478 } 1764 1479 1765 1480 #define REG_A3XX_HLSQ_VS_CONTROL_REG 0x00002204 1766 - #define A3XX_HLSQ_VS_CONTROL_REG_CONSTLENGTH__MASK 0x00000fff 1481 + #define A3XX_HLSQ_VS_CONTROL_REG_CONSTLENGTH__MASK 0x000003ff 1767 1482 #define A3XX_HLSQ_VS_CONTROL_REG_CONSTLENGTH__SHIFT 0 1768 1483 static inline uint32_t A3XX_HLSQ_VS_CONTROL_REG_CONSTLENGTH(uint32_t val) 1769 1484 { 1770 1485 return ((val) << A3XX_HLSQ_VS_CONTROL_REG_CONSTLENGTH__SHIFT) & A3XX_HLSQ_VS_CONTROL_REG_CONSTLENGTH__MASK; 1771 1486 } 1772 - #define A3XX_HLSQ_VS_CONTROL_REG_CONSTSTARTOFFSET__MASK 0x00fff000 1487 + #define A3XX_HLSQ_VS_CONTROL_REG_CONSTSTARTOFFSET__MASK 0x001ff000 1773 1488 #define A3XX_HLSQ_VS_CONTROL_REG_CONSTSTARTOFFSET__SHIFT 12 1774 1489 static inline uint32_t A3XX_HLSQ_VS_CONTROL_REG_CONSTSTARTOFFSET(uint32_t val) 1775 1490 { ··· 1783 1498 } 1784 1499 1785 1500 #define REG_A3XX_HLSQ_FS_CONTROL_REG 0x00002205 1786 - #define A3XX_HLSQ_FS_CONTROL_REG_CONSTLENGTH__MASK 0x00000fff 1501 + #define A3XX_HLSQ_FS_CONTROL_REG_CONSTLENGTH__MASK 0x000003ff 1787 1502 #define A3XX_HLSQ_FS_CONTROL_REG_CONSTLENGTH__SHIFT 0 1788 1503 static inline uint32_t A3XX_HLSQ_FS_CONTROL_REG_CONSTLENGTH(uint32_t val) 1789 1504 { 1790 1505 return ((val) << A3XX_HLSQ_FS_CONTROL_REG_CONSTLENGTH__SHIFT) & A3XX_HLSQ_FS_CONTROL_REG_CONSTLENGTH__MASK; 1791 1506 } 1792 - #define A3XX_HLSQ_FS_CONTROL_REG_CONSTSTARTOFFSET__MASK 0x00fff000 1507 + #define A3XX_HLSQ_FS_CONTROL_REG_CONSTSTARTOFFSET__MASK 0x001ff000 1793 1508 #define A3XX_HLSQ_FS_CONTROL_REG_CONSTSTARTOFFSET__SHIFT 12 1794 1509 static inline uint32_t A3XX_HLSQ_FS_CONTROL_REG_CONSTSTARTOFFSET(uint32_t val) 1795 1510 { ··· 1803 1518 } 1804 1519 1805 1520 #define REG_A3XX_HLSQ_CONST_VSPRESV_RANGE_REG 0x00002206 1806 - #define A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_STARTENTRY__MASK 0x0000ffff 1521 + #define A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_STARTENTRY__MASK 0x000001ff 1807 1522 #define A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_STARTENTRY__SHIFT 0 1808 1523 static inline uint32_t A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_STARTENTRY(uint32_t val) 1809 1524 { 1810 1525 return ((val) << A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_STARTENTRY__SHIFT) & A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_STARTENTRY__MASK; 1811 1526 } 1812 - #define A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_ENDENTRY__MASK 0xffff0000 1527 + #define A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_ENDENTRY__MASK 0x01ff0000 1813 1528 #define A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_ENDENTRY__SHIFT 16 1814 1529 static inline uint32_t A3XX_HLSQ_CONST_VSPRESV_RANGE_REG_ENDENTRY(uint32_t val) 1815 1530 { ··· 1817 1532 } 1818 1533 1819 1534 #define REG_A3XX_HLSQ_CONST_FSPRESV_RANGE_REG 0x00002207 1820 - #define A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY__MASK 0x0000ffff 1535 + #define A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY__MASK 0x000001ff 1821 1536 #define A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY__SHIFT 0 1822 1537 static inline uint32_t A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY(uint32_t val) 1823 1538 { 1824 1539 return ((val) << A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY__SHIFT) & A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_STARTENTRY__MASK; 1825 1540 } 1826 - #define A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_ENDENTRY__MASK 0xffff0000 1541 + #define A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_ENDENTRY__MASK 0x01ff0000 1827 1542 #define A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_ENDENTRY__SHIFT 16 1828 1543 static inline uint32_t A3XX_HLSQ_CONST_FSPRESV_RANGE_REG_ENDENTRY(uint32_t val) 1829 1544 { ··· 1905 1620 } 1906 1621 1907 1622 #define REG_A3XX_VFD_CONTROL_1 0x00002241 1908 - #define A3XX_VFD_CONTROL_1_MAXSTORAGE__MASK 0x0000ffff 1623 + #define A3XX_VFD_CONTROL_1_MAXSTORAGE__MASK 0x0000000f 1909 1624 #define A3XX_VFD_CONTROL_1_MAXSTORAGE__SHIFT 0 1910 1625 static inline uint32_t A3XX_VFD_CONTROL_1_MAXSTORAGE(uint32_t val) 1911 1626 { 1912 1627 return ((val) << A3XX_VFD_CONTROL_1_MAXSTORAGE__SHIFT) & A3XX_VFD_CONTROL_1_MAXSTORAGE__MASK; 1628 + } 1629 + #define A3XX_VFD_CONTROL_1_MAXTHRESHOLD__MASK 0x000000f0 1630 + #define A3XX_VFD_CONTROL_1_MAXTHRESHOLD__SHIFT 4 1631 + static inline uint32_t A3XX_VFD_CONTROL_1_MAXTHRESHOLD(uint32_t val) 1632 + { 1633 + return ((val) << A3XX_VFD_CONTROL_1_MAXTHRESHOLD__SHIFT) & A3XX_VFD_CONTROL_1_MAXTHRESHOLD__MASK; 1634 + } 1635 + #define A3XX_VFD_CONTROL_1_MINTHRESHOLD__MASK 0x00000f00 1636 + #define A3XX_VFD_CONTROL_1_MINTHRESHOLD__SHIFT 8 1637 + static inline uint32_t A3XX_VFD_CONTROL_1_MINTHRESHOLD(uint32_t val) 1638 + { 1639 + return ((val) << A3XX_VFD_CONTROL_1_MINTHRESHOLD__SHIFT) & A3XX_VFD_CONTROL_1_MINTHRESHOLD__MASK; 1913 1640 } 1914 1641 #define A3XX_VFD_CONTROL_1_REGID4VTX__MASK 0x00ff0000 1915 1642 #define A3XX_VFD_CONTROL_1_REGID4VTX__SHIFT 16 ··· 2305 2008 return ((val) << A3XX_SP_VS_CTRL_REG0_INSTRBUFFERMODE__SHIFT) & A3XX_SP_VS_CTRL_REG0_INSTRBUFFERMODE__MASK; 2306 2009 } 2307 2010 #define A3XX_SP_VS_CTRL_REG0_CACHEINVALID 0x00000004 2011 + #define A3XX_SP_VS_CTRL_REG0_ALUSCHMODE 0x00000008 2308 2012 #define A3XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT__MASK 0x000003f0 2309 2013 #define A3XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT 4 2310 2014 static inline uint32_t A3XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val) 2311 2015 { 2312 2016 return ((val) << A3XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT) & A3XX_SP_VS_CTRL_REG0_HALFREGFOOTPRINT__MASK; 2313 2017 } 2314 - #define A3XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__MASK 0x0003fc00 2018 + #define A3XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__MASK 0x0000fc00 2315 2019 #define A3XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT 10 2316 2020 static inline uint32_t A3XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val) 2317 2021 { 2318 2022 return ((val) << A3XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A3XX_SP_VS_CTRL_REG0_FULLREGFOOTPRINT__MASK; 2319 - } 2320 - #define A3XX_SP_VS_CTRL_REG0_INOUTREGOVERLAP__MASK 0x000c0000 2321 - #define A3XX_SP_VS_CTRL_REG0_INOUTREGOVERLAP__SHIFT 18 2322 - static inline uint32_t A3XX_SP_VS_CTRL_REG0_INOUTREGOVERLAP(uint32_t val) 2323 - { 2324 - return ((val) << A3XX_SP_VS_CTRL_REG0_INOUTREGOVERLAP__SHIFT) & A3XX_SP_VS_CTRL_REG0_INOUTREGOVERLAP__MASK; 2325 2023 } 2326 2024 #define A3XX_SP_VS_CTRL_REG0_THREADSIZE__MASK 0x00100000 2327 2025 #define A3XX_SP_VS_CTRL_REG0_THREADSIZE__SHIFT 20 ··· 2325 2033 return ((val) << A3XX_SP_VS_CTRL_REG0_THREADSIZE__SHIFT) & A3XX_SP_VS_CTRL_REG0_THREADSIZE__MASK; 2326 2034 } 2327 2035 #define A3XX_SP_VS_CTRL_REG0_SUPERTHREADMODE 0x00200000 2328 - #define A3XX_SP_VS_CTRL_REG0_PIXLODENABLE 0x00400000 2329 - #define A3XX_SP_VS_CTRL_REG0_COMPUTEMODE 0x00800000 2330 2036 #define A3XX_SP_VS_CTRL_REG0_LENGTH__MASK 0xff000000 2331 2037 #define A3XX_SP_VS_CTRL_REG0_LENGTH__SHIFT 24 2332 2038 static inline uint32_t A3XX_SP_VS_CTRL_REG0_LENGTH(uint32_t val) ··· 2365 2075 { 2366 2076 return ((val) << A3XX_SP_VS_PARAM_REG_PSIZEREGID__SHIFT) & A3XX_SP_VS_PARAM_REG_PSIZEREGID__MASK; 2367 2077 } 2368 - #define A3XX_SP_VS_PARAM_REG_TOTALVSOUTVAR__MASK 0xfff00000 2078 + #define A3XX_SP_VS_PARAM_REG_POS2DMODE 0x00010000 2079 + #define A3XX_SP_VS_PARAM_REG_TOTALVSOUTVAR__MASK 0x01f00000 2369 2080 #define A3XX_SP_VS_PARAM_REG_TOTALVSOUTVAR__SHIFT 20 2370 2081 static inline uint32_t A3XX_SP_VS_PARAM_REG_TOTALVSOUTVAR(uint32_t val) 2371 2082 { ··· 2376 2085 static inline uint32_t REG_A3XX_SP_VS_OUT(uint32_t i0) { return 0x000022c7 + 0x1*i0; } 2377 2086 2378 2087 static inline uint32_t REG_A3XX_SP_VS_OUT_REG(uint32_t i0) { return 0x000022c7 + 0x1*i0; } 2379 - #define A3XX_SP_VS_OUT_REG_A_REGID__MASK 0x000001ff 2088 + #define A3XX_SP_VS_OUT_REG_A_REGID__MASK 0x000000ff 2380 2089 #define A3XX_SP_VS_OUT_REG_A_REGID__SHIFT 0 2381 2090 static inline uint32_t A3XX_SP_VS_OUT_REG_A_REGID(uint32_t val) 2382 2091 { 2383 2092 return ((val) << A3XX_SP_VS_OUT_REG_A_REGID__SHIFT) & A3XX_SP_VS_OUT_REG_A_REGID__MASK; 2384 2093 } 2094 + #define A3XX_SP_VS_OUT_REG_A_HALF 0x00000100 2385 2095 #define A3XX_SP_VS_OUT_REG_A_COMPMASK__MASK 0x00001e00 2386 2096 #define A3XX_SP_VS_OUT_REG_A_COMPMASK__SHIFT 9 2387 2097 static inline uint32_t A3XX_SP_VS_OUT_REG_A_COMPMASK(uint32_t val) 2388 2098 { 2389 2099 return ((val) << A3XX_SP_VS_OUT_REG_A_COMPMASK__SHIFT) & A3XX_SP_VS_OUT_REG_A_COMPMASK__MASK; 2390 2100 } 2391 - #define A3XX_SP_VS_OUT_REG_B_REGID__MASK 0x01ff0000 2101 + #define A3XX_SP_VS_OUT_REG_B_REGID__MASK 0x00ff0000 2392 2102 #define A3XX_SP_VS_OUT_REG_B_REGID__SHIFT 16 2393 2103 static inline uint32_t A3XX_SP_VS_OUT_REG_B_REGID(uint32_t val) 2394 2104 { 2395 2105 return ((val) << A3XX_SP_VS_OUT_REG_B_REGID__SHIFT) & A3XX_SP_VS_OUT_REG_B_REGID__MASK; 2396 2106 } 2107 + #define A3XX_SP_VS_OUT_REG_B_HALF 0x01000000 2397 2108 #define A3XX_SP_VS_OUT_REG_B_COMPMASK__MASK 0x1e000000 2398 2109 #define A3XX_SP_VS_OUT_REG_B_COMPMASK__SHIFT 25 2399 2110 static inline uint32_t A3XX_SP_VS_OUT_REG_B_COMPMASK(uint32_t val) ··· 2406 2113 static inline uint32_t REG_A3XX_SP_VS_VPC_DST(uint32_t i0) { return 0x000022d0 + 0x1*i0; } 2407 2114 2408 2115 static inline uint32_t REG_A3XX_SP_VS_VPC_DST_REG(uint32_t i0) { return 0x000022d0 + 0x1*i0; } 2409 - #define A3XX_SP_VS_VPC_DST_REG_OUTLOC0__MASK 0x000000ff 2116 + #define A3XX_SP_VS_VPC_DST_REG_OUTLOC0__MASK 0x0000007f 2410 2117 #define A3XX_SP_VS_VPC_DST_REG_OUTLOC0__SHIFT 0 2411 2118 static inline uint32_t A3XX_SP_VS_VPC_DST_REG_OUTLOC0(uint32_t val) 2412 2119 { 2413 2120 return ((val) << A3XX_SP_VS_VPC_DST_REG_OUTLOC0__SHIFT) & A3XX_SP_VS_VPC_DST_REG_OUTLOC0__MASK; 2414 2121 } 2415 - #define A3XX_SP_VS_VPC_DST_REG_OUTLOC1__MASK 0x0000ff00 2122 + #define A3XX_SP_VS_VPC_DST_REG_OUTLOC1__MASK 0x00007f00 2416 2123 #define A3XX_SP_VS_VPC_DST_REG_OUTLOC1__SHIFT 8 2417 2124 static inline uint32_t A3XX_SP_VS_VPC_DST_REG_OUTLOC1(uint32_t val) 2418 2125 { 2419 2126 return ((val) << A3XX_SP_VS_VPC_DST_REG_OUTLOC1__SHIFT) & A3XX_SP_VS_VPC_DST_REG_OUTLOC1__MASK; 2420 2127 } 2421 - #define A3XX_SP_VS_VPC_DST_REG_OUTLOC2__MASK 0x00ff0000 2128 + #define A3XX_SP_VS_VPC_DST_REG_OUTLOC2__MASK 0x007f0000 2422 2129 #define A3XX_SP_VS_VPC_DST_REG_OUTLOC2__SHIFT 16 2423 2130 static inline uint32_t A3XX_SP_VS_VPC_DST_REG_OUTLOC2(uint32_t val) 2424 2131 { 2425 2132 return ((val) << A3XX_SP_VS_VPC_DST_REG_OUTLOC2__SHIFT) & A3XX_SP_VS_VPC_DST_REG_OUTLOC2__MASK; 2426 2133 } 2427 - #define A3XX_SP_VS_VPC_DST_REG_OUTLOC3__MASK 0xff000000 2134 + #define A3XX_SP_VS_VPC_DST_REG_OUTLOC3__MASK 0x7f000000 2428 2135 #define A3XX_SP_VS_VPC_DST_REG_OUTLOC3__SHIFT 24 2429 2136 static inline uint32_t A3XX_SP_VS_VPC_DST_REG_OUTLOC3(uint32_t val) 2430 2137 { ··· 2432 2139 } 2433 2140 2434 2141 #define REG_A3XX_SP_VS_OBJ_OFFSET_REG 0x000022d4 2142 + #define A3XX_SP_VS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__MASK 0x0000ffff 2143 + #define A3XX_SP_VS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__SHIFT 0 2144 + static inline uint32_t A3XX_SP_VS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET(uint32_t val) 2145 + { 2146 + return ((val) << A3XX_SP_VS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__SHIFT) & A3XX_SP_VS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__MASK; 2147 + } 2435 2148 #define A3XX_SP_VS_OBJ_OFFSET_REG_CONSTOBJECTOFFSET__MASK 0x01ff0000 2436 2149 #define A3XX_SP_VS_OBJ_OFFSET_REG_CONSTOBJECTOFFSET__SHIFT 16 2437 2150 static inline uint32_t A3XX_SP_VS_OBJ_OFFSET_REG_CONSTOBJECTOFFSET(uint32_t val) ··· 2454 2155 #define REG_A3XX_SP_VS_OBJ_START_REG 0x000022d5 2455 2156 2456 2157 #define REG_A3XX_SP_VS_PVT_MEM_PARAM_REG 0x000022d6 2158 + #define A3XX_SP_VS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__MASK 0x000000ff 2159 + #define A3XX_SP_VS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__SHIFT 0 2160 + static inline uint32_t A3XX_SP_VS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM(uint32_t val) 2161 + { 2162 + return ((val) << A3XX_SP_VS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__SHIFT) & A3XX_SP_VS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__MASK; 2163 + } 2164 + #define A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__MASK 0x00ffff00 2165 + #define A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__SHIFT 8 2166 + static inline uint32_t A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKOFFSET(uint32_t val) 2167 + { 2168 + return ((val) << A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__SHIFT) & A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__MASK; 2169 + } 2170 + #define A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__MASK 0xff000000 2171 + #define A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__SHIFT 24 2172 + static inline uint32_t A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD(uint32_t val) 2173 + { 2174 + return ((val) << A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__SHIFT) & A3XX_SP_VS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__MASK; 2175 + } 2457 2176 2458 2177 #define REG_A3XX_SP_VS_PVT_MEM_ADDR_REG 0x000022d7 2178 + #define A3XX_SP_VS_PVT_MEM_ADDR_REG_BURSTLEN__MASK 0x0000001f 2179 + #define A3XX_SP_VS_PVT_MEM_ADDR_REG_BURSTLEN__SHIFT 0 2180 + static inline uint32_t A3XX_SP_VS_PVT_MEM_ADDR_REG_BURSTLEN(uint32_t val) 2181 + { 2182 + return ((val) << A3XX_SP_VS_PVT_MEM_ADDR_REG_BURSTLEN__SHIFT) & A3XX_SP_VS_PVT_MEM_ADDR_REG_BURSTLEN__MASK; 2183 + } 2184 + #define A3XX_SP_VS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__MASK 0xffffffe0 2185 + #define A3XX_SP_VS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__SHIFT 5 2186 + static inline uint32_t A3XX_SP_VS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS(uint32_t val) 2187 + { 2188 + return ((val >> 5) << A3XX_SP_VS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__SHIFT) & A3XX_SP_VS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__MASK; 2189 + } 2459 2190 2460 2191 #define REG_A3XX_SP_VS_PVT_MEM_SIZE_REG 0x000022d8 2461 2192 ··· 2511 2182 return ((val) << A3XX_SP_FS_CTRL_REG0_INSTRBUFFERMODE__SHIFT) & A3XX_SP_FS_CTRL_REG0_INSTRBUFFERMODE__MASK; 2512 2183 } 2513 2184 #define A3XX_SP_FS_CTRL_REG0_CACHEINVALID 0x00000004 2185 + #define A3XX_SP_FS_CTRL_REG0_ALUSCHMODE 0x00000008 2514 2186 #define A3XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT__MASK 0x000003f0 2515 2187 #define A3XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT 4 2516 2188 static inline uint32_t A3XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT(uint32_t val) 2517 2189 { 2518 2190 return ((val) << A3XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT__SHIFT) & A3XX_SP_FS_CTRL_REG0_HALFREGFOOTPRINT__MASK; 2519 2191 } 2520 - #define A3XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__MASK 0x0003fc00 2192 + #define A3XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__MASK 0x0000fc00 2521 2193 #define A3XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT 10 2522 2194 static inline uint32_t A3XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT(uint32_t val) 2523 2195 { 2524 2196 return ((val) << A3XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__SHIFT) & A3XX_SP_FS_CTRL_REG0_FULLREGFOOTPRINT__MASK; 2525 2197 } 2526 - #define A3XX_SP_FS_CTRL_REG0_INOUTREGOVERLAP__MASK 0x000c0000 2527 - #define A3XX_SP_FS_CTRL_REG0_INOUTREGOVERLAP__SHIFT 18 2528 - static inline uint32_t A3XX_SP_FS_CTRL_REG0_INOUTREGOVERLAP(uint32_t val) 2529 - { 2530 - return ((val) << A3XX_SP_FS_CTRL_REG0_INOUTREGOVERLAP__SHIFT) & A3XX_SP_FS_CTRL_REG0_INOUTREGOVERLAP__MASK; 2531 - } 2198 + #define A3XX_SP_FS_CTRL_REG0_FSBYPASSENABLE 0x00020000 2199 + #define A3XX_SP_FS_CTRL_REG0_INOUTREGOVERLAP 0x00040000 2200 + #define A3XX_SP_FS_CTRL_REG0_OUTORDERED 0x00080000 2532 2201 #define A3XX_SP_FS_CTRL_REG0_THREADSIZE__MASK 0x00100000 2533 2202 #define A3XX_SP_FS_CTRL_REG0_THREADSIZE__SHIFT 20 2534 2203 static inline uint32_t A3XX_SP_FS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val) ··· 2562 2235 { 2563 2236 return ((val) << A3XX_SP_FS_CTRL_REG1_INITIALOUTSTANDING__SHIFT) & A3XX_SP_FS_CTRL_REG1_INITIALOUTSTANDING__MASK; 2564 2237 } 2565 - #define A3XX_SP_FS_CTRL_REG1_HALFPRECVAROFFSET__MASK 0x3f000000 2238 + #define A3XX_SP_FS_CTRL_REG1_HALFPRECVAROFFSET__MASK 0x7f000000 2566 2239 #define A3XX_SP_FS_CTRL_REG1_HALFPRECVAROFFSET__SHIFT 24 2567 2240 static inline uint32_t A3XX_SP_FS_CTRL_REG1_HALFPRECVAROFFSET(uint32_t val) 2568 2241 { ··· 2570 2243 } 2571 2244 2572 2245 #define REG_A3XX_SP_FS_OBJ_OFFSET_REG 0x000022e2 2246 + #define A3XX_SP_FS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__MASK 0x0000ffff 2247 + #define A3XX_SP_FS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__SHIFT 0 2248 + static inline uint32_t A3XX_SP_FS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET(uint32_t val) 2249 + { 2250 + return ((val) << A3XX_SP_FS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__SHIFT) & A3XX_SP_FS_OBJ_OFFSET_REG_FIRSTEXECINSTROFFSET__MASK; 2251 + } 2573 2252 #define A3XX_SP_FS_OBJ_OFFSET_REG_CONSTOBJECTOFFSET__MASK 0x01ff0000 2574 2253 #define A3XX_SP_FS_OBJ_OFFSET_REG_CONSTOBJECTOFFSET__SHIFT 16 2575 2254 static inline uint32_t A3XX_SP_FS_OBJ_OFFSET_REG_CONSTOBJECTOFFSET(uint32_t val) ··· 2592 2259 #define REG_A3XX_SP_FS_OBJ_START_REG 0x000022e3 2593 2260 2594 2261 #define REG_A3XX_SP_FS_PVT_MEM_PARAM_REG 0x000022e4 2262 + #define A3XX_SP_FS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__MASK 0x000000ff 2263 + #define A3XX_SP_FS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__SHIFT 0 2264 + static inline uint32_t A3XX_SP_FS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM(uint32_t val) 2265 + { 2266 + return ((val) << A3XX_SP_FS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__SHIFT) & A3XX_SP_FS_PVT_MEM_PARAM_REG_MEMSIZEPERITEM__MASK; 2267 + } 2268 + #define A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__MASK 0x00ffff00 2269 + #define A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__SHIFT 8 2270 + static inline uint32_t A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKOFFSET(uint32_t val) 2271 + { 2272 + return ((val) << A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__SHIFT) & A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKOFFSET__MASK; 2273 + } 2274 + #define A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__MASK 0xff000000 2275 + #define A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__SHIFT 24 2276 + static inline uint32_t A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD(uint32_t val) 2277 + { 2278 + return ((val) << A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__SHIFT) & A3XX_SP_FS_PVT_MEM_PARAM_REG_HWSTACKSIZEPERTHREAD__MASK; 2279 + } 2595 2280 2596 2281 #define REG_A3XX_SP_FS_PVT_MEM_ADDR_REG 0x000022e5 2282 + #define A3XX_SP_FS_PVT_MEM_ADDR_REG_BURSTLEN__MASK 0x0000001f 2283 + #define A3XX_SP_FS_PVT_MEM_ADDR_REG_BURSTLEN__SHIFT 0 2284 + static inline uint32_t A3XX_SP_FS_PVT_MEM_ADDR_REG_BURSTLEN(uint32_t val) 2285 + { 2286 + return ((val) << A3XX_SP_FS_PVT_MEM_ADDR_REG_BURSTLEN__SHIFT) & A3XX_SP_FS_PVT_MEM_ADDR_REG_BURSTLEN__MASK; 2287 + } 2288 + #define A3XX_SP_FS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__MASK 0xffffffe0 2289 + #define A3XX_SP_FS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__SHIFT 5 2290 + static inline uint32_t A3XX_SP_FS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS(uint32_t val) 2291 + { 2292 + return ((val >> 5) << A3XX_SP_FS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__SHIFT) & A3XX_SP_FS_PVT_MEM_ADDR_REG_SHADERSTARTADDRESS__MASK; 2293 + } 2597 2294 2598 2295 #define REG_A3XX_SP_FS_PVT_MEM_SIZE_REG 0x000022e6 2599 2296
+1210 -67
drivers/gpu/drm/msm/adreno/a4xx.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/adreno.xml ( 398 bytes, from 2015-09-24 17:25:31) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/adreno/a2xx.xml ( 32901 bytes, from 2015-05-20 20:03:14) 14 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 10755 bytes, from 2015-09-14 20:46:55) 15 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 14968 bytes, from 2015-05-20 20:12:27) 16 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 67771 bytes, from 2015-09-14 20:46:55) 17 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 63970 bytes, from 2015-09-14 20:50:12) 14 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 11518 bytes, from 2016-02-10 21:03:25) 15 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 16166 bytes, from 2016-02-11 21:20:31) 16 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 83967 bytes, from 2016-02-10 17:07:21) 17 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 109916 bytes, from 2016-02-20 18:44:48) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2015-09-24 17:30:00) 19 19 20 - Copyright (C) 2013-2015 by the following authors: 20 + Copyright (C) 2013-2016 by the following authors: 21 21 - Rob Clark <robdclark@gmail.com> (robclark) 22 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 22 23 23 24 Permission is hereby granted, free of charge, to any person obtaining 24 25 a copy of this software and associated documentation files (the ··· 48 47 RB4_R8_UNORM = 2, 49 48 RB4_R4G4B4A4_UNORM = 8, 50 49 RB4_R5G5B5A1_UNORM = 10, 51 - RB4_R5G6R5_UNORM = 14, 50 + RB4_R5G6B5_UNORM = 14, 52 51 RB4_R8G8_UNORM = 15, 53 52 RB4_R8G8_SNORM = 16, 54 53 RB4_R8G8_UINT = 17, 55 54 RB4_R8G8_SINT = 18, 55 + RB4_R16_UNORM = 19, 56 + RB4_R16_SNORM = 20, 56 57 RB4_R16_FLOAT = 21, 57 58 RB4_R16_UINT = 22, 58 59 RB4_R16_SINT = 23, ··· 66 63 RB4_R10G10B10A2_UNORM = 31, 67 64 RB4_R10G10B10A2_UINT = 34, 68 65 RB4_R11G11B10_FLOAT = 39, 66 + RB4_R16G16_UNORM = 40, 67 + RB4_R16G16_SNORM = 41, 69 68 RB4_R16G16_FLOAT = 42, 70 69 RB4_R16G16_UINT = 43, 71 70 RB4_R16G16_SINT = 44, 72 71 RB4_R32_FLOAT = 45, 73 72 RB4_R32_UINT = 46, 74 73 RB4_R32_SINT = 47, 74 + RB4_R16G16B16A16_UNORM = 52, 75 + RB4_R16G16B16A16_SNORM = 53, 75 76 RB4_R16G16B16A16_FLOAT = 54, 76 77 RB4_R16G16B16A16_UINT = 55, 77 78 RB4_R16G16B16A16_SINT = 56, ··· 113 106 VFMT4_32_32_FIXED = 10, 114 107 VFMT4_32_32_32_FIXED = 11, 115 108 VFMT4_32_32_32_32_FIXED = 12, 109 + VFMT4_11_11_10_FLOAT = 13, 116 110 VFMT4_16_SINT = 16, 117 111 VFMT4_16_16_SINT = 17, 118 112 VFMT4_16_16_16_SINT = 18, ··· 154 146 VFMT4_8_8_SNORM = 53, 155 147 VFMT4_8_8_8_SNORM = 54, 156 148 VFMT4_8_8_8_8_SNORM = 55, 157 - VFMT4_10_10_10_2_UINT = 60, 158 - VFMT4_10_10_10_2_UNORM = 61, 159 - VFMT4_10_10_10_2_SINT = 62, 160 - VFMT4_10_10_10_2_SNORM = 63, 149 + VFMT4_10_10_10_2_UINT = 56, 150 + VFMT4_10_10_10_2_UNORM = 57, 151 + VFMT4_10_10_10_2_SINT = 58, 152 + VFMT4_10_10_10_2_SNORM = 59, 153 + VFMT4_2_10_10_10_UINT = 60, 154 + VFMT4_2_10_10_10_UNORM = 61, 155 + VFMT4_2_10_10_10_SINT = 62, 156 + VFMT4_2_10_10_10_SNORM = 63, 161 157 }; 162 158 163 159 enum a4xx_tex_fmt { 164 - TFMT4_5_6_5_UNORM = 11, 165 - TFMT4_5_5_5_1_UNORM = 10, 166 - TFMT4_4_4_4_4_UNORM = 8, 167 - TFMT4_X8Z24_UNORM = 71, 168 - TFMT4_10_10_10_2_UNORM = 33, 169 160 TFMT4_A8_UNORM = 3, 170 - TFMT4_L8_A8_UNORM = 13, 171 161 TFMT4_8_UNORM = 4, 172 - TFMT4_8_8_UNORM = 14, 173 - TFMT4_8_8_8_8_UNORM = 28, 174 162 TFMT4_8_SNORM = 5, 175 - TFMT4_8_8_SNORM = 15, 176 - TFMT4_8_8_8_8_SNORM = 29, 177 163 TFMT4_8_UINT = 6, 178 - TFMT4_8_8_UINT = 16, 179 - TFMT4_8_8_8_8_UINT = 30, 180 164 TFMT4_8_SINT = 7, 165 + TFMT4_4_4_4_4_UNORM = 8, 166 + TFMT4_5_5_5_1_UNORM = 9, 167 + TFMT4_5_6_5_UNORM = 11, 168 + TFMT4_L8_A8_UNORM = 13, 169 + TFMT4_8_8_UNORM = 14, 170 + TFMT4_8_8_SNORM = 15, 171 + TFMT4_8_8_UINT = 16, 181 172 TFMT4_8_8_SINT = 17, 182 - TFMT4_8_8_8_8_SINT = 31, 183 - TFMT4_16_UINT = 21, 184 - TFMT4_16_16_UINT = 41, 185 - TFMT4_16_16_16_16_UINT = 54, 186 - TFMT4_16_SINT = 22, 187 - TFMT4_16_16_SINT = 42, 188 - TFMT4_16_16_16_16_SINT = 55, 189 - TFMT4_32_UINT = 44, 190 - TFMT4_32_32_UINT = 57, 191 - TFMT4_32_32_32_32_UINT = 64, 192 - TFMT4_32_SINT = 45, 193 - TFMT4_32_32_SINT = 58, 194 - TFMT4_32_32_32_32_SINT = 65, 173 + TFMT4_16_UNORM = 18, 174 + TFMT4_16_SNORM = 19, 195 175 TFMT4_16_FLOAT = 20, 196 - TFMT4_16_16_FLOAT = 40, 197 - TFMT4_16_16_16_16_FLOAT = 53, 198 - TFMT4_32_FLOAT = 43, 199 - TFMT4_32_32_FLOAT = 56, 200 - TFMT4_32_32_32_32_FLOAT = 63, 176 + TFMT4_16_UINT = 21, 177 + TFMT4_16_SINT = 22, 178 + TFMT4_8_8_8_8_UNORM = 28, 179 + TFMT4_8_8_8_8_SNORM = 29, 180 + TFMT4_8_8_8_8_UINT = 30, 181 + TFMT4_8_8_8_8_SINT = 31, 201 182 TFMT4_9_9_9_E5_FLOAT = 32, 183 + TFMT4_10_10_10_2_UNORM = 33, 184 + TFMT4_10_10_10_2_UINT = 34, 202 185 TFMT4_11_11_10_FLOAT = 37, 186 + TFMT4_16_16_UNORM = 38, 187 + TFMT4_16_16_SNORM = 39, 188 + TFMT4_16_16_FLOAT = 40, 189 + TFMT4_16_16_UINT = 41, 190 + TFMT4_16_16_SINT = 42, 191 + TFMT4_32_FLOAT = 43, 192 + TFMT4_32_UINT = 44, 193 + TFMT4_32_SINT = 45, 194 + TFMT4_16_16_16_16_UNORM = 51, 195 + TFMT4_16_16_16_16_SNORM = 52, 196 + TFMT4_16_16_16_16_FLOAT = 53, 197 + TFMT4_16_16_16_16_UINT = 54, 198 + TFMT4_16_16_16_16_SINT = 55, 199 + TFMT4_32_32_FLOAT = 56, 200 + TFMT4_32_32_UINT = 57, 201 + TFMT4_32_32_SINT = 58, 202 + TFMT4_32_32_32_FLOAT = 59, 203 + TFMT4_32_32_32_UINT = 60, 204 + TFMT4_32_32_32_SINT = 61, 205 + TFMT4_32_32_32_32_FLOAT = 63, 206 + TFMT4_32_32_32_32_UINT = 64, 207 + TFMT4_32_32_32_32_SINT = 65, 208 + TFMT4_X8Z24_UNORM = 71, 209 + TFMT4_DXT1 = 86, 210 + TFMT4_DXT3 = 87, 211 + TFMT4_DXT5 = 88, 212 + TFMT4_RGTC1_UNORM = 90, 213 + TFMT4_RGTC1_SNORM = 91, 214 + TFMT4_RGTC2_UNORM = 94, 215 + TFMT4_RGTC2_SNORM = 95, 216 + TFMT4_BPTC_UFLOAT = 97, 217 + TFMT4_BPTC_FLOAT = 98, 218 + TFMT4_BPTC = 99, 203 219 TFMT4_ATC_RGB = 100, 204 220 TFMT4_ATC_RGBA_EXPLICIT = 101, 205 221 TFMT4_ATC_RGBA_INTERPOLATED = 102, ··· 270 238 EQUAL_SPACING = 0, 271 239 ODD_SPACING = 2, 272 240 EVEN_SPACING = 3, 241 + }; 242 + 243 + enum a4xx_ccu_perfcounter_select { 244 + CCU_BUSY_CYCLES = 0, 245 + CCU_RB_DEPTH_RETURN_STALL = 2, 246 + CCU_RB_COLOR_RETURN_STALL = 3, 247 + CCU_DEPTH_BLOCKS = 6, 248 + CCU_COLOR_BLOCKS = 7, 249 + CCU_DEPTH_BLOCK_HIT = 8, 250 + CCU_COLOR_BLOCK_HIT = 9, 251 + CCU_DEPTH_FLAG1_COUNT = 10, 252 + CCU_DEPTH_FLAG2_COUNT = 11, 253 + CCU_DEPTH_FLAG3_COUNT = 12, 254 + CCU_DEPTH_FLAG4_COUNT = 13, 255 + CCU_COLOR_FLAG1_COUNT = 14, 256 + CCU_COLOR_FLAG2_COUNT = 15, 257 + CCU_COLOR_FLAG3_COUNT = 16, 258 + CCU_COLOR_FLAG4_COUNT = 17, 259 + CCU_PARTIAL_BLOCK_READ = 18, 260 + }; 261 + 262 + enum a4xx_cp_perfcounter_select { 263 + CP_ALWAYS_COUNT = 0, 264 + CP_BUSY = 1, 265 + CP_PFP_IDLE = 2, 266 + CP_PFP_BUSY_WORKING = 3, 267 + CP_PFP_STALL_CYCLES_ANY = 4, 268 + CP_PFP_STARVE_CYCLES_ANY = 5, 269 + CP_PFP_STARVED_PER_LOAD_ADDR = 6, 270 + CP_PFP_STALLED_PER_STORE_ADDR = 7, 271 + CP_PFP_PC_PROFILE = 8, 272 + CP_PFP_MATCH_PM4_PKT_PROFILE = 9, 273 + CP_PFP_COND_INDIRECT_DISCARDED = 10, 274 + CP_LONG_RESUMPTIONS = 11, 275 + CP_RESUME_CYCLES = 12, 276 + CP_RESUME_TO_BOUNDARY_CYCLES = 13, 277 + CP_LONG_PREEMPTIONS = 14, 278 + CP_PREEMPT_CYCLES = 15, 279 + CP_PREEMPT_TO_BOUNDARY_CYCLES = 16, 280 + CP_ME_FIFO_EMPTY_PFP_IDLE = 17, 281 + CP_ME_FIFO_EMPTY_PFP_BUSY = 18, 282 + CP_ME_FIFO_NOT_EMPTY_NOT_FULL = 19, 283 + CP_ME_FIFO_FULL_ME_BUSY = 20, 284 + CP_ME_FIFO_FULL_ME_NON_WORKING = 21, 285 + CP_ME_WAITING_FOR_PACKETS = 22, 286 + CP_ME_BUSY_WORKING = 23, 287 + CP_ME_STARVE_CYCLES_ANY = 24, 288 + CP_ME_STARVE_CYCLES_PER_PROFILE = 25, 289 + CP_ME_STALL_CYCLES_PER_PROFILE = 26, 290 + CP_ME_PC_PROFILE = 27, 291 + CP_RCIU_FIFO_EMPTY = 28, 292 + CP_RCIU_FIFO_NOT_EMPTY_NOT_FULL = 29, 293 + CP_RCIU_FIFO_FULL = 30, 294 + CP_RCIU_FIFO_FULL_NO_CONTEXT = 31, 295 + CP_RCIU_FIFO_FULL_AHB_MASTER = 32, 296 + CP_RCIU_FIFO_FULL_OTHER = 33, 297 + CP_AHB_IDLE = 34, 298 + CP_AHB_STALL_ON_GRANT_NO_SPLIT = 35, 299 + CP_AHB_STALL_ON_GRANT_SPLIT = 36, 300 + CP_AHB_STALL_ON_GRANT_SPLIT_PROFILE = 37, 301 + CP_AHB_BUSY_WORKING = 38, 302 + CP_AHB_BUSY_STALL_ON_HRDY = 39, 303 + CP_AHB_BUSY_STALL_ON_HRDY_PROFILE = 40, 304 + }; 305 + 306 + enum a4xx_gras_ras_perfcounter_select { 307 + RAS_SUPER_TILES = 0, 308 + RAS_8X8_TILES = 1, 309 + RAS_4X4_TILES = 2, 310 + RAS_BUSY_CYCLES = 3, 311 + RAS_STALL_CYCLES_BY_RB = 4, 312 + RAS_STALL_CYCLES_BY_VSC = 5, 313 + RAS_STARVE_CYCLES_BY_TSE = 6, 314 + RAS_SUPERTILE_CYCLES = 7, 315 + RAS_TILE_CYCLES = 8, 316 + RAS_FULLY_COVERED_SUPER_TILES = 9, 317 + RAS_FULLY_COVERED_8X8_TILES = 10, 318 + RAS_4X4_PRIM = 11, 319 + RAS_8X4_4X8_PRIM = 12, 320 + RAS_8X8_PRIM = 13, 321 + }; 322 + 323 + enum a4xx_gras_tse_perfcounter_select { 324 + TSE_INPUT_PRIM = 0, 325 + TSE_INPUT_NULL_PRIM = 1, 326 + TSE_TRIVAL_REJ_PRIM = 2, 327 + TSE_CLIPPED_PRIM = 3, 328 + TSE_NEW_PRIM = 4, 329 + TSE_ZERO_AREA_PRIM = 5, 330 + TSE_FACENESS_CULLED_PRIM = 6, 331 + TSE_ZERO_PIXEL_PRIM = 7, 332 + TSE_OUTPUT_NULL_PRIM = 8, 333 + TSE_OUTPUT_VISIBLE_PRIM = 9, 334 + TSE_PRE_CLIP_PRIM = 10, 335 + TSE_POST_CLIP_PRIM = 11, 336 + TSE_BUSY_CYCLES = 12, 337 + TSE_PC_STARVE = 13, 338 + TSE_RAS_STALL = 14, 339 + TSE_STALL_BARYPLANE_FIFO_FULL = 15, 340 + TSE_STALL_ZPLANE_FIFO_FULL = 16, 341 + }; 342 + 343 + enum a4xx_hlsq_perfcounter_select { 344 + HLSQ_SP_VS_STAGE_CONSTANT = 0, 345 + HLSQ_SP_VS_STAGE_INSTRUCTIONS = 1, 346 + HLSQ_SP_FS_STAGE_CONSTANT = 2, 347 + HLSQ_SP_FS_STAGE_INSTRUCTIONS = 3, 348 + HLSQ_TP_STATE = 4, 349 + HLSQ_QUADS = 5, 350 + HLSQ_PIXELS = 6, 351 + HLSQ_VERTICES = 7, 352 + HLSQ_SP_VS_STAGE_DATA_BYTES = 13, 353 + HLSQ_SP_FS_STAGE_DATA_BYTES = 14, 354 + HLSQ_BUSY_CYCLES = 15, 355 + HLSQ_STALL_CYCLES_SP_STATE = 16, 356 + HLSQ_STALL_CYCLES_SP_VS_STAGE = 17, 357 + HLSQ_STALL_CYCLES_SP_FS_STAGE = 18, 358 + HLSQ_STALL_CYCLES_UCHE = 19, 359 + HLSQ_RBBM_LOAD_CYCLES = 20, 360 + HLSQ_DI_TO_VS_START_SP = 21, 361 + HLSQ_DI_TO_FS_START_SP = 22, 362 + HLSQ_VS_STAGE_START_TO_DONE_SP = 23, 363 + HLSQ_FS_STAGE_START_TO_DONE_SP = 24, 364 + HLSQ_SP_STATE_COPY_CYCLES_VS_STAGE = 25, 365 + HLSQ_SP_STATE_COPY_CYCLES_FS_STAGE = 26, 366 + HLSQ_UCHE_LATENCY_CYCLES = 27, 367 + HLSQ_UCHE_LATENCY_COUNT = 28, 368 + HLSQ_STARVE_CYCLES_VFD = 29, 369 + }; 370 + 371 + enum a4xx_pc_perfcounter_select { 372 + PC_VIS_STREAMS_LOADED = 0, 373 + PC_VPC_PRIMITIVES = 2, 374 + PC_DEAD_PRIM = 3, 375 + PC_LIVE_PRIM = 4, 376 + PC_DEAD_DRAWCALLS = 5, 377 + PC_LIVE_DRAWCALLS = 6, 378 + PC_VERTEX_MISSES = 7, 379 + PC_STALL_CYCLES_VFD = 9, 380 + PC_STALL_CYCLES_TSE = 10, 381 + PC_STALL_CYCLES_UCHE = 11, 382 + PC_WORKING_CYCLES = 12, 383 + PC_IA_VERTICES = 13, 384 + PC_GS_PRIMITIVES = 14, 385 + PC_HS_INVOCATIONS = 15, 386 + PC_DS_INVOCATIONS = 16, 387 + PC_DS_PRIMITIVES = 17, 388 + PC_STARVE_CYCLES_FOR_INDEX = 20, 389 + PC_STARVE_CYCLES_FOR_TESS_FACTOR = 21, 390 + PC_STARVE_CYCLES_FOR_VIZ_STREAM = 22, 391 + PC_STALL_CYCLES_TESS = 23, 392 + PC_STARVE_CYCLES_FOR_POSITION = 24, 393 + PC_MODE0_DRAWCALL = 25, 394 + PC_MODE1_DRAWCALL = 26, 395 + PC_MODE2_DRAWCALL = 27, 396 + PC_MODE3_DRAWCALL = 28, 397 + PC_MODE4_DRAWCALL = 29, 398 + PC_PREDICATED_DEAD_DRAWCALL = 30, 399 + PC_STALL_CYCLES_BY_TSE_ONLY = 31, 400 + PC_STALL_CYCLES_BY_VPC_ONLY = 32, 401 + PC_VPC_POS_DATA_TRANSACTION = 33, 402 + PC_BUSY_CYCLES = 34, 403 + PC_STARVE_CYCLES_DI = 35, 404 + PC_STALL_CYCLES_VPC = 36, 405 + TESS_WORKING_CYCLES = 37, 406 + TESS_NUM_CYCLES_SETUP_WORKING = 38, 407 + TESS_NUM_CYCLES_PTGEN_WORKING = 39, 408 + TESS_NUM_CYCLES_CONNGEN_WORKING = 40, 409 + TESS_BUSY_CYCLES = 41, 410 + TESS_STARVE_CYCLES_PC = 42, 411 + TESS_STALL_CYCLES_PC = 43, 412 + }; 413 + 414 + enum a4xx_pwr_perfcounter_select { 415 + PWR_CORE_CLOCK_CYCLES = 0, 416 + PWR_BUSY_CLOCK_CYCLES = 1, 417 + }; 418 + 419 + enum a4xx_rb_perfcounter_select { 420 + RB_BUSY_CYCLES = 0, 421 + RB_BUSY_CYCLES_BINNING = 1, 422 + RB_BUSY_CYCLES_RENDERING = 2, 423 + RB_BUSY_CYCLES_RESOLVE = 3, 424 + RB_STARVE_CYCLES_BY_SP = 4, 425 + RB_STARVE_CYCLES_BY_RAS = 5, 426 + RB_STARVE_CYCLES_BY_MARB = 6, 427 + RB_STALL_CYCLES_BY_MARB = 7, 428 + RB_STALL_CYCLES_BY_HLSQ = 8, 429 + RB_RB_RB_MARB_DATA = 9, 430 + RB_SP_RB_QUAD = 10, 431 + RB_RAS_RB_Z_QUADS = 11, 432 + RB_GMEM_CH0_READ = 12, 433 + RB_GMEM_CH1_READ = 13, 434 + RB_GMEM_CH0_WRITE = 14, 435 + RB_GMEM_CH1_WRITE = 15, 436 + RB_CP_CONTEXT_DONE = 16, 437 + RB_CP_CACHE_FLUSH = 17, 438 + RB_CP_ZPASS_DONE = 18, 439 + RB_STALL_FIFO0_FULL = 19, 440 + RB_STALL_FIFO1_FULL = 20, 441 + RB_STALL_FIFO2_FULL = 21, 442 + RB_STALL_FIFO3_FULL = 22, 443 + RB_RB_HLSQ_TRANSACTIONS = 23, 444 + RB_Z_READ = 24, 445 + RB_Z_WRITE = 25, 446 + RB_C_READ = 26, 447 + RB_C_WRITE = 27, 448 + RB_C_READ_LATENCY = 28, 449 + RB_Z_READ_LATENCY = 29, 450 + RB_STALL_BY_UCHE = 30, 451 + RB_MARB_UCHE_TRANSACTIONS = 31, 452 + RB_CACHE_STALL_MISS = 32, 453 + RB_CACHE_STALL_FIFO_FULL = 33, 454 + RB_8BIT_BLENDER_UNITS_ACTIVE = 34, 455 + RB_16BIT_BLENDER_UNITS_ACTIVE = 35, 456 + RB_SAMPLER_UNITS_ACTIVE = 36, 457 + RB_TOTAL_PASS = 38, 458 + RB_Z_PASS = 39, 459 + RB_Z_FAIL = 40, 460 + RB_S_FAIL = 41, 461 + RB_POWER0 = 42, 462 + RB_POWER1 = 43, 463 + RB_POWER2 = 44, 464 + RB_POWER3 = 45, 465 + RB_POWER4 = 46, 466 + RB_POWER5 = 47, 467 + RB_POWER6 = 48, 468 + RB_POWER7 = 49, 469 + }; 470 + 471 + enum a4xx_rbbm_perfcounter_select { 472 + RBBM_ALWAYS_ON = 0, 473 + RBBM_VBIF_BUSY = 1, 474 + RBBM_TSE_BUSY = 2, 475 + RBBM_RAS_BUSY = 3, 476 + RBBM_PC_DCALL_BUSY = 4, 477 + RBBM_PC_VSD_BUSY = 5, 478 + RBBM_VFD_BUSY = 6, 479 + RBBM_VPC_BUSY = 7, 480 + RBBM_UCHE_BUSY = 8, 481 + RBBM_VSC_BUSY = 9, 482 + RBBM_HLSQ_BUSY = 10, 483 + RBBM_ANY_RB_BUSY = 11, 484 + RBBM_ANY_TPL1_BUSY = 12, 485 + RBBM_ANY_SP_BUSY = 13, 486 + RBBM_ANY_MARB_BUSY = 14, 487 + RBBM_ANY_ARB_BUSY = 15, 488 + RBBM_AHB_STATUS_BUSY = 16, 489 + RBBM_AHB_STATUS_STALLED = 17, 490 + RBBM_AHB_STATUS_TXFR = 18, 491 + RBBM_AHB_STATUS_TXFR_SPLIT = 19, 492 + RBBM_AHB_STATUS_TXFR_ERROR = 20, 493 + RBBM_AHB_STATUS_LONG_STALL = 21, 494 + RBBM_STATUS_MASKED = 22, 495 + RBBM_CP_BUSY_GFX_CORE_IDLE = 23, 496 + RBBM_TESS_BUSY = 24, 497 + RBBM_COM_BUSY = 25, 498 + RBBM_DCOM_BUSY = 32, 499 + RBBM_ANY_CCU_BUSY = 33, 500 + RBBM_DPM_BUSY = 34, 501 + }; 502 + 503 + enum a4xx_sp_perfcounter_select { 504 + SP_LM_LOAD_INSTRUCTIONS = 0, 505 + SP_LM_STORE_INSTRUCTIONS = 1, 506 + SP_LM_ATOMICS = 2, 507 + SP_GM_LOAD_INSTRUCTIONS = 3, 508 + SP_GM_STORE_INSTRUCTIONS = 4, 509 + SP_GM_ATOMICS = 5, 510 + SP_VS_STAGE_TEX_INSTRUCTIONS = 6, 511 + SP_VS_STAGE_CFLOW_INSTRUCTIONS = 7, 512 + SP_VS_STAGE_EFU_INSTRUCTIONS = 8, 513 + SP_VS_STAGE_FULL_ALU_INSTRUCTIONS = 9, 514 + SP_VS_STAGE_HALF_ALU_INSTRUCTIONS = 10, 515 + SP_FS_STAGE_TEX_INSTRUCTIONS = 11, 516 + SP_FS_STAGE_CFLOW_INSTRUCTIONS = 12, 517 + SP_FS_STAGE_EFU_INSTRUCTIONS = 13, 518 + SP_FS_STAGE_FULL_ALU_INSTRUCTIONS = 14, 519 + SP_FS_STAGE_HALF_ALU_INSTRUCTIONS = 15, 520 + SP_VS_INSTRUCTIONS = 17, 521 + SP_FS_INSTRUCTIONS = 18, 522 + SP_ADDR_LOCK_COUNT = 19, 523 + SP_UCHE_READ_TRANS = 20, 524 + SP_UCHE_WRITE_TRANS = 21, 525 + SP_EXPORT_VPC_TRANS = 22, 526 + SP_EXPORT_RB_TRANS = 23, 527 + SP_PIXELS_KILLED = 24, 528 + SP_ICL1_REQUESTS = 25, 529 + SP_ICL1_MISSES = 26, 530 + SP_ICL0_REQUESTS = 27, 531 + SP_ICL0_MISSES = 28, 532 + SP_ALU_WORKING_CYCLES = 29, 533 + SP_EFU_WORKING_CYCLES = 30, 534 + SP_STALL_CYCLES_BY_VPC = 31, 535 + SP_STALL_CYCLES_BY_TP = 32, 536 + SP_STALL_CYCLES_BY_UCHE = 33, 537 + SP_STALL_CYCLES_BY_RB = 34, 538 + SP_BUSY_CYCLES = 35, 539 + SP_HS_INSTRUCTIONS = 36, 540 + SP_DS_INSTRUCTIONS = 37, 541 + SP_GS_INSTRUCTIONS = 38, 542 + SP_CS_INSTRUCTIONS = 39, 543 + SP_SCHEDULER_NON_WORKING = 40, 544 + SP_WAVE_CONTEXTS = 41, 545 + SP_WAVE_CONTEXT_CYCLES = 42, 546 + SP_POWER0 = 43, 547 + SP_POWER1 = 44, 548 + SP_POWER2 = 45, 549 + SP_POWER3 = 46, 550 + SP_POWER4 = 47, 551 + SP_POWER5 = 48, 552 + SP_POWER6 = 49, 553 + SP_POWER7 = 50, 554 + SP_POWER8 = 51, 555 + SP_POWER9 = 52, 556 + SP_POWER10 = 53, 557 + SP_POWER11 = 54, 558 + SP_POWER12 = 55, 559 + SP_POWER13 = 56, 560 + SP_POWER14 = 57, 561 + SP_POWER15 = 58, 562 + }; 563 + 564 + enum a4xx_tp_perfcounter_select { 565 + TP_L1_REQUESTS = 0, 566 + TP_L1_MISSES = 1, 567 + TP_QUADS_OFFSET = 8, 568 + TP_QUAD_SHADOW = 9, 569 + TP_QUADS_ARRAY = 10, 570 + TP_QUADS_GRADIENT = 11, 571 + TP_QUADS_1D2D = 12, 572 + TP_QUADS_3DCUBE = 13, 573 + TP_BUSY_CYCLES = 16, 574 + TP_STALL_CYCLES_BY_ARB = 17, 575 + TP_STATE_CACHE_REQUESTS = 20, 576 + TP_STATE_CACHE_MISSES = 21, 577 + TP_POWER0 = 22, 578 + TP_POWER1 = 23, 579 + TP_POWER2 = 24, 580 + TP_POWER3 = 25, 581 + TP_POWER4 = 26, 582 + TP_POWER5 = 27, 583 + TP_POWER6 = 28, 584 + TP_POWER7 = 29, 585 + }; 586 + 587 + enum a4xx_uche_perfcounter_select { 588 + UCHE_VBIF_READ_BEATS_TP = 0, 589 + UCHE_VBIF_READ_BEATS_VFD = 1, 590 + UCHE_VBIF_READ_BEATS_HLSQ = 2, 591 + UCHE_VBIF_READ_BEATS_MARB = 3, 592 + UCHE_VBIF_READ_BEATS_SP = 4, 593 + UCHE_READ_REQUESTS_TP = 5, 594 + UCHE_READ_REQUESTS_VFD = 6, 595 + UCHE_READ_REQUESTS_HLSQ = 7, 596 + UCHE_READ_REQUESTS_MARB = 8, 597 + UCHE_READ_REQUESTS_SP = 9, 598 + UCHE_WRITE_REQUESTS_MARB = 10, 599 + UCHE_WRITE_REQUESTS_SP = 11, 600 + UCHE_TAG_CHECK_FAILS = 12, 601 + UCHE_EVICTS = 13, 602 + UCHE_FLUSHES = 14, 603 + UCHE_VBIF_LATENCY_CYCLES = 15, 604 + UCHE_VBIF_LATENCY_SAMPLES = 16, 605 + UCHE_BUSY_CYCLES = 17, 606 + UCHE_VBIF_READ_BEATS_PC = 18, 607 + UCHE_READ_REQUESTS_PC = 19, 608 + UCHE_WRITE_REQUESTS_VPC = 20, 609 + UCHE_STALL_BY_VBIF = 21, 610 + UCHE_WRITE_REQUESTS_VSC = 22, 611 + UCHE_POWER0 = 23, 612 + UCHE_POWER1 = 24, 613 + UCHE_POWER2 = 25, 614 + UCHE_POWER3 = 26, 615 + UCHE_POWER4 = 27, 616 + UCHE_POWER5 = 28, 617 + UCHE_POWER6 = 29, 618 + UCHE_POWER7 = 30, 619 + }; 620 + 621 + enum a4xx_vbif_perfcounter_select { 622 + AXI_READ_REQUESTS_ID_0 = 0, 623 + AXI_READ_REQUESTS_ID_1 = 1, 624 + AXI_READ_REQUESTS_ID_2 = 2, 625 + AXI_READ_REQUESTS_ID_3 = 3, 626 + AXI_READ_REQUESTS_ID_4 = 4, 627 + AXI_READ_REQUESTS_ID_5 = 5, 628 + AXI_READ_REQUESTS_ID_6 = 6, 629 + AXI_READ_REQUESTS_ID_7 = 7, 630 + AXI_READ_REQUESTS_ID_8 = 8, 631 + AXI_READ_REQUESTS_ID_9 = 9, 632 + AXI_READ_REQUESTS_ID_10 = 10, 633 + AXI_READ_REQUESTS_ID_11 = 11, 634 + AXI_READ_REQUESTS_ID_12 = 12, 635 + AXI_READ_REQUESTS_ID_13 = 13, 636 + AXI_READ_REQUESTS_ID_14 = 14, 637 + AXI_READ_REQUESTS_ID_15 = 15, 638 + AXI0_READ_REQUESTS_TOTAL = 16, 639 + AXI1_READ_REQUESTS_TOTAL = 17, 640 + AXI2_READ_REQUESTS_TOTAL = 18, 641 + AXI3_READ_REQUESTS_TOTAL = 19, 642 + AXI_READ_REQUESTS_TOTAL = 20, 643 + AXI_WRITE_REQUESTS_ID_0 = 21, 644 + AXI_WRITE_REQUESTS_ID_1 = 22, 645 + AXI_WRITE_REQUESTS_ID_2 = 23, 646 + AXI_WRITE_REQUESTS_ID_3 = 24, 647 + AXI_WRITE_REQUESTS_ID_4 = 25, 648 + AXI_WRITE_REQUESTS_ID_5 = 26, 649 + AXI_WRITE_REQUESTS_ID_6 = 27, 650 + AXI_WRITE_REQUESTS_ID_7 = 28, 651 + AXI_WRITE_REQUESTS_ID_8 = 29, 652 + AXI_WRITE_REQUESTS_ID_9 = 30, 653 + AXI_WRITE_REQUESTS_ID_10 = 31, 654 + AXI_WRITE_REQUESTS_ID_11 = 32, 655 + AXI_WRITE_REQUESTS_ID_12 = 33, 656 + AXI_WRITE_REQUESTS_ID_13 = 34, 657 + AXI_WRITE_REQUESTS_ID_14 = 35, 658 + AXI_WRITE_REQUESTS_ID_15 = 36, 659 + AXI0_WRITE_REQUESTS_TOTAL = 37, 660 + AXI1_WRITE_REQUESTS_TOTAL = 38, 661 + AXI2_WRITE_REQUESTS_TOTAL = 39, 662 + AXI3_WRITE_REQUESTS_TOTAL = 40, 663 + AXI_WRITE_REQUESTS_TOTAL = 41, 664 + AXI_TOTAL_REQUESTS = 42, 665 + AXI_READ_DATA_BEATS_ID_0 = 43, 666 + AXI_READ_DATA_BEATS_ID_1 = 44, 667 + AXI_READ_DATA_BEATS_ID_2 = 45, 668 + AXI_READ_DATA_BEATS_ID_3 = 46, 669 + AXI_READ_DATA_BEATS_ID_4 = 47, 670 + AXI_READ_DATA_BEATS_ID_5 = 48, 671 + AXI_READ_DATA_BEATS_ID_6 = 49, 672 + AXI_READ_DATA_BEATS_ID_7 = 50, 673 + AXI_READ_DATA_BEATS_ID_8 = 51, 674 + AXI_READ_DATA_BEATS_ID_9 = 52, 675 + AXI_READ_DATA_BEATS_ID_10 = 53, 676 + AXI_READ_DATA_BEATS_ID_11 = 54, 677 + AXI_READ_DATA_BEATS_ID_12 = 55, 678 + AXI_READ_DATA_BEATS_ID_13 = 56, 679 + AXI_READ_DATA_BEATS_ID_14 = 57, 680 + AXI_READ_DATA_BEATS_ID_15 = 58, 681 + AXI0_READ_DATA_BEATS_TOTAL = 59, 682 + AXI1_READ_DATA_BEATS_TOTAL = 60, 683 + AXI2_READ_DATA_BEATS_TOTAL = 61, 684 + AXI3_READ_DATA_BEATS_TOTAL = 62, 685 + AXI_READ_DATA_BEATS_TOTAL = 63, 686 + AXI_WRITE_DATA_BEATS_ID_0 = 64, 687 + AXI_WRITE_DATA_BEATS_ID_1 = 65, 688 + AXI_WRITE_DATA_BEATS_ID_2 = 66, 689 + AXI_WRITE_DATA_BEATS_ID_3 = 67, 690 + AXI_WRITE_DATA_BEATS_ID_4 = 68, 691 + AXI_WRITE_DATA_BEATS_ID_5 = 69, 692 + AXI_WRITE_DATA_BEATS_ID_6 = 70, 693 + AXI_WRITE_DATA_BEATS_ID_7 = 71, 694 + AXI_WRITE_DATA_BEATS_ID_8 = 72, 695 + AXI_WRITE_DATA_BEATS_ID_9 = 73, 696 + AXI_WRITE_DATA_BEATS_ID_10 = 74, 697 + AXI_WRITE_DATA_BEATS_ID_11 = 75, 698 + AXI_WRITE_DATA_BEATS_ID_12 = 76, 699 + AXI_WRITE_DATA_BEATS_ID_13 = 77, 700 + AXI_WRITE_DATA_BEATS_ID_14 = 78, 701 + AXI_WRITE_DATA_BEATS_ID_15 = 79, 702 + AXI0_WRITE_DATA_BEATS_TOTAL = 80, 703 + AXI1_WRITE_DATA_BEATS_TOTAL = 81, 704 + AXI2_WRITE_DATA_BEATS_TOTAL = 82, 705 + AXI3_WRITE_DATA_BEATS_TOTAL = 83, 706 + AXI_WRITE_DATA_BEATS_TOTAL = 84, 707 + AXI_DATA_BEATS_TOTAL = 85, 708 + CYCLES_HELD_OFF_ID_0 = 86, 709 + CYCLES_HELD_OFF_ID_1 = 87, 710 + CYCLES_HELD_OFF_ID_2 = 88, 711 + CYCLES_HELD_OFF_ID_3 = 89, 712 + CYCLES_HELD_OFF_ID_4 = 90, 713 + CYCLES_HELD_OFF_ID_5 = 91, 714 + CYCLES_HELD_OFF_ID_6 = 92, 715 + CYCLES_HELD_OFF_ID_7 = 93, 716 + CYCLES_HELD_OFF_ID_8 = 94, 717 + CYCLES_HELD_OFF_ID_9 = 95, 718 + CYCLES_HELD_OFF_ID_10 = 96, 719 + CYCLES_HELD_OFF_ID_11 = 97, 720 + CYCLES_HELD_OFF_ID_12 = 98, 721 + CYCLES_HELD_OFF_ID_13 = 99, 722 + CYCLES_HELD_OFF_ID_14 = 100, 723 + CYCLES_HELD_OFF_ID_15 = 101, 724 + AXI_READ_REQUEST_HELD_OFF = 102, 725 + AXI_WRITE_REQUEST_HELD_OFF = 103, 726 + AXI_REQUEST_HELD_OFF = 104, 727 + AXI_WRITE_DATA_HELD_OFF = 105, 728 + OCMEM_AXI_READ_REQUEST_HELD_OFF = 106, 729 + OCMEM_AXI_WRITE_REQUEST_HELD_OFF = 107, 730 + OCMEM_AXI_REQUEST_HELD_OFF = 108, 731 + OCMEM_AXI_WRITE_DATA_HELD_OFF = 109, 732 + ELAPSED_CYCLES_DDR = 110, 733 + ELAPSED_CYCLES_OCMEM = 111, 734 + }; 735 + 736 + enum a4xx_vfd_perfcounter_select { 737 + VFD_UCHE_BYTE_FETCHED = 0, 738 + VFD_UCHE_TRANS = 1, 739 + VFD_FETCH_INSTRUCTIONS = 3, 740 + VFD_BUSY_CYCLES = 5, 741 + VFD_STALL_CYCLES_UCHE = 6, 742 + VFD_STALL_CYCLES_HLSQ = 7, 743 + VFD_STALL_CYCLES_VPC_BYPASS = 8, 744 + VFD_STALL_CYCLES_VPC_ALLOC = 9, 745 + VFD_MODE_0_FIBERS = 13, 746 + VFD_MODE_1_FIBERS = 14, 747 + VFD_MODE_2_FIBERS = 15, 748 + VFD_MODE_3_FIBERS = 16, 749 + VFD_MODE_4_FIBERS = 17, 750 + VFD_BFIFO_STALL = 18, 751 + VFD_NUM_VERTICES_TOTAL = 19, 752 + VFD_PACKER_FULL = 20, 753 + VFD_UCHE_REQUEST_FIFO_FULL = 21, 754 + VFD_STARVE_CYCLES_PC = 22, 755 + VFD_STARVE_CYCLES_UCHE = 23, 756 + }; 757 + 758 + enum a4xx_vpc_perfcounter_select { 759 + VPC_SP_LM_COMPONENTS = 2, 760 + VPC_SP0_LM_BYTES = 3, 761 + VPC_SP1_LM_BYTES = 4, 762 + VPC_SP2_LM_BYTES = 5, 763 + VPC_SP3_LM_BYTES = 6, 764 + VPC_WORKING_CYCLES = 7, 765 + VPC_STALL_CYCLES_LM = 8, 766 + VPC_STARVE_CYCLES_RAS = 9, 767 + VPC_STREAMOUT_CYCLES = 10, 768 + VPC_UCHE_TRANSACTIONS = 12, 769 + VPC_STALL_CYCLES_UCHE = 13, 770 + VPC_BUSY_CYCLES = 14, 771 + VPC_STARVE_CYCLES_SP = 15, 772 + }; 773 + 774 + enum a4xx_vsc_perfcounter_select { 775 + VSC_BUSY_CYCLES = 0, 776 + VSC_WORKING_CYCLES = 1, 777 + VSC_STALL_CYCLES_UCHE = 2, 778 + VSC_STARVE_CYCLES_RAS = 3, 779 + VSC_EOT_NUM = 4, 273 780 }; 274 781 275 782 enum a4xx_tex_filter { ··· 897 326 898 327 #define REG_A4XX_RB_PERFCTR_RB_SEL_7 0x00000cce 899 328 329 + #define REG_A4XX_RB_PERFCTR_CCU_SEL_0 0x00000ccf 330 + 331 + #define REG_A4XX_RB_PERFCTR_CCU_SEL_1 0x00000cd0 332 + 333 + #define REG_A4XX_RB_PERFCTR_CCU_SEL_2 0x00000cd1 334 + 900 335 #define REG_A4XX_RB_PERFCTR_CCU_SEL_3 0x00000cd2 901 336 902 337 #define REG_A4XX_RB_FRAME_BUFFER_DIMENSION 0x00000ce0 ··· 977 400 #define A4XX_RB_MRT_CONTROL_READ_DEST_ENABLE 0x00000008 978 401 #define A4XX_RB_MRT_CONTROL_BLEND 0x00000010 979 402 #define A4XX_RB_MRT_CONTROL_BLEND2 0x00000020 980 - #define A4XX_RB_MRT_CONTROL_FASTCLEAR 0x00000400 981 - #define A4XX_RB_MRT_CONTROL_B11 0x00000800 403 + #define A4XX_RB_MRT_CONTROL_ROP_ENABLE 0x00000040 404 + #define A4XX_RB_MRT_CONTROL_ROP_CODE__MASK 0x00000f00 405 + #define A4XX_RB_MRT_CONTROL_ROP_CODE__SHIFT 8 406 + static inline uint32_t A4XX_RB_MRT_CONTROL_ROP_CODE(enum a3xx_rop_code val) 407 + { 408 + return ((val) << A4XX_RB_MRT_CONTROL_ROP_CODE__SHIFT) & A4XX_RB_MRT_CONTROL_ROP_CODE__MASK; 409 + } 982 410 #define A4XX_RB_MRT_CONTROL_COMPONENT_ENABLE__MASK 0x0f000000 983 411 #define A4XX_RB_MRT_CONTROL_COMPONENT_ENABLE__SHIFT 24 984 412 static inline uint32_t A4XX_RB_MRT_CONTROL_COMPONENT_ENABLE(uint32_t val) ··· 1072 490 return ((val) << A4XX_RB_MRT_BLEND_CONTROL_ALPHA_DEST_FACTOR__SHIFT) & A4XX_RB_MRT_BLEND_CONTROL_ALPHA_DEST_FACTOR__MASK; 1073 491 } 1074 492 1075 - #define REG_A4XX_RB_BLEND_RED 0x000020f3 1076 - #define A4XX_RB_BLEND_RED_UINT__MASK 0x00007fff 493 + #define REG_A4XX_RB_BLEND_RED 0x000020f0 494 + #define A4XX_RB_BLEND_RED_UINT__MASK 0x0000ffff 1077 495 #define A4XX_RB_BLEND_RED_UINT__SHIFT 0 1078 496 static inline uint32_t A4XX_RB_BLEND_RED_UINT(uint32_t val) 1079 497 { ··· 1086 504 return ((util_float_to_half(val)) << A4XX_RB_BLEND_RED_FLOAT__SHIFT) & A4XX_RB_BLEND_RED_FLOAT__MASK; 1087 505 } 1088 506 1089 - #define REG_A4XX_RB_BLEND_GREEN 0x000020f4 1090 - #define A4XX_RB_BLEND_GREEN_UINT__MASK 0x00007fff 507 + #define REG_A4XX_RB_BLEND_RED_F32 0x000020f1 508 + #define A4XX_RB_BLEND_RED_F32__MASK 0xffffffff 509 + #define A4XX_RB_BLEND_RED_F32__SHIFT 0 510 + static inline uint32_t A4XX_RB_BLEND_RED_F32(float val) 511 + { 512 + return ((fui(val)) << A4XX_RB_BLEND_RED_F32__SHIFT) & A4XX_RB_BLEND_RED_F32__MASK; 513 + } 514 + 515 + #define REG_A4XX_RB_BLEND_GREEN 0x000020f2 516 + #define A4XX_RB_BLEND_GREEN_UINT__MASK 0x0000ffff 1091 517 #define A4XX_RB_BLEND_GREEN_UINT__SHIFT 0 1092 518 static inline uint32_t A4XX_RB_BLEND_GREEN_UINT(uint32_t val) 1093 519 { ··· 1108 518 return ((util_float_to_half(val)) << A4XX_RB_BLEND_GREEN_FLOAT__SHIFT) & A4XX_RB_BLEND_GREEN_FLOAT__MASK; 1109 519 } 1110 520 1111 - #define REG_A4XX_RB_BLEND_BLUE 0x000020f5 1112 - #define A4XX_RB_BLEND_BLUE_UINT__MASK 0x00007fff 521 + #define REG_A4XX_RB_BLEND_GREEN_F32 0x000020f3 522 + #define A4XX_RB_BLEND_GREEN_F32__MASK 0xffffffff 523 + #define A4XX_RB_BLEND_GREEN_F32__SHIFT 0 524 + static inline uint32_t A4XX_RB_BLEND_GREEN_F32(float val) 525 + { 526 + return ((fui(val)) << A4XX_RB_BLEND_GREEN_F32__SHIFT) & A4XX_RB_BLEND_GREEN_F32__MASK; 527 + } 528 + 529 + #define REG_A4XX_RB_BLEND_BLUE 0x000020f4 530 + #define A4XX_RB_BLEND_BLUE_UINT__MASK 0x0000ffff 1113 531 #define A4XX_RB_BLEND_BLUE_UINT__SHIFT 0 1114 532 static inline uint32_t A4XX_RB_BLEND_BLUE_UINT(uint32_t val) 1115 533 { ··· 1130 532 return ((util_float_to_half(val)) << A4XX_RB_BLEND_BLUE_FLOAT__SHIFT) & A4XX_RB_BLEND_BLUE_FLOAT__MASK; 1131 533 } 1132 534 535 + #define REG_A4XX_RB_BLEND_BLUE_F32 0x000020f5 536 + #define A4XX_RB_BLEND_BLUE_F32__MASK 0xffffffff 537 + #define A4XX_RB_BLEND_BLUE_F32__SHIFT 0 538 + static inline uint32_t A4XX_RB_BLEND_BLUE_F32(float val) 539 + { 540 + return ((fui(val)) << A4XX_RB_BLEND_BLUE_F32__SHIFT) & A4XX_RB_BLEND_BLUE_F32__MASK; 541 + } 542 + 1133 543 #define REG_A4XX_RB_BLEND_ALPHA 0x000020f6 1134 - #define A4XX_RB_BLEND_ALPHA_UINT__MASK 0x00007fff 544 + #define A4XX_RB_BLEND_ALPHA_UINT__MASK 0x0000ffff 1135 545 #define A4XX_RB_BLEND_ALPHA_UINT__SHIFT 0 1136 546 static inline uint32_t A4XX_RB_BLEND_ALPHA_UINT(uint32_t val) 1137 547 { ··· 1150 544 static inline uint32_t A4XX_RB_BLEND_ALPHA_FLOAT(float val) 1151 545 { 1152 546 return ((util_float_to_half(val)) << A4XX_RB_BLEND_ALPHA_FLOAT__SHIFT) & A4XX_RB_BLEND_ALPHA_FLOAT__MASK; 547 + } 548 + 549 + #define REG_A4XX_RB_BLEND_ALPHA_F32 0x000020f7 550 + #define A4XX_RB_BLEND_ALPHA_F32__MASK 0xffffffff 551 + #define A4XX_RB_BLEND_ALPHA_F32__SHIFT 0 552 + static inline uint32_t A4XX_RB_BLEND_ALPHA_F32(float val) 553 + { 554 + return ((fui(val)) << A4XX_RB_BLEND_ALPHA_F32__SHIFT) & A4XX_RB_BLEND_ALPHA_F32__MASK; 1153 555 } 1154 556 1155 557 #define REG_A4XX_RB_ALPHA_CONTROL 0x000020f8 ··· 1182 568 { 1183 569 return ((val) << A4XX_RB_FS_OUTPUT_ENABLE_BLEND__SHIFT) & A4XX_RB_FS_OUTPUT_ENABLE_BLEND__MASK; 1184 570 } 1185 - #define A4XX_RB_FS_OUTPUT_FAST_CLEAR 0x00000100 571 + #define A4XX_RB_FS_OUTPUT_INDEPENDENT_BLEND 0x00000100 1186 572 #define A4XX_RB_FS_OUTPUT_SAMPLE_MASK__MASK 0xffff0000 1187 573 #define A4XX_RB_FS_OUTPUT_SAMPLE_MASK__SHIFT 16 1188 574 static inline uint32_t A4XX_RB_FS_OUTPUT_SAMPLE_MASK(uint32_t val) ··· 1350 736 } 1351 737 #define A4XX_RB_DEPTH_CONTROL_BF_ENABLE 0x00000080 1352 738 #define A4XX_RB_DEPTH_CONTROL_EARLY_Z_DISABLE 0x00010000 739 + #define A4XX_RB_DEPTH_CONTROL_FORCE_FRAGZ_TO_FS 0x00020000 1353 740 #define A4XX_RB_DEPTH_CONTROL_Z_TEST_ENABLE 0x80000000 1354 741 1355 742 #define REG_A4XX_RB_DEPTH_CLEAR 0x00002102 ··· 1611 996 1612 997 #define REG_A4XX_RBBM_CFG_DEBBUS_SEL_D 0x0000004d 1613 998 999 + #define REG_A4XX_RBBM_POWER_CNTL_IP 0x00000098 1000 + #define A4XX_RBBM_POWER_CNTL_IP_SW_COLLAPSE 0x00000001 1001 + #define A4XX_RBBM_POWER_CNTL_IP_SP_TP_PWR_ON 0x00100000 1002 + 1614 1003 #define REG_A4XX_RBBM_PERFCTR_CP_0_LO 0x0000009c 1004 + 1005 + #define REG_A4XX_RBBM_PERFCTR_CP_0_HI 0x0000009d 1006 + 1007 + #define REG_A4XX_RBBM_PERFCTR_CP_1_LO 0x0000009e 1008 + 1009 + #define REG_A4XX_RBBM_PERFCTR_CP_1_HI 0x0000009f 1010 + 1011 + #define REG_A4XX_RBBM_PERFCTR_CP_2_LO 0x000000a0 1012 + 1013 + #define REG_A4XX_RBBM_PERFCTR_CP_2_HI 0x000000a1 1014 + 1015 + #define REG_A4XX_RBBM_PERFCTR_CP_3_LO 0x000000a2 1016 + 1017 + #define REG_A4XX_RBBM_PERFCTR_CP_3_HI 0x000000a3 1018 + 1019 + #define REG_A4XX_RBBM_PERFCTR_CP_4_LO 0x000000a4 1020 + 1021 + #define REG_A4XX_RBBM_PERFCTR_CP_4_HI 0x000000a5 1022 + 1023 + #define REG_A4XX_RBBM_PERFCTR_CP_5_LO 0x000000a6 1024 + 1025 + #define REG_A4XX_RBBM_PERFCTR_CP_5_HI 0x000000a7 1026 + 1027 + #define REG_A4XX_RBBM_PERFCTR_CP_6_LO 0x000000a8 1028 + 1029 + #define REG_A4XX_RBBM_PERFCTR_CP_6_HI 0x000000a9 1030 + 1031 + #define REG_A4XX_RBBM_PERFCTR_CP_7_LO 0x000000aa 1032 + 1033 + #define REG_A4XX_RBBM_PERFCTR_CP_7_HI 0x000000ab 1034 + 1035 + #define REG_A4XX_RBBM_PERFCTR_RBBM_0_LO 0x000000ac 1036 + 1037 + #define REG_A4XX_RBBM_PERFCTR_RBBM_0_HI 0x000000ad 1038 + 1039 + #define REG_A4XX_RBBM_PERFCTR_RBBM_1_LO 0x000000ae 1040 + 1041 + #define REG_A4XX_RBBM_PERFCTR_RBBM_1_HI 0x000000af 1042 + 1043 + #define REG_A4XX_RBBM_PERFCTR_RBBM_2_LO 0x000000b0 1044 + 1045 + #define REG_A4XX_RBBM_PERFCTR_RBBM_2_HI 0x000000b1 1046 + 1047 + #define REG_A4XX_RBBM_PERFCTR_RBBM_3_LO 0x000000b2 1048 + 1049 + #define REG_A4XX_RBBM_PERFCTR_RBBM_3_HI 0x000000b3 1050 + 1051 + #define REG_A4XX_RBBM_PERFCTR_PC_0_LO 0x000000b4 1052 + 1053 + #define REG_A4XX_RBBM_PERFCTR_PC_0_HI 0x000000b5 1054 + 1055 + #define REG_A4XX_RBBM_PERFCTR_PC_1_LO 0x000000b6 1056 + 1057 + #define REG_A4XX_RBBM_PERFCTR_PC_1_HI 0x000000b7 1058 + 1059 + #define REG_A4XX_RBBM_PERFCTR_PC_2_LO 0x000000b8 1060 + 1061 + #define REG_A4XX_RBBM_PERFCTR_PC_2_HI 0x000000b9 1062 + 1063 + #define REG_A4XX_RBBM_PERFCTR_PC_3_LO 0x000000ba 1064 + 1065 + #define REG_A4XX_RBBM_PERFCTR_PC_3_HI 0x000000bb 1066 + 1067 + #define REG_A4XX_RBBM_PERFCTR_PC_4_LO 0x000000bc 1068 + 1069 + #define REG_A4XX_RBBM_PERFCTR_PC_4_HI 0x000000bd 1070 + 1071 + #define REG_A4XX_RBBM_PERFCTR_PC_5_LO 0x000000be 1072 + 1073 + #define REG_A4XX_RBBM_PERFCTR_PC_5_HI 0x000000bf 1074 + 1075 + #define REG_A4XX_RBBM_PERFCTR_PC_6_LO 0x000000c0 1076 + 1077 + #define REG_A4XX_RBBM_PERFCTR_PC_6_HI 0x000000c1 1078 + 1079 + #define REG_A4XX_RBBM_PERFCTR_PC_7_LO 0x000000c2 1080 + 1081 + #define REG_A4XX_RBBM_PERFCTR_PC_7_HI 0x000000c3 1082 + 1083 + #define REG_A4XX_RBBM_PERFCTR_VFD_0_LO 0x000000c4 1084 + 1085 + #define REG_A4XX_RBBM_PERFCTR_VFD_0_HI 0x000000c5 1086 + 1087 + #define REG_A4XX_RBBM_PERFCTR_VFD_1_LO 0x000000c6 1088 + 1089 + #define REG_A4XX_RBBM_PERFCTR_VFD_1_HI 0x000000c7 1090 + 1091 + #define REG_A4XX_RBBM_PERFCTR_VFD_2_LO 0x000000c8 1092 + 1093 + #define REG_A4XX_RBBM_PERFCTR_VFD_2_HI 0x000000c9 1094 + 1095 + #define REG_A4XX_RBBM_PERFCTR_VFD_3_LO 0x000000ca 1096 + 1097 + #define REG_A4XX_RBBM_PERFCTR_VFD_3_HI 0x000000cb 1098 + 1099 + #define REG_A4XX_RBBM_PERFCTR_VFD_4_LO 0x000000cc 1100 + 1101 + #define REG_A4XX_RBBM_PERFCTR_VFD_4_HI 0x000000cd 1102 + 1103 + #define REG_A4XX_RBBM_PERFCTR_VFD_5_LO 0x000000ce 1104 + 1105 + #define REG_A4XX_RBBM_PERFCTR_VFD_5_HI 0x000000cf 1106 + 1107 + #define REG_A4XX_RBBM_PERFCTR_VFD_6_LO 0x000000d0 1108 + 1109 + #define REG_A4XX_RBBM_PERFCTR_VFD_6_HI 0x000000d1 1110 + 1111 + #define REG_A4XX_RBBM_PERFCTR_VFD_7_LO 0x000000d2 1112 + 1113 + #define REG_A4XX_RBBM_PERFCTR_VFD_7_HI 0x000000d3 1114 + 1115 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_0_LO 0x000000d4 1116 + 1117 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_0_HI 0x000000d5 1118 + 1119 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_1_LO 0x000000d6 1120 + 1121 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_1_HI 0x000000d7 1122 + 1123 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_2_LO 0x000000d8 1124 + 1125 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_2_HI 0x000000d9 1126 + 1127 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_3_LO 0x000000da 1128 + 1129 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_3_HI 0x000000db 1130 + 1131 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_4_LO 0x000000dc 1132 + 1133 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_4_HI 0x000000dd 1134 + 1135 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_5_LO 0x000000de 1136 + 1137 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_5_HI 0x000000df 1138 + 1139 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_6_LO 0x000000e0 1140 + 1141 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_6_HI 0x000000e1 1142 + 1143 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_7_LO 0x000000e2 1144 + 1145 + #define REG_A4XX_RBBM_PERFCTR_HLSQ_7_HI 0x000000e3 1146 + 1147 + #define REG_A4XX_RBBM_PERFCTR_VPC_0_LO 0x000000e4 1148 + 1149 + #define REG_A4XX_RBBM_PERFCTR_VPC_0_HI 0x000000e5 1150 + 1151 + #define REG_A4XX_RBBM_PERFCTR_VPC_1_LO 0x000000e6 1152 + 1153 + #define REG_A4XX_RBBM_PERFCTR_VPC_1_HI 0x000000e7 1154 + 1155 + #define REG_A4XX_RBBM_PERFCTR_VPC_2_LO 0x000000e8 1156 + 1157 + #define REG_A4XX_RBBM_PERFCTR_VPC_2_HI 0x000000e9 1158 + 1159 + #define REG_A4XX_RBBM_PERFCTR_VPC_3_LO 0x000000ea 1160 + 1161 + #define REG_A4XX_RBBM_PERFCTR_VPC_3_HI 0x000000eb 1162 + 1163 + #define REG_A4XX_RBBM_PERFCTR_CCU_0_LO 0x000000ec 1164 + 1165 + #define REG_A4XX_RBBM_PERFCTR_CCU_0_HI 0x000000ed 1166 + 1167 + #define REG_A4XX_RBBM_PERFCTR_CCU_1_LO 0x000000ee 1168 + 1169 + #define REG_A4XX_RBBM_PERFCTR_CCU_1_HI 0x000000ef 1170 + 1171 + #define REG_A4XX_RBBM_PERFCTR_CCU_2_LO 0x000000f0 1172 + 1173 + #define REG_A4XX_RBBM_PERFCTR_CCU_2_HI 0x000000f1 1174 + 1175 + #define REG_A4XX_RBBM_PERFCTR_CCU_3_LO 0x000000f2 1176 + 1177 + #define REG_A4XX_RBBM_PERFCTR_CCU_3_HI 0x000000f3 1178 + 1179 + #define REG_A4XX_RBBM_PERFCTR_TSE_0_LO 0x000000f4 1180 + 1181 + #define REG_A4XX_RBBM_PERFCTR_TSE_0_HI 0x000000f5 1182 + 1183 + #define REG_A4XX_RBBM_PERFCTR_TSE_1_LO 0x000000f6 1184 + 1185 + #define REG_A4XX_RBBM_PERFCTR_TSE_1_HI 0x000000f7 1186 + 1187 + #define REG_A4XX_RBBM_PERFCTR_TSE_2_LO 0x000000f8 1188 + 1189 + #define REG_A4XX_RBBM_PERFCTR_TSE_2_HI 0x000000f9 1190 + 1191 + #define REG_A4XX_RBBM_PERFCTR_TSE_3_LO 0x000000fa 1192 + 1193 + #define REG_A4XX_RBBM_PERFCTR_TSE_3_HI 0x000000fb 1194 + 1195 + #define REG_A4XX_RBBM_PERFCTR_RAS_0_LO 0x000000fc 1196 + 1197 + #define REG_A4XX_RBBM_PERFCTR_RAS_0_HI 0x000000fd 1198 + 1199 + #define REG_A4XX_RBBM_PERFCTR_RAS_1_LO 0x000000fe 1200 + 1201 + #define REG_A4XX_RBBM_PERFCTR_RAS_1_HI 0x000000ff 1202 + 1203 + #define REG_A4XX_RBBM_PERFCTR_RAS_2_LO 0x00000100 1204 + 1205 + #define REG_A4XX_RBBM_PERFCTR_RAS_2_HI 0x00000101 1206 + 1207 + #define REG_A4XX_RBBM_PERFCTR_RAS_3_LO 0x00000102 1208 + 1209 + #define REG_A4XX_RBBM_PERFCTR_RAS_3_HI 0x00000103 1210 + 1211 + #define REG_A4XX_RBBM_PERFCTR_UCHE_0_LO 0x00000104 1212 + 1213 + #define REG_A4XX_RBBM_PERFCTR_UCHE_0_HI 0x00000105 1214 + 1215 + #define REG_A4XX_RBBM_PERFCTR_UCHE_1_LO 0x00000106 1216 + 1217 + #define REG_A4XX_RBBM_PERFCTR_UCHE_1_HI 0x00000107 1218 + 1219 + #define REG_A4XX_RBBM_PERFCTR_UCHE_2_LO 0x00000108 1220 + 1221 + #define REG_A4XX_RBBM_PERFCTR_UCHE_2_HI 0x00000109 1222 + 1223 + #define REG_A4XX_RBBM_PERFCTR_UCHE_3_LO 0x0000010a 1224 + 1225 + #define REG_A4XX_RBBM_PERFCTR_UCHE_3_HI 0x0000010b 1226 + 1227 + #define REG_A4XX_RBBM_PERFCTR_UCHE_4_LO 0x0000010c 1228 + 1229 + #define REG_A4XX_RBBM_PERFCTR_UCHE_4_HI 0x0000010d 1230 + 1231 + #define REG_A4XX_RBBM_PERFCTR_UCHE_5_LO 0x0000010e 1232 + 1233 + #define REG_A4XX_RBBM_PERFCTR_UCHE_5_HI 0x0000010f 1234 + 1235 + #define REG_A4XX_RBBM_PERFCTR_UCHE_6_LO 0x00000110 1236 + 1237 + #define REG_A4XX_RBBM_PERFCTR_UCHE_6_HI 0x00000111 1238 + 1239 + #define REG_A4XX_RBBM_PERFCTR_UCHE_7_LO 0x00000112 1240 + 1241 + #define REG_A4XX_RBBM_PERFCTR_UCHE_7_HI 0x00000113 1242 + 1243 + #define REG_A4XX_RBBM_PERFCTR_TP_0_LO 0x00000114 1244 + 1245 + #define REG_A4XX_RBBM_PERFCTR_TP_0_HI 0x00000115 1246 + 1247 + #define REG_A4XX_RBBM_PERFCTR_TP_0_LO 0x00000114 1248 + 1249 + #define REG_A4XX_RBBM_PERFCTR_TP_0_HI 0x00000115 1250 + 1251 + #define REG_A4XX_RBBM_PERFCTR_TP_1_LO 0x00000116 1252 + 1253 + #define REG_A4XX_RBBM_PERFCTR_TP_1_HI 0x00000117 1254 + 1255 + #define REG_A4XX_RBBM_PERFCTR_TP_2_LO 0x00000118 1256 + 1257 + #define REG_A4XX_RBBM_PERFCTR_TP_2_HI 0x00000119 1258 + 1259 + #define REG_A4XX_RBBM_PERFCTR_TP_3_LO 0x0000011a 1260 + 1261 + #define REG_A4XX_RBBM_PERFCTR_TP_3_HI 0x0000011b 1262 + 1263 + #define REG_A4XX_RBBM_PERFCTR_TP_4_LO 0x0000011c 1264 + 1265 + #define REG_A4XX_RBBM_PERFCTR_TP_4_HI 0x0000011d 1266 + 1267 + #define REG_A4XX_RBBM_PERFCTR_TP_5_LO 0x0000011e 1268 + 1269 + #define REG_A4XX_RBBM_PERFCTR_TP_5_HI 0x0000011f 1270 + 1271 + #define REG_A4XX_RBBM_PERFCTR_TP_6_LO 0x00000120 1272 + 1273 + #define REG_A4XX_RBBM_PERFCTR_TP_6_HI 0x00000121 1274 + 1275 + #define REG_A4XX_RBBM_PERFCTR_TP_7_LO 0x00000122 1276 + 1277 + #define REG_A4XX_RBBM_PERFCTR_TP_7_HI 0x00000123 1278 + 1279 + #define REG_A4XX_RBBM_PERFCTR_SP_0_LO 0x00000124 1280 + 1281 + #define REG_A4XX_RBBM_PERFCTR_SP_0_HI 0x00000125 1282 + 1283 + #define REG_A4XX_RBBM_PERFCTR_SP_1_LO 0x00000126 1284 + 1285 + #define REG_A4XX_RBBM_PERFCTR_SP_1_HI 0x00000127 1286 + 1287 + #define REG_A4XX_RBBM_PERFCTR_SP_2_LO 0x00000128 1288 + 1289 + #define REG_A4XX_RBBM_PERFCTR_SP_2_HI 0x00000129 1290 + 1291 + #define REG_A4XX_RBBM_PERFCTR_SP_3_LO 0x0000012a 1292 + 1293 + #define REG_A4XX_RBBM_PERFCTR_SP_3_HI 0x0000012b 1294 + 1295 + #define REG_A4XX_RBBM_PERFCTR_SP_4_LO 0x0000012c 1296 + 1297 + #define REG_A4XX_RBBM_PERFCTR_SP_4_HI 0x0000012d 1298 + 1299 + #define REG_A4XX_RBBM_PERFCTR_SP_5_LO 0x0000012e 1300 + 1301 + #define REG_A4XX_RBBM_PERFCTR_SP_5_HI 0x0000012f 1302 + 1303 + #define REG_A4XX_RBBM_PERFCTR_SP_6_LO 0x00000130 1304 + 1305 + #define REG_A4XX_RBBM_PERFCTR_SP_6_HI 0x00000131 1306 + 1307 + #define REG_A4XX_RBBM_PERFCTR_SP_7_LO 0x00000132 1308 + 1309 + #define REG_A4XX_RBBM_PERFCTR_SP_7_HI 0x00000133 1310 + 1311 + #define REG_A4XX_RBBM_PERFCTR_SP_8_LO 0x00000134 1312 + 1313 + #define REG_A4XX_RBBM_PERFCTR_SP_8_HI 0x00000135 1314 + 1315 + #define REG_A4XX_RBBM_PERFCTR_SP_9_LO 0x00000136 1316 + 1317 + #define REG_A4XX_RBBM_PERFCTR_SP_9_HI 0x00000137 1318 + 1319 + #define REG_A4XX_RBBM_PERFCTR_SP_10_LO 0x00000138 1320 + 1321 + #define REG_A4XX_RBBM_PERFCTR_SP_10_HI 0x00000139 1322 + 1323 + #define REG_A4XX_RBBM_PERFCTR_SP_11_LO 0x0000013a 1324 + 1325 + #define REG_A4XX_RBBM_PERFCTR_SP_11_HI 0x0000013b 1326 + 1327 + #define REG_A4XX_RBBM_PERFCTR_RB_0_LO 0x0000013c 1328 + 1329 + #define REG_A4XX_RBBM_PERFCTR_RB_0_HI 0x0000013d 1330 + 1331 + #define REG_A4XX_RBBM_PERFCTR_RB_1_LO 0x0000013e 1332 + 1333 + #define REG_A4XX_RBBM_PERFCTR_RB_1_HI 0x0000013f 1334 + 1335 + #define REG_A4XX_RBBM_PERFCTR_RB_2_LO 0x00000140 1336 + 1337 + #define REG_A4XX_RBBM_PERFCTR_RB_2_HI 0x00000141 1338 + 1339 + #define REG_A4XX_RBBM_PERFCTR_RB_3_LO 0x00000142 1340 + 1341 + #define REG_A4XX_RBBM_PERFCTR_RB_3_HI 0x00000143 1342 + 1343 + #define REG_A4XX_RBBM_PERFCTR_RB_4_LO 0x00000144 1344 + 1345 + #define REG_A4XX_RBBM_PERFCTR_RB_4_HI 0x00000145 1346 + 1347 + #define REG_A4XX_RBBM_PERFCTR_RB_5_LO 0x00000146 1348 + 1349 + #define REG_A4XX_RBBM_PERFCTR_RB_5_HI 0x00000147 1350 + 1351 + #define REG_A4XX_RBBM_PERFCTR_RB_6_LO 0x00000148 1352 + 1353 + #define REG_A4XX_RBBM_PERFCTR_RB_6_HI 0x00000149 1354 + 1355 + #define REG_A4XX_RBBM_PERFCTR_RB_7_LO 0x0000014a 1356 + 1357 + #define REG_A4XX_RBBM_PERFCTR_RB_7_HI 0x0000014b 1358 + 1359 + #define REG_A4XX_RBBM_PERFCTR_VSC_0_LO 0x0000014c 1360 + 1361 + #define REG_A4XX_RBBM_PERFCTR_VSC_0_HI 0x0000014d 1362 + 1363 + #define REG_A4XX_RBBM_PERFCTR_VSC_1_LO 0x0000014e 1364 + 1365 + #define REG_A4XX_RBBM_PERFCTR_VSC_1_HI 0x0000014f 1366 + 1367 + #define REG_A4XX_RBBM_PERFCTR_PWR_0_LO 0x00000166 1368 + 1369 + #define REG_A4XX_RBBM_PERFCTR_PWR_0_HI 0x00000167 1370 + 1371 + #define REG_A4XX_RBBM_PERFCTR_PWR_1_LO 0x00000168 1372 + 1373 + #define REG_A4XX_RBBM_PERFCTR_PWR_1_HI 0x00000169 1374 + 1375 + #define REG_A4XX_RBBM_ALWAYSON_COUNTER_LO 0x0000016e 1376 + 1377 + #define REG_A4XX_RBBM_ALWAYSON_COUNTER_HI 0x0000016f 1615 1378 1616 1379 static inline uint32_t REG_A4XX_RBBM_CLOCK_CTL_SP(uint32_t i0) { return 0x00000068 + 0x1*i0; } 1617 1380 ··· 2039 1046 2040 1047 static inline uint32_t REG_A4XX_RBBM_CLOCK_DELAY_RB_MARB_CCU_L1_REG(uint32_t i0) { return 0x0000008e + 0x1*i0; } 2041 1048 1049 + #define REG_A4XX_RBBM_SP_REGFILE_SLEEP_CNTL_0 0x00000099 1050 + 1051 + #define REG_A4XX_RBBM_SP_REGFILE_SLEEP_CNTL_1 0x0000009a 1052 + 2042 1053 #define REG_A4XX_RBBM_PERFCTR_PWR_1_LO 0x00000168 2043 1054 2044 1055 #define REG_A4XX_RBBM_PERFCTR_CTL 0x00000170 ··· 2056 1059 #define REG_A4XX_RBBM_PERFCTR_LOAD_VALUE_LO 0x00000174 2057 1060 2058 1061 #define REG_A4XX_RBBM_PERFCTR_LOAD_VALUE_HI 0x00000175 1062 + 1063 + #define REG_A4XX_RBBM_PERFCTR_RBBM_SEL_0 0x00000176 1064 + 1065 + #define REG_A4XX_RBBM_PERFCTR_RBBM_SEL_1 0x00000177 1066 + 1067 + #define REG_A4XX_RBBM_PERFCTR_RBBM_SEL_2 0x00000178 1068 + 1069 + #define REG_A4XX_RBBM_PERFCTR_RBBM_SEL_3 0x00000179 2059 1070 2060 1071 #define REG_A4XX_RBBM_GPU_BUSY_MASKED 0x0000017a 2061 1072 ··· 2103 1098 #define A4XX_RBBM_STATUS_GPU_BUSY 0x80000000 2104 1099 2105 1100 #define REG_A4XX_RBBM_INTERFACE_RRDY_STATUS5 0x0000019f 1101 + 1102 + #define REG_A4XX_RBBM_POWER_STATUS 0x000001b0 1103 + #define A4XX_RBBM_POWER_STATUS_SP_TP_PWR_ON 0x00100000 1104 + 1105 + #define REG_A4XX_RBBM_WAIT_IDLE_CLOCKS_CTL2 0x000001b8 2106 1106 2107 1107 #define REG_A4XX_CP_SCRATCH_UMASK 0x00000228 2108 1108 ··· 2201 1191 2202 1192 #define REG_A4XX_CP_PERFCTR_CP_SEL_0 0x00000500 2203 1193 1194 + #define REG_A4XX_CP_PERFCTR_CP_SEL_1 0x00000501 1195 + 1196 + #define REG_A4XX_CP_PERFCTR_CP_SEL_2 0x00000502 1197 + 1198 + #define REG_A4XX_CP_PERFCTR_CP_SEL_3 0x00000503 1199 + 1200 + #define REG_A4XX_CP_PERFCTR_CP_SEL_4 0x00000504 1201 + 1202 + #define REG_A4XX_CP_PERFCTR_CP_SEL_5 0x00000505 1203 + 1204 + #define REG_A4XX_CP_PERFCTR_CP_SEL_6 0x00000506 1205 + 1206 + #define REG_A4XX_CP_PERFCTR_CP_SEL_7 0x00000507 1207 + 2204 1208 #define REG_A4XX_CP_PERFCOMBINER_SELECT 0x0000050b 2205 1209 2206 1210 static inline uint32_t REG_A4XX_CP_SCRATCH(uint32_t i0) { return 0x00000578 + 0x1*i0; } ··· 2224 1200 #define REG_A4XX_SP_VS_STATUS 0x00000ec0 2225 1201 2226 1202 #define REG_A4XX_SP_MODE_CONTROL 0x00000ec3 1203 + 1204 + #define REG_A4XX_SP_PERFCTR_SP_SEL_0 0x00000ec4 1205 + 1206 + #define REG_A4XX_SP_PERFCTR_SP_SEL_1 0x00000ec5 1207 + 1208 + #define REG_A4XX_SP_PERFCTR_SP_SEL_2 0x00000ec6 1209 + 1210 + #define REG_A4XX_SP_PERFCTR_SP_SEL_3 0x00000ec7 1211 + 1212 + #define REG_A4XX_SP_PERFCTR_SP_SEL_4 0x00000ec8 1213 + 1214 + #define REG_A4XX_SP_PERFCTR_SP_SEL_5 0x00000ec9 1215 + 1216 + #define REG_A4XX_SP_PERFCTR_SP_SEL_6 0x00000eca 1217 + 1218 + #define REG_A4XX_SP_PERFCTR_SP_SEL_7 0x00000ecb 1219 + 1220 + #define REG_A4XX_SP_PERFCTR_SP_SEL_8 0x00000ecc 1221 + 1222 + #define REG_A4XX_SP_PERFCTR_SP_SEL_9 0x00000ecd 1223 + 1224 + #define REG_A4XX_SP_PERFCTR_SP_SEL_10 0x00000ece 2227 1225 2228 1226 #define REG_A4XX_SP_PERFCTR_SP_SEL_11 0x00000ecf 2229 1227 ··· 2745 1699 2746 1700 #define REG_A4XX_VPC_DEBUG_ECO_CONTROL 0x00000e64 2747 1701 1702 + #define REG_A4XX_VPC_PERFCTR_VPC_SEL_0 0x00000e65 1703 + 1704 + #define REG_A4XX_VPC_PERFCTR_VPC_SEL_1 0x00000e66 1705 + 1706 + #define REG_A4XX_VPC_PERFCTR_VPC_SEL_2 0x00000e67 1707 + 2748 1708 #define REG_A4XX_VPC_PERFCTR_VPC_SEL_3 0x00000e68 2749 1709 2750 1710 #define REG_A4XX_VPC_ATTR 0x00002140 ··· 2862 1810 #define REG_A4XX_VSC_PERFCTR_VSC_SEL_1 0x00000c51 2863 1811 2864 1812 #define REG_A4XX_VFD_DEBUG_CONTROL 0x00000e40 1813 + 1814 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_0 0x00000e43 1815 + 1816 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_1 0x00000e44 1817 + 1818 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_2 0x00000e45 1819 + 1820 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_3 0x00000e46 1821 + 1822 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_4 0x00000e47 1823 + 1824 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_5 0x00000e48 1825 + 1826 + #define REG_A4XX_VFD_PERFCTR_VFD_SEL_6 0x00000e49 2865 1827 2866 1828 #define REG_A4XX_VFD_PERFCTR_VFD_SEL_7 0x00000e4a 2867 1829 ··· 3033 1967 3034 1968 #define REG_A4XX_TPL1_TP_MODE_CONTROL 0x00000f03 3035 1969 1970 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_0 0x00000f04 1971 + 1972 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_1 0x00000f05 1973 + 1974 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_2 0x00000f06 1975 + 1976 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_3 0x00000f07 1977 + 1978 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_4 0x00000f08 1979 + 1980 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_5 0x00000f09 1981 + 1982 + #define REG_A4XX_TPL1_PERFCTR_TP_SEL_6 0x00000f0a 1983 + 3036 1984 #define REG_A4XX_TPL1_PERFCTR_TP_SEL_7 0x00000f0b 3037 1985 3038 1986 #define REG_A4XX_TPL1_TP_TEX_OFFSET 0x00002380 ··· 3101 2021 3102 2022 #define REG_A4XX_GRAS_PERFCTR_TSE_SEL_0 0x00000c88 3103 2023 2024 + #define REG_A4XX_GRAS_PERFCTR_TSE_SEL_1 0x00000c89 2025 + 2026 + #define REG_A4XX_GRAS_PERFCTR_TSE_SEL_2 0x00000c8a 2027 + 3104 2028 #define REG_A4XX_GRAS_PERFCTR_TSE_SEL_3 0x00000c8b 3105 2029 2030 + #define REG_A4XX_GRAS_PERFCTR_RAS_SEL_0 0x00000c8c 2031 + 2032 + #define REG_A4XX_GRAS_PERFCTR_RAS_SEL_1 0x00000c8d 2033 + 2034 + #define REG_A4XX_GRAS_PERFCTR_RAS_SEL_2 0x00000c8e 2035 + 2036 + #define REG_A4XX_GRAS_PERFCTR_RAS_SEL_3 0x00000c8f 2037 + 3106 2038 #define REG_A4XX_GRAS_CL_CLIP_CNTL 0x00002000 2039 + #define A4XX_GRAS_CL_CLIP_CNTL_CLIP_DISABLE 0x00008000 2040 + #define A4XX_GRAS_CL_CLIP_CNTL_ZERO_GB_SCALE_Z 0x00400000 3107 2041 3108 2042 #define REG_A4XX_GRAS_CLEAR_CNTL 0x00002003 3109 2043 #define A4XX_GRAS_CLEAR_CNTL_NOT_FASTCLEAR 0x00000001 ··· 3208 2114 3209 2115 #define REG_A4XX_GRAS_ALPHA_CONTROL 0x00002073 3210 2116 #define A4XX_GRAS_ALPHA_CONTROL_ALPHA_TEST_ENABLE 0x00000004 2117 + #define A4XX_GRAS_ALPHA_CONTROL_FORCE_FRAGZ_TO_FS 0x00000008 3211 2118 3212 2119 #define REG_A4XX_GRAS_SU_POLY_OFFSET_SCALE 0x00002074 3213 2120 #define A4XX_GRAS_SU_POLY_OFFSET_SCALE__MASK 0xffffffff ··· 3380 2285 3381 2286 #define REG_A4XX_UCHE_CACHE_WAYS_VFD 0x00000e8c 3382 2287 2288 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_0 0x00000e8e 2289 + 2290 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_1 0x00000e8f 2291 + 2292 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_2 0x00000e90 2293 + 2294 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_3 0x00000e91 2295 + 2296 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_4 0x00000e92 2297 + 2298 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_5 0x00000e93 2299 + 2300 + #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_6 0x00000e94 2301 + 3383 2302 #define REG_A4XX_UCHE_PERFCTR_UCHE_SEL_7 0x00000e95 3384 2303 3385 2304 #define REG_A4XX_HLSQ_TIMEOUT_THRESHOLD 0x00000e00 ··· 3403 2294 #define REG_A4XX_HLSQ_MODE_CONTROL 0x00000e05 3404 2295 3405 2296 #define REG_A4XX_HLSQ_PERF_PIPE_MASK 0x00000e0e 2297 + 2298 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_0 0x00000e06 2299 + 2300 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_1 0x00000e07 2301 + 2302 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_2 0x00000e08 2303 + 2304 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_3 0x00000e09 2305 + 2306 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_4 0x00000e0a 2307 + 2308 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_5 0x00000e0b 2309 + 2310 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_6 0x00000e0c 2311 + 2312 + #define REG_A4XX_HLSQ_PERFCTR_HLSQ_SEL_7 0x00000e0d 3406 2313 3407 2314 #define REG_A4XX_HLSQ_CONTROL_0_REG 0x000023c0 3408 2315 #define A4XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE__MASK 0x00000010 ··· 3674 2549 3675 2550 #define REG_A4XX_PC_PERFCTR_PC_SEL_0 0x00000d10 3676 2551 2552 + #define REG_A4XX_PC_PERFCTR_PC_SEL_1 0x00000d11 2553 + 2554 + #define REG_A4XX_PC_PERFCTR_PC_SEL_2 0x00000d12 2555 + 2556 + #define REG_A4XX_PC_PERFCTR_PC_SEL_3 0x00000d13 2557 + 2558 + #define REG_A4XX_PC_PERFCTR_PC_SEL_4 0x00000d14 2559 + 2560 + #define REG_A4XX_PC_PERFCTR_PC_SEL_5 0x00000d15 2561 + 2562 + #define REG_A4XX_PC_PERFCTR_PC_SEL_6 0x00000d16 2563 + 3677 2564 #define REG_A4XX_PC_PERFCTR_PC_SEL_7 0x00000d17 3678 2565 3679 2566 #define REG_A4XX_PC_BIN_BASE 0x000021c0 ··· 3701 2564 #define A4XX_PC_PRIM_VTX_CNTL_PROVOKING_VTX_LAST 0x02000000 3702 2565 #define A4XX_PC_PRIM_VTX_CNTL_PSIZE 0x04000000 3703 2566 3704 - #define REG_A4XX_UNKNOWN_21C5 0x000021c5 2567 + #define REG_A4XX_PC_PRIM_VTX_CNTL2 0x000021c5 2568 + #define A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_FRONT_PTYPE__MASK 0x00000007 2569 + #define A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_FRONT_PTYPE__SHIFT 0 2570 + static inline uint32_t A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_FRONT_PTYPE(enum adreno_pa_su_sc_draw val) 2571 + { 2572 + return ((val) << A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_FRONT_PTYPE__SHIFT) & A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_FRONT_PTYPE__MASK; 2573 + } 2574 + #define A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_BACK_PTYPE__MASK 0x00000038 2575 + #define A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_BACK_PTYPE__SHIFT 3 2576 + static inline uint32_t A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_BACK_PTYPE(enum adreno_pa_su_sc_draw val) 2577 + { 2578 + return ((val) << A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_BACK_PTYPE__SHIFT) & A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_BACK_PTYPE__MASK; 2579 + } 2580 + #define A4XX_PC_PRIM_VTX_CNTL2_POLYMODE_ENABLE 0x00000040 3705 2581 3706 2582 #define REG_A4XX_PC_RESTART_INDEX 0x000021c6 3707 2583 ··· 3796 2646 3797 2647 #define REG_A4XX_UNKNOWN_20EF 0x000020ef 3798 2648 3799 - #define REG_A4XX_UNKNOWN_20F0 0x000020f0 3800 - 3801 - #define REG_A4XX_UNKNOWN_20F1 0x000020f1 3802 - 3803 - #define REG_A4XX_UNKNOWN_20F2 0x000020f2 3804 - 3805 - #define REG_A4XX_UNKNOWN_20F7 0x000020f7 3806 - #define A4XX_UNKNOWN_20F7__MASK 0xffffffff 3807 - #define A4XX_UNKNOWN_20F7__SHIFT 0 3808 - static inline uint32_t A4XX_UNKNOWN_20F7(float val) 3809 - { 3810 - return ((fui(val)) << A4XX_UNKNOWN_20F7__SHIFT) & A4XX_UNKNOWN_20F7__MASK; 3811 - } 3812 - 3813 2649 #define REG_A4XX_UNKNOWN_2152 0x00002152 3814 2650 3815 2651 #define REG_A4XX_UNKNOWN_2153 0x00002153 ··· 3856 2720 { 3857 2721 return ((val) << A4XX_TEX_SAMP_0_ANISO__SHIFT) & A4XX_TEX_SAMP_0_ANISO__MASK; 3858 2722 } 2723 + #define A4XX_TEX_SAMP_0_LOD_BIAS__MASK 0xfff80000 2724 + #define A4XX_TEX_SAMP_0_LOD_BIAS__SHIFT 19 2725 + static inline uint32_t A4XX_TEX_SAMP_0_LOD_BIAS(float val) 2726 + { 2727 + return ((((int32_t)(val * 256.0))) << A4XX_TEX_SAMP_0_LOD_BIAS__SHIFT) & A4XX_TEX_SAMP_0_LOD_BIAS__MASK; 2728 + } 3859 2729 3860 2730 #define REG_A4XX_TEX_SAMP_1 0x00000001 3861 2731 #define A4XX_TEX_SAMP_1_COMPARE_FUNC__MASK 0x0000000e ··· 3870 2728 { 3871 2729 return ((val) << A4XX_TEX_SAMP_1_COMPARE_FUNC__SHIFT) & A4XX_TEX_SAMP_1_COMPARE_FUNC__MASK; 3872 2730 } 2731 + #define A4XX_TEX_SAMP_1_CUBEMAPSEAMLESSFILTOFF 0x00000010 3873 2732 #define A4XX_TEX_SAMP_1_UNNORM_COORDS 0x00000020 3874 2733 #define A4XX_TEX_SAMP_1_MIPFILTER_LINEAR_FAR 0x00000040 3875 2734 #define A4XX_TEX_SAMP_1_MAX_LOD__MASK 0x000fff00 ··· 3939 2796 { 3940 2797 return ((val) << A4XX_TEX_CONST_1_HEIGHT__SHIFT) & A4XX_TEX_CONST_1_HEIGHT__MASK; 3941 2798 } 3942 - #define A4XX_TEX_CONST_1_WIDTH__MASK 0x1fff8000 2799 + #define A4XX_TEX_CONST_1_WIDTH__MASK 0x3fff8000 3943 2800 #define A4XX_TEX_CONST_1_WIDTH__SHIFT 15 3944 2801 static inline uint32_t A4XX_TEX_CONST_1_WIDTH(uint32_t val) 3945 2802 {
+24 -6
drivers/gpu/drm/msm/adreno/adreno_common.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/adreno.xml ( 398 bytes, from 2015-09-24 17:25:31) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/adreno/a2xx.xml ( 32901 bytes, from 2015-05-20 20:03:14) 14 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 10755 bytes, from 2015-09-14 20:46:55) 15 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 14968 bytes, from 2015-05-20 20:12:27) 16 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 67771 bytes, from 2015-09-14 20:46:55) 17 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 63970 bytes, from 2015-09-14 20:50:12) 14 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 11518 bytes, from 2016-02-10 21:03:25) 15 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 16166 bytes, from 2016-02-11 21:20:31) 16 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 83967 bytes, from 2016-02-10 17:07:21) 17 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 109916 bytes, from 2016-02-20 18:44:48) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2015-09-24 17:30:00) 19 19 20 - Copyright (C) 2013-2015 by the following authors: 20 + Copyright (C) 2013-2016 by the following authors: 21 21 - Rob Clark <robdclark@gmail.com> (robclark) 22 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 22 23 23 24 Permission is hereby granted, free of charge, to any person obtaining 24 25 a copy of this software and associated documentation files (the ··· 118 117 RB_COPY_RESOLVE = 1, 119 118 RB_COPY_CLEAR = 2, 120 119 RB_COPY_DEPTH_STENCIL = 5, 120 + }; 121 + 122 + enum a3xx_rop_code { 123 + ROP_CLEAR = 0, 124 + ROP_NOR = 1, 125 + ROP_AND_INVERTED = 2, 126 + ROP_COPY_INVERTED = 3, 127 + ROP_AND_REVERSE = 4, 128 + ROP_INVERT = 5, 129 + ROP_NAND = 7, 130 + ROP_AND = 8, 131 + ROP_EQUIV = 9, 132 + ROP_NOOP = 10, 133 + ROP_OR_INVERTED = 11, 134 + ROP_OR_REVERSE = 13, 135 + ROP_OR = 14, 136 + ROP_SET = 15, 121 137 }; 122 138 123 139 enum a3xx_render_mode {
+41 -7
drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/adreno.xml ( 398 bytes, from 2015-09-24 17:25:31) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/adreno/a2xx.xml ( 32901 bytes, from 2015-05-20 20:03:14) 14 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 10755 bytes, from 2015-09-14 20:46:55) 15 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 14968 bytes, from 2015-05-20 20:12:27) 16 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 67771 bytes, from 2015-09-14 20:46:55) 17 - - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 63970 bytes, from 2015-09-14 20:50:12) 14 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_common.xml ( 11518 bytes, from 2016-02-10 21:03:25) 15 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/adreno_pm4.xml ( 16166 bytes, from 2016-02-11 21:20:31) 16 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a3xx.xml ( 83967 bytes, from 2016-02-10 17:07:21) 17 + - /home/robclark/src/freedreno/envytools/rnndb/adreno/a4xx.xml ( 109916 bytes, from 2016-02-20 18:44:48) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2015-09-24 17:30:00) 19 19 20 - Copyright (C) 2013-2015 by the following authors: 20 + Copyright (C) 2013-2016 by the following authors: 21 21 - Rob Clark <robdclark@gmail.com> (robclark) 22 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 22 23 23 24 Permission is hereby granted, free of charge, to any person obtaining 24 25 a copy of this software and associated documentation files (the ··· 173 172 CP_UNKNOWN_1A = 26, 174 173 CP_UNKNOWN_4E = 78, 175 174 CP_WIDE_REG_WRITE = 116, 175 + CP_SCRATCH_TO_REG = 77, 176 + CP_REG_TO_SCRATCH = 74, 177 + CP_WAIT_MEM_WRITES = 18, 178 + CP_COND_REG_EXEC = 71, 179 + CP_MEM_TO_REG = 66, 176 180 IN_IB_PREFETCH_END = 23, 177 181 IN_SUBBLK_PREFETCH = 31, 178 182 IN_INSTR_PREFETCH = 32, ··· 205 199 206 200 enum adreno_state_src { 207 201 SS_DIRECT = 0, 202 + SS_INVALID_ALL_IC = 2, 203 + SS_INVALID_PART_IC = 3, 208 204 SS_INDIRECT = 4, 205 + SS_INDIRECT_TCM = 5, 206 + SS_INDIRECT_STM = 6, 209 207 }; 210 208 211 209 enum a4xx_index_size { ··· 237 227 { 238 228 return ((val) << CP_LOAD_STATE_0_STATE_BLOCK__SHIFT) & CP_LOAD_STATE_0_STATE_BLOCK__MASK; 239 229 } 240 - #define CP_LOAD_STATE_0_NUM_UNIT__MASK 0x7fc00000 230 + #define CP_LOAD_STATE_0_NUM_UNIT__MASK 0xffc00000 241 231 #define CP_LOAD_STATE_0_NUM_UNIT__SHIFT 22 242 232 static inline uint32_t CP_LOAD_STATE_0_NUM_UNIT(uint32_t val) 243 233 { ··· 507 497 static inline uint32_t CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS(uint32_t val) 508 498 { 509 499 return ((val) << CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS__SHIFT) & CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS__MASK; 500 + } 501 + 502 + #define REG_CP_REG_TO_MEM_0 0x00000000 503 + #define CP_REG_TO_MEM_0_REG__MASK 0x0000ffff 504 + #define CP_REG_TO_MEM_0_REG__SHIFT 0 505 + static inline uint32_t CP_REG_TO_MEM_0_REG(uint32_t val) 506 + { 507 + return ((val) << CP_REG_TO_MEM_0_REG__SHIFT) & CP_REG_TO_MEM_0_REG__MASK; 508 + } 509 + #define CP_REG_TO_MEM_0_CNT__MASK 0x3ff80000 510 + #define CP_REG_TO_MEM_0_CNT__SHIFT 19 511 + static inline uint32_t CP_REG_TO_MEM_0_CNT(uint32_t val) 512 + { 513 + return ((val) << CP_REG_TO_MEM_0_CNT__SHIFT) & CP_REG_TO_MEM_0_CNT__MASK; 514 + } 515 + #define CP_REG_TO_MEM_0_64B 0x40000000 516 + #define CP_REG_TO_MEM_0_ACCUMULATE 0x80000000 517 + 518 + #define REG_CP_REG_TO_MEM_1 0x00000001 519 + #define CP_REG_TO_MEM_1_DEST__MASK 0xffffffff 520 + #define CP_REG_TO_MEM_1_DEST__SHIFT 0 521 + static inline uint32_t CP_REG_TO_MEM_1_DEST(uint32_t val) 522 + { 523 + return ((val) << CP_REG_TO_MEM_1_DEST__SHIFT) & CP_REG_TO_MEM_1_DEST__MASK; 510 524 } 511 525 512 526
+3 -2
drivers/gpu/drm/msm/dsi/dsi.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/dsi/mmss_cc.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/dsi/sfpb.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/edp/edp.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+12 -2
drivers/gpu/drm/msm/hdmi/hdmi.xml.h
··· 8 8 git clone https://github.com/freedreno/envytools.git 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 - - /local/mnt/workspace/source_trees/envytools/rnndb/../rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-08 08:20:42) 12 - - /local/mnt/workspace/source_trees/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-02-09 03:18:10) 11 + - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 + - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 + - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 + - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) 16 + - /home/robclark/src/freedreno/envytools/rnndb/dsi/dsi.xml ( 27887 bytes, from 2015-10-22 16:34:52) 17 + - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 + - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 + - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 13 22 14 23 Copyright (C) 2013-2016 by the following authors: 15 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 16 26 17 27 Permission is hereby granted, free of charge, to any person obtaining 18 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/hdmi/qfprom.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/mdp/mdp4/mdp4.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/mdp/mdp5/mdp5.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the
+3 -2
drivers/gpu/drm/msm/mdp/mdp_common.xml.h
··· 9 9 10 10 The rules-ng-ng source files this header was generated from are: 11 11 - /home/robclark/src/freedreno/envytools/rnndb/msm.xml ( 676 bytes, from 2015-05-20 20:03:14) 12 - - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1453 bytes, from 2015-05-20 20:03:07) 12 + - /home/robclark/src/freedreno/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2016-02-10 17:07:21) 13 13 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp4.xml ( 20915 bytes, from 2015-05-20 20:03:14) 14 14 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp_common.xml ( 2849 bytes, from 2015-09-18 12:07:28) 15 15 - /home/robclark/src/freedreno/envytools/rnndb/mdp/mdp5.xml ( 37194 bytes, from 2015-09-18 12:07:28) ··· 17 17 - /home/robclark/src/freedreno/envytools/rnndb/dsi/sfpb.xml ( 602 bytes, from 2015-10-22 16:35:02) 18 18 - /home/robclark/src/freedreno/envytools/rnndb/dsi/mmss_cc.xml ( 1686 bytes, from 2015-05-20 20:03:14) 19 19 - /home/robclark/src/freedreno/envytools/rnndb/hdmi/qfprom.xml ( 600 bytes, from 2015-05-20 20:03:07) 20 - - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 29154 bytes, from 2015-08-10 21:25:43) 20 + - /home/robclark/src/freedreno/envytools/rnndb/hdmi/hdmi.xml ( 41472 bytes, from 2016-01-22 18:18:18) 21 21 - /home/robclark/src/freedreno/envytools/rnndb/edp/edp.xml ( 10416 bytes, from 2015-05-20 20:03:14) 22 22 23 23 Copyright (C) 2013-2015 by the following authors: 24 24 - Rob Clark <robdclark@gmail.com> (robclark) 25 + - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin) 25 26 26 27 Permission is hereby granted, free of charge, to any person obtaining 27 28 a copy of this software and associated documentation files (the