1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Copyright (C) 2020 Marvell International Ltd.
4  *
5  * Configuration and status register (CSR) type definitions for
6  * Octeon ciu.
7  */
8 
9 #ifndef __CVMX_CIU_DEFS_H__
10 #define __CVMX_CIU_DEFS_H__
11 
12 #define CVMX_CIU_BIST				  (0x0001070000000730ull)
13 #define CVMX_CIU_BLOCK_INT			  (0x00010700000007C0ull)
14 #define CVMX_CIU_CIB_L2C_ENX(offset)		  (0x000107000000E100ull)
15 #define CVMX_CIU_CIB_L2C_RAWX(offset)		  (0x000107000000E000ull)
16 #define CVMX_CIU_CIB_LMCX_ENX(offset, block_id)	  (0x000107000000E300ull)
17 #define CVMX_CIU_CIB_LMCX_RAWX(offset, block_id)  (0x000107000000E200ull)
18 #define CVMX_CIU_CIB_OCLAX_ENX(offset, block_id)  (0x000107000000EE00ull)
19 #define CVMX_CIU_CIB_OCLAX_RAWX(offset, block_id) (0x000107000000EC00ull)
20 #define CVMX_CIU_CIB_RST_ENX(offset)		  (0x000107000000E500ull)
21 #define CVMX_CIU_CIB_RST_RAWX(offset)		  (0x000107000000E400ull)
22 #define CVMX_CIU_CIB_SATA_ENX(offset)		  (0x000107000000E700ull)
23 #define CVMX_CIU_CIB_SATA_RAWX(offset)		  (0x000107000000E600ull)
24 #define CVMX_CIU_CIB_USBDRDX_ENX(offset, block_id)                                                 \
25 	(0x000107000000EA00ull + ((block_id) & 1) * 0x100ull)
26 #define CVMX_CIU_CIB_USBDRDX_RAWX(offset, block_id)                                                \
27 	(0x000107000000E800ull + ((block_id) & 1) * 0x100ull)
28 #define CVMX_CIU_DINT CVMX_CIU_DINT_FUNC()
CVMX_CIU_DINT_FUNC(void)29 static inline u64 CVMX_CIU_DINT_FUNC(void)
30 {
31 	switch (cvmx_get_octeon_family()) {
32 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
33 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
34 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
35 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
36 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
37 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
38 		return 0x0001070000000720ull;
39 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
40 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
41 			return 0x0001010000000180ull;
42 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
43 			return 0x0001010000000180ull;
44 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
45 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
46 		return 0x0001010000000180ull;
47 	}
48 	return 0x0001010000000180ull;
49 }
50 
51 #define CVMX_CIU_EN2_IOX_INT(offset)	 (0x000107000000A600ull + ((offset) & 1) * 8)
52 #define CVMX_CIU_EN2_IOX_INT_W1C(offset) (0x000107000000CE00ull + ((offset) & 1) * 8)
53 #define CVMX_CIU_EN2_IOX_INT_W1S(offset) (0x000107000000AE00ull + ((offset) & 1) * 8)
54 #define CVMX_CIU_EN2_PPX_IP2(offset)	 (0x000107000000A000ull + ((offset) & 15) * 8)
55 #define CVMX_CIU_EN2_PPX_IP2_W1C(offset) (0x000107000000C800ull + ((offset) & 15) * 8)
56 #define CVMX_CIU_EN2_PPX_IP2_W1S(offset) (0x000107000000A800ull + ((offset) & 15) * 8)
57 #define CVMX_CIU_EN2_PPX_IP3(offset)	 (0x000107000000A200ull + ((offset) & 15) * 8)
58 #define CVMX_CIU_EN2_PPX_IP3_W1C(offset) (0x000107000000CA00ull + ((offset) & 15) * 8)
59 #define CVMX_CIU_EN2_PPX_IP3_W1S(offset) (0x000107000000AA00ull + ((offset) & 15) * 8)
60 #define CVMX_CIU_EN2_PPX_IP4(offset)	 (0x000107000000A400ull + ((offset) & 15) * 8)
61 #define CVMX_CIU_EN2_PPX_IP4_W1C(offset) (0x000107000000CC00ull + ((offset) & 15) * 8)
62 #define CVMX_CIU_EN2_PPX_IP4_W1S(offset) (0x000107000000AC00ull + ((offset) & 15) * 8)
63 #define CVMX_CIU_FUSE			 CVMX_CIU_FUSE_FUNC()
CVMX_CIU_FUSE_FUNC(void)64 static inline u64 CVMX_CIU_FUSE_FUNC(void)
65 {
66 	switch (cvmx_get_octeon_family()) {
67 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
68 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
69 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
70 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
71 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
72 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
73 		return 0x0001070000000728ull;
74 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
75 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
76 			return 0x00010100000001A0ull;
77 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
78 			return 0x00010100000001A0ull;
79 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
80 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
81 		return 0x00010100000001A0ull;
82 	}
83 	return 0x00010100000001A0ull;
84 }
85 
86 #define CVMX_CIU_GSTOP			(0x0001070000000710ull)
87 #define CVMX_CIU_INT33_SUM0		(0x0001070000000110ull)
88 #define CVMX_CIU_INTR_SLOWDOWN		(0x00010700000007D0ull)
89 #define CVMX_CIU_INTX_EN0(offset)	(0x0001070000000200ull + ((offset) & 63) * 16)
90 #define CVMX_CIU_INTX_EN0_W1C(offset)	(0x0001070000002200ull + ((offset) & 63) * 16)
91 #define CVMX_CIU_INTX_EN0_W1S(offset)	(0x0001070000006200ull + ((offset) & 63) * 16)
92 #define CVMX_CIU_INTX_EN1(offset)	(0x0001070000000208ull + ((offset) & 63) * 16)
93 #define CVMX_CIU_INTX_EN1_W1C(offset)	(0x0001070000002208ull + ((offset) & 63) * 16)
94 #define CVMX_CIU_INTX_EN1_W1S(offset)	(0x0001070000006208ull + ((offset) & 63) * 16)
95 #define CVMX_CIU_INTX_EN4_0(offset)	(0x0001070000000C80ull + ((offset) & 15) * 16)
96 #define CVMX_CIU_INTX_EN4_0_W1C(offset) (0x0001070000002C80ull + ((offset) & 15) * 16)
97 #define CVMX_CIU_INTX_EN4_0_W1S(offset) (0x0001070000006C80ull + ((offset) & 15) * 16)
98 #define CVMX_CIU_INTX_EN4_1(offset)	(0x0001070000000C88ull + ((offset) & 15) * 16)
99 #define CVMX_CIU_INTX_EN4_1_W1C(offset) (0x0001070000002C88ull + ((offset) & 15) * 16)
100 #define CVMX_CIU_INTX_EN4_1_W1S(offset) (0x0001070000006C88ull + ((offset) & 15) * 16)
101 #define CVMX_CIU_INTX_SUM0(offset)	(0x0001070000000000ull + ((offset) & 63) * 8)
102 #define CVMX_CIU_INTX_SUM4(offset)	(0x0001070000000C00ull + ((offset) & 15) * 8)
103 #define CVMX_CIU_INT_DBG_SEL		(0x00010700000007D0ull)
104 #define CVMX_CIU_INT_SUM1		(0x0001070000000108ull)
CVMX_CIU_MBOX_CLRX(unsigned long offset)105 static inline u64 CVMX_CIU_MBOX_CLRX(unsigned long offset)
106 {
107 	switch (cvmx_get_octeon_family()) {
108 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
109 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
110 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
111 		return 0x0001070000000680ull + (offset) * 8;
112 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
113 		return 0x0001070000000680ull + (offset) * 8;
114 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
115 		return 0x0001070000000680ull + (offset) * 8;
116 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
117 		return 0x0001070100100600ull + (offset) * 8;
118 	}
119 	return 0x0001070000000680ull + (offset) * 8;
120 }
121 
CVMX_CIU_MBOX_SETX(unsigned long offset)122 static inline u64 CVMX_CIU_MBOX_SETX(unsigned long offset)
123 {
124 	switch (cvmx_get_octeon_family()) {
125 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
126 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
127 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
128 		return 0x0001070000000600ull + (offset) * 8;
129 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
130 		return 0x0001070000000600ull + (offset) * 8;
131 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
132 		return 0x0001070000000600ull + (offset) * 8;
133 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
134 		return 0x0001070100100400ull + (offset) * 8;
135 	}
136 	return 0x0001070000000600ull + (offset) * 8;
137 }
138 
139 #define CVMX_CIU_NMI	      (0x0001070000000718ull)
140 #define CVMX_CIU_PCI_INTA     (0x0001070000000750ull)
141 #define CVMX_CIU_PP_BIST_STAT (0x00010700000007E0ull)
142 #define CVMX_CIU_PP_DBG	      CVMX_CIU_PP_DBG_FUNC()
CVMX_CIU_PP_DBG_FUNC(void)143 static inline u64 CVMX_CIU_PP_DBG_FUNC(void)
144 {
145 	switch (cvmx_get_octeon_family()) {
146 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
147 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
148 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
149 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
150 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
151 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
152 		return 0x0001070000000708ull;
153 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
154 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
155 			return 0x0001010000000120ull;
156 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
157 			return 0x0001010000000120ull;
158 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
159 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
160 		return 0x0001010000000120ull;
161 	}
162 	return 0x0001010000000120ull;
163 }
164 
CVMX_CIU_PP_POKEX(unsigned long offset)165 static inline u64 CVMX_CIU_PP_POKEX(unsigned long offset)
166 {
167 	switch (cvmx_get_octeon_family()) {
168 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
169 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
170 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
171 		return 0x0001070000000580ull + (offset) * 8;
172 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
173 		return 0x0001070000000580ull + (offset) * 8;
174 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
175 		return 0x0001070000000580ull + (offset) * 8;
176 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
177 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
178 			return 0x0001010000030000ull + (offset) * 8;
179 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
180 			return 0x0001010000030000ull + (offset) * 8;
181 
182 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
183 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
184 		return 0x0001010000030000ull + (offset) * 8;
185 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
186 		return 0x0001070100100200ull + (offset) * 8;
187 	}
188 	return 0x0001010000030000ull + (offset) * 8;
189 }
190 
191 #define CVMX_CIU_PP_RST CVMX_CIU_PP_RST_FUNC()
CVMX_CIU_PP_RST_FUNC(void)192 static inline u64 CVMX_CIU_PP_RST_FUNC(void)
193 {
194 	switch (cvmx_get_octeon_family()) {
195 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
196 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
197 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
198 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
199 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
200 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
201 		return 0x0001070000000700ull;
202 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
203 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
204 			return 0x0001010000000100ull;
205 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
206 			return 0x0001010000000100ull;
207 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
208 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
209 		return 0x0001010000000100ull;
210 	}
211 	return 0x0001010000000100ull;
212 }
213 
214 #define CVMX_CIU_PP_RST_PENDING CVMX_CIU_PP_RST_PENDING_FUNC()
CVMX_CIU_PP_RST_PENDING_FUNC(void)215 static inline u64 CVMX_CIU_PP_RST_PENDING_FUNC(void)
216 {
217 	switch (cvmx_get_octeon_family()) {
218 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
219 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
220 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
221 			return 0x0001010000000110ull;
222 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
223 			return 0x0001010000000110ull;
224 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
225 		return 0x0001010000000110ull;
226 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
227 		return 0x0001070000000740ull;
228 	}
229 	return 0x0001010000000110ull;
230 }
231 
232 #define CVMX_CIU_QLM0		      (0x0001070000000780ull)
233 #define CVMX_CIU_QLM1		      (0x0001070000000788ull)
234 #define CVMX_CIU_QLM2		      (0x0001070000000790ull)
235 #define CVMX_CIU_QLM3		      (0x0001070000000798ull)
236 #define CVMX_CIU_QLM4		      (0x00010700000007A0ull)
237 #define CVMX_CIU_QLM_DCOK	      (0x0001070000000760ull)
238 #define CVMX_CIU_QLM_JTGC	      (0x0001070000000768ull)
239 #define CVMX_CIU_QLM_JTGD	      (0x0001070000000770ull)
240 #define CVMX_CIU_SOFT_BIST	      (0x0001070000000738ull)
241 #define CVMX_CIU_SOFT_PRST	      (0x0001070000000748ull)
242 #define CVMX_CIU_SOFT_PRST1	      (0x0001070000000758ull)
243 #define CVMX_CIU_SOFT_PRST2	      (0x00010700000007D8ull)
244 #define CVMX_CIU_SOFT_PRST3	      (0x00010700000007E0ull)
245 #define CVMX_CIU_SOFT_RST	      (0x0001070000000740ull)
246 #define CVMX_CIU_SUM1_IOX_INT(offset) (0x0001070000008600ull + ((offset) & 1) * 8)
247 #define CVMX_CIU_SUM1_PPX_IP2(offset) (0x0001070000008000ull + ((offset) & 15) * 8)
248 #define CVMX_CIU_SUM1_PPX_IP3(offset) (0x0001070000008200ull + ((offset) & 15) * 8)
249 #define CVMX_CIU_SUM1_PPX_IP4(offset) (0x0001070000008400ull + ((offset) & 15) * 8)
250 #define CVMX_CIU_SUM2_IOX_INT(offset) (0x0001070000008E00ull + ((offset) & 1) * 8)
251 #define CVMX_CIU_SUM2_PPX_IP2(offset) (0x0001070000008800ull + ((offset) & 15) * 8)
252 #define CVMX_CIU_SUM2_PPX_IP3(offset) (0x0001070000008A00ull + ((offset) & 15) * 8)
253 #define CVMX_CIU_SUM2_PPX_IP4(offset) (0x0001070000008C00ull + ((offset) & 15) * 8)
254 #define CVMX_CIU_TIMX(offset)	      (0x0001070000000480ull + ((offset) & 15) * 8)
255 #define CVMX_CIU_TIM_MULTI_CAST	      CVMX_CIU_TIM_MULTI_CAST_FUNC()
CVMX_CIU_TIM_MULTI_CAST_FUNC(void)256 static inline u64 CVMX_CIU_TIM_MULTI_CAST_FUNC(void)
257 {
258 	switch (cvmx_get_octeon_family()) {
259 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
260 		return 0x00010700000004F0ull;
261 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
262 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
263 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
264 		return 0x000107000000C200ull;
265 	}
266 	return 0x000107000000C200ull;
267 }
268 
CVMX_CIU_WDOGX(unsigned long offset)269 static inline u64 CVMX_CIU_WDOGX(unsigned long offset)
270 {
271 	switch (cvmx_get_octeon_family()) {
272 	case OCTEON_CN70XX & OCTEON_FAMILY_MASK:
273 	case OCTEON_CNF71XX & OCTEON_FAMILY_MASK:
274 	case OCTEON_CN61XX & OCTEON_FAMILY_MASK:
275 		return 0x0001070000000500ull + (offset) * 8;
276 	case OCTEON_CN66XX & OCTEON_FAMILY_MASK:
277 		return 0x0001070000000500ull + (offset) * 8;
278 	case OCTEON_CN63XX & OCTEON_FAMILY_MASK:
279 		return 0x0001070000000500ull + (offset) * 8;
280 	case OCTEON_CN78XX & OCTEON_FAMILY_MASK:
281 		if (OCTEON_IS_MODEL(OCTEON_CN78XX_PASS1_X))
282 			return 0x0001010000020000ull + (offset) * 8;
283 		if (OCTEON_IS_MODEL(OCTEON_CN78XX))
284 			return 0x0001010000020000ull + (offset) * 8;
285 
286 	case OCTEON_CNF75XX & OCTEON_FAMILY_MASK:
287 	case OCTEON_CN73XX & OCTEON_FAMILY_MASK:
288 		return 0x0001010000020000ull + (offset) * 8;
289 	case OCTEON_CN68XX & OCTEON_FAMILY_MASK:
290 		return 0x0001070100100000ull + (offset) * 8;
291 	}
292 	return 0x0001010000020000ull + (offset) * 8;
293 }
294 
295 /**
296  * cvmx_ciu_bist
297  */
298 union cvmx_ciu_bist {
299 	u64 u64;
300 	struct cvmx_ciu_bist_s {
301 		u64 reserved_7_63 : 57;
302 		u64 bist : 7;
303 	} s;
304 	struct cvmx_ciu_bist_cn30xx {
305 		u64 reserved_4_63 : 60;
306 		u64 bist : 4;
307 	} cn30xx;
308 	struct cvmx_ciu_bist_cn30xx cn31xx;
309 	struct cvmx_ciu_bist_cn30xx cn38xx;
310 	struct cvmx_ciu_bist_cn30xx cn38xxp2;
311 	struct cvmx_ciu_bist_cn50xx {
312 		u64 reserved_2_63 : 62;
313 		u64 bist : 2;
314 	} cn50xx;
315 	struct cvmx_ciu_bist_cn52xx {
316 		u64 reserved_3_63 : 61;
317 		u64 bist : 3;
318 	} cn52xx;
319 	struct cvmx_ciu_bist_cn52xx cn52xxp1;
320 	struct cvmx_ciu_bist_cn30xx cn56xx;
321 	struct cvmx_ciu_bist_cn30xx cn56xxp1;
322 	struct cvmx_ciu_bist_cn30xx cn58xx;
323 	struct cvmx_ciu_bist_cn30xx cn58xxp1;
324 	struct cvmx_ciu_bist_cn61xx {
325 		u64 reserved_6_63 : 58;
326 		u64 bist : 6;
327 	} cn61xx;
328 	struct cvmx_ciu_bist_cn63xx {
329 		u64 reserved_5_63 : 59;
330 		u64 bist : 5;
331 	} cn63xx;
332 	struct cvmx_ciu_bist_cn63xx cn63xxp1;
333 	struct cvmx_ciu_bist_cn61xx cn66xx;
334 	struct cvmx_ciu_bist_s cn68xx;
335 	struct cvmx_ciu_bist_s cn68xxp1;
336 	struct cvmx_ciu_bist_cn52xx cn70xx;
337 	struct cvmx_ciu_bist_cn52xx cn70xxp1;
338 	struct cvmx_ciu_bist_cn61xx cnf71xx;
339 };
340 
341 typedef union cvmx_ciu_bist cvmx_ciu_bist_t;
342 
343 /**
344  * cvmx_ciu_block_int
345  *
346  * CIU_BLOCK_INT = CIU Blocks Interrupt
347  *
348  * The interrupt lines from the various chip blocks.
349  */
350 union cvmx_ciu_block_int {
351 	u64 u64;
352 	struct cvmx_ciu_block_int_s {
353 		u64 reserved_62_63 : 2;
354 		u64 srio3 : 1;
355 		u64 srio2 : 1;
356 		u64 reserved_43_59 : 17;
357 		u64 ptp : 1;
358 		u64 dpi : 1;
359 		u64 dfm : 1;
360 		u64 reserved_34_39 : 6;
361 		u64 srio1 : 1;
362 		u64 srio0 : 1;
363 		u64 reserved_31_31 : 1;
364 		u64 iob : 1;
365 		u64 reserved_29_29 : 1;
366 		u64 agl : 1;
367 		u64 reserved_27_27 : 1;
368 		u64 pem1 : 1;
369 		u64 pem0 : 1;
370 		u64 reserved_24_24 : 1;
371 		u64 asxpcs1 : 1;
372 		u64 asxpcs0 : 1;
373 		u64 reserved_21_21 : 1;
374 		u64 pip : 1;
375 		u64 reserved_18_19 : 2;
376 		u64 lmc0 : 1;
377 		u64 l2c : 1;
378 		u64 reserved_15_15 : 1;
379 		u64 rad : 1;
380 		u64 usb : 1;
381 		u64 pow : 1;
382 		u64 tim : 1;
383 		u64 pko : 1;
384 		u64 ipd : 1;
385 		u64 reserved_8_8 : 1;
386 		u64 zip : 1;
387 		u64 dfa : 1;
388 		u64 fpa : 1;
389 		u64 key : 1;
390 		u64 sli : 1;
391 		u64 gmx1 : 1;
392 		u64 gmx0 : 1;
393 		u64 mio : 1;
394 	} s;
395 	struct cvmx_ciu_block_int_cn61xx {
396 		u64 reserved_43_63 : 21;
397 		u64 ptp : 1;
398 		u64 dpi : 1;
399 		u64 reserved_31_40 : 10;
400 		u64 iob : 1;
401 		u64 reserved_29_29 : 1;
402 		u64 agl : 1;
403 		u64 reserved_27_27 : 1;
404 		u64 pem1 : 1;
405 		u64 pem0 : 1;
406 		u64 reserved_24_24 : 1;
407 		u64 asxpcs1 : 1;
408 		u64 asxpcs0 : 1;
409 		u64 reserved_21_21 : 1;
410 		u64 pip : 1;
411 		u64 reserved_18_19 : 2;
412 		u64 lmc0 : 1;
413 		u64 l2c : 1;
414 		u64 reserved_15_15 : 1;
415 		u64 rad : 1;
416 		u64 usb : 1;
417 		u64 pow : 1;
418 		u64 tim : 1;
419 		u64 pko : 1;
420 		u64 ipd : 1;
421 		u64 reserved_8_8 : 1;
422 		u64 zip : 1;
423 		u64 dfa : 1;
424 		u64 fpa : 1;
425 		u64 key : 1;
426 		u64 sli : 1;
427 		u64 gmx1 : 1;
428 		u64 gmx0 : 1;
429 		u64 mio : 1;
430 	} cn61xx;
431 	struct cvmx_ciu_block_int_cn63xx {
432 		u64 reserved_43_63 : 21;
433 		u64 ptp : 1;
434 		u64 dpi : 1;
435 		u64 dfm : 1;
436 		u64 reserved_34_39 : 6;
437 		u64 srio1 : 1;
438 		u64 srio0 : 1;
439 		u64 reserved_31_31 : 1;
440 		u64 iob : 1;
441 		u64 reserved_29_29 : 1;
442 		u64 agl : 1;
443 		u64 reserved_27_27 : 1;
444 		u64 pem1 : 1;
445 		u64 pem0 : 1;
446 		u64 reserved_23_24 : 2;
447 		u64 asxpcs0 : 1;
448 		u64 reserved_21_21 : 1;
449 		u64 pip : 1;
450 		u64 reserved_18_19 : 2;
451 		u64 lmc0 : 1;
452 		u64 l2c : 1;
453 		u64 reserved_15_15 : 1;
454 		u64 rad : 1;
455 		u64 usb : 1;
456 		u64 pow : 1;
457 		u64 tim : 1;
458 		u64 pko : 1;
459 		u64 ipd : 1;
460 		u64 reserved_8_8 : 1;
461 		u64 zip : 1;
462 		u64 dfa : 1;
463 		u64 fpa : 1;
464 		u64 key : 1;
465 		u64 sli : 1;
466 		u64 reserved_2_2 : 1;
467 		u64 gmx0 : 1;
468 		u64 mio : 1;
469 	} cn63xx;
470 	struct cvmx_ciu_block_int_cn63xx cn63xxp1;
471 	struct cvmx_ciu_block_int_cn66xx {
472 		u64 reserved_62_63 : 2;
473 		u64 srio3 : 1;
474 		u64 srio2 : 1;
475 		u64 reserved_43_59 : 17;
476 		u64 ptp : 1;
477 		u64 dpi : 1;
478 		u64 dfm : 1;
479 		u64 reserved_33_39 : 7;
480 		u64 srio0 : 1;
481 		u64 reserved_31_31 : 1;
482 		u64 iob : 1;
483 		u64 reserved_29_29 : 1;
484 		u64 agl : 1;
485 		u64 reserved_27_27 : 1;
486 		u64 pem1 : 1;
487 		u64 pem0 : 1;
488 		u64 reserved_24_24 : 1;
489 		u64 asxpcs1 : 1;
490 		u64 asxpcs0 : 1;
491 		u64 reserved_21_21 : 1;
492 		u64 pip : 1;
493 		u64 reserved_18_19 : 2;
494 		u64 lmc0 : 1;
495 		u64 l2c : 1;
496 		u64 reserved_15_15 : 1;
497 		u64 rad : 1;
498 		u64 usb : 1;
499 		u64 pow : 1;
500 		u64 tim : 1;
501 		u64 pko : 1;
502 		u64 ipd : 1;
503 		u64 reserved_8_8 : 1;
504 		u64 zip : 1;
505 		u64 dfa : 1;
506 		u64 fpa : 1;
507 		u64 key : 1;
508 		u64 sli : 1;
509 		u64 gmx1 : 1;
510 		u64 gmx0 : 1;
511 		u64 mio : 1;
512 	} cn66xx;
513 	struct cvmx_ciu_block_int_cnf71xx {
514 		u64 reserved_43_63 : 21;
515 		u64 ptp : 1;
516 		u64 dpi : 1;
517 		u64 reserved_31_40 : 10;
518 		u64 iob : 1;
519 		u64 reserved_27_29 : 3;
520 		u64 pem1 : 1;
521 		u64 pem0 : 1;
522 		u64 reserved_23_24 : 2;
523 		u64 asxpcs0 : 1;
524 		u64 reserved_21_21 : 1;
525 		u64 pip : 1;
526 		u64 reserved_18_19 : 2;
527 		u64 lmc0 : 1;
528 		u64 l2c : 1;
529 		u64 reserved_15_15 : 1;
530 		u64 rad : 1;
531 		u64 usb : 1;
532 		u64 pow : 1;
533 		u64 tim : 1;
534 		u64 pko : 1;
535 		u64 ipd : 1;
536 		u64 reserved_6_8 : 3;
537 		u64 fpa : 1;
538 		u64 key : 1;
539 		u64 sli : 1;
540 		u64 reserved_2_2 : 1;
541 		u64 gmx0 : 1;
542 		u64 mio : 1;
543 	} cnf71xx;
544 };
545 
546 typedef union cvmx_ciu_block_int cvmx_ciu_block_int_t;
547 
548 /**
549  * cvmx_ciu_cib_l2c_en#
550  */
551 union cvmx_ciu_cib_l2c_enx {
552 	u64 u64;
553 	struct cvmx_ciu_cib_l2c_enx_s {
554 		u64 reserved_23_63 : 41;
555 		u64 cbcx_int_ioccmddbe : 1;
556 		u64 cbcx_int_ioccmdsbe : 1;
557 		u64 cbcx_int_rsddbe : 1;
558 		u64 cbcx_int_rsdsbe : 1;
559 		u64 mcix_int_vbfdbe : 1;
560 		u64 mcix_int_vbfsbe : 1;
561 		u64 tadx_int_rtgdbe : 1;
562 		u64 tadx_int_rtgsbe : 1;
563 		u64 tadx_int_rddislmc : 1;
564 		u64 tadx_int_wrdislmc : 1;
565 		u64 tadx_int_bigrd : 1;
566 		u64 tadx_int_bigwr : 1;
567 		u64 tadx_int_holerd : 1;
568 		u64 tadx_int_holewr : 1;
569 		u64 tadx_int_noway : 1;
570 		u64 tadx_int_tagdbe : 1;
571 		u64 tadx_int_tagsbe : 1;
572 		u64 tadx_int_fbfdbe : 1;
573 		u64 tadx_int_fbfsbe : 1;
574 		u64 tadx_int_sbfdbe : 1;
575 		u64 tadx_int_sbfsbe : 1;
576 		u64 tadx_int_l2ddbe : 1;
577 		u64 tadx_int_l2dsbe : 1;
578 	} s;
579 	struct cvmx_ciu_cib_l2c_enx_s cn70xx;
580 	struct cvmx_ciu_cib_l2c_enx_s cn70xxp1;
581 };
582 
583 typedef union cvmx_ciu_cib_l2c_enx cvmx_ciu_cib_l2c_enx_t;
584 
585 /**
586  * cvmx_ciu_cib_l2c_raw#
587  */
588 union cvmx_ciu_cib_l2c_rawx {
589 	u64 u64;
590 	struct cvmx_ciu_cib_l2c_rawx_s {
591 		u64 reserved_23_63 : 41;
592 		u64 cbcx_int_ioccmddbe : 1;
593 		u64 cbcx_int_ioccmdsbe : 1;
594 		u64 cbcx_int_rsddbe : 1;
595 		u64 cbcx_int_rsdsbe : 1;
596 		u64 mcix_int_vbfdbe : 1;
597 		u64 mcix_int_vbfsbe : 1;
598 		u64 tadx_int_rtgdbe : 1;
599 		u64 tadx_int_rtgsbe : 1;
600 		u64 tadx_int_rddislmc : 1;
601 		u64 tadx_int_wrdislmc : 1;
602 		u64 tadx_int_bigrd : 1;
603 		u64 tadx_int_bigwr : 1;
604 		u64 tadx_int_holerd : 1;
605 		u64 tadx_int_holewr : 1;
606 		u64 tadx_int_noway : 1;
607 		u64 tadx_int_tagdbe : 1;
608 		u64 tadx_int_tagsbe : 1;
609 		u64 tadx_int_fbfdbe : 1;
610 		u64 tadx_int_fbfsbe : 1;
611 		u64 tadx_int_sbfdbe : 1;
612 		u64 tadx_int_sbfsbe : 1;
613 		u64 tadx_int_l2ddbe : 1;
614 		u64 tadx_int_l2dsbe : 1;
615 	} s;
616 	struct cvmx_ciu_cib_l2c_rawx_s cn70xx;
617 	struct cvmx_ciu_cib_l2c_rawx_s cn70xxp1;
618 };
619 
620 typedef union cvmx_ciu_cib_l2c_rawx cvmx_ciu_cib_l2c_rawx_t;
621 
622 /**
623  * cvmx_ciu_cib_lmc#_en#
624  */
625 union cvmx_ciu_cib_lmcx_enx {
626 	u64 u64;
627 	struct cvmx_ciu_cib_lmcx_enx_s {
628 		u64 reserved_12_63 : 52;
629 		u64 int_ddr_err : 1;
630 		u64 int_dlc_ded : 1;
631 		u64 int_dlc_sec : 1;
632 		u64 int_ded_errx : 4;
633 		u64 int_sec_errx : 4;
634 		u64 int_nxm_wr_err : 1;
635 	} s;
636 	struct cvmx_ciu_cib_lmcx_enx_s cn70xx;
637 	struct cvmx_ciu_cib_lmcx_enx_s cn70xxp1;
638 };
639 
640 typedef union cvmx_ciu_cib_lmcx_enx cvmx_ciu_cib_lmcx_enx_t;
641 
642 /**
643  * cvmx_ciu_cib_lmc#_raw#
644  */
645 union cvmx_ciu_cib_lmcx_rawx {
646 	u64 u64;
647 	struct cvmx_ciu_cib_lmcx_rawx_s {
648 		u64 reserved_12_63 : 52;
649 		u64 int_ddr_err : 1;
650 		u64 int_dlc_ded : 1;
651 		u64 int_dlc_sec : 1;
652 		u64 int_ded_errx : 4;
653 		u64 int_sec_errx : 4;
654 		u64 int_nxm_wr_err : 1;
655 	} s;
656 	struct cvmx_ciu_cib_lmcx_rawx_s cn70xx;
657 	struct cvmx_ciu_cib_lmcx_rawx_s cn70xxp1;
658 };
659 
660 typedef union cvmx_ciu_cib_lmcx_rawx cvmx_ciu_cib_lmcx_rawx_t;
661 
662 /**
663  * cvmx_ciu_cib_ocla#_en#
664  */
665 union cvmx_ciu_cib_oclax_enx {
666 	u64 u64;
667 	struct cvmx_ciu_cib_oclax_enx_s {
668 		u64 reserved_15_63 : 49;
669 		u64 state_ddrfull : 1;
670 		u64 state_wmark : 1;
671 		u64 state_overfull : 1;
672 		u64 state_trigfull : 1;
673 		u64 state_captured : 1;
674 		u64 state_fsm1_int : 1;
675 		u64 state_fsm0_int : 1;
676 		u64 state_mcdx : 3;
677 		u64 state_trig : 1;
678 		u64 state_ovflx : 4;
679 	} s;
680 	struct cvmx_ciu_cib_oclax_enx_s cn70xx;
681 	struct cvmx_ciu_cib_oclax_enx_s cn70xxp1;
682 };
683 
684 typedef union cvmx_ciu_cib_oclax_enx cvmx_ciu_cib_oclax_enx_t;
685 
686 /**
687  * cvmx_ciu_cib_ocla#_raw#
688  */
689 union cvmx_ciu_cib_oclax_rawx {
690 	u64 u64;
691 	struct cvmx_ciu_cib_oclax_rawx_s {
692 		u64 reserved_15_63 : 49;
693 		u64 state_ddrfull : 1;
694 		u64 state_wmark : 1;
695 		u64 state_overfull : 1;
696 		u64 state_trigfull : 1;
697 		u64 state_captured : 1;
698 		u64 state_fsm1_int : 1;
699 		u64 state_fsm0_int : 1;
700 		u64 state_mcdx : 3;
701 		u64 state_trig : 1;
702 		u64 state_ovflx : 4;
703 	} s;
704 	struct cvmx_ciu_cib_oclax_rawx_s cn70xx;
705 	struct cvmx_ciu_cib_oclax_rawx_s cn70xxp1;
706 };
707 
708 typedef union cvmx_ciu_cib_oclax_rawx cvmx_ciu_cib_oclax_rawx_t;
709 
710 /**
711  * cvmx_ciu_cib_rst_en#
712  */
713 union cvmx_ciu_cib_rst_enx {
714 	u64 u64;
715 	struct cvmx_ciu_cib_rst_enx_s {
716 		u64 reserved_6_63 : 58;
717 		u64 int_perstx : 3;
718 		u64 int_linkx : 3;
719 	} s;
720 	struct cvmx_ciu_cib_rst_enx_s cn70xx;
721 	struct cvmx_ciu_cib_rst_enx_s cn70xxp1;
722 };
723 
724 typedef union cvmx_ciu_cib_rst_enx cvmx_ciu_cib_rst_enx_t;
725 
726 /**
727  * cvmx_ciu_cib_rst_raw#
728  */
729 union cvmx_ciu_cib_rst_rawx {
730 	u64 u64;
731 	struct cvmx_ciu_cib_rst_rawx_s {
732 		u64 reserved_6_63 : 58;
733 		u64 int_perstx : 3;
734 		u64 int_linkx : 3;
735 	} s;
736 	struct cvmx_ciu_cib_rst_rawx_s cn70xx;
737 	struct cvmx_ciu_cib_rst_rawx_s cn70xxp1;
738 };
739 
740 typedef union cvmx_ciu_cib_rst_rawx cvmx_ciu_cib_rst_rawx_t;
741 
742 /**
743  * cvmx_ciu_cib_sata_en#
744  */
745 union cvmx_ciu_cib_sata_enx {
746 	u64 u64;
747 	struct cvmx_ciu_cib_sata_enx_s {
748 		u64 reserved_4_63 : 60;
749 		u64 uahc_pme_req_ip : 1;
750 		u64 uahc_intrq_ip : 1;
751 		u64 intstat_xm_bad_dma : 1;
752 		u64 intstat_xs_ncb_oob : 1;
753 	} s;
754 	struct cvmx_ciu_cib_sata_enx_s cn70xx;
755 	struct cvmx_ciu_cib_sata_enx_s cn70xxp1;
756 };
757 
758 typedef union cvmx_ciu_cib_sata_enx cvmx_ciu_cib_sata_enx_t;
759 
760 /**
761  * cvmx_ciu_cib_sata_raw#
762  */
763 union cvmx_ciu_cib_sata_rawx {
764 	u64 u64;
765 	struct cvmx_ciu_cib_sata_rawx_s {
766 		u64 reserved_4_63 : 60;
767 		u64 uahc_pme_req_ip : 1;
768 		u64 uahc_intrq_ip : 1;
769 		u64 intstat_xm_bad_dma : 1;
770 		u64 intstat_xs_ncb_oob : 1;
771 	} s;
772 	struct cvmx_ciu_cib_sata_rawx_s cn70xx;
773 	struct cvmx_ciu_cib_sata_rawx_s cn70xxp1;
774 };
775 
776 typedef union cvmx_ciu_cib_sata_rawx cvmx_ciu_cib_sata_rawx_t;
777 
778 /**
779  * cvmx_ciu_cib_usbdrd#_en#
780  */
781 union cvmx_ciu_cib_usbdrdx_enx {
782 	u64 u64;
783 	struct cvmx_ciu_cib_usbdrdx_enx_s {
784 		u64 reserved_11_63 : 53;
785 		u64 uahc_dev_int : 1;
786 		u64 uahc_imanx_ip : 1;
787 		u64 uahc_usbsts_hse : 1;
788 		u64 intstat_ram2_dbe : 1;
789 		u64 intstat_ram2_sbe : 1;
790 		u64 intstat_ram1_dbe : 1;
791 		u64 intstat_ram1_sbe : 1;
792 		u64 intstat_ram0_dbe : 1;
793 		u64 intstat_ram0_sbe : 1;
794 		u64 intstat_xm_bad_dma : 1;
795 		u64 intstat_xs_ncb_oob : 1;
796 	} s;
797 	struct cvmx_ciu_cib_usbdrdx_enx_s cn70xx;
798 	struct cvmx_ciu_cib_usbdrdx_enx_s cn70xxp1;
799 };
800 
801 typedef union cvmx_ciu_cib_usbdrdx_enx cvmx_ciu_cib_usbdrdx_enx_t;
802 
803 /**
804  * cvmx_ciu_cib_usbdrd#_raw#
805  */
806 union cvmx_ciu_cib_usbdrdx_rawx {
807 	u64 u64;
808 	struct cvmx_ciu_cib_usbdrdx_rawx_s {
809 		u64 reserved_11_63 : 53;
810 		u64 uahc_dev_int : 1;
811 		u64 uahc_imanx_ip : 1;
812 		u64 uahc_usbsts_hse : 1;
813 		u64 intstat_ram2_dbe : 1;
814 		u64 intstat_ram2_sbe : 1;
815 		u64 intstat_ram1_dbe : 1;
816 		u64 intstat_ram1_sbe : 1;
817 		u64 intstat_ram0_dbe : 1;
818 		u64 intstat_ram0_sbe : 1;
819 		u64 intstat_xm_bad_dma : 1;
820 		u64 intstat_xs_ncb_oob : 1;
821 	} s;
822 	struct cvmx_ciu_cib_usbdrdx_rawx_s cn70xx;
823 	struct cvmx_ciu_cib_usbdrdx_rawx_s cn70xxp1;
824 };
825 
826 typedef union cvmx_ciu_cib_usbdrdx_rawx cvmx_ciu_cib_usbdrdx_rawx_t;
827 
828 /**
829  * cvmx_ciu_dint
830  */
831 union cvmx_ciu_dint {
832 	u64 u64;
833 	struct cvmx_ciu_dint_s {
834 		u64 reserved_48_63 : 16;
835 		u64 dint : 48;
836 	} s;
837 	struct cvmx_ciu_dint_cn30xx {
838 		u64 reserved_1_63 : 63;
839 		u64 dint : 1;
840 	} cn30xx;
841 	struct cvmx_ciu_dint_cn31xx {
842 		u64 reserved_2_63 : 62;
843 		u64 dint : 2;
844 	} cn31xx;
845 	struct cvmx_ciu_dint_cn38xx {
846 		u64 reserved_16_63 : 48;
847 		u64 dint : 16;
848 	} cn38xx;
849 	struct cvmx_ciu_dint_cn38xx cn38xxp2;
850 	struct cvmx_ciu_dint_cn31xx cn50xx;
851 	struct cvmx_ciu_dint_cn52xx {
852 		u64 reserved_4_63 : 60;
853 		u64 dint : 4;
854 	} cn52xx;
855 	struct cvmx_ciu_dint_cn52xx cn52xxp1;
856 	struct cvmx_ciu_dint_cn56xx {
857 		u64 reserved_12_63 : 52;
858 		u64 dint : 12;
859 	} cn56xx;
860 	struct cvmx_ciu_dint_cn56xx cn56xxp1;
861 	struct cvmx_ciu_dint_cn38xx cn58xx;
862 	struct cvmx_ciu_dint_cn38xx cn58xxp1;
863 	struct cvmx_ciu_dint_cn52xx cn61xx;
864 	struct cvmx_ciu_dint_cn63xx {
865 		u64 reserved_6_63 : 58;
866 		u64 dint : 6;
867 	} cn63xx;
868 	struct cvmx_ciu_dint_cn63xx cn63xxp1;
869 	struct cvmx_ciu_dint_cn66xx {
870 		u64 reserved_10_63 : 54;
871 		u64 dint : 10;
872 	} cn66xx;
873 	struct cvmx_ciu_dint_cn68xx {
874 		u64 reserved_32_63 : 32;
875 		u64 dint : 32;
876 	} cn68xx;
877 	struct cvmx_ciu_dint_cn68xx cn68xxp1;
878 	struct cvmx_ciu_dint_cn52xx cn70xx;
879 	struct cvmx_ciu_dint_cn52xx cn70xxp1;
880 	struct cvmx_ciu_dint_cn38xx cn73xx;
881 	struct cvmx_ciu_dint_s cn78xx;
882 	struct cvmx_ciu_dint_s cn78xxp1;
883 	struct cvmx_ciu_dint_cn52xx cnf71xx;
884 	struct cvmx_ciu_dint_cn38xx cnf75xx;
885 };
886 
887 typedef union cvmx_ciu_dint cvmx_ciu_dint_t;
888 
889 /**
890  * cvmx_ciu_en2_io#_int
891  *
892  * CIU_EN2_IO0_INT is for PEM0, CIU_EN2_IO1_INT is reserved.
893  *
894  */
895 union cvmx_ciu_en2_iox_int {
896 	u64 u64;
897 	struct cvmx_ciu_en2_iox_int_s {
898 		u64 reserved_20_63 : 44;
899 		u64 bch : 1;
900 		u64 agl_drp : 1;
901 		u64 ocla : 1;
902 		u64 sata : 1;
903 		u64 reserved_15_15 : 1;
904 		u64 endor : 2;
905 		u64 eoi : 1;
906 		u64 reserved_10_11 : 2;
907 		u64 timer : 6;
908 		u64 reserved_0_3 : 4;
909 	} s;
910 	struct cvmx_ciu_en2_iox_int_cn61xx {
911 		u64 reserved_10_63 : 54;
912 		u64 timer : 6;
913 		u64 reserved_0_3 : 4;
914 	} cn61xx;
915 	struct cvmx_ciu_en2_iox_int_cn61xx cn66xx;
916 	struct cvmx_ciu_en2_iox_int_cn70xx {
917 		u64 reserved_20_63 : 44;
918 		u64 bch : 1;
919 		u64 agl_drp : 1;
920 		u64 ocla : 1;
921 		u64 sata : 1;
922 		u64 reserved_10_15 : 6;
923 		u64 timer : 6;
924 		u64 reserved_0_3 : 4;
925 	} cn70xx;
926 	struct cvmx_ciu_en2_iox_int_cn70xx cn70xxp1;
927 	struct cvmx_ciu_en2_iox_int_cnf71xx {
928 		u64 reserved_15_63 : 49;
929 		u64 endor : 2;
930 		u64 eoi : 1;
931 		u64 reserved_10_11 : 2;
932 		u64 timer : 6;
933 		u64 reserved_0_3 : 4;
934 	} cnf71xx;
935 };
936 
937 typedef union cvmx_ciu_en2_iox_int cvmx_ciu_en2_iox_int_t;
938 
939 /**
940  * cvmx_ciu_en2_io#_int_w1c
941  *
942  * CIU_EN2_IO0_INT_W1C is for PEM0, CIU_EN2_IO1_INT_W1C is reserved.
943  *
944  */
945 union cvmx_ciu_en2_iox_int_w1c {
946 	u64 u64;
947 	struct cvmx_ciu_en2_iox_int_w1c_s {
948 		u64 reserved_20_63 : 44;
949 		u64 bch : 1;
950 		u64 agl_drp : 1;
951 		u64 ocla : 1;
952 		u64 sata : 1;
953 		u64 reserved_15_15 : 1;
954 		u64 endor : 2;
955 		u64 eoi : 1;
956 		u64 reserved_10_11 : 2;
957 		u64 timer : 6;
958 		u64 reserved_0_3 : 4;
959 	} s;
960 	struct cvmx_ciu_en2_iox_int_w1c_cn61xx {
961 		u64 reserved_10_63 : 54;
962 		u64 timer : 6;
963 		u64 reserved_0_3 : 4;
964 	} cn61xx;
965 	struct cvmx_ciu_en2_iox_int_w1c_cn61xx cn66xx;
966 	struct cvmx_ciu_en2_iox_int_w1c_cn70xx {
967 		u64 reserved_20_63 : 44;
968 		u64 bch : 1;
969 		u64 agl_drp : 1;
970 		u64 ocla : 1;
971 		u64 sata : 1;
972 		u64 reserved_10_15 : 6;
973 		u64 timer : 6;
974 		u64 reserved_0_3 : 4;
975 	} cn70xx;
976 	struct cvmx_ciu_en2_iox_int_w1c_cn70xx cn70xxp1;
977 	struct cvmx_ciu_en2_iox_int_w1c_cnf71xx {
978 		u64 reserved_15_63 : 49;
979 		u64 endor : 2;
980 		u64 eoi : 1;
981 		u64 reserved_10_11 : 2;
982 		u64 timer : 6;
983 		u64 reserved_0_3 : 4;
984 	} cnf71xx;
985 };
986 
987 typedef union cvmx_ciu_en2_iox_int_w1c cvmx_ciu_en2_iox_int_w1c_t;
988 
989 /**
990  * cvmx_ciu_en2_io#_int_w1s
991  *
992  * CIU_EN2_IO0_INT_W1S is for PEM0, CIU_EN2_IO1_INT_W1S is reserved.
993  *
994  */
995 union cvmx_ciu_en2_iox_int_w1s {
996 	u64 u64;
997 	struct cvmx_ciu_en2_iox_int_w1s_s {
998 		u64 reserved_20_63 : 44;
999 		u64 bch : 1;
1000 		u64 agl_drp : 1;
1001 		u64 ocla : 1;
1002 		u64 sata : 1;
1003 		u64 reserved_15_15 : 1;
1004 		u64 endor : 2;
1005 		u64 eoi : 1;
1006 		u64 reserved_10_11 : 2;
1007 		u64 timer : 6;
1008 		u64 reserved_0_3 : 4;
1009 	} s;
1010 	struct cvmx_ciu_en2_iox_int_w1s_cn61xx {
1011 		u64 reserved_10_63 : 54;
1012 		u64 timer : 6;
1013 		u64 reserved_0_3 : 4;
1014 	} cn61xx;
1015 	struct cvmx_ciu_en2_iox_int_w1s_cn61xx cn66xx;
1016 	struct cvmx_ciu_en2_iox_int_w1s_cn70xx {
1017 		u64 reserved_20_63 : 44;
1018 		u64 bch : 1;
1019 		u64 agl_drp : 1;
1020 		u64 ocla : 1;
1021 		u64 sata : 1;
1022 		u64 reserved_10_15 : 6;
1023 		u64 timer : 6;
1024 		u64 reserved_0_3 : 4;
1025 	} cn70xx;
1026 	struct cvmx_ciu_en2_iox_int_w1s_cn70xx cn70xxp1;
1027 	struct cvmx_ciu_en2_iox_int_w1s_cnf71xx {
1028 		u64 reserved_15_63 : 49;
1029 		u64 endor : 2;
1030 		u64 eoi : 1;
1031 		u64 reserved_10_11 : 2;
1032 		u64 timer : 6;
1033 		u64 reserved_0_3 : 4;
1034 	} cnf71xx;
1035 };
1036 
1037 typedef union cvmx_ciu_en2_iox_int_w1s cvmx_ciu_en2_iox_int_w1s_t;
1038 
1039 /**
1040  * cvmx_ciu_en2_pp#_ip2
1041  *
1042  * Notes:
1043  * These SUM2 CSR's did not exist prior to pass 1.2. CIU_TIM4-9 did not exist prior to pass 1.2.
1044  *
1045  */
1046 union cvmx_ciu_en2_ppx_ip2 {
1047 	u64 u64;
1048 	struct cvmx_ciu_en2_ppx_ip2_s {
1049 		u64 reserved_20_63 : 44;
1050 		u64 bch : 1;
1051 		u64 agl_drp : 1;
1052 		u64 ocla : 1;
1053 		u64 sata : 1;
1054 		u64 reserved_15_15 : 1;
1055 		u64 endor : 2;
1056 		u64 eoi : 1;
1057 		u64 reserved_10_11 : 2;
1058 		u64 timer : 6;
1059 		u64 reserved_0_3 : 4;
1060 	} s;
1061 	struct cvmx_ciu_en2_ppx_ip2_cn61xx {
1062 		u64 reserved_10_63 : 54;
1063 		u64 timer : 6;
1064 		u64 reserved_0_3 : 4;
1065 	} cn61xx;
1066 	struct cvmx_ciu_en2_ppx_ip2_cn61xx cn66xx;
1067 	struct cvmx_ciu_en2_ppx_ip2_cn70xx {
1068 		u64 reserved_20_63 : 44;
1069 		u64 bch : 1;
1070 		u64 agl_drp : 1;
1071 		u64 ocla : 1;
1072 		u64 sata : 1;
1073 		u64 reserved_10_15 : 6;
1074 		u64 timer : 6;
1075 		u64 reserved_0_3 : 4;
1076 	} cn70xx;
1077 	struct cvmx_ciu_en2_ppx_ip2_cn70xx cn70xxp1;
1078 	struct cvmx_ciu_en2_ppx_ip2_cnf71xx {
1079 		u64 reserved_15_63 : 49;
1080 		u64 endor : 2;
1081 		u64 eoi : 1;
1082 		u64 reserved_10_11 : 2;
1083 		u64 timer : 6;
1084 		u64 reserved_0_3 : 4;
1085 	} cnf71xx;
1086 };
1087 
1088 typedef union cvmx_ciu_en2_ppx_ip2 cvmx_ciu_en2_ppx_ip2_t;
1089 
1090 /**
1091  * cvmx_ciu_en2_pp#_ip2_w1c
1092  *
1093  * Write-1-to-clear version of the CIU_EN2_PP(IO)X_IPx(INT) register, read back corresponding
1094  * CIU_EN2_PP(IO)X_IPx(INT) value.
1095  */
1096 union cvmx_ciu_en2_ppx_ip2_w1c {
1097 	u64 u64;
1098 	struct cvmx_ciu_en2_ppx_ip2_w1c_s {
1099 		u64 reserved_20_63 : 44;
1100 		u64 bch : 1;
1101 		u64 agl_drp : 1;
1102 		u64 ocla : 1;
1103 		u64 sata : 1;
1104 		u64 reserved_15_15 : 1;
1105 		u64 endor : 2;
1106 		u64 eoi : 1;
1107 		u64 reserved_10_11 : 2;
1108 		u64 timer : 6;
1109 		u64 reserved_0_3 : 4;
1110 	} s;
1111 	struct cvmx_ciu_en2_ppx_ip2_w1c_cn61xx {
1112 		u64 reserved_10_63 : 54;
1113 		u64 timer : 6;
1114 		u64 reserved_0_3 : 4;
1115 	} cn61xx;
1116 	struct cvmx_ciu_en2_ppx_ip2_w1c_cn61xx cn66xx;
1117 	struct cvmx_ciu_en2_ppx_ip2_w1c_cn70xx {
1118 		u64 reserved_20_63 : 44;
1119 		u64 bch : 1;
1120 		u64 agl_drp : 1;
1121 		u64 ocla : 1;
1122 		u64 sata : 1;
1123 		u64 reserved_10_15 : 6;
1124 		u64 timer : 6;
1125 		u64 reserved_0_3 : 4;
1126 	} cn70xx;
1127 	struct cvmx_ciu_en2_ppx_ip2_w1c_cn70xx cn70xxp1;
1128 	struct cvmx_ciu_en2_ppx_ip2_w1c_cnf71xx {
1129 		u64 reserved_15_63 : 49;
1130 		u64 endor : 2;
1131 		u64 eoi : 1;
1132 		u64 reserved_10_11 : 2;
1133 		u64 timer : 6;
1134 		u64 reserved_0_3 : 4;
1135 	} cnf71xx;
1136 };
1137 
1138 typedef union cvmx_ciu_en2_ppx_ip2_w1c cvmx_ciu_en2_ppx_ip2_w1c_t;
1139 
1140 /**
1141  * cvmx_ciu_en2_pp#_ip2_w1s
1142  *
1143  * Write-1-to-set version of the CIU_EN2_PP(IO)X_IPx(INT) register, read back corresponding
1144  * CIU_EN2_PP(IO)X_IPx(INT) value.
1145  */
1146 union cvmx_ciu_en2_ppx_ip2_w1s {
1147 	u64 u64;
1148 	struct cvmx_ciu_en2_ppx_ip2_w1s_s {
1149 		u64 reserved_20_63 : 44;
1150 		u64 bch : 1;
1151 		u64 agl_drp : 1;
1152 		u64 ocla : 1;
1153 		u64 sata : 1;
1154 		u64 reserved_15_15 : 1;
1155 		u64 endor : 2;
1156 		u64 eoi : 1;
1157 		u64 reserved_10_11 : 2;
1158 		u64 timer : 6;
1159 		u64 reserved_0_3 : 4;
1160 	} s;
1161 	struct cvmx_ciu_en2_ppx_ip2_w1s_cn61xx {
1162 		u64 reserved_10_63 : 54;
1163 		u64 timer : 6;
1164 		u64 reserved_0_3 : 4;
1165 	} cn61xx;
1166 	struct cvmx_ciu_en2_ppx_ip2_w1s_cn61xx cn66xx;
1167 	struct cvmx_ciu_en2_ppx_ip2_w1s_cn70xx {
1168 		u64 reserved_20_63 : 44;
1169 		u64 bch : 1;
1170 		u64 agl_drp : 1;
1171 		u64 ocla : 1;
1172 		u64 sata : 1;
1173 		u64 reserved_10_15 : 6;
1174 		u64 timer : 6;
1175 		u64 reserved_0_3 : 4;
1176 	} cn70xx;
1177 	struct cvmx_ciu_en2_ppx_ip2_w1s_cn70xx cn70xxp1;
1178 	struct cvmx_ciu_en2_ppx_ip2_w1s_cnf71xx {
1179 		u64 reserved_15_63 : 49;
1180 		u64 endor : 2;
1181 		u64 eoi : 1;
1182 		u64 reserved_10_11 : 2;
1183 		u64 timer : 6;
1184 		u64 reserved_0_3 : 4;
1185 	} cnf71xx;
1186 };
1187 
1188 typedef union cvmx_ciu_en2_ppx_ip2_w1s cvmx_ciu_en2_ppx_ip2_w1s_t;
1189 
1190 /**
1191  * cvmx_ciu_en2_pp#_ip3
1192  *
1193  * Notes:
1194  * These SUM2 CSR's did not exist prior to pass 1.2. CIU_TIM4-9 did not exist prior to pass 1.2.
1195  *
1196  */
1197 union cvmx_ciu_en2_ppx_ip3 {
1198 	u64 u64;
1199 	struct cvmx_ciu_en2_ppx_ip3_s {
1200 		u64 reserved_20_63 : 44;
1201 		u64 bch : 1;
1202 		u64 agl_drp : 1;
1203 		u64 ocla : 1;
1204 		u64 sata : 1;
1205 		u64 reserved_15_15 : 1;
1206 		u64 endor : 2;
1207 		u64 eoi : 1;
1208 		u64 reserved_10_11 : 2;
1209 		u64 timer : 6;
1210 		u64 reserved_0_3 : 4;
1211 	} s;
1212 	struct cvmx_ciu_en2_ppx_ip3_cn61xx {
1213 		u64 reserved_10_63 : 54;
1214 		u64 timer : 6;
1215 		u64 reserved_0_3 : 4;
1216 	} cn61xx;
1217 	struct cvmx_ciu_en2_ppx_ip3_cn61xx cn66xx;
1218 	struct cvmx_ciu_en2_ppx_ip3_cn70xx {
1219 		u64 reserved_20_63 : 44;
1220 		u64 bch : 1;
1221 		u64 agl_drp : 1;
1222 		u64 ocla : 1;
1223 		u64 sata : 1;
1224 		u64 reserved_10_15 : 6;
1225 		u64 timer : 6;
1226 		u64 reserved_0_3 : 4;
1227 	} cn70xx;
1228 	struct cvmx_ciu_en2_ppx_ip3_cn70xx cn70xxp1;
1229 	struct cvmx_ciu_en2_ppx_ip3_cnf71xx {
1230 		u64 reserved_15_63 : 49;
1231 		u64 endor : 2;
1232 		u64 eoi : 1;
1233 		u64 reserved_10_11 : 2;
1234 		u64 timer : 6;
1235 		u64 reserved_0_3 : 4;
1236 	} cnf71xx;
1237 };
1238 
1239 typedef union cvmx_ciu_en2_ppx_ip3 cvmx_ciu_en2_ppx_ip3_t;
1240 
1241 /**
1242  * cvmx_ciu_en2_pp#_ip3_w1c
1243  *
1244  * Notes:
1245  * Write-1-to-clear version of the CIU_EN2_PP(IO)X_IPx(INT) register, read back corresponding
1246  * CIU_EN2_PP(IO)X_IPx(INT) value.
1247  */
1248 union cvmx_ciu_en2_ppx_ip3_w1c {
1249 	u64 u64;
1250 	struct cvmx_ciu_en2_ppx_ip3_w1c_s {
1251 		u64 reserved_20_63 : 44;
1252 		u64 bch : 1;
1253 		u64 agl_drp : 1;
1254 		u64 ocla : 1;
1255 		u64 sata : 1;
1256 		u64 reserved_15_15 : 1;
1257 		u64 endor : 2;
1258 		u64 eoi : 1;
1259 		u64 reserved_10_11 : 2;
1260 		u64 timer : 6;
1261 		u64 reserved_0_3 : 4;
1262 	} s;
1263 	struct cvmx_ciu_en2_ppx_ip3_w1c_cn61xx {
1264 		u64 reserved_10_63 : 54;
1265 		u64 timer : 6;
1266 		u64 reserved_0_3 : 4;
1267 	} cn61xx;
1268 	struct cvmx_ciu_en2_ppx_ip3_w1c_cn61xx cn66xx;
1269 	struct cvmx_ciu_en2_ppx_ip3_w1c_cn70xx {
1270 		u64 reserved_20_63 : 44;
1271 		u64 bch : 1;
1272 		u64 agl_drp : 1;
1273 		u64 ocla : 1;
1274 		u64 sata : 1;
1275 		u64 reserved_10_15 : 6;
1276 		u64 timer : 6;
1277 		u64 reserved_0_3 : 4;
1278 	} cn70xx;
1279 	struct cvmx_ciu_en2_ppx_ip3_w1c_cn70xx cn70xxp1;
1280 	struct cvmx_ciu_en2_ppx_ip3_w1c_cnf71xx {
1281 		u64 reserved_15_63 : 49;
1282 		u64 endor : 2;
1283 		u64 eoi : 1;
1284 		u64 reserved_10_11 : 2;
1285 		u64 timer : 6;
1286 		u64 reserved_0_3 : 4;
1287 	} cnf71xx;
1288 };
1289 
1290 typedef union cvmx_ciu_en2_ppx_ip3_w1c cvmx_ciu_en2_ppx_ip3_w1c_t;
1291 
1292 /**
1293  * cvmx_ciu_en2_pp#_ip3_w1s
1294  *
1295  * Notes:
1296  * Write-1-to-set version of the CIU_EN2_PP(IO)X_IPx(INT) register, read back corresponding
1297  * CIU_EN2_PP(IO)X_IPx(INT) value.
1298  */
1299 union cvmx_ciu_en2_ppx_ip3_w1s {
1300 	u64 u64;
1301 	struct cvmx_ciu_en2_ppx_ip3_w1s_s {
1302 		u64 reserved_20_63 : 44;
1303 		u64 bch : 1;
1304 		u64 agl_drp : 1;
1305 		u64 ocla : 1;
1306 		u64 sata : 1;
1307 		u64 reserved_15_15 : 1;
1308 		u64 endor : 2;
1309 		u64 eoi : 1;
1310 		u64 reserved_10_11 : 2;
1311 		u64 timer : 6;
1312 		u64 reserved_0_3 : 4;
1313 	} s;
1314 	struct cvmx_ciu_en2_ppx_ip3_w1s_cn61xx {
1315 		u64 reserved_10_63 : 54;
1316 		u64 timer : 6;
1317 		u64 reserved_0_3 : 4;
1318 	} cn61xx;
1319 	struct cvmx_ciu_en2_ppx_ip3_w1s_cn61xx cn66xx;
1320 	struct cvmx_ciu_en2_ppx_ip3_w1s_cn70xx {
1321 		u64 reserved_20_63 : 44;
1322 		u64 bch : 1;
1323 		u64 agl_drp : 1;
1324 		u64 ocla : 1;
1325 		u64 sata : 1;
1326 		u64 reserved_10_15 : 6;
1327 		u64 timer : 6;
1328 		u64 reserved_0_3 : 4;
1329 	} cn70xx;
1330 	struct cvmx_ciu_en2_ppx_ip3_w1s_cn70xx cn70xxp1;
1331 	struct cvmx_ciu_en2_ppx_ip3_w1s_cnf71xx {
1332 		u64 reserved_15_63 : 49;
1333 		u64 endor : 2;
1334 		u64 eoi : 1;
1335 		u64 reserved_10_11 : 2;
1336 		u64 timer : 6;
1337 		u64 reserved_0_3 : 4;
1338 	} cnf71xx;
1339 };
1340 
1341 typedef union cvmx_ciu_en2_ppx_ip3_w1s cvmx_ciu_en2_ppx_ip3_w1s_t;
1342 
1343 /**
1344  * cvmx_ciu_en2_pp#_ip4
1345  *
1346  * Notes:
1347  * These SUM2 CSR's did not exist prior to pass 1.2. CIU_TIM4-9 did not exist prior to pass 1.2.
1348  *
1349  */
1350 union cvmx_ciu_en2_ppx_ip4 {
1351 	u64 u64;
1352 	struct cvmx_ciu_en2_ppx_ip4_s {
1353 		u64 reserved_20_63 : 44;
1354 		u64 bch : 1;
1355 		u64 agl_drp : 1;
1356 		u64 ocla : 1;
1357 		u64 sata : 1;
1358 		u64 reserved_15_15 : 1;
1359 		u64 endor : 2;
1360 		u64 eoi : 1;
1361 		u64 reserved_10_11 : 2;
1362 		u64 timer : 6;
1363 		u64 reserved_0_3 : 4;
1364 	} s;
1365 	struct cvmx_ciu_en2_ppx_ip4_cn61xx {
1366 		u64 reserved_10_63 : 54;
1367 		u64 timer : 6;
1368 		u64 reserved_0_3 : 4;
1369 	} cn61xx;
1370 	struct cvmx_ciu_en2_ppx_ip4_cn61xx cn66xx;
1371 	struct cvmx_ciu_en2_ppx_ip4_cn70xx {
1372 		u64 reserved_20_63 : 44;
1373 		u64 bch : 1;
1374 		u64 agl_drp : 1;
1375 		u64 ocla : 1;
1376 		u64 sata : 1;
1377 		u64 reserved_10_15 : 6;
1378 		u64 timer : 6;
1379 		u64 reserved_0_3 : 4;
1380 	} cn70xx;
1381 	struct cvmx_ciu_en2_ppx_ip4_cn70xx cn70xxp1;
1382 	struct cvmx_ciu_en2_ppx_ip4_cnf71xx {
1383 		u64 reserved_15_63 : 49;
1384 		u64 endor : 2;
1385 		u64 eoi : 1;
1386 		u64 reserved_10_11 : 2;
1387 		u64 timer : 6;
1388 		u64 reserved_0_3 : 4;
1389 	} cnf71xx;
1390 };
1391 
1392 typedef union cvmx_ciu_en2_ppx_ip4 cvmx_ciu_en2_ppx_ip4_t;
1393 
1394 /**
1395  * cvmx_ciu_en2_pp#_ip4_w1c
1396  *
1397  * Notes:
1398  * Write-1-to-clear version of the CIU_EN2_PP(IO)X_IPx(INT) register, read back corresponding
1399  * CIU_EN2_PP(IO)X_IPx(INT) value.
1400  */
1401 union cvmx_ciu_en2_ppx_ip4_w1c {
1402 	u64 u64;
1403 	struct cvmx_ciu_en2_ppx_ip4_w1c_s {
1404 		u64 reserved_20_63 : 44;
1405 		u64 bch : 1;
1406 		u64 agl_drp : 1;
1407 		u64 ocla : 1;
1408 		u64 sata : 1;
1409 		u64 reserved_15_15 : 1;
1410 		u64 endor : 2;
1411 		u64 eoi : 1;
1412 		u64 reserved_10_11 : 2;
1413 		u64 timer : 6;
1414 		u64 reserved_0_3 : 4;
1415 	} s;
1416 	struct cvmx_ciu_en2_ppx_ip4_w1c_cn61xx {
1417 		u64 reserved_10_63 : 54;
1418 		u64 timer : 6;
1419 		u64 reserved_0_3 : 4;
1420 	} cn61xx;
1421 	struct cvmx_ciu_en2_ppx_ip4_w1c_cn61xx cn66xx;
1422 	struct cvmx_ciu_en2_ppx_ip4_w1c_cn70xx {
1423 		u64 reserved_20_63 : 44;
1424 		u64 bch : 1;
1425 		u64 agl_drp : 1;
1426 		u64 ocla : 1;
1427 		u64 sata : 1;
1428 		u64 reserved_10_15 : 6;
1429 		u64 timer : 6;
1430 		u64 reserved_0_3 : 4;
1431 	} cn70xx;
1432 	struct cvmx_ciu_en2_ppx_ip4_w1c_cn70xx cn70xxp1;
1433 	struct cvmx_ciu_en2_ppx_ip4_w1c_cnf71xx {
1434 		u64 reserved_15_63 : 49;
1435 		u64 endor : 2;
1436 		u64 eoi : 1;
1437 		u64 reserved_10_11 : 2;
1438 		u64 timer : 6;
1439 		u64 reserved_0_3 : 4;
1440 	} cnf71xx;
1441 };
1442 
1443 typedef union cvmx_ciu_en2_ppx_ip4_w1c cvmx_ciu_en2_ppx_ip4_w1c_t;
1444 
1445 /**
1446  * cvmx_ciu_en2_pp#_ip4_w1s
1447  *
1448  * Notes:
1449  * Write-1-to-set version of the CIU_EN2_PP(IO)X_IPx(INT) register, read back corresponding
1450  * CIU_EN2_PP(IO)X_IPx(INT) value.
1451  */
1452 union cvmx_ciu_en2_ppx_ip4_w1s {
1453 	u64 u64;
1454 	struct cvmx_ciu_en2_ppx_ip4_w1s_s {
1455 		u64 reserved_20_63 : 44;
1456 		u64 bch : 1;
1457 		u64 agl_drp : 1;
1458 		u64 ocla : 1;
1459 		u64 sata : 1;
1460 		u64 reserved_15_15 : 1;
1461 		u64 endor : 2;
1462 		u64 eoi : 1;
1463 		u64 reserved_10_11 : 2;
1464 		u64 timer : 6;
1465 		u64 reserved_0_3 : 4;
1466 	} s;
1467 	struct cvmx_ciu_en2_ppx_ip4_w1s_cn61xx {
1468 		u64 reserved_10_63 : 54;
1469 		u64 timer : 6;
1470 		u64 reserved_0_3 : 4;
1471 	} cn61xx;
1472 	struct cvmx_ciu_en2_ppx_ip4_w1s_cn61xx cn66xx;
1473 	struct cvmx_ciu_en2_ppx_ip4_w1s_cn70xx {
1474 		u64 reserved_20_63 : 44;
1475 		u64 bch : 1;
1476 		u64 agl_drp : 1;
1477 		u64 ocla : 1;
1478 		u64 sata : 1;
1479 		u64 reserved_10_15 : 6;
1480 		u64 timer : 6;
1481 		u64 reserved_0_3 : 4;
1482 	} cn70xx;
1483 	struct cvmx_ciu_en2_ppx_ip4_w1s_cn70xx cn70xxp1;
1484 	struct cvmx_ciu_en2_ppx_ip4_w1s_cnf71xx {
1485 		u64 reserved_15_63 : 49;
1486 		u64 endor : 2;
1487 		u64 eoi : 1;
1488 		u64 reserved_10_11 : 2;
1489 		u64 timer : 6;
1490 		u64 reserved_0_3 : 4;
1491 	} cnf71xx;
1492 };
1493 
1494 typedef union cvmx_ciu_en2_ppx_ip4_w1s cvmx_ciu_en2_ppx_ip4_w1s_t;
1495 
1496 /**
1497  * cvmx_ciu_fuse
1498  */
1499 union cvmx_ciu_fuse {
1500 	u64 u64;
1501 	struct cvmx_ciu_fuse_s {
1502 		u64 reserved_48_63 : 16;
1503 		u64 fuse : 48;
1504 	} s;
1505 	struct cvmx_ciu_fuse_cn30xx {
1506 		u64 reserved_1_63 : 63;
1507 		u64 fuse : 1;
1508 	} cn30xx;
1509 	struct cvmx_ciu_fuse_cn31xx {
1510 		u64 reserved_2_63 : 62;
1511 		u64 fuse : 2;
1512 	} cn31xx;
1513 	struct cvmx_ciu_fuse_cn38xx {
1514 		u64 reserved_16_63 : 48;
1515 		u64 fuse : 16;
1516 	} cn38xx;
1517 	struct cvmx_ciu_fuse_cn38xx cn38xxp2;
1518 	struct cvmx_ciu_fuse_cn31xx cn50xx;
1519 	struct cvmx_ciu_fuse_cn52xx {
1520 		u64 reserved_4_63 : 60;
1521 		u64 fuse : 4;
1522 	} cn52xx;
1523 	struct cvmx_ciu_fuse_cn52xx cn52xxp1;
1524 	struct cvmx_ciu_fuse_cn56xx {
1525 		u64 reserved_12_63 : 52;
1526 		u64 fuse : 12;
1527 	} cn56xx;
1528 	struct cvmx_ciu_fuse_cn56xx cn56xxp1;
1529 	struct cvmx_ciu_fuse_cn38xx cn58xx;
1530 	struct cvmx_ciu_fuse_cn38xx cn58xxp1;
1531 	struct cvmx_ciu_fuse_cn52xx cn61xx;
1532 	struct cvmx_ciu_fuse_cn63xx {
1533 		u64 reserved_6_63 : 58;
1534 		u64 fuse : 6;
1535 	} cn63xx;
1536 	struct cvmx_ciu_fuse_cn63xx cn63xxp1;
1537 	struct cvmx_ciu_fuse_cn66xx {
1538 		u64 reserved_10_63 : 54;
1539 		u64 fuse : 10;
1540 	} cn66xx;
1541 	struct cvmx_ciu_fuse_cn68xx {
1542 		u64 reserved_32_63 : 32;
1543 		u64 fuse : 32;
1544 	} cn68xx;
1545 	struct cvmx_ciu_fuse_cn68xx cn68xxp1;
1546 	struct cvmx_ciu_fuse_cn52xx cn70xx;
1547 	struct cvmx_ciu_fuse_cn52xx cn70xxp1;
1548 	struct cvmx_ciu_fuse_cn38xx cn73xx;
1549 	struct cvmx_ciu_fuse_s cn78xx;
1550 	struct cvmx_ciu_fuse_s cn78xxp1;
1551 	struct cvmx_ciu_fuse_cn52xx cnf71xx;
1552 	struct cvmx_ciu_fuse_cn38xx cnf75xx;
1553 };
1554 
1555 typedef union cvmx_ciu_fuse cvmx_ciu_fuse_t;
1556 
1557 /**
1558  * cvmx_ciu_gstop
1559  */
1560 union cvmx_ciu_gstop {
1561 	u64 u64;
1562 	struct cvmx_ciu_gstop_s {
1563 		u64 reserved_1_63 : 63;
1564 		u64 gstop : 1;
1565 	} s;
1566 	struct cvmx_ciu_gstop_s cn30xx;
1567 	struct cvmx_ciu_gstop_s cn31xx;
1568 	struct cvmx_ciu_gstop_s cn38xx;
1569 	struct cvmx_ciu_gstop_s cn38xxp2;
1570 	struct cvmx_ciu_gstop_s cn50xx;
1571 	struct cvmx_ciu_gstop_s cn52xx;
1572 	struct cvmx_ciu_gstop_s cn52xxp1;
1573 	struct cvmx_ciu_gstop_s cn56xx;
1574 	struct cvmx_ciu_gstop_s cn56xxp1;
1575 	struct cvmx_ciu_gstop_s cn58xx;
1576 	struct cvmx_ciu_gstop_s cn58xxp1;
1577 	struct cvmx_ciu_gstop_s cn61xx;
1578 	struct cvmx_ciu_gstop_s cn63xx;
1579 	struct cvmx_ciu_gstop_s cn63xxp1;
1580 	struct cvmx_ciu_gstop_s cn66xx;
1581 	struct cvmx_ciu_gstop_s cn68xx;
1582 	struct cvmx_ciu_gstop_s cn68xxp1;
1583 	struct cvmx_ciu_gstop_s cn70xx;
1584 	struct cvmx_ciu_gstop_s cn70xxp1;
1585 	struct cvmx_ciu_gstop_s cnf71xx;
1586 };
1587 
1588 typedef union cvmx_ciu_gstop cvmx_ciu_gstop_t;
1589 
1590 /**
1591  * cvmx_ciu_int#_en0
1592  *
1593  * CIU_INT0_EN0:  PP0/IP2
1594  * CIU_INT1_EN0:  PP0/IP3
1595  * CIU_INT2_EN0:  PP1/IP2
1596  * CIU_INT3_EN0:  PP1/IP3
1597  * CIU_INT4_EN0:  PP2/IP2
1598  * CIU_INT5_EN0:  PP2/IP3
1599  * CIU_INT6_EN0:  PP3/IP2
1600  * CIU_INT7_EN0:  PP3/IP3
1601  * - .....
1602  * (hole)
1603  * CIU_INT32_EN0: IO 0 (PEM0)
1604  * CIU_INT33_EN0: IO 1 (reserved in o70).
1605  */
1606 union cvmx_ciu_intx_en0 {
1607 	u64 u64;
1608 	struct cvmx_ciu_intx_en0_s {
1609 		u64 bootdma : 1;
1610 		u64 mii : 1;
1611 		u64 ipdppthr : 1;
1612 		u64 powiq : 1;
1613 		u64 twsi2 : 1;
1614 		u64 mpi : 1;
1615 		u64 pcm : 1;
1616 		u64 usb : 1;
1617 		u64 timer : 4;
1618 		u64 key_zero : 1;
1619 		u64 ipd_drp : 1;
1620 		u64 gmx_drp : 2;
1621 		u64 trace : 1;
1622 		u64 rml : 1;
1623 		u64 twsi : 1;
1624 		u64 reserved_44_44 : 1;
1625 		u64 pci_msi : 4;
1626 		u64 pci_int : 4;
1627 		u64 uart : 2;
1628 		u64 mbox : 2;
1629 		u64 gpio : 16;
1630 		u64 workq : 16;
1631 	} s;
1632 	struct cvmx_ciu_intx_en0_cn30xx {
1633 		u64 reserved_59_63 : 5;
1634 		u64 mpi : 1;
1635 		u64 pcm : 1;
1636 		u64 usb : 1;
1637 		u64 timer : 4;
1638 		u64 reserved_51_51 : 1;
1639 		u64 ipd_drp : 1;
1640 		u64 reserved_49_49 : 1;
1641 		u64 gmx_drp : 1;
1642 		u64 reserved_47_47 : 1;
1643 		u64 rml : 1;
1644 		u64 twsi : 1;
1645 		u64 reserved_44_44 : 1;
1646 		u64 pci_msi : 4;
1647 		u64 pci_int : 4;
1648 		u64 uart : 2;
1649 		u64 mbox : 2;
1650 		u64 gpio : 16;
1651 		u64 workq : 16;
1652 	} cn30xx;
1653 	struct cvmx_ciu_intx_en0_cn31xx {
1654 		u64 reserved_59_63 : 5;
1655 		u64 mpi : 1;
1656 		u64 pcm : 1;
1657 		u64 usb : 1;
1658 		u64 timer : 4;
1659 		u64 reserved_51_51 : 1;
1660 		u64 ipd_drp : 1;
1661 		u64 reserved_49_49 : 1;
1662 		u64 gmx_drp : 1;
1663 		u64 trace : 1;
1664 		u64 rml : 1;
1665 		u64 twsi : 1;
1666 		u64 reserved_44_44 : 1;
1667 		u64 pci_msi : 4;
1668 		u64 pci_int : 4;
1669 		u64 uart : 2;
1670 		u64 mbox : 2;
1671 		u64 gpio : 16;
1672 		u64 workq : 16;
1673 	} cn31xx;
1674 	struct cvmx_ciu_intx_en0_cn38xx {
1675 		u64 reserved_56_63 : 8;
1676 		u64 timer : 4;
1677 		u64 key_zero : 1;
1678 		u64 ipd_drp : 1;
1679 		u64 gmx_drp : 2;
1680 		u64 trace : 1;
1681 		u64 rml : 1;
1682 		u64 twsi : 1;
1683 		u64 reserved_44_44 : 1;
1684 		u64 pci_msi : 4;
1685 		u64 pci_int : 4;
1686 		u64 uart : 2;
1687 		u64 mbox : 2;
1688 		u64 gpio : 16;
1689 		u64 workq : 16;
1690 	} cn38xx;
1691 	struct cvmx_ciu_intx_en0_cn38xx cn38xxp2;
1692 	struct cvmx_ciu_intx_en0_cn30xx cn50xx;
1693 	struct cvmx_ciu_intx_en0_cn52xx {
1694 		u64 bootdma : 1;
1695 		u64 mii : 1;
1696 		u64 ipdppthr : 1;
1697 		u64 powiq : 1;
1698 		u64 twsi2 : 1;
1699 		u64 reserved_57_58 : 2;
1700 		u64 usb : 1;
1701 		u64 timer : 4;
1702 		u64 reserved_51_51 : 1;
1703 		u64 ipd_drp : 1;
1704 		u64 reserved_49_49 : 1;
1705 		u64 gmx_drp : 1;
1706 		u64 trace : 1;
1707 		u64 rml : 1;
1708 		u64 twsi : 1;
1709 		u64 reserved_44_44 : 1;
1710 		u64 pci_msi : 4;
1711 		u64 pci_int : 4;
1712 		u64 uart : 2;
1713 		u64 mbox : 2;
1714 		u64 gpio : 16;
1715 		u64 workq : 16;
1716 	} cn52xx;
1717 	struct cvmx_ciu_intx_en0_cn52xx cn52xxp1;
1718 	struct cvmx_ciu_intx_en0_cn56xx {
1719 		u64 bootdma : 1;
1720 		u64 mii : 1;
1721 		u64 ipdppthr : 1;
1722 		u64 powiq : 1;
1723 		u64 twsi2 : 1;
1724 		u64 reserved_57_58 : 2;
1725 		u64 usb : 1;
1726 		u64 timer : 4;
1727 		u64 key_zero : 1;
1728 		u64 ipd_drp : 1;
1729 		u64 gmx_drp : 2;
1730 		u64 trace : 1;
1731 		u64 rml : 1;
1732 		u64 twsi : 1;
1733 		u64 reserved_44_44 : 1;
1734 		u64 pci_msi : 4;
1735 		u64 pci_int : 4;
1736 		u64 uart : 2;
1737 		u64 mbox : 2;
1738 		u64 gpio : 16;
1739 		u64 workq : 16;
1740 	} cn56xx;
1741 	struct cvmx_ciu_intx_en0_cn56xx cn56xxp1;
1742 	struct cvmx_ciu_intx_en0_cn38xx cn58xx;
1743 	struct cvmx_ciu_intx_en0_cn38xx cn58xxp1;
1744 	struct cvmx_ciu_intx_en0_cn61xx {
1745 		u64 bootdma : 1;
1746 		u64 mii : 1;
1747 		u64 ipdppthr : 1;
1748 		u64 powiq : 1;
1749 		u64 twsi2 : 1;
1750 		u64 mpi : 1;
1751 		u64 pcm : 1;
1752 		u64 usb : 1;
1753 		u64 timer : 4;
1754 		u64 reserved_51_51 : 1;
1755 		u64 ipd_drp : 1;
1756 		u64 gmx_drp : 2;
1757 		u64 trace : 1;
1758 		u64 rml : 1;
1759 		u64 twsi : 1;
1760 		u64 reserved_44_44 : 1;
1761 		u64 pci_msi : 4;
1762 		u64 pci_int : 4;
1763 		u64 uart : 2;
1764 		u64 mbox : 2;
1765 		u64 gpio : 16;
1766 		u64 workq : 16;
1767 	} cn61xx;
1768 	struct cvmx_ciu_intx_en0_cn52xx cn63xx;
1769 	struct cvmx_ciu_intx_en0_cn52xx cn63xxp1;
1770 	struct cvmx_ciu_intx_en0_cn66xx {
1771 		u64 bootdma : 1;
1772 		u64 mii : 1;
1773 		u64 ipdppthr : 1;
1774 		u64 powiq : 1;
1775 		u64 twsi2 : 1;
1776 		u64 mpi : 1;
1777 		u64 reserved_57_57 : 1;
1778 		u64 usb : 1;
1779 		u64 timer : 4;
1780 		u64 reserved_51_51 : 1;
1781 		u64 ipd_drp : 1;
1782 		u64 gmx_drp : 2;
1783 		u64 trace : 1;
1784 		u64 rml : 1;
1785 		u64 twsi : 1;
1786 		u64 reserved_44_44 : 1;
1787 		u64 pci_msi : 4;
1788 		u64 pci_int : 4;
1789 		u64 uart : 2;
1790 		u64 mbox : 2;
1791 		u64 gpio : 16;
1792 		u64 workq : 16;
1793 	} cn66xx;
1794 	struct cvmx_ciu_intx_en0_cn70xx {
1795 		u64 bootdma : 1;
1796 		u64 reserved_62_62 : 1;
1797 		u64 ipdppthr : 1;
1798 		u64 powiq : 1;
1799 		u64 twsi2 : 1;
1800 		u64 mpi : 1;
1801 		u64 pcm : 1;
1802 		u64 reserved_56_56 : 1;
1803 		u64 timer : 4;
1804 		u64 reserved_51_51 : 1;
1805 		u64 ipd_drp : 1;
1806 		u64 gmx_drp : 2;
1807 		u64 reserved_46_47 : 2;
1808 		u64 twsi : 1;
1809 		u64 reserved_44_44 : 1;
1810 		u64 pci_msi : 4;
1811 		u64 pci_int : 4;
1812 		u64 uart : 2;
1813 		u64 mbox : 2;
1814 		u64 gpio : 16;
1815 		u64 workq : 16;
1816 	} cn70xx;
1817 	struct cvmx_ciu_intx_en0_cn70xx cn70xxp1;
1818 	struct cvmx_ciu_intx_en0_cnf71xx {
1819 		u64 bootdma : 1;
1820 		u64 reserved_62_62 : 1;
1821 		u64 ipdppthr : 1;
1822 		u64 powiq : 1;
1823 		u64 twsi2 : 1;
1824 		u64 mpi : 1;
1825 		u64 pcm : 1;
1826 		u64 usb : 1;
1827 		u64 timer : 4;
1828 		u64 reserved_51_51 : 1;
1829 		u64 ipd_drp : 1;
1830 		u64 reserved_49_49 : 1;
1831 		u64 gmx_drp : 1;
1832 		u64 trace : 1;
1833 		u64 rml : 1;
1834 		u64 twsi : 1;
1835 		u64 reserved_44_44 : 1;
1836 		u64 pci_msi : 4;
1837 		u64 pci_int : 4;
1838 		u64 uart : 2;
1839 		u64 mbox : 2;
1840 		u64 gpio : 16;
1841 		u64 workq : 16;
1842 	} cnf71xx;
1843 };
1844 
1845 typedef union cvmx_ciu_intx_en0 cvmx_ciu_intx_en0_t;
1846 
1847 /**
1848  * cvmx_ciu_int#_en0_w1c
1849  *
1850  * Write-1-to-clear version of the CIU_INTx_EN0 register, read back corresponding CIU_INTx_EN0
1851  * value.
1852  * CIU_INT33_EN0_W1C is reserved.
1853  */
1854 union cvmx_ciu_intx_en0_w1c {
1855 	u64 u64;
1856 	struct cvmx_ciu_intx_en0_w1c_s {
1857 		u64 bootdma : 1;
1858 		u64 mii : 1;
1859 		u64 ipdppthr : 1;
1860 		u64 powiq : 1;
1861 		u64 twsi2 : 1;
1862 		u64 mpi : 1;
1863 		u64 pcm : 1;
1864 		u64 usb : 1;
1865 		u64 timer : 4;
1866 		u64 key_zero : 1;
1867 		u64 ipd_drp : 1;
1868 		u64 gmx_drp : 2;
1869 		u64 trace : 1;
1870 		u64 rml : 1;
1871 		u64 twsi : 1;
1872 		u64 reserved_44_44 : 1;
1873 		u64 pci_msi : 4;
1874 		u64 pci_int : 4;
1875 		u64 uart : 2;
1876 		u64 mbox : 2;
1877 		u64 gpio : 16;
1878 		u64 workq : 16;
1879 	} s;
1880 	struct cvmx_ciu_intx_en0_w1c_cn52xx {
1881 		u64 bootdma : 1;
1882 		u64 mii : 1;
1883 		u64 ipdppthr : 1;
1884 		u64 powiq : 1;
1885 		u64 twsi2 : 1;
1886 		u64 reserved_57_58 : 2;
1887 		u64 usb : 1;
1888 		u64 timer : 4;
1889 		u64 reserved_51_51 : 1;
1890 		u64 ipd_drp : 1;
1891 		u64 reserved_49_49 : 1;
1892 		u64 gmx_drp : 1;
1893 		u64 trace : 1;
1894 		u64 rml : 1;
1895 		u64 twsi : 1;
1896 		u64 reserved_44_44 : 1;
1897 		u64 pci_msi : 4;
1898 		u64 pci_int : 4;
1899 		u64 uart : 2;
1900 		u64 mbox : 2;
1901 		u64 gpio : 16;
1902 		u64 workq : 16;
1903 	} cn52xx;
1904 	struct cvmx_ciu_intx_en0_w1c_cn56xx {
1905 		u64 bootdma : 1;
1906 		u64 mii : 1;
1907 		u64 ipdppthr : 1;
1908 		u64 powiq : 1;
1909 		u64 twsi2 : 1;
1910 		u64 reserved_57_58 : 2;
1911 		u64 usb : 1;
1912 		u64 timer : 4;
1913 		u64 key_zero : 1;
1914 		u64 ipd_drp : 1;
1915 		u64 gmx_drp : 2;
1916 		u64 trace : 1;
1917 		u64 rml : 1;
1918 		u64 twsi : 1;
1919 		u64 reserved_44_44 : 1;
1920 		u64 pci_msi : 4;
1921 		u64 pci_int : 4;
1922 		u64 uart : 2;
1923 		u64 mbox : 2;
1924 		u64 gpio : 16;
1925 		u64 workq : 16;
1926 	} cn56xx;
1927 	struct cvmx_ciu_intx_en0_w1c_cn58xx {
1928 		u64 reserved_56_63 : 8;
1929 		u64 timer : 4;
1930 		u64 key_zero : 1;
1931 		u64 ipd_drp : 1;
1932 		u64 gmx_drp : 2;
1933 		u64 trace : 1;
1934 		u64 rml : 1;
1935 		u64 twsi : 1;
1936 		u64 reserved_44_44 : 1;
1937 		u64 pci_msi : 4;
1938 		u64 pci_int : 4;
1939 		u64 uart : 2;
1940 		u64 mbox : 2;
1941 		u64 gpio : 16;
1942 		u64 workq : 16;
1943 	} cn58xx;
1944 	struct cvmx_ciu_intx_en0_w1c_cn61xx {
1945 		u64 bootdma : 1;
1946 		u64 mii : 1;
1947 		u64 ipdppthr : 1;
1948 		u64 powiq : 1;
1949 		u64 twsi2 : 1;
1950 		u64 mpi : 1;
1951 		u64 pcm : 1;
1952 		u64 usb : 1;
1953 		u64 timer : 4;
1954 		u64 reserved_51_51 : 1;
1955 		u64 ipd_drp : 1;
1956 		u64 gmx_drp : 2;
1957 		u64 trace : 1;
1958 		u64 rml : 1;
1959 		u64 twsi : 1;
1960 		u64 reserved_44_44 : 1;
1961 		u64 pci_msi : 4;
1962 		u64 pci_int : 4;
1963 		u64 uart : 2;
1964 		u64 mbox : 2;
1965 		u64 gpio : 16;
1966 		u64 workq : 16;
1967 	} cn61xx;
1968 	struct cvmx_ciu_intx_en0_w1c_cn52xx cn63xx;
1969 	struct cvmx_ciu_intx_en0_w1c_cn52xx cn63xxp1;
1970 	struct cvmx_ciu_intx_en0_w1c_cn66xx {
1971 		u64 bootdma : 1;
1972 		u64 mii : 1;
1973 		u64 ipdppthr : 1;
1974 		u64 powiq : 1;
1975 		u64 twsi2 : 1;
1976 		u64 mpi : 1;
1977 		u64 reserved_57_57 : 1;
1978 		u64 usb : 1;
1979 		u64 timer : 4;
1980 		u64 reserved_51_51 : 1;
1981 		u64 ipd_drp : 1;
1982 		u64 gmx_drp : 2;
1983 		u64 trace : 1;
1984 		u64 rml : 1;
1985 		u64 twsi : 1;
1986 		u64 reserved_44_44 : 1;
1987 		u64 pci_msi : 4;
1988 		u64 pci_int : 4;
1989 		u64 uart : 2;
1990 		u64 mbox : 2;
1991 		u64 gpio : 16;
1992 		u64 workq : 16;
1993 	} cn66xx;
1994 	struct cvmx_ciu_intx_en0_w1c_cn70xx {
1995 		u64 bootdma : 1;
1996 		u64 reserved_62_62 : 1;
1997 		u64 ipdppthr : 1;
1998 		u64 powiq : 1;
1999 		u64 twsi2 : 1;
2000 		u64 mpi : 1;
2001 		u64 pcm : 1;
2002 		u64 reserved_56_56 : 1;
2003 		u64 timer : 4;
2004 		u64 reserved_51_51 : 1;
2005 		u64 ipd_drp : 1;
2006 		u64 gmx_drp : 2;
2007 		u64 reserved_46_47 : 2;
2008 		u64 twsi : 1;
2009 		u64 reserved_44_44 : 1;
2010 		u64 pci_msi : 4;
2011 		u64 pci_int : 4;
2012 		u64 uart : 2;
2013 		u64 mbox : 2;
2014 		u64 gpio : 16;
2015 		u64 workq : 16;
2016 	} cn70xx;
2017 	struct cvmx_ciu_intx_en0_w1c_cn70xx cn70xxp1;
2018 	struct cvmx_ciu_intx_en0_w1c_cnf71xx {
2019 		u64 bootdma : 1;
2020 		u64 reserved_62_62 : 1;
2021 		u64 ipdppthr : 1;
2022 		u64 powiq : 1;
2023 		u64 twsi2 : 1;
2024 		u64 mpi : 1;
2025 		u64 pcm : 1;
2026 		u64 usb : 1;
2027 		u64 timer : 4;
2028 		u64 reserved_51_51 : 1;
2029 		u64 ipd_drp : 1;
2030 		u64 reserved_49_49 : 1;
2031 		u64 gmx_drp : 1;
2032 		u64 trace : 1;
2033 		u64 rml : 1;
2034 		u64 twsi : 1;
2035 		u64 reserved_44_44 : 1;
2036 		u64 pci_msi : 4;
2037 		u64 pci_int : 4;
2038 		u64 uart : 2;
2039 		u64 mbox : 2;
2040 		u64 gpio : 16;
2041 		u64 workq : 16;
2042 	} cnf71xx;
2043 };
2044 
2045 typedef union cvmx_ciu_intx_en0_w1c cvmx_ciu_intx_en0_w1c_t;
2046 
2047 /**
2048  * cvmx_ciu_int#_en0_w1s
2049  *
2050  * Write-1-to-set version of the CIU_INTx_EN0 register, read back corresponding CIU_INTx_EN0
2051  * value.
2052  * CIU_INT33_EN0_W1S is reserved.
2053  */
2054 union cvmx_ciu_intx_en0_w1s {
2055 	u64 u64;
2056 	struct cvmx_ciu_intx_en0_w1s_s {
2057 		u64 bootdma : 1;
2058 		u64 mii : 1;
2059 		u64 ipdppthr : 1;
2060 		u64 powiq : 1;
2061 		u64 twsi2 : 1;
2062 		u64 mpi : 1;
2063 		u64 pcm : 1;
2064 		u64 usb : 1;
2065 		u64 timer : 4;
2066 		u64 key_zero : 1;
2067 		u64 ipd_drp : 1;
2068 		u64 gmx_drp : 2;
2069 		u64 trace : 1;
2070 		u64 rml : 1;
2071 		u64 twsi : 1;
2072 		u64 reserved_44_44 : 1;
2073 		u64 pci_msi : 4;
2074 		u64 pci_int : 4;
2075 		u64 uart : 2;
2076 		u64 mbox : 2;
2077 		u64 gpio : 16;
2078 		u64 workq : 16;
2079 	} s;
2080 	struct cvmx_ciu_intx_en0_w1s_cn52xx {
2081 		u64 bootdma : 1;
2082 		u64 mii : 1;
2083 		u64 ipdppthr : 1;
2084 		u64 powiq : 1;
2085 		u64 twsi2 : 1;
2086 		u64 reserved_57_58 : 2;
2087 		u64 usb : 1;
2088 		u64 timer : 4;
2089 		u64 reserved_51_51 : 1;
2090 		u64 ipd_drp : 1;
2091 		u64 reserved_49_49 : 1;
2092 		u64 gmx_drp : 1;
2093 		u64 trace : 1;
2094 		u64 rml : 1;
2095 		u64 twsi : 1;
2096 		u64 reserved_44_44 : 1;
2097 		u64 pci_msi : 4;
2098 		u64 pci_int : 4;
2099 		u64 uart : 2;
2100 		u64 mbox : 2;
2101 		u64 gpio : 16;
2102 		u64 workq : 16;
2103 	} cn52xx;
2104 	struct cvmx_ciu_intx_en0_w1s_cn56xx {
2105 		u64 bootdma : 1;
2106 		u64 mii : 1;
2107 		u64 ipdppthr : 1;
2108 		u64 powiq : 1;
2109 		u64 twsi2 : 1;
2110 		u64 reserved_57_58 : 2;
2111 		u64 usb : 1;
2112 		u64 timer : 4;
2113 		u64 key_zero : 1;
2114 		u64 ipd_drp : 1;
2115 		u64 gmx_drp : 2;
2116 		u64 trace : 1;
2117 		u64 rml : 1;
2118 		u64 twsi : 1;
2119 		u64 reserved_44_44 : 1;
2120 		u64 pci_msi : 4;
2121 		u64 pci_int : 4;
2122 		u64 uart : 2;
2123 		u64 mbox : 2;
2124 		u64 gpio : 16;
2125 		u64 workq : 16;
2126 	} cn56xx;
2127 	struct cvmx_ciu_intx_en0_w1s_cn58xx {
2128 		u64 reserved_56_63 : 8;
2129 		u64 timer : 4;
2130 		u64 key_zero : 1;
2131 		u64 ipd_drp : 1;
2132 		u64 gmx_drp : 2;
2133 		u64 trace : 1;
2134 		u64 rml : 1;
2135 		u64 twsi : 1;
2136 		u64 reserved_44_44 : 1;
2137 		u64 pci_msi : 4;
2138 		u64 pci_int : 4;
2139 		u64 uart : 2;
2140 		u64 mbox : 2;
2141 		u64 gpio : 16;
2142 		u64 workq : 16;
2143 	} cn58xx;
2144 	struct cvmx_ciu_intx_en0_w1s_cn61xx {
2145 		u64 bootdma : 1;
2146 		u64 mii : 1;
2147 		u64 ipdppthr : 1;
2148 		u64 powiq : 1;
2149 		u64 twsi2 : 1;
2150 		u64 mpi : 1;
2151 		u64 pcm : 1;
2152 		u64 usb : 1;
2153 		u64 timer : 4;
2154 		u64 reserved_51_51 : 1;
2155 		u64 ipd_drp : 1;
2156 		u64 gmx_drp : 2;
2157 		u64 trace : 1;
2158 		u64 rml : 1;
2159 		u64 twsi : 1;
2160 		u64 reserved_44_44 : 1;
2161 		u64 pci_msi : 4;
2162 		u64 pci_int : 4;
2163 		u64 uart : 2;
2164 		u64 mbox : 2;
2165 		u64 gpio : 16;
2166 		u64 workq : 16;
2167 	} cn61xx;
2168 	struct cvmx_ciu_intx_en0_w1s_cn52xx cn63xx;
2169 	struct cvmx_ciu_intx_en0_w1s_cn52xx cn63xxp1;
2170 	struct cvmx_ciu_intx_en0_w1s_cn66xx {
2171 		u64 bootdma : 1;
2172 		u64 mii : 1;
2173 		u64 ipdppthr : 1;
2174 		u64 powiq : 1;
2175 		u64 twsi2 : 1;
2176 		u64 mpi : 1;
2177 		u64 reserved_57_57 : 1;
2178 		u64 usb : 1;
2179 		u64 timer : 4;
2180 		u64 reserved_51_51 : 1;
2181 		u64 ipd_drp : 1;
2182 		u64 gmx_drp : 2;
2183 		u64 trace : 1;
2184 		u64 rml : 1;
2185 		u64 twsi : 1;
2186 		u64 reserved_44_44 : 1;
2187 		u64 pci_msi : 4;
2188 		u64 pci_int : 4;
2189 		u64 uart : 2;
2190 		u64 mbox : 2;
2191 		u64 gpio : 16;
2192 		u64 workq : 16;
2193 	} cn66xx;
2194 	struct cvmx_ciu_intx_en0_w1s_cn70xx {
2195 		u64 bootdma : 1;
2196 		u64 reserved_62_62 : 1;
2197 		u64 ipdppthr : 1;
2198 		u64 powiq : 1;
2199 		u64 twsi2 : 1;
2200 		u64 mpi : 1;
2201 		u64 pcm : 1;
2202 		u64 reserved_56_56 : 1;
2203 		u64 timer : 4;
2204 		u64 reserved_51_51 : 1;
2205 		u64 ipd_drp : 1;
2206 		u64 gmx_drp : 2;
2207 		u64 reserved_46_47 : 2;
2208 		u64 twsi : 1;
2209 		u64 reserved_44_44 : 1;
2210 		u64 pci_msi : 4;
2211 		u64 pci_int : 4;
2212 		u64 uart : 2;
2213 		u64 mbox : 2;
2214 		u64 gpio : 16;
2215 		u64 workq : 16;
2216 	} cn70xx;
2217 	struct cvmx_ciu_intx_en0_w1s_cn70xx cn70xxp1;
2218 	struct cvmx_ciu_intx_en0_w1s_cnf71xx {
2219 		u64 bootdma : 1;
2220 		u64 reserved_62_62 : 1;
2221 		u64 ipdppthr : 1;
2222 		u64 powiq : 1;
2223 		u64 twsi2 : 1;
2224 		u64 mpi : 1;
2225 		u64 pcm : 1;
2226 		u64 usb : 1;
2227 		u64 timer : 4;
2228 		u64 reserved_51_51 : 1;
2229 		u64 ipd_drp : 1;
2230 		u64 reserved_49_49 : 1;
2231 		u64 gmx_drp : 1;
2232 		u64 trace : 1;
2233 		u64 rml : 1;
2234 		u64 twsi : 1;
2235 		u64 reserved_44_44 : 1;
2236 		u64 pci_msi : 4;
2237 		u64 pci_int : 4;
2238 		u64 uart : 2;
2239 		u64 mbox : 2;
2240 		u64 gpio : 16;
2241 		u64 workq : 16;
2242 	} cnf71xx;
2243 };
2244 
2245 typedef union cvmx_ciu_intx_en0_w1s cvmx_ciu_intx_en0_w1s_t;
2246 
2247 /**
2248  * cvmx_ciu_int#_en1
2249  *
2250  * Enables for CIU_SUM1_PPX_IPx  or CIU_SUM1_IOX_INT
2251  * CIU_INT0_EN1:  PP0/IP2
2252  * CIU_INT1_EN1:  PP0/IP3
2253  * CIU_INT2_EN1:  PP1/IP2
2254  * CIU_INT3_EN1:  PP1/IP3
2255  * CIU_INT4_EN1:  PP2/IP2
2256  * CIU_INT5_EN1:  PP2/IP3
2257  * CIU_INT6_EN1:  PP3/IP2
2258  * CIU_INT7_EN1:  PP3/IP3
2259  * - .....
2260  * (hole)
2261  * CIU_INT32_EN1: IO0 (PEM0)
2262  * CIU_INT33_EN1: IO1 (Reserved for o70)
2263  *
2264  * PPx/IP2 will be raised when...
2265  *
2266  * n = x*2
2267  * PPx/IP2 = |([CIU_SUM2_PPx_IP2,CIU_SUM1_PPx_IP2, CIU_INTn_SUM0] &
2268  * [CIU_EN2_PPx_IP2,CIU_INTn_EN1, CIU_INTn_EN0])
2269  *
2270  * PPx/IP3 will be raised when...
2271  *
2272  * n = x*2 + 1
2273  * PPx/IP3 =  |([CIU_SUM2_PPx_IP3,CIU_SUM1_PPx_IP3, CIU_INTn_SUM0] &
2274  * [CIU_EN2_PPx_IP3,CIU_INTn_EN1, CIU_INTn_EN0])
2275  *
2276  * PPx/IP4 will be raised when...
2277  * PPx/IP4 = |([CIU_SUM1_PPx_IP4, CIU_INTx_SUM4] & [CIU_INTx_EN4_1, CIU_INTx_EN4_0])
2278  *
2279  * PCI/INT will be raised when...
2280  *
2281  * PCI/INT0 (PEM0)
2282  * PCI/INT0 = |([CIU_SUM2_IO0_INT,CIU_SUM1_IO0_INT, CIU_INT32_SUM0] &
2283  * [CIU_EN2_IO0_INT,CIU_INT32_EN1, CIU_INT32_EN0])
2284  *
2285  * PCI/INT1 is reserved for o70.
2286  * PCI/INT1 = |([CIU_SUM2_IO1_INT,CIU_SUM1_IO1_INT, CIU_INT33_SUM0] &
2287  * [CIU_EN2_IO1_INT,CIU_INT33_EN1, CIU_INT33_EN0])
2288  */
2289 union cvmx_ciu_intx_en1 {
2290 	u64 u64;
2291 	struct cvmx_ciu_intx_en1_s {
2292 		u64 rst : 1;
2293 		u64 reserved_62_62 : 1;
2294 		u64 srio3 : 1;
2295 		u64 srio2 : 1;
2296 		u64 reserved_57_59 : 3;
2297 		u64 dfm : 1;
2298 		u64 reserved_53_55 : 3;
2299 		u64 lmc0 : 1;
2300 		u64 srio1 : 1;
2301 		u64 reserved_50_50 : 1;
2302 		u64 pem1 : 1;
2303 		u64 pem0 : 1;
2304 		u64 ptp : 1;
2305 		u64 agl : 1;
2306 		u64 reserved_41_45 : 5;
2307 		u64 dpi_dma : 1;
2308 		u64 reserved_38_39 : 2;
2309 		u64 agx1 : 1;
2310 		u64 agx0 : 1;
2311 		u64 dpi : 1;
2312 		u64 sli : 1;
2313 		u64 usb : 1;
2314 		u64 dfa : 1;
2315 		u64 key : 1;
2316 		u64 rad : 1;
2317 		u64 tim : 1;
2318 		u64 zip : 1;
2319 		u64 pko : 1;
2320 		u64 pip : 1;
2321 		u64 ipd : 1;
2322 		u64 l2c : 1;
2323 		u64 pow : 1;
2324 		u64 fpa : 1;
2325 		u64 iob : 1;
2326 		u64 mio : 1;
2327 		u64 nand : 1;
2328 		u64 mii1 : 1;
2329 		u64 usb1 : 1;
2330 		u64 uart2 : 1;
2331 		u64 wdog : 16;
2332 	} s;
2333 	struct cvmx_ciu_intx_en1_cn30xx {
2334 		u64 reserved_1_63 : 63;
2335 		u64 wdog : 1;
2336 	} cn30xx;
2337 	struct cvmx_ciu_intx_en1_cn31xx {
2338 		u64 reserved_2_63 : 62;
2339 		u64 wdog : 2;
2340 	} cn31xx;
2341 	struct cvmx_ciu_intx_en1_cn38xx {
2342 		u64 reserved_16_63 : 48;
2343 		u64 wdog : 16;
2344 	} cn38xx;
2345 	struct cvmx_ciu_intx_en1_cn38xx cn38xxp2;
2346 	struct cvmx_ciu_intx_en1_cn31xx cn50xx;
2347 	struct cvmx_ciu_intx_en1_cn52xx {
2348 		u64 reserved_20_63 : 44;
2349 		u64 nand : 1;
2350 		u64 mii1 : 1;
2351 		u64 usb1 : 1;
2352 		u64 uart2 : 1;
2353 		u64 reserved_4_15 : 12;
2354 		u64 wdog : 4;
2355 	} cn52xx;
2356 	struct cvmx_ciu_intx_en1_cn52xxp1 {
2357 		u64 reserved_19_63 : 45;
2358 		u64 mii1 : 1;
2359 		u64 usb1 : 1;
2360 		u64 uart2 : 1;
2361 		u64 reserved_4_15 : 12;
2362 		u64 wdog : 4;
2363 	} cn52xxp1;
2364 	struct cvmx_ciu_intx_en1_cn56xx {
2365 		u64 reserved_12_63 : 52;
2366 		u64 wdog : 12;
2367 	} cn56xx;
2368 	struct cvmx_ciu_intx_en1_cn56xx cn56xxp1;
2369 	struct cvmx_ciu_intx_en1_cn38xx cn58xx;
2370 	struct cvmx_ciu_intx_en1_cn38xx cn58xxp1;
2371 	struct cvmx_ciu_intx_en1_cn61xx {
2372 		u64 rst : 1;
2373 		u64 reserved_53_62 : 10;
2374 		u64 lmc0 : 1;
2375 		u64 reserved_50_51 : 2;
2376 		u64 pem1 : 1;
2377 		u64 pem0 : 1;
2378 		u64 ptp : 1;
2379 		u64 agl : 1;
2380 		u64 reserved_41_45 : 5;
2381 		u64 dpi_dma : 1;
2382 		u64 reserved_38_39 : 2;
2383 		u64 agx1 : 1;
2384 		u64 agx0 : 1;
2385 		u64 dpi : 1;
2386 		u64 sli : 1;
2387 		u64 usb : 1;
2388 		u64 dfa : 1;
2389 		u64 key : 1;
2390 		u64 rad : 1;
2391 		u64 tim : 1;
2392 		u64 zip : 1;
2393 		u64 pko : 1;
2394 		u64 pip : 1;
2395 		u64 ipd : 1;
2396 		u64 l2c : 1;
2397 		u64 pow : 1;
2398 		u64 fpa : 1;
2399 		u64 iob : 1;
2400 		u64 mio : 1;
2401 		u64 nand : 1;
2402 		u64 mii1 : 1;
2403 		u64 reserved_4_17 : 14;
2404 		u64 wdog : 4;
2405 	} cn61xx;
2406 	struct cvmx_ciu_intx_en1_cn63xx {
2407 		u64 rst : 1;
2408 		u64 reserved_57_62 : 6;
2409 		u64 dfm : 1;
2410 		u64 reserved_53_55 : 3;
2411 		u64 lmc0 : 1;
2412 		u64 srio1 : 1;
2413 		u64 srio0 : 1;
2414 		u64 pem1 : 1;
2415 		u64 pem0 : 1;
2416 		u64 ptp : 1;
2417 		u64 agl : 1;
2418 		u64 reserved_37_45 : 9;
2419 		u64 agx0 : 1;
2420 		u64 dpi : 1;
2421 		u64 sli : 1;
2422 		u64 usb : 1;
2423 		u64 dfa : 1;
2424 		u64 key : 1;
2425 		u64 rad : 1;
2426 		u64 tim : 1;
2427 		u64 zip : 1;
2428 		u64 pko : 1;
2429 		u64 pip : 1;
2430 		u64 ipd : 1;
2431 		u64 l2c : 1;
2432 		u64 pow : 1;
2433 		u64 fpa : 1;
2434 		u64 iob : 1;
2435 		u64 mio : 1;
2436 		u64 nand : 1;
2437 		u64 mii1 : 1;
2438 		u64 reserved_6_17 : 12;
2439 		u64 wdog : 6;
2440 	} cn63xx;
2441 	struct cvmx_ciu_intx_en1_cn63xx cn63xxp1;
2442 	struct cvmx_ciu_intx_en1_cn66xx {
2443 		u64 rst : 1;
2444 		u64 reserved_62_62 : 1;
2445 		u64 srio3 : 1;
2446 		u64 srio2 : 1;
2447 		u64 reserved_57_59 : 3;
2448 		u64 dfm : 1;
2449 		u64 reserved_53_55 : 3;
2450 		u64 lmc0 : 1;
2451 		u64 reserved_51_51 : 1;
2452 		u64 srio0 : 1;
2453 		u64 pem1 : 1;
2454 		u64 pem0 : 1;
2455 		u64 ptp : 1;
2456 		u64 agl : 1;
2457 		u64 reserved_38_45 : 8;
2458 		u64 agx1 : 1;
2459 		u64 agx0 : 1;
2460 		u64 dpi : 1;
2461 		u64 sli : 1;
2462 		u64 usb : 1;
2463 		u64 dfa : 1;
2464 		u64 key : 1;
2465 		u64 rad : 1;
2466 		u64 tim : 1;
2467 		u64 zip : 1;
2468 		u64 pko : 1;
2469 		u64 pip : 1;
2470 		u64 ipd : 1;
2471 		u64 l2c : 1;
2472 		u64 pow : 1;
2473 		u64 fpa : 1;
2474 		u64 iob : 1;
2475 		u64 mio : 1;
2476 		u64 nand : 1;
2477 		u64 mii1 : 1;
2478 		u64 reserved_10_17 : 8;
2479 		u64 wdog : 10;
2480 	} cn66xx;
2481 	struct cvmx_ciu_intx_en1_cn70xx {
2482 		u64 rst : 1;
2483 		u64 reserved_53_62 : 10;
2484 		u64 lmc0 : 1;
2485 		u64 reserved_51_51 : 1;
2486 		u64 pem2 : 1;
2487 		u64 pem1 : 1;
2488 		u64 pem0 : 1;
2489 		u64 ptp : 1;
2490 		u64 agl : 1;
2491 		u64 reserved_41_45 : 5;
2492 		u64 dpi_dma : 1;
2493 		u64 reserved_39_38 : 2;
2494 		u64 agx1 : 1;
2495 		u64 agx0 : 1;
2496 		u64 dpi : 1;
2497 		u64 sli : 1;
2498 		u64 usb : 1;
2499 		u64 dfa : 1;
2500 		u64 key : 1;
2501 		u64 rad : 1;
2502 		u64 tim : 1;
2503 		u64 reserved_28_28 : 1;
2504 		u64 pko : 1;
2505 		u64 pip : 1;
2506 		u64 ipd : 1;
2507 		u64 l2c : 1;
2508 		u64 pow : 1;
2509 		u64 fpa : 1;
2510 		u64 iob : 1;
2511 		u64 mio : 1;
2512 		u64 nand : 1;
2513 		u64 reserved_18_18 : 1;
2514 		u64 usb1 : 1;
2515 		u64 reserved_4_16 : 13;
2516 		u64 wdog : 4;
2517 	} cn70xx;
2518 	struct cvmx_ciu_intx_en1_cn70xx cn70xxp1;
2519 	struct cvmx_ciu_intx_en1_cnf71xx {
2520 		u64 rst : 1;
2521 		u64 reserved_53_62 : 10;
2522 		u64 lmc0 : 1;
2523 		u64 reserved_50_51 : 2;
2524 		u64 pem1 : 1;
2525 		u64 pem0 : 1;
2526 		u64 ptp : 1;
2527 		u64 reserved_41_46 : 6;
2528 		u64 dpi_dma : 1;
2529 		u64 reserved_37_39 : 3;
2530 		u64 agx0 : 1;
2531 		u64 dpi : 1;
2532 		u64 sli : 1;
2533 		u64 usb : 1;
2534 		u64 reserved_32_32 : 1;
2535 		u64 key : 1;
2536 		u64 rad : 1;
2537 		u64 tim : 1;
2538 		u64 reserved_28_28 : 1;
2539 		u64 pko : 1;
2540 		u64 pip : 1;
2541 		u64 ipd : 1;
2542 		u64 l2c : 1;
2543 		u64 pow : 1;
2544 		u64 fpa : 1;
2545 		u64 iob : 1;
2546 		u64 mio : 1;
2547 		u64 nand : 1;
2548 		u64 reserved_4_18 : 15;
2549 		u64 wdog : 4;
2550 	} cnf71xx;
2551 };
2552 
2553 typedef union cvmx_ciu_intx_en1 cvmx_ciu_intx_en1_t;
2554 
2555 /**
2556  * cvmx_ciu_int#_en1_w1c
2557  *
2558  * Write-1-to-clear version of the CIU_INTX_EN1 register, read back corresponding CIU_INTX_EN1
2559  * value.
2560  * CIU_INT33_EN1_W1C is reserved.
2561  */
2562 union cvmx_ciu_intx_en1_w1c {
2563 	u64 u64;
2564 	struct cvmx_ciu_intx_en1_w1c_s {
2565 		u64 rst : 1;
2566 		u64 reserved_62_62 : 1;
2567 		u64 srio3 : 1;
2568 		u64 srio2 : 1;
2569 		u64 reserved_57_59 : 3;
2570 		u64 dfm : 1;
2571 		u64 reserved_53_55 : 3;
2572 		u64 lmc0 : 1;
2573 		u64 srio1 : 1;
2574 		u64 reserved_50_50 : 1;
2575 		u64 pem1 : 1;
2576 		u64 pem0 : 1;
2577 		u64 ptp : 1;
2578 		u64 agl : 1;
2579 		u64 reserved_41_45 : 5;
2580 		u64 dpi_dma : 1;
2581 		u64 reserved_38_39 : 2;
2582 		u64 agx1 : 1;
2583 		u64 agx0 : 1;
2584 		u64 dpi : 1;
2585 		u64 sli : 1;
2586 		u64 usb : 1;
2587 		u64 dfa : 1;
2588 		u64 key : 1;
2589 		u64 rad : 1;
2590 		u64 tim : 1;
2591 		u64 zip : 1;
2592 		u64 pko : 1;
2593 		u64 pip : 1;
2594 		u64 ipd : 1;
2595 		u64 l2c : 1;
2596 		u64 pow : 1;
2597 		u64 fpa : 1;
2598 		u64 iob : 1;
2599 		u64 mio : 1;
2600 		u64 nand : 1;
2601 		u64 mii1 : 1;
2602 		u64 usb1 : 1;
2603 		u64 uart2 : 1;
2604 		u64 wdog : 16;
2605 	} s;
2606 	struct cvmx_ciu_intx_en1_w1c_cn52xx {
2607 		u64 reserved_20_63 : 44;
2608 		u64 nand : 1;
2609 		u64 mii1 : 1;
2610 		u64 usb1 : 1;
2611 		u64 uart2 : 1;
2612 		u64 reserved_4_15 : 12;
2613 		u64 wdog : 4;
2614 	} cn52xx;
2615 	struct cvmx_ciu_intx_en1_w1c_cn56xx {
2616 		u64 reserved_12_63 : 52;
2617 		u64 wdog : 12;
2618 	} cn56xx;
2619 	struct cvmx_ciu_intx_en1_w1c_cn58xx {
2620 		u64 reserved_16_63 : 48;
2621 		u64 wdog : 16;
2622 	} cn58xx;
2623 	struct cvmx_ciu_intx_en1_w1c_cn61xx {
2624 		u64 rst : 1;
2625 		u64 reserved_53_62 : 10;
2626 		u64 lmc0 : 1;
2627 		u64 reserved_50_51 : 2;
2628 		u64 pem1 : 1;
2629 		u64 pem0 : 1;
2630 		u64 ptp : 1;
2631 		u64 agl : 1;
2632 		u64 reserved_41_45 : 5;
2633 		u64 dpi_dma : 1;
2634 		u64 reserved_38_39 : 2;
2635 		u64 agx1 : 1;
2636 		u64 agx0 : 1;
2637 		u64 dpi : 1;
2638 		u64 sli : 1;
2639 		u64 usb : 1;
2640 		u64 dfa : 1;
2641 		u64 key : 1;
2642 		u64 rad : 1;
2643 		u64 tim : 1;
2644 		u64 zip : 1;
2645 		u64 pko : 1;
2646 		u64 pip : 1;
2647 		u64 ipd : 1;
2648 		u64 l2c : 1;
2649 		u64 pow : 1;
2650 		u64 fpa : 1;
2651 		u64 iob : 1;
2652 		u64 mio : 1;
2653 		u64 nand : 1;
2654 		u64 mii1 : 1;
2655 		u64 reserved_4_17 : 14;
2656 		u64 wdog : 4;
2657 	} cn61xx;
2658 	struct cvmx_ciu_intx_en1_w1c_cn63xx {
2659 		u64 rst : 1;
2660 		u64 reserved_57_62 : 6;
2661 		u64 dfm : 1;
2662 		u64 reserved_53_55 : 3;
2663 		u64 lmc0 : 1;
2664 		u64 srio1 : 1;
2665 		u64 srio0 : 1;
2666 		u64 pem1 : 1;
2667 		u64 pem0 : 1;
2668 		u64 ptp : 1;
2669 		u64 agl : 1;
2670 		u64 reserved_37_45 : 9;
2671 		u64 agx0 : 1;
2672 		u64 dpi : 1;
2673 		u64 sli : 1;
2674 		u64 usb : 1;
2675 		u64 dfa : 1;
2676 		u64 key : 1;
2677 		u64 rad : 1;
2678 		u64 tim : 1;
2679 		u64 zip : 1;
2680 		u64 pko : 1;
2681 		u64 pip : 1;
2682 		u64 ipd : 1;
2683 		u64 l2c : 1;
2684 		u64 pow : 1;
2685 		u64 fpa : 1;
2686 		u64 iob : 1;
2687 		u64 mio : 1;
2688 		u64 nand : 1;
2689 		u64 mii1 : 1;
2690 		u64 reserved_6_17 : 12;
2691 		u64 wdog : 6;
2692 	} cn63xx;
2693 	struct cvmx_ciu_intx_en1_w1c_cn63xx cn63xxp1;
2694 	struct cvmx_ciu_intx_en1_w1c_cn66xx {
2695 		u64 rst : 1;
2696 		u64 reserved_62_62 : 1;
2697 		u64 srio3 : 1;
2698 		u64 srio2 : 1;
2699 		u64 reserved_57_59 : 3;
2700 		u64 dfm : 1;
2701 		u64 reserved_53_55 : 3;
2702 		u64 lmc0 : 1;
2703 		u64 reserved_51_51 : 1;
2704 		u64 srio0 : 1;
2705 		u64 pem1 : 1;
2706 		u64 pem0 : 1;
2707 		u64 ptp : 1;
2708 		u64 agl : 1;
2709 		u64 reserved_38_45 : 8;
2710 		u64 agx1 : 1;
2711 		u64 agx0 : 1;
2712 		u64 dpi : 1;
2713 		u64 sli : 1;
2714 		u64 usb : 1;
2715 		u64 dfa : 1;
2716 		u64 key : 1;
2717 		u64 rad : 1;
2718 		u64 tim : 1;
2719 		u64 zip : 1;
2720 		u64 pko : 1;
2721 		u64 pip : 1;
2722 		u64 ipd : 1;
2723 		u64 l2c : 1;
2724 		u64 pow : 1;
2725 		u64 fpa : 1;
2726 		u64 iob : 1;
2727 		u64 mio : 1;
2728 		u64 nand : 1;
2729 		u64 mii1 : 1;
2730 		u64 reserved_10_17 : 8;
2731 		u64 wdog : 10;
2732 	} cn66xx;
2733 	struct cvmx_ciu_intx_en1_w1c_cn70xx {
2734 		u64 rst : 1;
2735 		u64 reserved_53_62 : 10;
2736 		u64 lmc0 : 1;
2737 		u64 reserved_51_51 : 1;
2738 		u64 pem2 : 1;
2739 		u64 pem1 : 1;
2740 		u64 pem0 : 1;
2741 		u64 ptp : 1;
2742 		u64 agl : 1;
2743 		u64 reserved_41_45 : 5;
2744 		u64 dpi_dma : 1;
2745 		u64 reserved_38_39 : 2;
2746 		u64 agx1 : 1;
2747 		u64 agx0 : 1;
2748 		u64 dpi : 1;
2749 		u64 sli : 1;
2750 		u64 usb : 1;
2751 		u64 dfa : 1;
2752 		u64 key : 1;
2753 		u64 rad : 1;
2754 		u64 tim : 1;
2755 		u64 reserved_28_28 : 1;
2756 		u64 pko : 1;
2757 		u64 pip : 1;
2758 		u64 ipd : 1;
2759 		u64 l2c : 1;
2760 		u64 pow : 1;
2761 		u64 fpa : 1;
2762 		u64 iob : 1;
2763 		u64 mio : 1;
2764 		u64 nand : 1;
2765 		u64 reserved_18_18 : 1;
2766 		u64 usb1 : 1;
2767 		u64 reserved_4_16 : 13;
2768 		u64 wdog : 4;
2769 	} cn70xx;
2770 	struct cvmx_ciu_intx_en1_w1c_cn70xx cn70xxp1;
2771 	struct cvmx_ciu_intx_en1_w1c_cnf71xx {
2772 		u64 rst : 1;
2773 		u64 reserved_53_62 : 10;
2774 		u64 lmc0 : 1;
2775 		u64 reserved_50_51 : 2;
2776 		u64 pem1 : 1;
2777 		u64 pem0 : 1;
2778 		u64 ptp : 1;
2779 		u64 reserved_41_46 : 6;
2780 		u64 dpi_dma : 1;
2781 		u64 reserved_37_39 : 3;
2782 		u64 agx0 : 1;
2783 		u64 dpi : 1;
2784 		u64 sli : 1;
2785 		u64 usb : 1;
2786 		u64 reserved_32_32 : 1;
2787 		u64 key : 1;
2788 		u64 rad : 1;
2789 		u64 tim : 1;
2790 		u64 reserved_28_28 : 1;
2791 		u64 pko : 1;
2792 		u64 pip : 1;
2793 		u64 ipd : 1;
2794 		u64 l2c : 1;
2795 		u64 pow : 1;
2796 		u64 fpa : 1;
2797 		u64 iob : 1;
2798 		u64 mio : 1;
2799 		u64 nand : 1;
2800 		u64 reserved_4_18 : 15;
2801 		u64 wdog : 4;
2802 	} cnf71xx;
2803 };
2804 
2805 typedef union cvmx_ciu_intx_en1_w1c cvmx_ciu_intx_en1_w1c_t;
2806 
2807 /**
2808  * cvmx_ciu_int#_en1_w1s
2809  *
2810  * Write-1-to-set version of the CIU_INTX_EN1 register, read back corresponding CIU_INTX_EN1
2811  * value.
2812  * CIU_INT33_EN1_W1S is reserved.
2813  */
2814 union cvmx_ciu_intx_en1_w1s {
2815 	u64 u64;
2816 	struct cvmx_ciu_intx_en1_w1s_s {
2817 		u64 rst : 1;
2818 		u64 reserved_62_62 : 1;
2819 		u64 srio3 : 1;
2820 		u64 srio2 : 1;
2821 		u64 reserved_57_59 : 3;
2822 		u64 dfm : 1;
2823 		u64 reserved_53_55 : 3;
2824 		u64 lmc0 : 1;
2825 		u64 srio1 : 1;
2826 		u64 reserved_50_50 : 1;
2827 		u64 pem1 : 1;
2828 		u64 pem0 : 1;
2829 		u64 ptp : 1;
2830 		u64 agl : 1;
2831 		u64 reserved_41_45 : 5;
2832 		u64 dpi_dma : 1;
2833 		u64 reserved_38_39 : 2;
2834 		u64 agx1 : 1;
2835 		u64 agx0 : 1;
2836 		u64 dpi : 1;
2837 		u64 sli : 1;
2838 		u64 usb : 1;
2839 		u64 dfa : 1;
2840 		u64 key : 1;
2841 		u64 rad : 1;
2842 		u64 tim : 1;
2843 		u64 zip : 1;
2844 		u64 pko : 1;
2845 		u64 pip : 1;
2846 		u64 ipd : 1;
2847 		u64 l2c : 1;
2848 		u64 pow : 1;
2849 		u64 fpa : 1;
2850 		u64 iob : 1;
2851 		u64 mio : 1;
2852 		u64 nand : 1;
2853 		u64 mii1 : 1;
2854 		u64 usb1 : 1;
2855 		u64 uart2 : 1;
2856 		u64 wdog : 16;
2857 	} s;
2858 	struct cvmx_ciu_intx_en1_w1s_cn52xx {
2859 		u64 reserved_20_63 : 44;
2860 		u64 nand : 1;
2861 		u64 mii1 : 1;
2862 		u64 usb1 : 1;
2863 		u64 uart2 : 1;
2864 		u64 reserved_4_15 : 12;
2865 		u64 wdog : 4;
2866 	} cn52xx;
2867 	struct cvmx_ciu_intx_en1_w1s_cn56xx {
2868 		u64 reserved_12_63 : 52;
2869 		u64 wdog : 12;
2870 	} cn56xx;
2871 	struct cvmx_ciu_intx_en1_w1s_cn58xx {
2872 		u64 reserved_16_63 : 48;
2873 		u64 wdog : 16;
2874 	} cn58xx;
2875 	struct cvmx_ciu_intx_en1_w1s_cn61xx {
2876 		u64 rst : 1;
2877 		u64 reserved_53_62 : 10;
2878 		u64 lmc0 : 1;
2879 		u64 reserved_50_51 : 2;
2880 		u64 pem1 : 1;
2881 		u64 pem0 : 1;
2882 		u64 ptp : 1;
2883 		u64 agl : 1;
2884 		u64 reserved_41_45 : 5;
2885 		u64 dpi_dma : 1;
2886 		u64 reserved_38_39 : 2;
2887 		u64 agx1 : 1;
2888 		u64 agx0 : 1;
2889 		u64 dpi : 1;
2890 		u64 sli : 1;
2891 		u64 usb : 1;
2892 		u64 dfa : 1;
2893 		u64 key : 1;
2894 		u64 rad : 1;
2895 		u64 tim : 1;
2896 		u64 zip : 1;
2897 		u64 pko : 1;
2898 		u64 pip : 1;
2899 		u64 ipd : 1;
2900 		u64 l2c : 1;
2901 		u64 pow : 1;
2902 		u64 fpa : 1;
2903 		u64 iob : 1;
2904 		u64 mio : 1;
2905 		u64 nand : 1;
2906 		u64 mii1 : 1;
2907 		u64 reserved_4_17 : 14;
2908 		u64 wdog : 4;
2909 	} cn61xx;
2910 	struct cvmx_ciu_intx_en1_w1s_cn63xx {
2911 		u64 rst : 1;
2912 		u64 reserved_57_62 : 6;
2913 		u64 dfm : 1;
2914 		u64 reserved_53_55 : 3;
2915 		u64 lmc0 : 1;
2916 		u64 srio1 : 1;
2917 		u64 srio0 : 1;
2918 		u64 pem1 : 1;
2919 		u64 pem0 : 1;
2920 		u64 ptp : 1;
2921 		u64 agl : 1;
2922 		u64 reserved_37_45 : 9;
2923 		u64 agx0 : 1;
2924 		u64 dpi : 1;
2925 		u64 sli : 1;
2926 		u64 usb : 1;
2927 		u64 dfa : 1;
2928 		u64 key : 1;
2929 		u64 rad : 1;
2930 		u64 tim : 1;
2931 		u64 zip : 1;
2932 		u64 pko : 1;
2933 		u64 pip : 1;
2934 		u64 ipd : 1;
2935 		u64 l2c : 1;
2936 		u64 pow : 1;
2937 		u64 fpa : 1;
2938 		u64 iob : 1;
2939 		u64 mio : 1;
2940 		u64 nand : 1;
2941 		u64 mii1 : 1;
2942 		u64 reserved_6_17 : 12;
2943 		u64 wdog : 6;
2944 	} cn63xx;
2945 	struct cvmx_ciu_intx_en1_w1s_cn63xx cn63xxp1;
2946 	struct cvmx_ciu_intx_en1_w1s_cn66xx {
2947 		u64 rst : 1;
2948 		u64 reserved_62_62 : 1;
2949 		u64 srio3 : 1;
2950 		u64 srio2 : 1;
2951 		u64 reserved_57_59 : 3;
2952 		u64 dfm : 1;
2953 		u64 reserved_53_55 : 3;
2954 		u64 lmc0 : 1;
2955 		u64 reserved_51_51 : 1;
2956 		u64 srio0 : 1;
2957 		u64 pem1 : 1;
2958 		u64 pem0 : 1;
2959 		u64 ptp : 1;
2960 		u64 agl : 1;
2961 		u64 reserved_38_45 : 8;
2962 		u64 agx1 : 1;
2963 		u64 agx0 : 1;
2964 		u64 dpi : 1;
2965 		u64 sli : 1;
2966 		u64 usb : 1;
2967 		u64 dfa : 1;
2968 		u64 key : 1;
2969 		u64 rad : 1;
2970 		u64 tim : 1;
2971 		u64 zip : 1;
2972 		u64 pko : 1;
2973 		u64 pip : 1;
2974 		u64 ipd : 1;
2975 		u64 l2c : 1;
2976 		u64 pow : 1;
2977 		u64 fpa : 1;
2978 		u64 iob : 1;
2979 		u64 mio : 1;
2980 		u64 nand : 1;
2981 		u64 mii1 : 1;
2982 		u64 reserved_10_17 : 8;
2983 		u64 wdog : 10;
2984 	} cn66xx;
2985 	struct cvmx_ciu_intx_en1_w1s_cn70xx {
2986 		u64 rst : 1;
2987 		u64 reserved_53_62 : 10;
2988 		u64 lmc0 : 1;
2989 		u64 reserved_51_51 : 1;
2990 		u64 pem2 : 1;
2991 		u64 pem1 : 1;
2992 		u64 pem0 : 1;
2993 		u64 ptp : 1;
2994 		u64 agl : 1;
2995 		u64 reserved_41_45 : 5;
2996 		u64 dpi_dma : 1;
2997 		u64 reserved_38_39 : 2;
2998 		u64 agx1 : 1;
2999 		u64 agx0 : 1;
3000 		u64 dpi : 1;
3001 		u64 sli : 1;
3002 		u64 usb : 1;
3003 		u64 dfa : 1;
3004 		u64 key : 1;
3005 		u64 rad : 1;
3006 		u64 tim : 1;
3007 		u64 reserved_28_28 : 1;
3008 		u64 pko : 1;
3009 		u64 pip : 1;
3010 		u64 ipd : 1;
3011 		u64 l2c : 1;
3012 		u64 pow : 1;
3013 		u64 fpa : 1;
3014 		u64 iob : 1;
3015 		u64 mio : 1;
3016 		u64 nand : 1;
3017 		u64 reserved_18_18 : 1;
3018 		u64 usb1 : 1;
3019 		u64 reserved_4_16 : 13;
3020 		u64 wdog : 4;
3021 	} cn70xx;
3022 	struct cvmx_ciu_intx_en1_w1s_cn70xx cn70xxp1;
3023 	struct cvmx_ciu_intx_en1_w1s_cnf71xx {
3024 		u64 rst : 1;
3025 		u64 reserved_53_62 : 10;
3026 		u64 lmc0 : 1;
3027 		u64 reserved_50_51 : 2;
3028 		u64 pem1 : 1;
3029 		u64 pem0 : 1;
3030 		u64 ptp : 1;
3031 		u64 reserved_41_46 : 6;
3032 		u64 dpi_dma : 1;
3033 		u64 reserved_37_39 : 3;
3034 		u64 agx0 : 1;
3035 		u64 dpi : 1;
3036 		u64 sli : 1;
3037 		u64 usb : 1;
3038 		u64 reserved_32_32 : 1;
3039 		u64 key : 1;
3040 		u64 rad : 1;
3041 		u64 tim : 1;
3042 		u64 reserved_28_28 : 1;
3043 		u64 pko : 1;
3044 		u64 pip : 1;
3045 		u64 ipd : 1;
3046 		u64 l2c : 1;
3047 		u64 pow : 1;
3048 		u64 fpa : 1;
3049 		u64 iob : 1;
3050 		u64 mio : 1;
3051 		u64 nand : 1;
3052 		u64 reserved_4_18 : 15;
3053 		u64 wdog : 4;
3054 	} cnf71xx;
3055 };
3056 
3057 typedef union cvmx_ciu_intx_en1_w1s cvmx_ciu_intx_en1_w1s_t;
3058 
3059 /**
3060  * cvmx_ciu_int#_en4_0
3061  *
3062  * CIU_INT0_EN4_0:   PP0  /IP4
3063  * CIU_INT1_EN4_0:   PP1  /IP4
3064  * - ...
3065  * CIU_INT3_EN4_0:   PP3  /IP4
3066  */
3067 union cvmx_ciu_intx_en4_0 {
3068 	u64 u64;
3069 	struct cvmx_ciu_intx_en4_0_s {
3070 		u64 bootdma : 1;
3071 		u64 mii : 1;
3072 		u64 ipdppthr : 1;
3073 		u64 powiq : 1;
3074 		u64 twsi2 : 1;
3075 		u64 mpi : 1;
3076 		u64 pcm : 1;
3077 		u64 usb : 1;
3078 		u64 timer : 4;
3079 		u64 key_zero : 1;
3080 		u64 ipd_drp : 1;
3081 		u64 gmx_drp : 2;
3082 		u64 trace : 1;
3083 		u64 rml : 1;
3084 		u64 twsi : 1;
3085 		u64 reserved_44_44 : 1;
3086 		u64 pci_msi : 4;
3087 		u64 pci_int : 4;
3088 		u64 uart : 2;
3089 		u64 mbox : 2;
3090 		u64 gpio : 16;
3091 		u64 workq : 16;
3092 	} s;
3093 	struct cvmx_ciu_intx_en4_0_cn50xx {
3094 		u64 reserved_59_63 : 5;
3095 		u64 mpi : 1;
3096 		u64 pcm : 1;
3097 		u64 usb : 1;
3098 		u64 timer : 4;
3099 		u64 reserved_51_51 : 1;
3100 		u64 ipd_drp : 1;
3101 		u64 reserved_49_49 : 1;
3102 		u64 gmx_drp : 1;
3103 		u64 reserved_47_47 : 1;
3104 		u64 rml : 1;
3105 		u64 twsi : 1;
3106 		u64 reserved_44_44 : 1;
3107 		u64 pci_msi : 4;
3108 		u64 pci_int : 4;
3109 		u64 uart : 2;
3110 		u64 mbox : 2;
3111 		u64 gpio : 16;
3112 		u64 workq : 16;
3113 	} cn50xx;
3114 	struct cvmx_ciu_intx_en4_0_cn52xx {
3115 		u64 bootdma : 1;
3116 		u64 mii : 1;
3117 		u64 ipdppthr : 1;
3118 		u64 powiq : 1;
3119 		u64 twsi2 : 1;
3120 		u64 reserved_57_58 : 2;
3121 		u64 usb : 1;
3122 		u64 timer : 4;
3123 		u64 reserved_51_51 : 1;
3124 		u64 ipd_drp : 1;
3125 		u64 reserved_49_49 : 1;
3126 		u64 gmx_drp : 1;
3127 		u64 trace : 1;
3128 		u64 rml : 1;
3129 		u64 twsi : 1;
3130 		u64 reserved_44_44 : 1;
3131 		u64 pci_msi : 4;
3132 		u64 pci_int : 4;
3133 		u64 uart : 2;
3134 		u64 mbox : 2;
3135 		u64 gpio : 16;
3136 		u64 workq : 16;
3137 	} cn52xx;
3138 	struct cvmx_ciu_intx_en4_0_cn52xx cn52xxp1;
3139 	struct cvmx_ciu_intx_en4_0_cn56xx {
3140 		u64 bootdma : 1;
3141 		u64 mii : 1;
3142 		u64 ipdppthr : 1;
3143 		u64 powiq : 1;
3144 		u64 twsi2 : 1;
3145 		u64 reserved_57_58 : 2;
3146 		u64 usb : 1;
3147 		u64 timer : 4;
3148 		u64 key_zero : 1;
3149 		u64 ipd_drp : 1;
3150 		u64 gmx_drp : 2;
3151 		u64 trace : 1;
3152 		u64 rml : 1;
3153 		u64 twsi : 1;
3154 		u64 reserved_44_44 : 1;
3155 		u64 pci_msi : 4;
3156 		u64 pci_int : 4;
3157 		u64 uart : 2;
3158 		u64 mbox : 2;
3159 		u64 gpio : 16;
3160 		u64 workq : 16;
3161 	} cn56xx;
3162 	struct cvmx_ciu_intx_en4_0_cn56xx cn56xxp1;
3163 	struct cvmx_ciu_intx_en4_0_cn58xx {
3164 		u64 reserved_56_63 : 8;
3165 		u64 timer : 4;
3166 		u64 key_zero : 1;
3167 		u64 ipd_drp : 1;
3168 		u64 gmx_drp : 2;
3169 		u64 trace : 1;
3170 		u64 rml : 1;
3171 		u64 twsi : 1;
3172 		u64 reserved_44_44 : 1;
3173 		u64 pci_msi : 4;
3174 		u64 pci_int : 4;
3175 		u64 uart : 2;
3176 		u64 mbox : 2;
3177 		u64 gpio : 16;
3178 		u64 workq : 16;
3179 	} cn58xx;
3180 	struct cvmx_ciu_intx_en4_0_cn58xx cn58xxp1;
3181 	struct cvmx_ciu_intx_en4_0_cn61xx {
3182 		u64 bootdma : 1;
3183 		u64 mii : 1;
3184 		u64 ipdppthr : 1;
3185 		u64 powiq : 1;
3186 		u64 twsi2 : 1;
3187 		u64 mpi : 1;
3188 		u64 pcm : 1;
3189 		u64 usb : 1;
3190 		u64 timer : 4;
3191 		u64 reserved_51_51 : 1;
3192 		u64 ipd_drp : 1;
3193 		u64 gmx_drp : 2;
3194 		u64 trace : 1;
3195 		u64 rml : 1;
3196 		u64 twsi : 1;
3197 		u64 reserved_44_44 : 1;
3198 		u64 pci_msi : 4;
3199 		u64 pci_int : 4;
3200 		u64 uart : 2;
3201 		u64 mbox : 2;
3202 		u64 gpio : 16;
3203 		u64 workq : 16;
3204 	} cn61xx;
3205 	struct cvmx_ciu_intx_en4_0_cn52xx cn63xx;
3206 	struct cvmx_ciu_intx_en4_0_cn52xx cn63xxp1;
3207 	struct cvmx_ciu_intx_en4_0_cn66xx {
3208 		u64 bootdma : 1;
3209 		u64 mii : 1;
3210 		u64 ipdppthr : 1;
3211 		u64 powiq : 1;
3212 		u64 twsi2 : 1;
3213 		u64 mpi : 1;
3214 		u64 reserved_57_57 : 1;
3215 		u64 usb : 1;
3216 		u64 timer : 4;
3217 		u64 reserved_51_51 : 1;
3218 		u64 ipd_drp : 1;
3219 		u64 gmx_drp : 2;
3220 		u64 trace : 1;
3221 		u64 rml : 1;
3222 		u64 twsi : 1;
3223 		u64 reserved_44_44 : 1;
3224 		u64 pci_msi : 4;
3225 		u64 pci_int : 4;
3226 		u64 uart : 2;
3227 		u64 mbox : 2;
3228 		u64 gpio : 16;
3229 		u64 workq : 16;
3230 	} cn66xx;
3231 	struct cvmx_ciu_intx_en4_0_cn70xx {
3232 		u64 bootdma : 1;
3233 		u64 reserved_62_62 : 1;
3234 		u64 ipdppthr : 1;
3235 		u64 powiq : 1;
3236 		u64 twsi2 : 1;
3237 		u64 mpi : 1;
3238 		u64 pcm : 1;
3239 		u64 reserved_56_56 : 1;
3240 		u64 timer : 4;
3241 		u64 reserved_51_51 : 1;
3242 		u64 ipd_drp : 1;
3243 		u64 gmx_drp : 2;
3244 		u64 reserved_46_47 : 2;
3245 		u64 twsi : 1;
3246 		u64 reserved_44_44 : 1;
3247 		u64 pci_msi : 4;
3248 		u64 pci_int : 4;
3249 		u64 uart : 2;
3250 		u64 mbox : 2;
3251 		u64 gpio : 16;
3252 		u64 workq : 16;
3253 	} cn70xx;
3254 	struct cvmx_ciu_intx_en4_0_cn70xx cn70xxp1;
3255 	struct cvmx_ciu_intx_en4_0_cnf71xx {
3256 		u64 bootdma : 1;
3257 		u64 reserved_62_62 : 1;
3258 		u64 ipdppthr : 1;
3259 		u64 powiq : 1;
3260 		u64 twsi2 : 1;
3261 		u64 mpi : 1;
3262 		u64 pcm : 1;
3263 		u64 usb : 1;
3264 		u64 timer : 4;
3265 		u64 reserved_51_51 : 1;
3266 		u64 ipd_drp : 1;
3267 		u64 reserved_49_49 : 1;
3268 		u64 gmx_drp : 1;
3269 		u64 trace : 1;
3270 		u64 rml : 1;
3271 		u64 twsi : 1;
3272 		u64 reserved_44_44 : 1;
3273 		u64 pci_msi : 4;
3274 		u64 pci_int : 4;
3275 		u64 uart : 2;
3276 		u64 mbox : 2;
3277 		u64 gpio : 16;
3278 		u64 workq : 16;
3279 	} cnf71xx;
3280 };
3281 
3282 typedef union cvmx_ciu_intx_en4_0 cvmx_ciu_intx_en4_0_t;
3283 
3284 /**
3285  * cvmx_ciu_int#_en4_0_w1c
3286  *
3287  * Write-1-to-clear version of the CIU_INTx_EN4_0 register, read back corresponding
3288  * CIU_INTx_EN4_0 value.
3289  */
3290 union cvmx_ciu_intx_en4_0_w1c {
3291 	u64 u64;
3292 	struct cvmx_ciu_intx_en4_0_w1c_s {
3293 		u64 bootdma : 1;
3294 		u64 mii : 1;
3295 		u64 ipdppthr : 1;
3296 		u64 powiq : 1;
3297 		u64 twsi2 : 1;
3298 		u64 mpi : 1;
3299 		u64 pcm : 1;
3300 		u64 usb : 1;
3301 		u64 timer : 4;
3302 		u64 key_zero : 1;
3303 		u64 ipd_drp : 1;
3304 		u64 gmx_drp : 2;
3305 		u64 trace : 1;
3306 		u64 rml : 1;
3307 		u64 twsi : 1;
3308 		u64 reserved_44_44 : 1;
3309 		u64 pci_msi : 4;
3310 		u64 pci_int : 4;
3311 		u64 uart : 2;
3312 		u64 mbox : 2;
3313 		u64 gpio : 16;
3314 		u64 workq : 16;
3315 	} s;
3316 	struct cvmx_ciu_intx_en4_0_w1c_cn52xx {
3317 		u64 bootdma : 1;
3318 		u64 mii : 1;
3319 		u64 ipdppthr : 1;
3320 		u64 powiq : 1;
3321 		u64 twsi2 : 1;
3322 		u64 reserved_57_58 : 2;
3323 		u64 usb : 1;
3324 		u64 timer : 4;
3325 		u64 reserved_51_51 : 1;
3326 		u64 ipd_drp : 1;
3327 		u64 reserved_49_49 : 1;
3328 		u64 gmx_drp : 1;
3329 		u64 trace : 1;
3330 		u64 rml : 1;
3331 		u64 twsi : 1;
3332 		u64 reserved_44_44 : 1;
3333 		u64 pci_msi : 4;
3334 		u64 pci_int : 4;
3335 		u64 uart : 2;
3336 		u64 mbox : 2;
3337 		u64 gpio : 16;
3338 		u64 workq : 16;
3339 	} cn52xx;
3340 	struct cvmx_ciu_intx_en4_0_w1c_cn56xx {
3341 		u64 bootdma : 1;
3342 		u64 mii : 1;
3343 		u64 ipdppthr : 1;
3344 		u64 powiq : 1;
3345 		u64 twsi2 : 1;
3346 		u64 reserved_57_58 : 2;
3347 		u64 usb : 1;
3348 		u64 timer : 4;
3349 		u64 key_zero : 1;
3350 		u64 ipd_drp : 1;
3351 		u64 gmx_drp : 2;
3352 		u64 trace : 1;
3353 		u64 rml : 1;
3354 		u64 twsi : 1;
3355 		u64 reserved_44_44 : 1;
3356 		u64 pci_msi : 4;
3357 		u64 pci_int : 4;
3358 		u64 uart : 2;
3359 		u64 mbox : 2;
3360 		u64 gpio : 16;
3361 		u64 workq : 16;
3362 	} cn56xx;
3363 	struct cvmx_ciu_intx_en4_0_w1c_cn58xx {
3364 		u64 reserved_56_63 : 8;
3365 		u64 timer : 4;
3366 		u64 key_zero : 1;
3367 		u64 ipd_drp : 1;
3368 		u64 gmx_drp : 2;
3369 		u64 trace : 1;
3370 		u64 rml : 1;
3371 		u64 twsi : 1;
3372 		u64 reserved_44_44 : 1;
3373 		u64 pci_msi : 4;
3374 		u64 pci_int : 4;
3375 		u64 uart : 2;
3376 		u64 mbox : 2;
3377 		u64 gpio : 16;
3378 		u64 workq : 16;
3379 	} cn58xx;
3380 	struct cvmx_ciu_intx_en4_0_w1c_cn61xx {
3381 		u64 bootdma : 1;
3382 		u64 mii : 1;
3383 		u64 ipdppthr : 1;
3384 		u64 powiq : 1;
3385 		u64 twsi2 : 1;
3386 		u64 mpi : 1;
3387 		u64 pcm : 1;
3388 		u64 usb : 1;
3389 		u64 timer : 4;
3390 		u64 reserved_51_51 : 1;
3391 		u64 ipd_drp : 1;
3392 		u64 gmx_drp : 2;
3393 		u64 trace : 1;
3394 		u64 rml : 1;
3395 		u64 twsi : 1;
3396 		u64 reserved_44_44 : 1;
3397 		u64 pci_msi : 4;
3398 		u64 pci_int : 4;
3399 		u64 uart : 2;
3400 		u64 mbox : 2;
3401 		u64 gpio : 16;
3402 		u64 workq : 16;
3403 	} cn61xx;
3404 	struct cvmx_ciu_intx_en4_0_w1c_cn52xx cn63xx;
3405 	struct cvmx_ciu_intx_en4_0_w1c_cn52xx cn63xxp1;
3406 	struct cvmx_ciu_intx_en4_0_w1c_cn66xx {
3407 		u64 bootdma : 1;
3408 		u64 mii : 1;
3409 		u64 ipdppthr : 1;
3410 		u64 powiq : 1;
3411 		u64 twsi2 : 1;
3412 		u64 mpi : 1;
3413 		u64 reserved_57_57 : 1;
3414 		u64 usb : 1;
3415 		u64 timer : 4;
3416 		u64 reserved_51_51 : 1;
3417 		u64 ipd_drp : 1;
3418 		u64 gmx_drp : 2;
3419 		u64 trace : 1;
3420 		u64 rml : 1;
3421 		u64 twsi : 1;
3422 		u64 reserved_44_44 : 1;
3423 		u64 pci_msi : 4;
3424 		u64 pci_int : 4;
3425 		u64 uart : 2;
3426 		u64 mbox : 2;
3427 		u64 gpio : 16;
3428 		u64 workq : 16;
3429 	} cn66xx;
3430 	struct cvmx_ciu_intx_en4_0_w1c_cn70xx {
3431 		u64 bootdma : 1;
3432 		u64 reserved_62_62 : 1;
3433 		u64 ipdppthr : 1;
3434 		u64 powiq : 1;
3435 		u64 twsi2 : 1;
3436 		u64 mpi : 1;
3437 		u64 pcm : 1;
3438 		u64 reserved_56_56 : 1;
3439 		u64 timer : 4;
3440 		u64 reserved_51_51 : 1;
3441 		u64 ipd_drp : 1;
3442 		u64 gmx_drp : 2;
3443 		u64 reserved_46_47 : 2;
3444 		u64 twsi : 1;
3445 		u64 reserved_44_44 : 1;
3446 		u64 pci_msi : 4;
3447 		u64 pci_int : 4;
3448 		u64 uart : 2;
3449 		u64 mbox : 2;
3450 		u64 gpio : 16;
3451 		u64 workq : 16;
3452 	} cn70xx;
3453 	struct cvmx_ciu_intx_en4_0_w1c_cn70xx cn70xxp1;
3454 	struct cvmx_ciu_intx_en4_0_w1c_cnf71xx {
3455 		u64 bootdma : 1;
3456 		u64 reserved_62_62 : 1;
3457 		u64 ipdppthr : 1;
3458 		u64 powiq : 1;
3459 		u64 twsi2 : 1;
3460 		u64 mpi : 1;
3461 		u64 pcm : 1;
3462 		u64 usb : 1;
3463 		u64 timer : 4;
3464 		u64 reserved_51_51 : 1;
3465 		u64 ipd_drp : 1;
3466 		u64 reserved_49_49 : 1;
3467 		u64 gmx_drp : 1;
3468 		u64 trace : 1;
3469 		u64 rml : 1;
3470 		u64 twsi : 1;
3471 		u64 reserved_44_44 : 1;
3472 		u64 pci_msi : 4;
3473 		u64 pci_int : 4;
3474 		u64 uart : 2;
3475 		u64 mbox : 2;
3476 		u64 gpio : 16;
3477 		u64 workq : 16;
3478 	} cnf71xx;
3479 };
3480 
3481 typedef union cvmx_ciu_intx_en4_0_w1c cvmx_ciu_intx_en4_0_w1c_t;
3482 
3483 /**
3484  * cvmx_ciu_int#_en4_0_w1s
3485  *
3486  * Write-1-to-set version of the CIU_INTX_EN4_0 register, read back corresponding CIU_INTX_EN4_0
3487  * value.
3488  */
3489 union cvmx_ciu_intx_en4_0_w1s {
3490 	u64 u64;
3491 	struct cvmx_ciu_intx_en4_0_w1s_s {
3492 		u64 bootdma : 1;
3493 		u64 mii : 1;
3494 		u64 ipdppthr : 1;
3495 		u64 powiq : 1;
3496 		u64 twsi2 : 1;
3497 		u64 mpi : 1;
3498 		u64 pcm : 1;
3499 		u64 usb : 1;
3500 		u64 timer : 4;
3501 		u64 key_zero : 1;
3502 		u64 ipd_drp : 1;
3503 		u64 gmx_drp : 2;
3504 		u64 trace : 1;
3505 		u64 rml : 1;
3506 		u64 twsi : 1;
3507 		u64 reserved_44_44 : 1;
3508 		u64 pci_msi : 4;
3509 		u64 pci_int : 4;
3510 		u64 uart : 2;
3511 		u64 mbox : 2;
3512 		u64 gpio : 16;
3513 		u64 workq : 16;
3514 	} s;
3515 	struct cvmx_ciu_intx_en4_0_w1s_cn52xx {
3516 		u64 bootdma : 1;
3517 		u64 mii : 1;
3518 		u64 ipdppthr : 1;
3519 		u64 powiq : 1;
3520 		u64 twsi2 : 1;
3521 		u64 reserved_57_58 : 2;
3522 		u64 usb : 1;
3523 		u64 timer : 4;
3524 		u64 reserved_51_51 : 1;
3525 		u64 ipd_drp : 1;
3526 		u64 reserved_49_49 : 1;
3527 		u64 gmx_drp : 1;
3528 		u64 trace : 1;
3529 		u64 rml : 1;
3530 		u64 twsi : 1;
3531 		u64 reserved_44_44 : 1;
3532 		u64 pci_msi : 4;
3533 		u64 pci_int : 4;
3534 		u64 uart : 2;
3535 		u64 mbox : 2;
3536 		u64 gpio : 16;
3537 		u64 workq : 16;
3538 	} cn52xx;
3539 	struct cvmx_ciu_intx_en4_0_w1s_cn56xx {
3540 		u64 bootdma : 1;
3541 		u64 mii : 1;
3542 		u64 ipdppthr : 1;
3543 		u64 powiq : 1;
3544 		u64 twsi2 : 1;
3545 		u64 reserved_57_58 : 2;
3546 		u64 usb : 1;
3547 		u64 timer : 4;
3548 		u64 key_zero : 1;
3549 		u64 ipd_drp : 1;
3550 		u64 gmx_drp : 2;
3551 		u64 trace : 1;
3552 		u64 rml : 1;
3553 		u64 twsi : 1;
3554 		u64 reserved_44_44 : 1;
3555 		u64 pci_msi : 4;
3556 		u64 pci_int : 4;
3557 		u64 uart : 2;
3558 		u64 mbox : 2;
3559 		u64 gpio : 16;
3560 		u64 workq : 16;
3561 	} cn56xx;
3562 	struct cvmx_ciu_intx_en4_0_w1s_cn58xx {
3563 		u64 reserved_56_63 : 8;
3564 		u64 timer : 4;
3565 		u64 key_zero : 1;
3566 		u64 ipd_drp : 1;
3567 		u64 gmx_drp : 2;
3568 		u64 trace : 1;
3569 		u64 rml : 1;
3570 		u64 twsi : 1;
3571 		u64 reserved_44_44 : 1;
3572 		u64 pci_msi : 4;
3573 		u64 pci_int : 4;
3574 		u64 uart : 2;
3575 		u64 mbox : 2;
3576 		u64 gpio : 16;
3577 		u64 workq : 16;
3578 	} cn58xx;
3579 	struct cvmx_ciu_intx_en4_0_w1s_cn61xx {
3580 		u64 bootdma : 1;
3581 		u64 mii : 1;
3582 		u64 ipdppthr : 1;
3583 		u64 powiq : 1;
3584 		u64 twsi2 : 1;
3585 		u64 mpi : 1;
3586 		u64 pcm : 1;
3587 		u64 usb : 1;
3588 		u64 timer : 4;
3589 		u64 reserved_51_51 : 1;
3590 		u64 ipd_drp : 1;
3591 		u64 gmx_drp : 2;
3592 		u64 trace : 1;
3593 		u64 rml : 1;
3594 		u64 twsi : 1;
3595 		u64 reserved_44_44 : 1;
3596 		u64 pci_msi : 4;
3597 		u64 pci_int : 4;
3598 		u64 uart : 2;
3599 		u64 mbox : 2;
3600 		u64 gpio : 16;
3601 		u64 workq : 16;
3602 	} cn61xx;
3603 	struct cvmx_ciu_intx_en4_0_w1s_cn52xx cn63xx;
3604 	struct cvmx_ciu_intx_en4_0_w1s_cn52xx cn63xxp1;
3605 	struct cvmx_ciu_intx_en4_0_w1s_cn66xx {
3606 		u64 bootdma : 1;
3607 		u64 mii : 1;
3608 		u64 ipdppthr : 1;
3609 		u64 powiq : 1;
3610 		u64 twsi2 : 1;
3611 		u64 mpi : 1;
3612 		u64 reserved_57_57 : 1;
3613 		u64 usb : 1;
3614 		u64 timer : 4;
3615 		u64 reserved_51_51 : 1;
3616 		u64 ipd_drp : 1;
3617 		u64 gmx_drp : 2;
3618 		u64 trace : 1;
3619 		u64 rml : 1;
3620 		u64 twsi : 1;
3621 		u64 reserved_44_44 : 1;
3622 		u64 pci_msi : 4;
3623 		u64 pci_int : 4;
3624 		u64 uart : 2;
3625 		u64 mbox : 2;
3626 		u64 gpio : 16;
3627 		u64 workq : 16;
3628 	} cn66xx;
3629 	struct cvmx_ciu_intx_en4_0_w1s_cn70xx {
3630 		u64 bootdma : 1;
3631 		u64 reserved_62_62 : 1;
3632 		u64 ipdppthr : 1;
3633 		u64 powiq : 1;
3634 		u64 twsi2 : 1;
3635 		u64 mpi : 1;
3636 		u64 pcm : 1;
3637 		u64 reserved_56_56 : 1;
3638 		u64 timer : 4;
3639 		u64 reserved_51_51 : 1;
3640 		u64 ipd_drp : 1;
3641 		u64 gmx_drp : 2;
3642 		u64 reserved_46_47 : 2;
3643 		u64 twsi : 1;
3644 		u64 reserved_44_44 : 1;
3645 		u64 pci_msi : 4;
3646 		u64 pci_int : 4;
3647 		u64 uart : 2;
3648 		u64 mbox : 2;
3649 		u64 gpio : 16;
3650 		u64 workq : 16;
3651 	} cn70xx;
3652 	struct cvmx_ciu_intx_en4_0_w1s_cn70xx cn70xxp1;
3653 	struct cvmx_ciu_intx_en4_0_w1s_cnf71xx {
3654 		u64 bootdma : 1;
3655 		u64 reserved_62_62 : 1;
3656 		u64 ipdppthr : 1;
3657 		u64 powiq : 1;
3658 		u64 twsi2 : 1;
3659 		u64 mpi : 1;
3660 		u64 pcm : 1;
3661 		u64 usb : 1;
3662 		u64 timer : 4;
3663 		u64 reserved_51_51 : 1;
3664 		u64 ipd_drp : 1;
3665 		u64 reserved_49_49 : 1;
3666 		u64 gmx_drp : 1;
3667 		u64 trace : 1;
3668 		u64 rml : 1;
3669 		u64 twsi : 1;
3670 		u64 reserved_44_44 : 1;
3671 		u64 pci_msi : 4;
3672 		u64 pci_int : 4;
3673 		u64 uart : 2;
3674 		u64 mbox : 2;
3675 		u64 gpio : 16;
3676 		u64 workq : 16;
3677 	} cnf71xx;
3678 };
3679 
3680 typedef union cvmx_ciu_intx_en4_0_w1s cvmx_ciu_intx_en4_0_w1s_t;
3681 
3682 /**
3683  * cvmx_ciu_int#_en4_1
3684  *
3685  * PPx/IP4 will be raised when...
3686  * PPx/IP4 = |([CIU_SUM1_PPx_IP4, CIU_INTx_SUM4] & [CIU_INTx_EN4_1, CIU_INTx_EN4_0])
3687  */
3688 union cvmx_ciu_intx_en4_1 {
3689 	u64 u64;
3690 	struct cvmx_ciu_intx_en4_1_s {
3691 		u64 rst : 1;
3692 		u64 reserved_62_62 : 1;
3693 		u64 srio3 : 1;
3694 		u64 srio2 : 1;
3695 		u64 reserved_57_59 : 3;
3696 		u64 dfm : 1;
3697 		u64 reserved_53_55 : 3;
3698 		u64 lmc0 : 1;
3699 		u64 srio1 : 1;
3700 		u64 reserved_50_50 : 1;
3701 		u64 pem1 : 1;
3702 		u64 pem0 : 1;
3703 		u64 ptp : 1;
3704 		u64 agl : 1;
3705 		u64 reserved_41_45 : 5;
3706 		u64 dpi_dma : 1;
3707 		u64 reserved_38_39 : 2;
3708 		u64 agx1 : 1;
3709 		u64 agx0 : 1;
3710 		u64 dpi : 1;
3711 		u64 sli : 1;
3712 		u64 usb : 1;
3713 		u64 dfa : 1;
3714 		u64 key : 1;
3715 		u64 rad : 1;
3716 		u64 tim : 1;
3717 		u64 zip : 1;
3718 		u64 pko : 1;
3719 		u64 pip : 1;
3720 		u64 ipd : 1;
3721 		u64 l2c : 1;
3722 		u64 pow : 1;
3723 		u64 fpa : 1;
3724 		u64 iob : 1;
3725 		u64 mio : 1;
3726 		u64 nand : 1;
3727 		u64 mii1 : 1;
3728 		u64 usb1 : 1;
3729 		u64 uart2 : 1;
3730 		u64 wdog : 16;
3731 	} s;
3732 	struct cvmx_ciu_intx_en4_1_cn50xx {
3733 		u64 reserved_2_63 : 62;
3734 		u64 wdog : 2;
3735 	} cn50xx;
3736 	struct cvmx_ciu_intx_en4_1_cn52xx {
3737 		u64 reserved_20_63 : 44;
3738 		u64 nand : 1;
3739 		u64 mii1 : 1;
3740 		u64 usb1 : 1;
3741 		u64 uart2 : 1;
3742 		u64 reserved_4_15 : 12;
3743 		u64 wdog : 4;
3744 	} cn52xx;
3745 	struct cvmx_ciu_intx_en4_1_cn52xxp1 {
3746 		u64 reserved_19_63 : 45;
3747 		u64 mii1 : 1;
3748 		u64 usb1 : 1;
3749 		u64 uart2 : 1;
3750 		u64 reserved_4_15 : 12;
3751 		u64 wdog : 4;
3752 	} cn52xxp1;
3753 	struct cvmx_ciu_intx_en4_1_cn56xx {
3754 		u64 reserved_12_63 : 52;
3755 		u64 wdog : 12;
3756 	} cn56xx;
3757 	struct cvmx_ciu_intx_en4_1_cn56xx cn56xxp1;
3758 	struct cvmx_ciu_intx_en4_1_cn58xx {
3759 		u64 reserved_16_63 : 48;
3760 		u64 wdog : 16;
3761 	} cn58xx;
3762 	struct cvmx_ciu_intx_en4_1_cn58xx cn58xxp1;
3763 	struct cvmx_ciu_intx_en4_1_cn61xx {
3764 		u64 rst : 1;
3765 		u64 reserved_53_62 : 10;
3766 		u64 lmc0 : 1;
3767 		u64 reserved_50_51 : 2;
3768 		u64 pem1 : 1;
3769 		u64 pem0 : 1;
3770 		u64 ptp : 1;
3771 		u64 agl : 1;
3772 		u64 reserved_41_45 : 5;
3773 		u64 dpi_dma : 1;
3774 		u64 reserved_38_39 : 2;
3775 		u64 agx1 : 1;
3776 		u64 agx0 : 1;
3777 		u64 dpi : 1;
3778 		u64 sli : 1;
3779 		u64 usb : 1;
3780 		u64 dfa : 1;
3781 		u64 key : 1;
3782 		u64 rad : 1;
3783 		u64 tim : 1;
3784 		u64 zip : 1;
3785 		u64 pko : 1;
3786 		u64 pip : 1;
3787 		u64 ipd : 1;
3788 		u64 l2c : 1;
3789 		u64 pow : 1;
3790 		u64 fpa : 1;
3791 		u64 iob : 1;
3792 		u64 mio : 1;
3793 		u64 nand : 1;
3794 		u64 mii1 : 1;
3795 		u64 reserved_4_17 : 14;
3796 		u64 wdog : 4;
3797 	} cn61xx;
3798 	struct cvmx_ciu_intx_en4_1_cn63xx {
3799 		u64 rst : 1;
3800 		u64 reserved_57_62 : 6;
3801 		u64 dfm : 1;
3802 		u64 reserved_53_55 : 3;
3803 		u64 lmc0 : 1;
3804 		u64 srio1 : 1;
3805 		u64 srio0 : 1;
3806 		u64 pem1 : 1;
3807 		u64 pem0 : 1;
3808 		u64 ptp : 1;
3809 		u64 agl : 1;
3810 		u64 reserved_37_45 : 9;
3811 		u64 agx0 : 1;
3812 		u64 dpi : 1;
3813 		u64 sli : 1;
3814 		u64 usb : 1;
3815 		u64 dfa : 1;
3816 		u64 key : 1;
3817 		u64 rad : 1;
3818 		u64 tim : 1;
3819 		u64 zip : 1;
3820 		u64 pko : 1;
3821 		u64 pip : 1;
3822 		u64 ipd : 1;
3823 		u64 l2c : 1;
3824 		u64 pow : 1;
3825 		u64 fpa : 1;
3826 		u64 iob : 1;
3827 		u64 mio : 1;
3828 		u64 nand : 1;
3829 		u64 mii1 : 1;
3830 		u64 reserved_6_17 : 12;
3831 		u64 wdog : 6;
3832 	} cn63xx;
3833 	struct cvmx_ciu_intx_en4_1_cn63xx cn63xxp1;
3834 	struct cvmx_ciu_intx_en4_1_cn66xx {
3835 		u64 rst : 1;
3836 		u64 reserved_62_62 : 1;
3837 		u64 srio3 : 1;
3838 		u64 srio2 : 1;
3839 		u64 reserved_57_59 : 3;
3840 		u64 dfm : 1;
3841 		u64 reserved_53_55 : 3;
3842 		u64 lmc0 : 1;
3843 		u64 reserved_51_51 : 1;
3844 		u64 srio0 : 1;
3845 		u64 pem1 : 1;
3846 		u64 pem0 : 1;
3847 		u64 ptp : 1;
3848 		u64 agl : 1;
3849 		u64 reserved_38_45 : 8;
3850 		u64 agx1 : 1;
3851 		u64 agx0 : 1;
3852 		u64 dpi : 1;
3853 		u64 sli : 1;
3854 		u64 usb : 1;
3855 		u64 dfa : 1;
3856 		u64 key : 1;
3857 		u64 rad : 1;
3858 		u64 tim : 1;
3859 		u64 zip : 1;
3860 		u64 pko : 1;
3861 		u64 pip : 1;
3862 		u64 ipd : 1;
3863 		u64 l2c : 1;
3864 		u64 pow : 1;
3865 		u64 fpa : 1;
3866 		u64 iob : 1;
3867 		u64 mio : 1;
3868 		u64 nand : 1;
3869 		u64 mii1 : 1;
3870 		u64 reserved_10_17 : 8;
3871 		u64 wdog : 10;
3872 	} cn66xx;
3873 	struct cvmx_ciu_intx_en4_1_cn70xx {
3874 		u64 rst : 1;
3875 		u64 reserved_53_62 : 10;
3876 		u64 lmc0 : 1;
3877 		u64 reserved_51_51 : 1;
3878 		u64 pem2 : 1;
3879 		u64 pem1 : 1;
3880 		u64 pem0 : 1;
3881 		u64 ptp : 1;
3882 		u64 agl : 1;
3883 		u64 reserved_41_45 : 5;
3884 		u64 dpi_dma : 1;
3885 		u64 reserved_39_38 : 2;
3886 		u64 agx1 : 1;
3887 		u64 agx0 : 1;
3888 		u64 dpi : 1;
3889 		u64 sli : 1;
3890 		u64 usb : 1;
3891 		u64 dfa : 1;
3892 		u64 key : 1;
3893 		u64 rad : 1;
3894 		u64 tim : 1;
3895 		u64 reserved_28_28 : 1;
3896 		u64 pko : 1;
3897 		u64 pip : 1;
3898 		u64 ipd : 1;
3899 		u64 l2c : 1;
3900 		u64 pow : 1;
3901 		u64 fpa : 1;
3902 		u64 iob : 1;
3903 		u64 mio : 1;
3904 		u64 nand : 1;
3905 		u64 reserved_18_18 : 1;
3906 		u64 usb1 : 1;
3907 		u64 reserved_4_16 : 13;
3908 		u64 wdog : 4;
3909 	} cn70xx;
3910 	struct cvmx_ciu_intx_en4_1_cn70xx cn70xxp1;
3911 	struct cvmx_ciu_intx_en4_1_cnf71xx {
3912 		u64 rst : 1;
3913 		u64 reserved_53_62 : 10;
3914 		u64 lmc0 : 1;
3915 		u64 reserved_50_51 : 2;
3916 		u64 pem1 : 1;
3917 		u64 pem0 : 1;
3918 		u64 ptp : 1;
3919 		u64 reserved_41_46 : 6;
3920 		u64 dpi_dma : 1;
3921 		u64 reserved_37_39 : 3;
3922 		u64 agx0 : 1;
3923 		u64 dpi : 1;
3924 		u64 sli : 1;
3925 		u64 usb : 1;
3926 		u64 reserved_32_32 : 1;
3927 		u64 key : 1;
3928 		u64 rad : 1;
3929 		u64 tim : 1;
3930 		u64 reserved_28_28 : 1;
3931 		u64 pko : 1;
3932 		u64 pip : 1;
3933 		u64 ipd : 1;
3934 		u64 l2c : 1;
3935 		u64 pow : 1;
3936 		u64 fpa : 1;
3937 		u64 iob : 1;
3938 		u64 mio : 1;
3939 		u64 nand : 1;
3940 		u64 reserved_4_18 : 15;
3941 		u64 wdog : 4;
3942 	} cnf71xx;
3943 };
3944 
3945 typedef union cvmx_ciu_intx_en4_1 cvmx_ciu_intx_en4_1_t;
3946 
3947 /**
3948  * cvmx_ciu_int#_en4_1_w1c
3949  *
3950  * Write-1-to-clear version of the CIU_INTX_EN4_1 register, read back corresponding
3951  * CIU_INTX_EN4_1 value.
3952  */
3953 union cvmx_ciu_intx_en4_1_w1c {
3954 	u64 u64;
3955 	struct cvmx_ciu_intx_en4_1_w1c_s {
3956 		u64 rst : 1;
3957 		u64 reserved_62_62 : 1;
3958 		u64 srio3 : 1;
3959 		u64 srio2 : 1;
3960 		u64 reserved_57_59 : 3;
3961 		u64 dfm : 1;
3962 		u64 reserved_53_55 : 3;
3963 		u64 lmc0 : 1;
3964 		u64 srio1 : 1;
3965 		u64 reserved_50_50 : 1;
3966 		u64 pem1 : 1;
3967 		u64 pem0 : 1;
3968 		u64 ptp : 1;
3969 		u64 agl : 1;
3970 		u64 reserved_41_45 : 5;
3971 		u64 dpi_dma : 1;
3972 		u64 reserved_38_39 : 2;
3973 		u64 agx1 : 1;
3974 		u64 agx0 : 1;
3975 		u64 dpi : 1;
3976 		u64 sli : 1;
3977 		u64 usb : 1;
3978 		u64 dfa : 1;
3979 		u64 key : 1;
3980 		u64 rad : 1;
3981 		u64 tim : 1;
3982 		u64 zip : 1;
3983 		u64 pko : 1;
3984 		u64 pip : 1;
3985 		u64 ipd : 1;
3986 		u64 l2c : 1;
3987 		u64 pow : 1;
3988 		u64 fpa : 1;
3989 		u64 iob : 1;
3990 		u64 mio : 1;
3991 		u64 nand : 1;
3992 		u64 mii1 : 1;
3993 		u64 usb1 : 1;
3994 		u64 uart2 : 1;
3995 		u64 wdog : 16;
3996 	} s;
3997 	struct cvmx_ciu_intx_en4_1_w1c_cn52xx {
3998 		u64 reserved_20_63 : 44;
3999 		u64 nand : 1;
4000 		u64 mii1 : 1;
4001 		u64 usb1 : 1;
4002 		u64 uart2 : 1;
4003 		u64 reserved_4_15 : 12;
4004 		u64 wdog : 4;
4005 	} cn52xx;
4006 	struct cvmx_ciu_intx_en4_1_w1c_cn56xx {
4007 		u64 reserved_12_63 : 52;
4008 		u64 wdog : 12;
4009 	} cn56xx;
4010 	struct cvmx_ciu_intx_en4_1_w1c_cn58xx {
4011 		u64 reserved_16_63 : 48;
4012 		u64 wdog : 16;
4013 	} cn58xx;
4014 	struct cvmx_ciu_intx_en4_1_w1c_cn61xx {
4015 		u64 rst : 1;
4016 		u64 reserved_53_62 : 10;
4017 		u64 lmc0 : 1;
4018 		u64 reserved_50_51 : 2;
4019 		u64 pem1 : 1;
4020 		u64 pem0 : 1;
4021 		u64 ptp : 1;
4022 		u64 agl : 1;
4023 		u64 reserved_41_45 : 5;
4024 		u64 dpi_dma : 1;
4025 		u64 reserved_38_39 : 2;
4026 		u64 agx1 : 1;
4027 		u64 agx0 : 1;
4028 		u64 dpi : 1;
4029 		u64 sli : 1;
4030 		u64 usb : 1;
4031 		u64 dfa : 1;
4032 		u64 key : 1;
4033 		u64 rad : 1;
4034 		u64 tim : 1;
4035 		u64 zip : 1;
4036 		u64 pko : 1;
4037 		u64 pip : 1;
4038 		u64 ipd : 1;
4039 		u64 l2c : 1;
4040 		u64 pow : 1;
4041 		u64 fpa : 1;
4042 		u64 iob : 1;
4043 		u64 mio : 1;
4044 		u64 nand : 1;
4045 		u64 mii1 : 1;
4046 		u64 reserved_4_17 : 14;
4047 		u64 wdog : 4;
4048 	} cn61xx;
4049 	struct cvmx_ciu_intx_en4_1_w1c_cn63xx {
4050 		u64 rst : 1;
4051 		u64 reserved_57_62 : 6;
4052 		u64 dfm : 1;
4053 		u64 reserved_53_55 : 3;
4054 		u64 lmc0 : 1;
4055 		u64 srio1 : 1;
4056 		u64 srio0 : 1;
4057 		u64 pem1 : 1;
4058 		u64 pem0 : 1;
4059 		u64 ptp : 1;
4060 		u64 agl : 1;
4061 		u64 reserved_37_45 : 9;
4062 		u64 agx0 : 1;
4063 		u64 dpi : 1;
4064 		u64 sli : 1;
4065 		u64 usb : 1;
4066 		u64 dfa : 1;
4067 		u64 key : 1;
4068 		u64 rad : 1;
4069 		u64 tim : 1;
4070 		u64 zip : 1;
4071 		u64 pko : 1;
4072 		u64 pip : 1;
4073 		u64 ipd : 1;
4074 		u64 l2c : 1;
4075 		u64 pow : 1;
4076 		u64 fpa : 1;
4077 		u64 iob : 1;
4078 		u64 mio : 1;
4079 		u64 nand : 1;
4080 		u64 mii1 : 1;
4081 		u64 reserved_6_17 : 12;
4082 		u64 wdog : 6;
4083 	} cn63xx;
4084 	struct cvmx_ciu_intx_en4_1_w1c_cn63xx cn63xxp1;
4085 	struct cvmx_ciu_intx_en4_1_w1c_cn66xx {
4086 		u64 rst : 1;
4087 		u64 reserved_62_62 : 1;
4088 		u64 srio3 : 1;
4089 		u64 srio2 : 1;
4090 		u64 reserved_57_59 : 3;
4091 		u64 dfm : 1;
4092 		u64 reserved_53_55 : 3;
4093 		u64 lmc0 : 1;
4094 		u64 reserved_51_51 : 1;
4095 		u64 srio0 : 1;
4096 		u64 pem1 : 1;
4097 		u64 pem0 : 1;
4098 		u64 ptp : 1;
4099 		u64 agl : 1;
4100 		u64 reserved_38_45 : 8;
4101 		u64 agx1 : 1;
4102 		u64 agx0 : 1;
4103 		u64 dpi : 1;
4104 		u64 sli : 1;
4105 		u64 usb : 1;
4106 		u64 dfa : 1;
4107 		u64 key : 1;
4108 		u64 rad : 1;
4109 		u64 tim : 1;
4110 		u64 zip : 1;
4111 		u64 pko : 1;
4112 		u64 pip : 1;
4113 		u64 ipd : 1;
4114 		u64 l2c : 1;
4115 		u64 pow : 1;
4116 		u64 fpa : 1;
4117 		u64 iob : 1;
4118 		u64 mio : 1;
4119 		u64 nand : 1;
4120 		u64 mii1 : 1;
4121 		u64 reserved_10_17 : 8;
4122 		u64 wdog : 10;
4123 	} cn66xx;
4124 	struct cvmx_ciu_intx_en4_1_w1c_cn70xx {
4125 		u64 rst : 1;
4126 		u64 reserved_53_62 : 10;
4127 		u64 lmc0 : 1;
4128 		u64 reserved_51_51 : 1;
4129 		u64 pem2 : 1;
4130 		u64 pem1 : 1;
4131 		u64 pem0 : 1;
4132 		u64 ptp : 1;
4133 		u64 agl : 1;
4134 		u64 reserved_41_45 : 5;
4135 		u64 dpi_dma : 1;
4136 		u64 reserved_38_39 : 2;
4137 		u64 agx1 : 1;
4138 		u64 agx0 : 1;
4139 		u64 dpi : 1;
4140 		u64 sli : 1;
4141 		u64 usb : 1;
4142 		u64 dfa : 1;
4143 		u64 key : 1;
4144 		u64 rad : 1;
4145 		u64 tim : 1;
4146 		u64 reserved_28_28 : 1;
4147 		u64 pko : 1;
4148 		u64 pip : 1;
4149 		u64 ipd : 1;
4150 		u64 l2c : 1;
4151 		u64 pow : 1;
4152 		u64 fpa : 1;
4153 		u64 iob : 1;
4154 		u64 mio : 1;
4155 		u64 nand : 1;
4156 		u64 reserved_18_18 : 1;
4157 		u64 usb1 : 1;
4158 		u64 reserved_4_16 : 13;
4159 		u64 wdog : 4;
4160 	} cn70xx;
4161 	struct cvmx_ciu_intx_en4_1_w1c_cn70xx cn70xxp1;
4162 	struct cvmx_ciu_intx_en4_1_w1c_cnf71xx {
4163 		u64 rst : 1;
4164 		u64 reserved_53_62 : 10;
4165 		u64 lmc0 : 1;
4166 		u64 reserved_50_51 : 2;
4167 		u64 pem1 : 1;
4168 		u64 pem0 : 1;
4169 		u64 ptp : 1;
4170 		u64 reserved_41_46 : 6;
4171 		u64 dpi_dma : 1;
4172 		u64 reserved_37_39 : 3;
4173 		u64 agx0 : 1;
4174 		u64 dpi : 1;
4175 		u64 sli : 1;
4176 		u64 usb : 1;
4177 		u64 reserved_32_32 : 1;
4178 		u64 key : 1;
4179 		u64 rad : 1;
4180 		u64 tim : 1;
4181 		u64 reserved_28_28 : 1;
4182 		u64 pko : 1;
4183 		u64 pip : 1;
4184 		u64 ipd : 1;
4185 		u64 l2c : 1;
4186 		u64 pow : 1;
4187 		u64 fpa : 1;
4188 		u64 iob : 1;
4189 		u64 mio : 1;
4190 		u64 nand : 1;
4191 		u64 reserved_4_18 : 15;
4192 		u64 wdog : 4;
4193 	} cnf71xx;
4194 };
4195 
4196 typedef union cvmx_ciu_intx_en4_1_w1c cvmx_ciu_intx_en4_1_w1c_t;
4197 
4198 /**
4199  * cvmx_ciu_int#_en4_1_w1s
4200  *
4201  * Write-1-to-set version of the CIU_INTX_EN4_1 register, read back corresponding CIU_INTX_EN4_1
4202  * value.
4203  */
4204 union cvmx_ciu_intx_en4_1_w1s {
4205 	u64 u64;
4206 	struct cvmx_ciu_intx_en4_1_w1s_s {
4207 		u64 rst : 1;
4208 		u64 reserved_62_62 : 1;
4209 		u64 srio3 : 1;
4210 		u64 srio2 : 1;
4211 		u64 reserved_57_59 : 3;
4212 		u64 dfm : 1;
4213 		u64 reserved_53_55 : 3;
4214 		u64 lmc0 : 1;
4215 		u64 srio1 : 1;
4216 		u64 reserved_50_50 : 1;
4217 		u64 pem1 : 1;
4218 		u64 pem0 : 1;
4219 		u64 ptp : 1;
4220 		u64 agl : 1;
4221 		u64 reserved_41_45 : 5;
4222 		u64 dpi_dma : 1;
4223 		u64 reserved_38_39 : 2;
4224 		u64 agx1 : 1;
4225 		u64 agx0 : 1;
4226 		u64 dpi : 1;
4227 		u64 sli : 1;
4228 		u64 usb : 1;
4229 		u64 dfa : 1;
4230 		u64 key : 1;
4231 		u64 rad : 1;
4232 		u64 tim : 1;
4233 		u64 zip : 1;
4234 		u64 pko : 1;
4235 		u64 pip : 1;
4236 		u64 ipd : 1;
4237 		u64 l2c : 1;
4238 		u64 pow : 1;
4239 		u64 fpa : 1;
4240 		u64 iob : 1;
4241 		u64 mio : 1;
4242 		u64 nand : 1;
4243 		u64 mii1 : 1;
4244 		u64 usb1 : 1;
4245 		u64 uart2 : 1;
4246 		u64 wdog : 16;
4247 	} s;
4248 	struct cvmx_ciu_intx_en4_1_w1s_cn52xx {
4249 		u64 reserved_20_63 : 44;
4250 		u64 nand : 1;
4251 		u64 mii1 : 1;
4252 		u64 usb1 : 1;
4253 		u64 uart2 : 1;
4254 		u64 reserved_4_15 : 12;
4255 		u64 wdog : 4;
4256 	} cn52xx;
4257 	struct cvmx_ciu_intx_en4_1_w1s_cn56xx {
4258 		u64 reserved_12_63 : 52;
4259 		u64 wdog : 12;
4260 	} cn56xx;
4261 	struct cvmx_ciu_intx_en4_1_w1s_cn58xx {
4262 		u64 reserved_16_63 : 48;
4263 		u64 wdog : 16;
4264 	} cn58xx;
4265 	struct cvmx_ciu_intx_en4_1_w1s_cn61xx {
4266 		u64 rst : 1;
4267 		u64 reserved_53_62 : 10;
4268 		u64 lmc0 : 1;
4269 		u64 reserved_50_51 : 2;
4270 		u64 pem1 : 1;
4271 		u64 pem0 : 1;
4272 		u64 ptp : 1;
4273 		u64 agl : 1;
4274 		u64 reserved_41_45 : 5;
4275 		u64 dpi_dma : 1;
4276 		u64 reserved_38_39 : 2;
4277 		u64 agx1 : 1;
4278 		u64 agx0 : 1;
4279 		u64 dpi : 1;
4280 		u64 sli : 1;
4281 		u64 usb : 1;
4282 		u64 dfa : 1;
4283 		u64 key : 1;
4284 		u64 rad : 1;
4285 		u64 tim : 1;
4286 		u64 zip : 1;
4287 		u64 pko : 1;
4288 		u64 pip : 1;
4289 		u64 ipd : 1;
4290 		u64 l2c : 1;
4291 		u64 pow : 1;
4292 		u64 fpa : 1;
4293 		u64 iob : 1;
4294 		u64 mio : 1;
4295 		u64 nand : 1;
4296 		u64 mii1 : 1;
4297 		u64 reserved_4_17 : 14;
4298 		u64 wdog : 4;
4299 	} cn61xx;
4300 	struct cvmx_ciu_intx_en4_1_w1s_cn63xx {
4301 		u64 rst : 1;
4302 		u64 reserved_57_62 : 6;
4303 		u64 dfm : 1;
4304 		u64 reserved_53_55 : 3;
4305 		u64 lmc0 : 1;
4306 		u64 srio1 : 1;
4307 		u64 srio0 : 1;
4308 		u64 pem1 : 1;
4309 		u64 pem0 : 1;
4310 		u64 ptp : 1;
4311 		u64 agl : 1;
4312 		u64 reserved_37_45 : 9;
4313 		u64 agx0 : 1;
4314 		u64 dpi : 1;
4315 		u64 sli : 1;
4316 		u64 usb : 1;
4317 		u64 dfa : 1;
4318 		u64 key : 1;
4319 		u64 rad : 1;
4320 		u64 tim : 1;
4321 		u64 zip : 1;
4322 		u64 pko : 1;
4323 		u64 pip : 1;
4324 		u64 ipd : 1;
4325 		u64 l2c : 1;
4326 		u64 pow : 1;
4327 		u64 fpa : 1;
4328 		u64 iob : 1;
4329 		u64 mio : 1;
4330 		u64 nand : 1;
4331 		u64 mii1 : 1;
4332 		u64 reserved_6_17 : 12;
4333 		u64 wdog : 6;
4334 	} cn63xx;
4335 	struct cvmx_ciu_intx_en4_1_w1s_cn63xx cn63xxp1;
4336 	struct cvmx_ciu_intx_en4_1_w1s_cn66xx {
4337 		u64 rst : 1;
4338 		u64 reserved_62_62 : 1;
4339 		u64 srio3 : 1;
4340 		u64 srio2 : 1;
4341 		u64 reserved_57_59 : 3;
4342 		u64 dfm : 1;
4343 		u64 reserved_53_55 : 3;
4344 		u64 lmc0 : 1;
4345 		u64 reserved_51_51 : 1;
4346 		u64 srio0 : 1;
4347 		u64 pem1 : 1;
4348 		u64 pem0 : 1;
4349 		u64 ptp : 1;
4350 		u64 agl : 1;
4351 		u64 reserved_38_45 : 8;
4352 		u64 agx1 : 1;
4353 		u64 agx0 : 1;
4354 		u64 dpi : 1;
4355 		u64 sli : 1;
4356 		u64 usb : 1;
4357 		u64 dfa : 1;
4358 		u64 key : 1;
4359 		u64 rad : 1;
4360 		u64 tim : 1;
4361 		u64 zip : 1;
4362 		u64 pko : 1;
4363 		u64 pip : 1;
4364 		u64 ipd : 1;
4365 		u64 l2c : 1;
4366 		u64 pow : 1;
4367 		u64 fpa : 1;
4368 		u64 iob : 1;
4369 		u64 mio : 1;
4370 		u64 nand : 1;
4371 		u64 mii1 : 1;
4372 		u64 reserved_10_17 : 8;
4373 		u64 wdog : 10;
4374 	} cn66xx;
4375 	struct cvmx_ciu_intx_en4_1_w1s_cn70xx {
4376 		u64 rst : 1;
4377 		u64 reserved_53_62 : 10;
4378 		u64 lmc0 : 1;
4379 		u64 reserved_51_51 : 1;
4380 		u64 pem2 : 1;
4381 		u64 pem1 : 1;
4382 		u64 pem0 : 1;
4383 		u64 ptp : 1;
4384 		u64 agl : 1;
4385 		u64 reserved_41_45 : 5;
4386 		u64 dpi_dma : 1;
4387 		u64 reserved_38_39 : 2;
4388 		u64 agx1 : 1;
4389 		u64 agx0 : 1;
4390 		u64 dpi : 1;
4391 		u64 sli : 1;
4392 		u64 usb : 1;
4393 		u64 dfa : 1;
4394 		u64 key : 1;
4395 		u64 rad : 1;
4396 		u64 tim : 1;
4397 		u64 reserved_28_28 : 1;
4398 		u64 pko : 1;
4399 		u64 pip : 1;
4400 		u64 ipd : 1;
4401 		u64 l2c : 1;
4402 		u64 pow : 1;
4403 		u64 fpa : 1;
4404 		u64 iob : 1;
4405 		u64 mio : 1;
4406 		u64 nand : 1;
4407 		u64 reserved_18_18 : 1;
4408 		u64 usb1 : 1;
4409 		u64 reserved_4_16 : 13;
4410 		u64 wdog : 4;
4411 	} cn70xx;
4412 	struct cvmx_ciu_intx_en4_1_w1s_cn70xx cn70xxp1;
4413 	struct cvmx_ciu_intx_en4_1_w1s_cnf71xx {
4414 		u64 rst : 1;
4415 		u64 reserved_53_62 : 10;
4416 		u64 lmc0 : 1;
4417 		u64 reserved_50_51 : 2;
4418 		u64 pem1 : 1;
4419 		u64 pem0 : 1;
4420 		u64 ptp : 1;
4421 		u64 reserved_41_46 : 6;
4422 		u64 dpi_dma : 1;
4423 		u64 reserved_37_39 : 3;
4424 		u64 agx0 : 1;
4425 		u64 dpi : 1;
4426 		u64 sli : 1;
4427 		u64 usb : 1;
4428 		u64 reserved_32_32 : 1;
4429 		u64 key : 1;
4430 		u64 rad : 1;
4431 		u64 tim : 1;
4432 		u64 reserved_28_28 : 1;
4433 		u64 pko : 1;
4434 		u64 pip : 1;
4435 		u64 ipd : 1;
4436 		u64 l2c : 1;
4437 		u64 pow : 1;
4438 		u64 fpa : 1;
4439 		u64 iob : 1;
4440 		u64 mio : 1;
4441 		u64 nand : 1;
4442 		u64 reserved_4_18 : 15;
4443 		u64 wdog : 4;
4444 	} cnf71xx;
4445 };
4446 
4447 typedef union cvmx_ciu_intx_en4_1_w1s cvmx_ciu_intx_en4_1_w1s_t;
4448 
4449 /**
4450  * cvmx_ciu_int#_sum0
4451  *
4452  * The remaining IP4 summary bits will be CIU_INTX_SUM4.
4453  * CIU_INT0_SUM0:  PP0/IP2
4454  * CIU_INT1_SUM0:  PP0/IP3
4455  * CIU_INT2_SUM0:  PP1/IP2
4456  * CIU_INT3_SUM0:  PP1/IP3
4457  * CIU_INT4_SUM0:  PP2/IP2
4458  * CIU_INT5_SUM0:  PP2/IP3
4459  * CIU_INT6_SUM0:  PP3/IP2
4460  * CIU_INT7_SUM0:  PP3/IP3
4461  *  - .....
4462  * (hole)
4463  * CIU_INT32_SUM0: IO 0 (PEM0).
4464  * CIU_INT33_SUM0: IO 1 (Reserved in o70, in separate address group)
4465  */
4466 union cvmx_ciu_intx_sum0 {
4467 	u64 u64;
4468 	struct cvmx_ciu_intx_sum0_s {
4469 		u64 bootdma : 1;
4470 		u64 mii : 1;
4471 		u64 ipdppthr : 1;
4472 		u64 powiq : 1;
4473 		u64 twsi2 : 1;
4474 		u64 mpi : 1;
4475 		u64 pcm : 1;
4476 		u64 usb : 1;
4477 		u64 timer : 4;
4478 		u64 reserved_51_51 : 1;
4479 		u64 ipd_drp : 1;
4480 		u64 gmx_drp : 2;
4481 		u64 trace : 1;
4482 		u64 rml : 1;
4483 		u64 twsi : 1;
4484 		u64 wdog_sum : 1;
4485 		u64 pci_msi : 4;
4486 		u64 pci_int : 4;
4487 		u64 uart : 2;
4488 		u64 mbox : 2;
4489 		u64 gpio : 16;
4490 		u64 workq : 16;
4491 	} s;
4492 	struct cvmx_ciu_intx_sum0_cn30xx {
4493 		u64 reserved_59_63 : 5;
4494 		u64 mpi : 1;
4495 		u64 pcm : 1;
4496 		u64 usb : 1;
4497 		u64 timer : 4;
4498 		u64 reserved_51_51 : 1;
4499 		u64 ipd_drp : 1;
4500 		u64 reserved_49_49 : 1;
4501 		u64 gmx_drp : 1;
4502 		u64 reserved_47_47 : 1;
4503 		u64 rml : 1;
4504 		u64 twsi : 1;
4505 		u64 wdog_sum : 1;
4506 		u64 pci_msi : 4;
4507 		u64 pci_int : 4;
4508 		u64 uart : 2;
4509 		u64 mbox : 2;
4510 		u64 gpio : 16;
4511 		u64 workq : 16;
4512 	} cn30xx;
4513 	struct cvmx_ciu_intx_sum0_cn31xx {
4514 		u64 reserved_59_63 : 5;
4515 		u64 mpi : 1;
4516 		u64 pcm : 1;
4517 		u64 usb : 1;
4518 		u64 timer : 4;
4519 		u64 reserved_51_51 : 1;
4520 		u64 ipd_drp : 1;
4521 		u64 reserved_49_49 : 1;
4522 		u64 gmx_drp : 1;
4523 		u64 trace : 1;
4524 		u64 rml : 1;
4525 		u64 twsi : 1;
4526 		u64 wdog_sum : 1;
4527 		u64 pci_msi : 4;
4528 		u64 pci_int : 4;
4529 		u64 uart : 2;
4530 		u64 mbox : 2;
4531 		u64 gpio : 16;
4532 		u64 workq : 16;
4533 	} cn31xx;
4534 	struct cvmx_ciu_intx_sum0_cn38xx {
4535 		u64 reserved_56_63 : 8;
4536 		u64 timer : 4;
4537 		u64 key_zero : 1;
4538 		u64 ipd_drp : 1;
4539 		u64 gmx_drp : 2;
4540 		u64 trace : 1;
4541 		u64 rml : 1;
4542 		u64 twsi : 1;
4543 		u64 wdog_sum : 1;
4544 		u64 pci_msi : 4;
4545 		u64 pci_int : 4;
4546 		u64 uart : 2;
4547 		u64 mbox : 2;
4548 		u64 gpio : 16;
4549 		u64 workq : 16;
4550 	} cn38xx;
4551 	struct cvmx_ciu_intx_sum0_cn38xx cn38xxp2;
4552 	struct cvmx_ciu_intx_sum0_cn30xx cn50xx;
4553 	struct cvmx_ciu_intx_sum0_cn52xx {
4554 		u64 bootdma : 1;
4555 		u64 mii : 1;
4556 		u64 ipdppthr : 1;
4557 		u64 powiq : 1;
4558 		u64 twsi2 : 1;
4559 		u64 reserved_57_58 : 2;
4560 		u64 usb : 1;
4561 		u64 timer : 4;
4562 		u64 reserved_51_51 : 1;
4563 		u64 ipd_drp : 1;
4564 		u64 reserved_49_49 : 1;
4565 		u64 gmx_drp : 1;
4566 		u64 trace : 1;
4567 		u64 rml : 1;
4568 		u64 twsi : 1;
4569 		u64 wdog_sum : 1;
4570 		u64 pci_msi : 4;
4571 		u64 pci_int : 4;
4572 		u64 uart : 2;
4573 		u64 mbox : 2;
4574 		u64 gpio : 16;
4575 		u64 workq : 16;
4576 	} cn52xx;
4577 	struct cvmx_ciu_intx_sum0_cn52xx cn52xxp1;
4578 	struct cvmx_ciu_intx_sum0_cn56xx {
4579 		u64 bootdma : 1;
4580 		u64 mii : 1;
4581 		u64 ipdppthr : 1;
4582 		u64 powiq : 1;
4583 		u64 twsi2 : 1;
4584 		u64 reserved_57_58 : 2;
4585 		u64 usb : 1;
4586 		u64 timer : 4;
4587 		u64 key_zero : 1;
4588 		u64 ipd_drp : 1;
4589 		u64 gmx_drp : 2;
4590 		u64 trace : 1;
4591 		u64 rml : 1;
4592 		u64 twsi : 1;
4593 		u64 wdog_sum : 1;
4594 		u64 pci_msi : 4;
4595 		u64 pci_int : 4;
4596 		u64 uart : 2;
4597 		u64 mbox : 2;
4598 		u64 gpio : 16;
4599 		u64 workq : 16;
4600 	} cn56xx;
4601 	struct cvmx_ciu_intx_sum0_cn56xx cn56xxp1;
4602 	struct cvmx_ciu_intx_sum0_cn38xx cn58xx;
4603 	struct cvmx_ciu_intx_sum0_cn38xx cn58xxp1;
4604 	struct cvmx_ciu_intx_sum0_cn61xx {
4605 		u64 bootdma : 1;
4606 		u64 mii : 1;
4607 		u64 ipdppthr : 1;
4608 		u64 powiq : 1;
4609 		u64 twsi2 : 1;
4610 		u64 mpi : 1;
4611 		u64 pcm : 1;
4612 		u64 usb : 1;
4613 		u64 timer : 4;
4614 		u64 sum2 : 1;
4615 		u64 ipd_drp : 1;
4616 		u64 gmx_drp : 2;
4617 		u64 trace : 1;
4618 		u64 rml : 1;
4619 		u64 twsi : 1;
4620 		u64 wdog_sum : 1;
4621 		u64 pci_msi : 4;
4622 		u64 pci_int : 4;
4623 		u64 uart : 2;
4624 		u64 mbox : 2;
4625 		u64 gpio : 16;
4626 		u64 workq : 16;
4627 	} cn61xx;
4628 	struct cvmx_ciu_intx_sum0_cn52xx cn63xx;
4629 	struct cvmx_ciu_intx_sum0_cn52xx cn63xxp1;
4630 	struct cvmx_ciu_intx_sum0_cn66xx {
4631 		u64 bootdma : 1;
4632 		u64 mii : 1;
4633 		u64 ipdppthr : 1;
4634 		u64 powiq : 1;
4635 		u64 twsi2 : 1;
4636 		u64 mpi : 1;
4637 		u64 reserved_57_57 : 1;
4638 		u64 usb : 1;
4639 		u64 timer : 4;
4640 		u64 sum2 : 1;
4641 		u64 ipd_drp : 1;
4642 		u64 gmx_drp : 2;
4643 		u64 trace : 1;
4644 		u64 rml : 1;
4645 		u64 twsi : 1;
4646 		u64 wdog_sum : 1;
4647 		u64 pci_msi : 4;
4648 		u64 pci_int : 4;
4649 		u64 uart : 2;
4650 		u64 mbox : 2;
4651 		u64 gpio : 16;
4652 		u64 workq : 16;
4653 	} cn66xx;
4654 	struct cvmx_ciu_intx_sum0_cn70xx {
4655 		u64 bootdma : 1;
4656 		u64 reserved_62_62 : 1;
4657 		u64 ipdppthr : 1;
4658 		u64 powiq : 1;
4659 		u64 twsi2 : 1;
4660 		u64 mpi : 1;
4661 		u64 pcm : 1;
4662 		u64 reserved_56_56 : 1;
4663 		u64 timer : 4;
4664 		u64 sum2 : 1;
4665 		u64 ipd_drp : 1;
4666 		u64 gmx_drp : 2;
4667 		u64 reserved_46_47 : 2;
4668 		u64 twsi : 1;
4669 		u64 wdog_sum : 1;
4670 		u64 pci_msi : 4;
4671 		u64 pci_int : 4;
4672 		u64 uart : 2;
4673 		u64 mbox : 2;
4674 		u64 gpio : 16;
4675 		u64 workq : 16;
4676 	} cn70xx;
4677 	struct cvmx_ciu_intx_sum0_cn70xx cn70xxp1;
4678 	struct cvmx_ciu_intx_sum0_cnf71xx {
4679 		u64 bootdma : 1;
4680 		u64 reserved_62_62 : 1;
4681 		u64 ipdppthr : 1;
4682 		u64 powiq : 1;
4683 		u64 twsi2 : 1;
4684 		u64 mpi : 1;
4685 		u64 pcm : 1;
4686 		u64 usb : 1;
4687 		u64 timer : 4;
4688 		u64 sum2 : 1;
4689 		u64 ipd_drp : 1;
4690 		u64 reserved_49_49 : 1;
4691 		u64 gmx_drp : 1;
4692 		u64 trace : 1;
4693 		u64 rml : 1;
4694 		u64 twsi : 1;
4695 		u64 wdog_sum : 1;
4696 		u64 pci_msi : 4;
4697 		u64 pci_int : 4;
4698 		u64 uart : 2;
4699 		u64 mbox : 2;
4700 		u64 gpio : 16;
4701 		u64 workq : 16;
4702 	} cnf71xx;
4703 };
4704 
4705 typedef union cvmx_ciu_intx_sum0 cvmx_ciu_intx_sum0_t;
4706 
4707 /**
4708  * cvmx_ciu_int#_sum4
4709  *
4710  * CIU_INT0_SUM4:   PP0  /IP4
4711  * CIU_INT1_SUM4:   PP1  /IP4
4712  * - ...
4713  * CIU_INT3_SUM4:   PP3  /IP4
4714  */
4715 union cvmx_ciu_intx_sum4 {
4716 	u64 u64;
4717 	struct cvmx_ciu_intx_sum4_s {
4718 		u64 bootdma : 1;
4719 		u64 mii : 1;
4720 		u64 ipdppthr : 1;
4721 		u64 powiq : 1;
4722 		u64 twsi2 : 1;
4723 		u64 mpi : 1;
4724 		u64 pcm : 1;
4725 		u64 usb : 1;
4726 		u64 timer : 4;
4727 		u64 reserved_51_51 : 1;
4728 		u64 ipd_drp : 1;
4729 		u64 gmx_drp : 2;
4730 		u64 trace : 1;
4731 		u64 rml : 1;
4732 		u64 twsi : 1;
4733 		u64 wdog_sum : 1;
4734 		u64 pci_msi : 4;
4735 		u64 pci_int : 4;
4736 		u64 uart : 2;
4737 		u64 mbox : 2;
4738 		u64 gpio : 16;
4739 		u64 workq : 16;
4740 	} s;
4741 	struct cvmx_ciu_intx_sum4_cn50xx {
4742 		u64 reserved_59_63 : 5;
4743 		u64 mpi : 1;
4744 		u64 pcm : 1;
4745 		u64 usb : 1;
4746 		u64 timer : 4;
4747 		u64 reserved_51_51 : 1;
4748 		u64 ipd_drp : 1;
4749 		u64 reserved_49_49 : 1;
4750 		u64 gmx_drp : 1;
4751 		u64 reserved_47_47 : 1;
4752 		u64 rml : 1;
4753 		u64 twsi : 1;
4754 		u64 wdog_sum : 1;
4755 		u64 pci_msi : 4;
4756 		u64 pci_int : 4;
4757 		u64 uart : 2;
4758 		u64 mbox : 2;
4759 		u64 gpio : 16;
4760 		u64 workq : 16;
4761 	} cn50xx;
4762 	struct cvmx_ciu_intx_sum4_cn52xx {
4763 		u64 bootdma : 1;
4764 		u64 mii : 1;
4765 		u64 ipdppthr : 1;
4766 		u64 powiq : 1;
4767 		u64 twsi2 : 1;
4768 		u64 reserved_57_58 : 2;
4769 		u64 usb : 1;
4770 		u64 timer : 4;
4771 		u64 reserved_51_51 : 1;
4772 		u64 ipd_drp : 1;
4773 		u64 reserved_49_49 : 1;
4774 		u64 gmx_drp : 1;
4775 		u64 trace : 1;
4776 		u64 rml : 1;
4777 		u64 twsi : 1;
4778 		u64 wdog_sum : 1;
4779 		u64 pci_msi : 4;
4780 		u64 pci_int : 4;
4781 		u64 uart : 2;
4782 		u64 mbox : 2;
4783 		u64 gpio : 16;
4784 		u64 workq : 16;
4785 	} cn52xx;
4786 	struct cvmx_ciu_intx_sum4_cn52xx cn52xxp1;
4787 	struct cvmx_ciu_intx_sum4_cn56xx {
4788 		u64 bootdma : 1;
4789 		u64 mii : 1;
4790 		u64 ipdppthr : 1;
4791 		u64 powiq : 1;
4792 		u64 twsi2 : 1;
4793 		u64 reserved_57_58 : 2;
4794 		u64 usb : 1;
4795 		u64 timer : 4;
4796 		u64 key_zero : 1;
4797 		u64 ipd_drp : 1;
4798 		u64 gmx_drp : 2;
4799 		u64 trace : 1;
4800 		u64 rml : 1;
4801 		u64 twsi : 1;
4802 		u64 wdog_sum : 1;
4803 		u64 pci_msi : 4;
4804 		u64 pci_int : 4;
4805 		u64 uart : 2;
4806 		u64 mbox : 2;
4807 		u64 gpio : 16;
4808 		u64 workq : 16;
4809 	} cn56xx;
4810 	struct cvmx_ciu_intx_sum4_cn56xx cn56xxp1;
4811 	struct cvmx_ciu_intx_sum4_cn58xx {
4812 		u64 reserved_56_63 : 8;
4813 		u64 timer : 4;
4814 		u64 key_zero : 1;
4815 		u64 ipd_drp : 1;
4816 		u64 gmx_drp : 2;
4817 		u64 trace : 1;
4818 		u64 rml : 1;
4819 		u64 twsi : 1;
4820 		u64 wdog_sum : 1;
4821 		u64 pci_msi : 4;
4822 		u64 pci_int : 4;
4823 		u64 uart : 2;
4824 		u64 mbox : 2;
4825 		u64 gpio : 16;
4826 		u64 workq : 16;
4827 	} cn58xx;
4828 	struct cvmx_ciu_intx_sum4_cn58xx cn58xxp1;
4829 	struct cvmx_ciu_intx_sum4_cn61xx {
4830 		u64 bootdma : 1;
4831 		u64 mii : 1;
4832 		u64 ipdppthr : 1;
4833 		u64 powiq : 1;
4834 		u64 twsi2 : 1;
4835 		u64 mpi : 1;
4836 		u64 pcm : 1;
4837 		u64 usb : 1;
4838 		u64 timer : 4;
4839 		u64 sum2 : 1;
4840 		u64 ipd_drp : 1;
4841 		u64 gmx_drp : 2;
4842 		u64 trace : 1;
4843 		u64 rml : 1;
4844 		u64 twsi : 1;
4845 		u64 wdog_sum : 1;
4846 		u64 pci_msi : 4;
4847 		u64 pci_int : 4;
4848 		u64 uart : 2;
4849 		u64 mbox : 2;
4850 		u64 gpio : 16;
4851 		u64 workq : 16;
4852 	} cn61xx;
4853 	struct cvmx_ciu_intx_sum4_cn52xx cn63xx;
4854 	struct cvmx_ciu_intx_sum4_cn52xx cn63xxp1;
4855 	struct cvmx_ciu_intx_sum4_cn66xx {
4856 		u64 bootdma : 1;
4857 		u64 mii : 1;
4858 		u64 ipdppthr : 1;
4859 		u64 powiq : 1;
4860 		u64 twsi2 : 1;
4861 		u64 mpi : 1;
4862 		u64 reserved_57_57 : 1;
4863 		u64 usb : 1;
4864 		u64 timer : 4;
4865 		u64 sum2 : 1;
4866 		u64 ipd_drp : 1;
4867 		u64 gmx_drp : 2;
4868 		u64 trace : 1;
4869 		u64 rml : 1;
4870 		u64 twsi : 1;
4871 		u64 wdog_sum : 1;
4872 		u64 pci_msi : 4;
4873 		u64 pci_int : 4;
4874 		u64 uart : 2;
4875 		u64 mbox : 2;
4876 		u64 gpio : 16;
4877 		u64 workq : 16;
4878 	} cn66xx;
4879 	struct cvmx_ciu_intx_sum4_cn70xx {
4880 		u64 bootdma : 1;
4881 		u64 reserved_62_62 : 1;
4882 		u64 ipdppthr : 1;
4883 		u64 powiq : 1;
4884 		u64 twsi2 : 1;
4885 		u64 mpi : 1;
4886 		u64 pcm : 1;
4887 		u64 reserved_56_56 : 1;
4888 		u64 timer : 4;
4889 		u64 sum2 : 1;
4890 		u64 ipd_drp : 1;
4891 		u64 gmx_drp : 2;
4892 		u64 reserved_46_47 : 2;
4893 		u64 twsi : 1;
4894 		u64 wdog_sum : 1;
4895 		u64 pci_msi : 4;
4896 		u64 pci_int : 4;
4897 		u64 uart : 2;
4898 		u64 mbox : 2;
4899 		u64 gpio : 16;
4900 		u64 workq : 16;
4901 	} cn70xx;
4902 	struct cvmx_ciu_intx_sum4_cn70xx cn70xxp1;
4903 	struct cvmx_ciu_intx_sum4_cnf71xx {
4904 		u64 bootdma : 1;
4905 		u64 reserved_62_62 : 1;
4906 		u64 ipdppthr : 1;
4907 		u64 powiq : 1;
4908 		u64 twsi2 : 1;
4909 		u64 mpi : 1;
4910 		u64 pcm : 1;
4911 		u64 usb : 1;
4912 		u64 timer : 4;
4913 		u64 sum2 : 1;
4914 		u64 ipd_drp : 1;
4915 		u64 reserved_49_49 : 1;
4916 		u64 gmx_drp : 1;
4917 		u64 trace : 1;
4918 		u64 rml : 1;
4919 		u64 twsi : 1;
4920 		u64 wdog_sum : 1;
4921 		u64 pci_msi : 4;
4922 		u64 pci_int : 4;
4923 		u64 uart : 2;
4924 		u64 mbox : 2;
4925 		u64 gpio : 16;
4926 		u64 workq : 16;
4927 	} cnf71xx;
4928 };
4929 
4930 typedef union cvmx_ciu_intx_sum4 cvmx_ciu_intx_sum4_t;
4931 
4932 /**
4933  * cvmx_ciu_int33_sum0
4934  *
4935  * This bit is associated with CIU_INTX_SUM0. Reserved for o70 for future expansion.
4936  *
4937  */
4938 union cvmx_ciu_int33_sum0 {
4939 	u64 u64;
4940 	struct cvmx_ciu_int33_sum0_s {
4941 		u64 bootdma : 1;
4942 		u64 mii : 1;
4943 		u64 ipdppthr : 1;
4944 		u64 powiq : 1;
4945 		u64 twsi2 : 1;
4946 		u64 mpi : 1;
4947 		u64 pcm : 1;
4948 		u64 usb : 1;
4949 		u64 timer : 4;
4950 		u64 sum2 : 1;
4951 		u64 ipd_drp : 1;
4952 		u64 gmx_drp : 2;
4953 		u64 trace : 1;
4954 		u64 rml : 1;
4955 		u64 twsi : 1;
4956 		u64 wdog_sum : 1;
4957 		u64 pci_msi : 4;
4958 		u64 pci_int : 4;
4959 		u64 uart : 2;
4960 		u64 mbox : 2;
4961 		u64 gpio : 16;
4962 		u64 workq : 16;
4963 	} s;
4964 	struct cvmx_ciu_int33_sum0_s cn61xx;
4965 	struct cvmx_ciu_int33_sum0_cn63xx {
4966 		u64 bootdma : 1;
4967 		u64 mii : 1;
4968 		u64 ipdppthr : 1;
4969 		u64 powiq : 1;
4970 		u64 twsi2 : 1;
4971 		u64 reserved_57_58 : 2;
4972 		u64 usb : 1;
4973 		u64 timer : 4;
4974 		u64 reserved_51_51 : 1;
4975 		u64 ipd_drp : 1;
4976 		u64 reserved_49_49 : 1;
4977 		u64 gmx_drp : 1;
4978 		u64 trace : 1;
4979 		u64 rml : 1;
4980 		u64 twsi : 1;
4981 		u64 wdog_sum : 1;
4982 		u64 pci_msi : 4;
4983 		u64 pci_int : 4;
4984 		u64 uart : 2;
4985 		u64 mbox : 2;
4986 		u64 gpio : 16;
4987 		u64 workq : 16;
4988 	} cn63xx;
4989 	struct cvmx_ciu_int33_sum0_cn63xx cn63xxp1;
4990 	struct cvmx_ciu_int33_sum0_cn66xx {
4991 		u64 bootdma : 1;
4992 		u64 mii : 1;
4993 		u64 ipdppthr : 1;
4994 		u64 powiq : 1;
4995 		u64 twsi2 : 1;
4996 		u64 mpi : 1;
4997 		u64 reserved_57_57 : 1;
4998 		u64 usb : 1;
4999 		u64 timer : 4;
5000 		u64 sum2 : 1;
5001 		u64 ipd_drp : 1;
5002 		u64 gmx_drp : 2;
5003 		u64 trace : 1;
5004 		u64 rml : 1;
5005 		u64 twsi : 1;
5006 		u64 wdog_sum : 1;
5007 		u64 pci_msi : 4;
5008 		u64 pci_int : 4;
5009 		u64 uart : 2;
5010 		u64 mbox : 2;
5011 		u64 gpio : 16;
5012 		u64 workq : 16;
5013 	} cn66xx;
5014 	struct cvmx_ciu_int33_sum0_cn70xx {
5015 		u64 bootdma : 1;
5016 		u64 reserved_62_62 : 1;
5017 		u64 ipdppthr : 1;
5018 		u64 powiq : 1;
5019 		u64 twsi2 : 1;
5020 		u64 mpi : 1;
5021 		u64 pcm : 1;
5022 		u64 reserved_56_56 : 1;
5023 		u64 timer : 4;
5024 		u64 sum2 : 1;
5025 		u64 ipd_drp : 1;
5026 		u64 gmx_drp : 2;
5027 		u64 reserved_47_46 : 2;
5028 		u64 twsi : 1;
5029 		u64 wdog_sum : 1;
5030 		u64 pci_msi : 4;
5031 		u64 pci_int : 4;
5032 		u64 uart : 2;
5033 		u64 mbox : 2;
5034 		u64 gpio : 16;
5035 		u64 workq : 16;
5036 	} cn70xx;
5037 	struct cvmx_ciu_int33_sum0_cn70xx cn70xxp1;
5038 	struct cvmx_ciu_int33_sum0_cnf71xx {
5039 		u64 bootdma : 1;
5040 		u64 reserved_62_62 : 1;
5041 		u64 ipdppthr : 1;
5042 		u64 powiq : 1;
5043 		u64 twsi2 : 1;
5044 		u64 mpi : 1;
5045 		u64 pcm : 1;
5046 		u64 usb : 1;
5047 		u64 timer : 4;
5048 		u64 sum2 : 1;
5049 		u64 ipd_drp : 1;
5050 		u64 reserved_49_49 : 1;
5051 		u64 gmx_drp : 1;
5052 		u64 trace : 1;
5053 		u64 rml : 1;
5054 		u64 twsi : 1;
5055 		u64 wdog_sum : 1;
5056 		u64 pci_msi : 4;
5057 		u64 pci_int : 4;
5058 		u64 uart : 2;
5059 		u64 mbox : 2;
5060 		u64 gpio : 16;
5061 		u64 workq : 16;
5062 	} cnf71xx;
5063 };
5064 
5065 typedef union cvmx_ciu_int33_sum0 cvmx_ciu_int33_sum0_t;
5066 
5067 /**
5068  * cvmx_ciu_int_dbg_sel
5069  */
5070 union cvmx_ciu_int_dbg_sel {
5071 	u64 u64;
5072 	struct cvmx_ciu_int_dbg_sel_s {
5073 		u64 reserved_19_63 : 45;
5074 		u64 sel : 3;
5075 		u64 reserved_10_15 : 6;
5076 		u64 irq : 2;
5077 		u64 reserved_5_7 : 3;
5078 		u64 pp : 5;
5079 	} s;
5080 	struct cvmx_ciu_int_dbg_sel_cn61xx {
5081 		u64 reserved_19_63 : 45;
5082 		u64 sel : 3;
5083 		u64 reserved_10_15 : 6;
5084 		u64 irq : 2;
5085 		u64 reserved_4_7 : 4;
5086 		u64 pp : 4;
5087 	} cn61xx;
5088 	struct cvmx_ciu_int_dbg_sel_cn63xx {
5089 		u64 reserved_19_63 : 45;
5090 		u64 sel : 3;
5091 		u64 reserved_10_15 : 6;
5092 		u64 irq : 2;
5093 		u64 reserved_3_7 : 5;
5094 		u64 pp : 3;
5095 	} cn63xx;
5096 	struct cvmx_ciu_int_dbg_sel_cn61xx cn66xx;
5097 	struct cvmx_ciu_int_dbg_sel_s cn68xx;
5098 	struct cvmx_ciu_int_dbg_sel_s cn68xxp1;
5099 	struct cvmx_ciu_int_dbg_sel_cn61xx cnf71xx;
5100 };
5101 
5102 typedef union cvmx_ciu_int_dbg_sel cvmx_ciu_int_dbg_sel_t;
5103 
5104 /**
5105  * cvmx_ciu_int_sum1
5106  *
5107  * CIU_INT_SUM1 is kept to keep backward compatible.
5108  * Refer to CIU_SUM1_PPX_IPx which is the one should use.
5109  */
5110 union cvmx_ciu_int_sum1 {
5111 	u64 u64;
5112 	struct cvmx_ciu_int_sum1_s {
5113 		u64 rst : 1;
5114 		u64 reserved_62_62 : 1;
5115 		u64 srio3 : 1;
5116 		u64 srio2 : 1;
5117 		u64 reserved_57_59 : 3;
5118 		u64 dfm : 1;
5119 		u64 reserved_53_55 : 3;
5120 		u64 lmc0 : 1;
5121 		u64 srio1 : 1;
5122 		u64 reserved_50_50 : 1;
5123 		u64 pem1 : 1;
5124 		u64 pem0 : 1;
5125 		u64 ptp : 1;
5126 		u64 agl : 1;
5127 		u64 reserved_38_45 : 8;
5128 		u64 agx1 : 1;
5129 		u64 agx0 : 1;
5130 		u64 dpi : 1;
5131 		u64 sli : 1;
5132 		u64 usb : 1;
5133 		u64 dfa : 1;
5134 		u64 key : 1;
5135 		u64 rad : 1;
5136 		u64 tim : 1;
5137 		u64 zip : 1;
5138 		u64 pko : 1;
5139 		u64 pip : 1;
5140 		u64 ipd : 1;
5141 		u64 l2c : 1;
5142 		u64 pow : 1;
5143 		u64 fpa : 1;
5144 		u64 iob : 1;
5145 		u64 mio : 1;
5146 		u64 nand : 1;
5147 		u64 mii1 : 1;
5148 		u64 usb1 : 1;
5149 		u64 uart2 : 1;
5150 		u64 wdog : 16;
5151 	} s;
5152 	struct cvmx_ciu_int_sum1_cn30xx {
5153 		u64 reserved_1_63 : 63;
5154 		u64 wdog : 1;
5155 	} cn30xx;
5156 	struct cvmx_ciu_int_sum1_cn31xx {
5157 		u64 reserved_2_63 : 62;
5158 		u64 wdog : 2;
5159 	} cn31xx;
5160 	struct cvmx_ciu_int_sum1_cn38xx {
5161 		u64 reserved_16_63 : 48;
5162 		u64 wdog : 16;
5163 	} cn38xx;
5164 	struct cvmx_ciu_int_sum1_cn38xx cn38xxp2;
5165 	struct cvmx_ciu_int_sum1_cn31xx cn50xx;
5166 	struct cvmx_ciu_int_sum1_cn52xx {
5167 		u64 reserved_20_63 : 44;
5168 		u64 nand : 1;
5169 		u64 mii1 : 1;
5170 		u64 usb1 : 1;
5171 		u64 uart2 : 1;
5172 		u64 reserved_4_15 : 12;
5173 		u64 wdog : 4;
5174 	} cn52xx;
5175 	struct cvmx_ciu_int_sum1_cn52xxp1 {
5176 		u64 reserved_19_63 : 45;
5177 		u64 mii1 : 1;
5178 		u64 usb1 : 1;
5179 		u64 uart2 : 1;
5180 		u64 reserved_4_15 : 12;
5181 		u64 wdog : 4;
5182 	} cn52xxp1;
5183 	struct cvmx_ciu_int_sum1_cn56xx {
5184 		u64 reserved_12_63 : 52;
5185 		u64 wdog : 12;
5186 	} cn56xx;
5187 	struct cvmx_ciu_int_sum1_cn56xx cn56xxp1;
5188 	struct cvmx_ciu_int_sum1_cn38xx cn58xx;
5189 	struct cvmx_ciu_int_sum1_cn38xx cn58xxp1;
5190 	struct cvmx_ciu_int_sum1_cn61xx {
5191 		u64 rst : 1;
5192 		u64 reserved_53_62 : 10;
5193 		u64 lmc0 : 1;
5194 		u64 reserved_50_51 : 2;
5195 		u64 pem1 : 1;
5196 		u64 pem0 : 1;
5197 		u64 ptp : 1;
5198 		u64 agl : 1;
5199 		u64 reserved_38_45 : 8;
5200 		u64 agx1 : 1;
5201 		u64 agx0 : 1;
5202 		u64 dpi : 1;
5203 		u64 sli : 1;
5204 		u64 usb : 1;
5205 		u64 dfa : 1;
5206 		u64 key : 1;
5207 		u64 rad : 1;
5208 		u64 tim : 1;
5209 		u64 zip : 1;
5210 		u64 pko : 1;
5211 		u64 pip : 1;
5212 		u64 ipd : 1;
5213 		u64 l2c : 1;
5214 		u64 pow : 1;
5215 		u64 fpa : 1;
5216 		u64 iob : 1;
5217 		u64 mio : 1;
5218 		u64 nand : 1;
5219 		u64 mii1 : 1;
5220 		u64 reserved_4_17 : 14;
5221 		u64 wdog : 4;
5222 	} cn61xx;
5223 	struct cvmx_ciu_int_sum1_cn63xx {
5224 		u64 rst : 1;
5225 		u64 reserved_57_62 : 6;
5226 		u64 dfm : 1;
5227 		u64 reserved_53_55 : 3;
5228 		u64 lmc0 : 1;
5229 		u64 srio1 : 1;
5230 		u64 srio0 : 1;
5231 		u64 pem1 : 1;
5232 		u64 pem0 : 1;
5233 		u64 ptp : 1;
5234 		u64 agl : 1;
5235 		u64 reserved_37_45 : 9;
5236 		u64 agx0 : 1;
5237 		u64 dpi : 1;
5238 		u64 sli : 1;
5239 		u64 usb : 1;
5240 		u64 dfa : 1;
5241 		u64 key : 1;
5242 		u64 rad : 1;
5243 		u64 tim : 1;
5244 		u64 zip : 1;
5245 		u64 pko : 1;
5246 		u64 pip : 1;
5247 		u64 ipd : 1;
5248 		u64 l2c : 1;
5249 		u64 pow : 1;
5250 		u64 fpa : 1;
5251 		u64 iob : 1;
5252 		u64 mio : 1;
5253 		u64 nand : 1;
5254 		u64 mii1 : 1;
5255 		u64 reserved_6_17 : 12;
5256 		u64 wdog : 6;
5257 	} cn63xx;
5258 	struct cvmx_ciu_int_sum1_cn63xx cn63xxp1;
5259 	struct cvmx_ciu_int_sum1_cn66xx {
5260 		u64 rst : 1;
5261 		u64 reserved_62_62 : 1;
5262 		u64 srio3 : 1;
5263 		u64 srio2 : 1;
5264 		u64 reserved_57_59 : 3;
5265 		u64 dfm : 1;
5266 		u64 reserved_53_55 : 3;
5267 		u64 lmc0 : 1;
5268 		u64 reserved_51_51 : 1;
5269 		u64 srio0 : 1;
5270 		u64 pem1 : 1;
5271 		u64 pem0 : 1;
5272 		u64 ptp : 1;
5273 		u64 agl : 1;
5274 		u64 reserved_38_45 : 8;
5275 		u64 agx1 : 1;
5276 		u64 agx0 : 1;
5277 		u64 dpi : 1;
5278 		u64 sli : 1;
5279 		u64 usb : 1;
5280 		u64 dfa : 1;
5281 		u64 key : 1;
5282 		u64 rad : 1;
5283 		u64 tim : 1;
5284 		u64 zip : 1;
5285 		u64 pko : 1;
5286 		u64 pip : 1;
5287 		u64 ipd : 1;
5288 		u64 l2c : 1;
5289 		u64 pow : 1;
5290 		u64 fpa : 1;
5291 		u64 iob : 1;
5292 		u64 mio : 1;
5293 		u64 nand : 1;
5294 		u64 mii1 : 1;
5295 		u64 reserved_10_17 : 8;
5296 		u64 wdog : 10;
5297 	} cn66xx;
5298 	struct cvmx_ciu_int_sum1_cn70xx {
5299 		u64 rst : 1;
5300 		u64 reserved_53_62 : 10;
5301 		u64 lmc0 : 1;
5302 		u64 reserved_51_51 : 1;
5303 		u64 pem2 : 1;
5304 		u64 pem1 : 1;
5305 		u64 pem0 : 1;
5306 		u64 ptp : 1;
5307 		u64 agl : 1;
5308 		u64 reserved_38_45 : 8;
5309 		u64 agx1 : 1;
5310 		u64 agx0 : 1;
5311 		u64 dpi : 1;
5312 		u64 sli : 1;
5313 		u64 usb : 1;
5314 		u64 dfa : 1;
5315 		u64 key : 1;
5316 		u64 rad : 1;
5317 		u64 tim : 1;
5318 		u64 reserved_28_28 : 1;
5319 		u64 pko : 1;
5320 		u64 pip : 1;
5321 		u64 ipd : 1;
5322 		u64 l2c : 1;
5323 		u64 pow : 1;
5324 		u64 fpa : 1;
5325 		u64 iob : 1;
5326 		u64 mio : 1;
5327 		u64 nand : 1;
5328 		u64 reserved_18_18 : 1;
5329 		u64 usb1 : 1;
5330 		u64 reserved_4_16 : 13;
5331 		u64 wdog : 4;
5332 	} cn70xx;
5333 	struct cvmx_ciu_int_sum1_cn70xx cn70xxp1;
5334 	struct cvmx_ciu_int_sum1_cnf71xx {
5335 		u64 rst : 1;
5336 		u64 reserved_53_62 : 10;
5337 		u64 lmc0 : 1;
5338 		u64 reserved_50_51 : 2;
5339 		u64 pem1 : 1;
5340 		u64 pem0 : 1;
5341 		u64 ptp : 1;
5342 		u64 reserved_37_46 : 10;
5343 		u64 agx0 : 1;
5344 		u64 dpi : 1;
5345 		u64 sli : 1;
5346 		u64 usb : 1;
5347 		u64 reserved_32_32 : 1;
5348 		u64 key : 1;
5349 		u64 rad : 1;
5350 		u64 tim : 1;
5351 		u64 reserved_28_28 : 1;
5352 		u64 pko : 1;
5353 		u64 pip : 1;
5354 		u64 ipd : 1;
5355 		u64 l2c : 1;
5356 		u64 pow : 1;
5357 		u64 fpa : 1;
5358 		u64 iob : 1;
5359 		u64 mio : 1;
5360 		u64 nand : 1;
5361 		u64 reserved_4_18 : 15;
5362 		u64 wdog : 4;
5363 	} cnf71xx;
5364 };
5365 
5366 typedef union cvmx_ciu_int_sum1 cvmx_ciu_int_sum1_t;
5367 
5368 /**
5369  * cvmx_ciu_intr_slowdown
5370  */
5371 union cvmx_ciu_intr_slowdown {
5372 	u64 u64;
5373 	struct cvmx_ciu_intr_slowdown_s {
5374 		u64 reserved_3_63 : 61;
5375 		u64 ctl : 3;
5376 	} s;
5377 	struct cvmx_ciu_intr_slowdown_s cn70xx;
5378 	struct cvmx_ciu_intr_slowdown_s cn70xxp1;
5379 };
5380 
5381 typedef union cvmx_ciu_intr_slowdown cvmx_ciu_intr_slowdown_t;
5382 
5383 /**
5384  * cvmx_ciu_mbox_clr#
5385  */
5386 union cvmx_ciu_mbox_clrx {
5387 	u64 u64;
5388 	struct cvmx_ciu_mbox_clrx_s {
5389 		u64 reserved_32_63 : 32;
5390 		u64 bits : 32;
5391 	} s;
5392 	struct cvmx_ciu_mbox_clrx_s cn30xx;
5393 	struct cvmx_ciu_mbox_clrx_s cn31xx;
5394 	struct cvmx_ciu_mbox_clrx_s cn38xx;
5395 	struct cvmx_ciu_mbox_clrx_s cn38xxp2;
5396 	struct cvmx_ciu_mbox_clrx_s cn50xx;
5397 	struct cvmx_ciu_mbox_clrx_s cn52xx;
5398 	struct cvmx_ciu_mbox_clrx_s cn52xxp1;
5399 	struct cvmx_ciu_mbox_clrx_s cn56xx;
5400 	struct cvmx_ciu_mbox_clrx_s cn56xxp1;
5401 	struct cvmx_ciu_mbox_clrx_s cn58xx;
5402 	struct cvmx_ciu_mbox_clrx_s cn58xxp1;
5403 	struct cvmx_ciu_mbox_clrx_s cn61xx;
5404 	struct cvmx_ciu_mbox_clrx_s cn63xx;
5405 	struct cvmx_ciu_mbox_clrx_s cn63xxp1;
5406 	struct cvmx_ciu_mbox_clrx_s cn66xx;
5407 	struct cvmx_ciu_mbox_clrx_s cn68xx;
5408 	struct cvmx_ciu_mbox_clrx_s cn68xxp1;
5409 	struct cvmx_ciu_mbox_clrx_s cn70xx;
5410 	struct cvmx_ciu_mbox_clrx_s cn70xxp1;
5411 	struct cvmx_ciu_mbox_clrx_s cnf71xx;
5412 };
5413 
5414 typedef union cvmx_ciu_mbox_clrx cvmx_ciu_mbox_clrx_t;
5415 
5416 /**
5417  * cvmx_ciu_mbox_set#
5418  */
5419 union cvmx_ciu_mbox_setx {
5420 	u64 u64;
5421 	struct cvmx_ciu_mbox_setx_s {
5422 		u64 reserved_32_63 : 32;
5423 		u64 bits : 32;
5424 	} s;
5425 	struct cvmx_ciu_mbox_setx_s cn30xx;
5426 	struct cvmx_ciu_mbox_setx_s cn31xx;
5427 	struct cvmx_ciu_mbox_setx_s cn38xx;
5428 	struct cvmx_ciu_mbox_setx_s cn38xxp2;
5429 	struct cvmx_ciu_mbox_setx_s cn50xx;
5430 	struct cvmx_ciu_mbox_setx_s cn52xx;
5431 	struct cvmx_ciu_mbox_setx_s cn52xxp1;
5432 	struct cvmx_ciu_mbox_setx_s cn56xx;
5433 	struct cvmx_ciu_mbox_setx_s cn56xxp1;
5434 	struct cvmx_ciu_mbox_setx_s cn58xx;
5435 	struct cvmx_ciu_mbox_setx_s cn58xxp1;
5436 	struct cvmx_ciu_mbox_setx_s cn61xx;
5437 	struct cvmx_ciu_mbox_setx_s cn63xx;
5438 	struct cvmx_ciu_mbox_setx_s cn63xxp1;
5439 	struct cvmx_ciu_mbox_setx_s cn66xx;
5440 	struct cvmx_ciu_mbox_setx_s cn68xx;
5441 	struct cvmx_ciu_mbox_setx_s cn68xxp1;
5442 	struct cvmx_ciu_mbox_setx_s cn70xx;
5443 	struct cvmx_ciu_mbox_setx_s cn70xxp1;
5444 	struct cvmx_ciu_mbox_setx_s cnf71xx;
5445 };
5446 
5447 typedef union cvmx_ciu_mbox_setx cvmx_ciu_mbox_setx_t;
5448 
5449 /**
5450  * cvmx_ciu_nmi
5451  */
5452 union cvmx_ciu_nmi {
5453 	u64 u64;
5454 	struct cvmx_ciu_nmi_s {
5455 		u64 reserved_32_63 : 32;
5456 		u64 nmi : 32;
5457 	} s;
5458 	struct cvmx_ciu_nmi_cn30xx {
5459 		u64 reserved_1_63 : 63;
5460 		u64 nmi : 1;
5461 	} cn30xx;
5462 	struct cvmx_ciu_nmi_cn31xx {
5463 		u64 reserved_2_63 : 62;
5464 		u64 nmi : 2;
5465 	} cn31xx;
5466 	struct cvmx_ciu_nmi_cn38xx {
5467 		u64 reserved_16_63 : 48;
5468 		u64 nmi : 16;
5469 	} cn38xx;
5470 	struct cvmx_ciu_nmi_cn38xx cn38xxp2;
5471 	struct cvmx_ciu_nmi_cn31xx cn50xx;
5472 	struct cvmx_ciu_nmi_cn52xx {
5473 		u64 reserved_4_63 : 60;
5474 		u64 nmi : 4;
5475 	} cn52xx;
5476 	struct cvmx_ciu_nmi_cn52xx cn52xxp1;
5477 	struct cvmx_ciu_nmi_cn56xx {
5478 		u64 reserved_12_63 : 52;
5479 		u64 nmi : 12;
5480 	} cn56xx;
5481 	struct cvmx_ciu_nmi_cn56xx cn56xxp1;
5482 	struct cvmx_ciu_nmi_cn38xx cn58xx;
5483 	struct cvmx_ciu_nmi_cn38xx cn58xxp1;
5484 	struct cvmx_ciu_nmi_cn52xx cn61xx;
5485 	struct cvmx_ciu_nmi_cn63xx {
5486 		u64 reserved_6_63 : 58;
5487 		u64 nmi : 6;
5488 	} cn63xx;
5489 	struct cvmx_ciu_nmi_cn63xx cn63xxp1;
5490 	struct cvmx_ciu_nmi_cn66xx {
5491 		u64 reserved_10_63 : 54;
5492 		u64 nmi : 10;
5493 	} cn66xx;
5494 	struct cvmx_ciu_nmi_s cn68xx;
5495 	struct cvmx_ciu_nmi_s cn68xxp1;
5496 	struct cvmx_ciu_nmi_cn52xx cn70xx;
5497 	struct cvmx_ciu_nmi_cn52xx cn70xxp1;
5498 	struct cvmx_ciu_nmi_cn52xx cnf71xx;
5499 };
5500 
5501 typedef union cvmx_ciu_nmi cvmx_ciu_nmi_t;
5502 
5503 /**
5504  * cvmx_ciu_pci_inta
5505  */
5506 union cvmx_ciu_pci_inta {
5507 	u64 u64;
5508 	struct cvmx_ciu_pci_inta_s {
5509 		u64 reserved_2_63 : 62;
5510 		u64 intr : 2;
5511 	} s;
5512 	struct cvmx_ciu_pci_inta_s cn30xx;
5513 	struct cvmx_ciu_pci_inta_s cn31xx;
5514 	struct cvmx_ciu_pci_inta_s cn38xx;
5515 	struct cvmx_ciu_pci_inta_s cn38xxp2;
5516 	struct cvmx_ciu_pci_inta_s cn50xx;
5517 	struct cvmx_ciu_pci_inta_s cn52xx;
5518 	struct cvmx_ciu_pci_inta_s cn52xxp1;
5519 	struct cvmx_ciu_pci_inta_s cn56xx;
5520 	struct cvmx_ciu_pci_inta_s cn56xxp1;
5521 	struct cvmx_ciu_pci_inta_s cn58xx;
5522 	struct cvmx_ciu_pci_inta_s cn58xxp1;
5523 	struct cvmx_ciu_pci_inta_s cn61xx;
5524 	struct cvmx_ciu_pci_inta_s cn63xx;
5525 	struct cvmx_ciu_pci_inta_s cn63xxp1;
5526 	struct cvmx_ciu_pci_inta_s cn66xx;
5527 	struct cvmx_ciu_pci_inta_s cn68xx;
5528 	struct cvmx_ciu_pci_inta_s cn68xxp1;
5529 	struct cvmx_ciu_pci_inta_s cn70xx;
5530 	struct cvmx_ciu_pci_inta_s cn70xxp1;
5531 	struct cvmx_ciu_pci_inta_s cnf71xx;
5532 };
5533 
5534 typedef union cvmx_ciu_pci_inta cvmx_ciu_pci_inta_t;
5535 
5536 /**
5537  * cvmx_ciu_pp_bist_stat
5538  */
5539 union cvmx_ciu_pp_bist_stat {
5540 	u64 u64;
5541 	struct cvmx_ciu_pp_bist_stat_s {
5542 		u64 reserved_32_63 : 32;
5543 		u64 pp_bist : 32;
5544 	} s;
5545 	struct cvmx_ciu_pp_bist_stat_s cn68xx;
5546 	struct cvmx_ciu_pp_bist_stat_s cn68xxp1;
5547 };
5548 
5549 typedef union cvmx_ciu_pp_bist_stat cvmx_ciu_pp_bist_stat_t;
5550 
5551 /**
5552  * cvmx_ciu_pp_dbg
5553  */
5554 union cvmx_ciu_pp_dbg {
5555 	u64 u64;
5556 	struct cvmx_ciu_pp_dbg_s {
5557 		u64 reserved_48_63 : 16;
5558 		u64 ppdbg : 48;
5559 	} s;
5560 	struct cvmx_ciu_pp_dbg_cn30xx {
5561 		u64 reserved_1_63 : 63;
5562 		u64 ppdbg : 1;
5563 	} cn30xx;
5564 	struct cvmx_ciu_pp_dbg_cn31xx {
5565 		u64 reserved_2_63 : 62;
5566 		u64 ppdbg : 2;
5567 	} cn31xx;
5568 	struct cvmx_ciu_pp_dbg_cn38xx {
5569 		u64 reserved_16_63 : 48;
5570 		u64 ppdbg : 16;
5571 	} cn38xx;
5572 	struct cvmx_ciu_pp_dbg_cn38xx cn38xxp2;
5573 	struct cvmx_ciu_pp_dbg_cn31xx cn50xx;
5574 	struct cvmx_ciu_pp_dbg_cn52xx {
5575 		u64 reserved_4_63 : 60;
5576 		u64 ppdbg : 4;
5577 	} cn52xx;
5578 	struct cvmx_ciu_pp_dbg_cn52xx cn52xxp1;
5579 	struct cvmx_ciu_pp_dbg_cn56xx {
5580 		u64 reserved_12_63 : 52;
5581 		u64 ppdbg : 12;
5582 	} cn56xx;
5583 	struct cvmx_ciu_pp_dbg_cn56xx cn56xxp1;
5584 	struct cvmx_ciu_pp_dbg_cn38xx cn58xx;
5585 	struct cvmx_ciu_pp_dbg_cn38xx cn58xxp1;
5586 	struct cvmx_ciu_pp_dbg_cn52xx cn61xx;
5587 	struct cvmx_ciu_pp_dbg_cn63xx {
5588 		u64 reserved_6_63 : 58;
5589 		u64 ppdbg : 6;
5590 	} cn63xx;
5591 	struct cvmx_ciu_pp_dbg_cn63xx cn63xxp1;
5592 	struct cvmx_ciu_pp_dbg_cn66xx {
5593 		u64 reserved_10_63 : 54;
5594 		u64 ppdbg : 10;
5595 	} cn66xx;
5596 	struct cvmx_ciu_pp_dbg_cn68xx {
5597 		u64 reserved_32_63 : 32;
5598 		u64 ppdbg : 32;
5599 	} cn68xx;
5600 	struct cvmx_ciu_pp_dbg_cn68xx cn68xxp1;
5601 	struct cvmx_ciu_pp_dbg_cn52xx cn70xx;
5602 	struct cvmx_ciu_pp_dbg_cn52xx cn70xxp1;
5603 	struct cvmx_ciu_pp_dbg_cn38xx cn73xx;
5604 	struct cvmx_ciu_pp_dbg_s cn78xx;
5605 	struct cvmx_ciu_pp_dbg_s cn78xxp1;
5606 	struct cvmx_ciu_pp_dbg_cn52xx cnf71xx;
5607 	struct cvmx_ciu_pp_dbg_cn38xx cnf75xx;
5608 };
5609 
5610 typedef union cvmx_ciu_pp_dbg cvmx_ciu_pp_dbg_t;
5611 
5612 /**
5613  * cvmx_ciu_pp_poke#
5614  *
5615  * CIU_PP_POKE for CIU_WDOG
5616  *
5617  */
5618 union cvmx_ciu_pp_pokex {
5619 	u64 u64;
5620 	struct cvmx_ciu_pp_pokex_s {
5621 		u64 poke : 64;
5622 	} s;
5623 	struct cvmx_ciu_pp_pokex_s cn30xx;
5624 	struct cvmx_ciu_pp_pokex_s cn31xx;
5625 	struct cvmx_ciu_pp_pokex_s cn38xx;
5626 	struct cvmx_ciu_pp_pokex_s cn38xxp2;
5627 	struct cvmx_ciu_pp_pokex_s cn50xx;
5628 	struct cvmx_ciu_pp_pokex_s cn52xx;
5629 	struct cvmx_ciu_pp_pokex_s cn52xxp1;
5630 	struct cvmx_ciu_pp_pokex_s cn56xx;
5631 	struct cvmx_ciu_pp_pokex_s cn56xxp1;
5632 	struct cvmx_ciu_pp_pokex_s cn58xx;
5633 	struct cvmx_ciu_pp_pokex_s cn58xxp1;
5634 	struct cvmx_ciu_pp_pokex_s cn61xx;
5635 	struct cvmx_ciu_pp_pokex_s cn63xx;
5636 	struct cvmx_ciu_pp_pokex_s cn63xxp1;
5637 	struct cvmx_ciu_pp_pokex_s cn66xx;
5638 	struct cvmx_ciu_pp_pokex_s cn68xx;
5639 	struct cvmx_ciu_pp_pokex_s cn68xxp1;
5640 	struct cvmx_ciu_pp_pokex_s cn70xx;
5641 	struct cvmx_ciu_pp_pokex_s cn70xxp1;
5642 	struct cvmx_ciu_pp_pokex_cn73xx {
5643 		u64 reserved_1_63 : 63;
5644 		u64 poke : 1;
5645 	} cn73xx;
5646 	struct cvmx_ciu_pp_pokex_cn73xx cn78xx;
5647 	struct cvmx_ciu_pp_pokex_cn73xx cn78xxp1;
5648 	struct cvmx_ciu_pp_pokex_s cnf71xx;
5649 	struct cvmx_ciu_pp_pokex_cn73xx cnf75xx;
5650 };
5651 
5652 typedef union cvmx_ciu_pp_pokex cvmx_ciu_pp_pokex_t;
5653 
5654 /**
5655  * cvmx_ciu_pp_rst
5656  *
5657  * This register contains the reset control for each core. A 1 holds a core in reset, 0 release
5658  * from reset. It resets to all ones when REMOTE_BOOT is enabled or all ones excluding bit 0 when
5659  * REMOTE_BOOT is disabled. Writes to this register should occur only if the CIU_PP_RST_PENDING
5660  * register is cleared.
5661  */
5662 union cvmx_ciu_pp_rst {
5663 	u64 u64;
5664 	struct cvmx_ciu_pp_rst_s {
5665 		u64 reserved_48_63 : 16;
5666 		u64 rst : 47;
5667 		u64 rst0 : 1;
5668 	} s;
5669 	struct cvmx_ciu_pp_rst_cn30xx {
5670 		u64 reserved_1_63 : 63;
5671 		u64 rst0 : 1;
5672 	} cn30xx;
5673 	struct cvmx_ciu_pp_rst_cn31xx {
5674 		u64 reserved_2_63 : 62;
5675 		u64 rst : 1;
5676 		u64 rst0 : 1;
5677 	} cn31xx;
5678 	struct cvmx_ciu_pp_rst_cn38xx {
5679 		u64 reserved_16_63 : 48;
5680 		u64 rst : 15;
5681 		u64 rst0 : 1;
5682 	} cn38xx;
5683 	struct cvmx_ciu_pp_rst_cn38xx cn38xxp2;
5684 	struct cvmx_ciu_pp_rst_cn31xx cn50xx;
5685 	struct cvmx_ciu_pp_rst_cn52xx {
5686 		u64 reserved_4_63 : 60;
5687 		u64 rst : 3;
5688 		u64 rst0 : 1;
5689 	} cn52xx;
5690 	struct cvmx_ciu_pp_rst_cn52xx cn52xxp1;
5691 	struct cvmx_ciu_pp_rst_cn56xx {
5692 		u64 reserved_12_63 : 52;
5693 		u64 rst : 11;
5694 		u64 rst0 : 1;
5695 	} cn56xx;
5696 	struct cvmx_ciu_pp_rst_cn56xx cn56xxp1;
5697 	struct cvmx_ciu_pp_rst_cn38xx cn58xx;
5698 	struct cvmx_ciu_pp_rst_cn38xx cn58xxp1;
5699 	struct cvmx_ciu_pp_rst_cn52xx cn61xx;
5700 	struct cvmx_ciu_pp_rst_cn63xx {
5701 		u64 reserved_6_63 : 58;
5702 		u64 rst : 5;
5703 		u64 rst0 : 1;
5704 	} cn63xx;
5705 	struct cvmx_ciu_pp_rst_cn63xx cn63xxp1;
5706 	struct cvmx_ciu_pp_rst_cn66xx {
5707 		u64 reserved_10_63 : 54;
5708 		u64 rst : 9;
5709 		u64 rst0 : 1;
5710 	} cn66xx;
5711 	struct cvmx_ciu_pp_rst_cn68xx {
5712 		u64 reserved_32_63 : 32;
5713 		u64 rst : 31;
5714 		u64 rst0 : 1;
5715 	} cn68xx;
5716 	struct cvmx_ciu_pp_rst_cn68xx cn68xxp1;
5717 	struct cvmx_ciu_pp_rst_cn52xx cn70xx;
5718 	struct cvmx_ciu_pp_rst_cn52xx cn70xxp1;
5719 	struct cvmx_ciu_pp_rst_cn38xx cn73xx;
5720 	struct cvmx_ciu_pp_rst_s cn78xx;
5721 	struct cvmx_ciu_pp_rst_s cn78xxp1;
5722 	struct cvmx_ciu_pp_rst_cn52xx cnf71xx;
5723 	struct cvmx_ciu_pp_rst_cn38xx cnf75xx;
5724 };
5725 
5726 typedef union cvmx_ciu_pp_rst cvmx_ciu_pp_rst_t;
5727 
5728 /**
5729  * cvmx_ciu_pp_rst_pending
5730  *
5731  * This register contains the reset status for each core.
5732  *
5733  */
5734 union cvmx_ciu_pp_rst_pending {
5735 	u64 u64;
5736 	struct cvmx_ciu_pp_rst_pending_s {
5737 		u64 reserved_48_63 : 16;
5738 		u64 pend : 48;
5739 	} s;
5740 	struct cvmx_ciu_pp_rst_pending_s cn70xx;
5741 	struct cvmx_ciu_pp_rst_pending_s cn70xxp1;
5742 	struct cvmx_ciu_pp_rst_pending_cn73xx {
5743 		u64 reserved_16_63 : 48;
5744 		u64 pend : 16;
5745 	} cn73xx;
5746 	struct cvmx_ciu_pp_rst_pending_s cn78xx;
5747 	struct cvmx_ciu_pp_rst_pending_s cn78xxp1;
5748 	struct cvmx_ciu_pp_rst_pending_cn73xx cnf75xx;
5749 };
5750 
5751 typedef union cvmx_ciu_pp_rst_pending cvmx_ciu_pp_rst_pending_t;
5752 
5753 /**
5754  * cvmx_ciu_qlm0
5755  *
5756  * Notes:
5757  * This register is only reset by cold reset.
5758  *
5759  */
5760 union cvmx_ciu_qlm0 {
5761 	u64 u64;
5762 	struct cvmx_ciu_qlm0_s {
5763 		u64 g2bypass : 1;
5764 		u64 reserved_53_62 : 10;
5765 		u64 g2deemph : 5;
5766 		u64 reserved_45_47 : 3;
5767 		u64 g2margin : 5;
5768 		u64 reserved_32_39 : 8;
5769 		u64 txbypass : 1;
5770 		u64 reserved_21_30 : 10;
5771 		u64 txdeemph : 5;
5772 		u64 reserved_13_15 : 3;
5773 		u64 txmargin : 5;
5774 		u64 reserved_4_7 : 4;
5775 		u64 lane_en : 4;
5776 	} s;
5777 	struct cvmx_ciu_qlm0_s cn61xx;
5778 	struct cvmx_ciu_qlm0_s cn63xx;
5779 	struct cvmx_ciu_qlm0_cn63xxp1 {
5780 		u64 reserved_32_63 : 32;
5781 		u64 txbypass : 1;
5782 		u64 reserved_20_30 : 11;
5783 		u64 txdeemph : 4;
5784 		u64 reserved_13_15 : 3;
5785 		u64 txmargin : 5;
5786 		u64 reserved_4_7 : 4;
5787 		u64 lane_en : 4;
5788 	} cn63xxp1;
5789 	struct cvmx_ciu_qlm0_s cn66xx;
5790 	struct cvmx_ciu_qlm0_cn68xx {
5791 		u64 reserved_32_63 : 32;
5792 		u64 txbypass : 1;
5793 		u64 reserved_21_30 : 10;
5794 		u64 txdeemph : 5;
5795 		u64 reserved_13_15 : 3;
5796 		u64 txmargin : 5;
5797 		u64 reserved_4_7 : 4;
5798 		u64 lane_en : 4;
5799 	} cn68xx;
5800 	struct cvmx_ciu_qlm0_cn68xx cn68xxp1;
5801 	struct cvmx_ciu_qlm0_s cnf71xx;
5802 };
5803 
5804 typedef union cvmx_ciu_qlm0 cvmx_ciu_qlm0_t;
5805 
5806 /**
5807  * cvmx_ciu_qlm1
5808  *
5809  * Notes:
5810  * This register is only reset by cold reset.
5811  *
5812  */
5813 union cvmx_ciu_qlm1 {
5814 	u64 u64;
5815 	struct cvmx_ciu_qlm1_s {
5816 		u64 g2bypass : 1;
5817 		u64 reserved_53_62 : 10;
5818 		u64 g2deemph : 5;
5819 		u64 reserved_45_47 : 3;
5820 		u64 g2margin : 5;
5821 		u64 reserved_32_39 : 8;
5822 		u64 txbypass : 1;
5823 		u64 reserved_21_30 : 10;
5824 		u64 txdeemph : 5;
5825 		u64 reserved_13_15 : 3;
5826 		u64 txmargin : 5;
5827 		u64 reserved_4_7 : 4;
5828 		u64 lane_en : 4;
5829 	} s;
5830 	struct cvmx_ciu_qlm1_s cn61xx;
5831 	struct cvmx_ciu_qlm1_s cn63xx;
5832 	struct cvmx_ciu_qlm1_cn63xxp1 {
5833 		u64 reserved_32_63 : 32;
5834 		u64 txbypass : 1;
5835 		u64 reserved_20_30 : 11;
5836 		u64 txdeemph : 4;
5837 		u64 reserved_13_15 : 3;
5838 		u64 txmargin : 5;
5839 		u64 reserved_4_7 : 4;
5840 		u64 lane_en : 4;
5841 	} cn63xxp1;
5842 	struct cvmx_ciu_qlm1_s cn66xx;
5843 	struct cvmx_ciu_qlm1_s cn68xx;
5844 	struct cvmx_ciu_qlm1_s cn68xxp1;
5845 	struct cvmx_ciu_qlm1_s cnf71xx;
5846 };
5847 
5848 typedef union cvmx_ciu_qlm1 cvmx_ciu_qlm1_t;
5849 
5850 /**
5851  * cvmx_ciu_qlm2
5852  *
5853  * Notes:
5854  * This register is only reset by cold reset.
5855  *
5856  */
5857 union cvmx_ciu_qlm2 {
5858 	u64 u64;
5859 	struct cvmx_ciu_qlm2_s {
5860 		u64 g2bypass : 1;
5861 		u64 reserved_53_62 : 10;
5862 		u64 g2deemph : 5;
5863 		u64 reserved_45_47 : 3;
5864 		u64 g2margin : 5;
5865 		u64 reserved_32_39 : 8;
5866 		u64 txbypass : 1;
5867 		u64 reserved_21_30 : 10;
5868 		u64 txdeemph : 5;
5869 		u64 reserved_13_15 : 3;
5870 		u64 txmargin : 5;
5871 		u64 reserved_4_7 : 4;
5872 		u64 lane_en : 4;
5873 	} s;
5874 	struct cvmx_ciu_qlm2_cn61xx {
5875 		u64 reserved_32_63 : 32;
5876 		u64 txbypass : 1;
5877 		u64 reserved_21_30 : 10;
5878 		u64 txdeemph : 5;
5879 		u64 reserved_13_15 : 3;
5880 		u64 txmargin : 5;
5881 		u64 reserved_4_7 : 4;
5882 		u64 lane_en : 4;
5883 	} cn61xx;
5884 	struct cvmx_ciu_qlm2_cn61xx cn63xx;
5885 	struct cvmx_ciu_qlm2_cn63xxp1 {
5886 		u64 reserved_32_63 : 32;
5887 		u64 txbypass : 1;
5888 		u64 reserved_20_30 : 11;
5889 		u64 txdeemph : 4;
5890 		u64 reserved_13_15 : 3;
5891 		u64 txmargin : 5;
5892 		u64 reserved_4_7 : 4;
5893 		u64 lane_en : 4;
5894 	} cn63xxp1;
5895 	struct cvmx_ciu_qlm2_cn61xx cn66xx;
5896 	struct cvmx_ciu_qlm2_s cn68xx;
5897 	struct cvmx_ciu_qlm2_s cn68xxp1;
5898 	struct cvmx_ciu_qlm2_cn61xx cnf71xx;
5899 };
5900 
5901 typedef union cvmx_ciu_qlm2 cvmx_ciu_qlm2_t;
5902 
5903 /**
5904  * cvmx_ciu_qlm3
5905  *
5906  * Notes:
5907  * This register is only reset by cold reset.
5908  *
5909  */
5910 union cvmx_ciu_qlm3 {
5911 	u64 u64;
5912 	struct cvmx_ciu_qlm3_s {
5913 		u64 g2bypass : 1;
5914 		u64 reserved_53_62 : 10;
5915 		u64 g2deemph : 5;
5916 		u64 reserved_45_47 : 3;
5917 		u64 g2margin : 5;
5918 		u64 reserved_32_39 : 8;
5919 		u64 txbypass : 1;
5920 		u64 reserved_21_30 : 10;
5921 		u64 txdeemph : 5;
5922 		u64 reserved_13_15 : 3;
5923 		u64 txmargin : 5;
5924 		u64 reserved_4_7 : 4;
5925 		u64 lane_en : 4;
5926 	} s;
5927 	struct cvmx_ciu_qlm3_s cn68xx;
5928 	struct cvmx_ciu_qlm3_s cn68xxp1;
5929 };
5930 
5931 typedef union cvmx_ciu_qlm3 cvmx_ciu_qlm3_t;
5932 
5933 /**
5934  * cvmx_ciu_qlm4
5935  *
5936  * Notes:
5937  * This register is only reset by cold reset.
5938  *
5939  */
5940 union cvmx_ciu_qlm4 {
5941 	u64 u64;
5942 	struct cvmx_ciu_qlm4_s {
5943 		u64 g2bypass : 1;
5944 		u64 reserved_53_62 : 10;
5945 		u64 g2deemph : 5;
5946 		u64 reserved_45_47 : 3;
5947 		u64 g2margin : 5;
5948 		u64 reserved_32_39 : 8;
5949 		u64 txbypass : 1;
5950 		u64 reserved_21_30 : 10;
5951 		u64 txdeemph : 5;
5952 		u64 reserved_13_15 : 3;
5953 		u64 txmargin : 5;
5954 		u64 reserved_4_7 : 4;
5955 		u64 lane_en : 4;
5956 	} s;
5957 	struct cvmx_ciu_qlm4_s cn68xx;
5958 	struct cvmx_ciu_qlm4_s cn68xxp1;
5959 };
5960 
5961 typedef union cvmx_ciu_qlm4 cvmx_ciu_qlm4_t;
5962 
5963 /**
5964  * cvmx_ciu_qlm_dcok
5965  */
5966 union cvmx_ciu_qlm_dcok {
5967 	u64 u64;
5968 	struct cvmx_ciu_qlm_dcok_s {
5969 		u64 reserved_4_63 : 60;
5970 		u64 qlm_dcok : 4;
5971 	} s;
5972 	struct cvmx_ciu_qlm_dcok_cn52xx {
5973 		u64 reserved_2_63 : 62;
5974 		u64 qlm_dcok : 2;
5975 	} cn52xx;
5976 	struct cvmx_ciu_qlm_dcok_cn52xx cn52xxp1;
5977 	struct cvmx_ciu_qlm_dcok_s cn56xx;
5978 	struct cvmx_ciu_qlm_dcok_s cn56xxp1;
5979 };
5980 
5981 typedef union cvmx_ciu_qlm_dcok cvmx_ciu_qlm_dcok_t;
5982 
5983 /**
5984  * cvmx_ciu_qlm_jtgc
5985  */
5986 union cvmx_ciu_qlm_jtgc {
5987 	u64 u64;
5988 	struct cvmx_ciu_qlm_jtgc_s {
5989 		u64 reserved_17_63 : 47;
5990 		u64 bypass_ext : 1;
5991 		u64 reserved_11_15 : 5;
5992 		u64 clk_div : 3;
5993 		u64 reserved_7_7 : 1;
5994 		u64 mux_sel : 3;
5995 		u64 bypass : 4;
5996 	} s;
5997 	struct cvmx_ciu_qlm_jtgc_cn52xx {
5998 		u64 reserved_11_63 : 53;
5999 		u64 clk_div : 3;
6000 		u64 reserved_5_7 : 3;
6001 		u64 mux_sel : 1;
6002 		u64 reserved_2_3 : 2;
6003 		u64 bypass : 2;
6004 	} cn52xx;
6005 	struct cvmx_ciu_qlm_jtgc_cn52xx cn52xxp1;
6006 	struct cvmx_ciu_qlm_jtgc_cn56xx {
6007 		u64 reserved_11_63 : 53;
6008 		u64 clk_div : 3;
6009 		u64 reserved_6_7 : 2;
6010 		u64 mux_sel : 2;
6011 		u64 bypass : 4;
6012 	} cn56xx;
6013 	struct cvmx_ciu_qlm_jtgc_cn56xx cn56xxp1;
6014 	struct cvmx_ciu_qlm_jtgc_cn61xx {
6015 		u64 reserved_11_63 : 53;
6016 		u64 clk_div : 3;
6017 		u64 reserved_6_7 : 2;
6018 		u64 mux_sel : 2;
6019 		u64 reserved_3_3 : 1;
6020 		u64 bypass : 3;
6021 	} cn61xx;
6022 	struct cvmx_ciu_qlm_jtgc_cn61xx cn63xx;
6023 	struct cvmx_ciu_qlm_jtgc_cn61xx cn63xxp1;
6024 	struct cvmx_ciu_qlm_jtgc_cn61xx cn66xx;
6025 	struct cvmx_ciu_qlm_jtgc_s cn68xx;
6026 	struct cvmx_ciu_qlm_jtgc_s cn68xxp1;
6027 	struct cvmx_ciu_qlm_jtgc_cn61xx cnf71xx;
6028 };
6029 
6030 typedef union cvmx_ciu_qlm_jtgc cvmx_ciu_qlm_jtgc_t;
6031 
6032 /**
6033  * cvmx_ciu_qlm_jtgd
6034  */
6035 union cvmx_ciu_qlm_jtgd {
6036 	u64 u64;
6037 	struct cvmx_ciu_qlm_jtgd_s {
6038 		u64 capture : 1;
6039 		u64 shift : 1;
6040 		u64 update : 1;
6041 		u64 reserved_45_60 : 16;
6042 		u64 select : 5;
6043 		u64 reserved_37_39 : 3;
6044 		u64 shft_cnt : 5;
6045 		u64 shft_reg : 32;
6046 	} s;
6047 	struct cvmx_ciu_qlm_jtgd_cn52xx {
6048 		u64 capture : 1;
6049 		u64 shift : 1;
6050 		u64 update : 1;
6051 		u64 reserved_42_60 : 19;
6052 		u64 select : 2;
6053 		u64 reserved_37_39 : 3;
6054 		u64 shft_cnt : 5;
6055 		u64 shft_reg : 32;
6056 	} cn52xx;
6057 	struct cvmx_ciu_qlm_jtgd_cn52xx cn52xxp1;
6058 	struct cvmx_ciu_qlm_jtgd_cn56xx {
6059 		u64 capture : 1;
6060 		u64 shift : 1;
6061 		u64 update : 1;
6062 		u64 reserved_44_60 : 17;
6063 		u64 select : 4;
6064 		u64 reserved_37_39 : 3;
6065 		u64 shft_cnt : 5;
6066 		u64 shft_reg : 32;
6067 	} cn56xx;
6068 	struct cvmx_ciu_qlm_jtgd_cn56xxp1 {
6069 		u64 capture : 1;
6070 		u64 shift : 1;
6071 		u64 update : 1;
6072 		u64 reserved_37_60 : 24;
6073 		u64 shft_cnt : 5;
6074 		u64 shft_reg : 32;
6075 	} cn56xxp1;
6076 	struct cvmx_ciu_qlm_jtgd_cn61xx {
6077 		u64 capture : 1;
6078 		u64 shift : 1;
6079 		u64 update : 1;
6080 		u64 reserved_43_60 : 18;
6081 		u64 select : 3;
6082 		u64 reserved_37_39 : 3;
6083 		u64 shft_cnt : 5;
6084 		u64 shft_reg : 32;
6085 	} cn61xx;
6086 	struct cvmx_ciu_qlm_jtgd_cn61xx cn63xx;
6087 	struct cvmx_ciu_qlm_jtgd_cn61xx cn63xxp1;
6088 	struct cvmx_ciu_qlm_jtgd_cn61xx cn66xx;
6089 	struct cvmx_ciu_qlm_jtgd_s cn68xx;
6090 	struct cvmx_ciu_qlm_jtgd_s cn68xxp1;
6091 	struct cvmx_ciu_qlm_jtgd_cn61xx cnf71xx;
6092 };
6093 
6094 typedef union cvmx_ciu_qlm_jtgd cvmx_ciu_qlm_jtgd_t;
6095 
6096 /**
6097  * cvmx_ciu_soft_bist
6098  */
6099 union cvmx_ciu_soft_bist {
6100 	u64 u64;
6101 	struct cvmx_ciu_soft_bist_s {
6102 		u64 reserved_1_63 : 63;
6103 		u64 soft_bist : 1;
6104 	} s;
6105 	struct cvmx_ciu_soft_bist_s cn30xx;
6106 	struct cvmx_ciu_soft_bist_s cn31xx;
6107 	struct cvmx_ciu_soft_bist_s cn38xx;
6108 	struct cvmx_ciu_soft_bist_s cn38xxp2;
6109 	struct cvmx_ciu_soft_bist_s cn50xx;
6110 	struct cvmx_ciu_soft_bist_s cn52xx;
6111 	struct cvmx_ciu_soft_bist_s cn52xxp1;
6112 	struct cvmx_ciu_soft_bist_s cn56xx;
6113 	struct cvmx_ciu_soft_bist_s cn56xxp1;
6114 	struct cvmx_ciu_soft_bist_s cn58xx;
6115 	struct cvmx_ciu_soft_bist_s cn58xxp1;
6116 	struct cvmx_ciu_soft_bist_s cn61xx;
6117 	struct cvmx_ciu_soft_bist_s cn63xx;
6118 	struct cvmx_ciu_soft_bist_s cn63xxp1;
6119 	struct cvmx_ciu_soft_bist_s cn66xx;
6120 	struct cvmx_ciu_soft_bist_s cn68xx;
6121 	struct cvmx_ciu_soft_bist_s cn68xxp1;
6122 	struct cvmx_ciu_soft_bist_s cn70xx;
6123 	struct cvmx_ciu_soft_bist_s cn70xxp1;
6124 	struct cvmx_ciu_soft_bist_s cnf71xx;
6125 };
6126 
6127 typedef union cvmx_ciu_soft_bist cvmx_ciu_soft_bist_t;
6128 
6129 /**
6130  * cvmx_ciu_soft_prst
6131  */
6132 union cvmx_ciu_soft_prst {
6133 	u64 u64;
6134 	struct cvmx_ciu_soft_prst_s {
6135 		u64 reserved_3_63 : 61;
6136 		u64 host64 : 1;
6137 		u64 npi : 1;
6138 		u64 soft_prst : 1;
6139 	} s;
6140 	struct cvmx_ciu_soft_prst_s cn30xx;
6141 	struct cvmx_ciu_soft_prst_s cn31xx;
6142 	struct cvmx_ciu_soft_prst_s cn38xx;
6143 	struct cvmx_ciu_soft_prst_s cn38xxp2;
6144 	struct cvmx_ciu_soft_prst_s cn50xx;
6145 	struct cvmx_ciu_soft_prst_cn52xx {
6146 		u64 reserved_1_63 : 63;
6147 		u64 soft_prst : 1;
6148 	} cn52xx;
6149 	struct cvmx_ciu_soft_prst_cn52xx cn52xxp1;
6150 	struct cvmx_ciu_soft_prst_cn52xx cn56xx;
6151 	struct cvmx_ciu_soft_prst_cn52xx cn56xxp1;
6152 	struct cvmx_ciu_soft_prst_s cn58xx;
6153 	struct cvmx_ciu_soft_prst_s cn58xxp1;
6154 	struct cvmx_ciu_soft_prst_cn52xx cn61xx;
6155 	struct cvmx_ciu_soft_prst_cn52xx cn63xx;
6156 	struct cvmx_ciu_soft_prst_cn52xx cn63xxp1;
6157 	struct cvmx_ciu_soft_prst_cn52xx cn66xx;
6158 	struct cvmx_ciu_soft_prst_cn52xx cn68xx;
6159 	struct cvmx_ciu_soft_prst_cn52xx cn68xxp1;
6160 	struct cvmx_ciu_soft_prst_cn52xx cnf71xx;
6161 };
6162 
6163 typedef union cvmx_ciu_soft_prst cvmx_ciu_soft_prst_t;
6164 
6165 /**
6166  * cvmx_ciu_soft_prst1
6167  */
6168 union cvmx_ciu_soft_prst1 {
6169 	u64 u64;
6170 	struct cvmx_ciu_soft_prst1_s {
6171 		u64 reserved_1_63 : 63;
6172 		u64 soft_prst : 1;
6173 	} s;
6174 	struct cvmx_ciu_soft_prst1_s cn52xx;
6175 	struct cvmx_ciu_soft_prst1_s cn52xxp1;
6176 	struct cvmx_ciu_soft_prst1_s cn56xx;
6177 	struct cvmx_ciu_soft_prst1_s cn56xxp1;
6178 	struct cvmx_ciu_soft_prst1_s cn61xx;
6179 	struct cvmx_ciu_soft_prst1_s cn63xx;
6180 	struct cvmx_ciu_soft_prst1_s cn63xxp1;
6181 	struct cvmx_ciu_soft_prst1_s cn66xx;
6182 	struct cvmx_ciu_soft_prst1_s cn68xx;
6183 	struct cvmx_ciu_soft_prst1_s cn68xxp1;
6184 	struct cvmx_ciu_soft_prst1_s cnf71xx;
6185 };
6186 
6187 typedef union cvmx_ciu_soft_prst1 cvmx_ciu_soft_prst1_t;
6188 
6189 /**
6190  * cvmx_ciu_soft_prst2
6191  */
6192 union cvmx_ciu_soft_prst2 {
6193 	u64 u64;
6194 	struct cvmx_ciu_soft_prst2_s {
6195 		u64 reserved_1_63 : 63;
6196 		u64 soft_prst : 1;
6197 	} s;
6198 	struct cvmx_ciu_soft_prst2_s cn66xx;
6199 };
6200 
6201 typedef union cvmx_ciu_soft_prst2 cvmx_ciu_soft_prst2_t;
6202 
6203 /**
6204  * cvmx_ciu_soft_prst3
6205  */
6206 union cvmx_ciu_soft_prst3 {
6207 	u64 u64;
6208 	struct cvmx_ciu_soft_prst3_s {
6209 		u64 reserved_1_63 : 63;
6210 		u64 soft_prst : 1;
6211 	} s;
6212 	struct cvmx_ciu_soft_prst3_s cn66xx;
6213 };
6214 
6215 typedef union cvmx_ciu_soft_prst3 cvmx_ciu_soft_prst3_t;
6216 
6217 /**
6218  * cvmx_ciu_soft_rst
6219  */
6220 union cvmx_ciu_soft_rst {
6221 	u64 u64;
6222 	struct cvmx_ciu_soft_rst_s {
6223 		u64 reserved_1_63 : 63;
6224 		u64 soft_rst : 1;
6225 	} s;
6226 	struct cvmx_ciu_soft_rst_s cn30xx;
6227 	struct cvmx_ciu_soft_rst_s cn31xx;
6228 	struct cvmx_ciu_soft_rst_s cn38xx;
6229 	struct cvmx_ciu_soft_rst_s cn38xxp2;
6230 	struct cvmx_ciu_soft_rst_s cn50xx;
6231 	struct cvmx_ciu_soft_rst_s cn52xx;
6232 	struct cvmx_ciu_soft_rst_s cn52xxp1;
6233 	struct cvmx_ciu_soft_rst_s cn56xx;
6234 	struct cvmx_ciu_soft_rst_s cn56xxp1;
6235 	struct cvmx_ciu_soft_rst_s cn58xx;
6236 	struct cvmx_ciu_soft_rst_s cn58xxp1;
6237 	struct cvmx_ciu_soft_rst_s cn61xx;
6238 	struct cvmx_ciu_soft_rst_s cn63xx;
6239 	struct cvmx_ciu_soft_rst_s cn63xxp1;
6240 	struct cvmx_ciu_soft_rst_s cn66xx;
6241 	struct cvmx_ciu_soft_rst_s cn68xx;
6242 	struct cvmx_ciu_soft_rst_s cn68xxp1;
6243 	struct cvmx_ciu_soft_rst_s cnf71xx;
6244 };
6245 
6246 typedef union cvmx_ciu_soft_rst cvmx_ciu_soft_rst_t;
6247 
6248 /**
6249  * cvmx_ciu_sum1_io#_int
6250  *
6251  * CIU_SUM1_IO0_INT is for PEM0, CIU_SUM1_IO1_INT is reserved.
6252  *
6253  */
6254 union cvmx_ciu_sum1_iox_int {
6255 	u64 u64;
6256 	struct cvmx_ciu_sum1_iox_int_s {
6257 		u64 rst : 1;
6258 		u64 reserved_62_62 : 1;
6259 		u64 srio3 : 1;
6260 		u64 srio2 : 1;
6261 		u64 reserved_57_59 : 3;
6262 		u64 dfm : 1;
6263 		u64 reserved_53_55 : 3;
6264 		u64 lmc0 : 1;
6265 		u64 reserved_50_51 : 2;
6266 		u64 pem1 : 1;
6267 		u64 pem0 : 1;
6268 		u64 ptp : 1;
6269 		u64 agl : 1;
6270 		u64 reserved_41_45 : 5;
6271 		u64 dpi_dma : 1;
6272 		u64 reserved_38_39 : 2;
6273 		u64 agx1 : 1;
6274 		u64 agx0 : 1;
6275 		u64 dpi : 1;
6276 		u64 sli : 1;
6277 		u64 usb : 1;
6278 		u64 dfa : 1;
6279 		u64 key : 1;
6280 		u64 rad : 1;
6281 		u64 tim : 1;
6282 		u64 zip : 1;
6283 		u64 pko : 1;
6284 		u64 pip : 1;
6285 		u64 ipd : 1;
6286 		u64 l2c : 1;
6287 		u64 pow : 1;
6288 		u64 fpa : 1;
6289 		u64 iob : 1;
6290 		u64 mio : 1;
6291 		u64 nand : 1;
6292 		u64 mii1 : 1;
6293 		u64 usb1 : 1;
6294 		u64 reserved_10_16 : 7;
6295 		u64 wdog : 10;
6296 	} s;
6297 	struct cvmx_ciu_sum1_iox_int_cn61xx {
6298 		u64 rst : 1;
6299 		u64 reserved_53_62 : 10;
6300 		u64 lmc0 : 1;
6301 		u64 reserved_50_51 : 2;
6302 		u64 pem1 : 1;
6303 		u64 pem0 : 1;
6304 		u64 ptp : 1;
6305 		u64 agl : 1;
6306 		u64 reserved_41_45 : 5;
6307 		u64 dpi_dma : 1;
6308 		u64 reserved_38_39 : 2;
6309 		u64 agx1 : 1;
6310 		u64 agx0 : 1;
6311 		u64 dpi : 1;
6312 		u64 sli : 1;
6313 		u64 usb : 1;
6314 		u64 dfa : 1;
6315 		u64 key : 1;
6316 		u64 rad : 1;
6317 		u64 tim : 1;
6318 		u64 zip : 1;
6319 		u64 pko : 1;
6320 		u64 pip : 1;
6321 		u64 ipd : 1;
6322 		u64 l2c : 1;
6323 		u64 pow : 1;
6324 		u64 fpa : 1;
6325 		u64 iob : 1;
6326 		u64 mio : 1;
6327 		u64 nand : 1;
6328 		u64 mii1 : 1;
6329 		u64 reserved_4_17 : 14;
6330 		u64 wdog : 4;
6331 	} cn61xx;
6332 	struct cvmx_ciu_sum1_iox_int_cn66xx {
6333 		u64 rst : 1;
6334 		u64 reserved_62_62 : 1;
6335 		u64 srio3 : 1;
6336 		u64 srio2 : 1;
6337 		u64 reserved_57_59 : 3;
6338 		u64 dfm : 1;
6339 		u64 reserved_53_55 : 3;
6340 		u64 lmc0 : 1;
6341 		u64 reserved_51_51 : 1;
6342 		u64 srio0 : 1;
6343 		u64 pem1 : 1;
6344 		u64 pem0 : 1;
6345 		u64 ptp : 1;
6346 		u64 agl : 1;
6347 		u64 reserved_38_45 : 8;
6348 		u64 agx1 : 1;
6349 		u64 agx0 : 1;
6350 		u64 dpi : 1;
6351 		u64 sli : 1;
6352 		u64 usb : 1;
6353 		u64 dfa : 1;
6354 		u64 key : 1;
6355 		u64 rad : 1;
6356 		u64 tim : 1;
6357 		u64 zip : 1;
6358 		u64 pko : 1;
6359 		u64 pip : 1;
6360 		u64 ipd : 1;
6361 		u64 l2c : 1;
6362 		u64 pow : 1;
6363 		u64 fpa : 1;
6364 		u64 iob : 1;
6365 		u64 mio : 1;
6366 		u64 nand : 1;
6367 		u64 mii1 : 1;
6368 		u64 reserved_10_17 : 8;
6369 		u64 wdog : 10;
6370 	} cn66xx;
6371 	struct cvmx_ciu_sum1_iox_int_cn70xx {
6372 		u64 rst : 1;
6373 		u64 reserved_53_62 : 10;
6374 		u64 lmc0 : 1;
6375 		u64 reserved_51_51 : 1;
6376 		u64 pem2 : 1;
6377 		u64 pem1 : 1;
6378 		u64 pem0 : 1;
6379 		u64 ptp : 1;
6380 		u64 agl : 1;
6381 		u64 reserved_41_45 : 5;
6382 		u64 dpi_dma : 1;
6383 		u64 reserved_38_39 : 2;
6384 		u64 agx1 : 1;
6385 		u64 agx0 : 1;
6386 		u64 dpi : 1;
6387 		u64 sli : 1;
6388 		u64 usb : 1;
6389 		u64 dfa : 1;
6390 		u64 key : 1;
6391 		u64 rad : 1;
6392 		u64 tim : 1;
6393 		u64 reserved_28_28 : 1;
6394 		u64 pko : 1;
6395 		u64 pip : 1;
6396 		u64 ipd : 1;
6397 		u64 l2c : 1;
6398 		u64 pow : 1;
6399 		u64 fpa : 1;
6400 		u64 iob : 1;
6401 		u64 mio : 1;
6402 		u64 nand : 1;
6403 		u64 reserved_18_18 : 1;
6404 		u64 usb1 : 1;
6405 		u64 reserved_4_16 : 13;
6406 		u64 wdog : 4;
6407 	} cn70xx;
6408 	struct cvmx_ciu_sum1_iox_int_cn70xx cn70xxp1;
6409 	struct cvmx_ciu_sum1_iox_int_cnf71xx {
6410 		u64 rst : 1;
6411 		u64 reserved_53_62 : 10;
6412 		u64 lmc0 : 1;
6413 		u64 reserved_50_51 : 2;
6414 		u64 pem1 : 1;
6415 		u64 pem0 : 1;
6416 		u64 ptp : 1;
6417 		u64 reserved_41_46 : 6;
6418 		u64 dpi_dma : 1;
6419 		u64 reserved_37_39 : 3;
6420 		u64 agx0 : 1;
6421 		u64 dpi : 1;
6422 		u64 sli : 1;
6423 		u64 usb : 1;
6424 		u64 reserved_32_32 : 1;
6425 		u64 key : 1;
6426 		u64 rad : 1;
6427 		u64 tim : 1;
6428 		u64 reserved_28_28 : 1;
6429 		u64 pko : 1;
6430 		u64 pip : 1;
6431 		u64 ipd : 1;
6432 		u64 l2c : 1;
6433 		u64 pow : 1;
6434 		u64 fpa : 1;
6435 		u64 iob : 1;
6436 		u64 mio : 1;
6437 		u64 nand : 1;
6438 		u64 reserved_4_18 : 15;
6439 		u64 wdog : 4;
6440 	} cnf71xx;
6441 };
6442 
6443 typedef union cvmx_ciu_sum1_iox_int cvmx_ciu_sum1_iox_int_t;
6444 
6445 /**
6446  * cvmx_ciu_sum1_pp#_ip2
6447  *
6448  * SUM1 becomes per IPx in o65/6 and afterwards. Only Field <40> DPI_DMA will have
6449  * different value per PP(IP) for  $CIU_SUM1_PPx_IPy, and <40> DPI_DMA will always
6450  * be zero for  $CIU_SUM1_IOX_INT. All other fields ([63:41] and [39:0]) values  are idential for
6451  * different PPs, same value as $CIU_INT_SUM1.
6452  * Write to any IRQ's PTP fields will clear PTP for all IRQ's PTP field.
6453  */
6454 union cvmx_ciu_sum1_ppx_ip2 {
6455 	u64 u64;
6456 	struct cvmx_ciu_sum1_ppx_ip2_s {
6457 		u64 rst : 1;
6458 		u64 reserved_62_62 : 1;
6459 		u64 srio3 : 1;
6460 		u64 srio2 : 1;
6461 		u64 reserved_57_59 : 3;
6462 		u64 dfm : 1;
6463 		u64 reserved_53_55 : 3;
6464 		u64 lmc0 : 1;
6465 		u64 reserved_50_51 : 2;
6466 		u64 pem1 : 1;
6467 		u64 pem0 : 1;
6468 		u64 ptp : 1;
6469 		u64 agl : 1;
6470 		u64 reserved_41_45 : 5;
6471 		u64 dpi_dma : 1;
6472 		u64 reserved_38_39 : 2;
6473 		u64 agx1 : 1;
6474 		u64 agx0 : 1;
6475 		u64 dpi : 1;
6476 		u64 sli : 1;
6477 		u64 usb : 1;
6478 		u64 dfa : 1;
6479 		u64 key : 1;
6480 		u64 rad : 1;
6481 		u64 tim : 1;
6482 		u64 zip : 1;
6483 		u64 pko : 1;
6484 		u64 pip : 1;
6485 		u64 ipd : 1;
6486 		u64 l2c : 1;
6487 		u64 pow : 1;
6488 		u64 fpa : 1;
6489 		u64 iob : 1;
6490 		u64 mio : 1;
6491 		u64 nand : 1;
6492 		u64 mii1 : 1;
6493 		u64 usb1 : 1;
6494 		u64 reserved_10_16 : 7;
6495 		u64 wdog : 10;
6496 	} s;
6497 	struct cvmx_ciu_sum1_ppx_ip2_cn61xx {
6498 		u64 rst : 1;
6499 		u64 reserved_53_62 : 10;
6500 		u64 lmc0 : 1;
6501 		u64 reserved_50_51 : 2;
6502 		u64 pem1 : 1;
6503 		u64 pem0 : 1;
6504 		u64 ptp : 1;
6505 		u64 agl : 1;
6506 		u64 reserved_41_45 : 5;
6507 		u64 dpi_dma : 1;
6508 		u64 reserved_38_39 : 2;
6509 		u64 agx1 : 1;
6510 		u64 agx0 : 1;
6511 		u64 dpi : 1;
6512 		u64 sli : 1;
6513 		u64 usb : 1;
6514 		u64 dfa : 1;
6515 		u64 key : 1;
6516 		u64 rad : 1;
6517 		u64 tim : 1;
6518 		u64 zip : 1;
6519 		u64 pko : 1;
6520 		u64 pip : 1;
6521 		u64 ipd : 1;
6522 		u64 l2c : 1;
6523 		u64 pow : 1;
6524 		u64 fpa : 1;
6525 		u64 iob : 1;
6526 		u64 mio : 1;
6527 		u64 nand : 1;
6528 		u64 mii1 : 1;
6529 		u64 reserved_4_17 : 14;
6530 		u64 wdog : 4;
6531 	} cn61xx;
6532 	struct cvmx_ciu_sum1_ppx_ip2_cn66xx {
6533 		u64 rst : 1;
6534 		u64 reserved_62_62 : 1;
6535 		u64 srio3 : 1;
6536 		u64 srio2 : 1;
6537 		u64 reserved_57_59 : 3;
6538 		u64 dfm : 1;
6539 		u64 reserved_53_55 : 3;
6540 		u64 lmc0 : 1;
6541 		u64 reserved_51_51 : 1;
6542 		u64 srio0 : 1;
6543 		u64 pem1 : 1;
6544 		u64 pem0 : 1;
6545 		u64 ptp : 1;
6546 		u64 agl : 1;
6547 		u64 reserved_38_45 : 8;
6548 		u64 agx1 : 1;
6549 		u64 agx0 : 1;
6550 		u64 dpi : 1;
6551 		u64 sli : 1;
6552 		u64 usb : 1;
6553 		u64 dfa : 1;
6554 		u64 key : 1;
6555 		u64 rad : 1;
6556 		u64 tim : 1;
6557 		u64 zip : 1;
6558 		u64 pko : 1;
6559 		u64 pip : 1;
6560 		u64 ipd : 1;
6561 		u64 l2c : 1;
6562 		u64 pow : 1;
6563 		u64 fpa : 1;
6564 		u64 iob : 1;
6565 		u64 mio : 1;
6566 		u64 nand : 1;
6567 		u64 mii1 : 1;
6568 		u64 reserved_10_17 : 8;
6569 		u64 wdog : 10;
6570 	} cn66xx;
6571 	struct cvmx_ciu_sum1_ppx_ip2_cn70xx {
6572 		u64 rst : 1;
6573 		u64 reserved_53_62 : 10;
6574 		u64 lmc0 : 1;
6575 		u64 reserved_51_51 : 1;
6576 		u64 pem2 : 1;
6577 		u64 pem1 : 1;
6578 		u64 pem0 : 1;
6579 		u64 ptp : 1;
6580 		u64 agl : 1;
6581 		u64 reserved_41_45 : 5;
6582 		u64 dpi_dma : 1;
6583 		u64 reserved_38_39 : 2;
6584 		u64 agx1 : 1;
6585 		u64 agx0 : 1;
6586 		u64 dpi : 1;
6587 		u64 sli : 1;
6588 		u64 usb : 1;
6589 		u64 dfa : 1;
6590 		u64 key : 1;
6591 		u64 rad : 1;
6592 		u64 tim : 1;
6593 		u64 reserved_28_28 : 1;
6594 		u64 pko : 1;
6595 		u64 pip : 1;
6596 		u64 ipd : 1;
6597 		u64 l2c : 1;
6598 		u64 pow : 1;
6599 		u64 fpa : 1;
6600 		u64 iob : 1;
6601 		u64 mio : 1;
6602 		u64 nand : 1;
6603 		u64 reserved_18_18 : 1;
6604 		u64 usb1 : 1;
6605 		u64 reserved_4_16 : 13;
6606 		u64 wdog : 4;
6607 	} cn70xx;
6608 	struct cvmx_ciu_sum1_ppx_ip2_cn70xx cn70xxp1;
6609 	struct cvmx_ciu_sum1_ppx_ip2_cnf71xx {
6610 		u64 rst : 1;
6611 		u64 reserved_53_62 : 10;
6612 		u64 lmc0 : 1;
6613 		u64 reserved_50_51 : 2;
6614 		u64 pem1 : 1;
6615 		u64 pem0 : 1;
6616 		u64 ptp : 1;
6617 		u64 reserved_41_46 : 6;
6618 		u64 dpi_dma : 1;
6619 		u64 reserved_37_39 : 3;
6620 		u64 agx0 : 1;
6621 		u64 dpi : 1;
6622 		u64 sli : 1;
6623 		u64 usb : 1;
6624 		u64 reserved_32_32 : 1;
6625 		u64 key : 1;
6626 		u64 rad : 1;
6627 		u64 tim : 1;
6628 		u64 reserved_28_28 : 1;
6629 		u64 pko : 1;
6630 		u64 pip : 1;
6631 		u64 ipd : 1;
6632 		u64 l2c : 1;
6633 		u64 pow : 1;
6634 		u64 fpa : 1;
6635 		u64 iob : 1;
6636 		u64 mio : 1;
6637 		u64 nand : 1;
6638 		u64 reserved_4_18 : 15;
6639 		u64 wdog : 4;
6640 	} cnf71xx;
6641 };
6642 
6643 typedef union cvmx_ciu_sum1_ppx_ip2 cvmx_ciu_sum1_ppx_ip2_t;
6644 
6645 /**
6646  * cvmx_ciu_sum1_pp#_ip3
6647  *
6648  * Notes:
6649  * SUM1 becomes per IPx in o65/6 and afterwards. Only Field <40> DPI_DMA will have
6650  * different value per PP(IP) for  $CIU_SUM1_PPx_IPy, and <40> DPI_DMA will always
6651  * be zero for  $CIU_SUM1_IOX_INT. All other fields ([63:41] and [39:0]) values  are idential for
6652  * different PPs, same value as $CIU_INT_SUM1.
6653  * Write to any IRQ's PTP fields will clear PTP for all IRQ's PTP field.
6654  */
6655 union cvmx_ciu_sum1_ppx_ip3 {
6656 	u64 u64;
6657 	struct cvmx_ciu_sum1_ppx_ip3_s {
6658 		u64 rst : 1;
6659 		u64 reserved_62_62 : 1;
6660 		u64 srio3 : 1;
6661 		u64 srio2 : 1;
6662 		u64 reserved_57_59 : 3;
6663 		u64 dfm : 1;
6664 		u64 reserved_53_55 : 3;
6665 		u64 lmc0 : 1;
6666 		u64 reserved_50_51 : 2;
6667 		u64 pem1 : 1;
6668 		u64 pem0 : 1;
6669 		u64 ptp : 1;
6670 		u64 agl : 1;
6671 		u64 reserved_41_45 : 5;
6672 		u64 dpi_dma : 1;
6673 		u64 reserved_38_39 : 2;
6674 		u64 agx1 : 1;
6675 		u64 agx0 : 1;
6676 		u64 dpi : 1;
6677 		u64 sli : 1;
6678 		u64 usb : 1;
6679 		u64 dfa : 1;
6680 		u64 key : 1;
6681 		u64 rad : 1;
6682 		u64 tim : 1;
6683 		u64 zip : 1;
6684 		u64 pko : 1;
6685 		u64 pip : 1;
6686 		u64 ipd : 1;
6687 		u64 l2c : 1;
6688 		u64 pow : 1;
6689 		u64 fpa : 1;
6690 		u64 iob : 1;
6691 		u64 mio : 1;
6692 		u64 nand : 1;
6693 		u64 mii1 : 1;
6694 		u64 usb1 : 1;
6695 		u64 reserved_10_16 : 7;
6696 		u64 wdog : 10;
6697 	} s;
6698 	struct cvmx_ciu_sum1_ppx_ip3_cn61xx {
6699 		u64 rst : 1;
6700 		u64 reserved_53_62 : 10;
6701 		u64 lmc0 : 1;
6702 		u64 reserved_50_51 : 2;
6703 		u64 pem1 : 1;
6704 		u64 pem0 : 1;
6705 		u64 ptp : 1;
6706 		u64 agl : 1;
6707 		u64 reserved_41_45 : 5;
6708 		u64 dpi_dma : 1;
6709 		u64 reserved_38_39 : 2;
6710 		u64 agx1 : 1;
6711 		u64 agx0 : 1;
6712 		u64 dpi : 1;
6713 		u64 sli : 1;
6714 		u64 usb : 1;
6715 		u64 dfa : 1;
6716 		u64 key : 1;
6717 		u64 rad : 1;
6718 		u64 tim : 1;
6719 		u64 zip : 1;
6720 		u64 pko : 1;
6721 		u64 pip : 1;
6722 		u64 ipd : 1;
6723 		u64 l2c : 1;
6724 		u64 pow : 1;
6725 		u64 fpa : 1;
6726 		u64 iob : 1;
6727 		u64 mio : 1;
6728 		u64 nand : 1;
6729 		u64 mii1 : 1;
6730 		u64 reserved_4_17 : 14;
6731 		u64 wdog : 4;
6732 	} cn61xx;
6733 	struct cvmx_ciu_sum1_ppx_ip3_cn66xx {
6734 		u64 rst : 1;
6735 		u64 reserved_62_62 : 1;
6736 		u64 srio3 : 1;
6737 		u64 srio2 : 1;
6738 		u64 reserved_57_59 : 3;
6739 		u64 dfm : 1;
6740 		u64 reserved_53_55 : 3;
6741 		u64 lmc0 : 1;
6742 		u64 reserved_51_51 : 1;
6743 		u64 srio0 : 1;
6744 		u64 pem1 : 1;
6745 		u64 pem0 : 1;
6746 		u64 ptp : 1;
6747 		u64 agl : 1;
6748 		u64 reserved_38_45 : 8;
6749 		u64 agx1 : 1;
6750 		u64 agx0 : 1;
6751 		u64 dpi : 1;
6752 		u64 sli : 1;
6753 		u64 usb : 1;
6754 		u64 dfa : 1;
6755 		u64 key : 1;
6756 		u64 rad : 1;
6757 		u64 tim : 1;
6758 		u64 zip : 1;
6759 		u64 pko : 1;
6760 		u64 pip : 1;
6761 		u64 ipd : 1;
6762 		u64 l2c : 1;
6763 		u64 pow : 1;
6764 		u64 fpa : 1;
6765 		u64 iob : 1;
6766 		u64 mio : 1;
6767 		u64 nand : 1;
6768 		u64 mii1 : 1;
6769 		u64 reserved_10_17 : 8;
6770 		u64 wdog : 10;
6771 	} cn66xx;
6772 	struct cvmx_ciu_sum1_ppx_ip3_cn70xx {
6773 		u64 rst : 1;
6774 		u64 reserved_53_62 : 10;
6775 		u64 lmc0 : 1;
6776 		u64 reserved_51_51 : 1;
6777 		u64 pem2 : 1;
6778 		u64 pem1 : 1;
6779 		u64 pem0 : 1;
6780 		u64 ptp : 1;
6781 		u64 agl : 1;
6782 		u64 reserved_41_45 : 5;
6783 		u64 dpi_dma : 1;
6784 		u64 reserved_38_39 : 2;
6785 		u64 agx1 : 1;
6786 		u64 agx0 : 1;
6787 		u64 dpi : 1;
6788 		u64 sli : 1;
6789 		u64 usb : 1;
6790 		u64 dfa : 1;
6791 		u64 key : 1;
6792 		u64 rad : 1;
6793 		u64 tim : 1;
6794 		u64 reserved_28_28 : 1;
6795 		u64 pko : 1;
6796 		u64 pip : 1;
6797 		u64 ipd : 1;
6798 		u64 l2c : 1;
6799 		u64 pow : 1;
6800 		u64 fpa : 1;
6801 		u64 iob : 1;
6802 		u64 mio : 1;
6803 		u64 nand : 1;
6804 		u64 reserved_18_18 : 1;
6805 		u64 usb1 : 1;
6806 		u64 reserved_4_16 : 13;
6807 		u64 wdog : 4;
6808 	} cn70xx;
6809 	struct cvmx_ciu_sum1_ppx_ip3_cn70xx cn70xxp1;
6810 	struct cvmx_ciu_sum1_ppx_ip3_cnf71xx {
6811 		u64 rst : 1;
6812 		u64 reserved_53_62 : 10;
6813 		u64 lmc0 : 1;
6814 		u64 reserved_50_51 : 2;
6815 		u64 pem1 : 1;
6816 		u64 pem0 : 1;
6817 		u64 ptp : 1;
6818 		u64 reserved_41_46 : 6;
6819 		u64 dpi_dma : 1;
6820 		u64 reserved_37_39 : 3;
6821 		u64 agx0 : 1;
6822 		u64 dpi : 1;
6823 		u64 sli : 1;
6824 		u64 usb : 1;
6825 		u64 reserved_32_32 : 1;
6826 		u64 key : 1;
6827 		u64 rad : 1;
6828 		u64 tim : 1;
6829 		u64 reserved_28_28 : 1;
6830 		u64 pko : 1;
6831 		u64 pip : 1;
6832 		u64 ipd : 1;
6833 		u64 l2c : 1;
6834 		u64 pow : 1;
6835 		u64 fpa : 1;
6836 		u64 iob : 1;
6837 		u64 mio : 1;
6838 		u64 nand : 1;
6839 		u64 reserved_4_18 : 15;
6840 		u64 wdog : 4;
6841 	} cnf71xx;
6842 };
6843 
6844 typedef union cvmx_ciu_sum1_ppx_ip3 cvmx_ciu_sum1_ppx_ip3_t;
6845 
6846 /**
6847  * cvmx_ciu_sum1_pp#_ip4
6848  *
6849  * Notes:
6850  * SUM1 becomes per IPx in o65/6 and afterwards. Only Field <40> DPI_DMA will have
6851  * different value per PP(IP) for  $CIU_SUM1_PPx_IPy, and <40> DPI_DMA will always
6852  * be zero for  $CIU_SUM1_IOX_INT. All other fields ([63:41] and [39:0]) values  are idential for
6853  * different PPs, same value as $CIU_INT_SUM1.
6854  * Write to any IRQ's PTP fields will clear PTP for all IRQ's PTP field.
6855  */
6856 union cvmx_ciu_sum1_ppx_ip4 {
6857 	u64 u64;
6858 	struct cvmx_ciu_sum1_ppx_ip4_s {
6859 		u64 rst : 1;
6860 		u64 reserved_62_62 : 1;
6861 		u64 srio3 : 1;
6862 		u64 srio2 : 1;
6863 		u64 reserved_57_59 : 3;
6864 		u64 dfm : 1;
6865 		u64 reserved_53_55 : 3;
6866 		u64 lmc0 : 1;
6867 		u64 reserved_50_51 : 2;
6868 		u64 pem1 : 1;
6869 		u64 pem0 : 1;
6870 		u64 ptp : 1;
6871 		u64 agl : 1;
6872 		u64 reserved_41_45 : 5;
6873 		u64 dpi_dma : 1;
6874 		u64 reserved_38_39 : 2;
6875 		u64 agx1 : 1;
6876 		u64 agx0 : 1;
6877 		u64 dpi : 1;
6878 		u64 sli : 1;
6879 		u64 usb : 1;
6880 		u64 dfa : 1;
6881 		u64 key : 1;
6882 		u64 rad : 1;
6883 		u64 tim : 1;
6884 		u64 zip : 1;
6885 		u64 pko : 1;
6886 		u64 pip : 1;
6887 		u64 ipd : 1;
6888 		u64 l2c : 1;
6889 		u64 pow : 1;
6890 		u64 fpa : 1;
6891 		u64 iob : 1;
6892 		u64 mio : 1;
6893 		u64 nand : 1;
6894 		u64 mii1 : 1;
6895 		u64 usb1 : 1;
6896 		u64 reserved_10_16 : 7;
6897 		u64 wdog : 10;
6898 	} s;
6899 	struct cvmx_ciu_sum1_ppx_ip4_cn61xx {
6900 		u64 rst : 1;
6901 		u64 reserved_53_62 : 10;
6902 		u64 lmc0 : 1;
6903 		u64 reserved_50_51 : 2;
6904 		u64 pem1 : 1;
6905 		u64 pem0 : 1;
6906 		u64 ptp : 1;
6907 		u64 agl : 1;
6908 		u64 reserved_41_45 : 5;
6909 		u64 dpi_dma : 1;
6910 		u64 reserved_38_39 : 2;
6911 		u64 agx1 : 1;
6912 		u64 agx0 : 1;
6913 		u64 dpi : 1;
6914 		u64 sli : 1;
6915 		u64 usb : 1;
6916 		u64 dfa : 1;
6917 		u64 key : 1;
6918 		u64 rad : 1;
6919 		u64 tim : 1;
6920 		u64 zip : 1;
6921 		u64 pko : 1;
6922 		u64 pip : 1;
6923 		u64 ipd : 1;
6924 		u64 l2c : 1;
6925 		u64 pow : 1;
6926 		u64 fpa : 1;
6927 		u64 iob : 1;
6928 		u64 mio : 1;
6929 		u64 nand : 1;
6930 		u64 mii1 : 1;
6931 		u64 reserved_4_17 : 14;
6932 		u64 wdog : 4;
6933 	} cn61xx;
6934 	struct cvmx_ciu_sum1_ppx_ip4_cn66xx {
6935 		u64 rst : 1;
6936 		u64 reserved_62_62 : 1;
6937 		u64 srio3 : 1;
6938 		u64 srio2 : 1;
6939 		u64 reserved_57_59 : 3;
6940 		u64 dfm : 1;
6941 		u64 reserved_53_55 : 3;
6942 		u64 lmc0 : 1;
6943 		u64 reserved_51_51 : 1;
6944 		u64 srio0 : 1;
6945 		u64 pem1 : 1;
6946 		u64 pem0 : 1;
6947 		u64 ptp : 1;
6948 		u64 agl : 1;
6949 		u64 reserved_38_45 : 8;
6950 		u64 agx1 : 1;
6951 		u64 agx0 : 1;
6952 		u64 dpi : 1;
6953 		u64 sli : 1;
6954 		u64 usb : 1;
6955 		u64 dfa : 1;
6956 		u64 key : 1;
6957 		u64 rad : 1;
6958 		u64 tim : 1;
6959 		u64 zip : 1;
6960 		u64 pko : 1;
6961 		u64 pip : 1;
6962 		u64 ipd : 1;
6963 		u64 l2c : 1;
6964 		u64 pow : 1;
6965 		u64 fpa : 1;
6966 		u64 iob : 1;
6967 		u64 mio : 1;
6968 		u64 nand : 1;
6969 		u64 mii1 : 1;
6970 		u64 reserved_10_17 : 8;
6971 		u64 wdog : 10;
6972 	} cn66xx;
6973 	struct cvmx_ciu_sum1_ppx_ip4_cn70xx {
6974 		u64 rst : 1;
6975 		u64 reserved_53_62 : 10;
6976 		u64 lmc0 : 1;
6977 		u64 reserved_51_51 : 1;
6978 		u64 pem2 : 1;
6979 		u64 pem1 : 1;
6980 		u64 pem0 : 1;
6981 		u64 ptp : 1;
6982 		u64 agl : 1;
6983 		u64 reserved_41_45 : 5;
6984 		u64 dpi_dma : 1;
6985 		u64 reserved_38_39 : 2;
6986 		u64 agx1 : 1;
6987 		u64 agx0 : 1;
6988 		u64 dpi : 1;
6989 		u64 sli : 1;
6990 		u64 usb : 1;
6991 		u64 dfa : 1;
6992 		u64 key : 1;
6993 		u64 rad : 1;
6994 		u64 tim : 1;
6995 		u64 reserved_28_28 : 1;
6996 		u64 pko : 1;
6997 		u64 pip : 1;
6998 		u64 ipd : 1;
6999 		u64 l2c : 1;
7000 		u64 pow : 1;
7001 		u64 fpa : 1;
7002 		u64 iob : 1;
7003 		u64 mio : 1;
7004 		u64 nand : 1;
7005 		u64 reserved_18_18 : 1;
7006 		u64 usb1 : 1;
7007 		u64 reserved_4_16 : 13;
7008 		u64 wdog : 4;
7009 	} cn70xx;
7010 	struct cvmx_ciu_sum1_ppx_ip4_cn70xx cn70xxp1;
7011 	struct cvmx_ciu_sum1_ppx_ip4_cnf71xx {
7012 		u64 rst : 1;
7013 		u64 reserved_53_62 : 10;
7014 		u64 lmc0 : 1;
7015 		u64 reserved_50_51 : 2;
7016 		u64 pem1 : 1;
7017 		u64 pem0 : 1;
7018 		u64 ptp : 1;
7019 		u64 reserved_41_46 : 6;
7020 		u64 dpi_dma : 1;
7021 		u64 reserved_37_39 : 3;
7022 		u64 agx0 : 1;
7023 		u64 dpi : 1;
7024 		u64 sli : 1;
7025 		u64 usb : 1;
7026 		u64 reserved_32_32 : 1;
7027 		u64 key : 1;
7028 		u64 rad : 1;
7029 		u64 tim : 1;
7030 		u64 reserved_28_28 : 1;
7031 		u64 pko : 1;
7032 		u64 pip : 1;
7033 		u64 ipd : 1;
7034 		u64 l2c : 1;
7035 		u64 pow : 1;
7036 		u64 fpa : 1;
7037 		u64 iob : 1;
7038 		u64 mio : 1;
7039 		u64 nand : 1;
7040 		u64 reserved_4_18 : 15;
7041 		u64 wdog : 4;
7042 	} cnf71xx;
7043 };
7044 
7045 typedef union cvmx_ciu_sum1_ppx_ip4 cvmx_ciu_sum1_ppx_ip4_t;
7046 
7047 /**
7048  * cvmx_ciu_sum2_io#_int
7049  *
7050  * CIU_SUM2_IO0_INT is for PEM0, CIU_SUM2_IO1_INT is reserved.
7051  *
7052  */
7053 union cvmx_ciu_sum2_iox_int {
7054 	u64 u64;
7055 	struct cvmx_ciu_sum2_iox_int_s {
7056 		u64 reserved_20_63 : 44;
7057 		u64 bch : 1;
7058 		u64 agl_drp : 1;
7059 		u64 ocla : 1;
7060 		u64 sata : 1;
7061 		u64 reserved_15_15 : 1;
7062 		u64 endor : 2;
7063 		u64 eoi : 1;
7064 		u64 reserved_10_11 : 2;
7065 		u64 timer : 6;
7066 		u64 reserved_0_3 : 4;
7067 	} s;
7068 	struct cvmx_ciu_sum2_iox_int_cn61xx {
7069 		u64 reserved_10_63 : 54;
7070 		u64 timer : 6;
7071 		u64 reserved_0_3 : 4;
7072 	} cn61xx;
7073 	struct cvmx_ciu_sum2_iox_int_cn61xx cn66xx;
7074 	struct cvmx_ciu_sum2_iox_int_cn70xx {
7075 		u64 reserved_20_63 : 44;
7076 		u64 bch : 1;
7077 		u64 agl_drp : 1;
7078 		u64 ocla : 1;
7079 		u64 sata : 1;
7080 		u64 reserved_10_15 : 6;
7081 		u64 timer : 6;
7082 		u64 reserved_0_3 : 4;
7083 	} cn70xx;
7084 	struct cvmx_ciu_sum2_iox_int_cn70xx cn70xxp1;
7085 	struct cvmx_ciu_sum2_iox_int_cnf71xx {
7086 		u64 reserved_15_63 : 49;
7087 		u64 endor : 2;
7088 		u64 eoi : 1;
7089 		u64 reserved_10_11 : 2;
7090 		u64 timer : 6;
7091 		u64 reserved_0_3 : 4;
7092 	} cnf71xx;
7093 };
7094 
7095 typedef union cvmx_ciu_sum2_iox_int cvmx_ciu_sum2_iox_int_t;
7096 
7097 /**
7098  * cvmx_ciu_sum2_pp#_ip2
7099  *
7100  * Only TIMER field may have different value per PP(IP).
7101  * All other fields  values  are idential for different PPs.
7102  */
7103 union cvmx_ciu_sum2_ppx_ip2 {
7104 	u64 u64;
7105 	struct cvmx_ciu_sum2_ppx_ip2_s {
7106 		u64 reserved_20_63 : 44;
7107 		u64 bch : 1;
7108 		u64 agl_drp : 1;
7109 		u64 ocla : 1;
7110 		u64 sata : 1;
7111 		u64 reserved_15_15 : 1;
7112 		u64 endor : 2;
7113 		u64 eoi : 1;
7114 		u64 reserved_10_11 : 2;
7115 		u64 timer : 6;
7116 		u64 reserved_0_3 : 4;
7117 	} s;
7118 	struct cvmx_ciu_sum2_ppx_ip2_cn61xx {
7119 		u64 reserved_10_63 : 54;
7120 		u64 timer : 6;
7121 		u64 reserved_0_3 : 4;
7122 	} cn61xx;
7123 	struct cvmx_ciu_sum2_ppx_ip2_cn61xx cn66xx;
7124 	struct cvmx_ciu_sum2_ppx_ip2_cn70xx {
7125 		u64 reserved_20_63 : 44;
7126 		u64 bch : 1;
7127 		u64 agl_drp : 1;
7128 		u64 ocla : 1;
7129 		u64 sata : 1;
7130 		u64 reserved_10_15 : 6;
7131 		u64 timer : 6;
7132 		u64 reserved_0_3 : 4;
7133 	} cn70xx;
7134 	struct cvmx_ciu_sum2_ppx_ip2_cn70xx cn70xxp1;
7135 	struct cvmx_ciu_sum2_ppx_ip2_cnf71xx {
7136 		u64 reserved_15_63 : 49;
7137 		u64 endor : 2;
7138 		u64 eoi : 1;
7139 		u64 reserved_10_11 : 2;
7140 		u64 timer : 6;
7141 		u64 reserved_0_3 : 4;
7142 	} cnf71xx;
7143 };
7144 
7145 typedef union cvmx_ciu_sum2_ppx_ip2 cvmx_ciu_sum2_ppx_ip2_t;
7146 
7147 /**
7148  * cvmx_ciu_sum2_pp#_ip3
7149  *
7150  * Notes:
7151  * These SUM2 CSR's did not exist prior to pass 1.2. CIU_TIM4-9 did not exist prior to pass 1.2.
7152  *
7153  */
7154 union cvmx_ciu_sum2_ppx_ip3 {
7155 	u64 u64;
7156 	struct cvmx_ciu_sum2_ppx_ip3_s {
7157 		u64 reserved_20_63 : 44;
7158 		u64 bch : 1;
7159 		u64 agl_drp : 1;
7160 		u64 ocla : 1;
7161 		u64 sata : 1;
7162 		u64 reserved_15_15 : 1;
7163 		u64 endor : 2;
7164 		u64 eoi : 1;
7165 		u64 reserved_10_11 : 2;
7166 		u64 timer : 6;
7167 		u64 reserved_0_3 : 4;
7168 	} s;
7169 	struct cvmx_ciu_sum2_ppx_ip3_cn61xx {
7170 		u64 reserved_10_63 : 54;
7171 		u64 timer : 6;
7172 		u64 reserved_0_3 : 4;
7173 	} cn61xx;
7174 	struct cvmx_ciu_sum2_ppx_ip3_cn61xx cn66xx;
7175 	struct cvmx_ciu_sum2_ppx_ip3_cn70xx {
7176 		u64 reserved_20_63 : 44;
7177 		u64 bch : 1;
7178 		u64 agl_drp : 1;
7179 		u64 ocla : 1;
7180 		u64 sata : 1;
7181 		u64 reserved_10_15 : 6;
7182 		u64 timer : 6;
7183 		u64 reserved_0_3 : 4;
7184 	} cn70xx;
7185 	struct cvmx_ciu_sum2_ppx_ip3_cn70xx cn70xxp1;
7186 	struct cvmx_ciu_sum2_ppx_ip3_cnf71xx {
7187 		u64 reserved_15_63 : 49;
7188 		u64 endor : 2;
7189 		u64 eoi : 1;
7190 		u64 reserved_10_11 : 2;
7191 		u64 timer : 6;
7192 		u64 reserved_0_3 : 4;
7193 	} cnf71xx;
7194 };
7195 
7196 typedef union cvmx_ciu_sum2_ppx_ip3 cvmx_ciu_sum2_ppx_ip3_t;
7197 
7198 /**
7199  * cvmx_ciu_sum2_pp#_ip4
7200  *
7201  * Notes:
7202  * These SUM2 CSR's did not exist prior to pass 1.2. CIU_TIM4-9 did not exist prior to pass 1.2.
7203  *
7204  */
7205 union cvmx_ciu_sum2_ppx_ip4 {
7206 	u64 u64;
7207 	struct cvmx_ciu_sum2_ppx_ip4_s {
7208 		u64 reserved_20_63 : 44;
7209 		u64 bch : 1;
7210 		u64 agl_drp : 1;
7211 		u64 ocla : 1;
7212 		u64 sata : 1;
7213 		u64 reserved_15_15 : 1;
7214 		u64 endor : 2;
7215 		u64 eoi : 1;
7216 		u64 reserved_10_11 : 2;
7217 		u64 timer : 6;
7218 		u64 reserved_0_3 : 4;
7219 	} s;
7220 	struct cvmx_ciu_sum2_ppx_ip4_cn61xx {
7221 		u64 reserved_10_63 : 54;
7222 		u64 timer : 6;
7223 		u64 reserved_0_3 : 4;
7224 	} cn61xx;
7225 	struct cvmx_ciu_sum2_ppx_ip4_cn61xx cn66xx;
7226 	struct cvmx_ciu_sum2_ppx_ip4_cn70xx {
7227 		u64 reserved_20_63 : 44;
7228 		u64 bch : 1;
7229 		u64 agl_drp : 1;
7230 		u64 ocla : 1;
7231 		u64 sata : 1;
7232 		u64 reserved_10_15 : 6;
7233 		u64 timer : 6;
7234 		u64 reserved_0_3 : 4;
7235 	} cn70xx;
7236 	struct cvmx_ciu_sum2_ppx_ip4_cn70xx cn70xxp1;
7237 	struct cvmx_ciu_sum2_ppx_ip4_cnf71xx {
7238 		u64 reserved_15_63 : 49;
7239 		u64 endor : 2;
7240 		u64 eoi : 1;
7241 		u64 reserved_10_11 : 2;
7242 		u64 timer : 6;
7243 		u64 reserved_0_3 : 4;
7244 	} cnf71xx;
7245 };
7246 
7247 typedef union cvmx_ciu_sum2_ppx_ip4 cvmx_ciu_sum2_ppx_ip4_t;
7248 
7249 /**
7250  * cvmx_ciu_tim#
7251  *
7252  * Notes:
7253  * CIU_TIM4-9 did not exist prior to pass 1.2
7254  *
7255  */
7256 union cvmx_ciu_timx {
7257 	u64 u64;
7258 	struct cvmx_ciu_timx_s {
7259 		u64 reserved_37_63 : 27;
7260 		u64 one_shot : 1;
7261 		u64 len : 36;
7262 	} s;
7263 	struct cvmx_ciu_timx_s cn30xx;
7264 	struct cvmx_ciu_timx_s cn31xx;
7265 	struct cvmx_ciu_timx_s cn38xx;
7266 	struct cvmx_ciu_timx_s cn38xxp2;
7267 	struct cvmx_ciu_timx_s cn50xx;
7268 	struct cvmx_ciu_timx_s cn52xx;
7269 	struct cvmx_ciu_timx_s cn52xxp1;
7270 	struct cvmx_ciu_timx_s cn56xx;
7271 	struct cvmx_ciu_timx_s cn56xxp1;
7272 	struct cvmx_ciu_timx_s cn58xx;
7273 	struct cvmx_ciu_timx_s cn58xxp1;
7274 	struct cvmx_ciu_timx_s cn61xx;
7275 	struct cvmx_ciu_timx_s cn63xx;
7276 	struct cvmx_ciu_timx_s cn63xxp1;
7277 	struct cvmx_ciu_timx_s cn66xx;
7278 	struct cvmx_ciu_timx_s cn68xx;
7279 	struct cvmx_ciu_timx_s cn68xxp1;
7280 	struct cvmx_ciu_timx_s cn70xx;
7281 	struct cvmx_ciu_timx_s cn70xxp1;
7282 	struct cvmx_ciu_timx_s cnf71xx;
7283 };
7284 
7285 typedef union cvmx_ciu_timx cvmx_ciu_timx_t;
7286 
7287 /**
7288  * cvmx_ciu_tim_multi_cast
7289  *
7290  * Notes:
7291  * This register does not exist prior to pass 1.2 silicon. Those earlier chip passes operate as if
7292  * EN==0.
7293  */
7294 union cvmx_ciu_tim_multi_cast {
7295 	u64 u64;
7296 	struct cvmx_ciu_tim_multi_cast_s {
7297 		u64 reserved_1_63 : 63;
7298 		u64 en : 1;
7299 	} s;
7300 	struct cvmx_ciu_tim_multi_cast_s cn61xx;
7301 	struct cvmx_ciu_tim_multi_cast_s cn66xx;
7302 	struct cvmx_ciu_tim_multi_cast_s cn70xx;
7303 	struct cvmx_ciu_tim_multi_cast_s cn70xxp1;
7304 	struct cvmx_ciu_tim_multi_cast_s cnf71xx;
7305 };
7306 
7307 typedef union cvmx_ciu_tim_multi_cast cvmx_ciu_tim_multi_cast_t;
7308 
7309 /**
7310  * cvmx_ciu_wdog#
7311  */
7312 union cvmx_ciu_wdogx {
7313 	u64 u64;
7314 	struct cvmx_ciu_wdogx_s {
7315 		u64 reserved_46_63 : 18;
7316 		u64 gstopen : 1;
7317 		u64 dstop : 1;
7318 		u64 cnt : 24;
7319 		u64 len : 16;
7320 		u64 state : 2;
7321 		u64 mode : 2;
7322 	} s;
7323 	struct cvmx_ciu_wdogx_s cn30xx;
7324 	struct cvmx_ciu_wdogx_s cn31xx;
7325 	struct cvmx_ciu_wdogx_s cn38xx;
7326 	struct cvmx_ciu_wdogx_s cn38xxp2;
7327 	struct cvmx_ciu_wdogx_s cn50xx;
7328 	struct cvmx_ciu_wdogx_s cn52xx;
7329 	struct cvmx_ciu_wdogx_s cn52xxp1;
7330 	struct cvmx_ciu_wdogx_s cn56xx;
7331 	struct cvmx_ciu_wdogx_s cn56xxp1;
7332 	struct cvmx_ciu_wdogx_s cn58xx;
7333 	struct cvmx_ciu_wdogx_s cn58xxp1;
7334 	struct cvmx_ciu_wdogx_s cn61xx;
7335 	struct cvmx_ciu_wdogx_s cn63xx;
7336 	struct cvmx_ciu_wdogx_s cn63xxp1;
7337 	struct cvmx_ciu_wdogx_s cn66xx;
7338 	struct cvmx_ciu_wdogx_s cn68xx;
7339 	struct cvmx_ciu_wdogx_s cn68xxp1;
7340 	struct cvmx_ciu_wdogx_s cn70xx;
7341 	struct cvmx_ciu_wdogx_s cn70xxp1;
7342 	struct cvmx_ciu_wdogx_s cn73xx;
7343 	struct cvmx_ciu_wdogx_s cn78xx;
7344 	struct cvmx_ciu_wdogx_s cn78xxp1;
7345 	struct cvmx_ciu_wdogx_s cnf71xx;
7346 	struct cvmx_ciu_wdogx_s cnf75xx;
7347 };
7348 
7349 typedef union cvmx_ciu_wdogx cvmx_ciu_wdogx_t;
7350 
7351 #endif
7352