aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Clark <robdclark@gmail.com>2018-10-04 15:10:30 -0400
committerRob Clark <robdclark@gmail.com>2018-10-07 14:40:19 -0400
commita69c5ed25d71c6342fbc6a52fb09b679456394e3 (patch)
treecbb0e760725432961a342206b90734a063defc1f
parenta2c3c0a54d4cccb35e8071a11e203c4ac06f9e4e (diff)
drm/msm: update generated headers
Signed-off-by: Rob Clark <robdclark@gmail.com>
-rw-r--r--drivers/gpu/drm/msm/adreno/a2xx.xml.h8
-rw-r--r--drivers/gpu/drm/msm/adreno/a3xx.xml.h8
-rw-r--r--drivers/gpu/drm/msm/adreno/a4xx.xml.h8
-rw-r--r--drivers/gpu/drm/msm/adreno/a5xx.xml.h8
-rw-r--r--drivers/gpu/drm/msm/adreno/a6xx.xml.h1413
-rw-r--r--drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h12
-rw-r--r--drivers/gpu/drm/msm/adreno/adreno_common.xml.h8
-rw-r--r--drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h26
8 files changed, 1149 insertions, 342 deletions
diff --git a/drivers/gpu/drm/msm/adreno/a2xx.xml.h b/drivers/gpu/drm/msm/adreno/a2xx.xml.h
index 4bff0a740c7d..12b0ba270b5e 100644
--- a/drivers/gpu/drm/msm/adreno/a2xx.xml.h
+++ b/drivers/gpu/drm/msm/adreno/a2xx.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
diff --git a/drivers/gpu/drm/msm/adreno/a3xx.xml.h b/drivers/gpu/drm/msm/adreno/a3xx.xml.h
index 645a19aef399..a89f7bb8b5cc 100644
--- a/drivers/gpu/drm/msm/adreno/a3xx.xml.h
+++ b/drivers/gpu/drm/msm/adreno/a3xx.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
diff --git a/drivers/gpu/drm/msm/adreno/a4xx.xml.h b/drivers/gpu/drm/msm/adreno/a4xx.xml.h
index 19565e87aa7b..858690f52854 100644
--- a/drivers/gpu/drm/msm/adreno/a4xx.xml.h
+++ b/drivers/gpu/drm/msm/adreno/a4xx.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
diff --git a/drivers/gpu/drm/msm/adreno/a5xx.xml.h b/drivers/gpu/drm/msm/adreno/a5xx.xml.h
index 182d37ff3794..b4944cc0e62f 100644
--- a/drivers/gpu/drm/msm/adreno/a5xx.xml.h
+++ b/drivers/gpu/drm/msm/adreno/a5xx.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
diff --git a/drivers/gpu/drm/msm/adreno/a6xx.xml.h b/drivers/gpu/drm/msm/adreno/a6xx.xml.h
index d6bb8c407be4..a6f7c40454a6 100644
--- a/drivers/gpu/drm/msm/adreno/a6xx.xml.h
+++ b/drivers/gpu/drm/msm/adreno/a6xx.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
@@ -268,8 +268,687 @@ enum a6xx_depth_format {
268 DEPTH6_32 = 4, 268 DEPTH6_32 = 4,
269}; 269};
270 270
271enum a6xx_shader_id {
272 A6XX_TP0_TMO_DATA = 9,
273 A6XX_TP0_SMO_DATA = 10,
274 A6XX_TP0_MIPMAP_BASE_DATA = 11,
275 A6XX_TP1_TMO_DATA = 25,
276 A6XX_TP1_SMO_DATA = 26,
277 A6XX_TP1_MIPMAP_BASE_DATA = 27,
278 A6XX_SP_INST_DATA = 41,
279 A6XX_SP_LB_0_DATA = 42,
280 A6XX_SP_LB_1_DATA = 43,
281 A6XX_SP_LB_2_DATA = 44,
282 A6XX_SP_LB_3_DATA = 45,
283 A6XX_SP_LB_4_DATA = 46,
284 A6XX_SP_LB_5_DATA = 47,
285 A6XX_SP_CB_BINDLESS_DATA = 48,
286 A6XX_SP_CB_LEGACY_DATA = 49,
287 A6XX_SP_UAV_DATA = 50,
288 A6XX_SP_INST_TAG = 51,
289 A6XX_SP_CB_BINDLESS_TAG = 52,
290 A6XX_SP_TMO_UMO_TAG = 53,
291 A6XX_SP_SMO_TAG = 54,
292 A6XX_SP_STATE_DATA = 55,
293 A6XX_HLSQ_CHUNK_CVS_RAM = 73,
294 A6XX_HLSQ_CHUNK_CPS_RAM = 74,
295 A6XX_HLSQ_CHUNK_CVS_RAM_TAG = 75,
296 A6XX_HLSQ_CHUNK_CPS_RAM_TAG = 76,
297 A6XX_HLSQ_ICB_CVS_CB_BASE_TAG = 77,
298 A6XX_HLSQ_ICB_CPS_CB_BASE_TAG = 78,
299 A6XX_HLSQ_CVS_MISC_RAM = 80,
300 A6XX_HLSQ_CPS_MISC_RAM = 81,
301 A6XX_HLSQ_INST_RAM = 82,
302 A6XX_HLSQ_GFX_CVS_CONST_RAM = 83,
303 A6XX_HLSQ_GFX_CPS_CONST_RAM = 84,
304 A6XX_HLSQ_CVS_MISC_RAM_TAG = 85,
305 A6XX_HLSQ_CPS_MISC_RAM_TAG = 86,
306 A6XX_HLSQ_INST_RAM_TAG = 87,
307 A6XX_HLSQ_GFX_CVS_CONST_RAM_TAG = 88,
308 A6XX_HLSQ_GFX_CPS_CONST_RAM_TAG = 89,
309 A6XX_HLSQ_PWR_REST_RAM = 90,
310 A6XX_HLSQ_PWR_REST_TAG = 91,
311 A6XX_HLSQ_DATAPATH_META = 96,
312 A6XX_HLSQ_FRONTEND_META = 97,
313 A6XX_HLSQ_INDIRECT_META = 98,
314 A6XX_HLSQ_BACKEND_META = 99,
315};
316
317enum a6xx_debugbus_id {
318 A6XX_DBGBUS_CP = 1,
319 A6XX_DBGBUS_RBBM = 2,
320 A6XX_DBGBUS_VBIF = 3,
321 A6XX_DBGBUS_HLSQ = 4,
322 A6XX_DBGBUS_UCHE = 5,
323 A6XX_DBGBUS_DPM = 6,
324 A6XX_DBGBUS_TESS = 7,
325 A6XX_DBGBUS_PC = 8,
326 A6XX_DBGBUS_VFDP = 9,
327 A6XX_DBGBUS_VPC = 10,
328 A6XX_DBGBUS_TSE = 11,
329 A6XX_DBGBUS_RAS = 12,
330 A6XX_DBGBUS_VSC = 13,
331 A6XX_DBGBUS_COM = 14,
332 A6XX_DBGBUS_LRZ = 16,
333 A6XX_DBGBUS_A2D = 17,
334 A6XX_DBGBUS_CCUFCHE = 18,
335 A6XX_DBGBUS_GMU_CX = 19,
336 A6XX_DBGBUS_RBP = 20,
337 A6XX_DBGBUS_DCS = 21,
338 A6XX_DBGBUS_DBGC = 22,
339 A6XX_DBGBUS_CX = 23,
340 A6XX_DBGBUS_GMU_GX = 24,
341 A6XX_DBGBUS_TPFCHE = 25,
342 A6XX_DBGBUS_GBIF_GX = 26,
343 A6XX_DBGBUS_GPC = 29,
344 A6XX_DBGBUS_LARC = 30,
345 A6XX_DBGBUS_HLSQ_SPTP = 31,
346 A6XX_DBGBUS_RB_0 = 32,
347 A6XX_DBGBUS_RB_1 = 33,
348 A6XX_DBGBUS_UCHE_WRAPPER = 36,
349 A6XX_DBGBUS_CCU_0 = 40,
350 A6XX_DBGBUS_CCU_1 = 41,
351 A6XX_DBGBUS_VFD_0 = 56,
352 A6XX_DBGBUS_VFD_1 = 57,
353 A6XX_DBGBUS_VFD_2 = 58,
354 A6XX_DBGBUS_VFD_3 = 59,
355 A6XX_DBGBUS_SP_0 = 64,
356 A6XX_DBGBUS_SP_1 = 65,
357 A6XX_DBGBUS_TPL1_0 = 72,
358 A6XX_DBGBUS_TPL1_1 = 73,
359 A6XX_DBGBUS_TPL1_2 = 74,
360 A6XX_DBGBUS_TPL1_3 = 75,
361};
362
271enum a6xx_cp_perfcounter_select { 363enum a6xx_cp_perfcounter_select {
272 PERF_CP_ALWAYS_COUNT = 0, 364 PERF_CP_ALWAYS_COUNT = 0,
365 PERF_CP_BUSY_GFX_CORE_IDLE = 1,
366 PERF_CP_BUSY_CYCLES = 2,
367 PERF_CP_NUM_PREEMPTIONS = 3,
368 PERF_CP_PREEMPTION_REACTION_DELAY = 4,
369 PERF_CP_PREEMPTION_SWITCH_OUT_TIME = 5,
370 PERF_CP_PREEMPTION_SWITCH_IN_TIME = 6,
371 PERF_CP_DEAD_DRAWS_IN_BIN_RENDER = 7,
372 PERF_CP_PREDICATED_DRAWS_KILLED = 8,
373 PERF_CP_MODE_SWITCH = 9,
374 PERF_CP_ZPASS_DONE = 10,
375 PERF_CP_CONTEXT_DONE = 11,
376 PERF_CP_CACHE_FLUSH = 12,
377 PERF_CP_LONG_PREEMPTIONS = 13,
378 PERF_CP_SQE_I_CACHE_STARVE = 14,
379 PERF_CP_SQE_IDLE = 15,
380 PERF_CP_SQE_PM4_STARVE_RB_IB = 16,
381 PERF_CP_SQE_PM4_STARVE_SDS = 17,
382 PERF_CP_SQE_MRB_STARVE = 18,
383 PERF_CP_SQE_RRB_STARVE = 19,
384 PERF_CP_SQE_VSD_STARVE = 20,
385 PERF_CP_VSD_DECODE_STARVE = 21,
386 PERF_CP_SQE_PIPE_OUT_STALL = 22,
387 PERF_CP_SQE_SYNC_STALL = 23,
388 PERF_CP_SQE_PM4_WFI_STALL = 24,
389 PERF_CP_SQE_SYS_WFI_STALL = 25,
390 PERF_CP_SQE_T4_EXEC = 26,
391 PERF_CP_SQE_LOAD_STATE_EXEC = 27,
392 PERF_CP_SQE_SAVE_SDS_STATE = 28,
393 PERF_CP_SQE_DRAW_EXEC = 29,
394 PERF_CP_SQE_CTXT_REG_BUNCH_EXEC = 30,
395 PERF_CP_SQE_EXEC_PROFILED = 31,
396 PERF_CP_MEMORY_POOL_EMPTY = 32,
397 PERF_CP_MEMORY_POOL_SYNC_STALL = 33,
398 PERF_CP_MEMORY_POOL_ABOVE_THRESH = 34,
399 PERF_CP_AHB_WR_STALL_PRE_DRAWS = 35,
400 PERF_CP_AHB_STALL_SQE_GMU = 36,
401 PERF_CP_AHB_STALL_SQE_WR_OTHER = 37,
402 PERF_CP_AHB_STALL_SQE_RD_OTHER = 38,
403 PERF_CP_CLUSTER0_EMPTY = 39,
404 PERF_CP_CLUSTER1_EMPTY = 40,
405 PERF_CP_CLUSTER2_EMPTY = 41,
406 PERF_CP_CLUSTER3_EMPTY = 42,
407 PERF_CP_CLUSTER4_EMPTY = 43,
408 PERF_CP_CLUSTER5_EMPTY = 44,
409 PERF_CP_PM4_DATA = 45,
410 PERF_CP_PM4_HEADERS = 46,
411 PERF_CP_VBIF_READ_BEATS = 47,
412 PERF_CP_VBIF_WRITE_BEATS = 48,
413 PERF_CP_SQE_INSTR_COUNTER = 49,
414};
415
416enum a6xx_rbbm_perfcounter_select {
417 PERF_RBBM_ALWAYS_COUNT = 0,
418 PERF_RBBM_ALWAYS_ON = 1,
419 PERF_RBBM_TSE_BUSY = 2,
420 PERF_RBBM_RAS_BUSY = 3,
421 PERF_RBBM_PC_DCALL_BUSY = 4,
422 PERF_RBBM_PC_VSD_BUSY = 5,
423 PERF_RBBM_STATUS_MASKED = 6,
424 PERF_RBBM_COM_BUSY = 7,
425 PERF_RBBM_DCOM_BUSY = 8,
426 PERF_RBBM_VBIF_BUSY = 9,
427 PERF_RBBM_VSC_BUSY = 10,
428 PERF_RBBM_TESS_BUSY = 11,
429 PERF_RBBM_UCHE_BUSY = 12,
430 PERF_RBBM_HLSQ_BUSY = 13,
431};
432
433enum a6xx_pc_perfcounter_select {
434 PERF_PC_BUSY_CYCLES = 0,
435 PERF_PC_WORKING_CYCLES = 1,
436 PERF_PC_STALL_CYCLES_VFD = 2,
437 PERF_PC_STALL_CYCLES_TSE = 3,
438 PERF_PC_STALL_CYCLES_VPC = 4,
439 PERF_PC_STALL_CYCLES_UCHE = 5,
440 PERF_PC_STALL_CYCLES_TESS = 6,
441 PERF_PC_STALL_CYCLES_TSE_ONLY = 7,
442 PERF_PC_STALL_CYCLES_VPC_ONLY = 8,
443 PERF_PC_PASS1_TF_STALL_CYCLES = 9,
444 PERF_PC_STARVE_CYCLES_FOR_INDEX = 10,
445 PERF_PC_STARVE_CYCLES_FOR_TESS_FACTOR = 11,
446 PERF_PC_STARVE_CYCLES_FOR_VIZ_STREAM = 12,
447 PERF_PC_STARVE_CYCLES_FOR_POSITION = 13,
448 PERF_PC_STARVE_CYCLES_DI = 14,
449 PERF_PC_VIS_STREAMS_LOADED = 15,
450 PERF_PC_INSTANCES = 16,
451 PERF_PC_VPC_PRIMITIVES = 17,
452 PERF_PC_DEAD_PRIM = 18,
453 PERF_PC_LIVE_PRIM = 19,
454 PERF_PC_VERTEX_HITS = 20,
455 PERF_PC_IA_VERTICES = 21,
456 PERF_PC_IA_PRIMITIVES = 22,
457 PERF_PC_GS_PRIMITIVES = 23,
458 PERF_PC_HS_INVOCATIONS = 24,
459 PERF_PC_DS_INVOCATIONS = 25,
460 PERF_PC_VS_INVOCATIONS = 26,
461 PERF_PC_GS_INVOCATIONS = 27,
462 PERF_PC_DS_PRIMITIVES = 28,
463 PERF_PC_VPC_POS_DATA_TRANSACTION = 29,
464 PERF_PC_3D_DRAWCALLS = 30,
465 PERF_PC_2D_DRAWCALLS = 31,
466 PERF_PC_NON_DRAWCALL_GLOBAL_EVENTS = 32,
467 PERF_TESS_BUSY_CYCLES = 33,
468 PERF_TESS_WORKING_CYCLES = 34,
469 PERF_TESS_STALL_CYCLES_PC = 35,
470 PERF_TESS_STARVE_CYCLES_PC = 36,
471 PERF_PC_TSE_TRANSACTION = 37,
472 PERF_PC_TSE_VERTEX = 38,
473 PERF_PC_TESS_PC_UV_TRANS = 39,
474 PERF_PC_TESS_PC_UV_PATCHES = 40,
475 PERF_PC_TESS_FACTOR_TRANS = 41,
476};
477
478enum a6xx_vfd_perfcounter_select {
479 PERF_VFD_BUSY_CYCLES = 0,
480 PERF_VFD_STALL_CYCLES_UCHE = 1,
481 PERF_VFD_STALL_CYCLES_VPC_ALLOC = 2,
482 PERF_VFD_STALL_CYCLES_SP_INFO = 3,
483 PERF_VFD_STALL_CYCLES_SP_ATTR = 4,
484 PERF_VFD_STARVE_CYCLES_UCHE = 5,
485 PERF_VFD_RBUFFER_FULL = 6,
486 PERF_VFD_ATTR_INFO_FIFO_FULL = 7,
487 PERF_VFD_DECODED_ATTRIBUTE_BYTES = 8,
488 PERF_VFD_NUM_ATTRIBUTES = 9,
489 PERF_VFD_UPPER_SHADER_FIBERS = 10,
490 PERF_VFD_LOWER_SHADER_FIBERS = 11,
491 PERF_VFD_MODE_0_FIBERS = 12,
492 PERF_VFD_MODE_1_FIBERS = 13,
493 PERF_VFD_MODE_2_FIBERS = 14,
494 PERF_VFD_MODE_3_FIBERS = 15,
495 PERF_VFD_MODE_4_FIBERS = 16,
496 PERF_VFD_TOTAL_VERTICES = 17,
497 PERF_VFDP_STALL_CYCLES_VFD = 18,
498 PERF_VFDP_STALL_CYCLES_VFD_INDEX = 19,
499 PERF_VFDP_STALL_CYCLES_VFD_PROG = 20,
500 PERF_VFDP_STARVE_CYCLES_PC = 21,
501 PERF_VFDP_VS_STAGE_WAVES = 22,
502};
503
504enum a6xx_hslq_perfcounter_select {
505 PERF_HLSQ_BUSY_CYCLES = 0,
506 PERF_HLSQ_STALL_CYCLES_UCHE = 1,
507 PERF_HLSQ_STALL_CYCLES_SP_STATE = 2,
508 PERF_HLSQ_STALL_CYCLES_SP_FS_STAGE = 3,
509 PERF_HLSQ_UCHE_LATENCY_CYCLES = 4,
510 PERF_HLSQ_UCHE_LATENCY_COUNT = 5,
511 PERF_HLSQ_FS_STAGE_1X_WAVES = 6,
512 PERF_HLSQ_FS_STAGE_2X_WAVES = 7,
513 PERF_HLSQ_QUADS = 8,
514 PERF_HLSQ_CS_INVOCATIONS = 9,
515 PERF_HLSQ_COMPUTE_DRAWCALLS = 10,
516 PERF_HLSQ_FS_DATA_WAIT_PROGRAMMING = 11,
517 PERF_HLSQ_DUAL_FS_PROG_ACTIVE = 12,
518 PERF_HLSQ_DUAL_VS_PROG_ACTIVE = 13,
519 PERF_HLSQ_FS_BATCH_COUNT_ZERO = 14,
520 PERF_HLSQ_VS_BATCH_COUNT_ZERO = 15,
521 PERF_HLSQ_WAVE_PENDING_NO_QUAD = 16,
522 PERF_HLSQ_WAVE_PENDING_NO_PRIM_BASE = 17,
523 PERF_HLSQ_STALL_CYCLES_VPC = 18,
524 PERF_HLSQ_PIXELS = 19,
525 PERF_HLSQ_DRAW_MODE_SWITCH_VSFS_SYNC = 20,
526};
527
528enum a6xx_vpc_perfcounter_select {
529 PERF_VPC_BUSY_CYCLES = 0,
530 PERF_VPC_WORKING_CYCLES = 1,
531 PERF_VPC_STALL_CYCLES_UCHE = 2,
532 PERF_VPC_STALL_CYCLES_VFD_WACK = 3,
533 PERF_VPC_STALL_CYCLES_HLSQ_PRIM_ALLOC = 4,
534 PERF_VPC_STALL_CYCLES_PC = 5,
535 PERF_VPC_STALL_CYCLES_SP_LM = 6,
536 PERF_VPC_STARVE_CYCLES_SP = 7,
537 PERF_VPC_STARVE_CYCLES_LRZ = 8,
538 PERF_VPC_PC_PRIMITIVES = 9,
539 PERF_VPC_SP_COMPONENTS = 10,
540 PERF_VPC_STALL_CYCLES_VPCRAM_POS = 11,
541 PERF_VPC_LRZ_ASSIGN_PRIMITIVES = 12,
542 PERF_VPC_RB_VISIBLE_PRIMITIVES = 13,
543 PERF_VPC_LM_TRANSACTION = 14,
544 PERF_VPC_STREAMOUT_TRANSACTION = 15,
545 PERF_VPC_VS_BUSY_CYCLES = 16,
546 PERF_VPC_PS_BUSY_CYCLES = 17,
547 PERF_VPC_VS_WORKING_CYCLES = 18,
548 PERF_VPC_PS_WORKING_CYCLES = 19,
549 PERF_VPC_STARVE_CYCLES_RB = 20,
550 PERF_VPC_NUM_VPCRAM_READ_POS = 21,
551 PERF_VPC_WIT_FULL_CYCLES = 22,
552 PERF_VPC_VPCRAM_FULL_CYCLES = 23,
553 PERF_VPC_LM_FULL_WAIT_FOR_INTP_END = 24,
554 PERF_VPC_NUM_VPCRAM_WRITE = 25,
555 PERF_VPC_NUM_VPCRAM_READ_SO = 26,
556 PERF_VPC_NUM_ATTR_REQ_LM = 27,
557};
558
559enum a6xx_tse_perfcounter_select {
560 PERF_TSE_BUSY_CYCLES = 0,
561 PERF_TSE_CLIPPING_CYCLES = 1,
562 PERF_TSE_STALL_CYCLES_RAS = 2,
563 PERF_TSE_STALL_CYCLES_LRZ_BARYPLANE = 3,
564 PERF_TSE_STALL_CYCLES_LRZ_ZPLANE = 4,
565 PERF_TSE_STARVE_CYCLES_PC = 5,
566 PERF_TSE_INPUT_PRIM = 6,
567 PERF_TSE_INPUT_NULL_PRIM = 7,
568 PERF_TSE_TRIVAL_REJ_PRIM = 8,
569 PERF_TSE_CLIPPED_PRIM = 9,
570 PERF_TSE_ZERO_AREA_PRIM = 10,
571 PERF_TSE_FACENESS_CULLED_PRIM = 11,
572 PERF_TSE_ZERO_PIXEL_PRIM = 12,
573 PERF_TSE_OUTPUT_NULL_PRIM = 13,
574 PERF_TSE_OUTPUT_VISIBLE_PRIM = 14,
575 PERF_TSE_CINVOCATION = 15,
576 PERF_TSE_CPRIMITIVES = 16,
577 PERF_TSE_2D_INPUT_PRIM = 17,
578 PERF_TSE_2D_ALIVE_CYCLES = 18,
579 PERF_TSE_CLIP_PLANES = 19,
580};
581
582enum a6xx_ras_perfcounter_select {
583 PERF_RAS_BUSY_CYCLES = 0,
584 PERF_RAS_SUPERTILE_ACTIVE_CYCLES = 1,
585 PERF_RAS_STALL_CYCLES_LRZ = 2,
586 PERF_RAS_STARVE_CYCLES_TSE = 3,
587 PERF_RAS_SUPER_TILES = 4,
588 PERF_RAS_8X4_TILES = 5,
589 PERF_RAS_MASKGEN_ACTIVE = 6,
590 PERF_RAS_FULLY_COVERED_SUPER_TILES = 7,
591 PERF_RAS_FULLY_COVERED_8X4_TILES = 8,
592 PERF_RAS_PRIM_KILLED_INVISILBE = 9,
593 PERF_RAS_SUPERTILE_GEN_ACTIVE_CYCLES = 10,
594 PERF_RAS_LRZ_INTF_WORKING_CYCLES = 11,
595 PERF_RAS_BLOCKS = 12,
596};
597
598enum a6xx_uche_perfcounter_select {
599 PERF_UCHE_BUSY_CYCLES = 0,
600 PERF_UCHE_STALL_CYCLES_ARBITER = 1,
601 PERF_UCHE_VBIF_LATENCY_CYCLES = 2,
602 PERF_UCHE_VBIF_LATENCY_SAMPLES = 3,
603 PERF_UCHE_VBIF_READ_BEATS_TP = 4,
604 PERF_UCHE_VBIF_READ_BEATS_VFD = 5,
605 PERF_UCHE_VBIF_READ_BEATS_HLSQ = 6,
606 PERF_UCHE_VBIF_READ_BEATS_LRZ = 7,
607 PERF_UCHE_VBIF_READ_BEATS_SP = 8,
608 PERF_UCHE_READ_REQUESTS_TP = 9,
609 PERF_UCHE_READ_REQUESTS_VFD = 10,
610 PERF_UCHE_READ_REQUESTS_HLSQ = 11,
611 PERF_UCHE_READ_REQUESTS_LRZ = 12,
612 PERF_UCHE_READ_REQUESTS_SP = 13,
613 PERF_UCHE_WRITE_REQUESTS_LRZ = 14,
614 PERF_UCHE_WRITE_REQUESTS_SP = 15,
615 PERF_UCHE_WRITE_REQUESTS_VPC = 16,
616 PERF_UCHE_WRITE_REQUESTS_VSC = 17,
617 PERF_UCHE_EVICTS = 18,
618 PERF_UCHE_BANK_REQ0 = 19,
619 PERF_UCHE_BANK_REQ1 = 20,
620 PERF_UCHE_BANK_REQ2 = 21,
621 PERF_UCHE_BANK_REQ3 = 22,
622 PERF_UCHE_BANK_REQ4 = 23,
623 PERF_UCHE_BANK_REQ5 = 24,
624 PERF_UCHE_BANK_REQ6 = 25,
625 PERF_UCHE_BANK_REQ7 = 26,
626 PERF_UCHE_VBIF_READ_BEATS_CH0 = 27,
627 PERF_UCHE_VBIF_READ_BEATS_CH1 = 28,
628 PERF_UCHE_GMEM_READ_BEATS = 29,
629 PERF_UCHE_TPH_REF_FULL = 30,
630 PERF_UCHE_TPH_VICTIM_FULL = 31,
631 PERF_UCHE_TPH_EXT_FULL = 32,
632 PERF_UCHE_VBIF_STALL_WRITE_DATA = 33,
633 PERF_UCHE_DCMP_LATENCY_SAMPLES = 34,
634 PERF_UCHE_DCMP_LATENCY_CYCLES = 35,
635 PERF_UCHE_VBIF_READ_BEATS_PC = 36,
636 PERF_UCHE_READ_REQUESTS_PC = 37,
637 PERF_UCHE_RAM_READ_REQ = 38,
638 PERF_UCHE_RAM_WRITE_REQ = 39,
639};
640
641enum a6xx_tp_perfcounter_select {
642 PERF_TP_BUSY_CYCLES = 0,
643 PERF_TP_STALL_CYCLES_UCHE = 1,
644 PERF_TP_LATENCY_CYCLES = 2,
645 PERF_TP_LATENCY_TRANS = 3,
646 PERF_TP_FLAG_CACHE_REQUEST_SAMPLES = 4,
647 PERF_TP_FLAG_CACHE_REQUEST_LATENCY = 5,
648 PERF_TP_L1_CACHELINE_REQUESTS = 6,
649 PERF_TP_L1_CACHELINE_MISSES = 7,
650 PERF_TP_SP_TP_TRANS = 8,
651 PERF_TP_TP_SP_TRANS = 9,
652 PERF_TP_OUTPUT_PIXELS = 10,
653 PERF_TP_FILTER_WORKLOAD_16BIT = 11,
654 PERF_TP_FILTER_WORKLOAD_32BIT = 12,
655 PERF_TP_QUADS_RECEIVED = 13,
656 PERF_TP_QUADS_OFFSET = 14,
657 PERF_TP_QUADS_SHADOW = 15,
658 PERF_TP_QUADS_ARRAY = 16,
659 PERF_TP_QUADS_GRADIENT = 17,
660 PERF_TP_QUADS_1D = 18,
661 PERF_TP_QUADS_2D = 19,
662 PERF_TP_QUADS_BUFFER = 20,
663 PERF_TP_QUADS_3D = 21,
664 PERF_TP_QUADS_CUBE = 22,
665 PERF_TP_DIVERGENT_QUADS_RECEIVED = 23,
666 PERF_TP_PRT_NON_RESIDENT_EVENTS = 24,
667 PERF_TP_OUTPUT_PIXELS_POINT = 25,
668 PERF_TP_OUTPUT_PIXELS_BILINEAR = 26,
669 PERF_TP_OUTPUT_PIXELS_MIP = 27,
670 PERF_TP_OUTPUT_PIXELS_ANISO = 28,
671 PERF_TP_OUTPUT_PIXELS_ZERO_LOD = 29,
672 PERF_TP_FLAG_CACHE_REQUESTS = 30,
673 PERF_TP_FLAG_CACHE_MISSES = 31,
674 PERF_TP_L1_5_L2_REQUESTS = 32,
675 PERF_TP_2D_OUTPUT_PIXELS = 33,
676 PERF_TP_2D_OUTPUT_PIXELS_POINT = 34,
677 PERF_TP_2D_OUTPUT_PIXELS_BILINEAR = 35,
678 PERF_TP_2D_FILTER_WORKLOAD_16BIT = 36,
679 PERF_TP_2D_FILTER_WORKLOAD_32BIT = 37,
680 PERF_TP_TPA2TPC_TRANS = 38,
681 PERF_TP_L1_MISSES_ASTC_1TILE = 39,
682 PERF_TP_L1_MISSES_ASTC_2TILE = 40,
683 PERF_TP_L1_MISSES_ASTC_4TILE = 41,
684 PERF_TP_L1_5_L2_COMPRESS_REQS = 42,
685 PERF_TP_L1_5_L2_COMPRESS_MISS = 43,
686 PERF_TP_L1_BANK_CONFLICT = 44,
687 PERF_TP_L1_5_MISS_LATENCY_CYCLES = 45,
688 PERF_TP_L1_5_MISS_LATENCY_TRANS = 46,
689 PERF_TP_QUADS_CONSTANT_MULTIPLIED = 47,
690 PERF_TP_FRONTEND_WORKING_CYCLES = 48,
691 PERF_TP_L1_TAG_WORKING_CYCLES = 49,
692 PERF_TP_L1_DATA_WRITE_WORKING_CYCLES = 50,
693 PERF_TP_PRE_L1_DECOM_WORKING_CYCLES = 51,
694 PERF_TP_BACKEND_WORKING_CYCLES = 52,
695 PERF_TP_FLAG_CACHE_WORKING_CYCLES = 53,
696 PERF_TP_L1_5_CACHE_WORKING_CYCLES = 54,
697 PERF_TP_STARVE_CYCLES_SP = 55,
698 PERF_TP_STARVE_CYCLES_UCHE = 56,
699};
700
701enum a6xx_sp_perfcounter_select {
702 PERF_SP_BUSY_CYCLES = 0,
703 PERF_SP_ALU_WORKING_CYCLES = 1,
704 PERF_SP_EFU_WORKING_CYCLES = 2,
705 PERF_SP_STALL_CYCLES_VPC = 3,
706 PERF_SP_STALL_CYCLES_TP = 4,
707 PERF_SP_STALL_CYCLES_UCHE = 5,
708 PERF_SP_STALL_CYCLES_RB = 6,
709 PERF_SP_NON_EXECUTION_CYCLES = 7,
710 PERF_SP_WAVE_CONTEXTS = 8,
711 PERF_SP_WAVE_CONTEXT_CYCLES = 9,
712 PERF_SP_FS_STAGE_WAVE_CYCLES = 10,
713 PERF_SP_FS_STAGE_WAVE_SAMPLES = 11,
714 PERF_SP_VS_STAGE_WAVE_CYCLES = 12,
715 PERF_SP_VS_STAGE_WAVE_SAMPLES = 13,
716 PERF_SP_FS_STAGE_DURATION_CYCLES = 14,
717 PERF_SP_VS_STAGE_DURATION_CYCLES = 15,
718 PERF_SP_WAVE_CTRL_CYCLES = 16,
719 PERF_SP_WAVE_LOAD_CYCLES = 17,
720 PERF_SP_WAVE_EMIT_CYCLES = 18,
721 PERF_SP_WAVE_NOP_CYCLES = 19,
722 PERF_SP_WAVE_WAIT_CYCLES = 20,
723 PERF_SP_WAVE_FETCH_CYCLES = 21,
724 PERF_SP_WAVE_IDLE_CYCLES = 22,
725 PERF_SP_WAVE_END_CYCLES = 23,
726 PERF_SP_WAVE_LONG_SYNC_CYCLES = 24,
727 PERF_SP_WAVE_SHORT_SYNC_CYCLES = 25,
728 PERF_SP_WAVE_JOIN_CYCLES = 26,
729 PERF_SP_LM_LOAD_INSTRUCTIONS = 27,
730 PERF_SP_LM_STORE_INSTRUCTIONS = 28,
731 PERF_SP_LM_ATOMICS = 29,
732 PERF_SP_GM_LOAD_INSTRUCTIONS = 30,
733 PERF_SP_GM_STORE_INSTRUCTIONS = 31,
734 PERF_SP_GM_ATOMICS = 32,
735 PERF_SP_VS_STAGE_TEX_INSTRUCTIONS = 33,
736 PERF_SP_VS_STAGE_EFU_INSTRUCTIONS = 34,
737 PERF_SP_VS_STAGE_FULL_ALU_INSTRUCTIONS = 35,
738 PERF_SP_VS_STAGE_HALF_ALU_INSTRUCTIONS = 36,
739 PERF_SP_FS_STAGE_TEX_INSTRUCTIONS = 37,
740 PERF_SP_FS_STAGE_CFLOW_INSTRUCTIONS = 38,
741 PERF_SP_FS_STAGE_EFU_INSTRUCTIONS = 39,
742 PERF_SP_FS_STAGE_FULL_ALU_INSTRUCTIONS = 40,
743 PERF_SP_FS_STAGE_HALF_ALU_INSTRUCTIONS = 41,
744 PERF_SP_FS_STAGE_BARY_INSTRUCTIONS = 42,
745 PERF_SP_VS_INSTRUCTIONS = 43,
746 PERF_SP_FS_INSTRUCTIONS = 44,
747 PERF_SP_ADDR_LOCK_COUNT = 45,
748 PERF_SP_UCHE_READ_TRANS = 46,
749 PERF_SP_UCHE_WRITE_TRANS = 47,
750 PERF_SP_EXPORT_VPC_TRANS = 48,
751 PERF_SP_EXPORT_RB_TRANS = 49,
752 PERF_SP_PIXELS_KILLED = 50,
753 PERF_SP_ICL1_REQUESTS = 51,
754 PERF_SP_ICL1_MISSES = 52,
755 PERF_SP_HS_INSTRUCTIONS = 53,
756 PERF_SP_DS_INSTRUCTIONS = 54,
757 PERF_SP_GS_INSTRUCTIONS = 55,
758 PERF_SP_CS_INSTRUCTIONS = 56,
759 PERF_SP_GPR_READ = 57,
760 PERF_SP_GPR_WRITE = 58,
761 PERF_SP_FS_STAGE_HALF_EFU_INSTRUCTIONS = 59,
762 PERF_SP_VS_STAGE_HALF_EFU_INSTRUCTIONS = 60,
763 PERF_SP_LM_BANK_CONFLICTS = 61,
764 PERF_SP_TEX_CONTROL_WORKING_CYCLES = 62,
765 PERF_SP_LOAD_CONTROL_WORKING_CYCLES = 63,
766 PERF_SP_FLOW_CONTROL_WORKING_CYCLES = 64,
767 PERF_SP_LM_WORKING_CYCLES = 65,
768 PERF_SP_DISPATCHER_WORKING_CYCLES = 66,
769 PERF_SP_SEQUENCER_WORKING_CYCLES = 67,
770 PERF_SP_LOW_EFFICIENCY_STARVED_BY_TP = 68,
771 PERF_SP_STARVE_CYCLES_HLSQ = 69,
772 PERF_SP_NON_EXECUTION_LS_CYCLES = 70,
773 PERF_SP_WORKING_EU = 71,
774 PERF_SP_ANY_EU_WORKING = 72,
775 PERF_SP_WORKING_EU_FS_STAGE = 73,
776 PERF_SP_ANY_EU_WORKING_FS_STAGE = 74,
777 PERF_SP_WORKING_EU_VS_STAGE = 75,
778 PERF_SP_ANY_EU_WORKING_VS_STAGE = 76,
779 PERF_SP_WORKING_EU_CS_STAGE = 77,
780 PERF_SP_ANY_EU_WORKING_CS_STAGE = 78,
781 PERF_SP_GPR_READ_PREFETCH = 79,
782 PERF_SP_GPR_READ_CONFLICT = 80,
783 PERF_SP_GPR_WRITE_CONFLICT = 81,
784 PERF_SP_GM_LOAD_LATENCY_CYCLES = 82,
785 PERF_SP_GM_LOAD_LATENCY_SAMPLES = 83,
786 PERF_SP_EXECUTABLE_WAVES = 84,
787};
788
789enum a6xx_rb_perfcounter_select {
790 PERF_RB_BUSY_CYCLES = 0,
791 PERF_RB_STALL_CYCLES_HLSQ = 1,
792 PERF_RB_STALL_CYCLES_FIFO0_FULL = 2,
793 PERF_RB_STALL_CYCLES_FIFO1_FULL = 3,
794 PERF_RB_STALL_CYCLES_FIFO2_FULL = 4,
795 PERF_RB_STARVE_CYCLES_SP = 5,
796 PERF_RB_STARVE_CYCLES_LRZ_TILE = 6,
797 PERF_RB_STARVE_CYCLES_CCU = 7,
798 PERF_RB_STARVE_CYCLES_Z_PLANE = 8,
799 PERF_RB_STARVE_CYCLES_BARY_PLANE = 9,
800 PERF_RB_Z_WORKLOAD = 10,
801 PERF_RB_HLSQ_ACTIVE = 11,
802 PERF_RB_Z_READ = 12,
803 PERF_RB_Z_WRITE = 13,
804 PERF_RB_C_READ = 14,
805 PERF_RB_C_WRITE = 15,
806 PERF_RB_TOTAL_PASS = 16,
807 PERF_RB_Z_PASS = 17,
808 PERF_RB_Z_FAIL = 18,
809 PERF_RB_S_FAIL = 19,
810 PERF_RB_BLENDED_FXP_COMPONENTS = 20,
811 PERF_RB_BLENDED_FP16_COMPONENTS = 21,
812 PERF_RB_PS_INVOCATIONS = 22,
813 PERF_RB_2D_ALIVE_CYCLES = 23,
814 PERF_RB_2D_STALL_CYCLES_A2D = 24,
815 PERF_RB_2D_STARVE_CYCLES_SRC = 25,
816 PERF_RB_2D_STARVE_CYCLES_SP = 26,
817 PERF_RB_2D_STARVE_CYCLES_DST = 27,
818 PERF_RB_2D_VALID_PIXELS = 28,
819 PERF_RB_3D_PIXELS = 29,
820 PERF_RB_BLENDER_WORKING_CYCLES = 30,
821 PERF_RB_ZPROC_WORKING_CYCLES = 31,
822 PERF_RB_CPROC_WORKING_CYCLES = 32,
823 PERF_RB_SAMPLER_WORKING_CYCLES = 33,
824 PERF_RB_STALL_CYCLES_CCU_COLOR_READ = 34,
825 PERF_RB_STALL_CYCLES_CCU_COLOR_WRITE = 35,
826 PERF_RB_STALL_CYCLES_CCU_DEPTH_READ = 36,
827 PERF_RB_STALL_CYCLES_CCU_DEPTH_WRITE = 37,
828 PERF_RB_STALL_CYCLES_VPC = 38,
829 PERF_RB_2D_INPUT_TRANS = 39,
830 PERF_RB_2D_OUTPUT_RB_DST_TRANS = 40,
831 PERF_RB_2D_OUTPUT_RB_SRC_TRANS = 41,
832 PERF_RB_BLENDED_FP32_COMPONENTS = 42,
833 PERF_RB_COLOR_PIX_TILES = 43,
834 PERF_RB_STALL_CYCLES_CCU = 44,
835 PERF_RB_EARLY_Z_ARB3_GRANT = 45,
836 PERF_RB_LATE_Z_ARB3_GRANT = 46,
837 PERF_RB_EARLY_Z_SKIP_GRANT = 47,
838};
839
840enum a6xx_vsc_perfcounter_select {
841 PERF_VSC_BUSY_CYCLES = 0,
842 PERF_VSC_WORKING_CYCLES = 1,
843 PERF_VSC_STALL_CYCLES_UCHE = 2,
844 PERF_VSC_EOT_NUM = 3,
845 PERF_VSC_INPUT_TILES = 4,
846};
847
848enum a6xx_ccu_perfcounter_select {
849 PERF_CCU_BUSY_CYCLES = 0,
850 PERF_CCU_STALL_CYCLES_RB_DEPTH_RETURN = 1,
851 PERF_CCU_STALL_CYCLES_RB_COLOR_RETURN = 2,
852 PERF_CCU_STARVE_CYCLES_FLAG_RETURN = 3,
853 PERF_CCU_DEPTH_BLOCKS = 4,
854 PERF_CCU_COLOR_BLOCKS = 5,
855 PERF_CCU_DEPTH_BLOCK_HIT = 6,
856 PERF_CCU_COLOR_BLOCK_HIT = 7,
857 PERF_CCU_PARTIAL_BLOCK_READ = 8,
858 PERF_CCU_GMEM_READ = 9,
859 PERF_CCU_GMEM_WRITE = 10,
860 PERF_CCU_DEPTH_READ_FLAG0_COUNT = 11,
861 PERF_CCU_DEPTH_READ_FLAG1_COUNT = 12,
862 PERF_CCU_DEPTH_READ_FLAG2_COUNT = 13,
863 PERF_CCU_DEPTH_READ_FLAG3_COUNT = 14,
864 PERF_CCU_DEPTH_READ_FLAG4_COUNT = 15,
865 PERF_CCU_DEPTH_READ_FLAG5_COUNT = 16,
866 PERF_CCU_DEPTH_READ_FLAG6_COUNT = 17,
867 PERF_CCU_DEPTH_READ_FLAG8_COUNT = 18,
868 PERF_CCU_COLOR_READ_FLAG0_COUNT = 19,
869 PERF_CCU_COLOR_READ_FLAG1_COUNT = 20,
870 PERF_CCU_COLOR_READ_FLAG2_COUNT = 21,
871 PERF_CCU_COLOR_READ_FLAG3_COUNT = 22,
872 PERF_CCU_COLOR_READ_FLAG4_COUNT = 23,
873 PERF_CCU_COLOR_READ_FLAG5_COUNT = 24,
874 PERF_CCU_COLOR_READ_FLAG6_COUNT = 25,
875 PERF_CCU_COLOR_READ_FLAG8_COUNT = 26,
876 PERF_CCU_2D_RD_REQ = 27,
877 PERF_CCU_2D_WR_REQ = 28,
878};
879
880enum a6xx_lrz_perfcounter_select {
881 PERF_LRZ_BUSY_CYCLES = 0,
882 PERF_LRZ_STARVE_CYCLES_RAS = 1,
883 PERF_LRZ_STALL_CYCLES_RB = 2,
884 PERF_LRZ_STALL_CYCLES_VSC = 3,
885 PERF_LRZ_STALL_CYCLES_VPC = 4,
886 PERF_LRZ_STALL_CYCLES_FLAG_PREFETCH = 5,
887 PERF_LRZ_STALL_CYCLES_UCHE = 6,
888 PERF_LRZ_LRZ_READ = 7,
889 PERF_LRZ_LRZ_WRITE = 8,
890 PERF_LRZ_READ_LATENCY = 9,
891 PERF_LRZ_MERGE_CACHE_UPDATING = 10,
892 PERF_LRZ_PRIM_KILLED_BY_MASKGEN = 11,
893 PERF_LRZ_PRIM_KILLED_BY_LRZ = 12,
894 PERF_LRZ_VISIBLE_PRIM_AFTER_LRZ = 13,
895 PERF_LRZ_FULL_8X8_TILES = 14,
896 PERF_LRZ_PARTIAL_8X8_TILES = 15,
897 PERF_LRZ_TILE_KILLED = 16,
898 PERF_LRZ_TOTAL_PIXEL = 17,
899 PERF_LRZ_VISIBLE_PIXEL_AFTER_LRZ = 18,
900 PERF_LRZ_FULLY_COVERED_TILES = 19,
901 PERF_LRZ_PARTIAL_COVERED_TILES = 20,
902 PERF_LRZ_FEEDBACK_ACCEPT = 21,
903 PERF_LRZ_FEEDBACK_DISCARD = 22,
904 PERF_LRZ_FEEDBACK_STALL = 23,
905 PERF_LRZ_STALL_CYCLES_RB_ZPLANE = 24,
906 PERF_LRZ_STALL_CYCLES_RB_BPLANE = 25,
907 PERF_LRZ_STALL_CYCLES_VC = 26,
908 PERF_LRZ_RAS_MASK_TRANS = 27,
909};
910
911enum a6xx_cmp_perfcounter_select {
912 PERF_CMPDECMP_STALL_CYCLES_ARB = 0,
913 PERF_CMPDECMP_VBIF_LATENCY_CYCLES = 1,
914 PERF_CMPDECMP_VBIF_LATENCY_SAMPLES = 2,
915 PERF_CMPDECMP_VBIF_READ_DATA_CCU = 3,
916 PERF_CMPDECMP_VBIF_WRITE_DATA_CCU = 4,
917 PERF_CMPDECMP_VBIF_READ_REQUEST = 5,
918 PERF_CMPDECMP_VBIF_WRITE_REQUEST = 6,
919 PERF_CMPDECMP_VBIF_READ_DATA = 7,
920 PERF_CMPDECMP_VBIF_WRITE_DATA = 8,
921 PERF_CMPDECMP_FLAG_FETCH_CYCLES = 9,
922 PERF_CMPDECMP_FLAG_FETCH_SAMPLES = 10,
923 PERF_CMPDECMP_DEPTH_WRITE_FLAG1_COUNT = 11,
924 PERF_CMPDECMP_DEPTH_WRITE_FLAG2_COUNT = 12,
925 PERF_CMPDECMP_DEPTH_WRITE_FLAG3_COUNT = 13,
926 PERF_CMPDECMP_DEPTH_WRITE_FLAG4_COUNT = 14,
927 PERF_CMPDECMP_DEPTH_WRITE_FLAG5_COUNT = 15,
928 PERF_CMPDECMP_DEPTH_WRITE_FLAG6_COUNT = 16,
929 PERF_CMPDECMP_DEPTH_WRITE_FLAG8_COUNT = 17,
930 PERF_CMPDECMP_COLOR_WRITE_FLAG1_COUNT = 18,
931 PERF_CMPDECMP_COLOR_WRITE_FLAG2_COUNT = 19,
932 PERF_CMPDECMP_COLOR_WRITE_FLAG3_COUNT = 20,
933 PERF_CMPDECMP_COLOR_WRITE_FLAG4_COUNT = 21,
934 PERF_CMPDECMP_COLOR_WRITE_FLAG5_COUNT = 22,
935 PERF_CMPDECMP_COLOR_WRITE_FLAG6_COUNT = 23,
936 PERF_CMPDECMP_COLOR_WRITE_FLAG8_COUNT = 24,
937 PERF_CMPDECMP_2D_STALL_CYCLES_VBIF_REQ = 25,
938 PERF_CMPDECMP_2D_STALL_CYCLES_VBIF_WR = 26,
939 PERF_CMPDECMP_2D_STALL_CYCLES_VBIF_RETURN = 27,
940 PERF_CMPDECMP_2D_RD_DATA = 28,
941 PERF_CMPDECMP_2D_WR_DATA = 29,
942 PERF_CMPDECMP_VBIF_READ_DATA_UCHE_CH0 = 30,
943 PERF_CMPDECMP_VBIF_READ_DATA_UCHE_CH1 = 31,
944 PERF_CMPDECMP_2D_OUTPUT_TRANS = 32,
945 PERF_CMPDECMP_VBIF_WRITE_DATA_UCHE = 33,
946 PERF_CMPDECMP_DEPTH_WRITE_FLAG0_COUNT = 34,
947 PERF_CMPDECMP_COLOR_WRITE_FLAG0_COUNT = 35,
948 PERF_CMPDECMP_COLOR_WRITE_FLAGALPHA_COUNT = 36,
949 PERF_CMPDECMP_2D_BUSY_CYCLES = 37,
950 PERF_CMPDECMP_2D_REORDER_STARVE_CYCLES = 38,
951 PERF_CMPDECMP_2D_PIXELS = 39,
273}; 952};
274 953
275enum a6xx_tex_filter { 954enum a6xx_tex_filter {
@@ -1765,12 +2444,39 @@ static inline uint32_t A6XX_UCHE_CLIENT_PF_PERFSEL(uint32_t val)
1765 2444
1766#define REG_A6XX_VBIF_VERSION 0x00003000 2445#define REG_A6XX_VBIF_VERSION 0x00003000
1767 2446
2447#define REG_A6XX_VBIF_CLKON 0x00003001
2448#define A6XX_VBIF_CLKON_FORCE_ON_TESTBUS 0x00000002
2449
1768#define REG_A6XX_VBIF_GATE_OFF_WRREQ_EN 0x0000302a 2450#define REG_A6XX_VBIF_GATE_OFF_WRREQ_EN 0x0000302a
1769 2451
1770#define REG_A6XX_VBIF_XIN_HALT_CTRL0 0x00003080 2452#define REG_A6XX_VBIF_XIN_HALT_CTRL0 0x00003080
1771 2453
1772#define REG_A6XX_VBIF_XIN_HALT_CTRL1 0x00003081 2454#define REG_A6XX_VBIF_XIN_HALT_CTRL1 0x00003081
1773 2455
2456#define REG_A6XX_VBIF_TEST_BUS_OUT_CTRL 0x00003084
2457
2458#define REG_A6XX_VBIF_TEST_BUS1_CTRL0 0x00003085
2459
2460#define REG_A6XX_VBIF_TEST_BUS1_CTRL1 0x00003086
2461#define A6XX_VBIF_TEST_BUS1_CTRL1_DATA_SEL__MASK 0x0000000f
2462#define A6XX_VBIF_TEST_BUS1_CTRL1_DATA_SEL__SHIFT 0
2463static inline uint32_t A6XX_VBIF_TEST_BUS1_CTRL1_DATA_SEL(uint32_t val)
2464{
2465 return ((val) << A6XX_VBIF_TEST_BUS1_CTRL1_DATA_SEL__SHIFT) & A6XX_VBIF_TEST_BUS1_CTRL1_DATA_SEL__MASK;
2466}
2467
2468#define REG_A6XX_VBIF_TEST_BUS2_CTRL0 0x00003087
2469
2470#define REG_A6XX_VBIF_TEST_BUS2_CTRL1 0x00003088
2471#define A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL__MASK 0x000001ff
2472#define A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL__SHIFT 0
2473static inline uint32_t A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL(uint32_t val)
2474{
2475 return ((val) << A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL__SHIFT) & A6XX_VBIF_TEST_BUS2_CTRL1_DATA_SEL__MASK;
2476}
2477
2478#define REG_A6XX_VBIF_TEST_BUS_OUT 0x0000308c
2479
1774#define REG_A6XX_VBIF_PERF_CNT_SEL0 0x000030d0 2480#define REG_A6XX_VBIF_PERF_CNT_SEL0 0x000030d0
1775 2481
1776#define REG_A6XX_VBIF_PERF_CNT_SEL1 0x000030d1 2482#define REG_A6XX_VBIF_PERF_CNT_SEL1 0x000030d1
@@ -1813,313 +2519,79 @@ static inline uint32_t A6XX_UCHE_CLIENT_PF_PERFSEL(uint32_t val)
1813 2519
1814#define REG_A6XX_VBIF_PERF_PWR_CNT_HIGH2 0x0000311a 2520#define REG_A6XX_VBIF_PERF_PWR_CNT_HIGH2 0x0000311a
1815 2521
1816#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_A 0x00018400 2522#define REG_A6XX_RB_WINDOW_OFFSET2 0x000088d4
1817 2523#define A6XX_RB_WINDOW_OFFSET2_WINDOW_OFFSET_DISABLE 0x80000000
1818#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_B 0x00018401 2524#define A6XX_RB_WINDOW_OFFSET2_X__MASK 0x00007fff
1819 2525#define A6XX_RB_WINDOW_OFFSET2_X__SHIFT 0
1820#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_C 0x00018402 2526static inline uint32_t A6XX_RB_WINDOW_OFFSET2_X(uint32_t val)
1821
1822#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_D 0x00018403
1823#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_INDEX__MASK 0x000000ff
1824#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_INDEX__SHIFT 0
1825static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_INDEX(uint32_t val)
1826{
1827 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_INDEX__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_INDEX__MASK;
1828}
1829#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_BLK_SEL__MASK 0x0000ff00
1830#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_BLK_SEL__SHIFT 8
1831static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_BLK_SEL(uint32_t val)
1832{
1833 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_BLK_SEL__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_SEL_D_PING_BLK_SEL__MASK;
1834}
1835
1836#define REG_A6XX_CX_DBGC_CFG_DBGBUS_CNTLT 0x00018404
1837#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__MASK 0x0000003f
1838#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__SHIFT 0
1839static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN(uint32_t val)
1840{
1841 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__MASK;
1842}
1843#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__MASK 0x00007000
1844#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__SHIFT 12
1845static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU(uint32_t val)
1846{
1847 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__MASK;
1848}
1849#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__MASK 0xf0000000
1850#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__SHIFT 28
1851static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT(uint32_t val)
1852{
1853 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__MASK;
1854}
1855
1856#define REG_A6XX_CX_DBGC_CFG_DBGBUS_CNTLM 0x00018405
1857#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__MASK 0x0f000000
1858#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__SHIFT 24
1859static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE(uint32_t val)
1860{
1861 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__MASK;
1862}
1863
1864#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_0 0x00018408
1865
1866#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_1 0x00018409
1867
1868#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_2 0x0001840a
1869
1870#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_3 0x0001840b
1871
1872#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_0 0x0001840c
1873
1874#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_1 0x0001840d
1875
1876#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_2 0x0001840e
1877
1878#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_3 0x0001840f
1879
1880#define REG_A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0 0x00018410
1881#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__MASK 0x0000000f
1882#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__SHIFT 0
1883static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0(uint32_t val)
1884{
1885 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__MASK;
1886}
1887#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__MASK 0x000000f0
1888#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__SHIFT 4
1889static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1(uint32_t val)
1890{
1891 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__MASK;
1892}
1893#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__MASK 0x00000f00
1894#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__SHIFT 8
1895static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2(uint32_t val)
1896{
1897 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__MASK;
1898}
1899#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__MASK 0x0000f000
1900#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__SHIFT 12
1901static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3(uint32_t val)
1902{
1903 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__MASK;
1904}
1905#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__MASK 0x000f0000
1906#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__SHIFT 16
1907static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4(uint32_t val)
1908{
1909 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__MASK;
1910}
1911#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__MASK 0x00f00000
1912#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__SHIFT 20
1913static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5(uint32_t val)
1914{
1915 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__MASK;
1916}
1917#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__MASK 0x0f000000
1918#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__SHIFT 24
1919static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6(uint32_t val)
1920{
1921 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__MASK;
1922}
1923#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__MASK 0xf0000000
1924#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__SHIFT 28
1925static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7(uint32_t val)
1926{
1927 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__MASK;
1928}
1929
1930#define REG_A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1 0x00018411
1931#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__MASK 0x0000000f
1932#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__SHIFT 0
1933static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8(uint32_t val)
1934{
1935 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__MASK;
1936}
1937#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__MASK 0x000000f0
1938#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__SHIFT 4
1939static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9(uint32_t val)
1940{
1941 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__MASK;
1942}
1943#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__MASK 0x00000f00
1944#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__SHIFT 8
1945static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10(uint32_t val)
1946{
1947 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__MASK;
1948}
1949#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__MASK 0x0000f000
1950#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__SHIFT 12
1951static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11(uint32_t val)
1952{
1953 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__MASK;
1954}
1955#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__MASK 0x000f0000
1956#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__SHIFT 16
1957static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12(uint32_t val)
1958{
1959 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__MASK;
1960}
1961#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__MASK 0x00f00000
1962#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__SHIFT 20
1963static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13(uint32_t val)
1964{
1965 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__MASK;
1966}
1967#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__MASK 0x0f000000
1968#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__SHIFT 24
1969static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14(uint32_t val)
1970{
1971 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__MASK;
1972}
1973#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK 0xf0000000
1974#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT 28
1975static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15(uint32_t val)
1976{
1977 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK;
1978}
1979
1980#define REG_A6XX_CX_DBGC_CFG_DBGBUS_TRACE_BUF1 0x0001842f
1981
1982#define REG_A6XX_CX_DBGC_CFG_DBGBUS_TRACE_BUF2 0x00018430
1983
1984#define REG_A6XX_PDC_GPU_ENABLE_PDC 0x00001140
1985
1986#define REG_A6XX_PDC_GPU_SEQ_START_ADDR 0x00001148
1987
1988#define REG_A6XX_PDC_GPU_TCS0_CONTROL 0x00001540
1989
1990#define REG_A6XX_PDC_GPU_TCS0_CMD_ENABLE_BANK 0x00001541
1991
1992#define REG_A6XX_PDC_GPU_TCS0_CMD_WAIT_FOR_CMPL_BANK 0x00001542
1993
1994#define REG_A6XX_PDC_GPU_TCS0_CMD0_MSGID 0x00001543
1995
1996#define REG_A6XX_PDC_GPU_TCS0_CMD0_ADDR 0x00001544
1997
1998#define REG_A6XX_PDC_GPU_TCS0_CMD0_DATA 0x00001545
1999
2000#define REG_A6XX_PDC_GPU_TCS1_CONTROL 0x00001572
2001
2002#define REG_A6XX_PDC_GPU_TCS1_CMD_ENABLE_BANK 0x00001573
2003
2004#define REG_A6XX_PDC_GPU_TCS1_CMD_WAIT_FOR_CMPL_BANK 0x00001574
2005
2006#define REG_A6XX_PDC_GPU_TCS1_CMD0_MSGID 0x00001575
2007
2008#define REG_A6XX_PDC_GPU_TCS1_CMD0_ADDR 0x00001576
2009
2010#define REG_A6XX_PDC_GPU_TCS1_CMD0_DATA 0x00001577
2011
2012#define REG_A6XX_PDC_GPU_TCS2_CONTROL 0x000015a4
2013
2014#define REG_A6XX_PDC_GPU_TCS2_CMD_ENABLE_BANK 0x000015a5
2015
2016#define REG_A6XX_PDC_GPU_TCS2_CMD_WAIT_FOR_CMPL_BANK 0x000015a6
2017
2018#define REG_A6XX_PDC_GPU_TCS2_CMD0_MSGID 0x000015a7
2019
2020#define REG_A6XX_PDC_GPU_TCS2_CMD0_ADDR 0x000015a8
2021
2022#define REG_A6XX_PDC_GPU_TCS2_CMD0_DATA 0x000015a9
2023
2024#define REG_A6XX_PDC_GPU_TCS3_CONTROL 0x000015d6
2025
2026#define REG_A6XX_PDC_GPU_TCS3_CMD_ENABLE_BANK 0x000015d7
2027
2028#define REG_A6XX_PDC_GPU_TCS3_CMD_WAIT_FOR_CMPL_BANK 0x000015d8
2029
2030#define REG_A6XX_PDC_GPU_TCS3_CMD0_MSGID 0x000015d9
2031
2032#define REG_A6XX_PDC_GPU_TCS3_CMD0_ADDR 0x000015da
2033
2034#define REG_A6XX_PDC_GPU_TCS3_CMD0_DATA 0x000015db
2035
2036#define REG_A6XX_PDC_GPU_SEQ_MEM_0 0x00000000
2037
2038#define REG_A6XX_X1_WINDOW_OFFSET 0x000088d4
2039#define A6XX_X1_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000
2040#define A6XX_X1_WINDOW_OFFSET_X__MASK 0x00007fff
2041#define A6XX_X1_WINDOW_OFFSET_X__SHIFT 0
2042static inline uint32_t A6XX_X1_WINDOW_OFFSET_X(uint32_t val)
2043{
2044 return ((val) << A6XX_X1_WINDOW_OFFSET_X__SHIFT) & A6XX_X1_WINDOW_OFFSET_X__MASK;
2045}
2046#define A6XX_X1_WINDOW_OFFSET_Y__MASK 0x7fff0000
2047#define A6XX_X1_WINDOW_OFFSET_Y__SHIFT 16
2048static inline uint32_t A6XX_X1_WINDOW_OFFSET_Y(uint32_t val)
2049{
2050 return ((val) << A6XX_X1_WINDOW_OFFSET_Y__SHIFT) & A6XX_X1_WINDOW_OFFSET_Y__MASK;
2051}
2052
2053#define REG_A6XX_X2_WINDOW_OFFSET 0x0000b4d1
2054#define A6XX_X2_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000
2055#define A6XX_X2_WINDOW_OFFSET_X__MASK 0x00007fff
2056#define A6XX_X2_WINDOW_OFFSET_X__SHIFT 0
2057static inline uint32_t A6XX_X2_WINDOW_OFFSET_X(uint32_t val)
2058{ 2527{
2059 return ((val) << A6XX_X2_WINDOW_OFFSET_X__SHIFT) & A6XX_X2_WINDOW_OFFSET_X__MASK; 2528 return ((val) << A6XX_RB_WINDOW_OFFSET2_X__SHIFT) & A6XX_RB_WINDOW_OFFSET2_X__MASK;
2060} 2529}
2061#define A6XX_X2_WINDOW_OFFSET_Y__MASK 0x7fff0000 2530#define A6XX_RB_WINDOW_OFFSET2_Y__MASK 0x7fff0000
2062#define A6XX_X2_WINDOW_OFFSET_Y__SHIFT 16 2531#define A6XX_RB_WINDOW_OFFSET2_Y__SHIFT 16
2063static inline uint32_t A6XX_X2_WINDOW_OFFSET_Y(uint32_t val) 2532static inline uint32_t A6XX_RB_WINDOW_OFFSET2_Y(uint32_t val)
2064{ 2533{
2065 return ((val) << A6XX_X2_WINDOW_OFFSET_Y__SHIFT) & A6XX_X2_WINDOW_OFFSET_Y__MASK; 2534 return ((val) << A6XX_RB_WINDOW_OFFSET2_Y__SHIFT) & A6XX_RB_WINDOW_OFFSET2_Y__MASK;
2066} 2535}
2067 2536
2068#define REG_A6XX_X3_WINDOW_OFFSET 0x0000b307 2537#define REG_A6XX_SP_WINDOW_OFFSET 0x0000b4d1
2069#define A6XX_X3_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000 2538#define A6XX_SP_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000
2070#define A6XX_X3_WINDOW_OFFSET_X__MASK 0x00007fff 2539#define A6XX_SP_WINDOW_OFFSET_X__MASK 0x00007fff
2071#define A6XX_X3_WINDOW_OFFSET_X__SHIFT 0 2540#define A6XX_SP_WINDOW_OFFSET_X__SHIFT 0
2072static inline uint32_t A6XX_X3_WINDOW_OFFSET_X(uint32_t val) 2541static inline uint32_t A6XX_SP_WINDOW_OFFSET_X(uint32_t val)
2073{ 2542{
2074 return ((val) << A6XX_X3_WINDOW_OFFSET_X__SHIFT) & A6XX_X3_WINDOW_OFFSET_X__MASK; 2543 return ((val) << A6XX_SP_WINDOW_OFFSET_X__SHIFT) & A6XX_SP_WINDOW_OFFSET_X__MASK;
2075} 2544}
2076#define A6XX_X3_WINDOW_OFFSET_Y__MASK 0x7fff0000 2545#define A6XX_SP_WINDOW_OFFSET_Y__MASK 0x7fff0000
2077#define A6XX_X3_WINDOW_OFFSET_Y__SHIFT 16 2546#define A6XX_SP_WINDOW_OFFSET_Y__SHIFT 16
2078static inline uint32_t A6XX_X3_WINDOW_OFFSET_Y(uint32_t val) 2547static inline uint32_t A6XX_SP_WINDOW_OFFSET_Y(uint32_t val)
2079{ 2548{
2080 return ((val) << A6XX_X3_WINDOW_OFFSET_Y__SHIFT) & A6XX_X3_WINDOW_OFFSET_Y__MASK; 2549 return ((val) << A6XX_SP_WINDOW_OFFSET_Y__SHIFT) & A6XX_SP_WINDOW_OFFSET_Y__MASK;
2081} 2550}
2082 2551
2083#define REG_A6XX_X1_BIN_SIZE 0x000080a1 2552#define REG_A6XX_SP_TP_WINDOW_OFFSET 0x0000b307
2084#define A6XX_X1_BIN_SIZE_WIDTH__MASK 0x000000ff 2553#define A6XX_SP_TP_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000
2085#define A6XX_X1_BIN_SIZE_WIDTH__SHIFT 0 2554#define A6XX_SP_TP_WINDOW_OFFSET_X__MASK 0x00007fff
2086static inline uint32_t A6XX_X1_BIN_SIZE_WIDTH(uint32_t val) 2555#define A6XX_SP_TP_WINDOW_OFFSET_X__SHIFT 0
2556static inline uint32_t A6XX_SP_TP_WINDOW_OFFSET_X(uint32_t val)
2087{ 2557{
2088 return ((val >> 5) << A6XX_X1_BIN_SIZE_WIDTH__SHIFT) & A6XX_X1_BIN_SIZE_WIDTH__MASK; 2558 return ((val) << A6XX_SP_TP_WINDOW_OFFSET_X__SHIFT) & A6XX_SP_TP_WINDOW_OFFSET_X__MASK;
2089} 2559}
2090#define A6XX_X1_BIN_SIZE_HEIGHT__MASK 0x0001ff00 2560#define A6XX_SP_TP_WINDOW_OFFSET_Y__MASK 0x7fff0000
2091#define A6XX_X1_BIN_SIZE_HEIGHT__SHIFT 8 2561#define A6XX_SP_TP_WINDOW_OFFSET_Y__SHIFT 16
2092static inline uint32_t A6XX_X1_BIN_SIZE_HEIGHT(uint32_t val) 2562static inline uint32_t A6XX_SP_TP_WINDOW_OFFSET_Y(uint32_t val)
2093{ 2563{
2094 return ((val >> 4) << A6XX_X1_BIN_SIZE_HEIGHT__SHIFT) & A6XX_X1_BIN_SIZE_HEIGHT__MASK; 2564 return ((val) << A6XX_SP_TP_WINDOW_OFFSET_Y__SHIFT) & A6XX_SP_TP_WINDOW_OFFSET_Y__MASK;
2095} 2565}
2096 2566
2097#define REG_A6XX_X2_BIN_SIZE 0x00008800 2567#define REG_A6XX_GRAS_BIN_CONTROL 0x000080a1
2098#define A6XX_X2_BIN_SIZE_WIDTH__MASK 0x000000ff 2568#define A6XX_GRAS_BIN_CONTROL_BINW__MASK 0x000000ff
2099#define A6XX_X2_BIN_SIZE_WIDTH__SHIFT 0 2569#define A6XX_GRAS_BIN_CONTROL_BINW__SHIFT 0
2100static inline uint32_t A6XX_X2_BIN_SIZE_WIDTH(uint32_t val) 2570static inline uint32_t A6XX_GRAS_BIN_CONTROL_BINW(uint32_t val)
2101{ 2571{
2102 return ((val >> 5) << A6XX_X2_BIN_SIZE_WIDTH__SHIFT) & A6XX_X2_BIN_SIZE_WIDTH__MASK; 2572 return ((val >> 5) << A6XX_GRAS_BIN_CONTROL_BINW__SHIFT) & A6XX_GRAS_BIN_CONTROL_BINW__MASK;
2103} 2573}
2104#define A6XX_X2_BIN_SIZE_HEIGHT__MASK 0x0001ff00 2574#define A6XX_GRAS_BIN_CONTROL_BINH__MASK 0x0001ff00
2105#define A6XX_X2_BIN_SIZE_HEIGHT__SHIFT 8 2575#define A6XX_GRAS_BIN_CONTROL_BINH__SHIFT 8
2106static inline uint32_t A6XX_X2_BIN_SIZE_HEIGHT(uint32_t val) 2576static inline uint32_t A6XX_GRAS_BIN_CONTROL_BINH(uint32_t val)
2107{ 2577{
2108 return ((val >> 4) << A6XX_X2_BIN_SIZE_HEIGHT__SHIFT) & A6XX_X2_BIN_SIZE_HEIGHT__MASK; 2578 return ((val >> 4) << A6XX_GRAS_BIN_CONTROL_BINH__SHIFT) & A6XX_GRAS_BIN_CONTROL_BINH__MASK;
2109} 2579}
2580#define A6XX_GRAS_BIN_CONTROL_BINNING_PASS 0x00040000
2581#define A6XX_GRAS_BIN_CONTROL_USE_VIZ 0x00200000
2110 2582
2111#define REG_A6XX_X3_BIN_SIZE 0x000088d3 2583#define REG_A6XX_RB_BIN_CONTROL2 0x000088d3
2112#define A6XX_X3_BIN_SIZE_WIDTH__MASK 0x000000ff 2584#define A6XX_RB_BIN_CONTROL2_BINW__MASK 0x000000ff
2113#define A6XX_X3_BIN_SIZE_WIDTH__SHIFT 0 2585#define A6XX_RB_BIN_CONTROL2_BINW__SHIFT 0
2114static inline uint32_t A6XX_X3_BIN_SIZE_WIDTH(uint32_t val) 2586static inline uint32_t A6XX_RB_BIN_CONTROL2_BINW(uint32_t val)
2115{ 2587{
2116 return ((val >> 5) << A6XX_X3_BIN_SIZE_WIDTH__SHIFT) & A6XX_X3_BIN_SIZE_WIDTH__MASK; 2588 return ((val >> 5) << A6XX_RB_BIN_CONTROL2_BINW__SHIFT) & A6XX_RB_BIN_CONTROL2_BINW__MASK;
2117} 2589}
2118#define A6XX_X3_BIN_SIZE_HEIGHT__MASK 0x0001ff00 2590#define A6XX_RB_BIN_CONTROL2_BINH__MASK 0x0001ff00
2119#define A6XX_X3_BIN_SIZE_HEIGHT__SHIFT 8 2591#define A6XX_RB_BIN_CONTROL2_BINH__SHIFT 8
2120static inline uint32_t A6XX_X3_BIN_SIZE_HEIGHT(uint32_t val) 2592static inline uint32_t A6XX_RB_BIN_CONTROL2_BINH(uint32_t val)
2121{ 2593{
2122 return ((val >> 4) << A6XX_X3_BIN_SIZE_HEIGHT__SHIFT) & A6XX_X3_BIN_SIZE_HEIGHT__MASK; 2594 return ((val >> 4) << A6XX_RB_BIN_CONTROL2_BINH__SHIFT) & A6XX_RB_BIN_CONTROL2_BINH__MASK;
2123} 2595}
2124 2596
2125#define REG_A6XX_VSC_BIN_SIZE 0x00000c02 2597#define REG_A6XX_VSC_BIN_SIZE 0x00000c02
@@ -2182,11 +2654,19 @@ static inline uint32_t A6XX_VSC_PIPE_CONFIG_REG_H(uint32_t val)
2182 return ((val) << A6XX_VSC_PIPE_CONFIG_REG_H__SHIFT) & A6XX_VSC_PIPE_CONFIG_REG_H__MASK; 2654 return ((val) << A6XX_VSC_PIPE_CONFIG_REG_H__SHIFT) & A6XX_VSC_PIPE_CONFIG_REG_H__MASK;
2183} 2655}
2184 2656
2185#define REG_A6XX_VSC_XXX_ADDRESS_LO 0x00000c30 2657#define REG_A6XX_VSC_PIPE_DATA2_ADDRESS_LO 0x00000c30
2658
2659#define REG_A6XX_VSC_PIPE_DATA2_ADDRESS_HI 0x00000c31
2186 2660
2187#define REG_A6XX_VSC_XXX_ADDRESS_HI 0x00000c31 2661#define REG_A6XX_VSC_PIPE_DATA2_PITCH 0x00000c32
2188 2662
2189#define REG_A6XX_VSC_XXX_PITCH 0x00000c32 2663#define REG_A6XX_VSC_PIPE_DATA2_ARRAY_PITCH 0x00000c33
2664#define A6XX_VSC_PIPE_DATA2_ARRAY_PITCH__MASK 0xffffffff
2665#define A6XX_VSC_PIPE_DATA2_ARRAY_PITCH__SHIFT 0
2666static inline uint32_t A6XX_VSC_PIPE_DATA2_ARRAY_PITCH(uint32_t val)
2667{
2668 return ((val >> 4) << A6XX_VSC_PIPE_DATA2_ARRAY_PITCH__SHIFT) & A6XX_VSC_PIPE_DATA2_ARRAY_PITCH__MASK;
2669}
2190 2670
2191#define REG_A6XX_VSC_PIPE_DATA_ADDRESS_LO 0x00000c34 2671#define REG_A6XX_VSC_PIPE_DATA_ADDRESS_LO 0x00000c34
2192 2672
@@ -2194,18 +2674,29 @@ static inline uint32_t A6XX_VSC_PIPE_CONFIG_REG_H(uint32_t val)
2194 2674
2195#define REG_A6XX_VSC_PIPE_DATA_PITCH 0x00000c36 2675#define REG_A6XX_VSC_PIPE_DATA_PITCH 0x00000c36
2196 2676
2677#define REG_A6XX_VSC_PIPE_DATA_ARRAY_PITCH 0x00000c37
2678#define A6XX_VSC_PIPE_DATA_ARRAY_PITCH__MASK 0xffffffff
2679#define A6XX_VSC_PIPE_DATA_ARRAY_PITCH__SHIFT 0
2680static inline uint32_t A6XX_VSC_PIPE_DATA_ARRAY_PITCH(uint32_t val)
2681{
2682 return ((val >> 4) << A6XX_VSC_PIPE_DATA_ARRAY_PITCH__SHIFT) & A6XX_VSC_PIPE_DATA_ARRAY_PITCH__MASK;
2683}
2684
2197static inline uint32_t REG_A6XX_VSC_SIZE(uint32_t i0) { return 0x00000c78 + 0x1*i0; } 2685static inline uint32_t REG_A6XX_VSC_SIZE(uint32_t i0) { return 0x00000c78 + 0x1*i0; }
2198 2686
2199static inline uint32_t REG_A6XX_VSC_SIZE_REG(uint32_t i0) { return 0x00000c78 + 0x1*i0; } 2687static inline uint32_t REG_A6XX_VSC_SIZE_REG(uint32_t i0) { return 0x00000c78 + 0x1*i0; }
2200 2688
2201#define REG_A6XX_UCHE_UNKNOWN_0E12 0x00000e12 2689#define REG_A6XX_UCHE_UNKNOWN_0E12 0x00000e12
2202 2690
2691#define REG_A6XX_GRAS_UNKNOWN_8000 0x00008000
2692
2203#define REG_A6XX_GRAS_UNKNOWN_8001 0x00008001 2693#define REG_A6XX_GRAS_UNKNOWN_8001 0x00008001
2204 2694
2205#define REG_A6XX_GRAS_UNKNOWN_8004 0x00008004 2695#define REG_A6XX_GRAS_UNKNOWN_8004 0x00008004
2206 2696
2207#define REG_A6XX_GRAS_CNTL 0x00008005 2697#define REG_A6XX_GRAS_CNTL 0x00008005
2208#define A6XX_GRAS_CNTL_VARYING 0x00000001 2698#define A6XX_GRAS_CNTL_VARYING 0x00000001
2699#define A6XX_GRAS_CNTL_UNK3 0x00000008
2209#define A6XX_GRAS_CNTL_XCOORD 0x00000040 2700#define A6XX_GRAS_CNTL_XCOORD 0x00000040
2210#define A6XX_GRAS_CNTL_YCOORD 0x00000080 2701#define A6XX_GRAS_CNTL_YCOORD 0x00000080
2211#define A6XX_GRAS_CNTL_ZCOORD 0x00000100 2702#define A6XX_GRAS_CNTL_ZCOORD 0x00000100
@@ -2308,6 +2799,9 @@ static inline uint32_t A6XX_GRAS_SU_POINT_SIZE(float val)
2308 return ((((int32_t)(val * 16.0))) << A6XX_GRAS_SU_POINT_SIZE__SHIFT) & A6XX_GRAS_SU_POINT_SIZE__MASK; 2799 return ((((int32_t)(val * 16.0))) << A6XX_GRAS_SU_POINT_SIZE__SHIFT) & A6XX_GRAS_SU_POINT_SIZE__MASK;
2309} 2800}
2310 2801
2802#define REG_A6XX_GRAS_SU_DEPTH_PLANE_CNTL 0x00008094
2803#define A6XX_GRAS_SU_DEPTH_PLANE_CNTL_FRAG_WRITES_Z 0x00000001
2804
2311#define REG_A6XX_GRAS_SU_POLY_OFFSET_SCALE 0x00008095 2805#define REG_A6XX_GRAS_SU_POLY_OFFSET_SCALE 0x00008095
2312#define A6XX_GRAS_SU_POLY_OFFSET_SCALE__MASK 0xffffffff 2806#define A6XX_GRAS_SU_POLY_OFFSET_SCALE__MASK 0xffffffff
2313#define A6XX_GRAS_SU_POLY_OFFSET_SCALE__SHIFT 0 2807#define A6XX_GRAS_SU_POLY_OFFSET_SCALE__SHIFT 0
@@ -2344,6 +2838,8 @@ static inline uint32_t A6XX_GRAS_SU_DEPTH_BUFFER_INFO_DEPTH_FORMAT(enum a6xx_dep
2344 2838
2345#define REG_A6XX_GRAS_UNKNOWN_809B 0x0000809b 2839#define REG_A6XX_GRAS_UNKNOWN_809B 0x0000809b
2346 2840
2841#define REG_A6XX_GRAS_UNKNOWN_80A0 0x000080a0
2842
2347#define REG_A6XX_GRAS_RAS_MSAA_CNTL 0x000080a2 2843#define REG_A6XX_GRAS_RAS_MSAA_CNTL 0x000080a2
2348#define A6XX_GRAS_RAS_MSAA_CNTL_SAMPLES__MASK 0x00000003 2844#define A6XX_GRAS_RAS_MSAA_CNTL_SAMPLES__MASK 0x00000003
2349#define A6XX_GRAS_RAS_MSAA_CNTL_SAMPLES__SHIFT 0 2845#define A6XX_GRAS_RAS_MSAA_CNTL_SAMPLES__SHIFT 0
@@ -2464,6 +2960,8 @@ static inline uint32_t A6XX_GRAS_SC_WINDOW_SCISSOR_BR_Y(uint32_t val)
2464#define A6XX_GRAS_LRZ_CNTL_LRZ_WRITE 0x00000002 2960#define A6XX_GRAS_LRZ_CNTL_LRZ_WRITE 0x00000002
2465#define A6XX_GRAS_LRZ_CNTL_GREATER 0x00000004 2961#define A6XX_GRAS_LRZ_CNTL_GREATER 0x00000004
2466 2962
2963#define REG_A6XX_GRAS_UNKNOWN_8101 0x00008101
2964
2467#define REG_A6XX_GRAS_2D_BLIT_INFO 0x00008102 2965#define REG_A6XX_GRAS_2D_BLIT_INFO 0x00008102
2468#define A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT__MASK 0x000000ff 2966#define A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT__MASK 0x000000ff
2469#define A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT__SHIFT 0 2967#define A6XX_GRAS_2D_BLIT_INFO_COLOR_FORMAT__SHIFT 0
@@ -2494,6 +2992,10 @@ static inline uint32_t A6XX_GRAS_LRZ_BUFFER_PITCH_ARRAY_PITCH(uint32_t val)
2494 2992
2495#define REG_A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE_HI 0x00008107 2993#define REG_A6XX_GRAS_LRZ_FAST_CLEAR_BUFFER_BASE_HI 0x00008107
2496 2994
2995#define REG_A6XX_GRAS_UNKNOWN_8109 0x00008109
2996
2997#define REG_A6XX_GRAS_UNKNOWN_8110 0x00008110
2998
2497#define REG_A6XX_GRAS_2D_BLIT_CNTL 0x00008400 2999#define REG_A6XX_GRAS_2D_BLIT_CNTL 0x00008400
2498 3000
2499#define REG_A6XX_GRAS_2D_SRC_TL_X 0x00008401 3001#define REG_A6XX_GRAS_2D_SRC_TL_X 0x00008401
@@ -2590,6 +3092,33 @@ static inline uint32_t A6XX_GRAS_RESOLVE_CNTL_2_Y(uint32_t val)
2590 3092
2591#define REG_A6XX_GRAS_UNKNOWN_8600 0x00008600 3093#define REG_A6XX_GRAS_UNKNOWN_8600 0x00008600
2592 3094
3095#define REG_A6XX_RB_BIN_CONTROL 0x00008800
3096#define A6XX_RB_BIN_CONTROL_BINW__MASK 0x000000ff
3097#define A6XX_RB_BIN_CONTROL_BINW__SHIFT 0
3098static inline uint32_t A6XX_RB_BIN_CONTROL_BINW(uint32_t val)
3099{
3100 return ((val >> 5) << A6XX_RB_BIN_CONTROL_BINW__SHIFT) & A6XX_RB_BIN_CONTROL_BINW__MASK;
3101}
3102#define A6XX_RB_BIN_CONTROL_BINH__MASK 0x0001ff00
3103#define A6XX_RB_BIN_CONTROL_BINH__SHIFT 8
3104static inline uint32_t A6XX_RB_BIN_CONTROL_BINH(uint32_t val)
3105{
3106 return ((val >> 4) << A6XX_RB_BIN_CONTROL_BINH__SHIFT) & A6XX_RB_BIN_CONTROL_BINH__MASK;
3107}
3108#define A6XX_RB_BIN_CONTROL_BINNING_PASS 0x00040000
3109#define A6XX_RB_BIN_CONTROL_USE_VIZ 0x00200000
3110
3111#define REG_A6XX_RB_RENDER_CNTL 0x00008801
3112#define A6XX_RB_RENDER_CNTL_UNK4 0x00000010
3113#define A6XX_RB_RENDER_CNTL_BINNING 0x00000080
3114#define A6XX_RB_RENDER_CNTL_FLAG_DEPTH 0x00004000
3115#define A6XX_RB_RENDER_CNTL_FLAG_MRTS__MASK 0x00ff0000
3116#define A6XX_RB_RENDER_CNTL_FLAG_MRTS__SHIFT 16
3117static inline uint32_t A6XX_RB_RENDER_CNTL_FLAG_MRTS(uint32_t val)
3118{
3119 return ((val) << A6XX_RB_RENDER_CNTL_FLAG_MRTS__SHIFT) & A6XX_RB_RENDER_CNTL_FLAG_MRTS__MASK;
3120}
3121
2593#define REG_A6XX_RB_RAS_MSAA_CNTL 0x00008802 3122#define REG_A6XX_RB_RAS_MSAA_CNTL 0x00008802
2594#define A6XX_RB_RAS_MSAA_CNTL_SAMPLES__MASK 0x00000003 3123#define A6XX_RB_RAS_MSAA_CNTL_SAMPLES__MASK 0x00000003
2595#define A6XX_RB_RAS_MSAA_CNTL_SAMPLES__SHIFT 0 3124#define A6XX_RB_RAS_MSAA_CNTL_SAMPLES__SHIFT 0
@@ -2615,6 +3144,7 @@ static inline uint32_t A6XX_RB_DEST_MSAA_CNTL_SAMPLES(enum a3xx_msaa_samples val
2615 3144
2616#define REG_A6XX_RB_RENDER_CONTROL0 0x00008809 3145#define REG_A6XX_RB_RENDER_CONTROL0 0x00008809
2617#define A6XX_RB_RENDER_CONTROL0_VARYING 0x00000001 3146#define A6XX_RB_RENDER_CONTROL0_VARYING 0x00000001
3147#define A6XX_RB_RENDER_CONTROL0_UNK3 0x00000008
2618#define A6XX_RB_RENDER_CONTROL0_XCOORD 0x00000040 3148#define A6XX_RB_RENDER_CONTROL0_XCOORD 0x00000040
2619#define A6XX_RB_RENDER_CONTROL0_YCOORD 0x00000080 3149#define A6XX_RB_RENDER_CONTROL0_YCOORD 0x00000080
2620#define A6XX_RB_RENDER_CONTROL0_ZCOORD 0x00000100 3150#define A6XX_RB_RENDER_CONTROL0_ZCOORD 0x00000100
@@ -2747,6 +3277,10 @@ static inline uint32_t A6XX_RB_DITHER_CNTL_DITHER_MODE_MRT7(enum adreno_rb_dithe
2747#define A6XX_RB_SRGB_CNTL_SRGB_MRT6 0x00000040 3277#define A6XX_RB_SRGB_CNTL_SRGB_MRT6 0x00000040
2748#define A6XX_RB_SRGB_CNTL_SRGB_MRT7 0x00000080 3278#define A6XX_RB_SRGB_CNTL_SRGB_MRT7 0x00000080
2749 3279
3280#define REG_A6XX_RB_UNKNOWN_8810 0x00008810
3281
3282#define REG_A6XX_RB_UNKNOWN_8811 0x00008811
3283
2750#define REG_A6XX_RB_UNKNOWN_8818 0x00008818 3284#define REG_A6XX_RB_UNKNOWN_8818 0x00008818
2751 3285
2752#define REG_A6XX_RB_UNKNOWN_8819 0x00008819 3286#define REG_A6XX_RB_UNKNOWN_8819 0x00008819
@@ -2837,7 +3371,6 @@ static inline uint32_t A6XX_RB_MRT_BUF_INFO_COLOR_SWAP(enum a3xx_color_swap val)
2837{ 3371{
2838 return ((val) << A6XX_RB_MRT_BUF_INFO_COLOR_SWAP__SHIFT) & A6XX_RB_MRT_BUF_INFO_COLOR_SWAP__MASK; 3372 return ((val) << A6XX_RB_MRT_BUF_INFO_COLOR_SWAP__SHIFT) & A6XX_RB_MRT_BUF_INFO_COLOR_SWAP__MASK;
2839} 3373}
2840#define A6XX_RB_MRT_BUF_INFO_COLOR_SRGB 0x00008000
2841 3374
2842static inline uint32_t REG_A6XX_RB_MRT_PITCH(uint32_t i0) { return 0x00008823 + 0x8*i0; } 3375static inline uint32_t REG_A6XX_RB_MRT_PITCH(uint32_t i0) { return 0x00008823 + 0x8*i0; }
2843#define A6XX_RB_MRT_PITCH__MASK 0xffffffff 3376#define A6XX_RB_MRT_PITCH__MASK 0xffffffff
@@ -2923,6 +3456,9 @@ static inline uint32_t A6XX_RB_BLEND_CNTL_SAMPLE_MASK(uint32_t val)
2923 return ((val) << A6XX_RB_BLEND_CNTL_SAMPLE_MASK__SHIFT) & A6XX_RB_BLEND_CNTL_SAMPLE_MASK__MASK; 3456 return ((val) << A6XX_RB_BLEND_CNTL_SAMPLE_MASK__SHIFT) & A6XX_RB_BLEND_CNTL_SAMPLE_MASK__MASK;
2924} 3457}
2925 3458
3459#define REG_A6XX_RB_DEPTH_PLANE_CNTL 0x00008870
3460#define A6XX_RB_DEPTH_PLANE_CNTL_FRAG_WRITES_Z 0x00000001
3461
2926#define REG_A6XX_RB_DEPTH_CNTL 0x00008871 3462#define REG_A6XX_RB_DEPTH_CNTL 0x00008871
2927#define A6XX_RB_DEPTH_CNTL_Z_ENABLE 0x00000001 3463#define A6XX_RB_DEPTH_CNTL_Z_ENABLE 0x00000001
2928#define A6XX_RB_DEPTH_CNTL_Z_WRITE_ENABLE 0x00000002 3464#define A6XX_RB_DEPTH_CNTL_Z_WRITE_ENABLE 0x00000002
@@ -3053,6 +3589,12 @@ static inline uint32_t A6XX_RB_STENCILREF_REF(uint32_t val)
3053{ 3589{
3054 return ((val) << A6XX_RB_STENCILREF_REF__SHIFT) & A6XX_RB_STENCILREF_REF__MASK; 3590 return ((val) << A6XX_RB_STENCILREF_REF__SHIFT) & A6XX_RB_STENCILREF_REF__MASK;
3055} 3591}
3592#define A6XX_RB_STENCILREF_BFREF__MASK 0x0000ff00
3593#define A6XX_RB_STENCILREF_BFREF__SHIFT 8
3594static inline uint32_t A6XX_RB_STENCILREF_BFREF(uint32_t val)
3595{
3596 return ((val) << A6XX_RB_STENCILREF_BFREF__SHIFT) & A6XX_RB_STENCILREF_BFREF__MASK;
3597}
3056 3598
3057#define REG_A6XX_RB_STENCILMASK 0x00008888 3599#define REG_A6XX_RB_STENCILMASK 0x00008888
3058#define A6XX_RB_STENCILMASK_MASK__MASK 0x000000ff 3600#define A6XX_RB_STENCILMASK_MASK__MASK 0x000000ff
@@ -3061,6 +3603,12 @@ static inline uint32_t A6XX_RB_STENCILMASK_MASK(uint32_t val)
3061{ 3603{
3062 return ((val) << A6XX_RB_STENCILMASK_MASK__SHIFT) & A6XX_RB_STENCILMASK_MASK__MASK; 3604 return ((val) << A6XX_RB_STENCILMASK_MASK__SHIFT) & A6XX_RB_STENCILMASK_MASK__MASK;
3063} 3605}
3606#define A6XX_RB_STENCILMASK_BFMASK__MASK 0x0000ff00
3607#define A6XX_RB_STENCILMASK_BFMASK__SHIFT 8
3608static inline uint32_t A6XX_RB_STENCILMASK_BFMASK(uint32_t val)
3609{
3610 return ((val) << A6XX_RB_STENCILMASK_BFMASK__SHIFT) & A6XX_RB_STENCILMASK_BFMASK__MASK;
3611}
3064 3612
3065#define REG_A6XX_RB_STENCILWRMASK 0x00008889 3613#define REG_A6XX_RB_STENCILWRMASK 0x00008889
3066#define A6XX_RB_STENCILWRMASK_WRMASK__MASK 0x000000ff 3614#define A6XX_RB_STENCILWRMASK_WRMASK__MASK 0x000000ff
@@ -3069,6 +3617,12 @@ static inline uint32_t A6XX_RB_STENCILWRMASK_WRMASK(uint32_t val)
3069{ 3617{
3070 return ((val) << A6XX_RB_STENCILWRMASK_WRMASK__SHIFT) & A6XX_RB_STENCILWRMASK_WRMASK__MASK; 3618 return ((val) << A6XX_RB_STENCILWRMASK_WRMASK__SHIFT) & A6XX_RB_STENCILWRMASK_WRMASK__MASK;
3071} 3619}
3620#define A6XX_RB_STENCILWRMASK_BFWRMASK__MASK 0x0000ff00
3621#define A6XX_RB_STENCILWRMASK_BFWRMASK__SHIFT 8
3622static inline uint32_t A6XX_RB_STENCILWRMASK_BFWRMASK(uint32_t val)
3623{
3624 return ((val) << A6XX_RB_STENCILWRMASK_BFWRMASK__SHIFT) & A6XX_RB_STENCILWRMASK_BFWRMASK__MASK;
3625}
3072 3626
3073#define REG_A6XX_RB_WINDOW_OFFSET 0x00008890 3627#define REG_A6XX_RB_WINDOW_OFFSET 0x00008890
3074#define A6XX_RB_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000 3628#define A6XX_RB_WINDOW_OFFSET_WINDOW_OFFSET_DISABLE 0x80000000
@@ -3177,14 +3731,14 @@ static inline uint32_t A6XX_RB_BLIT_DST_ARRAY_PITCH(uint32_t val)
3177 3731
3178#define REG_A6XX_RB_BLIT_INFO 0x000088e3 3732#define REG_A6XX_RB_BLIT_INFO 0x000088e3
3179#define A6XX_RB_BLIT_INFO_UNK0 0x00000001 3733#define A6XX_RB_BLIT_INFO_UNK0 0x00000001
3180#define A6XX_RB_BLIT_INFO_FAST_CLEAR 0x00000002 3734#define A6XX_RB_BLIT_INFO_GMEM 0x00000002
3181#define A6XX_RB_BLIT_INFO_INTEGER 0x00000004 3735#define A6XX_RB_BLIT_INFO_INTEGER 0x00000004
3182#define A6XX_RB_BLIT_INFO_UNK3 0x00000008 3736#define A6XX_RB_BLIT_INFO_DEPTH 0x00000008
3183#define A6XX_RB_BLIT_INFO_MASK__MASK 0x000000f0 3737#define A6XX_RB_BLIT_INFO_CLEAR_MASK__MASK 0x000000f0
3184#define A6XX_RB_BLIT_INFO_MASK__SHIFT 4 3738#define A6XX_RB_BLIT_INFO_CLEAR_MASK__SHIFT 4
3185static inline uint32_t A6XX_RB_BLIT_INFO_MASK(uint32_t val) 3739static inline uint32_t A6XX_RB_BLIT_INFO_CLEAR_MASK(uint32_t val)
3186{ 3740{
3187 return ((val) << A6XX_RB_BLIT_INFO_MASK__SHIFT) & A6XX_RB_BLIT_INFO_MASK__MASK; 3741 return ((val) << A6XX_RB_BLIT_INFO_CLEAR_MASK__SHIFT) & A6XX_RB_BLIT_INFO_CLEAR_MASK__MASK;
3188} 3742}
3189 3743
3190#define REG_A6XX_RB_UNKNOWN_88F0 0x000088f0 3744#define REG_A6XX_RB_UNKNOWN_88F0 0x000088f0
@@ -3274,12 +3828,16 @@ static inline uint32_t A6XX_RB_2D_DST_SIZE_PITCH(uint32_t val)
3274 3828
3275#define REG_A6XX_RB_UNKNOWN_8E01 0x00008e01 3829#define REG_A6XX_RB_UNKNOWN_8E01 0x00008e01
3276 3830
3831#define REG_A6XX_RB_UNKNOWN_8E04 0x00008e04
3832
3277#define REG_A6XX_RB_CCU_CNTL 0x00008e07 3833#define REG_A6XX_RB_CCU_CNTL 0x00008e07
3278 3834
3279#define REG_A6XX_VPC_UNKNOWN_9101 0x00009101 3835#define REG_A6XX_VPC_UNKNOWN_9101 0x00009101
3280 3836
3281#define REG_A6XX_VPC_GS_SIV_CNTL 0x00009104 3837#define REG_A6XX_VPC_GS_SIV_CNTL 0x00009104
3282 3838
3839#define REG_A6XX_VPC_UNKNOWN_9107 0x00009107
3840
3283#define REG_A6XX_VPC_UNKNOWN_9108 0x00009108 3841#define REG_A6XX_VPC_UNKNOWN_9108 0x00009108
3284 3842
3285static inline uint32_t REG_A6XX_VPC_VARYING_INTERP(uint32_t i0) { return 0x00009200 + 0x1*i0; } 3843static inline uint32_t REG_A6XX_VPC_VARYING_INTERP(uint32_t i0) { return 0x00009200 + 0x1*i0; }
@@ -3385,6 +3943,9 @@ static inline uint32_t A6XX_VPC_CNTL_0_NUMNONPOSVAR(uint32_t val)
3385#define A6XX_VPC_SO_BUF_CNTL_BUF3 0x00000200 3943#define A6XX_VPC_SO_BUF_CNTL_BUF3 0x00000200
3386#define A6XX_VPC_SO_BUF_CNTL_ENABLE 0x00008000 3944#define A6XX_VPC_SO_BUF_CNTL_ENABLE 0x00008000
3387 3945
3946#define REG_A6XX_VPC_SO_OVERRIDE 0x00009306
3947#define A6XX_VPC_SO_OVERRIDE_SO_DISABLE 0x00000001
3948
3388#define REG_A6XX_VPC_UNKNOWN_9600 0x00009600 3949#define REG_A6XX_VPC_UNKNOWN_9600 0x00009600
3389 3950
3390#define REG_A6XX_VPC_UNKNOWN_9602 0x00009602 3951#define REG_A6XX_VPC_UNKNOWN_9602 0x00009602
@@ -3397,8 +3958,14 @@ static inline uint32_t A6XX_VPC_CNTL_0_NUMNONPOSVAR(uint32_t val)
3397 3958
3398#define REG_A6XX_PC_UNKNOWN_9805 0x00009805 3959#define REG_A6XX_PC_UNKNOWN_9805 0x00009805
3399 3960
3961#define REG_A6XX_PC_UNKNOWN_9806 0x00009806
3962
3963#define REG_A6XX_PC_UNKNOWN_9980 0x00009980
3964
3400#define REG_A6XX_PC_UNKNOWN_9981 0x00009981 3965#define REG_A6XX_PC_UNKNOWN_9981 0x00009981
3401 3966
3967#define REG_A6XX_PC_UNKNOWN_9990 0x00009990
3968
3402#define REG_A6XX_PC_PRIMITIVE_CNTL_0 0x00009b00 3969#define REG_A6XX_PC_PRIMITIVE_CNTL_0 0x00009b00
3403#define A6XX_PC_PRIMITIVE_CNTL_0_PRIMITIVE_RESTART 0x00000001 3970#define A6XX_PC_PRIMITIVE_CNTL_0_PRIMITIVE_RESTART 0x00000001
3404#define A6XX_PC_PRIMITIVE_CNTL_0_PROVOKING_VTX_LAST 0x00000002 3971#define A6XX_PC_PRIMITIVE_CNTL_0_PROVOKING_VTX_LAST 0x00000002
@@ -3410,6 +3977,7 @@ static inline uint32_t A6XX_PC_PRIMITIVE_CNTL_1_STRIDE_IN_VPC(uint32_t val)
3410{ 3977{
3411 return ((val) << A6XX_PC_PRIMITIVE_CNTL_1_STRIDE_IN_VPC__SHIFT) & A6XX_PC_PRIMITIVE_CNTL_1_STRIDE_IN_VPC__MASK; 3978 return ((val) << A6XX_PC_PRIMITIVE_CNTL_1_STRIDE_IN_VPC__SHIFT) & A6XX_PC_PRIMITIVE_CNTL_1_STRIDE_IN_VPC__MASK;
3412} 3979}
3980#define A6XX_PC_PRIMITIVE_CNTL_1_PSIZE 0x00000100
3413 3981
3414#define REG_A6XX_PC_UNKNOWN_9B06 0x00009b06 3982#define REG_A6XX_PC_UNKNOWN_9B06 0x00009b06
3415 3983
@@ -3488,6 +4056,8 @@ static inline uint32_t A6XX_VFD_CONTROL_3_REGID_TESSY(uint32_t val)
3488 4056
3489#define REG_A6XX_VFD_UNKNOWN_A008 0x0000a008 4057#define REG_A6XX_VFD_UNKNOWN_A008 0x0000a008
3490 4058
4059#define REG_A6XX_VFD_UNKNOWN_A009 0x0000a009
4060
3491#define REG_A6XX_VFD_INDEX_OFFSET 0x0000a00e 4061#define REG_A6XX_VFD_INDEX_OFFSET 0x0000a00e
3492 4062
3493#define REG_A6XX_VFD_INSTANCE_START_OFFSET 0x0000a00f 4063#define REG_A6XX_VFD_INSTANCE_START_OFFSET 0x0000a00f
@@ -3640,6 +4210,8 @@ static inline uint32_t A6XX_SP_VS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
3640#define A6XX_SP_VS_CTRL_REG0_PIXLODENABLE 0x04000000 4210#define A6XX_SP_VS_CTRL_REG0_PIXLODENABLE 0x04000000
3641#define A6XX_SP_VS_CTRL_REG0_MERGEDREGS 0x80000000 4211#define A6XX_SP_VS_CTRL_REG0_MERGEDREGS 0x80000000
3642 4212
4213#define REG_A6XX_SP_UNKNOWN_A81B 0x0000a81b
4214
3643#define REG_A6XX_SP_VS_OBJ_START_LO 0x0000a81c 4215#define REG_A6XX_SP_VS_OBJ_START_LO 0x0000a81c
3644 4216
3645#define REG_A6XX_SP_VS_OBJ_START_HI 0x0000a81d 4217#define REG_A6XX_SP_VS_OBJ_START_HI 0x0000a81d
@@ -3884,6 +4456,8 @@ static inline uint32_t A6XX_SP_FS_CTRL_REG0_THREADSIZE(enum a3xx_threadsize val)
3884#define A6XX_SP_FS_CTRL_REG0_PIXLODENABLE 0x04000000 4456#define A6XX_SP_FS_CTRL_REG0_PIXLODENABLE 0x04000000
3885#define A6XX_SP_FS_CTRL_REG0_MERGEDREGS 0x80000000 4457#define A6XX_SP_FS_CTRL_REG0_MERGEDREGS 0x80000000
3886 4458
4459#define REG_A6XX_SP_UNKNOWN_A982 0x0000a982
4460
3887#define REG_A6XX_SP_FS_OBJ_START_LO 0x0000a983 4461#define REG_A6XX_SP_FS_OBJ_START_LO 0x0000a983
3888 4462
3889#define REG_A6XX_SP_FS_OBJ_START_HI 0x0000a984 4463#define REG_A6XX_SP_FS_OBJ_START_HI 0x0000a984
@@ -3979,7 +4553,8 @@ static inline uint32_t A6XX_SP_FS_MRT_REG_COLOR_FORMAT(enum a6xx_color_fmt val)
3979} 4553}
3980#define A6XX_SP_FS_MRT_REG_COLOR_SINT 0x00000100 4554#define A6XX_SP_FS_MRT_REG_COLOR_SINT 0x00000100
3981#define A6XX_SP_FS_MRT_REG_COLOR_UINT 0x00000200 4555#define A6XX_SP_FS_MRT_REG_COLOR_UINT 0x00000200
3982#define A6XX_SP_FS_MRT_REG_COLOR_SRGB 0x00000400 4556
4557#define REG_A6XX_SP_UNKNOWN_A99E 0x0000a99e
3983 4558
3984#define REG_A6XX_SP_FS_TEX_COUNT 0x0000a9a7 4559#define REG_A6XX_SP_FS_TEX_COUNT 0x0000a9a7
3985 4560
@@ -4066,14 +4641,20 @@ static inline uint32_t A6XX_SP_FS_CONFIG_NSAMP(uint32_t val)
4066 4641
4067#define REG_A6XX_SP_FS_INSTRLEN 0x0000ab05 4642#define REG_A6XX_SP_FS_INSTRLEN 0x0000ab05
4068 4643
4644#define REG_A6XX_SP_UNKNOWN_AB20 0x0000ab20
4645
4069#define REG_A6XX_SP_UNKNOWN_AE00 0x0000ae00 4646#define REG_A6XX_SP_UNKNOWN_AE00 0x0000ae00
4070 4647
4648#define REG_A6XX_SP_UNKNOWN_AE03 0x0000ae03
4649
4071#define REG_A6XX_SP_UNKNOWN_AE04 0x0000ae04 4650#define REG_A6XX_SP_UNKNOWN_AE04 0x0000ae04
4072 4651
4073#define REG_A6XX_SP_UNKNOWN_AE0F 0x0000ae0f 4652#define REG_A6XX_SP_UNKNOWN_AE0F 0x0000ae0f
4074 4653
4075#define REG_A6XX_SP_UNKNOWN_B182 0x0000b182 4654#define REG_A6XX_SP_UNKNOWN_B182 0x0000b182
4076 4655
4656#define REG_A6XX_SP_UNKNOWN_B183 0x0000b183
4657
4077#define REG_A6XX_SP_TP_RAS_MSAA_CNTL 0x0000b300 4658#define REG_A6XX_SP_TP_RAS_MSAA_CNTL 0x0000b300
4078#define A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__MASK 0x00000003 4659#define A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__MASK 0x00000003
4079#define A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__SHIFT 0 4660#define A6XX_SP_TP_RAS_MSAA_CNTL_SAMPLES__SHIFT 0
@@ -4097,6 +4678,8 @@ static inline uint32_t A6XX_SP_TP_DEST_MSAA_CNTL_SAMPLES(enum a3xx_msaa_samples
4097 4678
4098#define REG_A6XX_SP_TP_UNKNOWN_B304 0x0000b304 4679#define REG_A6XX_SP_TP_UNKNOWN_B304 0x0000b304
4099 4680
4681#define REG_A6XX_SP_TP_UNKNOWN_B309 0x0000b309
4682
4100#define REG_A6XX_SP_PS_2D_SRC_INFO 0x0000b4c0 4683#define REG_A6XX_SP_PS_2D_SRC_INFO 0x0000b4c0
4101#define A6XX_SP_PS_2D_SRC_INFO_COLOR_FORMAT__MASK 0x000000ff 4684#define A6XX_SP_PS_2D_SRC_INFO_COLOR_FORMAT__MASK 0x000000ff
4102#define A6XX_SP_PS_2D_SRC_INFO_COLOR_FORMAT__SHIFT 0 4685#define A6XX_SP_PS_2D_SRC_INFO_COLOR_FORMAT__SHIFT 0
@@ -4162,6 +4745,8 @@ static inline uint32_t A6XX_HLSQ_GS_CNTL_CONSTLEN(uint32_t val)
4162 return ((val >> 2) << A6XX_HLSQ_GS_CNTL_CONSTLEN__SHIFT) & A6XX_HLSQ_GS_CNTL_CONSTLEN__MASK; 4745 return ((val >> 2) << A6XX_HLSQ_GS_CNTL_CONSTLEN__SHIFT) & A6XX_HLSQ_GS_CNTL_CONSTLEN__MASK;
4163} 4746}
4164 4747
4748#define REG_A6XX_HLSQ_UNKNOWN_B980 0x0000b980
4749
4165#define REG_A6XX_HLSQ_CONTROL_1_REG 0x0000b982 4750#define REG_A6XX_HLSQ_CONTROL_1_REG 0x0000b982
4166 4751
4167#define REG_A6XX_HLSQ_CONTROL_2_REG 0x0000b983 4752#define REG_A6XX_HLSQ_CONTROL_2_REG 0x0000b983
@@ -4537,11 +5122,11 @@ static inline uint32_t A6XX_TEX_CONST_7_FLAG_LO(uint32_t val)
4537} 5122}
4538 5123
4539#define REG_A6XX_TEX_CONST_8 0x00000008 5124#define REG_A6XX_TEX_CONST_8 0x00000008
4540#define A6XX_TEX_CONST_8_BASE_HI__MASK 0x0001ffff 5125#define A6XX_TEX_CONST_8_FLAG_HI__MASK 0x0001ffff
4541#define A6XX_TEX_CONST_8_BASE_HI__SHIFT 0 5126#define A6XX_TEX_CONST_8_FLAG_HI__SHIFT 0
4542static inline uint32_t A6XX_TEX_CONST_8_BASE_HI(uint32_t val) 5127static inline uint32_t A6XX_TEX_CONST_8_FLAG_HI(uint32_t val)
4543{ 5128{
4544 return ((val) << A6XX_TEX_CONST_8_BASE_HI__SHIFT) & A6XX_TEX_CONST_8_BASE_HI__MASK; 5129 return ((val) << A6XX_TEX_CONST_8_FLAG_HI__SHIFT) & A6XX_TEX_CONST_8_FLAG_HI__MASK;
4545} 5130}
4546 5131
4547#define REG_A6XX_TEX_CONST_9 0x00000009 5132#define REG_A6XX_TEX_CONST_9 0x00000009
@@ -4558,5 +5143,227 @@ static inline uint32_t A6XX_TEX_CONST_8_BASE_HI(uint32_t val)
4558 5143
4559#define REG_A6XX_TEX_CONST_15 0x0000000f 5144#define REG_A6XX_TEX_CONST_15 0x0000000f
4560 5145
5146#define REG_A6XX_PDC_GPU_ENABLE_PDC 0x00001140
5147
5148#define REG_A6XX_PDC_GPU_SEQ_START_ADDR 0x00001148
5149
5150#define REG_A6XX_PDC_GPU_TCS0_CONTROL 0x00001540
5151
5152#define REG_A6XX_PDC_GPU_TCS0_CMD_ENABLE_BANK 0x00001541
5153
5154#define REG_A6XX_PDC_GPU_TCS0_CMD_WAIT_FOR_CMPL_BANK 0x00001542
5155
5156#define REG_A6XX_PDC_GPU_TCS0_CMD0_MSGID 0x00001543
5157
5158#define REG_A6XX_PDC_GPU_TCS0_CMD0_ADDR 0x00001544
5159
5160#define REG_A6XX_PDC_GPU_TCS0_CMD0_DATA 0x00001545
5161
5162#define REG_A6XX_PDC_GPU_TCS1_CONTROL 0x00001572
5163
5164#define REG_A6XX_PDC_GPU_TCS1_CMD_ENABLE_BANK 0x00001573
5165
5166#define REG_A6XX_PDC_GPU_TCS1_CMD_WAIT_FOR_CMPL_BANK 0x00001574
5167
5168#define REG_A6XX_PDC_GPU_TCS1_CMD0_MSGID 0x00001575
5169
5170#define REG_A6XX_PDC_GPU_TCS1_CMD0_ADDR 0x00001576
5171
5172#define REG_A6XX_PDC_GPU_TCS1_CMD0_DATA 0x00001577
5173
5174#define REG_A6XX_PDC_GPU_TCS2_CONTROL 0x000015a4
5175
5176#define REG_A6XX_PDC_GPU_TCS2_CMD_ENABLE_BANK 0x000015a5
5177
5178#define REG_A6XX_PDC_GPU_TCS2_CMD_WAIT_FOR_CMPL_BANK 0x000015a6
5179
5180#define REG_A6XX_PDC_GPU_TCS2_CMD0_MSGID 0x000015a7
5181
5182#define REG_A6XX_PDC_GPU_TCS2_CMD0_ADDR 0x000015a8
5183
5184#define REG_A6XX_PDC_GPU_TCS2_CMD0_DATA 0x000015a9
5185
5186#define REG_A6XX_PDC_GPU_TCS3_CONTROL 0x000015d6
5187
5188#define REG_A6XX_PDC_GPU_TCS3_CMD_ENABLE_BANK 0x000015d7
5189
5190#define REG_A6XX_PDC_GPU_TCS3_CMD_WAIT_FOR_CMPL_BANK 0x000015d8
5191
5192#define REG_A6XX_PDC_GPU_TCS3_CMD0_MSGID 0x000015d9
5193
5194#define REG_A6XX_PDC_GPU_TCS3_CMD0_ADDR 0x000015da
5195
5196#define REG_A6XX_PDC_GPU_TCS3_CMD0_DATA 0x000015db
5197
5198#define REG_A6XX_PDC_GPU_SEQ_MEM_0 0x00000000
5199
5200#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_A 0x00000000
5201#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_INDEX__MASK 0x000000ff
5202#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_INDEX__SHIFT 0
5203static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_INDEX(uint32_t val)
5204{
5205 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_INDEX__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_INDEX__MASK;
5206}
5207#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_BLK_SEL__MASK 0x0000ff00
5208#define A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_BLK_SEL__SHIFT 8
5209static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_BLK_SEL(uint32_t val)
5210{
5211 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_BLK_SEL__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_SEL_A_PING_BLK_SEL__MASK;
5212}
5213
5214#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_B 0x00000001
5215
5216#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_C 0x00000002
5217
5218#define REG_A6XX_CX_DBGC_CFG_DBGBUS_SEL_D 0x00000003
5219
5220#define REG_A6XX_CX_DBGC_CFG_DBGBUS_CNTLT 0x00000004
5221#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__MASK 0x0000003f
5222#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__SHIFT 0
5223static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN(uint32_t val)
5224{
5225 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_TRACEEN__MASK;
5226}
5227#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__MASK 0x00007000
5228#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__SHIFT 12
5229static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU(uint32_t val)
5230{
5231 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_GRANU__MASK;
5232}
5233#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__MASK 0xf0000000
5234#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__SHIFT 28
5235static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT(uint32_t val)
5236{
5237 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLT_SEGT__MASK;
5238}
5239
5240#define REG_A6XX_CX_DBGC_CFG_DBGBUS_CNTLM 0x00000005
5241#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__MASK 0x0f000000
5242#define A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__SHIFT 24
5243static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE(uint32_t val)
5244{
5245 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_CNTLM_ENABLE__MASK;
5246}
5247
5248#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_0 0x00000008
5249
5250#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_1 0x00000009
5251
5252#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_2 0x0000000a
5253
5254#define REG_A6XX_CX_DBGC_CFG_DBGBUS_IVTL_3 0x0000000b
5255
5256#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_0 0x0000000c
5257
5258#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_1 0x0000000d
5259
5260#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_2 0x0000000e
5261
5262#define REG_A6XX_CX_DBGC_CFG_DBGBUS_MASKL_3 0x0000000f
5263
5264#define REG_A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0 0x00000010
5265#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__MASK 0x0000000f
5266#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__SHIFT 0
5267static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0(uint32_t val)
5268{
5269 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL0__MASK;
5270}
5271#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__MASK 0x000000f0
5272#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__SHIFT 4
5273static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1(uint32_t val)
5274{
5275 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL1__MASK;
5276}
5277#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__MASK 0x00000f00
5278#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__SHIFT 8
5279static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2(uint32_t val)
5280{
5281 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL2__MASK;
5282}
5283#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__MASK 0x0000f000
5284#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__SHIFT 12
5285static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3(uint32_t val)
5286{
5287 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL3__MASK;
5288}
5289#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__MASK 0x000f0000
5290#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__SHIFT 16
5291static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4(uint32_t val)
5292{
5293 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL4__MASK;
5294}
5295#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__MASK 0x00f00000
5296#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__SHIFT 20
5297static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5(uint32_t val)
5298{
5299 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL5__MASK;
5300}
5301#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__MASK 0x0f000000
5302#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__SHIFT 24
5303static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6(uint32_t val)
5304{
5305 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL6__MASK;
5306}
5307#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__MASK 0xf0000000
5308#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__SHIFT 28
5309static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7(uint32_t val)
5310{
5311 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_0_BYTEL7__MASK;
5312}
5313
5314#define REG_A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1 0x00000011
5315#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__MASK 0x0000000f
5316#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__SHIFT 0
5317static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8(uint32_t val)
5318{
5319 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL8__MASK;
5320}
5321#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__MASK 0x000000f0
5322#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__SHIFT 4
5323static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9(uint32_t val)
5324{
5325 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL9__MASK;
5326}
5327#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__MASK 0x00000f00
5328#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__SHIFT 8
5329static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10(uint32_t val)
5330{
5331 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL10__MASK;
5332}
5333#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__MASK 0x0000f000
5334#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__SHIFT 12
5335static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11(uint32_t val)
5336{
5337 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL11__MASK;
5338}
5339#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__MASK 0x000f0000
5340#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__SHIFT 16
5341static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12(uint32_t val)
5342{
5343 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL12__MASK;
5344}
5345#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__MASK 0x00f00000
5346#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__SHIFT 20
5347static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13(uint32_t val)
5348{
5349 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL13__MASK;
5350}
5351#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__MASK 0x0f000000
5352#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__SHIFT 24
5353static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14(uint32_t val)
5354{
5355 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL14__MASK;
5356}
5357#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK 0xf0000000
5358#define A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT 28
5359static inline uint32_t A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15(uint32_t val)
5360{
5361 return ((val) << A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__SHIFT) & A6XX_CX_DBGC_CFG_DBGBUS_BYTEL_1_BYTEL15__MASK;
5362}
5363
5364#define REG_A6XX_CX_DBGC_CFG_DBGBUS_TRACE_BUF1 0x0000002f
5365
5366#define REG_A6XX_CX_DBGC_CFG_DBGBUS_TRACE_BUF2 0x00000030
5367
4561 5368
4562#endif /* A6XX_XML */ 5369#endif /* A6XX_XML */
diff --git a/drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h b/drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h
index ef68098d2adc..db56f263ed77 100644
--- a/drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h
+++ b/drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
@@ -167,8 +167,8 @@ static inline uint32_t A6XX_GMU_PWR_COL_INTER_FRAME_CTRL_MIN_PASS_LENGTH(uint32_
167#define REG_A6XX_GMU_SPTPRAC_PWR_CLK_STATUS 0x000050d0 167#define REG_A6XX_GMU_SPTPRAC_PWR_CLK_STATUS 0x000050d0
168#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWERING_OFF 0x00000001 168#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWERING_OFF 0x00000001
169#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWERING_ON 0x00000002 169#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWERING_ON 0x00000002
170#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_ON 0x00000004 170#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_OFF 0x00000004
171#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_OFF 0x00000008 171#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_ON 0x00000008
172#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SP_CLOCK_OFF 0x00000010 172#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SP_CLOCK_OFF 0x00000010
173#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_GMU_UP_POWER_STATE 0x00000020 173#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_GMU_UP_POWER_STATE 0x00000020
174#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_GX_HM_GDSC_POWER_OFF 0x00000040 174#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_GX_HM_GDSC_POWER_OFF 0x00000040
diff --git a/drivers/gpu/drm/msm/adreno/adreno_common.xml.h b/drivers/gpu/drm/msm/adreno/adreno_common.xml.h
index 5dace1350810..1318959d504d 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_common.xml.h
+++ b/drivers/gpu/drm/msm/adreno/adreno_common.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
diff --git a/drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h b/drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h
index 03a91e10b310..15eb03bed984 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h
+++ b/drivers/gpu/drm/msm/adreno/adreno_pm4.xml.h
@@ -12,12 +12,12 @@ The rules-ng-ng source files this header was generated from are:
12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13) 12- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2018-07-03 19:37:13)
13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13) 13- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 36805 bytes, from 2018-07-03 19:37:13)
14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13) 14- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 13634 bytes, from 2018-07-03 19:37:13)
15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42393 bytes, from 2018-08-06 18:45:45) 15- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 42585 bytes, from 2018-10-04 19:06:37)
16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13) 16- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 83840 bytes, from 2018-07-03 19:37:13)
17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13) 17- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112086 bytes, from 2018-07-03 19:37:13)
18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45) 18- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-10-04 19:06:37)
19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45) 19- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 139581 bytes, from 2018-10-04 19:06:42)
20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-07-03 19:37:13) 20- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 bytes, from 2018-09-14 13:03:07)
21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13) 21- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2018-07-03 19:37:13)
22 22
23Copyright (C) 2013-2018 by the following authors: 23Copyright (C) 2013-2018 by the following authors:
@@ -237,7 +237,7 @@ enum adreno_pm4_type3_packets {
237 CP_UNK_A6XX_14 = 20, 237 CP_UNK_A6XX_14 = 20,
238 CP_UNK_A6XX_36 = 54, 238 CP_UNK_A6XX_36 = 54,
239 CP_UNK_A6XX_55 = 85, 239 CP_UNK_A6XX_55 = 85,
240 UNK_A6XX_6D = 109, 240 CP_REG_WRITE = 109,
241}; 241};
242 242
243enum adreno_state_block { 243enum adreno_state_block {
@@ -968,19 +968,19 @@ static inline uint32_t CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI(uint32_t val)
968} 968}
969 969
970#define REG_CP_SET_BIN_DATA5_5 0x00000005 970#define REG_CP_SET_BIN_DATA5_5 0x00000005
971#define CP_SET_BIN_DATA5_5_XXX_ADDRESS_LO__MASK 0xffffffff 971#define CP_SET_BIN_DATA5_5_BIN_DATA_ADDR2_LO__MASK 0xffffffff
972#define CP_SET_BIN_DATA5_5_XXX_ADDRESS_LO__SHIFT 0 972#define CP_SET_BIN_DATA5_5_BIN_DATA_ADDR2_LO__SHIFT 0
973static inline uint32_t CP_SET_BIN_DATA5_5_XXX_ADDRESS_LO(uint32_t val) 973static inline uint32_t CP_SET_BIN_DATA5_5_BIN_DATA_ADDR2_LO(uint32_t val)
974{ 974{
975 return ((val) << CP_SET_BIN_DATA5_5_XXX_ADDRESS_LO__SHIFT) & CP_SET_BIN_DATA5_5_XXX_ADDRESS_LO__MASK; 975 return ((val) << CP_SET_BIN_DATA5_5_BIN_DATA_ADDR2_LO__SHIFT) & CP_SET_BIN_DATA5_5_BIN_DATA_ADDR2_LO__MASK;
976} 976}
977 977
978#define REG_CP_SET_BIN_DATA5_6 0x00000006 978#define REG_CP_SET_BIN_DATA5_6 0x00000006
979#define CP_SET_BIN_DATA5_6_XXX_ADDRESS_HI__MASK 0xffffffff 979#define CP_SET_BIN_DATA5_6_BIN_DATA_ADDR2_LO__MASK 0xffffffff
980#define CP_SET_BIN_DATA5_6_XXX_ADDRESS_HI__SHIFT 0 980#define CP_SET_BIN_DATA5_6_BIN_DATA_ADDR2_LO__SHIFT 0
981static inline uint32_t CP_SET_BIN_DATA5_6_XXX_ADDRESS_HI(uint32_t val) 981static inline uint32_t CP_SET_BIN_DATA5_6_BIN_DATA_ADDR2_LO(uint32_t val)
982{ 982{
983 return ((val) << CP_SET_BIN_DATA5_6_XXX_ADDRESS_HI__SHIFT) & CP_SET_BIN_DATA5_6_XXX_ADDRESS_HI__MASK; 983 return ((val) << CP_SET_BIN_DATA5_6_BIN_DATA_ADDR2_LO__SHIFT) & CP_SET_BIN_DATA5_6_BIN_DATA_ADDR2_LO__MASK;
984} 984}
985 985
986#define REG_CP_REG_TO_MEM_0 0x00000000 986#define REG_CP_REG_TO_MEM_0 0x00000000