forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-13 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e
kernel/drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h
....@@ -8,19 +8,21 @@
88 git clone https://github.com/freedreno/envytools.git
99
1010 The rules-ng-ng source files this header was generated from are:
11
-- /home/robclark/src/envytools/rnndb/adreno.xml ( 501 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)
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)
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)
18
-- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 147240 bytes, from 2018-08-06 18:45:45)
19
-- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 101627 bytes, from 2018-08-06 18:45:45)
20
-- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 10431 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)
11
+- /home/robclark/src/envytools/rnndb/adreno.xml ( 594 bytes, from 2020-07-23 21:58:14)
12
+- /home/robclark/src/envytools/rnndb/freedreno_copyright.xml ( 1572 bytes, from 2020-07-23 21:58:14)
13
+- /home/robclark/src/envytools/rnndb/adreno/a2xx.xml ( 90159 bytes, from 2020-07-23 21:58:14)
14
+- /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml ( 14386 bytes, from 2020-07-23 21:58:14)
15
+- /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml ( 65048 bytes, from 2020-07-23 21:58:14)
16
+- /home/robclark/src/envytools/rnndb/adreno/a3xx.xml ( 84226 bytes, from 2020-07-23 21:58:14)
17
+- /home/robclark/src/envytools/rnndb/adreno/a4xx.xml ( 112556 bytes, from 2020-07-23 21:58:14)
18
+- /home/robclark/src/envytools/rnndb/adreno/a5xx.xml ( 149461 bytes, from 2020-07-23 21:58:14)
19
+- /home/robclark/src/envytools/rnndb/adreno/a6xx.xml ( 184695 bytes, from 2020-07-23 21:58:14)
20
+- /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml ( 11218 bytes, from 2020-07-23 21:58:14)
21
+- /home/robclark/src/envytools/rnndb/adreno/ocmem.xml ( 1773 bytes, from 2020-07-23 21:58:14)
22
+- /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml ( 4559 bytes, from 2020-07-23 21:58:14)
23
+- /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml ( 2872 bytes, from 2020-07-23 21:58:14)
2224
23
-Copyright (C) 2013-2018 by the following authors:
25
+Copyright (C) 2013-2020 by the following authors:
2426 - Rob Clark <robdclark@gmail.com> (robclark)
2527 - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
2628
....@@ -46,24 +48,109 @@
4648 */
4749
4850
49
-#define A6XX_GMU_GPU_IDLE_STATUS_BUSY_IGN_AHB 0x00800000
50
-#define A6XX_GMU_GPU_IDLE_STATUS_CX_GX_CPU_BUSY_IGN_AHB 0x40000000
51
-#define A6XX_GMU_OOB_BOOT_SLUMBER_SET_MASK 0x00400000
52
-#define A6XX_GMU_OOB_BOOT_SLUMBER_CHECK_MASK 0x40000000
53
-#define A6XX_GMU_OOB_BOOT_SLUMBER_CLEAR_MASK 0x40000000
54
-#define A6XX_GMU_OOB_DCVS_SET_MASK 0x00800000
55
-#define A6XX_GMU_OOB_DCVS_CHECK_MASK 0x80000000
56
-#define A6XX_GMU_OOB_DCVS_CLEAR_MASK 0x80000000
57
-#define A6XX_GMU_OOB_GPU_SET_MASK 0x00040000
58
-#define A6XX_GMU_OOB_GPU_CHECK_MASK 0x04000000
59
-#define A6XX_GMU_OOB_GPU_CLEAR_MASK 0x04000000
60
-#define A6XX_GMU_OOB_PERFCNTR_SET_MASK 0x00020000
61
-#define A6XX_GMU_OOB_PERFCNTR_CHECK_MASK 0x02000000
62
-#define A6XX_GMU_OOB_PERFCNTR_CLEAR_MASK 0x02000000
51
+#define A6XX_GMU_GPU_IDLE_STATUS_BUSY_IGN_AHB__MASK 0x00800000
52
+#define A6XX_GMU_GPU_IDLE_STATUS_BUSY_IGN_AHB__SHIFT 23
53
+static inline uint32_t A6XX_GMU_GPU_IDLE_STATUS_BUSY_IGN_AHB(uint32_t val)
54
+{
55
+ return ((val) << A6XX_GMU_GPU_IDLE_STATUS_BUSY_IGN_AHB__SHIFT) & A6XX_GMU_GPU_IDLE_STATUS_BUSY_IGN_AHB__MASK;
56
+}
57
+#define A6XX_GMU_GPU_IDLE_STATUS_CX_GX_CPU_BUSY_IGN_AHB__MASK 0x40000000
58
+#define A6XX_GMU_GPU_IDLE_STATUS_CX_GX_CPU_BUSY_IGN_AHB__SHIFT 30
59
+static inline uint32_t A6XX_GMU_GPU_IDLE_STATUS_CX_GX_CPU_BUSY_IGN_AHB(uint32_t val)
60
+{
61
+ return ((val) << A6XX_GMU_GPU_IDLE_STATUS_CX_GX_CPU_BUSY_IGN_AHB__SHIFT) & A6XX_GMU_GPU_IDLE_STATUS_CX_GX_CPU_BUSY_IGN_AHB__MASK;
62
+}
63
+#define A6XX_GMU_OOB_BOOT_SLUMBER_SET_MASK__MASK 0x00400000
64
+#define A6XX_GMU_OOB_BOOT_SLUMBER_SET_MASK__SHIFT 22
65
+static inline uint32_t A6XX_GMU_OOB_BOOT_SLUMBER_SET_MASK(uint32_t val)
66
+{
67
+ return ((val) << A6XX_GMU_OOB_BOOT_SLUMBER_SET_MASK__SHIFT) & A6XX_GMU_OOB_BOOT_SLUMBER_SET_MASK__MASK;
68
+}
69
+#define A6XX_GMU_OOB_BOOT_SLUMBER_CHECK_MASK__MASK 0x40000000
70
+#define A6XX_GMU_OOB_BOOT_SLUMBER_CHECK_MASK__SHIFT 30
71
+static inline uint32_t A6XX_GMU_OOB_BOOT_SLUMBER_CHECK_MASK(uint32_t val)
72
+{
73
+ return ((val) << A6XX_GMU_OOB_BOOT_SLUMBER_CHECK_MASK__SHIFT) & A6XX_GMU_OOB_BOOT_SLUMBER_CHECK_MASK__MASK;
74
+}
75
+#define A6XX_GMU_OOB_BOOT_SLUMBER_CLEAR_MASK__MASK 0x40000000
76
+#define A6XX_GMU_OOB_BOOT_SLUMBER_CLEAR_MASK__SHIFT 30
77
+static inline uint32_t A6XX_GMU_OOB_BOOT_SLUMBER_CLEAR_MASK(uint32_t val)
78
+{
79
+ return ((val) << A6XX_GMU_OOB_BOOT_SLUMBER_CLEAR_MASK__SHIFT) & A6XX_GMU_OOB_BOOT_SLUMBER_CLEAR_MASK__MASK;
80
+}
81
+#define A6XX_GMU_OOB_DCVS_SET_MASK__MASK 0x00800000
82
+#define A6XX_GMU_OOB_DCVS_SET_MASK__SHIFT 23
83
+static inline uint32_t A6XX_GMU_OOB_DCVS_SET_MASK(uint32_t val)
84
+{
85
+ return ((val) << A6XX_GMU_OOB_DCVS_SET_MASK__SHIFT) & A6XX_GMU_OOB_DCVS_SET_MASK__MASK;
86
+}
87
+#define A6XX_GMU_OOB_DCVS_CHECK_MASK__MASK 0x80000000
88
+#define A6XX_GMU_OOB_DCVS_CHECK_MASK__SHIFT 31
89
+static inline uint32_t A6XX_GMU_OOB_DCVS_CHECK_MASK(uint32_t val)
90
+{
91
+ return ((val) << A6XX_GMU_OOB_DCVS_CHECK_MASK__SHIFT) & A6XX_GMU_OOB_DCVS_CHECK_MASK__MASK;
92
+}
93
+#define A6XX_GMU_OOB_DCVS_CLEAR_MASK__MASK 0x80000000
94
+#define A6XX_GMU_OOB_DCVS_CLEAR_MASK__SHIFT 31
95
+static inline uint32_t A6XX_GMU_OOB_DCVS_CLEAR_MASK(uint32_t val)
96
+{
97
+ return ((val) << A6XX_GMU_OOB_DCVS_CLEAR_MASK__SHIFT) & A6XX_GMU_OOB_DCVS_CLEAR_MASK__MASK;
98
+}
99
+#define A6XX_GMU_OOB_GPU_SET_MASK__MASK 0x00040000
100
+#define A6XX_GMU_OOB_GPU_SET_MASK__SHIFT 18
101
+static inline uint32_t A6XX_GMU_OOB_GPU_SET_MASK(uint32_t val)
102
+{
103
+ return ((val) << A6XX_GMU_OOB_GPU_SET_MASK__SHIFT) & A6XX_GMU_OOB_GPU_SET_MASK__MASK;
104
+}
105
+#define A6XX_GMU_OOB_GPU_CHECK_MASK__MASK 0x04000000
106
+#define A6XX_GMU_OOB_GPU_CHECK_MASK__SHIFT 26
107
+static inline uint32_t A6XX_GMU_OOB_GPU_CHECK_MASK(uint32_t val)
108
+{
109
+ return ((val) << A6XX_GMU_OOB_GPU_CHECK_MASK__SHIFT) & A6XX_GMU_OOB_GPU_CHECK_MASK__MASK;
110
+}
111
+#define A6XX_GMU_OOB_GPU_CLEAR_MASK__MASK 0x04000000
112
+#define A6XX_GMU_OOB_GPU_CLEAR_MASK__SHIFT 26
113
+static inline uint32_t A6XX_GMU_OOB_GPU_CLEAR_MASK(uint32_t val)
114
+{
115
+ return ((val) << A6XX_GMU_OOB_GPU_CLEAR_MASK__SHIFT) & A6XX_GMU_OOB_GPU_CLEAR_MASK__MASK;
116
+}
117
+#define A6XX_GMU_OOB_PERFCNTR_SET_MASK__MASK 0x00020000
118
+#define A6XX_GMU_OOB_PERFCNTR_SET_MASK__SHIFT 17
119
+static inline uint32_t A6XX_GMU_OOB_PERFCNTR_SET_MASK(uint32_t val)
120
+{
121
+ return ((val) << A6XX_GMU_OOB_PERFCNTR_SET_MASK__SHIFT) & A6XX_GMU_OOB_PERFCNTR_SET_MASK__MASK;
122
+}
123
+#define A6XX_GMU_OOB_PERFCNTR_CHECK_MASK__MASK 0x02000000
124
+#define A6XX_GMU_OOB_PERFCNTR_CHECK_MASK__SHIFT 25
125
+static inline uint32_t A6XX_GMU_OOB_PERFCNTR_CHECK_MASK(uint32_t val)
126
+{
127
+ return ((val) << A6XX_GMU_OOB_PERFCNTR_CHECK_MASK__SHIFT) & A6XX_GMU_OOB_PERFCNTR_CHECK_MASK__MASK;
128
+}
129
+#define A6XX_GMU_OOB_PERFCNTR_CLEAR_MASK__MASK 0x02000000
130
+#define A6XX_GMU_OOB_PERFCNTR_CLEAR_MASK__SHIFT 25
131
+static inline uint32_t A6XX_GMU_OOB_PERFCNTR_CLEAR_MASK(uint32_t val)
132
+{
133
+ return ((val) << A6XX_GMU_OOB_PERFCNTR_CLEAR_MASK__SHIFT) & A6XX_GMU_OOB_PERFCNTR_CLEAR_MASK__MASK;
134
+}
63135 #define A6XX_HFI_IRQ_MSGQ_MASK 0x00000001
64
-#define A6XX_HFI_IRQ_DSGQ_MASK 0x00000002
65
-#define A6XX_HFI_IRQ_BLOCKED_MSG_MASK 0x00000004
66
-#define A6XX_HFI_IRQ_CM3_FAULT_MASK 0x00800000
136
+#define A6XX_HFI_IRQ_DSGQ_MASK__MASK 0x00000002
137
+#define A6XX_HFI_IRQ_DSGQ_MASK__SHIFT 1
138
+static inline uint32_t A6XX_HFI_IRQ_DSGQ_MASK(uint32_t val)
139
+{
140
+ return ((val) << A6XX_HFI_IRQ_DSGQ_MASK__SHIFT) & A6XX_HFI_IRQ_DSGQ_MASK__MASK;
141
+}
142
+#define A6XX_HFI_IRQ_BLOCKED_MSG_MASK__MASK 0x00000004
143
+#define A6XX_HFI_IRQ_BLOCKED_MSG_MASK__SHIFT 2
144
+static inline uint32_t A6XX_HFI_IRQ_BLOCKED_MSG_MASK(uint32_t val)
145
+{
146
+ return ((val) << A6XX_HFI_IRQ_BLOCKED_MSG_MASK__SHIFT) & A6XX_HFI_IRQ_BLOCKED_MSG_MASK__MASK;
147
+}
148
+#define A6XX_HFI_IRQ_CM3_FAULT_MASK__MASK 0x00800000
149
+#define A6XX_HFI_IRQ_CM3_FAULT_MASK__SHIFT 23
150
+static inline uint32_t A6XX_HFI_IRQ_CM3_FAULT_MASK(uint32_t val)
151
+{
152
+ return ((val) << A6XX_HFI_IRQ_CM3_FAULT_MASK__SHIFT) & A6XX_HFI_IRQ_CM3_FAULT_MASK__MASK;
153
+}
67154 #define A6XX_HFI_IRQ_GMU_ERR_MASK__MASK 0x007f0000
68155 #define A6XX_HFI_IRQ_GMU_ERR_MASK__SHIFT 16
69156 static inline uint32_t A6XX_HFI_IRQ_GMU_ERR_MASK(uint32_t val)
....@@ -100,6 +187,10 @@
100187 #define REG_A6XX_GMU_DCVS_BW_SETTING 0x000023fe
101188
102189 #define REG_A6XX_GMU_DCVS_RETURN 0x000023ff
190
+
191
+#define REG_A6XX_GMU_ICACHE_CONFIG 0x00004c00
192
+
193
+#define REG_A6XX_GMU_DCACHE_CONFIG 0x00004c01
103194
104195 #define REG_A6XX_GMU_SYS_BUS_CONFIG 0x00004c0f
105196
....@@ -167,8 +258,8 @@
167258 #define REG_A6XX_GMU_SPTPRAC_PWR_CLK_STATUS 0x000050d0
168259 #define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWERING_OFF 0x00000001
169260 #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
171
-#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_OFF 0x00000008
261
+#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_OFF 0x00000004
262
+#define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SPTPRAC_GDSC_POWER_ON 0x00000008
172263 #define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_SP_CLOCK_OFF 0x00000010
173264 #define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_GMU_UP_POWER_STATE 0x00000020
174265 #define A6XX_GMU_SPTPRAC_PWR_CLK_STATUS_GX_HM_GDSC_POWER_OFF 0x00000040
....@@ -198,6 +289,12 @@
198289 #define REG_A6XX_GMU_RPMH_HYST_CTRL 0x000050e9
199290
200291 #define REG_A6XX_GPU_GMU_CX_GMU_RPMH_POWER_STATE 0x000050ec
292
+
293
+#define REG_A6XX_GPU_GMU_CX_GMU_CX_FAL_INTF 0x000050f0
294
+
295
+#define REG_A6XX_GPU_GMU_CX_GMU_PWR_COL_CP_MSG 0x00005100
296
+
297
+#define REG_A6XX_GPU_GMU_CX_GMU_PWR_COL_CP_RESP 0x00005101
201298
202299 #define REG_A6XX_GMU_BOOT_KMD_LM_HANDSHAKE 0x000051f0
203300
....@@ -330,8 +427,6 @@
330427
331428 #define REG_A6XX_GMU_AO_SPARE_CNTL 0x00009316
332429
333
-#define REG_A6XX_GPU_RSCC_RSC_STATUS0_DRV0 0x00008c04
334
-
335430 #define REG_A6XX_GMU_RSCC_CONTROL_REQ 0x00009307
336431
337432 #define REG_A6XX_GMU_RSCC_CONTROL_ACK 0x00009308
....@@ -344,39 +439,41 @@
344439
345440 #define REG_A6XX_GPU_CC_GX_DOMAIN_MISC 0x00009d42
346441
347
-#define REG_A6XX_RSCC_PDC_SEQ_START_ADDR 0x00008c08
442
+#define REG_A6XX_GPU_RSCC_RSC_STATUS0_DRV0 0x00000004
348443
349
-#define REG_A6XX_RSCC_PDC_MATCH_VALUE_LO 0x00008c09
444
+#define REG_A6XX_RSCC_PDC_SEQ_START_ADDR 0x00000008
350445
351
-#define REG_A6XX_RSCC_PDC_MATCH_VALUE_HI 0x00008c0a
446
+#define REG_A6XX_RSCC_PDC_MATCH_VALUE_LO 0x00000009
352447
353
-#define REG_A6XX_RSCC_PDC_SLAVE_ID_DRV0 0x00008c0b
448
+#define REG_A6XX_RSCC_PDC_MATCH_VALUE_HI 0x0000000a
354449
355
-#define REG_A6XX_RSCC_HIDDEN_TCS_CMD0_ADDR 0x00008c0d
450
+#define REG_A6XX_RSCC_PDC_SLAVE_ID_DRV0 0x0000000b
356451
357
-#define REG_A6XX_RSCC_HIDDEN_TCS_CMD0_DATA 0x00008c0e
452
+#define REG_A6XX_RSCC_HIDDEN_TCS_CMD0_ADDR 0x0000000d
358453
359
-#define REG_A6XX_RSCC_TIMESTAMP_UNIT0_TIMESTAMP_L_DRV0 0x00008c82
454
+#define REG_A6XX_RSCC_HIDDEN_TCS_CMD0_DATA 0x0000000e
360455
361
-#define REG_A6XX_RSCC_TIMESTAMP_UNIT0_TIMESTAMP_H_DRV0 0x00008c83
456
+#define REG_A6XX_RSCC_TIMESTAMP_UNIT0_TIMESTAMP_L_DRV0 0x00000082
362457
363
-#define REG_A6XX_RSCC_TIMESTAMP_UNIT1_EN_DRV0 0x00008c89
458
+#define REG_A6XX_RSCC_TIMESTAMP_UNIT0_TIMESTAMP_H_DRV0 0x00000083
364459
365
-#define REG_A6XX_RSCC_TIMESTAMP_UNIT1_OUTPUT_DRV0 0x00008c8c
460
+#define REG_A6XX_RSCC_TIMESTAMP_UNIT1_EN_DRV0 0x00000089
366461
367
-#define REG_A6XX_RSCC_OVERRIDE_START_ADDR 0x00008d00
462
+#define REG_A6XX_RSCC_TIMESTAMP_UNIT1_OUTPUT_DRV0 0x0000008c
368463
369
-#define REG_A6XX_RSCC_SEQ_BUSY_DRV0 0x00008d01
464
+#define REG_A6XX_RSCC_OVERRIDE_START_ADDR 0x00000100
370465
371
-#define REG_A6XX_RSCC_SEQ_MEM_0_DRV0 0x00008d80
466
+#define REG_A6XX_RSCC_SEQ_BUSY_DRV0 0x00000101
372467
373
-#define REG_A6XX_RSCC_TCS0_DRV0_STATUS 0x00008f46
468
+#define REG_A6XX_RSCC_SEQ_MEM_0_DRV0 0x00000180
374469
375
-#define REG_A6XX_RSCC_TCS1_DRV0_STATUS 0x000090ae
470
+#define REG_A6XX_RSCC_TCS0_DRV0_STATUS 0x00000346
376471
377
-#define REG_A6XX_RSCC_TCS2_DRV0_STATUS 0x00009216
472
+#define REG_A6XX_RSCC_TCS1_DRV0_STATUS 0x000003ee
378473
379
-#define REG_A6XX_RSCC_TCS3_DRV0_STATUS 0x0000937e
474
+#define REG_A6XX_RSCC_TCS2_DRV0_STATUS 0x00000496
475
+
476
+#define REG_A6XX_RSCC_TCS3_DRV0_STATUS 0x0000053e
380477
381478
382479 #endif /* A6XX_GMU_XML */