1902e6eb8SRob Clark #ifndef ADRENO_PM4_XML
2902e6eb8SRob Clark #define ADRENO_PM4_XML
3902e6eb8SRob Clark
4902e6eb8SRob Clark /* Autogenerated file, DO NOT EDIT manually!
5902e6eb8SRob Clark
6902e6eb8SRob Clark This file was generated by the rules-ng-ng headergen tool in this git repository:
722ba8b6bSRob Clark http://github.com/freedreno/envytools/
822ba8b6bSRob Clark git clone https://github.com/freedreno/envytools.git
9902e6eb8SRob Clark
10902e6eb8SRob Clark The rules-ng-ng source files this header was generated from are:
11*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno.xml ( 594 bytes, from 2023-03-10 18:32:52)
12*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/freedreno_copyright.xml ( 1572 bytes, from 2022-07-23 20:21:46)
13*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a2xx.xml ( 91929 bytes, from 2023-02-28 23:52:27)
14*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_common.xml ( 15434 bytes, from 2023-03-10 18:32:53)
15*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pm4.xml ( 74995 bytes, from 2023-03-20 18:06:23)
16*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a3xx.xml ( 84231 bytes, from 2022-08-02 16:38:43)
17*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a4xx.xml ( 113474 bytes, from 2022-08-02 16:38:43)
18*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a5xx.xml ( 149590 bytes, from 2023-02-14 19:37:12)
19*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx.xml ( 198949 bytes, from 2023-03-20 18:06:23)
20*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/a6xx_gmu.xml ( 11404 bytes, from 2023-03-10 18:32:53)
21*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/ocmem.xml ( 1773 bytes, from 2022-08-02 16:38:43)
22*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_control_regs.xml ( 9055 bytes, from 2023-03-10 18:32:52)
23*f73343faSRob Clark - /home/robclark/src/mesa/mesa/src/freedreno/registers/adreno/adreno_pipe_regs.xml ( 2976 bytes, from 2023-03-10 18:32:52)
24902e6eb8SRob Clark
25*f73343faSRob Clark Copyright (C) 2013-2023 by the following authors:
26902e6eb8SRob Clark - Rob Clark <robdclark@gmail.com> (robclark)
27a2272e48SRob Clark - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
28902e6eb8SRob Clark
29902e6eb8SRob Clark Permission is hereby granted, free of charge, to any person obtaining
30902e6eb8SRob Clark a copy of this software and associated documentation files (the
31902e6eb8SRob Clark "Software"), to deal in the Software without restriction, including
32902e6eb8SRob Clark without limitation the rights to use, copy, modify, merge, publish,
33902e6eb8SRob Clark distribute, sublicense, and/or sell copies of the Software, and to
34902e6eb8SRob Clark permit persons to whom the Software is furnished to do so, subject to
35902e6eb8SRob Clark the following conditions:
36902e6eb8SRob Clark
37902e6eb8SRob Clark The above copyright notice and this permission notice (including the
38902e6eb8SRob Clark next paragraph) shall be included in all copies or substantial
39902e6eb8SRob Clark portions of the Software.
40902e6eb8SRob Clark
41902e6eb8SRob Clark THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
42902e6eb8SRob Clark EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
43902e6eb8SRob Clark MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
44902e6eb8SRob Clark IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
45902e6eb8SRob Clark LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
46902e6eb8SRob Clark OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
47902e6eb8SRob Clark WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
48902e6eb8SRob Clark */
49902e6eb8SRob Clark
50902e6eb8SRob Clark
51902e6eb8SRob Clark enum vgt_event_type {
52902e6eb8SRob Clark VS_DEALLOC = 0,
53902e6eb8SRob Clark PS_DEALLOC = 1,
54902e6eb8SRob Clark VS_DONE_TS = 2,
55902e6eb8SRob Clark PS_DONE_TS = 3,
56902e6eb8SRob Clark CACHE_FLUSH_TS = 4,
57902e6eb8SRob Clark CONTEXT_DONE = 5,
58902e6eb8SRob Clark CACHE_FLUSH = 6,
59902e6eb8SRob Clark VIZQUERY_START = 7,
60c28c82e9SRob Clark HLSQ_FLUSH = 7,
61902e6eb8SRob Clark VIZQUERY_END = 8,
62902e6eb8SRob Clark SC_WAIT_WC = 9,
63c28c82e9SRob Clark WRITE_PRIMITIVE_COUNTS = 9,
64c28c82e9SRob Clark START_PRIMITIVE_CTRS = 11,
65c28c82e9SRob Clark STOP_PRIMITIVE_CTRS = 12,
66902e6eb8SRob Clark RST_PIX_CNT = 13,
67902e6eb8SRob Clark RST_VTX_CNT = 14,
68902e6eb8SRob Clark TILE_FLUSH = 15,
69a26ae754SRob Clark STAT_EVENT = 16,
70902e6eb8SRob Clark CACHE_FLUSH_AND_INV_TS_EVENT = 20,
71902e6eb8SRob Clark ZPASS_DONE = 21,
72902e6eb8SRob Clark CACHE_FLUSH_AND_INV_EVENT = 22,
73c28c82e9SRob Clark RB_DONE_TS = 22,
74902e6eb8SRob Clark PERFCOUNTER_START = 23,
75902e6eb8SRob Clark PERFCOUNTER_STOP = 24,
76902e6eb8SRob Clark VS_FETCH_DONE = 27,
77902e6eb8SRob Clark FACENESS_FLUSH = 28,
78c28c82e9SRob Clark WT_DONE_TS = 8,
79*f73343faSRob Clark START_FRAGMENT_CTRS = 13,
80*f73343faSRob Clark STOP_FRAGMENT_CTRS = 14,
81*f73343faSRob Clark START_COMPUTE_CTRS = 15,
82*f73343faSRob Clark STOP_COMPUTE_CTRS = 16,
8352260ae4SRob Clark FLUSH_SO_0 = 17,
8452260ae4SRob Clark FLUSH_SO_1 = 18,
8552260ae4SRob Clark FLUSH_SO_2 = 19,
8652260ae4SRob Clark FLUSH_SO_3 = 20,
872d756322SRob Clark PC_CCU_INVALIDATE_DEPTH = 24,
882d756322SRob Clark PC_CCU_INVALIDATE_COLOR = 25,
89c28c82e9SRob Clark PC_CCU_RESOLVE_TS = 26,
90c28c82e9SRob Clark PC_CCU_FLUSH_DEPTH_TS = 28,
91c28c82e9SRob Clark PC_CCU_FLUSH_COLOR_TS = 29,
92a26ae754SRob Clark BLIT = 30,
93*f73343faSRob Clark LRZ_CLEAR = 37,
9452260ae4SRob Clark LRZ_FLUSH = 38,
95c28c82e9SRob Clark BLIT_OP_FILL_2D = 39,
96c28c82e9SRob Clark BLIT_OP_COPY_2D = 40,
97c28c82e9SRob Clark BLIT_OP_SCALE_2D = 42,
98c28c82e9SRob Clark CONTEXT_DONE_2D = 43,
9952260ae4SRob Clark UNK_2C = 44,
10052260ae4SRob Clark UNK_2D = 45,
101c28c82e9SRob Clark CACHE_INVALIDATE = 49,
102*f73343faSRob Clark LABEL = 63,
103*f73343faSRob Clark CCU_INVALIDATE_DEPTH = 24,
104*f73343faSRob Clark CCU_INVALIDATE_COLOR = 25,
105*f73343faSRob Clark CCU_RESOLVE_CLEAN = 26,
106*f73343faSRob Clark CCU_FLUSH_DEPTH = 28,
107*f73343faSRob Clark CCU_FLUSH_COLOR = 29,
108*f73343faSRob Clark CCU_RESOLVE = 30,
109*f73343faSRob Clark CCU_END_RESOLVE_GROUP = 31,
110*f73343faSRob Clark CCU_CLEAN_DEPTH = 32,
111*f73343faSRob Clark CCU_CLEAN_COLOR = 33,
112*f73343faSRob Clark CACHE_RESET = 48,
113*f73343faSRob Clark CACHE_CLEAN = 49,
114*f73343faSRob Clark CACHE_FLUSH7 = 50,
115*f73343faSRob Clark CACHE_INVALIDATE7 = 51,
116902e6eb8SRob Clark };
117902e6eb8SRob Clark
118902e6eb8SRob Clark enum pc_di_primtype {
119902e6eb8SRob Clark DI_PT_NONE = 0,
1202d3584ebSRob Clark DI_PT_POINTLIST_PSIZE = 1,
121902e6eb8SRob Clark DI_PT_LINELIST = 2,
122902e6eb8SRob Clark DI_PT_LINESTRIP = 3,
123902e6eb8SRob Clark DI_PT_TRILIST = 4,
124902e6eb8SRob Clark DI_PT_TRIFAN = 5,
125902e6eb8SRob Clark DI_PT_TRISTRIP = 6,
126facb4f4eSRob Clark DI_PT_LINELOOP = 7,
127902e6eb8SRob Clark DI_PT_RECTLIST = 8,
1282d3584ebSRob Clark DI_PT_POINTLIST = 9,
129af6cb4c1SRob Clark DI_PT_LINE_ADJ = 10,
130af6cb4c1SRob Clark DI_PT_LINESTRIP_ADJ = 11,
131af6cb4c1SRob Clark DI_PT_TRI_ADJ = 12,
132af6cb4c1SRob Clark DI_PT_TRISTRIP_ADJ = 13,
133c28c82e9SRob Clark DI_PT_PATCHES0 = 31,
134c28c82e9SRob Clark DI_PT_PATCHES1 = 32,
135c28c82e9SRob Clark DI_PT_PATCHES2 = 33,
136c28c82e9SRob Clark DI_PT_PATCHES3 = 34,
137c28c82e9SRob Clark DI_PT_PATCHES4 = 35,
138c28c82e9SRob Clark DI_PT_PATCHES5 = 36,
139c28c82e9SRob Clark DI_PT_PATCHES6 = 37,
140c28c82e9SRob Clark DI_PT_PATCHES7 = 38,
141c28c82e9SRob Clark DI_PT_PATCHES8 = 39,
142c28c82e9SRob Clark DI_PT_PATCHES9 = 40,
143c28c82e9SRob Clark DI_PT_PATCHES10 = 41,
144c28c82e9SRob Clark DI_PT_PATCHES11 = 42,
145c28c82e9SRob Clark DI_PT_PATCHES12 = 43,
146c28c82e9SRob Clark DI_PT_PATCHES13 = 44,
147c28c82e9SRob Clark DI_PT_PATCHES14 = 45,
148c28c82e9SRob Clark DI_PT_PATCHES15 = 46,
149c28c82e9SRob Clark DI_PT_PATCHES16 = 47,
150c28c82e9SRob Clark DI_PT_PATCHES17 = 48,
151c28c82e9SRob Clark DI_PT_PATCHES18 = 49,
152c28c82e9SRob Clark DI_PT_PATCHES19 = 50,
153c28c82e9SRob Clark DI_PT_PATCHES20 = 51,
154c28c82e9SRob Clark DI_PT_PATCHES21 = 52,
155c28c82e9SRob Clark DI_PT_PATCHES22 = 53,
156c28c82e9SRob Clark DI_PT_PATCHES23 = 54,
157c28c82e9SRob Clark DI_PT_PATCHES24 = 55,
158c28c82e9SRob Clark DI_PT_PATCHES25 = 56,
159c28c82e9SRob Clark DI_PT_PATCHES26 = 57,
160c28c82e9SRob Clark DI_PT_PATCHES27 = 58,
161c28c82e9SRob Clark DI_PT_PATCHES28 = 59,
162c28c82e9SRob Clark DI_PT_PATCHES29 = 60,
163c28c82e9SRob Clark DI_PT_PATCHES30 = 61,
164c28c82e9SRob Clark DI_PT_PATCHES31 = 62,
165902e6eb8SRob Clark };
166902e6eb8SRob Clark
167902e6eb8SRob Clark enum pc_di_src_sel {
168902e6eb8SRob Clark DI_SRC_SEL_DMA = 0,
169902e6eb8SRob Clark DI_SRC_SEL_IMMEDIATE = 1,
170902e6eb8SRob Clark DI_SRC_SEL_AUTO_INDEX = 2,
171c28c82e9SRob Clark DI_SRC_SEL_AUTO_XFB = 3,
172902e6eb8SRob Clark };
173902e6eb8SRob Clark
174ccdf7e28SRob Clark enum pc_di_face_cull_sel {
175ccdf7e28SRob Clark DI_FACE_CULL_NONE = 0,
176ccdf7e28SRob Clark DI_FACE_CULL_FETCH = 1,
177ccdf7e28SRob Clark DI_FACE_BACKFACE_CULL = 2,
178ccdf7e28SRob Clark DI_FACE_FRONTFACE_CULL = 3,
179ccdf7e28SRob Clark };
180ccdf7e28SRob Clark
181902e6eb8SRob Clark enum pc_di_index_size {
182902e6eb8SRob Clark INDEX_SIZE_IGN = 0,
183902e6eb8SRob Clark INDEX_SIZE_16_BIT = 0,
184902e6eb8SRob Clark INDEX_SIZE_32_BIT = 1,
185902e6eb8SRob Clark INDEX_SIZE_8_BIT = 2,
186902e6eb8SRob Clark INDEX_SIZE_INVALID = 0,
187902e6eb8SRob Clark };
188902e6eb8SRob Clark
189902e6eb8SRob Clark enum pc_di_vis_cull_mode {
190902e6eb8SRob Clark IGNORE_VISIBILITY = 0,
19189301471SRob Clark USE_VISIBILITY = 1,
192902e6eb8SRob Clark };
193902e6eb8SRob Clark
194902e6eb8SRob Clark enum adreno_pm4_packet_type {
195902e6eb8SRob Clark CP_TYPE0_PKT = 0,
196902e6eb8SRob Clark CP_TYPE1_PKT = 0x40000000,
197902e6eb8SRob Clark CP_TYPE2_PKT = 0x80000000,
198902e6eb8SRob Clark CP_TYPE3_PKT = 0xc0000000,
199a26ae754SRob Clark CP_TYPE4_PKT = 0x40000000,
200a26ae754SRob Clark CP_TYPE7_PKT = 0x70000000,
201902e6eb8SRob Clark };
202902e6eb8SRob Clark
203902e6eb8SRob Clark enum adreno_pm4_type3_packets {
204902e6eb8SRob Clark CP_ME_INIT = 72,
205902e6eb8SRob Clark CP_NOP = 16,
206a26ae754SRob Clark CP_PREEMPT_ENABLE = 28,
207a26ae754SRob Clark CP_PREEMPT_TOKEN = 30,
208902e6eb8SRob Clark CP_INDIRECT_BUFFER = 63,
209c28c82e9SRob Clark CP_INDIRECT_BUFFER_CHAIN = 87,
210902e6eb8SRob Clark CP_INDIRECT_BUFFER_PFD = 55,
211902e6eb8SRob Clark CP_WAIT_FOR_IDLE = 38,
212902e6eb8SRob Clark CP_WAIT_REG_MEM = 60,
213902e6eb8SRob Clark CP_WAIT_REG_EQ = 82,
214facb4f4eSRob Clark CP_WAIT_REG_GTE = 83,
215902e6eb8SRob Clark CP_WAIT_UNTIL_READ = 92,
216902e6eb8SRob Clark CP_WAIT_IB_PFD_COMPLETE = 93,
217902e6eb8SRob Clark CP_REG_RMW = 33,
218902e6eb8SRob Clark CP_SET_BIN_DATA = 47,
21952260ae4SRob Clark CP_SET_BIN_DATA5 = 47,
220902e6eb8SRob Clark CP_REG_TO_MEM = 62,
221902e6eb8SRob Clark CP_MEM_WRITE = 61,
222902e6eb8SRob Clark CP_MEM_WRITE_CNTR = 79,
223902e6eb8SRob Clark CP_COND_EXEC = 68,
224902e6eb8SRob Clark CP_COND_WRITE = 69,
22552260ae4SRob Clark CP_COND_WRITE5 = 69,
226902e6eb8SRob Clark CP_EVENT_WRITE = 70,
227902e6eb8SRob Clark CP_EVENT_WRITE_SHD = 88,
228902e6eb8SRob Clark CP_EVENT_WRITE_CFL = 89,
229902e6eb8SRob Clark CP_EVENT_WRITE_ZPD = 91,
230902e6eb8SRob Clark CP_RUN_OPENCL = 49,
231902e6eb8SRob Clark CP_DRAW_INDX = 34,
232902e6eb8SRob Clark CP_DRAW_INDX_2 = 54,
233902e6eb8SRob Clark CP_DRAW_INDX_BIN = 52,
234902e6eb8SRob Clark CP_DRAW_INDX_2_BIN = 53,
235902e6eb8SRob Clark CP_VIZ_QUERY = 35,
236902e6eb8SRob Clark CP_SET_STATE = 37,
237902e6eb8SRob Clark CP_SET_CONSTANT = 45,
238902e6eb8SRob Clark CP_IM_LOAD = 39,
239902e6eb8SRob Clark CP_IM_LOAD_IMMEDIATE = 43,
240902e6eb8SRob Clark CP_LOAD_CONSTANT_CONTEXT = 46,
241902e6eb8SRob Clark CP_INVALIDATE_STATE = 59,
242902e6eb8SRob Clark CP_SET_SHADER_BASES = 74,
243902e6eb8SRob Clark CP_SET_BIN_MASK = 80,
244902e6eb8SRob Clark CP_SET_BIN_SELECT = 81,
245902e6eb8SRob Clark CP_CONTEXT_UPDATE = 94,
246902e6eb8SRob Clark CP_INTERRUPT = 64,
247902e6eb8SRob Clark CP_IM_STORE = 44,
248902e6eb8SRob Clark CP_SET_DRAW_INIT_FLAGS = 75,
249902e6eb8SRob Clark CP_SET_PROTECTED_MODE = 95,
250bc00ae02SRob Clark CP_BOOTSTRAP_UCODE = 111,
251902e6eb8SRob Clark CP_LOAD_STATE = 48,
25252260ae4SRob Clark CP_LOAD_STATE4 = 48,
253902e6eb8SRob Clark CP_COND_INDIRECT_BUFFER_PFE = 58,
254902e6eb8SRob Clark CP_COND_INDIRECT_BUFFER_PFD = 50,
255902e6eb8SRob Clark CP_INDIRECT_BUFFER_PFE = 63,
256902e6eb8SRob Clark CP_SET_BIN = 76,
257facb4f4eSRob Clark CP_TEST_TWO_MEMS = 113,
258f9a1ca5cSRob Clark CP_REG_WR_NO_CTXT = 120,
259f9a1ca5cSRob Clark CP_RECORD_PFP_TIMESTAMP = 17,
260a26ae754SRob Clark CP_SET_SECURE_MODE = 102,
261facb4f4eSRob Clark CP_WAIT_FOR_ME = 19,
26289301471SRob Clark CP_SET_DRAW_STATE = 67,
26389301471SRob Clark CP_DRAW_INDX_OFFSET = 56,
26489301471SRob Clark CP_DRAW_INDIRECT = 40,
26589301471SRob Clark CP_DRAW_INDX_INDIRECT = 41,
266c28c82e9SRob Clark CP_DRAW_INDIRECT_MULTI = 42,
26789301471SRob Clark CP_DRAW_AUTO = 36,
268cc4c26d4SRob Clark CP_DRAW_PRED_ENABLE_GLOBAL = 25,
269cc4c26d4SRob Clark CP_DRAW_PRED_ENABLE_LOCAL = 26,
270cc4c26d4SRob Clark CP_DRAW_PRED_SET = 78,
271f9a1ca5cSRob Clark CP_WIDE_REG_WRITE = 116,
272a2272e48SRob Clark CP_SCRATCH_TO_REG = 77,
273a2272e48SRob Clark CP_REG_TO_SCRATCH = 74,
274a2272e48SRob Clark CP_WAIT_MEM_WRITES = 18,
275a2272e48SRob Clark CP_COND_REG_EXEC = 71,
276a2272e48SRob Clark CP_MEM_TO_REG = 66,
2772d756322SRob Clark CP_EXEC_CS_INDIRECT = 65,
278a26ae754SRob Clark CP_EXEC_CS = 51,
279a26ae754SRob Clark CP_PERFCOUNTER_ACTION = 80,
280a26ae754SRob Clark CP_SMMU_TABLE_UPDATE = 83,
2812d756322SRob Clark CP_SET_MARKER = 101,
2822d756322SRob Clark CP_SET_PSEUDO_REG = 86,
283a26ae754SRob Clark CP_CONTEXT_REG_BUNCH = 92,
284a26ae754SRob Clark CP_YIELD_ENABLE = 28,
285a26ae754SRob Clark CP_SKIP_IB2_ENABLE_GLOBAL = 29,
286a26ae754SRob Clark CP_SKIP_IB2_ENABLE_LOCAL = 35,
287a26ae754SRob Clark CP_SET_SUBDRAW_SIZE = 53,
288cc4c26d4SRob Clark CP_WHERE_AM_I = 98,
289a26ae754SRob Clark CP_SET_VISIBILITY_OVERRIDE = 100,
290a26ae754SRob Clark CP_PREEMPT_ENABLE_GLOBAL = 105,
291a26ae754SRob Clark CP_PREEMPT_ENABLE_LOCAL = 106,
292a26ae754SRob Clark CP_CONTEXT_SWITCH_YIELD = 107,
293a26ae754SRob Clark CP_SET_RENDER_MODE = 108,
294a26ae754SRob Clark CP_COMPUTE_CHECKPOINT = 110,
295a26ae754SRob Clark CP_MEM_TO_MEM = 115,
296a26ae754SRob Clark CP_BLIT = 44,
2972d756322SRob Clark CP_REG_TEST = 57,
2982d756322SRob Clark CP_SET_MODE = 99,
2992d756322SRob Clark CP_LOAD_STATE6_GEOM = 50,
3002d756322SRob Clark CP_LOAD_STATE6_FRAG = 52,
301c28c82e9SRob Clark CP_LOAD_STATE6 = 54,
302facb4f4eSRob Clark IN_IB_PREFETCH_END = 23,
303facb4f4eSRob Clark IN_SUBBLK_PREFETCH = 31,
304facb4f4eSRob Clark IN_INSTR_PREFETCH = 32,
305facb4f4eSRob Clark IN_INSTR_MATCH = 71,
306facb4f4eSRob Clark IN_CONST_PREFETCH = 73,
307facb4f4eSRob Clark IN_INCR_UPDT_STATE = 85,
308facb4f4eSRob Clark IN_INCR_UPDT_CONST = 86,
309facb4f4eSRob Clark IN_INCR_UPDT_INSTR = 87,
3102d756322SRob Clark PKT4 = 4,
311*f73343faSRob Clark IN_IB_END = 10,
312*f73343faSRob Clark IN_GMU_INTERRUPT = 11,
313*f73343faSRob Clark IN_PREEMPT = 15,
314c28c82e9SRob Clark CP_SCRATCH_WRITE = 76,
315c28c82e9SRob Clark CP_REG_TO_MEM_OFFSET_MEM = 116,
316c28c82e9SRob Clark CP_REG_TO_MEM_OFFSET_REG = 114,
317c28c82e9SRob Clark CP_WAIT_MEM_GTE = 20,
318c28c82e9SRob Clark CP_WAIT_TWO_REGS = 112,
319c28c82e9SRob Clark CP_MEMCPY = 117,
320c28c82e9SRob Clark CP_SET_BIN_DATA5_OFFSET = 46,
321*f73343faSRob Clark CP_CONTEXT_SWITCH = 84,
322c28c82e9SRob Clark CP_SET_CTXSWITCH_IB = 85,
323a69c5ed2SRob Clark CP_REG_WRITE = 109,
32457cfe41cSRob Clark CP_START_BIN = 80,
32557cfe41cSRob Clark CP_END_BIN = 81,
326*f73343faSRob Clark CP_PREEMPT_DISABLE = 108,
327*f73343faSRob Clark CP_WAIT_TIMESTAMP = 20,
328*f73343faSRob Clark CP_THREAD_CONTROL = 23,
329*f73343faSRob Clark CP_CONTEXT_REG_BUNCH2 = 93,
330*f73343faSRob Clark CP_UNK15 = 21,
331*f73343faSRob Clark CP_UNK16 = 22,
332*f73343faSRob Clark CP_UNK18 = 24,
333*f73343faSRob Clark CP_UNK1B = 27,
334*f73343faSRob Clark CP_UNK49 = 73,
335902e6eb8SRob Clark };
336902e6eb8SRob Clark
337902e6eb8SRob Clark enum adreno_state_block {
338902e6eb8SRob Clark SB_VERT_TEX = 0,
339902e6eb8SRob Clark SB_VERT_MIPADDR = 1,
340902e6eb8SRob Clark SB_FRAG_TEX = 2,
341902e6eb8SRob Clark SB_FRAG_MIPADDR = 3,
342902e6eb8SRob Clark SB_VERT_SHADER = 4,
343af6cb4c1SRob Clark SB_GEOM_SHADER = 5,
344902e6eb8SRob Clark SB_FRAG_SHADER = 6,
345a26ae754SRob Clark SB_COMPUTE_SHADER = 7,
346902e6eb8SRob Clark };
347902e6eb8SRob Clark
348902e6eb8SRob Clark enum adreno_state_type {
349902e6eb8SRob Clark ST_SHADER = 0,
350902e6eb8SRob Clark ST_CONSTANTS = 1,
351902e6eb8SRob Clark };
352902e6eb8SRob Clark
353902e6eb8SRob Clark enum adreno_state_src {
354902e6eb8SRob Clark SS_DIRECT = 0,
355a2272e48SRob Clark SS_INVALID_ALL_IC = 2,
356a2272e48SRob Clark SS_INVALID_PART_IC = 3,
357902e6eb8SRob Clark SS_INDIRECT = 4,
358a2272e48SRob Clark SS_INDIRECT_TCM = 5,
359a2272e48SRob Clark SS_INDIRECT_STM = 6,
360902e6eb8SRob Clark };
361902e6eb8SRob Clark
36252260ae4SRob Clark enum a4xx_state_block {
36352260ae4SRob Clark SB4_VS_TEX = 0,
36452260ae4SRob Clark SB4_HS_TEX = 1,
36552260ae4SRob Clark SB4_DS_TEX = 2,
36652260ae4SRob Clark SB4_GS_TEX = 3,
36752260ae4SRob Clark SB4_FS_TEX = 4,
36852260ae4SRob Clark SB4_CS_TEX = 5,
36952260ae4SRob Clark SB4_VS_SHADER = 8,
37052260ae4SRob Clark SB4_HS_SHADER = 9,
37152260ae4SRob Clark SB4_DS_SHADER = 10,
37252260ae4SRob Clark SB4_GS_SHADER = 11,
37352260ae4SRob Clark SB4_FS_SHADER = 12,
37452260ae4SRob Clark SB4_CS_SHADER = 13,
37552260ae4SRob Clark SB4_SSBO = 14,
37652260ae4SRob Clark SB4_CS_SSBO = 15,
37752260ae4SRob Clark };
37852260ae4SRob Clark
37952260ae4SRob Clark enum a4xx_state_type {
38052260ae4SRob Clark ST4_SHADER = 0,
38152260ae4SRob Clark ST4_CONSTANTS = 1,
382c28c82e9SRob Clark ST4_UBO = 2,
38352260ae4SRob Clark };
38452260ae4SRob Clark
38552260ae4SRob Clark enum a4xx_state_src {
38652260ae4SRob Clark SS4_DIRECT = 0,
38752260ae4SRob Clark SS4_INDIRECT = 2,
38852260ae4SRob Clark };
38952260ae4SRob Clark
3902d756322SRob Clark enum a6xx_state_block {
3912d756322SRob Clark SB6_VS_TEX = 0,
3922d756322SRob Clark SB6_HS_TEX = 1,
3932d756322SRob Clark SB6_DS_TEX = 2,
3942d756322SRob Clark SB6_GS_TEX = 3,
3952d756322SRob Clark SB6_FS_TEX = 4,
3962d756322SRob Clark SB6_CS_TEX = 5,
3972d756322SRob Clark SB6_VS_SHADER = 8,
3982d756322SRob Clark SB6_HS_SHADER = 9,
3992d756322SRob Clark SB6_DS_SHADER = 10,
4002d756322SRob Clark SB6_GS_SHADER = 11,
4012d756322SRob Clark SB6_FS_SHADER = 12,
4022d756322SRob Clark SB6_CS_SHADER = 13,
403c28c82e9SRob Clark SB6_IBO = 14,
404c28c82e9SRob Clark SB6_CS_IBO = 15,
4052d756322SRob Clark };
4062d756322SRob Clark
4072d756322SRob Clark enum a6xx_state_type {
4082d756322SRob Clark ST6_SHADER = 0,
4092d756322SRob Clark ST6_CONSTANTS = 1,
410c28c82e9SRob Clark ST6_UBO = 2,
411c28c82e9SRob Clark ST6_IBO = 3,
4122d756322SRob Clark };
4132d756322SRob Clark
4142d756322SRob Clark enum a6xx_state_src {
4152d756322SRob Clark SS6_DIRECT = 0,
416c28c82e9SRob Clark SS6_BINDLESS = 1,
4172d756322SRob Clark SS6_INDIRECT = 2,
418c28c82e9SRob Clark SS6_UBO = 3,
4192d756322SRob Clark };
4202d756322SRob Clark
4218a264743SRob Clark enum a4xx_index_size {
4228a264743SRob Clark INDEX4_SIZE_8_BIT = 0,
4238a264743SRob Clark INDEX4_SIZE_16_BIT = 1,
4248a264743SRob Clark INDEX4_SIZE_32_BIT = 2,
4258a264743SRob Clark };
4268a264743SRob Clark
427c28c82e9SRob Clark enum a6xx_patch_type {
428c28c82e9SRob Clark TESS_QUADS = 0,
429c28c82e9SRob Clark TESS_TRIANGLES = 1,
430c28c82e9SRob Clark TESS_ISOLINES = 2,
431c28c82e9SRob Clark };
432c28c82e9SRob Clark
433c28c82e9SRob Clark enum a6xx_draw_indirect_opcode {
434c28c82e9SRob Clark INDIRECT_OP_NORMAL = 2,
435c28c82e9SRob Clark INDIRECT_OP_INDEXED = 4,
436cc4c26d4SRob Clark INDIRECT_OP_INDIRECT_COUNT = 6,
437cc4c26d4SRob Clark INDIRECT_OP_INDIRECT_COUNT_INDEXED = 7,
438cc4c26d4SRob Clark };
439cc4c26d4SRob Clark
440cc4c26d4SRob Clark enum cp_draw_pred_src {
441cc4c26d4SRob Clark PRED_SRC_MEM = 5,
442cc4c26d4SRob Clark };
443cc4c26d4SRob Clark
444cc4c26d4SRob Clark enum cp_draw_pred_test {
445cc4c26d4SRob Clark NE_0_PASS = 0,
446cc4c26d4SRob Clark EQ_0_PASS = 1,
447c28c82e9SRob Clark };
448c28c82e9SRob Clark
44952260ae4SRob Clark enum cp_cond_function {
45052260ae4SRob Clark WRITE_ALWAYS = 0,
45152260ae4SRob Clark WRITE_LT = 1,
45252260ae4SRob Clark WRITE_LE = 2,
45352260ae4SRob Clark WRITE_EQ = 3,
45452260ae4SRob Clark WRITE_NE = 4,
45552260ae4SRob Clark WRITE_GE = 5,
45652260ae4SRob Clark WRITE_GT = 6,
45752260ae4SRob Clark };
45852260ae4SRob Clark
459a26ae754SRob Clark enum render_mode_cmd {
460a26ae754SRob Clark BYPASS = 1,
46152260ae4SRob Clark BINNING = 2,
462a26ae754SRob Clark GMEM = 3,
463a26ae754SRob Clark BLIT2D = 5,
46452260ae4SRob Clark BLIT2DSCALE = 7,
4652d756322SRob Clark END2D = 8,
466a26ae754SRob Clark };
467a26ae754SRob Clark
468a26ae754SRob Clark enum cp_blit_cmd {
469a26ae754SRob Clark BLIT_OP_FILL = 0,
47052260ae4SRob Clark BLIT_OP_COPY = 1,
47152260ae4SRob Clark BLIT_OP_SCALE = 3,
472a26ae754SRob Clark };
473a26ae754SRob Clark
47457cfe41cSRob Clark enum a6xx_marker {
4752d756322SRob Clark RM6_BYPASS = 1,
4762d756322SRob Clark RM6_BINNING = 2,
4772d756322SRob Clark RM6_GMEM = 4,
478c28c82e9SRob Clark RM6_ENDVIS = 5,
4792d756322SRob Clark RM6_RESOLVE = 6,
480c28c82e9SRob Clark RM6_YIELD = 7,
481c28c82e9SRob Clark RM6_COMPUTE = 8,
482ccdf7e28SRob Clark RM6_BLIT2DSCALE = 12,
483c28c82e9SRob Clark RM6_IB1LIST_START = 13,
484c28c82e9SRob Clark RM6_IB1LIST_END = 14,
485c28c82e9SRob Clark RM6_IFPC_ENABLE = 256,
486c28c82e9SRob Clark RM6_IFPC_DISABLE = 257,
4872d756322SRob Clark };
4882d756322SRob Clark
4892d756322SRob Clark enum pseudo_reg {
4902d756322SRob Clark SMMU_INFO = 0,
4912d756322SRob Clark NON_SECURE_SAVE_ADDR = 1,
4922d756322SRob Clark SECURE_SAVE_ADDR = 2,
4932d756322SRob Clark NON_PRIV_SAVE_ADDR = 3,
4942d756322SRob Clark COUNTER = 4,
4952d756322SRob Clark };
4962d756322SRob Clark
497c28c82e9SRob Clark enum compare_mode {
498c28c82e9SRob Clark PRED_TEST = 1,
499c28c82e9SRob Clark REG_COMPARE = 2,
500c28c82e9SRob Clark RENDER_MODE = 3,
501c28c82e9SRob Clark };
502c28c82e9SRob Clark
503c28c82e9SRob Clark enum ctxswitch_ib {
504c28c82e9SRob Clark RESTORE_IB = 0,
505c28c82e9SRob Clark YIELD_RESTORE_IB = 1,
506c28c82e9SRob Clark SAVE_IB = 2,
507c28c82e9SRob Clark RB_SAVE_IB = 3,
508c28c82e9SRob Clark };
509c28c82e9SRob Clark
510c28c82e9SRob Clark enum reg_tracker {
511c28c82e9SRob Clark TRACK_CNTL_REG = 1,
512c28c82e9SRob Clark TRACK_RENDER_CNTL = 2,
513c28c82e9SRob Clark UNK_EVENT_WRITE = 4,
514*f73343faSRob Clark TRACK_LRZ = 8,
515*f73343faSRob Clark };
516*f73343faSRob Clark
517*f73343faSRob Clark enum cp_thread {
518*f73343faSRob Clark CP_SET_THREAD_BR = 1,
519*f73343faSRob Clark CP_SET_THREAD_BV = 2,
520*f73343faSRob Clark CP_SET_THREAD_BOTH = 3,
521c28c82e9SRob Clark };
522c28c82e9SRob Clark
523902e6eb8SRob Clark #define REG_CP_LOAD_STATE_0 0x00000000
524902e6eb8SRob Clark #define CP_LOAD_STATE_0_DST_OFF__MASK 0x0000ffff
525902e6eb8SRob Clark #define CP_LOAD_STATE_0_DST_OFF__SHIFT 0
CP_LOAD_STATE_0_DST_OFF(uint32_t val)526902e6eb8SRob Clark static inline uint32_t CP_LOAD_STATE_0_DST_OFF(uint32_t val)
527902e6eb8SRob Clark {
528902e6eb8SRob Clark return ((val) << CP_LOAD_STATE_0_DST_OFF__SHIFT) & CP_LOAD_STATE_0_DST_OFF__MASK;
529902e6eb8SRob Clark }
530902e6eb8SRob Clark #define CP_LOAD_STATE_0_STATE_SRC__MASK 0x00070000
531902e6eb8SRob Clark #define CP_LOAD_STATE_0_STATE_SRC__SHIFT 16
CP_LOAD_STATE_0_STATE_SRC(enum adreno_state_src val)532902e6eb8SRob Clark static inline uint32_t CP_LOAD_STATE_0_STATE_SRC(enum adreno_state_src val)
533902e6eb8SRob Clark {
534902e6eb8SRob Clark return ((val) << CP_LOAD_STATE_0_STATE_SRC__SHIFT) & CP_LOAD_STATE_0_STATE_SRC__MASK;
535902e6eb8SRob Clark }
536902e6eb8SRob Clark #define CP_LOAD_STATE_0_STATE_BLOCK__MASK 0x00380000
537902e6eb8SRob Clark #define CP_LOAD_STATE_0_STATE_BLOCK__SHIFT 19
CP_LOAD_STATE_0_STATE_BLOCK(enum adreno_state_block val)538902e6eb8SRob Clark static inline uint32_t CP_LOAD_STATE_0_STATE_BLOCK(enum adreno_state_block val)
539902e6eb8SRob Clark {
540902e6eb8SRob Clark return ((val) << CP_LOAD_STATE_0_STATE_BLOCK__SHIFT) & CP_LOAD_STATE_0_STATE_BLOCK__MASK;
541902e6eb8SRob Clark }
542a2272e48SRob Clark #define CP_LOAD_STATE_0_NUM_UNIT__MASK 0xffc00000
543902e6eb8SRob Clark #define CP_LOAD_STATE_0_NUM_UNIT__SHIFT 22
CP_LOAD_STATE_0_NUM_UNIT(uint32_t val)544902e6eb8SRob Clark static inline uint32_t CP_LOAD_STATE_0_NUM_UNIT(uint32_t val)
545902e6eb8SRob Clark {
546902e6eb8SRob Clark return ((val) << CP_LOAD_STATE_0_NUM_UNIT__SHIFT) & CP_LOAD_STATE_0_NUM_UNIT__MASK;
547902e6eb8SRob Clark }
548902e6eb8SRob Clark
549902e6eb8SRob Clark #define REG_CP_LOAD_STATE_1 0x00000001
550902e6eb8SRob Clark #define CP_LOAD_STATE_1_STATE_TYPE__MASK 0x00000003
551902e6eb8SRob Clark #define CP_LOAD_STATE_1_STATE_TYPE__SHIFT 0
CP_LOAD_STATE_1_STATE_TYPE(enum adreno_state_type val)552902e6eb8SRob Clark static inline uint32_t CP_LOAD_STATE_1_STATE_TYPE(enum adreno_state_type val)
553902e6eb8SRob Clark {
554902e6eb8SRob Clark return ((val) << CP_LOAD_STATE_1_STATE_TYPE__SHIFT) & CP_LOAD_STATE_1_STATE_TYPE__MASK;
555902e6eb8SRob Clark }
556902e6eb8SRob Clark #define CP_LOAD_STATE_1_EXT_SRC_ADDR__MASK 0xfffffffc
557902e6eb8SRob Clark #define CP_LOAD_STATE_1_EXT_SRC_ADDR__SHIFT 2
CP_LOAD_STATE_1_EXT_SRC_ADDR(uint32_t val)558902e6eb8SRob Clark static inline uint32_t CP_LOAD_STATE_1_EXT_SRC_ADDR(uint32_t val)
559902e6eb8SRob Clark {
560902e6eb8SRob Clark return ((val >> 2) << CP_LOAD_STATE_1_EXT_SRC_ADDR__SHIFT) & CP_LOAD_STATE_1_EXT_SRC_ADDR__MASK;
561902e6eb8SRob Clark }
562902e6eb8SRob Clark
56352260ae4SRob Clark #define REG_CP_LOAD_STATE4_0 0x00000000
5642d756322SRob Clark #define CP_LOAD_STATE4_0_DST_OFF__MASK 0x00003fff
56552260ae4SRob Clark #define CP_LOAD_STATE4_0_DST_OFF__SHIFT 0
CP_LOAD_STATE4_0_DST_OFF(uint32_t val)56652260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_0_DST_OFF(uint32_t val)
567a26ae754SRob Clark {
56852260ae4SRob Clark return ((val) << CP_LOAD_STATE4_0_DST_OFF__SHIFT) & CP_LOAD_STATE4_0_DST_OFF__MASK;
56952260ae4SRob Clark }
57052260ae4SRob Clark #define CP_LOAD_STATE4_0_STATE_SRC__MASK 0x00030000
57152260ae4SRob Clark #define CP_LOAD_STATE4_0_STATE_SRC__SHIFT 16
CP_LOAD_STATE4_0_STATE_SRC(enum a4xx_state_src val)57252260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_0_STATE_SRC(enum a4xx_state_src val)
57352260ae4SRob Clark {
57452260ae4SRob Clark return ((val) << CP_LOAD_STATE4_0_STATE_SRC__SHIFT) & CP_LOAD_STATE4_0_STATE_SRC__MASK;
57552260ae4SRob Clark }
57652260ae4SRob Clark #define CP_LOAD_STATE4_0_STATE_BLOCK__MASK 0x003c0000
57752260ae4SRob Clark #define CP_LOAD_STATE4_0_STATE_BLOCK__SHIFT 18
CP_LOAD_STATE4_0_STATE_BLOCK(enum a4xx_state_block val)57852260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_0_STATE_BLOCK(enum a4xx_state_block val)
57952260ae4SRob Clark {
58052260ae4SRob Clark return ((val) << CP_LOAD_STATE4_0_STATE_BLOCK__SHIFT) & CP_LOAD_STATE4_0_STATE_BLOCK__MASK;
58152260ae4SRob Clark }
58252260ae4SRob Clark #define CP_LOAD_STATE4_0_NUM_UNIT__MASK 0xffc00000
58352260ae4SRob Clark #define CP_LOAD_STATE4_0_NUM_UNIT__SHIFT 22
CP_LOAD_STATE4_0_NUM_UNIT(uint32_t val)58452260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_0_NUM_UNIT(uint32_t val)
58552260ae4SRob Clark {
58652260ae4SRob Clark return ((val) << CP_LOAD_STATE4_0_NUM_UNIT__SHIFT) & CP_LOAD_STATE4_0_NUM_UNIT__MASK;
58752260ae4SRob Clark }
58852260ae4SRob Clark
58952260ae4SRob Clark #define REG_CP_LOAD_STATE4_1 0x00000001
59052260ae4SRob Clark #define CP_LOAD_STATE4_1_STATE_TYPE__MASK 0x00000003
59152260ae4SRob Clark #define CP_LOAD_STATE4_1_STATE_TYPE__SHIFT 0
CP_LOAD_STATE4_1_STATE_TYPE(enum a4xx_state_type val)59252260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_1_STATE_TYPE(enum a4xx_state_type val)
59352260ae4SRob Clark {
59452260ae4SRob Clark return ((val) << CP_LOAD_STATE4_1_STATE_TYPE__SHIFT) & CP_LOAD_STATE4_1_STATE_TYPE__MASK;
59552260ae4SRob Clark }
59652260ae4SRob Clark #define CP_LOAD_STATE4_1_EXT_SRC_ADDR__MASK 0xfffffffc
59752260ae4SRob Clark #define CP_LOAD_STATE4_1_EXT_SRC_ADDR__SHIFT 2
CP_LOAD_STATE4_1_EXT_SRC_ADDR(uint32_t val)59852260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_1_EXT_SRC_ADDR(uint32_t val)
59952260ae4SRob Clark {
60052260ae4SRob Clark return ((val >> 2) << CP_LOAD_STATE4_1_EXT_SRC_ADDR__SHIFT) & CP_LOAD_STATE4_1_EXT_SRC_ADDR__MASK;
60152260ae4SRob Clark }
60252260ae4SRob Clark
60352260ae4SRob Clark #define REG_CP_LOAD_STATE4_2 0x00000002
60452260ae4SRob Clark #define CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI__MASK 0xffffffff
60552260ae4SRob Clark #define CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI__SHIFT 0
CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI(uint32_t val)60652260ae4SRob Clark static inline uint32_t CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI(uint32_t val)
60752260ae4SRob Clark {
60852260ae4SRob Clark return ((val) << CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI__SHIFT) & CP_LOAD_STATE4_2_EXT_SRC_ADDR_HI__MASK;
609a26ae754SRob Clark }
610a26ae754SRob Clark
6112d756322SRob Clark #define REG_CP_LOAD_STATE6_0 0x00000000
6122d756322SRob Clark #define CP_LOAD_STATE6_0_DST_OFF__MASK 0x00003fff
6132d756322SRob Clark #define CP_LOAD_STATE6_0_DST_OFF__SHIFT 0
CP_LOAD_STATE6_0_DST_OFF(uint32_t val)6142d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_0_DST_OFF(uint32_t val)
6152d756322SRob Clark {
6162d756322SRob Clark return ((val) << CP_LOAD_STATE6_0_DST_OFF__SHIFT) & CP_LOAD_STATE6_0_DST_OFF__MASK;
6172d756322SRob Clark }
618c28c82e9SRob Clark #define CP_LOAD_STATE6_0_STATE_TYPE__MASK 0x0000c000
6192d756322SRob Clark #define CP_LOAD_STATE6_0_STATE_TYPE__SHIFT 14
CP_LOAD_STATE6_0_STATE_TYPE(enum a6xx_state_type val)6202d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_0_STATE_TYPE(enum a6xx_state_type val)
6212d756322SRob Clark {
6222d756322SRob Clark return ((val) << CP_LOAD_STATE6_0_STATE_TYPE__SHIFT) & CP_LOAD_STATE6_0_STATE_TYPE__MASK;
6232d756322SRob Clark }
6242d756322SRob Clark #define CP_LOAD_STATE6_0_STATE_SRC__MASK 0x00030000
6252d756322SRob Clark #define CP_LOAD_STATE6_0_STATE_SRC__SHIFT 16
CP_LOAD_STATE6_0_STATE_SRC(enum a6xx_state_src val)6262d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_0_STATE_SRC(enum a6xx_state_src val)
6272d756322SRob Clark {
6282d756322SRob Clark return ((val) << CP_LOAD_STATE6_0_STATE_SRC__SHIFT) & CP_LOAD_STATE6_0_STATE_SRC__MASK;
6292d756322SRob Clark }
6302d756322SRob Clark #define CP_LOAD_STATE6_0_STATE_BLOCK__MASK 0x003c0000
6312d756322SRob Clark #define CP_LOAD_STATE6_0_STATE_BLOCK__SHIFT 18
CP_LOAD_STATE6_0_STATE_BLOCK(enum a6xx_state_block val)6322d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_0_STATE_BLOCK(enum a6xx_state_block val)
6332d756322SRob Clark {
6342d756322SRob Clark return ((val) << CP_LOAD_STATE6_0_STATE_BLOCK__SHIFT) & CP_LOAD_STATE6_0_STATE_BLOCK__MASK;
6352d756322SRob Clark }
6362d756322SRob Clark #define CP_LOAD_STATE6_0_NUM_UNIT__MASK 0xffc00000
6372d756322SRob Clark #define CP_LOAD_STATE6_0_NUM_UNIT__SHIFT 22
CP_LOAD_STATE6_0_NUM_UNIT(uint32_t val)6382d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_0_NUM_UNIT(uint32_t val)
6392d756322SRob Clark {
6402d756322SRob Clark return ((val) << CP_LOAD_STATE6_0_NUM_UNIT__SHIFT) & CP_LOAD_STATE6_0_NUM_UNIT__MASK;
6412d756322SRob Clark }
6422d756322SRob Clark
6432d756322SRob Clark #define REG_CP_LOAD_STATE6_1 0x00000001
6442d756322SRob Clark #define CP_LOAD_STATE6_1_EXT_SRC_ADDR__MASK 0xfffffffc
6452d756322SRob Clark #define CP_LOAD_STATE6_1_EXT_SRC_ADDR__SHIFT 2
CP_LOAD_STATE6_1_EXT_SRC_ADDR(uint32_t val)6462d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_1_EXT_SRC_ADDR(uint32_t val)
6472d756322SRob Clark {
6482d756322SRob Clark return ((val >> 2) << CP_LOAD_STATE6_1_EXT_SRC_ADDR__SHIFT) & CP_LOAD_STATE6_1_EXT_SRC_ADDR__MASK;
6492d756322SRob Clark }
6502d756322SRob Clark
6512d756322SRob Clark #define REG_CP_LOAD_STATE6_2 0x00000002
6522d756322SRob Clark #define CP_LOAD_STATE6_2_EXT_SRC_ADDR_HI__MASK 0xffffffff
6532d756322SRob Clark #define CP_LOAD_STATE6_2_EXT_SRC_ADDR_HI__SHIFT 0
CP_LOAD_STATE6_2_EXT_SRC_ADDR_HI(uint32_t val)6542d756322SRob Clark static inline uint32_t CP_LOAD_STATE6_2_EXT_SRC_ADDR_HI(uint32_t val)
6552d756322SRob Clark {
6562d756322SRob Clark return ((val) << CP_LOAD_STATE6_2_EXT_SRC_ADDR_HI__SHIFT) & CP_LOAD_STATE6_2_EXT_SRC_ADDR_HI__MASK;
6572d756322SRob Clark }
6582d756322SRob Clark
659c28c82e9SRob Clark #define REG_CP_LOAD_STATE6_EXT_SRC_ADDR 0x00000001
660c28c82e9SRob Clark
66189301471SRob Clark #define REG_CP_DRAW_INDX_0 0x00000000
66289301471SRob Clark #define CP_DRAW_INDX_0_VIZ_QUERY__MASK 0xffffffff
66389301471SRob Clark #define CP_DRAW_INDX_0_VIZ_QUERY__SHIFT 0
CP_DRAW_INDX_0_VIZ_QUERY(uint32_t val)66489301471SRob Clark static inline uint32_t CP_DRAW_INDX_0_VIZ_QUERY(uint32_t val)
66589301471SRob Clark {
66689301471SRob Clark return ((val) << CP_DRAW_INDX_0_VIZ_QUERY__SHIFT) & CP_DRAW_INDX_0_VIZ_QUERY__MASK;
66789301471SRob Clark }
66889301471SRob Clark
66989301471SRob Clark #define REG_CP_DRAW_INDX_1 0x00000001
67089301471SRob Clark #define CP_DRAW_INDX_1_PRIM_TYPE__MASK 0x0000003f
67189301471SRob Clark #define CP_DRAW_INDX_1_PRIM_TYPE__SHIFT 0
CP_DRAW_INDX_1_PRIM_TYPE(enum pc_di_primtype val)67289301471SRob Clark static inline uint32_t CP_DRAW_INDX_1_PRIM_TYPE(enum pc_di_primtype val)
67389301471SRob Clark {
67489301471SRob Clark return ((val) << CP_DRAW_INDX_1_PRIM_TYPE__SHIFT) & CP_DRAW_INDX_1_PRIM_TYPE__MASK;
67589301471SRob Clark }
67689301471SRob Clark #define CP_DRAW_INDX_1_SOURCE_SELECT__MASK 0x000000c0
67789301471SRob Clark #define CP_DRAW_INDX_1_SOURCE_SELECT__SHIFT 6
CP_DRAW_INDX_1_SOURCE_SELECT(enum pc_di_src_sel val)67889301471SRob Clark static inline uint32_t CP_DRAW_INDX_1_SOURCE_SELECT(enum pc_di_src_sel val)
67989301471SRob Clark {
68089301471SRob Clark return ((val) << CP_DRAW_INDX_1_SOURCE_SELECT__SHIFT) & CP_DRAW_INDX_1_SOURCE_SELECT__MASK;
68189301471SRob Clark }
68289301471SRob Clark #define CP_DRAW_INDX_1_VIS_CULL__MASK 0x00000600
68389301471SRob Clark #define CP_DRAW_INDX_1_VIS_CULL__SHIFT 9
CP_DRAW_INDX_1_VIS_CULL(enum pc_di_vis_cull_mode val)68489301471SRob Clark static inline uint32_t CP_DRAW_INDX_1_VIS_CULL(enum pc_di_vis_cull_mode val)
68589301471SRob Clark {
68689301471SRob Clark return ((val) << CP_DRAW_INDX_1_VIS_CULL__SHIFT) & CP_DRAW_INDX_1_VIS_CULL__MASK;
68789301471SRob Clark }
68889301471SRob Clark #define CP_DRAW_INDX_1_INDEX_SIZE__MASK 0x00000800
68989301471SRob Clark #define CP_DRAW_INDX_1_INDEX_SIZE__SHIFT 11
CP_DRAW_INDX_1_INDEX_SIZE(enum pc_di_index_size val)69089301471SRob Clark static inline uint32_t CP_DRAW_INDX_1_INDEX_SIZE(enum pc_di_index_size val)
69189301471SRob Clark {
69289301471SRob Clark return ((val) << CP_DRAW_INDX_1_INDEX_SIZE__SHIFT) & CP_DRAW_INDX_1_INDEX_SIZE__MASK;
69389301471SRob Clark }
69489301471SRob Clark #define CP_DRAW_INDX_1_NOT_EOP 0x00001000
69589301471SRob Clark #define CP_DRAW_INDX_1_SMALL_INDEX 0x00002000
69689301471SRob Clark #define CP_DRAW_INDX_1_PRE_DRAW_INITIATOR_ENABLE 0x00004000
697bc00ae02SRob Clark #define CP_DRAW_INDX_1_NUM_INSTANCES__MASK 0xff000000
698bc00ae02SRob Clark #define CP_DRAW_INDX_1_NUM_INSTANCES__SHIFT 24
CP_DRAW_INDX_1_NUM_INSTANCES(uint32_t val)699bc00ae02SRob Clark static inline uint32_t CP_DRAW_INDX_1_NUM_INSTANCES(uint32_t val)
70089301471SRob Clark {
701bc00ae02SRob Clark return ((val) << CP_DRAW_INDX_1_NUM_INSTANCES__SHIFT) & CP_DRAW_INDX_1_NUM_INSTANCES__MASK;
70289301471SRob Clark }
70389301471SRob Clark
70489301471SRob Clark #define REG_CP_DRAW_INDX_2 0x00000002
70589301471SRob Clark #define CP_DRAW_INDX_2_NUM_INDICES__MASK 0xffffffff
70689301471SRob Clark #define CP_DRAW_INDX_2_NUM_INDICES__SHIFT 0
CP_DRAW_INDX_2_NUM_INDICES(uint32_t val)70789301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_NUM_INDICES(uint32_t val)
70889301471SRob Clark {
70989301471SRob Clark return ((val) << CP_DRAW_INDX_2_NUM_INDICES__SHIFT) & CP_DRAW_INDX_2_NUM_INDICES__MASK;
71089301471SRob Clark }
71189301471SRob Clark
712bc00ae02SRob Clark #define REG_CP_DRAW_INDX_3 0x00000003
713bc00ae02SRob Clark #define CP_DRAW_INDX_3_INDX_BASE__MASK 0xffffffff
714bc00ae02SRob Clark #define CP_DRAW_INDX_3_INDX_BASE__SHIFT 0
CP_DRAW_INDX_3_INDX_BASE(uint32_t val)715bc00ae02SRob Clark static inline uint32_t CP_DRAW_INDX_3_INDX_BASE(uint32_t val)
71689301471SRob Clark {
717bc00ae02SRob Clark return ((val) << CP_DRAW_INDX_3_INDX_BASE__SHIFT) & CP_DRAW_INDX_3_INDX_BASE__MASK;
71889301471SRob Clark }
71989301471SRob Clark
720bc00ae02SRob Clark #define REG_CP_DRAW_INDX_4 0x00000004
721bc00ae02SRob Clark #define CP_DRAW_INDX_4_INDX_SIZE__MASK 0xffffffff
722bc00ae02SRob Clark #define CP_DRAW_INDX_4_INDX_SIZE__SHIFT 0
CP_DRAW_INDX_4_INDX_SIZE(uint32_t val)723bc00ae02SRob Clark static inline uint32_t CP_DRAW_INDX_4_INDX_SIZE(uint32_t val)
72489301471SRob Clark {
725bc00ae02SRob Clark return ((val) << CP_DRAW_INDX_4_INDX_SIZE__SHIFT) & CP_DRAW_INDX_4_INDX_SIZE__MASK;
72689301471SRob Clark }
72789301471SRob Clark
72889301471SRob Clark #define REG_CP_DRAW_INDX_2_0 0x00000000
72989301471SRob Clark #define CP_DRAW_INDX_2_0_VIZ_QUERY__MASK 0xffffffff
73089301471SRob Clark #define CP_DRAW_INDX_2_0_VIZ_QUERY__SHIFT 0
CP_DRAW_INDX_2_0_VIZ_QUERY(uint32_t val)73189301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_0_VIZ_QUERY(uint32_t val)
73289301471SRob Clark {
73389301471SRob Clark return ((val) << CP_DRAW_INDX_2_0_VIZ_QUERY__SHIFT) & CP_DRAW_INDX_2_0_VIZ_QUERY__MASK;
73489301471SRob Clark }
73589301471SRob Clark
73689301471SRob Clark #define REG_CP_DRAW_INDX_2_1 0x00000001
73789301471SRob Clark #define CP_DRAW_INDX_2_1_PRIM_TYPE__MASK 0x0000003f
73889301471SRob Clark #define CP_DRAW_INDX_2_1_PRIM_TYPE__SHIFT 0
CP_DRAW_INDX_2_1_PRIM_TYPE(enum pc_di_primtype val)73989301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_1_PRIM_TYPE(enum pc_di_primtype val)
74089301471SRob Clark {
74189301471SRob Clark return ((val) << CP_DRAW_INDX_2_1_PRIM_TYPE__SHIFT) & CP_DRAW_INDX_2_1_PRIM_TYPE__MASK;
74289301471SRob Clark }
74389301471SRob Clark #define CP_DRAW_INDX_2_1_SOURCE_SELECT__MASK 0x000000c0
74489301471SRob Clark #define CP_DRAW_INDX_2_1_SOURCE_SELECT__SHIFT 6
CP_DRAW_INDX_2_1_SOURCE_SELECT(enum pc_di_src_sel val)74589301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_1_SOURCE_SELECT(enum pc_di_src_sel val)
74689301471SRob Clark {
74789301471SRob Clark return ((val) << CP_DRAW_INDX_2_1_SOURCE_SELECT__SHIFT) & CP_DRAW_INDX_2_1_SOURCE_SELECT__MASK;
74889301471SRob Clark }
74989301471SRob Clark #define CP_DRAW_INDX_2_1_VIS_CULL__MASK 0x00000600
75089301471SRob Clark #define CP_DRAW_INDX_2_1_VIS_CULL__SHIFT 9
CP_DRAW_INDX_2_1_VIS_CULL(enum pc_di_vis_cull_mode val)75189301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_1_VIS_CULL(enum pc_di_vis_cull_mode val)
75289301471SRob Clark {
75389301471SRob Clark return ((val) << CP_DRAW_INDX_2_1_VIS_CULL__SHIFT) & CP_DRAW_INDX_2_1_VIS_CULL__MASK;
75489301471SRob Clark }
75589301471SRob Clark #define CP_DRAW_INDX_2_1_INDEX_SIZE__MASK 0x00000800
75689301471SRob Clark #define CP_DRAW_INDX_2_1_INDEX_SIZE__SHIFT 11
CP_DRAW_INDX_2_1_INDEX_SIZE(enum pc_di_index_size val)75789301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_1_INDEX_SIZE(enum pc_di_index_size val)
75889301471SRob Clark {
75989301471SRob Clark return ((val) << CP_DRAW_INDX_2_1_INDEX_SIZE__SHIFT) & CP_DRAW_INDX_2_1_INDEX_SIZE__MASK;
76089301471SRob Clark }
76189301471SRob Clark #define CP_DRAW_INDX_2_1_NOT_EOP 0x00001000
76289301471SRob Clark #define CP_DRAW_INDX_2_1_SMALL_INDEX 0x00002000
76389301471SRob Clark #define CP_DRAW_INDX_2_1_PRE_DRAW_INITIATOR_ENABLE 0x00004000
764bc00ae02SRob Clark #define CP_DRAW_INDX_2_1_NUM_INSTANCES__MASK 0xff000000
765bc00ae02SRob Clark #define CP_DRAW_INDX_2_1_NUM_INSTANCES__SHIFT 24
CP_DRAW_INDX_2_1_NUM_INSTANCES(uint32_t val)766bc00ae02SRob Clark static inline uint32_t CP_DRAW_INDX_2_1_NUM_INSTANCES(uint32_t val)
76789301471SRob Clark {
768bc00ae02SRob Clark return ((val) << CP_DRAW_INDX_2_1_NUM_INSTANCES__SHIFT) & CP_DRAW_INDX_2_1_NUM_INSTANCES__MASK;
76989301471SRob Clark }
77089301471SRob Clark
77189301471SRob Clark #define REG_CP_DRAW_INDX_2_2 0x00000002
77289301471SRob Clark #define CP_DRAW_INDX_2_2_NUM_INDICES__MASK 0xffffffff
77389301471SRob Clark #define CP_DRAW_INDX_2_2_NUM_INDICES__SHIFT 0
CP_DRAW_INDX_2_2_NUM_INDICES(uint32_t val)77489301471SRob Clark static inline uint32_t CP_DRAW_INDX_2_2_NUM_INDICES(uint32_t val)
77589301471SRob Clark {
77689301471SRob Clark return ((val) << CP_DRAW_INDX_2_2_NUM_INDICES__SHIFT) & CP_DRAW_INDX_2_2_NUM_INDICES__MASK;
77789301471SRob Clark }
77889301471SRob Clark
77989301471SRob Clark #define REG_CP_DRAW_INDX_OFFSET_0 0x00000000
78089301471SRob Clark #define CP_DRAW_INDX_OFFSET_0_PRIM_TYPE__MASK 0x0000003f
78189301471SRob Clark #define CP_DRAW_INDX_OFFSET_0_PRIM_TYPE__SHIFT 0
CP_DRAW_INDX_OFFSET_0_PRIM_TYPE(enum pc_di_primtype val)78289301471SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_0_PRIM_TYPE(enum pc_di_primtype val)
78389301471SRob Clark {
78489301471SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_0_PRIM_TYPE__SHIFT) & CP_DRAW_INDX_OFFSET_0_PRIM_TYPE__MASK;
78589301471SRob Clark }
78689301471SRob Clark #define CP_DRAW_INDX_OFFSET_0_SOURCE_SELECT__MASK 0x000000c0
78789301471SRob Clark #define CP_DRAW_INDX_OFFSET_0_SOURCE_SELECT__SHIFT 6
CP_DRAW_INDX_OFFSET_0_SOURCE_SELECT(enum pc_di_src_sel val)78889301471SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_0_SOURCE_SELECT(enum pc_di_src_sel val)
78989301471SRob Clark {
79089301471SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_0_SOURCE_SELECT__SHIFT) & CP_DRAW_INDX_OFFSET_0_SOURCE_SELECT__MASK;
79189301471SRob Clark }
792a26ae754SRob Clark #define CP_DRAW_INDX_OFFSET_0_VIS_CULL__MASK 0x00000300
793a26ae754SRob Clark #define CP_DRAW_INDX_OFFSET_0_VIS_CULL__SHIFT 8
CP_DRAW_INDX_OFFSET_0_VIS_CULL(enum pc_di_vis_cull_mode val)794a26ae754SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_0_VIS_CULL(enum pc_di_vis_cull_mode val)
795a26ae754SRob Clark {
796a26ae754SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_0_VIS_CULL__SHIFT) & CP_DRAW_INDX_OFFSET_0_VIS_CULL__MASK;
797a26ae754SRob Clark }
7988a264743SRob Clark #define CP_DRAW_INDX_OFFSET_0_INDEX_SIZE__MASK 0x00000c00
7998a264743SRob Clark #define CP_DRAW_INDX_OFFSET_0_INDEX_SIZE__SHIFT 10
CP_DRAW_INDX_OFFSET_0_INDEX_SIZE(enum a4xx_index_size val)8008a264743SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_0_INDEX_SIZE(enum a4xx_index_size val)
80189301471SRob Clark {
80289301471SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_0_INDEX_SIZE__SHIFT) & CP_DRAW_INDX_OFFSET_0_INDEX_SIZE__MASK;
80389301471SRob Clark }
804c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_0_PATCH_TYPE__MASK 0x00003000
805c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_0_PATCH_TYPE__SHIFT 12
CP_DRAW_INDX_OFFSET_0_PATCH_TYPE(enum a6xx_patch_type val)806c28c82e9SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_0_PATCH_TYPE(enum a6xx_patch_type val)
807af6cb4c1SRob Clark {
808c28c82e9SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_0_PATCH_TYPE__SHIFT) & CP_DRAW_INDX_OFFSET_0_PATCH_TYPE__MASK;
809af6cb4c1SRob Clark }
810c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_0_GS_ENABLE 0x00010000
811c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_0_TESS_ENABLE 0x00020000
81289301471SRob Clark
81389301471SRob Clark #define REG_CP_DRAW_INDX_OFFSET_1 0x00000001
8148a264743SRob Clark #define CP_DRAW_INDX_OFFSET_1_NUM_INSTANCES__MASK 0xffffffff
8158a264743SRob Clark #define CP_DRAW_INDX_OFFSET_1_NUM_INSTANCES__SHIFT 0
CP_DRAW_INDX_OFFSET_1_NUM_INSTANCES(uint32_t val)8168a264743SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_1_NUM_INSTANCES(uint32_t val)
8178a264743SRob Clark {
8188a264743SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_1_NUM_INSTANCES__SHIFT) & CP_DRAW_INDX_OFFSET_1_NUM_INSTANCES__MASK;
8198a264743SRob Clark }
82089301471SRob Clark
82189301471SRob Clark #define REG_CP_DRAW_INDX_OFFSET_2 0x00000002
82289301471SRob Clark #define CP_DRAW_INDX_OFFSET_2_NUM_INDICES__MASK 0xffffffff
82389301471SRob Clark #define CP_DRAW_INDX_OFFSET_2_NUM_INDICES__SHIFT 0
CP_DRAW_INDX_OFFSET_2_NUM_INDICES(uint32_t val)82489301471SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_2_NUM_INDICES(uint32_t val)
82589301471SRob Clark {
82689301471SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_2_NUM_INDICES__SHIFT) & CP_DRAW_INDX_OFFSET_2_NUM_INDICES__MASK;
82789301471SRob Clark }
82889301471SRob Clark
829bc00ae02SRob Clark #define REG_CP_DRAW_INDX_OFFSET_3 0x00000003
830c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_3_FIRST_INDX__MASK 0xffffffff
831c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_3_FIRST_INDX__SHIFT 0
CP_DRAW_INDX_OFFSET_3_FIRST_INDX(uint32_t val)832c28c82e9SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_3_FIRST_INDX(uint32_t val)
833c28c82e9SRob Clark {
834c28c82e9SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_3_FIRST_INDX__SHIFT) & CP_DRAW_INDX_OFFSET_3_FIRST_INDX__MASK;
835c28c82e9SRob Clark }
836c28c82e9SRob Clark
837c28c82e9SRob Clark
838c28c82e9SRob Clark #define REG_CP_DRAW_INDX_OFFSET_4 0x00000004
839c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_4_INDX_BASE_LO__MASK 0xffffffff
840c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_4_INDX_BASE_LO__SHIFT 0
CP_DRAW_INDX_OFFSET_4_INDX_BASE_LO(uint32_t val)841c28c82e9SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_4_INDX_BASE_LO(uint32_t val)
842c28c82e9SRob Clark {
843c28c82e9SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_4_INDX_BASE_LO__SHIFT) & CP_DRAW_INDX_OFFSET_4_INDX_BASE_LO__MASK;
844c28c82e9SRob Clark }
845c28c82e9SRob Clark
846c28c82e9SRob Clark #define REG_CP_DRAW_INDX_OFFSET_5 0x00000005
847c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_5_INDX_BASE_HI__MASK 0xffffffff
848c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_5_INDX_BASE_HI__SHIFT 0
CP_DRAW_INDX_OFFSET_5_INDX_BASE_HI(uint32_t val)849c28c82e9SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_5_INDX_BASE_HI(uint32_t val)
850c28c82e9SRob Clark {
851c28c82e9SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_5_INDX_BASE_HI__SHIFT) & CP_DRAW_INDX_OFFSET_5_INDX_BASE_HI__MASK;
852c28c82e9SRob Clark }
853c28c82e9SRob Clark
854c28c82e9SRob Clark #define REG_CP_DRAW_INDX_OFFSET_INDX_BASE 0x00000004
855c28c82e9SRob Clark
856c28c82e9SRob Clark #define REG_CP_DRAW_INDX_OFFSET_6 0x00000006
857c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_6_MAX_INDICES__MASK 0xffffffff
858c28c82e9SRob Clark #define CP_DRAW_INDX_OFFSET_6_MAX_INDICES__SHIFT 0
CP_DRAW_INDX_OFFSET_6_MAX_INDICES(uint32_t val)859c28c82e9SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_6_MAX_INDICES(uint32_t val)
860c28c82e9SRob Clark {
861c28c82e9SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_6_MAX_INDICES__SHIFT) & CP_DRAW_INDX_OFFSET_6_MAX_INDICES__MASK;
862c28c82e9SRob Clark }
863bc00ae02SRob Clark
864bc00ae02SRob Clark #define REG_CP_DRAW_INDX_OFFSET_4 0x00000004
865bc00ae02SRob Clark #define CP_DRAW_INDX_OFFSET_4_INDX_BASE__MASK 0xffffffff
866bc00ae02SRob Clark #define CP_DRAW_INDX_OFFSET_4_INDX_BASE__SHIFT 0
CP_DRAW_INDX_OFFSET_4_INDX_BASE(uint32_t val)867bc00ae02SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_4_INDX_BASE(uint32_t val)
86889301471SRob Clark {
869bc00ae02SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_4_INDX_BASE__SHIFT) & CP_DRAW_INDX_OFFSET_4_INDX_BASE__MASK;
87089301471SRob Clark }
87189301471SRob Clark
872bc00ae02SRob Clark #define REG_CP_DRAW_INDX_OFFSET_5 0x00000005
873bc00ae02SRob Clark #define CP_DRAW_INDX_OFFSET_5_INDX_SIZE__MASK 0xffffffff
874bc00ae02SRob Clark #define CP_DRAW_INDX_OFFSET_5_INDX_SIZE__SHIFT 0
CP_DRAW_INDX_OFFSET_5_INDX_SIZE(uint32_t val)875bc00ae02SRob Clark static inline uint32_t CP_DRAW_INDX_OFFSET_5_INDX_SIZE(uint32_t val)
87689301471SRob Clark {
877bc00ae02SRob Clark return ((val) << CP_DRAW_INDX_OFFSET_5_INDX_SIZE__SHIFT) & CP_DRAW_INDX_OFFSET_5_INDX_SIZE__MASK;
87889301471SRob Clark }
87989301471SRob Clark
8802d756322SRob Clark #define REG_A4XX_CP_DRAW_INDIRECT_0 0x00000000
8812d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_PRIM_TYPE__MASK 0x0000003f
8822d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_PRIM_TYPE__SHIFT 0
A4XX_CP_DRAW_INDIRECT_0_PRIM_TYPE(enum pc_di_primtype val)8832d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDIRECT_0_PRIM_TYPE(enum pc_di_primtype val)
8842d756322SRob Clark {
8852d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDIRECT_0_PRIM_TYPE__SHIFT) & A4XX_CP_DRAW_INDIRECT_0_PRIM_TYPE__MASK;
8862d756322SRob Clark }
8872d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_SOURCE_SELECT__MASK 0x000000c0
8882d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_SOURCE_SELECT__SHIFT 6
A4XX_CP_DRAW_INDIRECT_0_SOURCE_SELECT(enum pc_di_src_sel val)8892d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDIRECT_0_SOURCE_SELECT(enum pc_di_src_sel val)
8902d756322SRob Clark {
8912d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDIRECT_0_SOURCE_SELECT__SHIFT) & A4XX_CP_DRAW_INDIRECT_0_SOURCE_SELECT__MASK;
8922d756322SRob Clark }
8932d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_VIS_CULL__MASK 0x00000300
8942d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_VIS_CULL__SHIFT 8
A4XX_CP_DRAW_INDIRECT_0_VIS_CULL(enum pc_di_vis_cull_mode val)8952d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDIRECT_0_VIS_CULL(enum pc_di_vis_cull_mode val)
8962d756322SRob Clark {
8972d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDIRECT_0_VIS_CULL__SHIFT) & A4XX_CP_DRAW_INDIRECT_0_VIS_CULL__MASK;
8982d756322SRob Clark }
8992d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_INDEX_SIZE__MASK 0x00000c00
9002d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_INDEX_SIZE__SHIFT 10
A4XX_CP_DRAW_INDIRECT_0_INDEX_SIZE(enum a4xx_index_size val)9012d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDIRECT_0_INDEX_SIZE(enum a4xx_index_size val)
9022d756322SRob Clark {
9032d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDIRECT_0_INDEX_SIZE__SHIFT) & A4XX_CP_DRAW_INDIRECT_0_INDEX_SIZE__MASK;
9042d756322SRob Clark }
905c28c82e9SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_PATCH_TYPE__MASK 0x00003000
906c28c82e9SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_PATCH_TYPE__SHIFT 12
A4XX_CP_DRAW_INDIRECT_0_PATCH_TYPE(enum a6xx_patch_type val)907c28c82e9SRob Clark static inline uint32_t A4XX_CP_DRAW_INDIRECT_0_PATCH_TYPE(enum a6xx_patch_type val)
9082d756322SRob Clark {
909c28c82e9SRob Clark return ((val) << A4XX_CP_DRAW_INDIRECT_0_PATCH_TYPE__SHIFT) & A4XX_CP_DRAW_INDIRECT_0_PATCH_TYPE__MASK;
9102d756322SRob Clark }
911c28c82e9SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_GS_ENABLE 0x00010000
912c28c82e9SRob Clark #define A4XX_CP_DRAW_INDIRECT_0_TESS_ENABLE 0x00020000
913c28c82e9SRob Clark
9142d756322SRob Clark
9152d756322SRob Clark #define REG_A4XX_CP_DRAW_INDIRECT_1 0x00000001
9162d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_1_INDIRECT__MASK 0xffffffff
9172d756322SRob Clark #define A4XX_CP_DRAW_INDIRECT_1_INDIRECT__SHIFT 0
A4XX_CP_DRAW_INDIRECT_1_INDIRECT(uint32_t val)9182d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDIRECT_1_INDIRECT(uint32_t val)
9192d756322SRob Clark {
9202d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDIRECT_1_INDIRECT__SHIFT) & A4XX_CP_DRAW_INDIRECT_1_INDIRECT__MASK;
9212d756322SRob Clark }
9222d756322SRob Clark
9232d756322SRob Clark
924c28c82e9SRob Clark #define REG_A5XX_CP_DRAW_INDIRECT_1 0x00000001
925c28c82e9SRob Clark #define A5XX_CP_DRAW_INDIRECT_1_INDIRECT_LO__MASK 0xffffffff
926c28c82e9SRob Clark #define A5XX_CP_DRAW_INDIRECT_1_INDIRECT_LO__SHIFT 0
A5XX_CP_DRAW_INDIRECT_1_INDIRECT_LO(uint32_t val)927c28c82e9SRob Clark static inline uint32_t A5XX_CP_DRAW_INDIRECT_1_INDIRECT_LO(uint32_t val)
928c28c82e9SRob Clark {
929c28c82e9SRob Clark return ((val) << A5XX_CP_DRAW_INDIRECT_1_INDIRECT_LO__SHIFT) & A5XX_CP_DRAW_INDIRECT_1_INDIRECT_LO__MASK;
930c28c82e9SRob Clark }
931c28c82e9SRob Clark
9322d756322SRob Clark #define REG_A5XX_CP_DRAW_INDIRECT_2 0x00000002
9332d756322SRob Clark #define A5XX_CP_DRAW_INDIRECT_2_INDIRECT_HI__MASK 0xffffffff
9342d756322SRob Clark #define A5XX_CP_DRAW_INDIRECT_2_INDIRECT_HI__SHIFT 0
A5XX_CP_DRAW_INDIRECT_2_INDIRECT_HI(uint32_t val)9352d756322SRob Clark static inline uint32_t A5XX_CP_DRAW_INDIRECT_2_INDIRECT_HI(uint32_t val)
9362d756322SRob Clark {
9372d756322SRob Clark return ((val) << A5XX_CP_DRAW_INDIRECT_2_INDIRECT_HI__SHIFT) & A5XX_CP_DRAW_INDIRECT_2_INDIRECT_HI__MASK;
9382d756322SRob Clark }
9392d756322SRob Clark
940c28c82e9SRob Clark #define REG_A5XX_CP_DRAW_INDIRECT_INDIRECT 0x00000001
941c28c82e9SRob Clark
9422d756322SRob Clark #define REG_A4XX_CP_DRAW_INDX_INDIRECT_0 0x00000000
9432d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_PRIM_TYPE__MASK 0x0000003f
9442d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_PRIM_TYPE__SHIFT 0
A4XX_CP_DRAW_INDX_INDIRECT_0_PRIM_TYPE(enum pc_di_primtype val)9452d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_0_PRIM_TYPE(enum pc_di_primtype val)
9462d756322SRob Clark {
9472d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_0_PRIM_TYPE__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_0_PRIM_TYPE__MASK;
9482d756322SRob Clark }
9492d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_SOURCE_SELECT__MASK 0x000000c0
9502d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_SOURCE_SELECT__SHIFT 6
A4XX_CP_DRAW_INDX_INDIRECT_0_SOURCE_SELECT(enum pc_di_src_sel val)9512d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_0_SOURCE_SELECT(enum pc_di_src_sel val)
9522d756322SRob Clark {
9532d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_0_SOURCE_SELECT__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_0_SOURCE_SELECT__MASK;
9542d756322SRob Clark }
9552d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_VIS_CULL__MASK 0x00000300
9562d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_VIS_CULL__SHIFT 8
A4XX_CP_DRAW_INDX_INDIRECT_0_VIS_CULL(enum pc_di_vis_cull_mode val)9572d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_0_VIS_CULL(enum pc_di_vis_cull_mode val)
9582d756322SRob Clark {
9592d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_0_VIS_CULL__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_0_VIS_CULL__MASK;
9602d756322SRob Clark }
9612d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_INDEX_SIZE__MASK 0x00000c00
9622d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_INDEX_SIZE__SHIFT 10
A4XX_CP_DRAW_INDX_INDIRECT_0_INDEX_SIZE(enum a4xx_index_size val)9632d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_0_INDEX_SIZE(enum a4xx_index_size val)
9642d756322SRob Clark {
9652d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_0_INDEX_SIZE__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_0_INDEX_SIZE__MASK;
9662d756322SRob Clark }
967c28c82e9SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_PATCH_TYPE__MASK 0x00003000
968c28c82e9SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_PATCH_TYPE__SHIFT 12
A4XX_CP_DRAW_INDX_INDIRECT_0_PATCH_TYPE(enum a6xx_patch_type val)969c28c82e9SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_0_PATCH_TYPE(enum a6xx_patch_type val)
9702d756322SRob Clark {
971c28c82e9SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_0_PATCH_TYPE__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_0_PATCH_TYPE__MASK;
9722d756322SRob Clark }
973c28c82e9SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_GS_ENABLE 0x00010000
974c28c82e9SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_0_TESS_ENABLE 0x00020000
9752d756322SRob Clark
9762d756322SRob Clark
9772d756322SRob Clark #define REG_A4XX_CP_DRAW_INDX_INDIRECT_1 0x00000001
9782d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE__MASK 0xffffffff
9792d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE__SHIFT 0
A4XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE(uint32_t val)9802d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE(uint32_t val)
9812d756322SRob Clark {
9822d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE__MASK;
9832d756322SRob Clark }
9842d756322SRob Clark
9852d756322SRob Clark #define REG_A4XX_CP_DRAW_INDX_INDIRECT_2 0x00000002
9862d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_2_INDX_SIZE__MASK 0xffffffff
9872d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_2_INDX_SIZE__SHIFT 0
A4XX_CP_DRAW_INDX_INDIRECT_2_INDX_SIZE(uint32_t val)9882d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_2_INDX_SIZE(uint32_t val)
9892d756322SRob Clark {
9902d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_2_INDX_SIZE__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_2_INDX_SIZE__MASK;
9912d756322SRob Clark }
9922d756322SRob Clark
9932d756322SRob Clark #define REG_A4XX_CP_DRAW_INDX_INDIRECT_3 0x00000003
9942d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_3_INDIRECT__MASK 0xffffffff
9952d756322SRob Clark #define A4XX_CP_DRAW_INDX_INDIRECT_3_INDIRECT__SHIFT 0
A4XX_CP_DRAW_INDX_INDIRECT_3_INDIRECT(uint32_t val)9962d756322SRob Clark static inline uint32_t A4XX_CP_DRAW_INDX_INDIRECT_3_INDIRECT(uint32_t val)
9972d756322SRob Clark {
9982d756322SRob Clark return ((val) << A4XX_CP_DRAW_INDX_INDIRECT_3_INDIRECT__SHIFT) & A4XX_CP_DRAW_INDX_INDIRECT_3_INDIRECT__MASK;
9992d756322SRob Clark }
10002d756322SRob Clark
10012d756322SRob Clark
10022d756322SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_1 0x00000001
10032d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE_LO__MASK 0xffffffff
10042d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE_LO__SHIFT 0
A5XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE_LO(uint32_t val)10052d756322SRob Clark static inline uint32_t A5XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE_LO(uint32_t val)
10062d756322SRob Clark {
10072d756322SRob Clark return ((val) << A5XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE_LO__SHIFT) & A5XX_CP_DRAW_INDX_INDIRECT_1_INDX_BASE_LO__MASK;
10082d756322SRob Clark }
10092d756322SRob Clark
10102d756322SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_2 0x00000002
10112d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_2_INDX_BASE_HI__MASK 0xffffffff
10122d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_2_INDX_BASE_HI__SHIFT 0
A5XX_CP_DRAW_INDX_INDIRECT_2_INDX_BASE_HI(uint32_t val)10132d756322SRob Clark static inline uint32_t A5XX_CP_DRAW_INDX_INDIRECT_2_INDX_BASE_HI(uint32_t val)
10142d756322SRob Clark {
10152d756322SRob Clark return ((val) << A5XX_CP_DRAW_INDX_INDIRECT_2_INDX_BASE_HI__SHIFT) & A5XX_CP_DRAW_INDX_INDIRECT_2_INDX_BASE_HI__MASK;
10162d756322SRob Clark }
10172d756322SRob Clark
1018c28c82e9SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_INDX_BASE 0x00000001
1019c28c82e9SRob Clark
10202d756322SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_3 0x00000003
10212d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_3_MAX_INDICES__MASK 0xffffffff
10222d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_3_MAX_INDICES__SHIFT 0
A5XX_CP_DRAW_INDX_INDIRECT_3_MAX_INDICES(uint32_t val)10232d756322SRob Clark static inline uint32_t A5XX_CP_DRAW_INDX_INDIRECT_3_MAX_INDICES(uint32_t val)
10242d756322SRob Clark {
10252d756322SRob Clark return ((val) << A5XX_CP_DRAW_INDX_INDIRECT_3_MAX_INDICES__SHIFT) & A5XX_CP_DRAW_INDX_INDIRECT_3_MAX_INDICES__MASK;
10262d756322SRob Clark }
10272d756322SRob Clark
10282d756322SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_4 0x00000004
10292d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_4_INDIRECT_LO__MASK 0xffffffff
10302d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_4_INDIRECT_LO__SHIFT 0
A5XX_CP_DRAW_INDX_INDIRECT_4_INDIRECT_LO(uint32_t val)10312d756322SRob Clark static inline uint32_t A5XX_CP_DRAW_INDX_INDIRECT_4_INDIRECT_LO(uint32_t val)
10322d756322SRob Clark {
10332d756322SRob Clark return ((val) << A5XX_CP_DRAW_INDX_INDIRECT_4_INDIRECT_LO__SHIFT) & A5XX_CP_DRAW_INDX_INDIRECT_4_INDIRECT_LO__MASK;
10342d756322SRob Clark }
10352d756322SRob Clark
10362d756322SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_5 0x00000005
10372d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_5_INDIRECT_HI__MASK 0xffffffff
10382d756322SRob Clark #define A5XX_CP_DRAW_INDX_INDIRECT_5_INDIRECT_HI__SHIFT 0
A5XX_CP_DRAW_INDX_INDIRECT_5_INDIRECT_HI(uint32_t val)10392d756322SRob Clark static inline uint32_t A5XX_CP_DRAW_INDX_INDIRECT_5_INDIRECT_HI(uint32_t val)
10402d756322SRob Clark {
10412d756322SRob Clark return ((val) << A5XX_CP_DRAW_INDX_INDIRECT_5_INDIRECT_HI__SHIFT) & A5XX_CP_DRAW_INDX_INDIRECT_5_INDIRECT_HI__MASK;
10422d756322SRob Clark }
10432d756322SRob Clark
1044c28c82e9SRob Clark #define REG_A5XX_CP_DRAW_INDX_INDIRECT_INDIRECT 0x00000004
1045c28c82e9SRob Clark
1046c28c82e9SRob Clark #define REG_A6XX_CP_DRAW_INDIRECT_MULTI_0 0x00000000
1047c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_PRIM_TYPE__MASK 0x0000003f
1048c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_PRIM_TYPE__SHIFT 0
A6XX_CP_DRAW_INDIRECT_MULTI_0_PRIM_TYPE(enum pc_di_primtype val)1049c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_0_PRIM_TYPE(enum pc_di_primtype val)
1050c28c82e9SRob Clark {
1051c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_0_PRIM_TYPE__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_0_PRIM_TYPE__MASK;
1052c28c82e9SRob Clark }
1053c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_SOURCE_SELECT__MASK 0x000000c0
1054c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_SOURCE_SELECT__SHIFT 6
A6XX_CP_DRAW_INDIRECT_MULTI_0_SOURCE_SELECT(enum pc_di_src_sel val)1055c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_0_SOURCE_SELECT(enum pc_di_src_sel val)
1056c28c82e9SRob Clark {
1057c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_0_SOURCE_SELECT__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_0_SOURCE_SELECT__MASK;
1058c28c82e9SRob Clark }
1059c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_VIS_CULL__MASK 0x00000300
1060c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_VIS_CULL__SHIFT 8
A6XX_CP_DRAW_INDIRECT_MULTI_0_VIS_CULL(enum pc_di_vis_cull_mode val)1061c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_0_VIS_CULL(enum pc_di_vis_cull_mode val)
1062c28c82e9SRob Clark {
1063c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_0_VIS_CULL__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_0_VIS_CULL__MASK;
1064c28c82e9SRob Clark }
1065c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_INDEX_SIZE__MASK 0x00000c00
1066c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_INDEX_SIZE__SHIFT 10
A6XX_CP_DRAW_INDIRECT_MULTI_0_INDEX_SIZE(enum a4xx_index_size val)1067c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_0_INDEX_SIZE(enum a4xx_index_size val)
1068c28c82e9SRob Clark {
1069c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_0_INDEX_SIZE__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_0_INDEX_SIZE__MASK;
1070c28c82e9SRob Clark }
1071c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_PATCH_TYPE__MASK 0x00003000
1072c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_PATCH_TYPE__SHIFT 12
A6XX_CP_DRAW_INDIRECT_MULTI_0_PATCH_TYPE(enum a6xx_patch_type val)1073c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_0_PATCH_TYPE(enum a6xx_patch_type val)
1074c28c82e9SRob Clark {
1075c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_0_PATCH_TYPE__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_0_PATCH_TYPE__MASK;
1076c28c82e9SRob Clark }
1077c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_GS_ENABLE 0x00010000
1078c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_0_TESS_ENABLE 0x00020000
1079c28c82e9SRob Clark
1080c28c82e9SRob Clark #define REG_A6XX_CP_DRAW_INDIRECT_MULTI_1 0x00000001
1081c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_1_OPCODE__MASK 0x0000000f
1082c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_1_OPCODE__SHIFT 0
A6XX_CP_DRAW_INDIRECT_MULTI_1_OPCODE(enum a6xx_draw_indirect_opcode val)1083c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_1_OPCODE(enum a6xx_draw_indirect_opcode val)
1084c28c82e9SRob Clark {
1085c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_1_OPCODE__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_1_OPCODE__MASK;
1086c28c82e9SRob Clark }
1087c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF__MASK 0x003fff00
1088c28c82e9SRob Clark #define A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF__SHIFT 8
A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF(uint32_t val)1089c28c82e9SRob Clark static inline uint32_t A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF(uint32_t val)
1090c28c82e9SRob Clark {
1091c28c82e9SRob Clark return ((val) << A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF__SHIFT) & A6XX_CP_DRAW_INDIRECT_MULTI_1_DST_OFF__MASK;
1092c28c82e9SRob Clark }
1093c28c82e9SRob Clark
1094cc4c26d4SRob Clark #define REG_A6XX_CP_DRAW_INDIRECT_MULTI_DRAW_COUNT 0x00000002
1095cc4c26d4SRob Clark
1096cc4c26d4SRob Clark
1097cc4c26d4SRob Clark #define REG_A6XX_CP_DRAW_INDIRECT_MULTI_INDIRECT 0x00000003
1098cc4c26d4SRob Clark
1099cc4c26d4SRob Clark #define REG_A6XX_CP_DRAW_INDIRECT_MULTI_STRIDE 0x00000005
1100cc4c26d4SRob Clark
1101cc4c26d4SRob Clark
1102cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDEX_INDEXED 0x00000003
1103cc4c26d4SRob Clark
1104cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_MAX_INDICES_INDEXED 0x00000005
1105cc4c26d4SRob Clark
1106cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_INDEXED 0x00000006
1107cc4c26d4SRob Clark
1108cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_STRIDE_INDEXED 0x00000008
1109cc4c26d4SRob Clark
1110cc4c26d4SRob Clark
1111cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_INDIRECT 0x00000003
1112cc4c26d4SRob Clark
1113cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_COUNT_INDIRECT 0x00000005
1114cc4c26d4SRob Clark
1115cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_STRIDE_INDIRECT 0x00000007
1116cc4c26d4SRob Clark
1117cc4c26d4SRob Clark
1118cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDEX_INDIRECT_INDEXED 0x00000003
1119cc4c26d4SRob Clark
1120cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_MAX_INDICES_INDIRECT_INDEXED 0x00000005
1121cc4c26d4SRob Clark
1122cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_INDIRECT_INDEXED 0x00000006
1123cc4c26d4SRob Clark
1124cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_INDIRECT_COUNT_INDIRECT_INDEXED 0x00000008
1125cc4c26d4SRob Clark
1126cc4c26d4SRob Clark #define REG_CP_DRAW_INDIRECT_MULTI_STRIDE_INDIRECT_INDEXED 0x0000000a
1127cc4c26d4SRob Clark
1128cc4c26d4SRob Clark #define REG_CP_DRAW_PRED_ENABLE_GLOBAL_0 0x00000000
1129cc4c26d4SRob Clark #define CP_DRAW_PRED_ENABLE_GLOBAL_0_ENABLE 0x00000001
1130cc4c26d4SRob Clark
1131cc4c26d4SRob Clark #define REG_CP_DRAW_PRED_ENABLE_LOCAL_0 0x00000000
1132cc4c26d4SRob Clark #define CP_DRAW_PRED_ENABLE_LOCAL_0_ENABLE 0x00000001
1133cc4c26d4SRob Clark
1134cc4c26d4SRob Clark #define REG_CP_DRAW_PRED_SET_0 0x00000000
1135cc4c26d4SRob Clark #define CP_DRAW_PRED_SET_0_SRC__MASK 0x000000f0
1136cc4c26d4SRob Clark #define CP_DRAW_PRED_SET_0_SRC__SHIFT 4
CP_DRAW_PRED_SET_0_SRC(enum cp_draw_pred_src val)1137cc4c26d4SRob Clark static inline uint32_t CP_DRAW_PRED_SET_0_SRC(enum cp_draw_pred_src val)
1138c28c82e9SRob Clark {
1139cc4c26d4SRob Clark return ((val) << CP_DRAW_PRED_SET_0_SRC__SHIFT) & CP_DRAW_PRED_SET_0_SRC__MASK;
1140cc4c26d4SRob Clark }
1141cc4c26d4SRob Clark #define CP_DRAW_PRED_SET_0_TEST__MASK 0x00000100
1142cc4c26d4SRob Clark #define CP_DRAW_PRED_SET_0_TEST__SHIFT 8
CP_DRAW_PRED_SET_0_TEST(enum cp_draw_pred_test val)1143cc4c26d4SRob Clark static inline uint32_t CP_DRAW_PRED_SET_0_TEST(enum cp_draw_pred_test val)
1144cc4c26d4SRob Clark {
1145cc4c26d4SRob Clark return ((val) << CP_DRAW_PRED_SET_0_TEST__SHIFT) & CP_DRAW_PRED_SET_0_TEST__MASK;
1146c28c82e9SRob Clark }
1147c28c82e9SRob Clark
1148cc4c26d4SRob Clark #define REG_CP_DRAW_PRED_SET_MEM_ADDR 0x00000001
1149c28c82e9SRob Clark
REG_CP_SET_DRAW_STATE_(uint32_t i0)1150a26ae754SRob Clark static inline uint32_t REG_CP_SET_DRAW_STATE_(uint32_t i0) { return 0x00000000 + 0x3*i0; }
1151a26ae754SRob Clark
REG_CP_SET_DRAW_STATE__0(uint32_t i0)1152a26ae754SRob Clark static inline uint32_t REG_CP_SET_DRAW_STATE__0(uint32_t i0) { return 0x00000000 + 0x3*i0; }
1153a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_COUNT__MASK 0x0000ffff
1154a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_COUNT__SHIFT 0
CP_SET_DRAW_STATE__0_COUNT(uint32_t val)1155a26ae754SRob Clark static inline uint32_t CP_SET_DRAW_STATE__0_COUNT(uint32_t val)
115689301471SRob Clark {
1157a26ae754SRob Clark return ((val) << CP_SET_DRAW_STATE__0_COUNT__SHIFT) & CP_SET_DRAW_STATE__0_COUNT__MASK;
115889301471SRob Clark }
1159a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_DIRTY 0x00010000
1160a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_DISABLE 0x00020000
1161a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_DISABLE_ALL_GROUPS 0x00040000
1162a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_LOAD_IMMED 0x00080000
1163c28c82e9SRob Clark #define CP_SET_DRAW_STATE__0_BINNING 0x00100000
1164c28c82e9SRob Clark #define CP_SET_DRAW_STATE__0_GMEM 0x00200000
1165c28c82e9SRob Clark #define CP_SET_DRAW_STATE__0_SYSMEM 0x00400000
1166a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_GROUP_ID__MASK 0x1f000000
1167a26ae754SRob Clark #define CP_SET_DRAW_STATE__0_GROUP_ID__SHIFT 24
CP_SET_DRAW_STATE__0_GROUP_ID(uint32_t val)1168a26ae754SRob Clark static inline uint32_t CP_SET_DRAW_STATE__0_GROUP_ID(uint32_t val)
116989301471SRob Clark {
1170a26ae754SRob Clark return ((val) << CP_SET_DRAW_STATE__0_GROUP_ID__SHIFT) & CP_SET_DRAW_STATE__0_GROUP_ID__MASK;
117189301471SRob Clark }
117289301471SRob Clark
REG_CP_SET_DRAW_STATE__1(uint32_t i0)1173a26ae754SRob Clark static inline uint32_t REG_CP_SET_DRAW_STATE__1(uint32_t i0) { return 0x00000001 + 0x3*i0; }
1174a26ae754SRob Clark #define CP_SET_DRAW_STATE__1_ADDR_LO__MASK 0xffffffff
1175a26ae754SRob Clark #define CP_SET_DRAW_STATE__1_ADDR_LO__SHIFT 0
CP_SET_DRAW_STATE__1_ADDR_LO(uint32_t val)1176a26ae754SRob Clark static inline uint32_t CP_SET_DRAW_STATE__1_ADDR_LO(uint32_t val)
117789301471SRob Clark {
1178a26ae754SRob Clark return ((val) << CP_SET_DRAW_STATE__1_ADDR_LO__SHIFT) & CP_SET_DRAW_STATE__1_ADDR_LO__MASK;
1179a26ae754SRob Clark }
1180a26ae754SRob Clark
REG_CP_SET_DRAW_STATE__2(uint32_t i0)1181a26ae754SRob Clark static inline uint32_t REG_CP_SET_DRAW_STATE__2(uint32_t i0) { return 0x00000002 + 0x3*i0; }
1182a26ae754SRob Clark #define CP_SET_DRAW_STATE__2_ADDR_HI__MASK 0xffffffff
1183a26ae754SRob Clark #define CP_SET_DRAW_STATE__2_ADDR_HI__SHIFT 0
CP_SET_DRAW_STATE__2_ADDR_HI(uint32_t val)1184a26ae754SRob Clark static inline uint32_t CP_SET_DRAW_STATE__2_ADDR_HI(uint32_t val)
1185a26ae754SRob Clark {
1186a26ae754SRob Clark return ((val) << CP_SET_DRAW_STATE__2_ADDR_HI__SHIFT) & CP_SET_DRAW_STATE__2_ADDR_HI__MASK;
118789301471SRob Clark }
118889301471SRob Clark
1189902e6eb8SRob Clark #define REG_CP_SET_BIN_0 0x00000000
1190902e6eb8SRob Clark
1191902e6eb8SRob Clark #define REG_CP_SET_BIN_1 0x00000001
1192902e6eb8SRob Clark #define CP_SET_BIN_1_X1__MASK 0x0000ffff
1193902e6eb8SRob Clark #define CP_SET_BIN_1_X1__SHIFT 0
CP_SET_BIN_1_X1(uint32_t val)1194902e6eb8SRob Clark static inline uint32_t CP_SET_BIN_1_X1(uint32_t val)
1195902e6eb8SRob Clark {
1196902e6eb8SRob Clark return ((val) << CP_SET_BIN_1_X1__SHIFT) & CP_SET_BIN_1_X1__MASK;
1197902e6eb8SRob Clark }
1198902e6eb8SRob Clark #define CP_SET_BIN_1_Y1__MASK 0xffff0000
1199902e6eb8SRob Clark #define CP_SET_BIN_1_Y1__SHIFT 16
CP_SET_BIN_1_Y1(uint32_t val)1200902e6eb8SRob Clark static inline uint32_t CP_SET_BIN_1_Y1(uint32_t val)
1201902e6eb8SRob Clark {
1202902e6eb8SRob Clark return ((val) << CP_SET_BIN_1_Y1__SHIFT) & CP_SET_BIN_1_Y1__MASK;
1203902e6eb8SRob Clark }
1204902e6eb8SRob Clark
1205902e6eb8SRob Clark #define REG_CP_SET_BIN_2 0x00000002
1206902e6eb8SRob Clark #define CP_SET_BIN_2_X2__MASK 0x0000ffff
1207902e6eb8SRob Clark #define CP_SET_BIN_2_X2__SHIFT 0
CP_SET_BIN_2_X2(uint32_t val)1208902e6eb8SRob Clark static inline uint32_t CP_SET_BIN_2_X2(uint32_t val)
1209902e6eb8SRob Clark {
1210902e6eb8SRob Clark return ((val) << CP_SET_BIN_2_X2__SHIFT) & CP_SET_BIN_2_X2__MASK;
1211902e6eb8SRob Clark }
1212902e6eb8SRob Clark #define CP_SET_BIN_2_Y2__MASK 0xffff0000
1213902e6eb8SRob Clark #define CP_SET_BIN_2_Y2__SHIFT 16
CP_SET_BIN_2_Y2(uint32_t val)1214902e6eb8SRob Clark static inline uint32_t CP_SET_BIN_2_Y2(uint32_t val)
1215902e6eb8SRob Clark {
1216902e6eb8SRob Clark return ((val) << CP_SET_BIN_2_Y2__SHIFT) & CP_SET_BIN_2_Y2__MASK;
1217902e6eb8SRob Clark }
1218902e6eb8SRob Clark
121989301471SRob Clark #define REG_CP_SET_BIN_DATA_0 0x00000000
122089301471SRob Clark #define CP_SET_BIN_DATA_0_BIN_DATA_ADDR__MASK 0xffffffff
122189301471SRob Clark #define CP_SET_BIN_DATA_0_BIN_DATA_ADDR__SHIFT 0
CP_SET_BIN_DATA_0_BIN_DATA_ADDR(uint32_t val)122289301471SRob Clark static inline uint32_t CP_SET_BIN_DATA_0_BIN_DATA_ADDR(uint32_t val)
122389301471SRob Clark {
122489301471SRob Clark return ((val) << CP_SET_BIN_DATA_0_BIN_DATA_ADDR__SHIFT) & CP_SET_BIN_DATA_0_BIN_DATA_ADDR__MASK;
122589301471SRob Clark }
122689301471SRob Clark
122789301471SRob Clark #define REG_CP_SET_BIN_DATA_1 0x00000001
122889301471SRob Clark #define CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS__MASK 0xffffffff
122989301471SRob Clark #define CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS__SHIFT 0
CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS(uint32_t val)123089301471SRob Clark static inline uint32_t CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS(uint32_t val)
123189301471SRob Clark {
123289301471SRob Clark return ((val) << CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS__SHIFT) & CP_SET_BIN_DATA_1_BIN_SIZE_ADDRESS__MASK;
123389301471SRob Clark }
123489301471SRob Clark
123552260ae4SRob Clark #define REG_CP_SET_BIN_DATA5_0 0x00000000
123652260ae4SRob Clark #define CP_SET_BIN_DATA5_0_VSC_SIZE__MASK 0x003f0000
123752260ae4SRob Clark #define CP_SET_BIN_DATA5_0_VSC_SIZE__SHIFT 16
CP_SET_BIN_DATA5_0_VSC_SIZE(uint32_t val)123852260ae4SRob Clark static inline uint32_t CP_SET_BIN_DATA5_0_VSC_SIZE(uint32_t val)
123952260ae4SRob Clark {
124052260ae4SRob Clark return ((val) << CP_SET_BIN_DATA5_0_VSC_SIZE__SHIFT) & CP_SET_BIN_DATA5_0_VSC_SIZE__MASK;
124152260ae4SRob Clark }
124252260ae4SRob Clark #define CP_SET_BIN_DATA5_0_VSC_N__MASK 0x07c00000
124352260ae4SRob Clark #define CP_SET_BIN_DATA5_0_VSC_N__SHIFT 22
CP_SET_BIN_DATA5_0_VSC_N(uint32_t val)124452260ae4SRob Clark static inline uint32_t CP_SET_BIN_DATA5_0_VSC_N(uint32_t val)
124552260ae4SRob Clark {
124652260ae4SRob Clark return ((val) << CP_SET_BIN_DATA5_0_VSC_N__SHIFT) & CP_SET_BIN_DATA5_0_VSC_N__MASK;
124752260ae4SRob Clark }
124852260ae4SRob Clark
124952260ae4SRob Clark #define REG_CP_SET_BIN_DATA5_1 0x00000001
125052260ae4SRob Clark #define CP_SET_BIN_DATA5_1_BIN_DATA_ADDR_LO__MASK 0xffffffff
125152260ae4SRob Clark #define CP_SET_BIN_DATA5_1_BIN_DATA_ADDR_LO__SHIFT 0
CP_SET_BIN_DATA5_1_BIN_DATA_ADDR_LO(uint32_t val)125252260ae4SRob Clark static inline uint32_t CP_SET_BIN_DATA5_1_BIN_DATA_ADDR_LO(uint32_t val)
125352260ae4SRob Clark {
125452260ae4SRob Clark return ((val) << CP_SET_BIN_DATA5_1_BIN_DATA_ADDR_LO__SHIFT) & CP_SET_BIN_DATA5_1_BIN_DATA_ADDR_LO__MASK;
125552260ae4SRob Clark }
125652260ae4SRob Clark
125752260ae4SRob Clark #define REG_CP_SET_BIN_DATA5_2 0x00000002
125852260ae4SRob Clark #define CP_SET_BIN_DATA5_2_BIN_DATA_ADDR_HI__MASK 0xffffffff
125952260ae4SRob Clark #define CP_SET_BIN_DATA5_2_BIN_DATA_ADDR_HI__SHIFT 0
CP_SET_BIN_DATA5_2_BIN_DATA_ADDR_HI(uint32_t val)126052260ae4SRob Clark static inline uint32_t CP_SET_BIN_DATA5_2_BIN_DATA_ADDR_HI(uint32_t val)
126152260ae4SRob Clark {
126252260ae4SRob Clark return ((val) << CP_SET_BIN_DATA5_2_BIN_DATA_ADDR_HI__SHIFT) & CP_SET_BIN_DATA5_2_BIN_DATA_ADDR_HI__MASK;
126352260ae4SRob Clark }
126452260ae4SRob Clark
126552260ae4SRob Clark #define REG_CP_SET_BIN_DATA5_3 0x00000003
126652260ae4SRob Clark #define CP_SET_BIN_DATA5_3_BIN_SIZE_ADDRESS_LO__MASK 0xffffffff
126752260ae4SRob Clark #define CP_SET_BIN_DATA5_3_BIN_SIZE_ADDRESS_LO__SHIFT 0
CP_SET_BIN_DATA5_3_BIN_SIZE_ADDRESS_LO(uint32_t val)126852260ae4SRob Clark static inline uint32_t CP_SET_BIN_DATA5_3_BIN_SIZE_ADDRESS_LO(uint32_t val)
126952260ae4SRob Clark {
127052260ae4SRob Clark return ((val) << CP_SET_BIN_DATA5_3_BIN_SIZE_ADDRESS_LO__SHIFT) & CP_SET_BIN_DATA5_3_BIN_SIZE_ADDRESS_LO__MASK;
127152260ae4SRob Clark }
127252260ae4SRob Clark
127352260ae4SRob Clark #define REG_CP_SET_BIN_DATA5_4 0x00000004
127452260ae4SRob Clark #define CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI__MASK 0xffffffff
127552260ae4SRob Clark #define CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI__SHIFT 0
CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI(uint32_t val)127652260ae4SRob Clark static inline uint32_t CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI(uint32_t val)
127752260ae4SRob Clark {
127852260ae4SRob Clark return ((val) << CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI__SHIFT) & CP_SET_BIN_DATA5_4_BIN_SIZE_ADDRESS_HI__MASK;
127952260ae4SRob Clark }
128052260ae4SRob Clark
12812d756322SRob Clark #define REG_CP_SET_BIN_DATA5_5 0x00000005
1282c28c82e9SRob Clark #define CP_SET_BIN_DATA5_5_BIN_PRIM_STRM_LO__MASK 0xffffffff
1283c28c82e9SRob Clark #define CP_SET_BIN_DATA5_5_BIN_PRIM_STRM_LO__SHIFT 0
CP_SET_BIN_DATA5_5_BIN_PRIM_STRM_LO(uint32_t val)1284c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_5_BIN_PRIM_STRM_LO(uint32_t val)
12852d756322SRob Clark {
1286c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_5_BIN_PRIM_STRM_LO__SHIFT) & CP_SET_BIN_DATA5_5_BIN_PRIM_STRM_LO__MASK;
12872d756322SRob Clark }
12882d756322SRob Clark
12892d756322SRob Clark #define REG_CP_SET_BIN_DATA5_6 0x00000006
1290c28c82e9SRob Clark #define CP_SET_BIN_DATA5_6_BIN_PRIM_STRM_HI__MASK 0xffffffff
1291c28c82e9SRob Clark #define CP_SET_BIN_DATA5_6_BIN_PRIM_STRM_HI__SHIFT 0
CP_SET_BIN_DATA5_6_BIN_PRIM_STRM_HI(uint32_t val)1292c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_6_BIN_PRIM_STRM_HI(uint32_t val)
12932d756322SRob Clark {
1294c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_6_BIN_PRIM_STRM_HI__SHIFT) & CP_SET_BIN_DATA5_6_BIN_PRIM_STRM_HI__MASK;
1295c28c82e9SRob Clark }
1296c28c82e9SRob Clark
1297*f73343faSRob Clark #define REG_CP_SET_BIN_DATA5_7 0x00000007
1298*f73343faSRob Clark
1299*f73343faSRob Clark #define REG_CP_SET_BIN_DATA5_9 0x00000009
1300*f73343faSRob Clark
1301c28c82e9SRob Clark #define REG_CP_SET_BIN_DATA5_OFFSET_0 0x00000000
1302c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_0_VSC_SIZE__MASK 0x003f0000
1303c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_0_VSC_SIZE__SHIFT 16
CP_SET_BIN_DATA5_OFFSET_0_VSC_SIZE(uint32_t val)1304c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_OFFSET_0_VSC_SIZE(uint32_t val)
1305c28c82e9SRob Clark {
1306c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_OFFSET_0_VSC_SIZE__SHIFT) & CP_SET_BIN_DATA5_OFFSET_0_VSC_SIZE__MASK;
1307c28c82e9SRob Clark }
1308c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_0_VSC_N__MASK 0x07c00000
1309c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_0_VSC_N__SHIFT 22
CP_SET_BIN_DATA5_OFFSET_0_VSC_N(uint32_t val)1310c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_OFFSET_0_VSC_N(uint32_t val)
1311c28c82e9SRob Clark {
1312c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_OFFSET_0_VSC_N__SHIFT) & CP_SET_BIN_DATA5_OFFSET_0_VSC_N__MASK;
1313c28c82e9SRob Clark }
1314c28c82e9SRob Clark
1315c28c82e9SRob Clark #define REG_CP_SET_BIN_DATA5_OFFSET_1 0x00000001
1316c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_1_BIN_DATA_OFFSET__MASK 0xffffffff
1317c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_1_BIN_DATA_OFFSET__SHIFT 0
CP_SET_BIN_DATA5_OFFSET_1_BIN_DATA_OFFSET(uint32_t val)1318c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_OFFSET_1_BIN_DATA_OFFSET(uint32_t val)
1319c28c82e9SRob Clark {
1320c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_OFFSET_1_BIN_DATA_OFFSET__SHIFT) & CP_SET_BIN_DATA5_OFFSET_1_BIN_DATA_OFFSET__MASK;
1321c28c82e9SRob Clark }
1322c28c82e9SRob Clark
1323c28c82e9SRob Clark #define REG_CP_SET_BIN_DATA5_OFFSET_2 0x00000002
1324c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_2_BIN_SIZE_OFFSET__MASK 0xffffffff
1325c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_2_BIN_SIZE_OFFSET__SHIFT 0
CP_SET_BIN_DATA5_OFFSET_2_BIN_SIZE_OFFSET(uint32_t val)1326c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_OFFSET_2_BIN_SIZE_OFFSET(uint32_t val)
1327c28c82e9SRob Clark {
1328c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_OFFSET_2_BIN_SIZE_OFFSET__SHIFT) & CP_SET_BIN_DATA5_OFFSET_2_BIN_SIZE_OFFSET__MASK;
1329c28c82e9SRob Clark }
1330c28c82e9SRob Clark
1331c28c82e9SRob Clark #define REG_CP_SET_BIN_DATA5_OFFSET_3 0x00000003
1332c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_3_BIN_DATA2_OFFSET__MASK 0xffffffff
1333c28c82e9SRob Clark #define CP_SET_BIN_DATA5_OFFSET_3_BIN_DATA2_OFFSET__SHIFT 0
CP_SET_BIN_DATA5_OFFSET_3_BIN_DATA2_OFFSET(uint32_t val)1334c28c82e9SRob Clark static inline uint32_t CP_SET_BIN_DATA5_OFFSET_3_BIN_DATA2_OFFSET(uint32_t val)
1335c28c82e9SRob Clark {
1336c28c82e9SRob Clark return ((val) << CP_SET_BIN_DATA5_OFFSET_3_BIN_DATA2_OFFSET__SHIFT) & CP_SET_BIN_DATA5_OFFSET_3_BIN_DATA2_OFFSET__MASK;
1337c28c82e9SRob Clark }
1338c28c82e9SRob Clark
1339c28c82e9SRob Clark #define REG_CP_REG_RMW_0 0x00000000
1340c28c82e9SRob Clark #define CP_REG_RMW_0_DST_REG__MASK 0x0003ffff
1341c28c82e9SRob Clark #define CP_REG_RMW_0_DST_REG__SHIFT 0
CP_REG_RMW_0_DST_REG(uint32_t val)1342c28c82e9SRob Clark static inline uint32_t CP_REG_RMW_0_DST_REG(uint32_t val)
1343c28c82e9SRob Clark {
1344c28c82e9SRob Clark return ((val) << CP_REG_RMW_0_DST_REG__SHIFT) & CP_REG_RMW_0_DST_REG__MASK;
1345c28c82e9SRob Clark }
1346c28c82e9SRob Clark #define CP_REG_RMW_0_ROTATE__MASK 0x1f000000
1347c28c82e9SRob Clark #define CP_REG_RMW_0_ROTATE__SHIFT 24
CP_REG_RMW_0_ROTATE(uint32_t val)1348c28c82e9SRob Clark static inline uint32_t CP_REG_RMW_0_ROTATE(uint32_t val)
1349c28c82e9SRob Clark {
1350c28c82e9SRob Clark return ((val) << CP_REG_RMW_0_ROTATE__SHIFT) & CP_REG_RMW_0_ROTATE__MASK;
1351c28c82e9SRob Clark }
1352c28c82e9SRob Clark #define CP_REG_RMW_0_SRC1_ADD 0x20000000
1353c28c82e9SRob Clark #define CP_REG_RMW_0_SRC1_IS_REG 0x40000000
1354c28c82e9SRob Clark #define CP_REG_RMW_0_SRC0_IS_REG 0x80000000
1355c28c82e9SRob Clark
1356c28c82e9SRob Clark #define REG_CP_REG_RMW_1 0x00000001
1357c28c82e9SRob Clark #define CP_REG_RMW_1_SRC0__MASK 0xffffffff
1358c28c82e9SRob Clark #define CP_REG_RMW_1_SRC0__SHIFT 0
CP_REG_RMW_1_SRC0(uint32_t val)1359c28c82e9SRob Clark static inline uint32_t CP_REG_RMW_1_SRC0(uint32_t val)
1360c28c82e9SRob Clark {
1361c28c82e9SRob Clark return ((val) << CP_REG_RMW_1_SRC0__SHIFT) & CP_REG_RMW_1_SRC0__MASK;
1362c28c82e9SRob Clark }
1363c28c82e9SRob Clark
1364c28c82e9SRob Clark #define REG_CP_REG_RMW_2 0x00000002
1365c28c82e9SRob Clark #define CP_REG_RMW_2_SRC1__MASK 0xffffffff
1366c28c82e9SRob Clark #define CP_REG_RMW_2_SRC1__SHIFT 0
CP_REG_RMW_2_SRC1(uint32_t val)1367c28c82e9SRob Clark static inline uint32_t CP_REG_RMW_2_SRC1(uint32_t val)
1368c28c82e9SRob Clark {
1369c28c82e9SRob Clark return ((val) << CP_REG_RMW_2_SRC1__SHIFT) & CP_REG_RMW_2_SRC1__MASK;
13702d756322SRob Clark }
13712d756322SRob Clark
1372a2272e48SRob Clark #define REG_CP_REG_TO_MEM_0 0x00000000
1373c28c82e9SRob Clark #define CP_REG_TO_MEM_0_REG__MASK 0x0003ffff
1374a2272e48SRob Clark #define CP_REG_TO_MEM_0_REG__SHIFT 0
CP_REG_TO_MEM_0_REG(uint32_t val)1375a2272e48SRob Clark static inline uint32_t CP_REG_TO_MEM_0_REG(uint32_t val)
1376a2272e48SRob Clark {
1377a2272e48SRob Clark return ((val) << CP_REG_TO_MEM_0_REG__SHIFT) & CP_REG_TO_MEM_0_REG__MASK;
1378a2272e48SRob Clark }
1379c28c82e9SRob Clark #define CP_REG_TO_MEM_0_CNT__MASK 0x3ffc0000
1380c28c82e9SRob Clark #define CP_REG_TO_MEM_0_CNT__SHIFT 18
CP_REG_TO_MEM_0_CNT(uint32_t val)1381a2272e48SRob Clark static inline uint32_t CP_REG_TO_MEM_0_CNT(uint32_t val)
1382a2272e48SRob Clark {
1383a2272e48SRob Clark return ((val) << CP_REG_TO_MEM_0_CNT__SHIFT) & CP_REG_TO_MEM_0_CNT__MASK;
1384a2272e48SRob Clark }
1385a2272e48SRob Clark #define CP_REG_TO_MEM_0_64B 0x40000000
1386a2272e48SRob Clark #define CP_REG_TO_MEM_0_ACCUMULATE 0x80000000
1387a2272e48SRob Clark
1388a2272e48SRob Clark #define REG_CP_REG_TO_MEM_1 0x00000001
1389a2272e48SRob Clark #define CP_REG_TO_MEM_1_DEST__MASK 0xffffffff
1390a2272e48SRob Clark #define CP_REG_TO_MEM_1_DEST__SHIFT 0
CP_REG_TO_MEM_1_DEST(uint32_t val)1391a2272e48SRob Clark static inline uint32_t CP_REG_TO_MEM_1_DEST(uint32_t val)
1392a2272e48SRob Clark {
1393a2272e48SRob Clark return ((val) << CP_REG_TO_MEM_1_DEST__SHIFT) & CP_REG_TO_MEM_1_DEST__MASK;
1394a2272e48SRob Clark }
1395a2272e48SRob Clark
13962d756322SRob Clark #define REG_CP_REG_TO_MEM_2 0x00000002
13972d756322SRob Clark #define CP_REG_TO_MEM_2_DEST_HI__MASK 0xffffffff
13982d756322SRob Clark #define CP_REG_TO_MEM_2_DEST_HI__SHIFT 0
CP_REG_TO_MEM_2_DEST_HI(uint32_t val)13992d756322SRob Clark static inline uint32_t CP_REG_TO_MEM_2_DEST_HI(uint32_t val)
14002d756322SRob Clark {
14012d756322SRob Clark return ((val) << CP_REG_TO_MEM_2_DEST_HI__SHIFT) & CP_REG_TO_MEM_2_DEST_HI__MASK;
14022d756322SRob Clark }
14032d756322SRob Clark
1404c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_REG_0 0x00000000
1405c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_0_REG__MASK 0x0003ffff
1406c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_0_REG__SHIFT 0
CP_REG_TO_MEM_OFFSET_REG_0_REG(uint32_t val)1407c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_REG_0_REG(uint32_t val)
1408c28c82e9SRob Clark {
1409c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_REG_0_REG__SHIFT) & CP_REG_TO_MEM_OFFSET_REG_0_REG__MASK;
1410c28c82e9SRob Clark }
1411c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_0_CNT__MASK 0x3ffc0000
1412c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_0_CNT__SHIFT 18
CP_REG_TO_MEM_OFFSET_REG_0_CNT(uint32_t val)1413c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_REG_0_CNT(uint32_t val)
1414c28c82e9SRob Clark {
1415c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_REG_0_CNT__SHIFT) & CP_REG_TO_MEM_OFFSET_REG_0_CNT__MASK;
1416c28c82e9SRob Clark }
1417c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_0_64B 0x40000000
1418c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_0_ACCUMULATE 0x80000000
1419c28c82e9SRob Clark
1420c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_REG_1 0x00000001
1421c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_1_DEST__MASK 0xffffffff
1422c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_1_DEST__SHIFT 0
CP_REG_TO_MEM_OFFSET_REG_1_DEST(uint32_t val)1423c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_REG_1_DEST(uint32_t val)
1424c28c82e9SRob Clark {
1425c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_REG_1_DEST__SHIFT) & CP_REG_TO_MEM_OFFSET_REG_1_DEST__MASK;
1426c28c82e9SRob Clark }
1427c28c82e9SRob Clark
1428c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_REG_2 0x00000002
1429c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_2_DEST_HI__MASK 0xffffffff
1430c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_2_DEST_HI__SHIFT 0
CP_REG_TO_MEM_OFFSET_REG_2_DEST_HI(uint32_t val)1431c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_REG_2_DEST_HI(uint32_t val)
1432c28c82e9SRob Clark {
1433c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_REG_2_DEST_HI__SHIFT) & CP_REG_TO_MEM_OFFSET_REG_2_DEST_HI__MASK;
1434c28c82e9SRob Clark }
1435c28c82e9SRob Clark
1436c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_REG_3 0x00000003
1437c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0__MASK 0x0003ffff
1438c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0__SHIFT 0
CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0(uint32_t val)1439c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0(uint32_t val)
1440c28c82e9SRob Clark {
1441c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0__SHIFT) & CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0__MASK;
1442c28c82e9SRob Clark }
1443c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_REG_3_OFFSET0_SCRATCH 0x00080000
1444c28c82e9SRob Clark
1445c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_MEM_0 0x00000000
1446c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_0_REG__MASK 0x0003ffff
1447c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_0_REG__SHIFT 0
CP_REG_TO_MEM_OFFSET_MEM_0_REG(uint32_t val)1448c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_MEM_0_REG(uint32_t val)
1449c28c82e9SRob Clark {
1450c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_MEM_0_REG__SHIFT) & CP_REG_TO_MEM_OFFSET_MEM_0_REG__MASK;
1451c28c82e9SRob Clark }
1452c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_0_CNT__MASK 0x3ffc0000
1453c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_0_CNT__SHIFT 18
CP_REG_TO_MEM_OFFSET_MEM_0_CNT(uint32_t val)1454c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_MEM_0_CNT(uint32_t val)
1455c28c82e9SRob Clark {
1456c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_MEM_0_CNT__SHIFT) & CP_REG_TO_MEM_OFFSET_MEM_0_CNT__MASK;
1457c28c82e9SRob Clark }
1458c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_0_64B 0x40000000
1459c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_0_ACCUMULATE 0x80000000
1460c28c82e9SRob Clark
1461c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_MEM_1 0x00000001
1462c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_1_DEST__MASK 0xffffffff
1463c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_1_DEST__SHIFT 0
CP_REG_TO_MEM_OFFSET_MEM_1_DEST(uint32_t val)1464c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_MEM_1_DEST(uint32_t val)
1465c28c82e9SRob Clark {
1466c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_MEM_1_DEST__SHIFT) & CP_REG_TO_MEM_OFFSET_MEM_1_DEST__MASK;
1467c28c82e9SRob Clark }
1468c28c82e9SRob Clark
1469c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_MEM_2 0x00000002
1470c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_2_DEST_HI__MASK 0xffffffff
1471c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_2_DEST_HI__SHIFT 0
CP_REG_TO_MEM_OFFSET_MEM_2_DEST_HI(uint32_t val)1472c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_MEM_2_DEST_HI(uint32_t val)
1473c28c82e9SRob Clark {
1474c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_MEM_2_DEST_HI__SHIFT) & CP_REG_TO_MEM_OFFSET_MEM_2_DEST_HI__MASK;
1475c28c82e9SRob Clark }
1476c28c82e9SRob Clark
1477c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_MEM_3 0x00000003
1478c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_3_OFFSET_LO__MASK 0xffffffff
1479c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_3_OFFSET_LO__SHIFT 0
CP_REG_TO_MEM_OFFSET_MEM_3_OFFSET_LO(uint32_t val)1480c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_MEM_3_OFFSET_LO(uint32_t val)
1481c28c82e9SRob Clark {
1482c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_MEM_3_OFFSET_LO__SHIFT) & CP_REG_TO_MEM_OFFSET_MEM_3_OFFSET_LO__MASK;
1483c28c82e9SRob Clark }
1484c28c82e9SRob Clark
1485c28c82e9SRob Clark #define REG_CP_REG_TO_MEM_OFFSET_MEM_4 0x00000004
1486c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_4_OFFSET_HI__MASK 0xffffffff
1487c28c82e9SRob Clark #define CP_REG_TO_MEM_OFFSET_MEM_4_OFFSET_HI__SHIFT 0
CP_REG_TO_MEM_OFFSET_MEM_4_OFFSET_HI(uint32_t val)1488c28c82e9SRob Clark static inline uint32_t CP_REG_TO_MEM_OFFSET_MEM_4_OFFSET_HI(uint32_t val)
1489c28c82e9SRob Clark {
1490c28c82e9SRob Clark return ((val) << CP_REG_TO_MEM_OFFSET_MEM_4_OFFSET_HI__SHIFT) & CP_REG_TO_MEM_OFFSET_MEM_4_OFFSET_HI__MASK;
1491c28c82e9SRob Clark }
1492c28c82e9SRob Clark
14932d756322SRob Clark #define REG_CP_MEM_TO_REG_0 0x00000000
1494c28c82e9SRob Clark #define CP_MEM_TO_REG_0_REG__MASK 0x0003ffff
14952d756322SRob Clark #define CP_MEM_TO_REG_0_REG__SHIFT 0
CP_MEM_TO_REG_0_REG(uint32_t val)14962d756322SRob Clark static inline uint32_t CP_MEM_TO_REG_0_REG(uint32_t val)
14972d756322SRob Clark {
14982d756322SRob Clark return ((val) << CP_MEM_TO_REG_0_REG__SHIFT) & CP_MEM_TO_REG_0_REG__MASK;
14992d756322SRob Clark }
15002d756322SRob Clark #define CP_MEM_TO_REG_0_CNT__MASK 0x3ff80000
15012d756322SRob Clark #define CP_MEM_TO_REG_0_CNT__SHIFT 19
CP_MEM_TO_REG_0_CNT(uint32_t val)15022d756322SRob Clark static inline uint32_t CP_MEM_TO_REG_0_CNT(uint32_t val)
15032d756322SRob Clark {
15042d756322SRob Clark return ((val) << CP_MEM_TO_REG_0_CNT__SHIFT) & CP_MEM_TO_REG_0_CNT__MASK;
15052d756322SRob Clark }
1506c28c82e9SRob Clark #define CP_MEM_TO_REG_0_SHIFT_BY_2 0x40000000
1507c28c82e9SRob Clark #define CP_MEM_TO_REG_0_UNK31 0x80000000
15082d756322SRob Clark
15092d756322SRob Clark #define REG_CP_MEM_TO_REG_1 0x00000001
15102d756322SRob Clark #define CP_MEM_TO_REG_1_SRC__MASK 0xffffffff
15112d756322SRob Clark #define CP_MEM_TO_REG_1_SRC__SHIFT 0
CP_MEM_TO_REG_1_SRC(uint32_t val)15122d756322SRob Clark static inline uint32_t CP_MEM_TO_REG_1_SRC(uint32_t val)
15132d756322SRob Clark {
15142d756322SRob Clark return ((val) << CP_MEM_TO_REG_1_SRC__SHIFT) & CP_MEM_TO_REG_1_SRC__MASK;
15152d756322SRob Clark }
15162d756322SRob Clark
15172d756322SRob Clark #define REG_CP_MEM_TO_REG_2 0x00000002
15182d756322SRob Clark #define CP_MEM_TO_REG_2_SRC_HI__MASK 0xffffffff
15192d756322SRob Clark #define CP_MEM_TO_REG_2_SRC_HI__SHIFT 0
CP_MEM_TO_REG_2_SRC_HI(uint32_t val)15202d756322SRob Clark static inline uint32_t CP_MEM_TO_REG_2_SRC_HI(uint32_t val)
15212d756322SRob Clark {
15222d756322SRob Clark return ((val) << CP_MEM_TO_REG_2_SRC_HI__SHIFT) & CP_MEM_TO_REG_2_SRC_HI__MASK;
15232d756322SRob Clark }
15242d756322SRob Clark
152552260ae4SRob Clark #define REG_CP_MEM_TO_MEM_0 0x00000000
152652260ae4SRob Clark #define CP_MEM_TO_MEM_0_NEG_A 0x00000001
152752260ae4SRob Clark #define CP_MEM_TO_MEM_0_NEG_B 0x00000002
152852260ae4SRob Clark #define CP_MEM_TO_MEM_0_NEG_C 0x00000004
152952260ae4SRob Clark #define CP_MEM_TO_MEM_0_DOUBLE 0x20000000
1530c28c82e9SRob Clark #define CP_MEM_TO_MEM_0_WAIT_FOR_MEM_WRITES 0x40000000
1531c28c82e9SRob Clark #define CP_MEM_TO_MEM_0_UNK31 0x80000000
1532c28c82e9SRob Clark
1533c28c82e9SRob Clark #define REG_CP_MEMCPY_0 0x00000000
1534c28c82e9SRob Clark #define CP_MEMCPY_0_DWORDS__MASK 0xffffffff
1535c28c82e9SRob Clark #define CP_MEMCPY_0_DWORDS__SHIFT 0
CP_MEMCPY_0_DWORDS(uint32_t val)1536c28c82e9SRob Clark static inline uint32_t CP_MEMCPY_0_DWORDS(uint32_t val)
1537c28c82e9SRob Clark {
1538c28c82e9SRob Clark return ((val) << CP_MEMCPY_0_DWORDS__SHIFT) & CP_MEMCPY_0_DWORDS__MASK;
1539c28c82e9SRob Clark }
1540c28c82e9SRob Clark
1541c28c82e9SRob Clark #define REG_CP_MEMCPY_1 0x00000001
1542c28c82e9SRob Clark #define CP_MEMCPY_1_SRC_LO__MASK 0xffffffff
1543c28c82e9SRob Clark #define CP_MEMCPY_1_SRC_LO__SHIFT 0
CP_MEMCPY_1_SRC_LO(uint32_t val)1544c28c82e9SRob Clark static inline uint32_t CP_MEMCPY_1_SRC_LO(uint32_t val)
1545c28c82e9SRob Clark {
1546c28c82e9SRob Clark return ((val) << CP_MEMCPY_1_SRC_LO__SHIFT) & CP_MEMCPY_1_SRC_LO__MASK;
1547c28c82e9SRob Clark }
1548c28c82e9SRob Clark
1549c28c82e9SRob Clark #define REG_CP_MEMCPY_2 0x00000002
1550c28c82e9SRob Clark #define CP_MEMCPY_2_SRC_HI__MASK 0xffffffff
1551c28c82e9SRob Clark #define CP_MEMCPY_2_SRC_HI__SHIFT 0
CP_MEMCPY_2_SRC_HI(uint32_t val)1552c28c82e9SRob Clark static inline uint32_t CP_MEMCPY_2_SRC_HI(uint32_t val)
1553c28c82e9SRob Clark {
1554c28c82e9SRob Clark return ((val) << CP_MEMCPY_2_SRC_HI__SHIFT) & CP_MEMCPY_2_SRC_HI__MASK;
1555c28c82e9SRob Clark }
1556c28c82e9SRob Clark
1557c28c82e9SRob Clark #define REG_CP_MEMCPY_3 0x00000003
1558c28c82e9SRob Clark #define CP_MEMCPY_3_DST_LO__MASK 0xffffffff
1559c28c82e9SRob Clark #define CP_MEMCPY_3_DST_LO__SHIFT 0
CP_MEMCPY_3_DST_LO(uint32_t val)1560c28c82e9SRob Clark static inline uint32_t CP_MEMCPY_3_DST_LO(uint32_t val)
1561c28c82e9SRob Clark {
1562c28c82e9SRob Clark return ((val) << CP_MEMCPY_3_DST_LO__SHIFT) & CP_MEMCPY_3_DST_LO__MASK;
1563c28c82e9SRob Clark }
1564c28c82e9SRob Clark
1565c28c82e9SRob Clark #define REG_CP_MEMCPY_4 0x00000004
1566c28c82e9SRob Clark #define CP_MEMCPY_4_DST_HI__MASK 0xffffffff
1567c28c82e9SRob Clark #define CP_MEMCPY_4_DST_HI__SHIFT 0
CP_MEMCPY_4_DST_HI(uint32_t val)1568c28c82e9SRob Clark static inline uint32_t CP_MEMCPY_4_DST_HI(uint32_t val)
1569c28c82e9SRob Clark {
1570c28c82e9SRob Clark return ((val) << CP_MEMCPY_4_DST_HI__SHIFT) & CP_MEMCPY_4_DST_HI__MASK;
1571c28c82e9SRob Clark }
1572c28c82e9SRob Clark
1573c28c82e9SRob Clark #define REG_CP_REG_TO_SCRATCH_0 0x00000000
1574c28c82e9SRob Clark #define CP_REG_TO_SCRATCH_0_REG__MASK 0x0003ffff
1575c28c82e9SRob Clark #define CP_REG_TO_SCRATCH_0_REG__SHIFT 0
CP_REG_TO_SCRATCH_0_REG(uint32_t val)1576c28c82e9SRob Clark static inline uint32_t CP_REG_TO_SCRATCH_0_REG(uint32_t val)
1577c28c82e9SRob Clark {
1578c28c82e9SRob Clark return ((val) << CP_REG_TO_SCRATCH_0_REG__SHIFT) & CP_REG_TO_SCRATCH_0_REG__MASK;
1579c28c82e9SRob Clark }
1580c28c82e9SRob Clark #define CP_REG_TO_SCRATCH_0_SCRATCH__MASK 0x00700000
1581c28c82e9SRob Clark #define CP_REG_TO_SCRATCH_0_SCRATCH__SHIFT 20
CP_REG_TO_SCRATCH_0_SCRATCH(uint32_t val)1582c28c82e9SRob Clark static inline uint32_t CP_REG_TO_SCRATCH_0_SCRATCH(uint32_t val)
1583c28c82e9SRob Clark {
1584c28c82e9SRob Clark return ((val) << CP_REG_TO_SCRATCH_0_SCRATCH__SHIFT) & CP_REG_TO_SCRATCH_0_SCRATCH__MASK;
1585c28c82e9SRob Clark }
1586c28c82e9SRob Clark #define CP_REG_TO_SCRATCH_0_CNT__MASK 0x07000000
1587c28c82e9SRob Clark #define CP_REG_TO_SCRATCH_0_CNT__SHIFT 24
CP_REG_TO_SCRATCH_0_CNT(uint32_t val)1588c28c82e9SRob Clark static inline uint32_t CP_REG_TO_SCRATCH_0_CNT(uint32_t val)
1589c28c82e9SRob Clark {
1590c28c82e9SRob Clark return ((val) << CP_REG_TO_SCRATCH_0_CNT__SHIFT) & CP_REG_TO_SCRATCH_0_CNT__MASK;
1591c28c82e9SRob Clark }
1592c28c82e9SRob Clark
1593c28c82e9SRob Clark #define REG_CP_SCRATCH_TO_REG_0 0x00000000
1594c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_REG__MASK 0x0003ffff
1595c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_REG__SHIFT 0
CP_SCRATCH_TO_REG_0_REG(uint32_t val)1596c28c82e9SRob Clark static inline uint32_t CP_SCRATCH_TO_REG_0_REG(uint32_t val)
1597c28c82e9SRob Clark {
1598c28c82e9SRob Clark return ((val) << CP_SCRATCH_TO_REG_0_REG__SHIFT) & CP_SCRATCH_TO_REG_0_REG__MASK;
1599c28c82e9SRob Clark }
1600c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_UNK18 0x00040000
1601c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_SCRATCH__MASK 0x00700000
1602c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_SCRATCH__SHIFT 20
CP_SCRATCH_TO_REG_0_SCRATCH(uint32_t val)1603c28c82e9SRob Clark static inline uint32_t CP_SCRATCH_TO_REG_0_SCRATCH(uint32_t val)
1604c28c82e9SRob Clark {
1605c28c82e9SRob Clark return ((val) << CP_SCRATCH_TO_REG_0_SCRATCH__SHIFT) & CP_SCRATCH_TO_REG_0_SCRATCH__MASK;
1606c28c82e9SRob Clark }
1607c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_CNT__MASK 0x07000000
1608c28c82e9SRob Clark #define CP_SCRATCH_TO_REG_0_CNT__SHIFT 24
CP_SCRATCH_TO_REG_0_CNT(uint32_t val)1609c28c82e9SRob Clark static inline uint32_t CP_SCRATCH_TO_REG_0_CNT(uint32_t val)
1610c28c82e9SRob Clark {
1611c28c82e9SRob Clark return ((val) << CP_SCRATCH_TO_REG_0_CNT__SHIFT) & CP_SCRATCH_TO_REG_0_CNT__MASK;
1612c28c82e9SRob Clark }
1613c28c82e9SRob Clark
1614c28c82e9SRob Clark #define REG_CP_SCRATCH_WRITE_0 0x00000000
1615c28c82e9SRob Clark #define CP_SCRATCH_WRITE_0_SCRATCH__MASK 0x00700000
1616c28c82e9SRob Clark #define CP_SCRATCH_WRITE_0_SCRATCH__SHIFT 20
CP_SCRATCH_WRITE_0_SCRATCH(uint32_t val)1617c28c82e9SRob Clark static inline uint32_t CP_SCRATCH_WRITE_0_SCRATCH(uint32_t val)
1618c28c82e9SRob Clark {
1619c28c82e9SRob Clark return ((val) << CP_SCRATCH_WRITE_0_SCRATCH__SHIFT) & CP_SCRATCH_WRITE_0_SCRATCH__MASK;
1620c28c82e9SRob Clark }
1621c28c82e9SRob Clark
1622c28c82e9SRob Clark #define REG_CP_MEM_WRITE_0 0x00000000
1623c28c82e9SRob Clark #define CP_MEM_WRITE_0_ADDR_LO__MASK 0xffffffff
1624c28c82e9SRob Clark #define CP_MEM_WRITE_0_ADDR_LO__SHIFT 0
CP_MEM_WRITE_0_ADDR_LO(uint32_t val)1625c28c82e9SRob Clark static inline uint32_t CP_MEM_WRITE_0_ADDR_LO(uint32_t val)
1626c28c82e9SRob Clark {
1627c28c82e9SRob Clark return ((val) << CP_MEM_WRITE_0_ADDR_LO__SHIFT) & CP_MEM_WRITE_0_ADDR_LO__MASK;
1628c28c82e9SRob Clark }
1629c28c82e9SRob Clark
1630c28c82e9SRob Clark #define REG_CP_MEM_WRITE_1 0x00000001
1631c28c82e9SRob Clark #define CP_MEM_WRITE_1_ADDR_HI__MASK 0xffffffff
1632c28c82e9SRob Clark #define CP_MEM_WRITE_1_ADDR_HI__SHIFT 0
CP_MEM_WRITE_1_ADDR_HI(uint32_t val)1633c28c82e9SRob Clark static inline uint32_t CP_MEM_WRITE_1_ADDR_HI(uint32_t val)
1634c28c82e9SRob Clark {
1635c28c82e9SRob Clark return ((val) << CP_MEM_WRITE_1_ADDR_HI__SHIFT) & CP_MEM_WRITE_1_ADDR_HI__MASK;
1636c28c82e9SRob Clark }
163752260ae4SRob Clark
163852260ae4SRob Clark #define REG_CP_COND_WRITE_0 0x00000000
163952260ae4SRob Clark #define CP_COND_WRITE_0_FUNCTION__MASK 0x00000007
164052260ae4SRob Clark #define CP_COND_WRITE_0_FUNCTION__SHIFT 0
CP_COND_WRITE_0_FUNCTION(enum cp_cond_function val)164152260ae4SRob Clark static inline uint32_t CP_COND_WRITE_0_FUNCTION(enum cp_cond_function val)
164252260ae4SRob Clark {
164352260ae4SRob Clark return ((val) << CP_COND_WRITE_0_FUNCTION__SHIFT) & CP_COND_WRITE_0_FUNCTION__MASK;
164452260ae4SRob Clark }
164552260ae4SRob Clark #define CP_COND_WRITE_0_POLL_MEMORY 0x00000010
164652260ae4SRob Clark #define CP_COND_WRITE_0_WRITE_MEMORY 0x00000100
164752260ae4SRob Clark
164852260ae4SRob Clark #define REG_CP_COND_WRITE_1 0x00000001
164952260ae4SRob Clark #define CP_COND_WRITE_1_POLL_ADDR__MASK 0xffffffff
165052260ae4SRob Clark #define CP_COND_WRITE_1_POLL_ADDR__SHIFT 0
CP_COND_WRITE_1_POLL_ADDR(uint32_t val)165152260ae4SRob Clark static inline uint32_t CP_COND_WRITE_1_POLL_ADDR(uint32_t val)
165252260ae4SRob Clark {
165352260ae4SRob Clark return ((val) << CP_COND_WRITE_1_POLL_ADDR__SHIFT) & CP_COND_WRITE_1_POLL_ADDR__MASK;
165452260ae4SRob Clark }
165552260ae4SRob Clark
165652260ae4SRob Clark #define REG_CP_COND_WRITE_2 0x00000002
165752260ae4SRob Clark #define CP_COND_WRITE_2_REF__MASK 0xffffffff
165852260ae4SRob Clark #define CP_COND_WRITE_2_REF__SHIFT 0
CP_COND_WRITE_2_REF(uint32_t val)165952260ae4SRob Clark static inline uint32_t CP_COND_WRITE_2_REF(uint32_t val)
166052260ae4SRob Clark {
166152260ae4SRob Clark return ((val) << CP_COND_WRITE_2_REF__SHIFT) & CP_COND_WRITE_2_REF__MASK;
166252260ae4SRob Clark }
166352260ae4SRob Clark
166452260ae4SRob Clark #define REG_CP_COND_WRITE_3 0x00000003
166552260ae4SRob Clark #define CP_COND_WRITE_3_MASK__MASK 0xffffffff
166652260ae4SRob Clark #define CP_COND_WRITE_3_MASK__SHIFT 0
CP_COND_WRITE_3_MASK(uint32_t val)166752260ae4SRob Clark static inline uint32_t CP_COND_WRITE_3_MASK(uint32_t val)
166852260ae4SRob Clark {
166952260ae4SRob Clark return ((val) << CP_COND_WRITE_3_MASK__SHIFT) & CP_COND_WRITE_3_MASK__MASK;
167052260ae4SRob Clark }
167152260ae4SRob Clark
167252260ae4SRob Clark #define REG_CP_COND_WRITE_4 0x00000004
167352260ae4SRob Clark #define CP_COND_WRITE_4_WRITE_ADDR__MASK 0xffffffff
167452260ae4SRob Clark #define CP_COND_WRITE_4_WRITE_ADDR__SHIFT 0
CP_COND_WRITE_4_WRITE_ADDR(uint32_t val)167552260ae4SRob Clark static inline uint32_t CP_COND_WRITE_4_WRITE_ADDR(uint32_t val)
167652260ae4SRob Clark {
167752260ae4SRob Clark return ((val) << CP_COND_WRITE_4_WRITE_ADDR__SHIFT) & CP_COND_WRITE_4_WRITE_ADDR__MASK;
167852260ae4SRob Clark }
167952260ae4SRob Clark
168052260ae4SRob Clark #define REG_CP_COND_WRITE_5 0x00000005
168152260ae4SRob Clark #define CP_COND_WRITE_5_WRITE_DATA__MASK 0xffffffff
168252260ae4SRob Clark #define CP_COND_WRITE_5_WRITE_DATA__SHIFT 0
CP_COND_WRITE_5_WRITE_DATA(uint32_t val)168352260ae4SRob Clark static inline uint32_t CP_COND_WRITE_5_WRITE_DATA(uint32_t val)
168452260ae4SRob Clark {
168552260ae4SRob Clark return ((val) << CP_COND_WRITE_5_WRITE_DATA__SHIFT) & CP_COND_WRITE_5_WRITE_DATA__MASK;
168652260ae4SRob Clark }
168752260ae4SRob Clark
168852260ae4SRob Clark #define REG_CP_COND_WRITE5_0 0x00000000
168952260ae4SRob Clark #define CP_COND_WRITE5_0_FUNCTION__MASK 0x00000007
169052260ae4SRob Clark #define CP_COND_WRITE5_0_FUNCTION__SHIFT 0
CP_COND_WRITE5_0_FUNCTION(enum cp_cond_function val)169152260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_0_FUNCTION(enum cp_cond_function val)
169252260ae4SRob Clark {
169352260ae4SRob Clark return ((val) << CP_COND_WRITE5_0_FUNCTION__SHIFT) & CP_COND_WRITE5_0_FUNCTION__MASK;
169452260ae4SRob Clark }
1695c28c82e9SRob Clark #define CP_COND_WRITE5_0_SIGNED_COMPARE 0x00000008
169652260ae4SRob Clark #define CP_COND_WRITE5_0_POLL_MEMORY 0x00000010
1697c28c82e9SRob Clark #define CP_COND_WRITE5_0_POLL_SCRATCH 0x00000020
169852260ae4SRob Clark #define CP_COND_WRITE5_0_WRITE_MEMORY 0x00000100
169952260ae4SRob Clark
170052260ae4SRob Clark #define REG_CP_COND_WRITE5_1 0x00000001
170152260ae4SRob Clark #define CP_COND_WRITE5_1_POLL_ADDR_LO__MASK 0xffffffff
170252260ae4SRob Clark #define CP_COND_WRITE5_1_POLL_ADDR_LO__SHIFT 0
CP_COND_WRITE5_1_POLL_ADDR_LO(uint32_t val)170352260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_1_POLL_ADDR_LO(uint32_t val)
170452260ae4SRob Clark {
170552260ae4SRob Clark return ((val) << CP_COND_WRITE5_1_POLL_ADDR_LO__SHIFT) & CP_COND_WRITE5_1_POLL_ADDR_LO__MASK;
170652260ae4SRob Clark }
170752260ae4SRob Clark
170852260ae4SRob Clark #define REG_CP_COND_WRITE5_2 0x00000002
170952260ae4SRob Clark #define CP_COND_WRITE5_2_POLL_ADDR_HI__MASK 0xffffffff
171052260ae4SRob Clark #define CP_COND_WRITE5_2_POLL_ADDR_HI__SHIFT 0
CP_COND_WRITE5_2_POLL_ADDR_HI(uint32_t val)171152260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_2_POLL_ADDR_HI(uint32_t val)
171252260ae4SRob Clark {
171352260ae4SRob Clark return ((val) << CP_COND_WRITE5_2_POLL_ADDR_HI__SHIFT) & CP_COND_WRITE5_2_POLL_ADDR_HI__MASK;
171452260ae4SRob Clark }
171552260ae4SRob Clark
171652260ae4SRob Clark #define REG_CP_COND_WRITE5_3 0x00000003
171752260ae4SRob Clark #define CP_COND_WRITE5_3_REF__MASK 0xffffffff
171852260ae4SRob Clark #define CP_COND_WRITE5_3_REF__SHIFT 0
CP_COND_WRITE5_3_REF(uint32_t val)171952260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_3_REF(uint32_t val)
172052260ae4SRob Clark {
172152260ae4SRob Clark return ((val) << CP_COND_WRITE5_3_REF__SHIFT) & CP_COND_WRITE5_3_REF__MASK;
172252260ae4SRob Clark }
172352260ae4SRob Clark
172452260ae4SRob Clark #define REG_CP_COND_WRITE5_4 0x00000004
172552260ae4SRob Clark #define CP_COND_WRITE5_4_MASK__MASK 0xffffffff
172652260ae4SRob Clark #define CP_COND_WRITE5_4_MASK__SHIFT 0
CP_COND_WRITE5_4_MASK(uint32_t val)172752260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_4_MASK(uint32_t val)
172852260ae4SRob Clark {
172952260ae4SRob Clark return ((val) << CP_COND_WRITE5_4_MASK__SHIFT) & CP_COND_WRITE5_4_MASK__MASK;
173052260ae4SRob Clark }
173152260ae4SRob Clark
173252260ae4SRob Clark #define REG_CP_COND_WRITE5_5 0x00000005
173352260ae4SRob Clark #define CP_COND_WRITE5_5_WRITE_ADDR_LO__MASK 0xffffffff
173452260ae4SRob Clark #define CP_COND_WRITE5_5_WRITE_ADDR_LO__SHIFT 0
CP_COND_WRITE5_5_WRITE_ADDR_LO(uint32_t val)173552260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_5_WRITE_ADDR_LO(uint32_t val)
173652260ae4SRob Clark {
173752260ae4SRob Clark return ((val) << CP_COND_WRITE5_5_WRITE_ADDR_LO__SHIFT) & CP_COND_WRITE5_5_WRITE_ADDR_LO__MASK;
173852260ae4SRob Clark }
173952260ae4SRob Clark
174052260ae4SRob Clark #define REG_CP_COND_WRITE5_6 0x00000006
174152260ae4SRob Clark #define CP_COND_WRITE5_6_WRITE_ADDR_HI__MASK 0xffffffff
174252260ae4SRob Clark #define CP_COND_WRITE5_6_WRITE_ADDR_HI__SHIFT 0
CP_COND_WRITE5_6_WRITE_ADDR_HI(uint32_t val)174352260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_6_WRITE_ADDR_HI(uint32_t val)
174452260ae4SRob Clark {
174552260ae4SRob Clark return ((val) << CP_COND_WRITE5_6_WRITE_ADDR_HI__SHIFT) & CP_COND_WRITE5_6_WRITE_ADDR_HI__MASK;
174652260ae4SRob Clark }
174752260ae4SRob Clark
174852260ae4SRob Clark #define REG_CP_COND_WRITE5_7 0x00000007
174952260ae4SRob Clark #define CP_COND_WRITE5_7_WRITE_DATA__MASK 0xffffffff
175052260ae4SRob Clark #define CP_COND_WRITE5_7_WRITE_DATA__SHIFT 0
CP_COND_WRITE5_7_WRITE_DATA(uint32_t val)175152260ae4SRob Clark static inline uint32_t CP_COND_WRITE5_7_WRITE_DATA(uint32_t val)
175252260ae4SRob Clark {
175352260ae4SRob Clark return ((val) << CP_COND_WRITE5_7_WRITE_DATA__SHIFT) & CP_COND_WRITE5_7_WRITE_DATA__MASK;
175452260ae4SRob Clark }
175552260ae4SRob Clark
1756c28c82e9SRob Clark #define REG_CP_WAIT_MEM_GTE_0 0x00000000
1757c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_0_RESERVED__MASK 0xffffffff
1758c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_0_RESERVED__SHIFT 0
CP_WAIT_MEM_GTE_0_RESERVED(uint32_t val)1759c28c82e9SRob Clark static inline uint32_t CP_WAIT_MEM_GTE_0_RESERVED(uint32_t val)
1760c28c82e9SRob Clark {
1761c28c82e9SRob Clark return ((val) << CP_WAIT_MEM_GTE_0_RESERVED__SHIFT) & CP_WAIT_MEM_GTE_0_RESERVED__MASK;
1762c28c82e9SRob Clark }
1763c28c82e9SRob Clark
1764c28c82e9SRob Clark #define REG_CP_WAIT_MEM_GTE_1 0x00000001
1765c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_1_POLL_ADDR_LO__MASK 0xffffffff
1766c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_1_POLL_ADDR_LO__SHIFT 0
CP_WAIT_MEM_GTE_1_POLL_ADDR_LO(uint32_t val)1767c28c82e9SRob Clark static inline uint32_t CP_WAIT_MEM_GTE_1_POLL_ADDR_LO(uint32_t val)
1768c28c82e9SRob Clark {
1769c28c82e9SRob Clark return ((val) << CP_WAIT_MEM_GTE_1_POLL_ADDR_LO__SHIFT) & CP_WAIT_MEM_GTE_1_POLL_ADDR_LO__MASK;
1770c28c82e9SRob Clark }
1771c28c82e9SRob Clark
1772c28c82e9SRob Clark #define REG_CP_WAIT_MEM_GTE_2 0x00000002
1773c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_2_POLL_ADDR_HI__MASK 0xffffffff
1774c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_2_POLL_ADDR_HI__SHIFT 0
CP_WAIT_MEM_GTE_2_POLL_ADDR_HI(uint32_t val)1775c28c82e9SRob Clark static inline uint32_t CP_WAIT_MEM_GTE_2_POLL_ADDR_HI(uint32_t val)
1776c28c82e9SRob Clark {
1777c28c82e9SRob Clark return ((val) << CP_WAIT_MEM_GTE_2_POLL_ADDR_HI__SHIFT) & CP_WAIT_MEM_GTE_2_POLL_ADDR_HI__MASK;
1778c28c82e9SRob Clark }
1779c28c82e9SRob Clark
1780c28c82e9SRob Clark #define REG_CP_WAIT_MEM_GTE_3 0x00000003
1781c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_3_REF__MASK 0xffffffff
1782c28c82e9SRob Clark #define CP_WAIT_MEM_GTE_3_REF__SHIFT 0
CP_WAIT_MEM_GTE_3_REF(uint32_t val)1783c28c82e9SRob Clark static inline uint32_t CP_WAIT_MEM_GTE_3_REF(uint32_t val)
1784c28c82e9SRob Clark {
1785c28c82e9SRob Clark return ((val) << CP_WAIT_MEM_GTE_3_REF__SHIFT) & CP_WAIT_MEM_GTE_3_REF__MASK;
1786c28c82e9SRob Clark }
1787c28c82e9SRob Clark
1788c28c82e9SRob Clark #define REG_CP_WAIT_REG_MEM_0 0x00000000
1789c28c82e9SRob Clark #define CP_WAIT_REG_MEM_0_FUNCTION__MASK 0x00000007
1790c28c82e9SRob Clark #define CP_WAIT_REG_MEM_0_FUNCTION__SHIFT 0
CP_WAIT_REG_MEM_0_FUNCTION(enum cp_cond_function val)1791c28c82e9SRob Clark static inline uint32_t CP_WAIT_REG_MEM_0_FUNCTION(enum cp_cond_function val)
1792c28c82e9SRob Clark {
1793c28c82e9SRob Clark return ((val) << CP_WAIT_REG_MEM_0_FUNCTION__SHIFT) & CP_WAIT_REG_MEM_0_FUNCTION__MASK;
1794c28c82e9SRob Clark }
1795c28c82e9SRob Clark #define CP_WAIT_REG_MEM_0_SIGNED_COMPARE 0x00000008
1796c28c82e9SRob Clark #define CP_WAIT_REG_MEM_0_POLL_MEMORY 0x00000010
1797c28c82e9SRob Clark #define CP_WAIT_REG_MEM_0_POLL_SCRATCH 0x00000020
1798c28c82e9SRob Clark #define CP_WAIT_REG_MEM_0_WRITE_MEMORY 0x00000100
1799c28c82e9SRob Clark
1800c28c82e9SRob Clark #define REG_CP_WAIT_REG_MEM_1 0x00000001
1801c28c82e9SRob Clark #define CP_WAIT_REG_MEM_1_POLL_ADDR_LO__MASK 0xffffffff
1802c28c82e9SRob Clark #define CP_WAIT_REG_MEM_1_POLL_ADDR_LO__SHIFT 0
CP_WAIT_REG_MEM_1_POLL_ADDR_LO(uint32_t val)1803c28c82e9SRob Clark static inline uint32_t CP_WAIT_REG_MEM_1_POLL_ADDR_LO(uint32_t val)
1804c28c82e9SRob Clark {
1805c28c82e9SRob Clark return ((val) << CP_WAIT_REG_MEM_1_POLL_ADDR_LO__SHIFT) & CP_WAIT_REG_MEM_1_POLL_ADDR_LO__MASK;
1806c28c82e9SRob Clark }
1807c28c82e9SRob Clark
1808c28c82e9SRob Clark #define REG_CP_WAIT_REG_MEM_2 0x00000002
1809c28c82e9SRob Clark #define CP_WAIT_REG_MEM_2_POLL_ADDR_HI__MASK 0xffffffff
1810c28c82e9SRob Clark #define CP_WAIT_REG_MEM_2_POLL_ADDR_HI__SHIFT 0
CP_WAIT_REG_MEM_2_POLL_ADDR_HI(uint32_t val)1811c28c82e9SRob Clark static inline uint32_t CP_WAIT_REG_MEM_2_POLL_ADDR_HI(uint32_t val)
1812c28c82e9SRob Clark {
1813c28c82e9SRob Clark return ((val) << CP_WAIT_REG_MEM_2_POLL_ADDR_HI__SHIFT) & CP_WAIT_REG_MEM_2_POLL_ADDR_HI__MASK;
1814c28c82e9SRob Clark }
1815c28c82e9SRob Clark
1816c28c82e9SRob Clark #define REG_CP_WAIT_REG_MEM_3 0x00000003
1817c28c82e9SRob Clark #define CP_WAIT_REG_MEM_3_REF__MASK 0xffffffff
1818c28c82e9SRob Clark #define CP_WAIT_REG_MEM_3_REF__SHIFT 0
CP_WAIT_REG_MEM_3_REF(uint32_t val)1819c28c82e9SRob Clark static inline uint32_t CP_WAIT_REG_MEM_3_REF(uint32_t val)
1820c28c82e9SRob Clark {
1821c28c82e9SRob Clark return ((val) << CP_WAIT_REG_MEM_3_REF__SHIFT) & CP_WAIT_REG_MEM_3_REF__MASK;
1822c28c82e9SRob Clark }
1823c28c82e9SRob Clark
1824c28c82e9SRob Clark #define REG_CP_WAIT_REG_MEM_4 0x00000004
1825c28c82e9SRob Clark #define CP_WAIT_REG_MEM_4_MASK__MASK 0xffffffff
1826c28c82e9SRob Clark #define CP_WAIT_REG_MEM_4_MASK__SHIFT 0
CP_WAIT_REG_MEM_4_MASK(uint32_t val)1827c28c82e9SRob Clark static inline uint32_t CP_WAIT_REG_MEM_4_MASK(uint32_t val)
1828c28c82e9SRob Clark {
1829c28c82e9SRob Clark return ((val) << CP_WAIT_REG_MEM_4_MASK__SHIFT) & CP_WAIT_REG_MEM_4_MASK__MASK;
1830c28c82e9SRob Clark }
1831c28c82e9SRob Clark
1832c28c82e9SRob Clark #define REG_CP_WAIT_REG_MEM_5 0x00000005
1833c28c82e9SRob Clark #define CP_WAIT_REG_MEM_5_DELAY_LOOP_CYCLES__MASK 0xffffffff
1834c28c82e9SRob Clark #define CP_WAIT_REG_MEM_5_DELAY_LOOP_CYCLES__SHIFT 0
CP_WAIT_REG_MEM_5_DELAY_LOOP_CYCLES(uint32_t val)1835c28c82e9SRob Clark static inline uint32_t CP_WAIT_REG_MEM_5_DELAY_LOOP_CYCLES(uint32_t val)
1836c28c82e9SRob Clark {
1837c28c82e9SRob Clark return ((val) << CP_WAIT_REG_MEM_5_DELAY_LOOP_CYCLES__SHIFT) & CP_WAIT_REG_MEM_5_DELAY_LOOP_CYCLES__MASK;
1838c28c82e9SRob Clark }
1839c28c82e9SRob Clark
1840c28c82e9SRob Clark #define REG_CP_WAIT_TWO_REGS_0 0x00000000
1841c28c82e9SRob Clark #define CP_WAIT_TWO_REGS_0_REG0__MASK 0x0003ffff
1842c28c82e9SRob Clark #define CP_WAIT_TWO_REGS_0_REG0__SHIFT 0
CP_WAIT_TWO_REGS_0_REG0(uint32_t val)1843c28c82e9SRob Clark static inline uint32_t CP_WAIT_TWO_REGS_0_REG0(uint32_t val)
1844c28c82e9SRob Clark {
1845c28c82e9SRob Clark return ((val) << CP_WAIT_TWO_REGS_0_REG0__SHIFT) & CP_WAIT_TWO_REGS_0_REG0__MASK;
1846c28c82e9SRob Clark }
1847c28c82e9SRob Clark
1848c28c82e9SRob Clark #define REG_CP_WAIT_TWO_REGS_1 0x00000001
1849c28c82e9SRob Clark #define CP_WAIT_TWO_REGS_1_REG1__MASK 0x0003ffff
1850c28c82e9SRob Clark #define CP_WAIT_TWO_REGS_1_REG1__SHIFT 0
CP_WAIT_TWO_REGS_1_REG1(uint32_t val)1851c28c82e9SRob Clark static inline uint32_t CP_WAIT_TWO_REGS_1_REG1(uint32_t val)
1852c28c82e9SRob Clark {
1853c28c82e9SRob Clark return ((val) << CP_WAIT_TWO_REGS_1_REG1__SHIFT) & CP_WAIT_TWO_REGS_1_REG1__MASK;
1854c28c82e9SRob Clark }
1855c28c82e9SRob Clark
1856c28c82e9SRob Clark #define REG_CP_WAIT_TWO_REGS_2 0x00000002
1857c28c82e9SRob Clark #define CP_WAIT_TWO_REGS_2_REF__MASK 0xffffffff
1858c28c82e9SRob Clark #define CP_WAIT_TWO_REGS_2_REF__SHIFT 0
CP_WAIT_TWO_REGS_2_REF(uint32_t val)1859c28c82e9SRob Clark static inline uint32_t CP_WAIT_TWO_REGS_2_REF(uint32_t val)
1860c28c82e9SRob Clark {
1861c28c82e9SRob Clark return ((val) << CP_WAIT_TWO_REGS_2_REF__SHIFT) & CP_WAIT_TWO_REGS_2_REF__MASK;
1862c28c82e9SRob Clark }
1863c28c82e9SRob Clark
1864a26ae754SRob Clark #define REG_CP_DISPATCH_COMPUTE_0 0x00000000
1865a26ae754SRob Clark
1866a26ae754SRob Clark #define REG_CP_DISPATCH_COMPUTE_1 0x00000001
1867a26ae754SRob Clark #define CP_DISPATCH_COMPUTE_1_X__MASK 0xffffffff
1868a26ae754SRob Clark #define CP_DISPATCH_COMPUTE_1_X__SHIFT 0
CP_DISPATCH_COMPUTE_1_X(uint32_t val)1869a26ae754SRob Clark static inline uint32_t CP_DISPATCH_COMPUTE_1_X(uint32_t val)
1870a26ae754SRob Clark {
1871a26ae754SRob Clark return ((val) << CP_DISPATCH_COMPUTE_1_X__SHIFT) & CP_DISPATCH_COMPUTE_1_X__MASK;
1872a26ae754SRob Clark }
1873a26ae754SRob Clark
1874a26ae754SRob Clark #define REG_CP_DISPATCH_COMPUTE_2 0x00000002
1875a26ae754SRob Clark #define CP_DISPATCH_COMPUTE_2_Y__MASK 0xffffffff
1876a26ae754SRob Clark #define CP_DISPATCH_COMPUTE_2_Y__SHIFT 0
CP_DISPATCH_COMPUTE_2_Y(uint32_t val)1877a26ae754SRob Clark static inline uint32_t CP_DISPATCH_COMPUTE_2_Y(uint32_t val)
1878a26ae754SRob Clark {
1879a26ae754SRob Clark return ((val) << CP_DISPATCH_COMPUTE_2_Y__SHIFT) & CP_DISPATCH_COMPUTE_2_Y__MASK;
1880a26ae754SRob Clark }
1881a26ae754SRob Clark
1882a26ae754SRob Clark #define REG_CP_DISPATCH_COMPUTE_3 0x00000003
1883a26ae754SRob Clark #define CP_DISPATCH_COMPUTE_3_Z__MASK 0xffffffff
1884a26ae754SRob Clark #define CP_DISPATCH_COMPUTE_3_Z__SHIFT 0
CP_DISPATCH_COMPUTE_3_Z(uint32_t val)1885a26ae754SRob Clark static inline uint32_t CP_DISPATCH_COMPUTE_3_Z(uint32_t val)
1886a26ae754SRob Clark {
1887a26ae754SRob Clark return ((val) << CP_DISPATCH_COMPUTE_3_Z__SHIFT) & CP_DISPATCH_COMPUTE_3_Z__MASK;
1888a26ae754SRob Clark }
1889a26ae754SRob Clark
1890a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_0 0x00000000
1891a26ae754SRob Clark #define CP_SET_RENDER_MODE_0_MODE__MASK 0x000001ff
1892a26ae754SRob Clark #define CP_SET_RENDER_MODE_0_MODE__SHIFT 0
CP_SET_RENDER_MODE_0_MODE(enum render_mode_cmd val)1893a26ae754SRob Clark static inline uint32_t CP_SET_RENDER_MODE_0_MODE(enum render_mode_cmd val)
1894a26ae754SRob Clark {
1895a26ae754SRob Clark return ((val) << CP_SET_RENDER_MODE_0_MODE__SHIFT) & CP_SET_RENDER_MODE_0_MODE__MASK;
1896a26ae754SRob Clark }
1897a26ae754SRob Clark
1898a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_1 0x00000001
1899a26ae754SRob Clark #define CP_SET_RENDER_MODE_1_ADDR_0_LO__MASK 0xffffffff
1900a26ae754SRob Clark #define CP_SET_RENDER_MODE_1_ADDR_0_LO__SHIFT 0
CP_SET_RENDER_MODE_1_ADDR_0_LO(uint32_t val)1901a26ae754SRob Clark static inline uint32_t CP_SET_RENDER_MODE_1_ADDR_0_LO(uint32_t val)
1902a26ae754SRob Clark {
1903a26ae754SRob Clark return ((val) << CP_SET_RENDER_MODE_1_ADDR_0_LO__SHIFT) & CP_SET_RENDER_MODE_1_ADDR_0_LO__MASK;
1904a26ae754SRob Clark }
1905a26ae754SRob Clark
1906a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_2 0x00000002
1907a26ae754SRob Clark #define CP_SET_RENDER_MODE_2_ADDR_0_HI__MASK 0xffffffff
1908a26ae754SRob Clark #define CP_SET_RENDER_MODE_2_ADDR_0_HI__SHIFT 0
CP_SET_RENDER_MODE_2_ADDR_0_HI(uint32_t val)1909a26ae754SRob Clark static inline uint32_t CP_SET_RENDER_MODE_2_ADDR_0_HI(uint32_t val)
1910a26ae754SRob Clark {
1911a26ae754SRob Clark return ((val) << CP_SET_RENDER_MODE_2_ADDR_0_HI__SHIFT) & CP_SET_RENDER_MODE_2_ADDR_0_HI__MASK;
1912a26ae754SRob Clark }
1913a26ae754SRob Clark
1914a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_3 0x00000003
191552260ae4SRob Clark #define CP_SET_RENDER_MODE_3_VSC_ENABLE 0x00000008
1916a26ae754SRob Clark #define CP_SET_RENDER_MODE_3_GMEM_ENABLE 0x00000010
1917a26ae754SRob Clark
1918a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_4 0x00000004
1919a26ae754SRob Clark
1920a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_5 0x00000005
1921a26ae754SRob Clark #define CP_SET_RENDER_MODE_5_ADDR_1_LEN__MASK 0xffffffff
1922a26ae754SRob Clark #define CP_SET_RENDER_MODE_5_ADDR_1_LEN__SHIFT 0
CP_SET_RENDER_MODE_5_ADDR_1_LEN(uint32_t val)1923a26ae754SRob Clark static inline uint32_t CP_SET_RENDER_MODE_5_ADDR_1_LEN(uint32_t val)
1924a26ae754SRob Clark {
1925a26ae754SRob Clark return ((val) << CP_SET_RENDER_MODE_5_ADDR_1_LEN__SHIFT) & CP_SET_RENDER_MODE_5_ADDR_1_LEN__MASK;
1926a26ae754SRob Clark }
1927a26ae754SRob Clark
1928a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_6 0x00000006
1929a26ae754SRob Clark #define CP_SET_RENDER_MODE_6_ADDR_1_LO__MASK 0xffffffff
1930a26ae754SRob Clark #define CP_SET_RENDER_MODE_6_ADDR_1_LO__SHIFT 0
CP_SET_RENDER_MODE_6_ADDR_1_LO(uint32_t val)1931a26ae754SRob Clark static inline uint32_t CP_SET_RENDER_MODE_6_ADDR_1_LO(uint32_t val)
1932a26ae754SRob Clark {
1933a26ae754SRob Clark return ((val) << CP_SET_RENDER_MODE_6_ADDR_1_LO__SHIFT) & CP_SET_RENDER_MODE_6_ADDR_1_LO__MASK;
1934a26ae754SRob Clark }
1935a26ae754SRob Clark
1936a26ae754SRob Clark #define REG_CP_SET_RENDER_MODE_7 0x00000007
1937a26ae754SRob Clark #define CP_SET_RENDER_MODE_7_ADDR_1_HI__MASK 0xffffffff
1938a26ae754SRob Clark #define CP_SET_RENDER_MODE_7_ADDR_1_HI__SHIFT 0
CP_SET_RENDER_MODE_7_ADDR_1_HI(uint32_t val)1939a26ae754SRob Clark static inline uint32_t CP_SET_RENDER_MODE_7_ADDR_1_HI(uint32_t val)
1940a26ae754SRob Clark {
1941a26ae754SRob Clark return ((val) << CP_SET_RENDER_MODE_7_ADDR_1_HI__SHIFT) & CP_SET_RENDER_MODE_7_ADDR_1_HI__MASK;
1942a26ae754SRob Clark }
1943a26ae754SRob Clark
194452260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_0 0x00000000
194552260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_0_ADDR_0_LO__MASK 0xffffffff
194652260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_0_ADDR_0_LO__SHIFT 0
CP_COMPUTE_CHECKPOINT_0_ADDR_0_LO(uint32_t val)194752260ae4SRob Clark static inline uint32_t CP_COMPUTE_CHECKPOINT_0_ADDR_0_LO(uint32_t val)
194852260ae4SRob Clark {
194952260ae4SRob Clark return ((val) << CP_COMPUTE_CHECKPOINT_0_ADDR_0_LO__SHIFT) & CP_COMPUTE_CHECKPOINT_0_ADDR_0_LO__MASK;
195052260ae4SRob Clark }
195152260ae4SRob Clark
195252260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_1 0x00000001
195352260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_1_ADDR_0_HI__MASK 0xffffffff
195452260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_1_ADDR_0_HI__SHIFT 0
CP_COMPUTE_CHECKPOINT_1_ADDR_0_HI(uint32_t val)195552260ae4SRob Clark static inline uint32_t CP_COMPUTE_CHECKPOINT_1_ADDR_0_HI(uint32_t val)
195652260ae4SRob Clark {
195752260ae4SRob Clark return ((val) << CP_COMPUTE_CHECKPOINT_1_ADDR_0_HI__SHIFT) & CP_COMPUTE_CHECKPOINT_1_ADDR_0_HI__MASK;
195852260ae4SRob Clark }
195952260ae4SRob Clark
196052260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_2 0x00000002
196152260ae4SRob Clark
196252260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_3 0x00000003
19632d756322SRob Clark #define CP_COMPUTE_CHECKPOINT_3_ADDR_1_LEN__MASK 0xffffffff
19642d756322SRob Clark #define CP_COMPUTE_CHECKPOINT_3_ADDR_1_LEN__SHIFT 0
CP_COMPUTE_CHECKPOINT_3_ADDR_1_LEN(uint32_t val)19652d756322SRob Clark static inline uint32_t CP_COMPUTE_CHECKPOINT_3_ADDR_1_LEN(uint32_t val)
19662d756322SRob Clark {
19672d756322SRob Clark return ((val) << CP_COMPUTE_CHECKPOINT_3_ADDR_1_LEN__SHIFT) & CP_COMPUTE_CHECKPOINT_3_ADDR_1_LEN__MASK;
19682d756322SRob Clark }
196952260ae4SRob Clark
197052260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_4 0x00000004
197152260ae4SRob Clark
197252260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_5 0x00000005
197352260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_5_ADDR_1_LO__MASK 0xffffffff
197452260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_5_ADDR_1_LO__SHIFT 0
CP_COMPUTE_CHECKPOINT_5_ADDR_1_LO(uint32_t val)197552260ae4SRob Clark static inline uint32_t CP_COMPUTE_CHECKPOINT_5_ADDR_1_LO(uint32_t val)
197652260ae4SRob Clark {
197752260ae4SRob Clark return ((val) << CP_COMPUTE_CHECKPOINT_5_ADDR_1_LO__SHIFT) & CP_COMPUTE_CHECKPOINT_5_ADDR_1_LO__MASK;
197852260ae4SRob Clark }
197952260ae4SRob Clark
198052260ae4SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_6 0x00000006
198152260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_6_ADDR_1_HI__MASK 0xffffffff
198252260ae4SRob Clark #define CP_COMPUTE_CHECKPOINT_6_ADDR_1_HI__SHIFT 0
CP_COMPUTE_CHECKPOINT_6_ADDR_1_HI(uint32_t val)198352260ae4SRob Clark static inline uint32_t CP_COMPUTE_CHECKPOINT_6_ADDR_1_HI(uint32_t val)
198452260ae4SRob Clark {
198552260ae4SRob Clark return ((val) << CP_COMPUTE_CHECKPOINT_6_ADDR_1_HI__SHIFT) & CP_COMPUTE_CHECKPOINT_6_ADDR_1_HI__MASK;
198652260ae4SRob Clark }
198752260ae4SRob Clark
19882d756322SRob Clark #define REG_CP_COMPUTE_CHECKPOINT_7 0x00000007
19892d756322SRob Clark
1990a26ae754SRob Clark #define REG_CP_PERFCOUNTER_ACTION_0 0x00000000
1991a26ae754SRob Clark
1992a26ae754SRob Clark #define REG_CP_PERFCOUNTER_ACTION_1 0x00000001
1993a26ae754SRob Clark #define CP_PERFCOUNTER_ACTION_1_ADDR_0_LO__MASK 0xffffffff
1994a26ae754SRob Clark #define CP_PERFCOUNTER_ACTION_1_ADDR_0_LO__SHIFT 0
CP_PERFCOUNTER_ACTION_1_ADDR_0_LO(uint32_t val)1995a26ae754SRob Clark static inline uint32_t CP_PERFCOUNTER_ACTION_1_ADDR_0_LO(uint32_t val)
1996a26ae754SRob Clark {
1997a26ae754SRob Clark return ((val) << CP_PERFCOUNTER_ACTION_1_ADDR_0_LO__SHIFT) & CP_PERFCOUNTER_ACTION_1_ADDR_0_LO__MASK;
1998a26ae754SRob Clark }
1999a26ae754SRob Clark
2000a26ae754SRob Clark #define REG_CP_PERFCOUNTER_ACTION_2 0x00000002
2001a26ae754SRob Clark #define CP_PERFCOUNTER_ACTION_2_ADDR_0_HI__MASK 0xffffffff
2002a26ae754SRob Clark #define CP_PERFCOUNTER_ACTION_2_ADDR_0_HI__SHIFT 0
CP_PERFCOUNTER_ACTION_2_ADDR_0_HI(uint32_t val)2003a26ae754SRob Clark static inline uint32_t CP_PERFCOUNTER_ACTION_2_ADDR_0_HI(uint32_t val)
2004a26ae754SRob Clark {
2005a26ae754SRob Clark return ((val) << CP_PERFCOUNTER_ACTION_2_ADDR_0_HI__SHIFT) & CP_PERFCOUNTER_ACTION_2_ADDR_0_HI__MASK;
2006a26ae754SRob Clark }
2007a26ae754SRob Clark
2008a26ae754SRob Clark #define REG_CP_EVENT_WRITE_0 0x00000000
2009a26ae754SRob Clark #define CP_EVENT_WRITE_0_EVENT__MASK 0x000000ff
2010a26ae754SRob Clark #define CP_EVENT_WRITE_0_EVENT__SHIFT 0
CP_EVENT_WRITE_0_EVENT(enum vgt_event_type val)2011a26ae754SRob Clark static inline uint32_t CP_EVENT_WRITE_0_EVENT(enum vgt_event_type val)
2012a26ae754SRob Clark {
2013a26ae754SRob Clark return ((val) << CP_EVENT_WRITE_0_EVENT__SHIFT) & CP_EVENT_WRITE_0_EVENT__MASK;
2014a26ae754SRob Clark }
201552260ae4SRob Clark #define CP_EVENT_WRITE_0_TIMESTAMP 0x40000000
2016c28c82e9SRob Clark #define CP_EVENT_WRITE_0_IRQ 0x80000000
2017a26ae754SRob Clark
2018a26ae754SRob Clark #define REG_CP_EVENT_WRITE_1 0x00000001
2019a26ae754SRob Clark #define CP_EVENT_WRITE_1_ADDR_0_LO__MASK 0xffffffff
2020a26ae754SRob Clark #define CP_EVENT_WRITE_1_ADDR_0_LO__SHIFT 0
CP_EVENT_WRITE_1_ADDR_0_LO(uint32_t val)2021a26ae754SRob Clark static inline uint32_t CP_EVENT_WRITE_1_ADDR_0_LO(uint32_t val)
2022a26ae754SRob Clark {
2023a26ae754SRob Clark return ((val) << CP_EVENT_WRITE_1_ADDR_0_LO__SHIFT) & CP_EVENT_WRITE_1_ADDR_0_LO__MASK;
2024a26ae754SRob Clark }
2025a26ae754SRob Clark
2026a26ae754SRob Clark #define REG_CP_EVENT_WRITE_2 0x00000002
2027a26ae754SRob Clark #define CP_EVENT_WRITE_2_ADDR_0_HI__MASK 0xffffffff
2028a26ae754SRob Clark #define CP_EVENT_WRITE_2_ADDR_0_HI__SHIFT 0
CP_EVENT_WRITE_2_ADDR_0_HI(uint32_t val)2029a26ae754SRob Clark static inline uint32_t CP_EVENT_WRITE_2_ADDR_0_HI(uint32_t val)
2030a26ae754SRob Clark {
2031a26ae754SRob Clark return ((val) << CP_EVENT_WRITE_2_ADDR_0_HI__SHIFT) & CP_EVENT_WRITE_2_ADDR_0_HI__MASK;
2032a26ae754SRob Clark }
2033a26ae754SRob Clark
2034a26ae754SRob Clark #define REG_CP_EVENT_WRITE_3 0x00000003
2035a26ae754SRob Clark
2036a26ae754SRob Clark #define REG_CP_BLIT_0 0x00000000
2037a26ae754SRob Clark #define CP_BLIT_0_OP__MASK 0x0000000f
2038a26ae754SRob Clark #define CP_BLIT_0_OP__SHIFT 0
CP_BLIT_0_OP(enum cp_blit_cmd val)2039a26ae754SRob Clark static inline uint32_t CP_BLIT_0_OP(enum cp_blit_cmd val)
2040a26ae754SRob Clark {
2041a26ae754SRob Clark return ((val) << CP_BLIT_0_OP__SHIFT) & CP_BLIT_0_OP__MASK;
2042a26ae754SRob Clark }
2043a26ae754SRob Clark
2044a26ae754SRob Clark #define REG_CP_BLIT_1 0x00000001
20452d756322SRob Clark #define CP_BLIT_1_SRC_X1__MASK 0x00003fff
2046a26ae754SRob Clark #define CP_BLIT_1_SRC_X1__SHIFT 0
CP_BLIT_1_SRC_X1(uint32_t val)2047a26ae754SRob Clark static inline uint32_t CP_BLIT_1_SRC_X1(uint32_t val)
2048a26ae754SRob Clark {
2049a26ae754SRob Clark return ((val) << CP_BLIT_1_SRC_X1__SHIFT) & CP_BLIT_1_SRC_X1__MASK;
2050a26ae754SRob Clark }
20512d756322SRob Clark #define CP_BLIT_1_SRC_Y1__MASK 0x3fff0000
2052a26ae754SRob Clark #define CP_BLIT_1_SRC_Y1__SHIFT 16
CP_BLIT_1_SRC_Y1(uint32_t val)2053a26ae754SRob Clark static inline uint32_t CP_BLIT_1_SRC_Y1(uint32_t val)
2054a26ae754SRob Clark {
2055a26ae754SRob Clark return ((val) << CP_BLIT_1_SRC_Y1__SHIFT) & CP_BLIT_1_SRC_Y1__MASK;
2056a26ae754SRob Clark }
2057a26ae754SRob Clark
2058a26ae754SRob Clark #define REG_CP_BLIT_2 0x00000002
20592d756322SRob Clark #define CP_BLIT_2_SRC_X2__MASK 0x00003fff
2060a26ae754SRob Clark #define CP_BLIT_2_SRC_X2__SHIFT 0
CP_BLIT_2_SRC_X2(uint32_t val)2061a26ae754SRob Clark static inline uint32_t CP_BLIT_2_SRC_X2(uint32_t val)
2062a26ae754SRob Clark {
2063a26ae754SRob Clark return ((val) << CP_BLIT_2_SRC_X2__SHIFT) & CP_BLIT_2_SRC_X2__MASK;
2064a26ae754SRob Clark }
20652d756322SRob Clark #define CP_BLIT_2_SRC_Y2__MASK 0x3fff0000
2066a26ae754SRob Clark #define CP_BLIT_2_SRC_Y2__SHIFT 16
CP_BLIT_2_SRC_Y2(uint32_t val)2067a26ae754SRob Clark static inline uint32_t CP_BLIT_2_SRC_Y2(uint32_t val)
2068a26ae754SRob Clark {
2069a26ae754SRob Clark return ((val) << CP_BLIT_2_SRC_Y2__SHIFT) & CP_BLIT_2_SRC_Y2__MASK;
2070a26ae754SRob Clark }
2071a26ae754SRob Clark
2072a26ae754SRob Clark #define REG_CP_BLIT_3 0x00000003
20732d756322SRob Clark #define CP_BLIT_3_DST_X1__MASK 0x00003fff
2074a26ae754SRob Clark #define CP_BLIT_3_DST_X1__SHIFT 0
CP_BLIT_3_DST_X1(uint32_t val)2075a26ae754SRob Clark static inline uint32_t CP_BLIT_3_DST_X1(uint32_t val)
2076a26ae754SRob Clark {
2077a26ae754SRob Clark return ((val) << CP_BLIT_3_DST_X1__SHIFT) & CP_BLIT_3_DST_X1__MASK;
2078a26ae754SRob Clark }
20792d756322SRob Clark #define CP_BLIT_3_DST_Y1__MASK 0x3fff0000
2080a26ae754SRob Clark #define CP_BLIT_3_DST_Y1__SHIFT 16
CP_BLIT_3_DST_Y1(uint32_t val)2081a26ae754SRob Clark static inline uint32_t CP_BLIT_3_DST_Y1(uint32_t val)
2082a26ae754SRob Clark {
2083a26ae754SRob Clark return ((val) << CP_BLIT_3_DST_Y1__SHIFT) & CP_BLIT_3_DST_Y1__MASK;
2084a26ae754SRob Clark }
2085a26ae754SRob Clark
2086a26ae754SRob Clark #define REG_CP_BLIT_4 0x00000004
20872d756322SRob Clark #define CP_BLIT_4_DST_X2__MASK 0x00003fff
2088a26ae754SRob Clark #define CP_BLIT_4_DST_X2__SHIFT 0
CP_BLIT_4_DST_X2(uint32_t val)2089a26ae754SRob Clark static inline uint32_t CP_BLIT_4_DST_X2(uint32_t val)
2090a26ae754SRob Clark {
2091a26ae754SRob Clark return ((val) << CP_BLIT_4_DST_X2__SHIFT) & CP_BLIT_4_DST_X2__MASK;
2092a26ae754SRob Clark }
20932d756322SRob Clark #define CP_BLIT_4_DST_Y2__MASK 0x3fff0000
2094a26ae754SRob Clark #define CP_BLIT_4_DST_Y2__SHIFT 16
CP_BLIT_4_DST_Y2(uint32_t val)2095a26ae754SRob Clark static inline uint32_t CP_BLIT_4_DST_Y2(uint32_t val)
2096a26ae754SRob Clark {
2097a26ae754SRob Clark return ((val) << CP_BLIT_4_DST_Y2__SHIFT) & CP_BLIT_4_DST_Y2__MASK;
2098a26ae754SRob Clark }
2099a26ae754SRob Clark
210052260ae4SRob Clark #define REG_CP_EXEC_CS_0 0x00000000
210152260ae4SRob Clark
210252260ae4SRob Clark #define REG_CP_EXEC_CS_1 0x00000001
210352260ae4SRob Clark #define CP_EXEC_CS_1_NGROUPS_X__MASK 0xffffffff
210452260ae4SRob Clark #define CP_EXEC_CS_1_NGROUPS_X__SHIFT 0
CP_EXEC_CS_1_NGROUPS_X(uint32_t val)210552260ae4SRob Clark static inline uint32_t CP_EXEC_CS_1_NGROUPS_X(uint32_t val)
210652260ae4SRob Clark {
210752260ae4SRob Clark return ((val) << CP_EXEC_CS_1_NGROUPS_X__SHIFT) & CP_EXEC_CS_1_NGROUPS_X__MASK;
210852260ae4SRob Clark }
210952260ae4SRob Clark
211052260ae4SRob Clark #define REG_CP_EXEC_CS_2 0x00000002
211152260ae4SRob Clark #define CP_EXEC_CS_2_NGROUPS_Y__MASK 0xffffffff
211252260ae4SRob Clark #define CP_EXEC_CS_2_NGROUPS_Y__SHIFT 0
CP_EXEC_CS_2_NGROUPS_Y(uint32_t val)211352260ae4SRob Clark static inline uint32_t CP_EXEC_CS_2_NGROUPS_Y(uint32_t val)
211452260ae4SRob Clark {
211552260ae4SRob Clark return ((val) << CP_EXEC_CS_2_NGROUPS_Y__SHIFT) & CP_EXEC_CS_2_NGROUPS_Y__MASK;
211652260ae4SRob Clark }
211752260ae4SRob Clark
211852260ae4SRob Clark #define REG_CP_EXEC_CS_3 0x00000003
211952260ae4SRob Clark #define CP_EXEC_CS_3_NGROUPS_Z__MASK 0xffffffff
212052260ae4SRob Clark #define CP_EXEC_CS_3_NGROUPS_Z__SHIFT 0
CP_EXEC_CS_3_NGROUPS_Z(uint32_t val)212152260ae4SRob Clark static inline uint32_t CP_EXEC_CS_3_NGROUPS_Z(uint32_t val)
212252260ae4SRob Clark {
212352260ae4SRob Clark return ((val) << CP_EXEC_CS_3_NGROUPS_Z__SHIFT) & CP_EXEC_CS_3_NGROUPS_Z__MASK;
212452260ae4SRob Clark }
212552260ae4SRob Clark
21262d756322SRob Clark #define REG_A4XX_CP_EXEC_CS_INDIRECT_0 0x00000000
21272d756322SRob Clark
21282d756322SRob Clark
21292d756322SRob Clark #define REG_A4XX_CP_EXEC_CS_INDIRECT_1 0x00000001
21302d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_1_ADDR__MASK 0xffffffff
21312d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_1_ADDR__SHIFT 0
A4XX_CP_EXEC_CS_INDIRECT_1_ADDR(uint32_t val)21322d756322SRob Clark static inline uint32_t A4XX_CP_EXEC_CS_INDIRECT_1_ADDR(uint32_t val)
21332d756322SRob Clark {
21342d756322SRob Clark return ((val) << A4XX_CP_EXEC_CS_INDIRECT_1_ADDR__SHIFT) & A4XX_CP_EXEC_CS_INDIRECT_1_ADDR__MASK;
21352d756322SRob Clark }
21362d756322SRob Clark
21372d756322SRob Clark #define REG_A4XX_CP_EXEC_CS_INDIRECT_2 0x00000002
21382d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEX__MASK 0x00000ffc
21392d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEX__SHIFT 2
A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEX(uint32_t val)21402d756322SRob Clark static inline uint32_t A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEX(uint32_t val)
21412d756322SRob Clark {
21422d756322SRob Clark return ((val) << A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEX__SHIFT) & A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEX__MASK;
21432d756322SRob Clark }
21442d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEY__MASK 0x003ff000
21452d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEY__SHIFT 12
A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEY(uint32_t val)21462d756322SRob Clark static inline uint32_t A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEY(uint32_t val)
21472d756322SRob Clark {
21482d756322SRob Clark return ((val) << A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEY__SHIFT) & A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEY__MASK;
21492d756322SRob Clark }
21502d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEZ__MASK 0xffc00000
21512d756322SRob Clark #define A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEZ__SHIFT 22
A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEZ(uint32_t val)21522d756322SRob Clark static inline uint32_t A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEZ(uint32_t val)
21532d756322SRob Clark {
21542d756322SRob Clark return ((val) << A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEZ__SHIFT) & A4XX_CP_EXEC_CS_INDIRECT_2_LOCALSIZEZ__MASK;
21552d756322SRob Clark }
21562d756322SRob Clark
21572d756322SRob Clark
21582d756322SRob Clark #define REG_A5XX_CP_EXEC_CS_INDIRECT_1 0x00000001
21592d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_1_ADDR_LO__MASK 0xffffffff
21602d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_1_ADDR_LO__SHIFT 0
A5XX_CP_EXEC_CS_INDIRECT_1_ADDR_LO(uint32_t val)21612d756322SRob Clark static inline uint32_t A5XX_CP_EXEC_CS_INDIRECT_1_ADDR_LO(uint32_t val)
21622d756322SRob Clark {
21632d756322SRob Clark return ((val) << A5XX_CP_EXEC_CS_INDIRECT_1_ADDR_LO__SHIFT) & A5XX_CP_EXEC_CS_INDIRECT_1_ADDR_LO__MASK;
21642d756322SRob Clark }
21652d756322SRob Clark
21662d756322SRob Clark #define REG_A5XX_CP_EXEC_CS_INDIRECT_2 0x00000002
21672d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_2_ADDR_HI__MASK 0xffffffff
21682d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_2_ADDR_HI__SHIFT 0
A5XX_CP_EXEC_CS_INDIRECT_2_ADDR_HI(uint32_t val)21692d756322SRob Clark static inline uint32_t A5XX_CP_EXEC_CS_INDIRECT_2_ADDR_HI(uint32_t val)
21702d756322SRob Clark {
21712d756322SRob Clark return ((val) << A5XX_CP_EXEC_CS_INDIRECT_2_ADDR_HI__SHIFT) & A5XX_CP_EXEC_CS_INDIRECT_2_ADDR_HI__MASK;
21722d756322SRob Clark }
21732d756322SRob Clark
21742d756322SRob Clark #define REG_A5XX_CP_EXEC_CS_INDIRECT_3 0x00000003
21752d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEX__MASK 0x00000ffc
21762d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEX__SHIFT 2
A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEX(uint32_t val)21772d756322SRob Clark static inline uint32_t A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEX(uint32_t val)
21782d756322SRob Clark {
21792d756322SRob Clark return ((val) << A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEX__SHIFT) & A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEX__MASK;
21802d756322SRob Clark }
21812d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEY__MASK 0x003ff000
21822d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEY__SHIFT 12
A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEY(uint32_t val)21832d756322SRob Clark static inline uint32_t A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEY(uint32_t val)
21842d756322SRob Clark {
21852d756322SRob Clark return ((val) << A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEY__SHIFT) & A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEY__MASK;
21862d756322SRob Clark }
21872d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEZ__MASK 0xffc00000
21882d756322SRob Clark #define A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEZ__SHIFT 22
A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEZ(uint32_t val)21892d756322SRob Clark static inline uint32_t A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEZ(uint32_t val)
21902d756322SRob Clark {
21912d756322SRob Clark return ((val) << A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEZ__SHIFT) & A5XX_CP_EXEC_CS_INDIRECT_3_LOCALSIZEZ__MASK;
21922d756322SRob Clark }
21932d756322SRob Clark
2194c28c82e9SRob Clark #define REG_A6XX_CP_SET_MARKER_0 0x00000000
2195c28c82e9SRob Clark #define A6XX_CP_SET_MARKER_0_MODE__MASK 0x000001ff
2196c28c82e9SRob Clark #define A6XX_CP_SET_MARKER_0_MODE__SHIFT 0
A6XX_CP_SET_MARKER_0_MODE(enum a6xx_marker val)219757cfe41cSRob Clark static inline uint32_t A6XX_CP_SET_MARKER_0_MODE(enum a6xx_marker val)
21982d756322SRob Clark {
2199c28c82e9SRob Clark return ((val) << A6XX_CP_SET_MARKER_0_MODE__SHIFT) & A6XX_CP_SET_MARKER_0_MODE__MASK;
22002d756322SRob Clark }
2201c28c82e9SRob Clark #define A6XX_CP_SET_MARKER_0_MARKER__MASK 0x0000000f
2202c28c82e9SRob Clark #define A6XX_CP_SET_MARKER_0_MARKER__SHIFT 0
A6XX_CP_SET_MARKER_0_MARKER(enum a6xx_marker val)220357cfe41cSRob Clark static inline uint32_t A6XX_CP_SET_MARKER_0_MARKER(enum a6xx_marker val)
22042d756322SRob Clark {
2205c28c82e9SRob Clark return ((val) << A6XX_CP_SET_MARKER_0_MARKER__SHIFT) & A6XX_CP_SET_MARKER_0_MARKER__MASK;
22062d756322SRob Clark }
22072d756322SRob Clark
REG_A6XX_CP_SET_PSEUDO_REG_(uint32_t i0)2208c28c82e9SRob Clark static inline uint32_t REG_A6XX_CP_SET_PSEUDO_REG_(uint32_t i0) { return 0x00000000 + 0x3*i0; }
2209c28c82e9SRob Clark
REG_A6XX_CP_SET_PSEUDO_REG__0(uint32_t i0)2210c28c82e9SRob Clark static inline uint32_t REG_A6XX_CP_SET_PSEUDO_REG__0(uint32_t i0) { return 0x00000000 + 0x3*i0; }
2211c28c82e9SRob Clark #define A6XX_CP_SET_PSEUDO_REG__0_PSEUDO_REG__MASK 0x00000007
2212c28c82e9SRob Clark #define A6XX_CP_SET_PSEUDO_REG__0_PSEUDO_REG__SHIFT 0
A6XX_CP_SET_PSEUDO_REG__0_PSEUDO_REG(enum pseudo_reg val)2213c28c82e9SRob Clark static inline uint32_t A6XX_CP_SET_PSEUDO_REG__0_PSEUDO_REG(enum pseudo_reg val)
22142d756322SRob Clark {
2215c28c82e9SRob Clark return ((val) << A6XX_CP_SET_PSEUDO_REG__0_PSEUDO_REG__SHIFT) & A6XX_CP_SET_PSEUDO_REG__0_PSEUDO_REG__MASK;
22162d756322SRob Clark }
22172d756322SRob Clark
REG_A6XX_CP_SET_PSEUDO_REG__1(uint32_t i0)2218c28c82e9SRob Clark static inline uint32_t REG_A6XX_CP_SET_PSEUDO_REG__1(uint32_t i0) { return 0x00000001 + 0x3*i0; }
2219c28c82e9SRob Clark #define A6XX_CP_SET_PSEUDO_REG__1_LO__MASK 0xffffffff
2220c28c82e9SRob Clark #define A6XX_CP_SET_PSEUDO_REG__1_LO__SHIFT 0
A6XX_CP_SET_PSEUDO_REG__1_LO(uint32_t val)2221c28c82e9SRob Clark static inline uint32_t A6XX_CP_SET_PSEUDO_REG__1_LO(uint32_t val)
22222d756322SRob Clark {
2223c28c82e9SRob Clark return ((val) << A6XX_CP_SET_PSEUDO_REG__1_LO__SHIFT) & A6XX_CP_SET_PSEUDO_REG__1_LO__MASK;
22242d756322SRob Clark }
22252d756322SRob Clark
REG_A6XX_CP_SET_PSEUDO_REG__2(uint32_t i0)2226c28c82e9SRob Clark static inline uint32_t REG_A6XX_CP_SET_PSEUDO_REG__2(uint32_t i0) { return 0x00000002 + 0x3*i0; }
2227c28c82e9SRob Clark #define A6XX_CP_SET_PSEUDO_REG__2_HI__MASK 0xffffffff
2228c28c82e9SRob Clark #define A6XX_CP_SET_PSEUDO_REG__2_HI__SHIFT 0
A6XX_CP_SET_PSEUDO_REG__2_HI(uint32_t val)2229c28c82e9SRob Clark static inline uint32_t A6XX_CP_SET_PSEUDO_REG__2_HI(uint32_t val)
22302d756322SRob Clark {
2231c28c82e9SRob Clark return ((val) << A6XX_CP_SET_PSEUDO_REG__2_HI__SHIFT) & A6XX_CP_SET_PSEUDO_REG__2_HI__MASK;
22322d756322SRob Clark }
2233c28c82e9SRob Clark
2234c28c82e9SRob Clark #define REG_A6XX_CP_REG_TEST_0 0x00000000
2235c28c82e9SRob Clark #define A6XX_CP_REG_TEST_0_REG__MASK 0x0003ffff
2236c28c82e9SRob Clark #define A6XX_CP_REG_TEST_0_REG__SHIFT 0
A6XX_CP_REG_TEST_0_REG(uint32_t val)2237c28c82e9SRob Clark static inline uint32_t A6XX_CP_REG_TEST_0_REG(uint32_t val)
22382d756322SRob Clark {
2239c28c82e9SRob Clark return ((val) << A6XX_CP_REG_TEST_0_REG__SHIFT) & A6XX_CP_REG_TEST_0_REG__MASK;
22402d756322SRob Clark }
2241c28c82e9SRob Clark #define A6XX_CP_REG_TEST_0_BIT__MASK 0x01f00000
2242c28c82e9SRob Clark #define A6XX_CP_REG_TEST_0_BIT__SHIFT 20
A6XX_CP_REG_TEST_0_BIT(uint32_t val)2243c28c82e9SRob Clark static inline uint32_t A6XX_CP_REG_TEST_0_BIT(uint32_t val)
2244c28c82e9SRob Clark {
2245c28c82e9SRob Clark return ((val) << A6XX_CP_REG_TEST_0_BIT__SHIFT) & A6XX_CP_REG_TEST_0_BIT__MASK;
2246c28c82e9SRob Clark }
2247*f73343faSRob Clark #define A6XX_CP_REG_TEST_0_SKIP_WAIT_FOR_ME 0x02000000
2248*f73343faSRob Clark #define A6XX_CP_REG_TEST_0_PRED_BIT__MASK 0x7c000000
2249*f73343faSRob Clark #define A6XX_CP_REG_TEST_0_PRED_BIT__SHIFT 26
A6XX_CP_REG_TEST_0_PRED_BIT(uint32_t val)2250*f73343faSRob Clark static inline uint32_t A6XX_CP_REG_TEST_0_PRED_BIT(uint32_t val)
2251*f73343faSRob Clark {
2252*f73343faSRob Clark return ((val) << A6XX_CP_REG_TEST_0_PRED_BIT__SHIFT) & A6XX_CP_REG_TEST_0_PRED_BIT__MASK;
2253*f73343faSRob Clark }
2254*f73343faSRob Clark #define A6XX_CP_REG_TEST_0_PRED_UPDATE 0x80000000
2255*f73343faSRob Clark
2256*f73343faSRob Clark #define REG_A6XX_CP_REG_TEST_PRED_MASK 0x00000001
2257*f73343faSRob Clark
2258*f73343faSRob Clark #define REG_A6XX_CP_REG_TEST_PRED_VAL 0x00000002
2259c28c82e9SRob Clark
2260c28c82e9SRob Clark #define REG_CP_COND_REG_EXEC_0 0x00000000
2261c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_REG0__MASK 0x0003ffff
2262c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_REG0__SHIFT 0
CP_COND_REG_EXEC_0_REG0(uint32_t val)2263c28c82e9SRob Clark static inline uint32_t CP_COND_REG_EXEC_0_REG0(uint32_t val)
2264c28c82e9SRob Clark {
2265c28c82e9SRob Clark return ((val) << CP_COND_REG_EXEC_0_REG0__SHIFT) & CP_COND_REG_EXEC_0_REG0__MASK;
2266c28c82e9SRob Clark }
2267*f73343faSRob Clark #define CP_COND_REG_EXEC_0_PRED_BIT__MASK 0x007c0000
2268*f73343faSRob Clark #define CP_COND_REG_EXEC_0_PRED_BIT__SHIFT 18
CP_COND_REG_EXEC_0_PRED_BIT(uint32_t val)2269*f73343faSRob Clark static inline uint32_t CP_COND_REG_EXEC_0_PRED_BIT(uint32_t val)
2270*f73343faSRob Clark {
2271*f73343faSRob Clark return ((val) << CP_COND_REG_EXEC_0_PRED_BIT__SHIFT) & CP_COND_REG_EXEC_0_PRED_BIT__MASK;
2272*f73343faSRob Clark }
2273c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_BINNING 0x02000000
2274c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_GMEM 0x04000000
2275c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_SYSMEM 0x08000000
2276c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_MODE__MASK 0xf0000000
2277c28c82e9SRob Clark #define CP_COND_REG_EXEC_0_MODE__SHIFT 28
CP_COND_REG_EXEC_0_MODE(enum compare_mode val)2278c28c82e9SRob Clark static inline uint32_t CP_COND_REG_EXEC_0_MODE(enum compare_mode val)
2279c28c82e9SRob Clark {
2280c28c82e9SRob Clark return ((val) << CP_COND_REG_EXEC_0_MODE__SHIFT) & CP_COND_REG_EXEC_0_MODE__MASK;
2281c28c82e9SRob Clark }
2282c28c82e9SRob Clark
2283c28c82e9SRob Clark #define REG_CP_COND_REG_EXEC_1 0x00000001
2284c28c82e9SRob Clark #define CP_COND_REG_EXEC_1_DWORDS__MASK 0xffffffff
2285c28c82e9SRob Clark #define CP_COND_REG_EXEC_1_DWORDS__SHIFT 0
CP_COND_REG_EXEC_1_DWORDS(uint32_t val)2286c28c82e9SRob Clark static inline uint32_t CP_COND_REG_EXEC_1_DWORDS(uint32_t val)
2287c28c82e9SRob Clark {
2288c28c82e9SRob Clark return ((val) << CP_COND_REG_EXEC_1_DWORDS__SHIFT) & CP_COND_REG_EXEC_1_DWORDS__MASK;
2289c28c82e9SRob Clark }
2290c28c82e9SRob Clark
2291c28c82e9SRob Clark #define REG_CP_COND_EXEC_0 0x00000000
2292c28c82e9SRob Clark #define CP_COND_EXEC_0_ADDR0_LO__MASK 0xffffffff
2293c28c82e9SRob Clark #define CP_COND_EXEC_0_ADDR0_LO__SHIFT 0
CP_COND_EXEC_0_ADDR0_LO(uint32_t val)2294c28c82e9SRob Clark static inline uint32_t CP_COND_EXEC_0_ADDR0_LO(uint32_t val)
2295c28c82e9SRob Clark {
2296c28c82e9SRob Clark return ((val) << CP_COND_EXEC_0_ADDR0_LO__SHIFT) & CP_COND_EXEC_0_ADDR0_LO__MASK;
2297c28c82e9SRob Clark }
2298c28c82e9SRob Clark
2299c28c82e9SRob Clark #define REG_CP_COND_EXEC_1 0x00000001
2300c28c82e9SRob Clark #define CP_COND_EXEC_1_ADDR0_HI__MASK 0xffffffff
2301c28c82e9SRob Clark #define CP_COND_EXEC_1_ADDR0_HI__SHIFT 0
CP_COND_EXEC_1_ADDR0_HI(uint32_t val)2302c28c82e9SRob Clark static inline uint32_t CP_COND_EXEC_1_ADDR0_HI(uint32_t val)
2303c28c82e9SRob Clark {
2304c28c82e9SRob Clark return ((val) << CP_COND_EXEC_1_ADDR0_HI__SHIFT) & CP_COND_EXEC_1_ADDR0_HI__MASK;
2305c28c82e9SRob Clark }
2306c28c82e9SRob Clark
2307c28c82e9SRob Clark #define REG_CP_COND_EXEC_2 0x00000002
2308c28c82e9SRob Clark #define CP_COND_EXEC_2_ADDR1_LO__MASK 0xffffffff
2309c28c82e9SRob Clark #define CP_COND_EXEC_2_ADDR1_LO__SHIFT 0
CP_COND_EXEC_2_ADDR1_LO(uint32_t val)2310c28c82e9SRob Clark static inline uint32_t CP_COND_EXEC_2_ADDR1_LO(uint32_t val)
2311c28c82e9SRob Clark {
2312c28c82e9SRob Clark return ((val) << CP_COND_EXEC_2_ADDR1_LO__SHIFT) & CP_COND_EXEC_2_ADDR1_LO__MASK;
2313c28c82e9SRob Clark }
2314c28c82e9SRob Clark
2315c28c82e9SRob Clark #define REG_CP_COND_EXEC_3 0x00000003
2316c28c82e9SRob Clark #define CP_COND_EXEC_3_ADDR1_HI__MASK 0xffffffff
2317c28c82e9SRob Clark #define CP_COND_EXEC_3_ADDR1_HI__SHIFT 0
CP_COND_EXEC_3_ADDR1_HI(uint32_t val)2318c28c82e9SRob Clark static inline uint32_t CP_COND_EXEC_3_ADDR1_HI(uint32_t val)
2319c28c82e9SRob Clark {
2320c28c82e9SRob Clark return ((val) << CP_COND_EXEC_3_ADDR1_HI__SHIFT) & CP_COND_EXEC_3_ADDR1_HI__MASK;
2321c28c82e9SRob Clark }
2322c28c82e9SRob Clark
2323c28c82e9SRob Clark #define REG_CP_COND_EXEC_4 0x00000004
2324c28c82e9SRob Clark #define CP_COND_EXEC_4_REF__MASK 0xffffffff
2325c28c82e9SRob Clark #define CP_COND_EXEC_4_REF__SHIFT 0
CP_COND_EXEC_4_REF(uint32_t val)2326c28c82e9SRob Clark static inline uint32_t CP_COND_EXEC_4_REF(uint32_t val)
2327c28c82e9SRob Clark {
2328c28c82e9SRob Clark return ((val) << CP_COND_EXEC_4_REF__SHIFT) & CP_COND_EXEC_4_REF__MASK;
2329c28c82e9SRob Clark }
2330c28c82e9SRob Clark
2331c28c82e9SRob Clark #define REG_CP_COND_EXEC_5 0x00000005
2332c28c82e9SRob Clark #define CP_COND_EXEC_5_DWORDS__MASK 0xffffffff
2333c28c82e9SRob Clark #define CP_COND_EXEC_5_DWORDS__SHIFT 0
CP_COND_EXEC_5_DWORDS(uint32_t val)2334c28c82e9SRob Clark static inline uint32_t CP_COND_EXEC_5_DWORDS(uint32_t val)
2335c28c82e9SRob Clark {
2336c28c82e9SRob Clark return ((val) << CP_COND_EXEC_5_DWORDS__SHIFT) & CP_COND_EXEC_5_DWORDS__MASK;
2337c28c82e9SRob Clark }
2338c28c82e9SRob Clark
2339c28c82e9SRob Clark #define REG_CP_SET_CTXSWITCH_IB_0 0x00000000
2340c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_0_ADDR_LO__MASK 0xffffffff
2341c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_0_ADDR_LO__SHIFT 0
CP_SET_CTXSWITCH_IB_0_ADDR_LO(uint32_t val)2342c28c82e9SRob Clark static inline uint32_t CP_SET_CTXSWITCH_IB_0_ADDR_LO(uint32_t val)
2343c28c82e9SRob Clark {
2344c28c82e9SRob Clark return ((val) << CP_SET_CTXSWITCH_IB_0_ADDR_LO__SHIFT) & CP_SET_CTXSWITCH_IB_0_ADDR_LO__MASK;
2345c28c82e9SRob Clark }
2346c28c82e9SRob Clark
2347c28c82e9SRob Clark #define REG_CP_SET_CTXSWITCH_IB_1 0x00000001
2348c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_1_ADDR_HI__MASK 0xffffffff
2349c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_1_ADDR_HI__SHIFT 0
CP_SET_CTXSWITCH_IB_1_ADDR_HI(uint32_t val)2350c28c82e9SRob Clark static inline uint32_t CP_SET_CTXSWITCH_IB_1_ADDR_HI(uint32_t val)
2351c28c82e9SRob Clark {
2352c28c82e9SRob Clark return ((val) << CP_SET_CTXSWITCH_IB_1_ADDR_HI__SHIFT) & CP_SET_CTXSWITCH_IB_1_ADDR_HI__MASK;
2353c28c82e9SRob Clark }
2354c28c82e9SRob Clark
2355c28c82e9SRob Clark #define REG_CP_SET_CTXSWITCH_IB_2 0x00000002
2356c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_2_DWORDS__MASK 0x000fffff
2357c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_2_DWORDS__SHIFT 0
CP_SET_CTXSWITCH_IB_2_DWORDS(uint32_t val)2358c28c82e9SRob Clark static inline uint32_t CP_SET_CTXSWITCH_IB_2_DWORDS(uint32_t val)
2359c28c82e9SRob Clark {
2360c28c82e9SRob Clark return ((val) << CP_SET_CTXSWITCH_IB_2_DWORDS__SHIFT) & CP_SET_CTXSWITCH_IB_2_DWORDS__MASK;
2361c28c82e9SRob Clark }
2362c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_2_TYPE__MASK 0x00300000
2363c28c82e9SRob Clark #define CP_SET_CTXSWITCH_IB_2_TYPE__SHIFT 20
CP_SET_CTXSWITCH_IB_2_TYPE(enum ctxswitch_ib val)2364c28c82e9SRob Clark static inline uint32_t CP_SET_CTXSWITCH_IB_2_TYPE(enum ctxswitch_ib val)
2365c28c82e9SRob Clark {
2366c28c82e9SRob Clark return ((val) << CP_SET_CTXSWITCH_IB_2_TYPE__SHIFT) & CP_SET_CTXSWITCH_IB_2_TYPE__MASK;
2367c28c82e9SRob Clark }
2368c28c82e9SRob Clark
2369c28c82e9SRob Clark #define REG_CP_REG_WRITE_0 0x00000000
2370*f73343faSRob Clark #define CP_REG_WRITE_0_TRACKER__MASK 0x0000000f
2371c28c82e9SRob Clark #define CP_REG_WRITE_0_TRACKER__SHIFT 0
CP_REG_WRITE_0_TRACKER(enum reg_tracker val)2372c28c82e9SRob Clark static inline uint32_t CP_REG_WRITE_0_TRACKER(enum reg_tracker val)
2373c28c82e9SRob Clark {
2374c28c82e9SRob Clark return ((val) << CP_REG_WRITE_0_TRACKER__SHIFT) & CP_REG_WRITE_0_TRACKER__MASK;
2375c28c82e9SRob Clark }
2376c28c82e9SRob Clark
2377*f73343faSRob Clark #define REG_CP_REG_WRITE_1 0x00000001
2378*f73343faSRob Clark
2379*f73343faSRob Clark #define REG_CP_REG_WRITE_2 0x00000002
2380*f73343faSRob Clark
2381c28c82e9SRob Clark #define REG_CP_SMMU_TABLE_UPDATE_0 0x00000000
2382c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_0_TTBR0_LO__MASK 0xffffffff
2383c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_0_TTBR0_LO__SHIFT 0
CP_SMMU_TABLE_UPDATE_0_TTBR0_LO(uint32_t val)2384c28c82e9SRob Clark static inline uint32_t CP_SMMU_TABLE_UPDATE_0_TTBR0_LO(uint32_t val)
2385c28c82e9SRob Clark {
2386c28c82e9SRob Clark return ((val) << CP_SMMU_TABLE_UPDATE_0_TTBR0_LO__SHIFT) & CP_SMMU_TABLE_UPDATE_0_TTBR0_LO__MASK;
2387c28c82e9SRob Clark }
2388c28c82e9SRob Clark
2389c28c82e9SRob Clark #define REG_CP_SMMU_TABLE_UPDATE_1 0x00000001
2390c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_1_TTBR0_HI__MASK 0x0000ffff
2391c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_1_TTBR0_HI__SHIFT 0
CP_SMMU_TABLE_UPDATE_1_TTBR0_HI(uint32_t val)2392c28c82e9SRob Clark static inline uint32_t CP_SMMU_TABLE_UPDATE_1_TTBR0_HI(uint32_t val)
2393c28c82e9SRob Clark {
2394c28c82e9SRob Clark return ((val) << CP_SMMU_TABLE_UPDATE_1_TTBR0_HI__SHIFT) & CP_SMMU_TABLE_UPDATE_1_TTBR0_HI__MASK;
2395c28c82e9SRob Clark }
2396c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_1_ASID__MASK 0xffff0000
2397c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_1_ASID__SHIFT 16
CP_SMMU_TABLE_UPDATE_1_ASID(uint32_t val)2398c28c82e9SRob Clark static inline uint32_t CP_SMMU_TABLE_UPDATE_1_ASID(uint32_t val)
2399c28c82e9SRob Clark {
2400c28c82e9SRob Clark return ((val) << CP_SMMU_TABLE_UPDATE_1_ASID__SHIFT) & CP_SMMU_TABLE_UPDATE_1_ASID__MASK;
2401c28c82e9SRob Clark }
2402c28c82e9SRob Clark
2403c28c82e9SRob Clark #define REG_CP_SMMU_TABLE_UPDATE_2 0x00000002
2404c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_2_CONTEXTIDR__MASK 0xffffffff
2405c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_2_CONTEXTIDR__SHIFT 0
CP_SMMU_TABLE_UPDATE_2_CONTEXTIDR(uint32_t val)2406c28c82e9SRob Clark static inline uint32_t CP_SMMU_TABLE_UPDATE_2_CONTEXTIDR(uint32_t val)
2407c28c82e9SRob Clark {
2408c28c82e9SRob Clark return ((val) << CP_SMMU_TABLE_UPDATE_2_CONTEXTIDR__SHIFT) & CP_SMMU_TABLE_UPDATE_2_CONTEXTIDR__MASK;
2409c28c82e9SRob Clark }
2410c28c82e9SRob Clark
2411c28c82e9SRob Clark #define REG_CP_SMMU_TABLE_UPDATE_3 0x00000003
2412c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_3_CONTEXTBANK__MASK 0xffffffff
2413c28c82e9SRob Clark #define CP_SMMU_TABLE_UPDATE_3_CONTEXTBANK__SHIFT 0
CP_SMMU_TABLE_UPDATE_3_CONTEXTBANK(uint32_t val)2414c28c82e9SRob Clark static inline uint32_t CP_SMMU_TABLE_UPDATE_3_CONTEXTBANK(uint32_t val)
2415c28c82e9SRob Clark {
2416c28c82e9SRob Clark return ((val) << CP_SMMU_TABLE_UPDATE_3_CONTEXTBANK__SHIFT) & CP_SMMU_TABLE_UPDATE_3_CONTEXTBANK__MASK;
2417c28c82e9SRob Clark }
24182d756322SRob Clark
241957cfe41cSRob Clark #define REG_CP_START_BIN_BIN_COUNT 0x00000000
242057cfe41cSRob Clark
242157cfe41cSRob Clark #define REG_CP_START_BIN_PREFIX_ADDR 0x00000001
242257cfe41cSRob Clark
242357cfe41cSRob Clark #define REG_CP_START_BIN_PREFIX_DWORDS 0x00000003
242457cfe41cSRob Clark
242557cfe41cSRob Clark #define REG_CP_START_BIN_BODY_DWORDS 0x00000004
242657cfe41cSRob Clark
2427*f73343faSRob Clark #define REG_CP_WAIT_TIMESTAMP_0 0x00000000
2428*f73343faSRob Clark
2429*f73343faSRob Clark #define REG_CP_WAIT_TIMESTAMP_ADDR 0x00000001
2430*f73343faSRob Clark
2431*f73343faSRob Clark #define REG_CP_WAIT_TIMESTAMP_TIMESTAMP 0x00000003
2432*f73343faSRob Clark
2433*f73343faSRob Clark #define REG_CP_THREAD_CONTROL_0 0x00000000
2434*f73343faSRob Clark #define CP_THREAD_CONTROL_0_THREAD__MASK 0x00000003
2435*f73343faSRob Clark #define CP_THREAD_CONTROL_0_THREAD__SHIFT 0
CP_THREAD_CONTROL_0_THREAD(enum cp_thread val)2436*f73343faSRob Clark static inline uint32_t CP_THREAD_CONTROL_0_THREAD(enum cp_thread val)
2437*f73343faSRob Clark {
2438*f73343faSRob Clark return ((val) << CP_THREAD_CONTROL_0_THREAD__SHIFT) & CP_THREAD_CONTROL_0_THREAD__MASK;
2439*f73343faSRob Clark }
2440*f73343faSRob Clark #define CP_THREAD_CONTROL_0_CONCURRENT_BIN_DISABLE 0x08000000
2441*f73343faSRob Clark #define CP_THREAD_CONTROL_0_SYNC_THREADS 0x80000000
2442*f73343faSRob Clark
2443902e6eb8SRob Clark
2444902e6eb8SRob Clark #endif /* ADRENO_PM4_XML */
2445