xref: /OK3568_Linux_fs/kernel/drivers/gpu/drm/msm/adreno/adreno_common.xml.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun #ifndef ADRENO_COMMON_XML
2*4882a593Smuzhiyun #define ADRENO_COMMON_XML
3*4882a593Smuzhiyun 
4*4882a593Smuzhiyun /* Autogenerated file, DO NOT EDIT manually!
5*4882a593Smuzhiyun 
6*4882a593Smuzhiyun This file was generated by the rules-ng-ng headergen tool in this git repository:
7*4882a593Smuzhiyun http://github.com/freedreno/envytools/
8*4882a593Smuzhiyun git clone https://github.com/freedreno/envytools.git
9*4882a593Smuzhiyun 
10*4882a593Smuzhiyun The rules-ng-ng source files this header was generated from are:
11*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno.xml                     (    594 bytes, from 2020-07-23 21:58:14)
12*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/freedreno_copyright.xml        (   1572 bytes, from 2020-07-23 21:58:14)
13*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/a2xx.xml                (  90159 bytes, from 2020-07-23 21:58:14)
14*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/adreno_common.xml       (  14386 bytes, from 2020-07-23 21:58:14)
15*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/adreno_pm4.xml          (  65048 bytes, from 2020-07-23 21:58:14)
16*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/a3xx.xml                (  84226 bytes, from 2020-07-23 21:58:14)
17*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/a4xx.xml                ( 112556 bytes, from 2020-07-23 21:58:14)
18*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/a5xx.xml                ( 149461 bytes, from 2020-07-23 21:58:14)
19*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/a6xx.xml                ( 184695 bytes, from 2020-07-23 21:58:14)
20*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/a6xx_gmu.xml            (  11218 bytes, from 2020-07-23 21:58:14)
21*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/ocmem.xml               (   1773 bytes, from 2020-07-23 21:58:14)
22*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/adreno_control_regs.xml (   4559 bytes, from 2020-07-23 21:58:14)
23*4882a593Smuzhiyun - /home/robclark/src/envytools/rnndb/adreno/adreno_pipe_regs.xml    (   2872 bytes, from 2020-07-23 21:58:14)
24*4882a593Smuzhiyun 
25*4882a593Smuzhiyun Copyright (C) 2013-2020 by the following authors:
26*4882a593Smuzhiyun - Rob Clark <robdclark@gmail.com> (robclark)
27*4882a593Smuzhiyun - Ilia Mirkin <imirkin@alum.mit.edu> (imirkin)
28*4882a593Smuzhiyun 
29*4882a593Smuzhiyun Permission is hereby granted, free of charge, to any person obtaining
30*4882a593Smuzhiyun a copy of this software and associated documentation files (the
31*4882a593Smuzhiyun "Software"), to deal in the Software without restriction, including
32*4882a593Smuzhiyun without limitation the rights to use, copy, modify, merge, publish,
33*4882a593Smuzhiyun distribute, sublicense, and/or sell copies of the Software, and to
34*4882a593Smuzhiyun permit persons to whom the Software is furnished to do so, subject to
35*4882a593Smuzhiyun the following conditions:
36*4882a593Smuzhiyun 
37*4882a593Smuzhiyun The above copyright notice and this permission notice (including the
38*4882a593Smuzhiyun next paragraph) shall be included in all copies or substantial
39*4882a593Smuzhiyun portions of the Software.
40*4882a593Smuzhiyun 
41*4882a593Smuzhiyun THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
42*4882a593Smuzhiyun EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
43*4882a593Smuzhiyun MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
44*4882a593Smuzhiyun IN NO EVENT SHALL THE COPYRIGHT OWNER(S) AND/OR ITS SUPPLIERS BE
45*4882a593Smuzhiyun LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
46*4882a593Smuzhiyun OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
47*4882a593Smuzhiyun WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
48*4882a593Smuzhiyun */
49*4882a593Smuzhiyun 
50*4882a593Smuzhiyun 
51*4882a593Smuzhiyun enum chip {
52*4882a593Smuzhiyun 	A2XX = 0,
53*4882a593Smuzhiyun 	A3XX = 0,
54*4882a593Smuzhiyun 	A4XX = 0,
55*4882a593Smuzhiyun 	A5XX = 0,
56*4882a593Smuzhiyun 	A6XX = 0,
57*4882a593Smuzhiyun };
58*4882a593Smuzhiyun 
59*4882a593Smuzhiyun enum adreno_pa_su_sc_draw {
60*4882a593Smuzhiyun 	PC_DRAW_POINTS = 0,
61*4882a593Smuzhiyun 	PC_DRAW_LINES = 1,
62*4882a593Smuzhiyun 	PC_DRAW_TRIANGLES = 2,
63*4882a593Smuzhiyun };
64*4882a593Smuzhiyun 
65*4882a593Smuzhiyun enum adreno_compare_func {
66*4882a593Smuzhiyun 	FUNC_NEVER = 0,
67*4882a593Smuzhiyun 	FUNC_LESS = 1,
68*4882a593Smuzhiyun 	FUNC_EQUAL = 2,
69*4882a593Smuzhiyun 	FUNC_LEQUAL = 3,
70*4882a593Smuzhiyun 	FUNC_GREATER = 4,
71*4882a593Smuzhiyun 	FUNC_NOTEQUAL = 5,
72*4882a593Smuzhiyun 	FUNC_GEQUAL = 6,
73*4882a593Smuzhiyun 	FUNC_ALWAYS = 7,
74*4882a593Smuzhiyun };
75*4882a593Smuzhiyun 
76*4882a593Smuzhiyun enum adreno_stencil_op {
77*4882a593Smuzhiyun 	STENCIL_KEEP = 0,
78*4882a593Smuzhiyun 	STENCIL_ZERO = 1,
79*4882a593Smuzhiyun 	STENCIL_REPLACE = 2,
80*4882a593Smuzhiyun 	STENCIL_INCR_CLAMP = 3,
81*4882a593Smuzhiyun 	STENCIL_DECR_CLAMP = 4,
82*4882a593Smuzhiyun 	STENCIL_INVERT = 5,
83*4882a593Smuzhiyun 	STENCIL_INCR_WRAP = 6,
84*4882a593Smuzhiyun 	STENCIL_DECR_WRAP = 7,
85*4882a593Smuzhiyun };
86*4882a593Smuzhiyun 
87*4882a593Smuzhiyun enum adreno_rb_blend_factor {
88*4882a593Smuzhiyun 	FACTOR_ZERO = 0,
89*4882a593Smuzhiyun 	FACTOR_ONE = 1,
90*4882a593Smuzhiyun 	FACTOR_SRC_COLOR = 4,
91*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_SRC_COLOR = 5,
92*4882a593Smuzhiyun 	FACTOR_SRC_ALPHA = 6,
93*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_SRC_ALPHA = 7,
94*4882a593Smuzhiyun 	FACTOR_DST_COLOR = 8,
95*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_DST_COLOR = 9,
96*4882a593Smuzhiyun 	FACTOR_DST_ALPHA = 10,
97*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_DST_ALPHA = 11,
98*4882a593Smuzhiyun 	FACTOR_CONSTANT_COLOR = 12,
99*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_CONSTANT_COLOR = 13,
100*4882a593Smuzhiyun 	FACTOR_CONSTANT_ALPHA = 14,
101*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_CONSTANT_ALPHA = 15,
102*4882a593Smuzhiyun 	FACTOR_SRC_ALPHA_SATURATE = 16,
103*4882a593Smuzhiyun 	FACTOR_SRC1_COLOR = 20,
104*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_SRC1_COLOR = 21,
105*4882a593Smuzhiyun 	FACTOR_SRC1_ALPHA = 22,
106*4882a593Smuzhiyun 	FACTOR_ONE_MINUS_SRC1_ALPHA = 23,
107*4882a593Smuzhiyun };
108*4882a593Smuzhiyun 
109*4882a593Smuzhiyun enum adreno_rb_surface_endian {
110*4882a593Smuzhiyun 	ENDIAN_NONE = 0,
111*4882a593Smuzhiyun 	ENDIAN_8IN16 = 1,
112*4882a593Smuzhiyun 	ENDIAN_8IN32 = 2,
113*4882a593Smuzhiyun 	ENDIAN_16IN32 = 3,
114*4882a593Smuzhiyun 	ENDIAN_8IN64 = 4,
115*4882a593Smuzhiyun 	ENDIAN_8IN128 = 5,
116*4882a593Smuzhiyun };
117*4882a593Smuzhiyun 
118*4882a593Smuzhiyun enum adreno_rb_dither_mode {
119*4882a593Smuzhiyun 	DITHER_DISABLE = 0,
120*4882a593Smuzhiyun 	DITHER_ALWAYS = 1,
121*4882a593Smuzhiyun 	DITHER_IF_ALPHA_OFF = 2,
122*4882a593Smuzhiyun };
123*4882a593Smuzhiyun 
124*4882a593Smuzhiyun enum adreno_rb_depth_format {
125*4882a593Smuzhiyun 	DEPTHX_16 = 0,
126*4882a593Smuzhiyun 	DEPTHX_24_8 = 1,
127*4882a593Smuzhiyun 	DEPTHX_32 = 2,
128*4882a593Smuzhiyun };
129*4882a593Smuzhiyun 
130*4882a593Smuzhiyun enum adreno_rb_copy_control_mode {
131*4882a593Smuzhiyun 	RB_COPY_RESOLVE = 1,
132*4882a593Smuzhiyun 	RB_COPY_CLEAR = 2,
133*4882a593Smuzhiyun 	RB_COPY_DEPTH_STENCIL = 5,
134*4882a593Smuzhiyun };
135*4882a593Smuzhiyun 
136*4882a593Smuzhiyun enum a3xx_rop_code {
137*4882a593Smuzhiyun 	ROP_CLEAR = 0,
138*4882a593Smuzhiyun 	ROP_NOR = 1,
139*4882a593Smuzhiyun 	ROP_AND_INVERTED = 2,
140*4882a593Smuzhiyun 	ROP_COPY_INVERTED = 3,
141*4882a593Smuzhiyun 	ROP_AND_REVERSE = 4,
142*4882a593Smuzhiyun 	ROP_INVERT = 5,
143*4882a593Smuzhiyun 	ROP_NAND = 7,
144*4882a593Smuzhiyun 	ROP_AND = 8,
145*4882a593Smuzhiyun 	ROP_EQUIV = 9,
146*4882a593Smuzhiyun 	ROP_NOOP = 10,
147*4882a593Smuzhiyun 	ROP_OR_INVERTED = 11,
148*4882a593Smuzhiyun 	ROP_OR_REVERSE = 13,
149*4882a593Smuzhiyun 	ROP_OR = 14,
150*4882a593Smuzhiyun 	ROP_SET = 15,
151*4882a593Smuzhiyun };
152*4882a593Smuzhiyun 
153*4882a593Smuzhiyun enum a3xx_render_mode {
154*4882a593Smuzhiyun 	RB_RENDERING_PASS = 0,
155*4882a593Smuzhiyun 	RB_TILING_PASS = 1,
156*4882a593Smuzhiyun 	RB_RESOLVE_PASS = 2,
157*4882a593Smuzhiyun 	RB_COMPUTE_PASS = 3,
158*4882a593Smuzhiyun };
159*4882a593Smuzhiyun 
160*4882a593Smuzhiyun enum a3xx_msaa_samples {
161*4882a593Smuzhiyun 	MSAA_ONE = 0,
162*4882a593Smuzhiyun 	MSAA_TWO = 1,
163*4882a593Smuzhiyun 	MSAA_FOUR = 2,
164*4882a593Smuzhiyun 	MSAA_EIGHT = 3,
165*4882a593Smuzhiyun };
166*4882a593Smuzhiyun 
167*4882a593Smuzhiyun enum a3xx_threadmode {
168*4882a593Smuzhiyun 	MULTI = 0,
169*4882a593Smuzhiyun 	SINGLE = 1,
170*4882a593Smuzhiyun };
171*4882a593Smuzhiyun 
172*4882a593Smuzhiyun enum a3xx_instrbuffermode {
173*4882a593Smuzhiyun 	CACHE = 0,
174*4882a593Smuzhiyun 	BUFFER = 1,
175*4882a593Smuzhiyun };
176*4882a593Smuzhiyun 
177*4882a593Smuzhiyun enum a3xx_threadsize {
178*4882a593Smuzhiyun 	TWO_QUADS = 0,
179*4882a593Smuzhiyun 	FOUR_QUADS = 1,
180*4882a593Smuzhiyun };
181*4882a593Smuzhiyun 
182*4882a593Smuzhiyun enum a3xx_color_swap {
183*4882a593Smuzhiyun 	WZYX = 0,
184*4882a593Smuzhiyun 	WXYZ = 1,
185*4882a593Smuzhiyun 	ZYXW = 2,
186*4882a593Smuzhiyun 	XYZW = 3,
187*4882a593Smuzhiyun };
188*4882a593Smuzhiyun 
189*4882a593Smuzhiyun enum a3xx_rb_blend_opcode {
190*4882a593Smuzhiyun 	BLEND_DST_PLUS_SRC = 0,
191*4882a593Smuzhiyun 	BLEND_SRC_MINUS_DST = 1,
192*4882a593Smuzhiyun 	BLEND_DST_MINUS_SRC = 2,
193*4882a593Smuzhiyun 	BLEND_MIN_DST_SRC = 3,
194*4882a593Smuzhiyun 	BLEND_MAX_DST_SRC = 4,
195*4882a593Smuzhiyun };
196*4882a593Smuzhiyun 
197*4882a593Smuzhiyun enum a4xx_tess_spacing {
198*4882a593Smuzhiyun 	EQUAL_SPACING = 0,
199*4882a593Smuzhiyun 	ODD_SPACING = 2,
200*4882a593Smuzhiyun 	EVEN_SPACING = 3,
201*4882a593Smuzhiyun };
202*4882a593Smuzhiyun 
203*4882a593Smuzhiyun enum a5xx_address_mode {
204*4882a593Smuzhiyun 	ADDR_32B = 0,
205*4882a593Smuzhiyun 	ADDR_64B = 1,
206*4882a593Smuzhiyun };
207*4882a593Smuzhiyun 
208*4882a593Smuzhiyun #define REG_AXXX_CP_RB_BASE					0x000001c0
209*4882a593Smuzhiyun 
210*4882a593Smuzhiyun #define REG_AXXX_CP_RB_CNTL					0x000001c1
211*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_BUFSZ__MASK				0x0000003f
212*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_BUFSZ__SHIFT				0
AXXX_CP_RB_CNTL_BUFSZ(uint32_t val)213*4882a593Smuzhiyun static inline uint32_t AXXX_CP_RB_CNTL_BUFSZ(uint32_t val)
214*4882a593Smuzhiyun {
215*4882a593Smuzhiyun 	return ((val) << AXXX_CP_RB_CNTL_BUFSZ__SHIFT) & AXXX_CP_RB_CNTL_BUFSZ__MASK;
216*4882a593Smuzhiyun }
217*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_BLKSZ__MASK				0x00003f00
218*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_BLKSZ__SHIFT				8
AXXX_CP_RB_CNTL_BLKSZ(uint32_t val)219*4882a593Smuzhiyun static inline uint32_t AXXX_CP_RB_CNTL_BLKSZ(uint32_t val)
220*4882a593Smuzhiyun {
221*4882a593Smuzhiyun 	return ((val) << AXXX_CP_RB_CNTL_BLKSZ__SHIFT) & AXXX_CP_RB_CNTL_BLKSZ__MASK;
222*4882a593Smuzhiyun }
223*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_BUF_SWAP__MASK				0x00030000
224*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_BUF_SWAP__SHIFT				16
AXXX_CP_RB_CNTL_BUF_SWAP(uint32_t val)225*4882a593Smuzhiyun static inline uint32_t AXXX_CP_RB_CNTL_BUF_SWAP(uint32_t val)
226*4882a593Smuzhiyun {
227*4882a593Smuzhiyun 	return ((val) << AXXX_CP_RB_CNTL_BUF_SWAP__SHIFT) & AXXX_CP_RB_CNTL_BUF_SWAP__MASK;
228*4882a593Smuzhiyun }
229*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_POLL_EN					0x00100000
230*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_NO_UPDATE				0x08000000
231*4882a593Smuzhiyun #define AXXX_CP_RB_CNTL_RPTR_WR_EN				0x80000000
232*4882a593Smuzhiyun 
233*4882a593Smuzhiyun #define REG_AXXX_CP_RB_RPTR_ADDR				0x000001c3
234*4882a593Smuzhiyun #define AXXX_CP_RB_RPTR_ADDR_SWAP__MASK				0x00000003
235*4882a593Smuzhiyun #define AXXX_CP_RB_RPTR_ADDR_SWAP__SHIFT			0
AXXX_CP_RB_RPTR_ADDR_SWAP(uint32_t val)236*4882a593Smuzhiyun static inline uint32_t AXXX_CP_RB_RPTR_ADDR_SWAP(uint32_t val)
237*4882a593Smuzhiyun {
238*4882a593Smuzhiyun 	return ((val) << AXXX_CP_RB_RPTR_ADDR_SWAP__SHIFT) & AXXX_CP_RB_RPTR_ADDR_SWAP__MASK;
239*4882a593Smuzhiyun }
240*4882a593Smuzhiyun #define AXXX_CP_RB_RPTR_ADDR_ADDR__MASK				0xfffffffc
241*4882a593Smuzhiyun #define AXXX_CP_RB_RPTR_ADDR_ADDR__SHIFT			2
AXXX_CP_RB_RPTR_ADDR_ADDR(uint32_t val)242*4882a593Smuzhiyun static inline uint32_t AXXX_CP_RB_RPTR_ADDR_ADDR(uint32_t val)
243*4882a593Smuzhiyun {
244*4882a593Smuzhiyun 	return ((val >> 2) << AXXX_CP_RB_RPTR_ADDR_ADDR__SHIFT) & AXXX_CP_RB_RPTR_ADDR_ADDR__MASK;
245*4882a593Smuzhiyun }
246*4882a593Smuzhiyun 
247*4882a593Smuzhiyun #define REG_AXXX_CP_RB_RPTR					0x000001c4
248*4882a593Smuzhiyun 
249*4882a593Smuzhiyun #define REG_AXXX_CP_RB_WPTR					0x000001c5
250*4882a593Smuzhiyun 
251*4882a593Smuzhiyun #define REG_AXXX_CP_RB_WPTR_DELAY				0x000001c6
252*4882a593Smuzhiyun 
253*4882a593Smuzhiyun #define REG_AXXX_CP_RB_RPTR_WR					0x000001c7
254*4882a593Smuzhiyun 
255*4882a593Smuzhiyun #define REG_AXXX_CP_RB_WPTR_BASE				0x000001c8
256*4882a593Smuzhiyun 
257*4882a593Smuzhiyun #define REG_AXXX_CP_QUEUE_THRESHOLDS				0x000001d5
258*4882a593Smuzhiyun #define AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB1_START__MASK		0x0000000f
259*4882a593Smuzhiyun #define AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB1_START__SHIFT		0
AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB1_START(uint32_t val)260*4882a593Smuzhiyun static inline uint32_t AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB1_START(uint32_t val)
261*4882a593Smuzhiyun {
262*4882a593Smuzhiyun 	return ((val) << AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB1_START__SHIFT) & AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB1_START__MASK;
263*4882a593Smuzhiyun }
264*4882a593Smuzhiyun #define AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB2_START__MASK		0x00000f00
265*4882a593Smuzhiyun #define AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB2_START__SHIFT		8
AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB2_START(uint32_t val)266*4882a593Smuzhiyun static inline uint32_t AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB2_START(uint32_t val)
267*4882a593Smuzhiyun {
268*4882a593Smuzhiyun 	return ((val) << AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB2_START__SHIFT) & AXXX_CP_QUEUE_THRESHOLDS_CSQ_IB2_START__MASK;
269*4882a593Smuzhiyun }
270*4882a593Smuzhiyun #define AXXX_CP_QUEUE_THRESHOLDS_CSQ_ST_START__MASK		0x000f0000
271*4882a593Smuzhiyun #define AXXX_CP_QUEUE_THRESHOLDS_CSQ_ST_START__SHIFT		16
AXXX_CP_QUEUE_THRESHOLDS_CSQ_ST_START(uint32_t val)272*4882a593Smuzhiyun static inline uint32_t AXXX_CP_QUEUE_THRESHOLDS_CSQ_ST_START(uint32_t val)
273*4882a593Smuzhiyun {
274*4882a593Smuzhiyun 	return ((val) << AXXX_CP_QUEUE_THRESHOLDS_CSQ_ST_START__SHIFT) & AXXX_CP_QUEUE_THRESHOLDS_CSQ_ST_START__MASK;
275*4882a593Smuzhiyun }
276*4882a593Smuzhiyun 
277*4882a593Smuzhiyun #define REG_AXXX_CP_MEQ_THRESHOLDS				0x000001d6
278*4882a593Smuzhiyun #define AXXX_CP_MEQ_THRESHOLDS_MEQ_END__MASK			0x001f0000
279*4882a593Smuzhiyun #define AXXX_CP_MEQ_THRESHOLDS_MEQ_END__SHIFT			16
AXXX_CP_MEQ_THRESHOLDS_MEQ_END(uint32_t val)280*4882a593Smuzhiyun static inline uint32_t AXXX_CP_MEQ_THRESHOLDS_MEQ_END(uint32_t val)
281*4882a593Smuzhiyun {
282*4882a593Smuzhiyun 	return ((val) << AXXX_CP_MEQ_THRESHOLDS_MEQ_END__SHIFT) & AXXX_CP_MEQ_THRESHOLDS_MEQ_END__MASK;
283*4882a593Smuzhiyun }
284*4882a593Smuzhiyun #define AXXX_CP_MEQ_THRESHOLDS_ROQ_END__MASK			0x1f000000
285*4882a593Smuzhiyun #define AXXX_CP_MEQ_THRESHOLDS_ROQ_END__SHIFT			24
AXXX_CP_MEQ_THRESHOLDS_ROQ_END(uint32_t val)286*4882a593Smuzhiyun static inline uint32_t AXXX_CP_MEQ_THRESHOLDS_ROQ_END(uint32_t val)
287*4882a593Smuzhiyun {
288*4882a593Smuzhiyun 	return ((val) << AXXX_CP_MEQ_THRESHOLDS_ROQ_END__SHIFT) & AXXX_CP_MEQ_THRESHOLDS_ROQ_END__MASK;
289*4882a593Smuzhiyun }
290*4882a593Smuzhiyun 
291*4882a593Smuzhiyun #define REG_AXXX_CP_CSQ_AVAIL					0x000001d7
292*4882a593Smuzhiyun #define AXXX_CP_CSQ_AVAIL_RING__MASK				0x0000007f
293*4882a593Smuzhiyun #define AXXX_CP_CSQ_AVAIL_RING__SHIFT				0
AXXX_CP_CSQ_AVAIL_RING(uint32_t val)294*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_AVAIL_RING(uint32_t val)
295*4882a593Smuzhiyun {
296*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_AVAIL_RING__SHIFT) & AXXX_CP_CSQ_AVAIL_RING__MASK;
297*4882a593Smuzhiyun }
298*4882a593Smuzhiyun #define AXXX_CP_CSQ_AVAIL_IB1__MASK				0x00007f00
299*4882a593Smuzhiyun #define AXXX_CP_CSQ_AVAIL_IB1__SHIFT				8
AXXX_CP_CSQ_AVAIL_IB1(uint32_t val)300*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_AVAIL_IB1(uint32_t val)
301*4882a593Smuzhiyun {
302*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_AVAIL_IB1__SHIFT) & AXXX_CP_CSQ_AVAIL_IB1__MASK;
303*4882a593Smuzhiyun }
304*4882a593Smuzhiyun #define AXXX_CP_CSQ_AVAIL_IB2__MASK				0x007f0000
305*4882a593Smuzhiyun #define AXXX_CP_CSQ_AVAIL_IB2__SHIFT				16
AXXX_CP_CSQ_AVAIL_IB2(uint32_t val)306*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_AVAIL_IB2(uint32_t val)
307*4882a593Smuzhiyun {
308*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_AVAIL_IB2__SHIFT) & AXXX_CP_CSQ_AVAIL_IB2__MASK;
309*4882a593Smuzhiyun }
310*4882a593Smuzhiyun 
311*4882a593Smuzhiyun #define REG_AXXX_CP_STQ_AVAIL					0x000001d8
312*4882a593Smuzhiyun #define AXXX_CP_STQ_AVAIL_ST__MASK				0x0000007f
313*4882a593Smuzhiyun #define AXXX_CP_STQ_AVAIL_ST__SHIFT				0
AXXX_CP_STQ_AVAIL_ST(uint32_t val)314*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STQ_AVAIL_ST(uint32_t val)
315*4882a593Smuzhiyun {
316*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STQ_AVAIL_ST__SHIFT) & AXXX_CP_STQ_AVAIL_ST__MASK;
317*4882a593Smuzhiyun }
318*4882a593Smuzhiyun 
319*4882a593Smuzhiyun #define REG_AXXX_CP_MEQ_AVAIL					0x000001d9
320*4882a593Smuzhiyun #define AXXX_CP_MEQ_AVAIL_MEQ__MASK				0x0000001f
321*4882a593Smuzhiyun #define AXXX_CP_MEQ_AVAIL_MEQ__SHIFT				0
AXXX_CP_MEQ_AVAIL_MEQ(uint32_t val)322*4882a593Smuzhiyun static inline uint32_t AXXX_CP_MEQ_AVAIL_MEQ(uint32_t val)
323*4882a593Smuzhiyun {
324*4882a593Smuzhiyun 	return ((val) << AXXX_CP_MEQ_AVAIL_MEQ__SHIFT) & AXXX_CP_MEQ_AVAIL_MEQ__MASK;
325*4882a593Smuzhiyun }
326*4882a593Smuzhiyun 
327*4882a593Smuzhiyun #define REG_AXXX_SCRATCH_UMSK					0x000001dc
328*4882a593Smuzhiyun #define AXXX_SCRATCH_UMSK_UMSK__MASK				0x000000ff
329*4882a593Smuzhiyun #define AXXX_SCRATCH_UMSK_UMSK__SHIFT				0
AXXX_SCRATCH_UMSK_UMSK(uint32_t val)330*4882a593Smuzhiyun static inline uint32_t AXXX_SCRATCH_UMSK_UMSK(uint32_t val)
331*4882a593Smuzhiyun {
332*4882a593Smuzhiyun 	return ((val) << AXXX_SCRATCH_UMSK_UMSK__SHIFT) & AXXX_SCRATCH_UMSK_UMSK__MASK;
333*4882a593Smuzhiyun }
334*4882a593Smuzhiyun #define AXXX_SCRATCH_UMSK_SWAP__MASK				0x00030000
335*4882a593Smuzhiyun #define AXXX_SCRATCH_UMSK_SWAP__SHIFT				16
AXXX_SCRATCH_UMSK_SWAP(uint32_t val)336*4882a593Smuzhiyun static inline uint32_t AXXX_SCRATCH_UMSK_SWAP(uint32_t val)
337*4882a593Smuzhiyun {
338*4882a593Smuzhiyun 	return ((val) << AXXX_SCRATCH_UMSK_SWAP__SHIFT) & AXXX_SCRATCH_UMSK_SWAP__MASK;
339*4882a593Smuzhiyun }
340*4882a593Smuzhiyun 
341*4882a593Smuzhiyun #define REG_AXXX_SCRATCH_ADDR					0x000001dd
342*4882a593Smuzhiyun 
343*4882a593Smuzhiyun #define REG_AXXX_CP_ME_RDADDR					0x000001ea
344*4882a593Smuzhiyun 
345*4882a593Smuzhiyun #define REG_AXXX_CP_STATE_DEBUG_INDEX				0x000001ec
346*4882a593Smuzhiyun 
347*4882a593Smuzhiyun #define REG_AXXX_CP_STATE_DEBUG_DATA				0x000001ed
348*4882a593Smuzhiyun 
349*4882a593Smuzhiyun #define REG_AXXX_CP_INT_CNTL					0x000001f2
350*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_SW_INT_MASK				0x00080000
351*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_T0_PACKET_IN_IB_MASK			0x00800000
352*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_OPCODE_ERROR_MASK			0x01000000
353*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_PROTECTED_MODE_ERROR_MASK		0x02000000
354*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_RESERVED_BIT_ERROR_MASK		0x04000000
355*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_IB_ERROR_MASK				0x08000000
356*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_IB2_INT_MASK				0x20000000
357*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_IB1_INT_MASK				0x40000000
358*4882a593Smuzhiyun #define AXXX_CP_INT_CNTL_RB_INT_MASK				0x80000000
359*4882a593Smuzhiyun 
360*4882a593Smuzhiyun #define REG_AXXX_CP_INT_STATUS					0x000001f3
361*4882a593Smuzhiyun 
362*4882a593Smuzhiyun #define REG_AXXX_CP_INT_ACK					0x000001f4
363*4882a593Smuzhiyun 
364*4882a593Smuzhiyun #define REG_AXXX_CP_ME_CNTL					0x000001f6
365*4882a593Smuzhiyun #define AXXX_CP_ME_CNTL_BUSY					0x20000000
366*4882a593Smuzhiyun #define AXXX_CP_ME_CNTL_HALT					0x10000000
367*4882a593Smuzhiyun 
368*4882a593Smuzhiyun #define REG_AXXX_CP_ME_STATUS					0x000001f7
369*4882a593Smuzhiyun 
370*4882a593Smuzhiyun #define REG_AXXX_CP_ME_RAM_WADDR				0x000001f8
371*4882a593Smuzhiyun 
372*4882a593Smuzhiyun #define REG_AXXX_CP_ME_RAM_RADDR				0x000001f9
373*4882a593Smuzhiyun 
374*4882a593Smuzhiyun #define REG_AXXX_CP_ME_RAM_DATA					0x000001fa
375*4882a593Smuzhiyun 
376*4882a593Smuzhiyun #define REG_AXXX_CP_DEBUG					0x000001fc
377*4882a593Smuzhiyun #define AXXX_CP_DEBUG_PREDICATE_DISABLE				0x00800000
378*4882a593Smuzhiyun #define AXXX_CP_DEBUG_PROG_END_PTR_ENABLE			0x01000000
379*4882a593Smuzhiyun #define AXXX_CP_DEBUG_MIU_128BIT_WRITE_ENABLE			0x02000000
380*4882a593Smuzhiyun #define AXXX_CP_DEBUG_PREFETCH_PASS_NOPS			0x04000000
381*4882a593Smuzhiyun #define AXXX_CP_DEBUG_DYNAMIC_CLK_DISABLE			0x08000000
382*4882a593Smuzhiyun #define AXXX_CP_DEBUG_PREFETCH_MATCH_DISABLE			0x10000000
383*4882a593Smuzhiyun #define AXXX_CP_DEBUG_SIMPLE_ME_FLOW_CONTROL			0x40000000
384*4882a593Smuzhiyun #define AXXX_CP_DEBUG_MIU_WRITE_PACK_DISABLE			0x80000000
385*4882a593Smuzhiyun 
386*4882a593Smuzhiyun #define REG_AXXX_CP_CSQ_RB_STAT					0x000001fd
387*4882a593Smuzhiyun #define AXXX_CP_CSQ_RB_STAT_RPTR__MASK				0x0000007f
388*4882a593Smuzhiyun #define AXXX_CP_CSQ_RB_STAT_RPTR__SHIFT				0
AXXX_CP_CSQ_RB_STAT_RPTR(uint32_t val)389*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_RB_STAT_RPTR(uint32_t val)
390*4882a593Smuzhiyun {
391*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_RB_STAT_RPTR__SHIFT) & AXXX_CP_CSQ_RB_STAT_RPTR__MASK;
392*4882a593Smuzhiyun }
393*4882a593Smuzhiyun #define AXXX_CP_CSQ_RB_STAT_WPTR__MASK				0x007f0000
394*4882a593Smuzhiyun #define AXXX_CP_CSQ_RB_STAT_WPTR__SHIFT				16
AXXX_CP_CSQ_RB_STAT_WPTR(uint32_t val)395*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_RB_STAT_WPTR(uint32_t val)
396*4882a593Smuzhiyun {
397*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_RB_STAT_WPTR__SHIFT) & AXXX_CP_CSQ_RB_STAT_WPTR__MASK;
398*4882a593Smuzhiyun }
399*4882a593Smuzhiyun 
400*4882a593Smuzhiyun #define REG_AXXX_CP_CSQ_IB1_STAT				0x000001fe
401*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB1_STAT_RPTR__MASK				0x0000007f
402*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB1_STAT_RPTR__SHIFT			0
AXXX_CP_CSQ_IB1_STAT_RPTR(uint32_t val)403*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_IB1_STAT_RPTR(uint32_t val)
404*4882a593Smuzhiyun {
405*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_IB1_STAT_RPTR__SHIFT) & AXXX_CP_CSQ_IB1_STAT_RPTR__MASK;
406*4882a593Smuzhiyun }
407*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB1_STAT_WPTR__MASK				0x007f0000
408*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB1_STAT_WPTR__SHIFT			16
AXXX_CP_CSQ_IB1_STAT_WPTR(uint32_t val)409*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_IB1_STAT_WPTR(uint32_t val)
410*4882a593Smuzhiyun {
411*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_IB1_STAT_WPTR__SHIFT) & AXXX_CP_CSQ_IB1_STAT_WPTR__MASK;
412*4882a593Smuzhiyun }
413*4882a593Smuzhiyun 
414*4882a593Smuzhiyun #define REG_AXXX_CP_CSQ_IB2_STAT				0x000001ff
415*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB2_STAT_RPTR__MASK				0x0000007f
416*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB2_STAT_RPTR__SHIFT			0
AXXX_CP_CSQ_IB2_STAT_RPTR(uint32_t val)417*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_IB2_STAT_RPTR(uint32_t val)
418*4882a593Smuzhiyun {
419*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_IB2_STAT_RPTR__SHIFT) & AXXX_CP_CSQ_IB2_STAT_RPTR__MASK;
420*4882a593Smuzhiyun }
421*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB2_STAT_WPTR__MASK				0x007f0000
422*4882a593Smuzhiyun #define AXXX_CP_CSQ_IB2_STAT_WPTR__SHIFT			16
AXXX_CP_CSQ_IB2_STAT_WPTR(uint32_t val)423*4882a593Smuzhiyun static inline uint32_t AXXX_CP_CSQ_IB2_STAT_WPTR(uint32_t val)
424*4882a593Smuzhiyun {
425*4882a593Smuzhiyun 	return ((val) << AXXX_CP_CSQ_IB2_STAT_WPTR__SHIFT) & AXXX_CP_CSQ_IB2_STAT_WPTR__MASK;
426*4882a593Smuzhiyun }
427*4882a593Smuzhiyun 
428*4882a593Smuzhiyun #define REG_AXXX_CP_NON_PREFETCH_CNTRS				0x00000440
429*4882a593Smuzhiyun 
430*4882a593Smuzhiyun #define REG_AXXX_CP_STQ_ST_STAT					0x00000443
431*4882a593Smuzhiyun 
432*4882a593Smuzhiyun #define REG_AXXX_CP_ST_BASE					0x0000044d
433*4882a593Smuzhiyun 
434*4882a593Smuzhiyun #define REG_AXXX_CP_ST_BUFSZ					0x0000044e
435*4882a593Smuzhiyun 
436*4882a593Smuzhiyun #define REG_AXXX_CP_MEQ_STAT					0x0000044f
437*4882a593Smuzhiyun 
438*4882a593Smuzhiyun #define REG_AXXX_CP_MIU_TAG_STAT				0x00000452
439*4882a593Smuzhiyun 
440*4882a593Smuzhiyun #define REG_AXXX_CP_BIN_MASK_LO					0x00000454
441*4882a593Smuzhiyun 
442*4882a593Smuzhiyun #define REG_AXXX_CP_BIN_MASK_HI					0x00000455
443*4882a593Smuzhiyun 
444*4882a593Smuzhiyun #define REG_AXXX_CP_BIN_SELECT_LO				0x00000456
445*4882a593Smuzhiyun 
446*4882a593Smuzhiyun #define REG_AXXX_CP_BIN_SELECT_HI				0x00000457
447*4882a593Smuzhiyun 
448*4882a593Smuzhiyun #define REG_AXXX_CP_IB1_BASE					0x00000458
449*4882a593Smuzhiyun 
450*4882a593Smuzhiyun #define REG_AXXX_CP_IB1_BUFSZ					0x00000459
451*4882a593Smuzhiyun 
452*4882a593Smuzhiyun #define REG_AXXX_CP_IB2_BASE					0x0000045a
453*4882a593Smuzhiyun 
454*4882a593Smuzhiyun #define REG_AXXX_CP_IB2_BUFSZ					0x0000045b
455*4882a593Smuzhiyun 
456*4882a593Smuzhiyun #define REG_AXXX_CP_STAT					0x0000047f
457*4882a593Smuzhiyun #define AXXX_CP_STAT_CP_BUSY__MASK				0x80000000
458*4882a593Smuzhiyun #define AXXX_CP_STAT_CP_BUSY__SHIFT				31
AXXX_CP_STAT_CP_BUSY(uint32_t val)459*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CP_BUSY(uint32_t val)
460*4882a593Smuzhiyun {
461*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CP_BUSY__SHIFT) & AXXX_CP_STAT_CP_BUSY__MASK;
462*4882a593Smuzhiyun }
463*4882a593Smuzhiyun #define AXXX_CP_STAT_VS_EVENT_FIFO_BUSY__MASK			0x40000000
464*4882a593Smuzhiyun #define AXXX_CP_STAT_VS_EVENT_FIFO_BUSY__SHIFT			30
AXXX_CP_STAT_VS_EVENT_FIFO_BUSY(uint32_t val)465*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_VS_EVENT_FIFO_BUSY(uint32_t val)
466*4882a593Smuzhiyun {
467*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_VS_EVENT_FIFO_BUSY__SHIFT) & AXXX_CP_STAT_VS_EVENT_FIFO_BUSY__MASK;
468*4882a593Smuzhiyun }
469*4882a593Smuzhiyun #define AXXX_CP_STAT_PS_EVENT_FIFO_BUSY__MASK			0x20000000
470*4882a593Smuzhiyun #define AXXX_CP_STAT_PS_EVENT_FIFO_BUSY__SHIFT			29
AXXX_CP_STAT_PS_EVENT_FIFO_BUSY(uint32_t val)471*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_PS_EVENT_FIFO_BUSY(uint32_t val)
472*4882a593Smuzhiyun {
473*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_PS_EVENT_FIFO_BUSY__SHIFT) & AXXX_CP_STAT_PS_EVENT_FIFO_BUSY__MASK;
474*4882a593Smuzhiyun }
475*4882a593Smuzhiyun #define AXXX_CP_STAT_CF_EVENT_FIFO_BUSY__MASK			0x10000000
476*4882a593Smuzhiyun #define AXXX_CP_STAT_CF_EVENT_FIFO_BUSY__SHIFT			28
AXXX_CP_STAT_CF_EVENT_FIFO_BUSY(uint32_t val)477*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CF_EVENT_FIFO_BUSY(uint32_t val)
478*4882a593Smuzhiyun {
479*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CF_EVENT_FIFO_BUSY__SHIFT) & AXXX_CP_STAT_CF_EVENT_FIFO_BUSY__MASK;
480*4882a593Smuzhiyun }
481*4882a593Smuzhiyun #define AXXX_CP_STAT_RB_EVENT_FIFO_BUSY__MASK			0x08000000
482*4882a593Smuzhiyun #define AXXX_CP_STAT_RB_EVENT_FIFO_BUSY__SHIFT			27
AXXX_CP_STAT_RB_EVENT_FIFO_BUSY(uint32_t val)483*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RB_EVENT_FIFO_BUSY(uint32_t val)
484*4882a593Smuzhiyun {
485*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RB_EVENT_FIFO_BUSY__SHIFT) & AXXX_CP_STAT_RB_EVENT_FIFO_BUSY__MASK;
486*4882a593Smuzhiyun }
487*4882a593Smuzhiyun #define AXXX_CP_STAT_ME_BUSY__MASK				0x04000000
488*4882a593Smuzhiyun #define AXXX_CP_STAT_ME_BUSY__SHIFT				26
AXXX_CP_STAT_ME_BUSY(uint32_t val)489*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_ME_BUSY(uint32_t val)
490*4882a593Smuzhiyun {
491*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_ME_BUSY__SHIFT) & AXXX_CP_STAT_ME_BUSY__MASK;
492*4882a593Smuzhiyun }
493*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_WR_C_BUSY__MASK			0x02000000
494*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_WR_C_BUSY__SHIFT			25
AXXX_CP_STAT_MIU_WR_C_BUSY(uint32_t val)495*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_MIU_WR_C_BUSY(uint32_t val)
496*4882a593Smuzhiyun {
497*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_MIU_WR_C_BUSY__SHIFT) & AXXX_CP_STAT_MIU_WR_C_BUSY__MASK;
498*4882a593Smuzhiyun }
499*4882a593Smuzhiyun #define AXXX_CP_STAT_CP_3D_BUSY__MASK				0x00800000
500*4882a593Smuzhiyun #define AXXX_CP_STAT_CP_3D_BUSY__SHIFT				23
AXXX_CP_STAT_CP_3D_BUSY(uint32_t val)501*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CP_3D_BUSY(uint32_t val)
502*4882a593Smuzhiyun {
503*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CP_3D_BUSY__SHIFT) & AXXX_CP_STAT_CP_3D_BUSY__MASK;
504*4882a593Smuzhiyun }
505*4882a593Smuzhiyun #define AXXX_CP_STAT_CP_NRT_BUSY__MASK				0x00400000
506*4882a593Smuzhiyun #define AXXX_CP_STAT_CP_NRT_BUSY__SHIFT				22
AXXX_CP_STAT_CP_NRT_BUSY(uint32_t val)507*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CP_NRT_BUSY(uint32_t val)
508*4882a593Smuzhiyun {
509*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CP_NRT_BUSY__SHIFT) & AXXX_CP_STAT_CP_NRT_BUSY__MASK;
510*4882a593Smuzhiyun }
511*4882a593Smuzhiyun #define AXXX_CP_STAT_RBIU_SCRATCH_BUSY__MASK			0x00200000
512*4882a593Smuzhiyun #define AXXX_CP_STAT_RBIU_SCRATCH_BUSY__SHIFT			21
AXXX_CP_STAT_RBIU_SCRATCH_BUSY(uint32_t val)513*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RBIU_SCRATCH_BUSY(uint32_t val)
514*4882a593Smuzhiyun {
515*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RBIU_SCRATCH_BUSY__SHIFT) & AXXX_CP_STAT_RBIU_SCRATCH_BUSY__MASK;
516*4882a593Smuzhiyun }
517*4882a593Smuzhiyun #define AXXX_CP_STAT_RCIU_ME_BUSY__MASK				0x00100000
518*4882a593Smuzhiyun #define AXXX_CP_STAT_RCIU_ME_BUSY__SHIFT			20
AXXX_CP_STAT_RCIU_ME_BUSY(uint32_t val)519*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RCIU_ME_BUSY(uint32_t val)
520*4882a593Smuzhiyun {
521*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RCIU_ME_BUSY__SHIFT) & AXXX_CP_STAT_RCIU_ME_BUSY__MASK;
522*4882a593Smuzhiyun }
523*4882a593Smuzhiyun #define AXXX_CP_STAT_RCIU_PFP_BUSY__MASK			0x00080000
524*4882a593Smuzhiyun #define AXXX_CP_STAT_RCIU_PFP_BUSY__SHIFT			19
AXXX_CP_STAT_RCIU_PFP_BUSY(uint32_t val)525*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RCIU_PFP_BUSY(uint32_t val)
526*4882a593Smuzhiyun {
527*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RCIU_PFP_BUSY__SHIFT) & AXXX_CP_STAT_RCIU_PFP_BUSY__MASK;
528*4882a593Smuzhiyun }
529*4882a593Smuzhiyun #define AXXX_CP_STAT_MEQ_RING_BUSY__MASK			0x00040000
530*4882a593Smuzhiyun #define AXXX_CP_STAT_MEQ_RING_BUSY__SHIFT			18
AXXX_CP_STAT_MEQ_RING_BUSY(uint32_t val)531*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_MEQ_RING_BUSY(uint32_t val)
532*4882a593Smuzhiyun {
533*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_MEQ_RING_BUSY__SHIFT) & AXXX_CP_STAT_MEQ_RING_BUSY__MASK;
534*4882a593Smuzhiyun }
535*4882a593Smuzhiyun #define AXXX_CP_STAT_PFP_BUSY__MASK				0x00020000
536*4882a593Smuzhiyun #define AXXX_CP_STAT_PFP_BUSY__SHIFT				17
AXXX_CP_STAT_PFP_BUSY(uint32_t val)537*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_PFP_BUSY(uint32_t val)
538*4882a593Smuzhiyun {
539*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_PFP_BUSY__SHIFT) & AXXX_CP_STAT_PFP_BUSY__MASK;
540*4882a593Smuzhiyun }
541*4882a593Smuzhiyun #define AXXX_CP_STAT_ST_QUEUE_BUSY__MASK			0x00010000
542*4882a593Smuzhiyun #define AXXX_CP_STAT_ST_QUEUE_BUSY__SHIFT			16
AXXX_CP_STAT_ST_QUEUE_BUSY(uint32_t val)543*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_ST_QUEUE_BUSY(uint32_t val)
544*4882a593Smuzhiyun {
545*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_ST_QUEUE_BUSY__SHIFT) & AXXX_CP_STAT_ST_QUEUE_BUSY__MASK;
546*4882a593Smuzhiyun }
547*4882a593Smuzhiyun #define AXXX_CP_STAT_INDIRECT2_QUEUE_BUSY__MASK			0x00002000
548*4882a593Smuzhiyun #define AXXX_CP_STAT_INDIRECT2_QUEUE_BUSY__SHIFT		13
AXXX_CP_STAT_INDIRECT2_QUEUE_BUSY(uint32_t val)549*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_INDIRECT2_QUEUE_BUSY(uint32_t val)
550*4882a593Smuzhiyun {
551*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_INDIRECT2_QUEUE_BUSY__SHIFT) & AXXX_CP_STAT_INDIRECT2_QUEUE_BUSY__MASK;
552*4882a593Smuzhiyun }
553*4882a593Smuzhiyun #define AXXX_CP_STAT_INDIRECTS_QUEUE_BUSY__MASK			0x00001000
554*4882a593Smuzhiyun #define AXXX_CP_STAT_INDIRECTS_QUEUE_BUSY__SHIFT		12
AXXX_CP_STAT_INDIRECTS_QUEUE_BUSY(uint32_t val)555*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_INDIRECTS_QUEUE_BUSY(uint32_t val)
556*4882a593Smuzhiyun {
557*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_INDIRECTS_QUEUE_BUSY__SHIFT) & AXXX_CP_STAT_INDIRECTS_QUEUE_BUSY__MASK;
558*4882a593Smuzhiyun }
559*4882a593Smuzhiyun #define AXXX_CP_STAT_RING_QUEUE_BUSY__MASK			0x00000800
560*4882a593Smuzhiyun #define AXXX_CP_STAT_RING_QUEUE_BUSY__SHIFT			11
AXXX_CP_STAT_RING_QUEUE_BUSY(uint32_t val)561*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RING_QUEUE_BUSY(uint32_t val)
562*4882a593Smuzhiyun {
563*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RING_QUEUE_BUSY__SHIFT) & AXXX_CP_STAT_RING_QUEUE_BUSY__MASK;
564*4882a593Smuzhiyun }
565*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_BUSY__MASK				0x00000400
566*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_BUSY__SHIFT				10
AXXX_CP_STAT_CSF_BUSY(uint32_t val)567*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CSF_BUSY(uint32_t val)
568*4882a593Smuzhiyun {
569*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CSF_BUSY__SHIFT) & AXXX_CP_STAT_CSF_BUSY__MASK;
570*4882a593Smuzhiyun }
571*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_ST_BUSY__MASK				0x00000200
572*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_ST_BUSY__SHIFT				9
AXXX_CP_STAT_CSF_ST_BUSY(uint32_t val)573*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CSF_ST_BUSY(uint32_t val)
574*4882a593Smuzhiyun {
575*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CSF_ST_BUSY__SHIFT) & AXXX_CP_STAT_CSF_ST_BUSY__MASK;
576*4882a593Smuzhiyun }
577*4882a593Smuzhiyun #define AXXX_CP_STAT_EVENT_BUSY__MASK				0x00000100
578*4882a593Smuzhiyun #define AXXX_CP_STAT_EVENT_BUSY__SHIFT				8
AXXX_CP_STAT_EVENT_BUSY(uint32_t val)579*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_EVENT_BUSY(uint32_t val)
580*4882a593Smuzhiyun {
581*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_EVENT_BUSY__SHIFT) & AXXX_CP_STAT_EVENT_BUSY__MASK;
582*4882a593Smuzhiyun }
583*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_INDIRECT2_BUSY__MASK			0x00000080
584*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_INDIRECT2_BUSY__SHIFT			7
AXXX_CP_STAT_CSF_INDIRECT2_BUSY(uint32_t val)585*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CSF_INDIRECT2_BUSY(uint32_t val)
586*4882a593Smuzhiyun {
587*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CSF_INDIRECT2_BUSY__SHIFT) & AXXX_CP_STAT_CSF_INDIRECT2_BUSY__MASK;
588*4882a593Smuzhiyun }
589*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_INDIRECTS_BUSY__MASK			0x00000040
590*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_INDIRECTS_BUSY__SHIFT			6
AXXX_CP_STAT_CSF_INDIRECTS_BUSY(uint32_t val)591*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CSF_INDIRECTS_BUSY(uint32_t val)
592*4882a593Smuzhiyun {
593*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CSF_INDIRECTS_BUSY__SHIFT) & AXXX_CP_STAT_CSF_INDIRECTS_BUSY__MASK;
594*4882a593Smuzhiyun }
595*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_RING_BUSY__MASK			0x00000020
596*4882a593Smuzhiyun #define AXXX_CP_STAT_CSF_RING_BUSY__SHIFT			5
AXXX_CP_STAT_CSF_RING_BUSY(uint32_t val)597*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_CSF_RING_BUSY(uint32_t val)
598*4882a593Smuzhiyun {
599*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_CSF_RING_BUSY__SHIFT) & AXXX_CP_STAT_CSF_RING_BUSY__MASK;
600*4882a593Smuzhiyun }
601*4882a593Smuzhiyun #define AXXX_CP_STAT_RCIU_BUSY__MASK				0x00000010
602*4882a593Smuzhiyun #define AXXX_CP_STAT_RCIU_BUSY__SHIFT				4
AXXX_CP_STAT_RCIU_BUSY(uint32_t val)603*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RCIU_BUSY(uint32_t val)
604*4882a593Smuzhiyun {
605*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RCIU_BUSY__SHIFT) & AXXX_CP_STAT_RCIU_BUSY__MASK;
606*4882a593Smuzhiyun }
607*4882a593Smuzhiyun #define AXXX_CP_STAT_RBIU_BUSY__MASK				0x00000008
608*4882a593Smuzhiyun #define AXXX_CP_STAT_RBIU_BUSY__SHIFT				3
AXXX_CP_STAT_RBIU_BUSY(uint32_t val)609*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_RBIU_BUSY(uint32_t val)
610*4882a593Smuzhiyun {
611*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_RBIU_BUSY__SHIFT) & AXXX_CP_STAT_RBIU_BUSY__MASK;
612*4882a593Smuzhiyun }
613*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_RD_RETURN_BUSY__MASK			0x00000004
614*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_RD_RETURN_BUSY__SHIFT			2
AXXX_CP_STAT_MIU_RD_RETURN_BUSY(uint32_t val)615*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_MIU_RD_RETURN_BUSY(uint32_t val)
616*4882a593Smuzhiyun {
617*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_MIU_RD_RETURN_BUSY__SHIFT) & AXXX_CP_STAT_MIU_RD_RETURN_BUSY__MASK;
618*4882a593Smuzhiyun }
619*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_RD_REQ_BUSY__MASK			0x00000002
620*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_RD_REQ_BUSY__SHIFT			1
AXXX_CP_STAT_MIU_RD_REQ_BUSY(uint32_t val)621*4882a593Smuzhiyun static inline uint32_t AXXX_CP_STAT_MIU_RD_REQ_BUSY(uint32_t val)
622*4882a593Smuzhiyun {
623*4882a593Smuzhiyun 	return ((val) << AXXX_CP_STAT_MIU_RD_REQ_BUSY__SHIFT) & AXXX_CP_STAT_MIU_RD_REQ_BUSY__MASK;
624*4882a593Smuzhiyun }
625*4882a593Smuzhiyun #define AXXX_CP_STAT_MIU_WR_BUSY				0x00000001
626*4882a593Smuzhiyun 
627*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG0				0x00000578
628*4882a593Smuzhiyun 
629*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG1				0x00000579
630*4882a593Smuzhiyun 
631*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG2				0x0000057a
632*4882a593Smuzhiyun 
633*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG3				0x0000057b
634*4882a593Smuzhiyun 
635*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG4				0x0000057c
636*4882a593Smuzhiyun 
637*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG5				0x0000057d
638*4882a593Smuzhiyun 
639*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG6				0x0000057e
640*4882a593Smuzhiyun 
641*4882a593Smuzhiyun #define REG_AXXX_CP_SCRATCH_REG7				0x0000057f
642*4882a593Smuzhiyun 
643*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_EVENT_SRC				0x00000600
644*4882a593Smuzhiyun 
645*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_EVENT_ADDR				0x00000601
646*4882a593Smuzhiyun 
647*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_EVENT_DATA				0x00000602
648*4882a593Smuzhiyun 
649*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_EVENT_ADDR_SWM			0x00000603
650*4882a593Smuzhiyun 
651*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_EVENT_DATA_SWM			0x00000604
652*4882a593Smuzhiyun 
653*4882a593Smuzhiyun #define REG_AXXX_CP_ME_PS_EVENT_SRC				0x00000605
654*4882a593Smuzhiyun 
655*4882a593Smuzhiyun #define REG_AXXX_CP_ME_PS_EVENT_ADDR				0x00000606
656*4882a593Smuzhiyun 
657*4882a593Smuzhiyun #define REG_AXXX_CP_ME_PS_EVENT_DATA				0x00000607
658*4882a593Smuzhiyun 
659*4882a593Smuzhiyun #define REG_AXXX_CP_ME_PS_EVENT_ADDR_SWM			0x00000608
660*4882a593Smuzhiyun 
661*4882a593Smuzhiyun #define REG_AXXX_CP_ME_PS_EVENT_DATA_SWM			0x00000609
662*4882a593Smuzhiyun 
663*4882a593Smuzhiyun #define REG_AXXX_CP_ME_CF_EVENT_SRC				0x0000060a
664*4882a593Smuzhiyun 
665*4882a593Smuzhiyun #define REG_AXXX_CP_ME_CF_EVENT_ADDR				0x0000060b
666*4882a593Smuzhiyun 
667*4882a593Smuzhiyun #define REG_AXXX_CP_ME_CF_EVENT_DATA				0x0000060c
668*4882a593Smuzhiyun 
669*4882a593Smuzhiyun #define REG_AXXX_CP_ME_NRT_ADDR					0x0000060d
670*4882a593Smuzhiyun 
671*4882a593Smuzhiyun #define REG_AXXX_CP_ME_NRT_DATA					0x0000060e
672*4882a593Smuzhiyun 
673*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_FETCH_DONE_SRC			0x00000612
674*4882a593Smuzhiyun 
675*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_FETCH_DONE_ADDR			0x00000613
676*4882a593Smuzhiyun 
677*4882a593Smuzhiyun #define REG_AXXX_CP_ME_VS_FETCH_DONE_DATA			0x00000614
678*4882a593Smuzhiyun 
679*4882a593Smuzhiyun 
680*4882a593Smuzhiyun #endif /* ADRENO_COMMON_XML */
681