154293ec3SDavid Daney /***********************license start***************
254293ec3SDavid Daney  * Author: Cavium Networks
354293ec3SDavid Daney  *
454293ec3SDavid Daney  * Contact: support@caviumnetworks.com
554293ec3SDavid Daney  * This file is part of the OCTEON SDK
654293ec3SDavid Daney  *
754293ec3SDavid Daney  * Copyright (c) 2003-2008 Cavium Networks
854293ec3SDavid Daney  *
954293ec3SDavid Daney  * This file is free software; you can redistribute it and/or modify
1054293ec3SDavid Daney  * it under the terms of the GNU General Public License, Version 2, as
1154293ec3SDavid Daney  * published by the Free Software Foundation.
1254293ec3SDavid Daney  *
1354293ec3SDavid Daney  * This file is distributed in the hope that it will be useful, but
1454293ec3SDavid Daney  * AS-IS and WITHOUT ANY WARRANTY; without even the implied warranty
1554293ec3SDavid Daney  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE, TITLE, or
1654293ec3SDavid Daney  * NONINFRINGEMENT.  See the GNU General Public License for more
1754293ec3SDavid Daney  * details.
1854293ec3SDavid Daney  *
1954293ec3SDavid Daney  * You should have received a copy of the GNU General Public License
2054293ec3SDavid Daney  * along with this file; if not, write to the Free Software
2154293ec3SDavid Daney  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
2254293ec3SDavid Daney  * or visit http://www.gnu.org/licenses/.
2354293ec3SDavid Daney  *
2454293ec3SDavid Daney  * This file may also be available under a different license from Cavium.
2554293ec3SDavid Daney  * Contact Cavium Networks for more information
2654293ec3SDavid Daney  ***********************license end**************************************/
2754293ec3SDavid Daney 
2854293ec3SDavid Daney #ifndef __CVMX_CIU_DEFS_H__
2954293ec3SDavid Daney #define __CVMX_CIU_DEFS_H__
3054293ec3SDavid Daney 
3154293ec3SDavid Daney #define CVMX_CIU_BIST \
3254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000730ull)
3354293ec3SDavid Daney #define CVMX_CIU_DINT \
3454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000720ull)
3554293ec3SDavid Daney #define CVMX_CIU_FUSE \
3654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000728ull)
3754293ec3SDavid Daney #define CVMX_CIU_GSTOP \
3854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000710ull)
3954293ec3SDavid Daney #define CVMX_CIU_INTX_EN0(offset) \
4054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000200ull + (((offset) & 63) * 16))
4154293ec3SDavid Daney #define CVMX_CIU_INTX_EN0_W1C(offset) \
4254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000002200ull + (((offset) & 63) * 16))
4354293ec3SDavid Daney #define CVMX_CIU_INTX_EN0_W1S(offset) \
4454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000006200ull + (((offset) & 63) * 16))
4554293ec3SDavid Daney #define CVMX_CIU_INTX_EN1(offset) \
4654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000208ull + (((offset) & 63) * 16))
4754293ec3SDavid Daney #define CVMX_CIU_INTX_EN1_W1C(offset) \
4854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000002208ull + (((offset) & 63) * 16))
4954293ec3SDavid Daney #define CVMX_CIU_INTX_EN1_W1S(offset) \
5054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000006208ull + (((offset) & 63) * 16))
5154293ec3SDavid Daney #define CVMX_CIU_INTX_EN4_0(offset) \
5254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000C80ull + (((offset) & 15) * 16))
5354293ec3SDavid Daney #define CVMX_CIU_INTX_EN4_0_W1C(offset) \
5454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000002C80ull + (((offset) & 15) * 16))
5554293ec3SDavid Daney #define CVMX_CIU_INTX_EN4_0_W1S(offset) \
5654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000006C80ull + (((offset) & 15) * 16))
5754293ec3SDavid Daney #define CVMX_CIU_INTX_EN4_1(offset) \
5854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000C88ull + (((offset) & 15) * 16))
5954293ec3SDavid Daney #define CVMX_CIU_INTX_EN4_1_W1C(offset) \
6054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000002C88ull + (((offset) & 15) * 16))
6154293ec3SDavid Daney #define CVMX_CIU_INTX_EN4_1_W1S(offset) \
6254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000006C88ull + (((offset) & 15) * 16))
6354293ec3SDavid Daney #define CVMX_CIU_INTX_SUM0(offset) \
6454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000000ull + (((offset) & 63) * 8))
6554293ec3SDavid Daney #define CVMX_CIU_INTX_SUM4(offset) \
6654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000C00ull + (((offset) & 15) * 8))
6754293ec3SDavid Daney #define CVMX_CIU_INT_SUM1 \
6854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000108ull)
6954293ec3SDavid Daney #define CVMX_CIU_MBOX_CLRX(offset) \
7054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000680ull + (((offset) & 15) * 8))
7154293ec3SDavid Daney #define CVMX_CIU_MBOX_SETX(offset) \
7254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000600ull + (((offset) & 15) * 8))
7354293ec3SDavid Daney #define CVMX_CIU_NMI \
7454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000718ull)
7554293ec3SDavid Daney #define CVMX_CIU_PCI_INTA \
7654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000750ull)
7754293ec3SDavid Daney #define CVMX_CIU_PP_DBG \
7854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000708ull)
7954293ec3SDavid Daney #define CVMX_CIU_PP_POKEX(offset) \
8054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000580ull + (((offset) & 15) * 8))
8154293ec3SDavid Daney #define CVMX_CIU_PP_RST \
8254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000700ull)
8354293ec3SDavid Daney #define CVMX_CIU_QLM_DCOK \
8454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000760ull)
8554293ec3SDavid Daney #define CVMX_CIU_QLM_JTGC \
8654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000768ull)
8754293ec3SDavid Daney #define CVMX_CIU_QLM_JTGD \
8854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000770ull)
8954293ec3SDavid Daney #define CVMX_CIU_SOFT_BIST \
9054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000738ull)
9154293ec3SDavid Daney #define CVMX_CIU_SOFT_PRST \
9254293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000748ull)
9354293ec3SDavid Daney #define CVMX_CIU_SOFT_PRST1 \
9454293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000758ull)
9554293ec3SDavid Daney #define CVMX_CIU_SOFT_RST \
9654293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000740ull)
9754293ec3SDavid Daney #define CVMX_CIU_TIMX(offset) \
9854293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000480ull + (((offset) & 3) * 8))
9954293ec3SDavid Daney #define CVMX_CIU_WDOGX(offset) \
10054293ec3SDavid Daney 	 CVMX_ADD_IO_SEG(0x0001070000000500ull + (((offset) & 15) * 8))
10154293ec3SDavid Daney 
10254293ec3SDavid Daney union cvmx_ciu_bist {
10354293ec3SDavid Daney 	uint64_t u64;
10454293ec3SDavid Daney 	struct cvmx_ciu_bist_s {
10554293ec3SDavid Daney 		uint64_t reserved_4_63:60;
10654293ec3SDavid Daney 		uint64_t bist:4;
10754293ec3SDavid Daney 	} s;
10854293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn30xx;
10954293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn31xx;
11054293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn38xx;
11154293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn38xxp2;
11254293ec3SDavid Daney 	struct cvmx_ciu_bist_cn50xx {
11354293ec3SDavid Daney 		uint64_t reserved_2_63:62;
11454293ec3SDavid Daney 		uint64_t bist:2;
11554293ec3SDavid Daney 	} cn50xx;
11654293ec3SDavid Daney 	struct cvmx_ciu_bist_cn52xx {
11754293ec3SDavid Daney 		uint64_t reserved_3_63:61;
11854293ec3SDavid Daney 		uint64_t bist:3;
11954293ec3SDavid Daney 	} cn52xx;
12054293ec3SDavid Daney 	struct cvmx_ciu_bist_cn52xx cn52xxp1;
12154293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn56xx;
12254293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn56xxp1;
12354293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn58xx;
12454293ec3SDavid Daney 	struct cvmx_ciu_bist_s cn58xxp1;
12554293ec3SDavid Daney };
12654293ec3SDavid Daney 
12754293ec3SDavid Daney union cvmx_ciu_dint {
12854293ec3SDavid Daney 	uint64_t u64;
12954293ec3SDavid Daney 	struct cvmx_ciu_dint_s {
13054293ec3SDavid Daney 		uint64_t reserved_16_63:48;
13154293ec3SDavid Daney 		uint64_t dint:16;
13254293ec3SDavid Daney 	} s;
13354293ec3SDavid Daney 	struct cvmx_ciu_dint_cn30xx {
13454293ec3SDavid Daney 		uint64_t reserved_1_63:63;
13554293ec3SDavid Daney 		uint64_t dint:1;
13654293ec3SDavid Daney 	} cn30xx;
13754293ec3SDavid Daney 	struct cvmx_ciu_dint_cn31xx {
13854293ec3SDavid Daney 		uint64_t reserved_2_63:62;
13954293ec3SDavid Daney 		uint64_t dint:2;
14054293ec3SDavid Daney 	} cn31xx;
14154293ec3SDavid Daney 	struct cvmx_ciu_dint_s cn38xx;
14254293ec3SDavid Daney 	struct cvmx_ciu_dint_s cn38xxp2;
14354293ec3SDavid Daney 	struct cvmx_ciu_dint_cn31xx cn50xx;
14454293ec3SDavid Daney 	struct cvmx_ciu_dint_cn52xx {
14554293ec3SDavid Daney 		uint64_t reserved_4_63:60;
14654293ec3SDavid Daney 		uint64_t dint:4;
14754293ec3SDavid Daney 	} cn52xx;
14854293ec3SDavid Daney 	struct cvmx_ciu_dint_cn52xx cn52xxp1;
14954293ec3SDavid Daney 	struct cvmx_ciu_dint_cn56xx {
15054293ec3SDavid Daney 		uint64_t reserved_12_63:52;
15154293ec3SDavid Daney 		uint64_t dint:12;
15254293ec3SDavid Daney 	} cn56xx;
15354293ec3SDavid Daney 	struct cvmx_ciu_dint_cn56xx cn56xxp1;
15454293ec3SDavid Daney 	struct cvmx_ciu_dint_s cn58xx;
15554293ec3SDavid Daney 	struct cvmx_ciu_dint_s cn58xxp1;
15654293ec3SDavid Daney };
15754293ec3SDavid Daney 
15854293ec3SDavid Daney union cvmx_ciu_fuse {
15954293ec3SDavid Daney 	uint64_t u64;
16054293ec3SDavid Daney 	struct cvmx_ciu_fuse_s {
16154293ec3SDavid Daney 		uint64_t reserved_16_63:48;
16254293ec3SDavid Daney 		uint64_t fuse:16;
16354293ec3SDavid Daney 	} s;
16454293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn30xx {
16554293ec3SDavid Daney 		uint64_t reserved_1_63:63;
16654293ec3SDavid Daney 		uint64_t fuse:1;
16754293ec3SDavid Daney 	} cn30xx;
16854293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn31xx {
16954293ec3SDavid Daney 		uint64_t reserved_2_63:62;
17054293ec3SDavid Daney 		uint64_t fuse:2;
17154293ec3SDavid Daney 	} cn31xx;
17254293ec3SDavid Daney 	struct cvmx_ciu_fuse_s cn38xx;
17354293ec3SDavid Daney 	struct cvmx_ciu_fuse_s cn38xxp2;
17454293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn31xx cn50xx;
17554293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn52xx {
17654293ec3SDavid Daney 		uint64_t reserved_4_63:60;
17754293ec3SDavid Daney 		uint64_t fuse:4;
17854293ec3SDavid Daney 	} cn52xx;
17954293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn52xx cn52xxp1;
18054293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn56xx {
18154293ec3SDavid Daney 		uint64_t reserved_12_63:52;
18254293ec3SDavid Daney 		uint64_t fuse:12;
18354293ec3SDavid Daney 	} cn56xx;
18454293ec3SDavid Daney 	struct cvmx_ciu_fuse_cn56xx cn56xxp1;
18554293ec3SDavid Daney 	struct cvmx_ciu_fuse_s cn58xx;
18654293ec3SDavid Daney 	struct cvmx_ciu_fuse_s cn58xxp1;
18754293ec3SDavid Daney };
18854293ec3SDavid Daney 
18954293ec3SDavid Daney union cvmx_ciu_gstop {
19054293ec3SDavid Daney 	uint64_t u64;
19154293ec3SDavid Daney 	struct cvmx_ciu_gstop_s {
19254293ec3SDavid Daney 		uint64_t reserved_1_63:63;
19354293ec3SDavid Daney 		uint64_t gstop:1;
19454293ec3SDavid Daney 	} s;
19554293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn30xx;
19654293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn31xx;
19754293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn38xx;
19854293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn38xxp2;
19954293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn50xx;
20054293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn52xx;
20154293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn52xxp1;
20254293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn56xx;
20354293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn56xxp1;
20454293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn58xx;
20554293ec3SDavid Daney 	struct cvmx_ciu_gstop_s cn58xxp1;
20654293ec3SDavid Daney };
20754293ec3SDavid Daney 
20854293ec3SDavid Daney union cvmx_ciu_intx_en0 {
20954293ec3SDavid Daney 	uint64_t u64;
21054293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_s {
21154293ec3SDavid Daney 		uint64_t bootdma:1;
21254293ec3SDavid Daney 		uint64_t mii:1;
21354293ec3SDavid Daney 		uint64_t ipdppthr:1;
21454293ec3SDavid Daney 		uint64_t powiq:1;
21554293ec3SDavid Daney 		uint64_t twsi2:1;
21654293ec3SDavid Daney 		uint64_t mpi:1;
21754293ec3SDavid Daney 		uint64_t pcm:1;
21854293ec3SDavid Daney 		uint64_t usb:1;
21954293ec3SDavid Daney 		uint64_t timer:4;
22054293ec3SDavid Daney 		uint64_t key_zero:1;
22154293ec3SDavid Daney 		uint64_t ipd_drp:1;
22254293ec3SDavid Daney 		uint64_t gmx_drp:2;
22354293ec3SDavid Daney 		uint64_t trace:1;
22454293ec3SDavid Daney 		uint64_t rml:1;
22554293ec3SDavid Daney 		uint64_t twsi:1;
22654293ec3SDavid Daney 		uint64_t reserved_44_44:1;
22754293ec3SDavid Daney 		uint64_t pci_msi:4;
22854293ec3SDavid Daney 		uint64_t pci_int:4;
22954293ec3SDavid Daney 		uint64_t uart:2;
23054293ec3SDavid Daney 		uint64_t mbox:2;
23154293ec3SDavid Daney 		uint64_t gpio:16;
23254293ec3SDavid Daney 		uint64_t workq:16;
23354293ec3SDavid Daney 	} s;
23454293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn30xx {
23554293ec3SDavid Daney 		uint64_t reserved_59_63:5;
23654293ec3SDavid Daney 		uint64_t mpi:1;
23754293ec3SDavid Daney 		uint64_t pcm:1;
23854293ec3SDavid Daney 		uint64_t usb:1;
23954293ec3SDavid Daney 		uint64_t timer:4;
24054293ec3SDavid Daney 		uint64_t reserved_51_51:1;
24154293ec3SDavid Daney 		uint64_t ipd_drp:1;
24254293ec3SDavid Daney 		uint64_t reserved_49_49:1;
24354293ec3SDavid Daney 		uint64_t gmx_drp:1;
24454293ec3SDavid Daney 		uint64_t reserved_47_47:1;
24554293ec3SDavid Daney 		uint64_t rml:1;
24654293ec3SDavid Daney 		uint64_t twsi:1;
24754293ec3SDavid Daney 		uint64_t reserved_44_44:1;
24854293ec3SDavid Daney 		uint64_t pci_msi:4;
24954293ec3SDavid Daney 		uint64_t pci_int:4;
25054293ec3SDavid Daney 		uint64_t uart:2;
25154293ec3SDavid Daney 		uint64_t mbox:2;
25254293ec3SDavid Daney 		uint64_t gpio:16;
25354293ec3SDavid Daney 		uint64_t workq:16;
25454293ec3SDavid Daney 	} cn30xx;
25554293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn31xx {
25654293ec3SDavid Daney 		uint64_t reserved_59_63:5;
25754293ec3SDavid Daney 		uint64_t mpi:1;
25854293ec3SDavid Daney 		uint64_t pcm:1;
25954293ec3SDavid Daney 		uint64_t usb:1;
26054293ec3SDavid Daney 		uint64_t timer:4;
26154293ec3SDavid Daney 		uint64_t reserved_51_51:1;
26254293ec3SDavid Daney 		uint64_t ipd_drp:1;
26354293ec3SDavid Daney 		uint64_t reserved_49_49:1;
26454293ec3SDavid Daney 		uint64_t gmx_drp:1;
26554293ec3SDavid Daney 		uint64_t trace:1;
26654293ec3SDavid Daney 		uint64_t rml:1;
26754293ec3SDavid Daney 		uint64_t twsi:1;
26854293ec3SDavid Daney 		uint64_t reserved_44_44:1;
26954293ec3SDavid Daney 		uint64_t pci_msi:4;
27054293ec3SDavid Daney 		uint64_t pci_int:4;
27154293ec3SDavid Daney 		uint64_t uart:2;
27254293ec3SDavid Daney 		uint64_t mbox:2;
27354293ec3SDavid Daney 		uint64_t gpio:16;
27454293ec3SDavid Daney 		uint64_t workq:16;
27554293ec3SDavid Daney 	} cn31xx;
27654293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn38xx {
27754293ec3SDavid Daney 		uint64_t reserved_56_63:8;
27854293ec3SDavid Daney 		uint64_t timer:4;
27954293ec3SDavid Daney 		uint64_t key_zero:1;
28054293ec3SDavid Daney 		uint64_t ipd_drp:1;
28154293ec3SDavid Daney 		uint64_t gmx_drp:2;
28254293ec3SDavid Daney 		uint64_t trace:1;
28354293ec3SDavid Daney 		uint64_t rml:1;
28454293ec3SDavid Daney 		uint64_t twsi:1;
28554293ec3SDavid Daney 		uint64_t reserved_44_44:1;
28654293ec3SDavid Daney 		uint64_t pci_msi:4;
28754293ec3SDavid Daney 		uint64_t pci_int:4;
28854293ec3SDavid Daney 		uint64_t uart:2;
28954293ec3SDavid Daney 		uint64_t mbox:2;
29054293ec3SDavid Daney 		uint64_t gpio:16;
29154293ec3SDavid Daney 		uint64_t workq:16;
29254293ec3SDavid Daney 	} cn38xx;
29354293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn38xx cn38xxp2;
29454293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn30xx cn50xx;
29554293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn52xx {
29654293ec3SDavid Daney 		uint64_t bootdma:1;
29754293ec3SDavid Daney 		uint64_t mii:1;
29854293ec3SDavid Daney 		uint64_t ipdppthr:1;
29954293ec3SDavid Daney 		uint64_t powiq:1;
30054293ec3SDavid Daney 		uint64_t twsi2:1;
30154293ec3SDavid Daney 		uint64_t reserved_57_58:2;
30254293ec3SDavid Daney 		uint64_t usb:1;
30354293ec3SDavid Daney 		uint64_t timer:4;
30454293ec3SDavid Daney 		uint64_t reserved_51_51:1;
30554293ec3SDavid Daney 		uint64_t ipd_drp:1;
30654293ec3SDavid Daney 		uint64_t reserved_49_49:1;
30754293ec3SDavid Daney 		uint64_t gmx_drp:1;
30854293ec3SDavid Daney 		uint64_t trace:1;
30954293ec3SDavid Daney 		uint64_t rml:1;
31054293ec3SDavid Daney 		uint64_t twsi:1;
31154293ec3SDavid Daney 		uint64_t reserved_44_44:1;
31254293ec3SDavid Daney 		uint64_t pci_msi:4;
31354293ec3SDavid Daney 		uint64_t pci_int:4;
31454293ec3SDavid Daney 		uint64_t uart:2;
31554293ec3SDavid Daney 		uint64_t mbox:2;
31654293ec3SDavid Daney 		uint64_t gpio:16;
31754293ec3SDavid Daney 		uint64_t workq:16;
31854293ec3SDavid Daney 	} cn52xx;
31954293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn52xx cn52xxp1;
32054293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn56xx {
32154293ec3SDavid Daney 		uint64_t bootdma:1;
32254293ec3SDavid Daney 		uint64_t mii:1;
32354293ec3SDavid Daney 		uint64_t ipdppthr:1;
32454293ec3SDavid Daney 		uint64_t powiq:1;
32554293ec3SDavid Daney 		uint64_t twsi2:1;
32654293ec3SDavid Daney 		uint64_t reserved_57_58:2;
32754293ec3SDavid Daney 		uint64_t usb:1;
32854293ec3SDavid Daney 		uint64_t timer:4;
32954293ec3SDavid Daney 		uint64_t key_zero:1;
33054293ec3SDavid Daney 		uint64_t ipd_drp:1;
33154293ec3SDavid Daney 		uint64_t gmx_drp:2;
33254293ec3SDavid Daney 		uint64_t trace:1;
33354293ec3SDavid Daney 		uint64_t rml:1;
33454293ec3SDavid Daney 		uint64_t twsi:1;
33554293ec3SDavid Daney 		uint64_t reserved_44_44:1;
33654293ec3SDavid Daney 		uint64_t pci_msi:4;
33754293ec3SDavid Daney 		uint64_t pci_int:4;
33854293ec3SDavid Daney 		uint64_t uart:2;
33954293ec3SDavid Daney 		uint64_t mbox:2;
34054293ec3SDavid Daney 		uint64_t gpio:16;
34154293ec3SDavid Daney 		uint64_t workq:16;
34254293ec3SDavid Daney 	} cn56xx;
34354293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn56xx cn56xxp1;
34454293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn38xx cn58xx;
34554293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_cn38xx cn58xxp1;
34654293ec3SDavid Daney };
34754293ec3SDavid Daney 
34854293ec3SDavid Daney union cvmx_ciu_intx_en0_w1c {
34954293ec3SDavid Daney 	uint64_t u64;
35054293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1c_s {
35154293ec3SDavid Daney 		uint64_t bootdma:1;
35254293ec3SDavid Daney 		uint64_t mii:1;
35354293ec3SDavid Daney 		uint64_t ipdppthr:1;
35454293ec3SDavid Daney 		uint64_t powiq:1;
35554293ec3SDavid Daney 		uint64_t twsi2:1;
35654293ec3SDavid Daney 		uint64_t reserved_57_58:2;
35754293ec3SDavid Daney 		uint64_t usb:1;
35854293ec3SDavid Daney 		uint64_t timer:4;
35954293ec3SDavid Daney 		uint64_t key_zero:1;
36054293ec3SDavid Daney 		uint64_t ipd_drp:1;
36154293ec3SDavid Daney 		uint64_t gmx_drp:2;
36254293ec3SDavid Daney 		uint64_t trace:1;
36354293ec3SDavid Daney 		uint64_t rml:1;
36454293ec3SDavid Daney 		uint64_t twsi:1;
36554293ec3SDavid Daney 		uint64_t reserved_44_44:1;
36654293ec3SDavid Daney 		uint64_t pci_msi:4;
36754293ec3SDavid Daney 		uint64_t pci_int:4;
36854293ec3SDavid Daney 		uint64_t uart:2;
36954293ec3SDavid Daney 		uint64_t mbox:2;
37054293ec3SDavid Daney 		uint64_t gpio:16;
37154293ec3SDavid Daney 		uint64_t workq:16;
37254293ec3SDavid Daney 	} s;
37354293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1c_cn52xx {
37454293ec3SDavid Daney 		uint64_t bootdma:1;
37554293ec3SDavid Daney 		uint64_t mii:1;
37654293ec3SDavid Daney 		uint64_t ipdppthr:1;
37754293ec3SDavid Daney 		uint64_t powiq:1;
37854293ec3SDavid Daney 		uint64_t twsi2:1;
37954293ec3SDavid Daney 		uint64_t reserved_57_58:2;
38054293ec3SDavid Daney 		uint64_t usb:1;
38154293ec3SDavid Daney 		uint64_t timer:4;
38254293ec3SDavid Daney 		uint64_t reserved_51_51:1;
38354293ec3SDavid Daney 		uint64_t ipd_drp:1;
38454293ec3SDavid Daney 		uint64_t reserved_49_49:1;
38554293ec3SDavid Daney 		uint64_t gmx_drp:1;
38654293ec3SDavid Daney 		uint64_t trace:1;
38754293ec3SDavid Daney 		uint64_t rml:1;
38854293ec3SDavid Daney 		uint64_t twsi:1;
38954293ec3SDavid Daney 		uint64_t reserved_44_44:1;
39054293ec3SDavid Daney 		uint64_t pci_msi:4;
39154293ec3SDavid Daney 		uint64_t pci_int:4;
39254293ec3SDavid Daney 		uint64_t uart:2;
39354293ec3SDavid Daney 		uint64_t mbox:2;
39454293ec3SDavid Daney 		uint64_t gpio:16;
39554293ec3SDavid Daney 		uint64_t workq:16;
39654293ec3SDavid Daney 	} cn52xx;
39754293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1c_s cn56xx;
39854293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1c_cn58xx {
39954293ec3SDavid Daney 		uint64_t reserved_56_63:8;
40054293ec3SDavid Daney 		uint64_t timer:4;
40154293ec3SDavid Daney 		uint64_t key_zero:1;
40254293ec3SDavid Daney 		uint64_t ipd_drp:1;
40354293ec3SDavid Daney 		uint64_t gmx_drp:2;
40454293ec3SDavid Daney 		uint64_t trace:1;
40554293ec3SDavid Daney 		uint64_t rml:1;
40654293ec3SDavid Daney 		uint64_t twsi:1;
40754293ec3SDavid Daney 		uint64_t reserved_44_44:1;
40854293ec3SDavid Daney 		uint64_t pci_msi:4;
40954293ec3SDavid Daney 		uint64_t pci_int:4;
41054293ec3SDavid Daney 		uint64_t uart:2;
41154293ec3SDavid Daney 		uint64_t mbox:2;
41254293ec3SDavid Daney 		uint64_t gpio:16;
41354293ec3SDavid Daney 		uint64_t workq:16;
41454293ec3SDavid Daney 	} cn58xx;
41554293ec3SDavid Daney };
41654293ec3SDavid Daney 
41754293ec3SDavid Daney union cvmx_ciu_intx_en0_w1s {
41854293ec3SDavid Daney 	uint64_t u64;
41954293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1s_s {
42054293ec3SDavid Daney 		uint64_t bootdma:1;
42154293ec3SDavid Daney 		uint64_t mii:1;
42254293ec3SDavid Daney 		uint64_t ipdppthr:1;
42354293ec3SDavid Daney 		uint64_t powiq:1;
42454293ec3SDavid Daney 		uint64_t twsi2:1;
42554293ec3SDavid Daney 		uint64_t reserved_57_58:2;
42654293ec3SDavid Daney 		uint64_t usb:1;
42754293ec3SDavid Daney 		uint64_t timer:4;
42854293ec3SDavid Daney 		uint64_t key_zero:1;
42954293ec3SDavid Daney 		uint64_t ipd_drp:1;
43054293ec3SDavid Daney 		uint64_t gmx_drp:2;
43154293ec3SDavid Daney 		uint64_t trace:1;
43254293ec3SDavid Daney 		uint64_t rml:1;
43354293ec3SDavid Daney 		uint64_t twsi:1;
43454293ec3SDavid Daney 		uint64_t reserved_44_44:1;
43554293ec3SDavid Daney 		uint64_t pci_msi:4;
43654293ec3SDavid Daney 		uint64_t pci_int:4;
43754293ec3SDavid Daney 		uint64_t uart:2;
43854293ec3SDavid Daney 		uint64_t mbox:2;
43954293ec3SDavid Daney 		uint64_t gpio:16;
44054293ec3SDavid Daney 		uint64_t workq:16;
44154293ec3SDavid Daney 	} s;
44254293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1s_cn52xx {
44354293ec3SDavid Daney 		uint64_t bootdma:1;
44454293ec3SDavid Daney 		uint64_t mii:1;
44554293ec3SDavid Daney 		uint64_t ipdppthr:1;
44654293ec3SDavid Daney 		uint64_t powiq:1;
44754293ec3SDavid Daney 		uint64_t twsi2:1;
44854293ec3SDavid Daney 		uint64_t reserved_57_58:2;
44954293ec3SDavid Daney 		uint64_t usb:1;
45054293ec3SDavid Daney 		uint64_t timer:4;
45154293ec3SDavid Daney 		uint64_t reserved_51_51:1;
45254293ec3SDavid Daney 		uint64_t ipd_drp:1;
45354293ec3SDavid Daney 		uint64_t reserved_49_49:1;
45454293ec3SDavid Daney 		uint64_t gmx_drp:1;
45554293ec3SDavid Daney 		uint64_t trace:1;
45654293ec3SDavid Daney 		uint64_t rml:1;
45754293ec3SDavid Daney 		uint64_t twsi:1;
45854293ec3SDavid Daney 		uint64_t reserved_44_44:1;
45954293ec3SDavid Daney 		uint64_t pci_msi:4;
46054293ec3SDavid Daney 		uint64_t pci_int:4;
46154293ec3SDavid Daney 		uint64_t uart:2;
46254293ec3SDavid Daney 		uint64_t mbox:2;
46354293ec3SDavid Daney 		uint64_t gpio:16;
46454293ec3SDavid Daney 		uint64_t workq:16;
46554293ec3SDavid Daney 	} cn52xx;
46654293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1s_s cn56xx;
46754293ec3SDavid Daney 	struct cvmx_ciu_intx_en0_w1s_cn58xx {
46854293ec3SDavid Daney 		uint64_t reserved_56_63:8;
46954293ec3SDavid Daney 		uint64_t timer:4;
47054293ec3SDavid Daney 		uint64_t key_zero:1;
47154293ec3SDavid Daney 		uint64_t ipd_drp:1;
47254293ec3SDavid Daney 		uint64_t gmx_drp:2;
47354293ec3SDavid Daney 		uint64_t trace:1;
47454293ec3SDavid Daney 		uint64_t rml:1;
47554293ec3SDavid Daney 		uint64_t twsi:1;
47654293ec3SDavid Daney 		uint64_t reserved_44_44:1;
47754293ec3SDavid Daney 		uint64_t pci_msi:4;
47854293ec3SDavid Daney 		uint64_t pci_int:4;
47954293ec3SDavid Daney 		uint64_t uart:2;
48054293ec3SDavid Daney 		uint64_t mbox:2;
48154293ec3SDavid Daney 		uint64_t gpio:16;
48254293ec3SDavid Daney 		uint64_t workq:16;
48354293ec3SDavid Daney 	} cn58xx;
48454293ec3SDavid Daney };
48554293ec3SDavid Daney 
48654293ec3SDavid Daney union cvmx_ciu_intx_en1 {
48754293ec3SDavid Daney 	uint64_t u64;
48854293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_s {
48954293ec3SDavid Daney 		uint64_t reserved_20_63:44;
49054293ec3SDavid Daney 		uint64_t nand:1;
49154293ec3SDavid Daney 		uint64_t mii1:1;
49254293ec3SDavid Daney 		uint64_t usb1:1;
49354293ec3SDavid Daney 		uint64_t uart2:1;
49454293ec3SDavid Daney 		uint64_t wdog:16;
49554293ec3SDavid Daney 	} s;
49654293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn30xx {
49754293ec3SDavid Daney 		uint64_t reserved_1_63:63;
49854293ec3SDavid Daney 		uint64_t wdog:1;
49954293ec3SDavid Daney 	} cn30xx;
50054293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn31xx {
50154293ec3SDavid Daney 		uint64_t reserved_2_63:62;
50254293ec3SDavid Daney 		uint64_t wdog:2;
50354293ec3SDavid Daney 	} cn31xx;
50454293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn38xx {
50554293ec3SDavid Daney 		uint64_t reserved_16_63:48;
50654293ec3SDavid Daney 		uint64_t wdog:16;
50754293ec3SDavid Daney 	} cn38xx;
50854293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn38xx cn38xxp2;
50954293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn31xx cn50xx;
51054293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn52xx {
51154293ec3SDavid Daney 		uint64_t reserved_20_63:44;
51254293ec3SDavid Daney 		uint64_t nand:1;
51354293ec3SDavid Daney 		uint64_t mii1:1;
51454293ec3SDavid Daney 		uint64_t usb1:1;
51554293ec3SDavid Daney 		uint64_t uart2:1;
51654293ec3SDavid Daney 		uint64_t reserved_4_15:12;
51754293ec3SDavid Daney 		uint64_t wdog:4;
51854293ec3SDavid Daney 	} cn52xx;
51954293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn52xxp1 {
52054293ec3SDavid Daney 		uint64_t reserved_19_63:45;
52154293ec3SDavid Daney 		uint64_t mii1:1;
52254293ec3SDavid Daney 		uint64_t usb1:1;
52354293ec3SDavid Daney 		uint64_t uart2:1;
52454293ec3SDavid Daney 		uint64_t reserved_4_15:12;
52554293ec3SDavid Daney 		uint64_t wdog:4;
52654293ec3SDavid Daney 	} cn52xxp1;
52754293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn56xx {
52854293ec3SDavid Daney 		uint64_t reserved_12_63:52;
52954293ec3SDavid Daney 		uint64_t wdog:12;
53054293ec3SDavid Daney 	} cn56xx;
53154293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn56xx cn56xxp1;
53254293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn38xx cn58xx;
53354293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_cn38xx cn58xxp1;
53454293ec3SDavid Daney };
53554293ec3SDavid Daney 
53654293ec3SDavid Daney union cvmx_ciu_intx_en1_w1c {
53754293ec3SDavid Daney 	uint64_t u64;
53854293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1c_s {
53954293ec3SDavid Daney 		uint64_t reserved_20_63:44;
54054293ec3SDavid Daney 		uint64_t nand:1;
54154293ec3SDavid Daney 		uint64_t mii1:1;
54254293ec3SDavid Daney 		uint64_t usb1:1;
54354293ec3SDavid Daney 		uint64_t uart2:1;
54454293ec3SDavid Daney 		uint64_t wdog:16;
54554293ec3SDavid Daney 	} s;
54654293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1c_cn52xx {
54754293ec3SDavid Daney 		uint64_t reserved_20_63:44;
54854293ec3SDavid Daney 		uint64_t nand:1;
54954293ec3SDavid Daney 		uint64_t mii1:1;
55054293ec3SDavid Daney 		uint64_t usb1:1;
55154293ec3SDavid Daney 		uint64_t uart2:1;
55254293ec3SDavid Daney 		uint64_t reserved_4_15:12;
55354293ec3SDavid Daney 		uint64_t wdog:4;
55454293ec3SDavid Daney 	} cn52xx;
55554293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1c_cn56xx {
55654293ec3SDavid Daney 		uint64_t reserved_12_63:52;
55754293ec3SDavid Daney 		uint64_t wdog:12;
55854293ec3SDavid Daney 	} cn56xx;
55954293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1c_cn58xx {
56054293ec3SDavid Daney 		uint64_t reserved_16_63:48;
56154293ec3SDavid Daney 		uint64_t wdog:16;
56254293ec3SDavid Daney 	} cn58xx;
56354293ec3SDavid Daney };
56454293ec3SDavid Daney 
56554293ec3SDavid Daney union cvmx_ciu_intx_en1_w1s {
56654293ec3SDavid Daney 	uint64_t u64;
56754293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1s_s {
56854293ec3SDavid Daney 		uint64_t reserved_20_63:44;
56954293ec3SDavid Daney 		uint64_t nand:1;
57054293ec3SDavid Daney 		uint64_t mii1:1;
57154293ec3SDavid Daney 		uint64_t usb1:1;
57254293ec3SDavid Daney 		uint64_t uart2:1;
57354293ec3SDavid Daney 		uint64_t wdog:16;
57454293ec3SDavid Daney 	} s;
57554293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1s_cn52xx {
57654293ec3SDavid Daney 		uint64_t reserved_20_63:44;
57754293ec3SDavid Daney 		uint64_t nand:1;
57854293ec3SDavid Daney 		uint64_t mii1:1;
57954293ec3SDavid Daney 		uint64_t usb1:1;
58054293ec3SDavid Daney 		uint64_t uart2:1;
58154293ec3SDavid Daney 		uint64_t reserved_4_15:12;
58254293ec3SDavid Daney 		uint64_t wdog:4;
58354293ec3SDavid Daney 	} cn52xx;
58454293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1s_cn56xx {
58554293ec3SDavid Daney 		uint64_t reserved_12_63:52;
58654293ec3SDavid Daney 		uint64_t wdog:12;
58754293ec3SDavid Daney 	} cn56xx;
58854293ec3SDavid Daney 	struct cvmx_ciu_intx_en1_w1s_cn58xx {
58954293ec3SDavid Daney 		uint64_t reserved_16_63:48;
59054293ec3SDavid Daney 		uint64_t wdog:16;
59154293ec3SDavid Daney 	} cn58xx;
59254293ec3SDavid Daney };
59354293ec3SDavid Daney 
59454293ec3SDavid Daney union cvmx_ciu_intx_en4_0 {
59554293ec3SDavid Daney 	uint64_t u64;
59654293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_s {
59754293ec3SDavid Daney 		uint64_t bootdma:1;
59854293ec3SDavid Daney 		uint64_t mii:1;
59954293ec3SDavid Daney 		uint64_t ipdppthr:1;
60054293ec3SDavid Daney 		uint64_t powiq:1;
60154293ec3SDavid Daney 		uint64_t twsi2:1;
60254293ec3SDavid Daney 		uint64_t mpi:1;
60354293ec3SDavid Daney 		uint64_t pcm:1;
60454293ec3SDavid Daney 		uint64_t usb:1;
60554293ec3SDavid Daney 		uint64_t timer:4;
60654293ec3SDavid Daney 		uint64_t key_zero:1;
60754293ec3SDavid Daney 		uint64_t ipd_drp:1;
60854293ec3SDavid Daney 		uint64_t gmx_drp:2;
60954293ec3SDavid Daney 		uint64_t trace:1;
61054293ec3SDavid Daney 		uint64_t rml:1;
61154293ec3SDavid Daney 		uint64_t twsi:1;
61254293ec3SDavid Daney 		uint64_t reserved_44_44:1;
61354293ec3SDavid Daney 		uint64_t pci_msi:4;
61454293ec3SDavid Daney 		uint64_t pci_int:4;
61554293ec3SDavid Daney 		uint64_t uart:2;
61654293ec3SDavid Daney 		uint64_t mbox:2;
61754293ec3SDavid Daney 		uint64_t gpio:16;
61854293ec3SDavid Daney 		uint64_t workq:16;
61954293ec3SDavid Daney 	} s;
62054293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn50xx {
62154293ec3SDavid Daney 		uint64_t reserved_59_63:5;
62254293ec3SDavid Daney 		uint64_t mpi:1;
62354293ec3SDavid Daney 		uint64_t pcm:1;
62454293ec3SDavid Daney 		uint64_t usb:1;
62554293ec3SDavid Daney 		uint64_t timer:4;
62654293ec3SDavid Daney 		uint64_t reserved_51_51:1;
62754293ec3SDavid Daney 		uint64_t ipd_drp:1;
62854293ec3SDavid Daney 		uint64_t reserved_49_49:1;
62954293ec3SDavid Daney 		uint64_t gmx_drp:1;
63054293ec3SDavid Daney 		uint64_t reserved_47_47:1;
63154293ec3SDavid Daney 		uint64_t rml:1;
63254293ec3SDavid Daney 		uint64_t twsi:1;
63354293ec3SDavid Daney 		uint64_t reserved_44_44:1;
63454293ec3SDavid Daney 		uint64_t pci_msi:4;
63554293ec3SDavid Daney 		uint64_t pci_int:4;
63654293ec3SDavid Daney 		uint64_t uart:2;
63754293ec3SDavid Daney 		uint64_t mbox:2;
63854293ec3SDavid Daney 		uint64_t gpio:16;
63954293ec3SDavid Daney 		uint64_t workq:16;
64054293ec3SDavid Daney 	} cn50xx;
64154293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn52xx {
64254293ec3SDavid Daney 		uint64_t bootdma:1;
64354293ec3SDavid Daney 		uint64_t mii:1;
64454293ec3SDavid Daney 		uint64_t ipdppthr:1;
64554293ec3SDavid Daney 		uint64_t powiq:1;
64654293ec3SDavid Daney 		uint64_t twsi2:1;
64754293ec3SDavid Daney 		uint64_t reserved_57_58:2;
64854293ec3SDavid Daney 		uint64_t usb:1;
64954293ec3SDavid Daney 		uint64_t timer:4;
65054293ec3SDavid Daney 		uint64_t reserved_51_51:1;
65154293ec3SDavid Daney 		uint64_t ipd_drp:1;
65254293ec3SDavid Daney 		uint64_t reserved_49_49:1;
65354293ec3SDavid Daney 		uint64_t gmx_drp:1;
65454293ec3SDavid Daney 		uint64_t trace:1;
65554293ec3SDavid Daney 		uint64_t rml:1;
65654293ec3SDavid Daney 		uint64_t twsi:1;
65754293ec3SDavid Daney 		uint64_t reserved_44_44:1;
65854293ec3SDavid Daney 		uint64_t pci_msi:4;
65954293ec3SDavid Daney 		uint64_t pci_int:4;
66054293ec3SDavid Daney 		uint64_t uart:2;
66154293ec3SDavid Daney 		uint64_t mbox:2;
66254293ec3SDavid Daney 		uint64_t gpio:16;
66354293ec3SDavid Daney 		uint64_t workq:16;
66454293ec3SDavid Daney 	} cn52xx;
66554293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn52xx cn52xxp1;
66654293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn56xx {
66754293ec3SDavid Daney 		uint64_t bootdma:1;
66854293ec3SDavid Daney 		uint64_t mii:1;
66954293ec3SDavid Daney 		uint64_t ipdppthr:1;
67054293ec3SDavid Daney 		uint64_t powiq:1;
67154293ec3SDavid Daney 		uint64_t twsi2:1;
67254293ec3SDavid Daney 		uint64_t reserved_57_58:2;
67354293ec3SDavid Daney 		uint64_t usb:1;
67454293ec3SDavid Daney 		uint64_t timer:4;
67554293ec3SDavid Daney 		uint64_t key_zero:1;
67654293ec3SDavid Daney 		uint64_t ipd_drp:1;
67754293ec3SDavid Daney 		uint64_t gmx_drp:2;
67854293ec3SDavid Daney 		uint64_t trace:1;
67954293ec3SDavid Daney 		uint64_t rml:1;
68054293ec3SDavid Daney 		uint64_t twsi:1;
68154293ec3SDavid Daney 		uint64_t reserved_44_44:1;
68254293ec3SDavid Daney 		uint64_t pci_msi:4;
68354293ec3SDavid Daney 		uint64_t pci_int:4;
68454293ec3SDavid Daney 		uint64_t uart:2;
68554293ec3SDavid Daney 		uint64_t mbox:2;
68654293ec3SDavid Daney 		uint64_t gpio:16;
68754293ec3SDavid Daney 		uint64_t workq:16;
68854293ec3SDavid Daney 	} cn56xx;
68954293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn56xx cn56xxp1;
69054293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn58xx {
69154293ec3SDavid Daney 		uint64_t reserved_56_63:8;
69254293ec3SDavid Daney 		uint64_t timer:4;
69354293ec3SDavid Daney 		uint64_t key_zero:1;
69454293ec3SDavid Daney 		uint64_t ipd_drp:1;
69554293ec3SDavid Daney 		uint64_t gmx_drp:2;
69654293ec3SDavid Daney 		uint64_t trace:1;
69754293ec3SDavid Daney 		uint64_t rml:1;
69854293ec3SDavid Daney 		uint64_t twsi:1;
69954293ec3SDavid Daney 		uint64_t reserved_44_44:1;
70054293ec3SDavid Daney 		uint64_t pci_msi:4;
70154293ec3SDavid Daney 		uint64_t pci_int:4;
70254293ec3SDavid Daney 		uint64_t uart:2;
70354293ec3SDavid Daney 		uint64_t mbox:2;
70454293ec3SDavid Daney 		uint64_t gpio:16;
70554293ec3SDavid Daney 		uint64_t workq:16;
70654293ec3SDavid Daney 	} cn58xx;
70754293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_cn58xx cn58xxp1;
70854293ec3SDavid Daney };
70954293ec3SDavid Daney 
71054293ec3SDavid Daney union cvmx_ciu_intx_en4_0_w1c {
71154293ec3SDavid Daney 	uint64_t u64;
71254293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1c_s {
71354293ec3SDavid Daney 		uint64_t bootdma:1;
71454293ec3SDavid Daney 		uint64_t mii:1;
71554293ec3SDavid Daney 		uint64_t ipdppthr:1;
71654293ec3SDavid Daney 		uint64_t powiq:1;
71754293ec3SDavid Daney 		uint64_t twsi2:1;
71854293ec3SDavid Daney 		uint64_t reserved_57_58:2;
71954293ec3SDavid Daney 		uint64_t usb:1;
72054293ec3SDavid Daney 		uint64_t timer:4;
72154293ec3SDavid Daney 		uint64_t key_zero:1;
72254293ec3SDavid Daney 		uint64_t ipd_drp:1;
72354293ec3SDavid Daney 		uint64_t gmx_drp:2;
72454293ec3SDavid Daney 		uint64_t trace:1;
72554293ec3SDavid Daney 		uint64_t rml:1;
72654293ec3SDavid Daney 		uint64_t twsi:1;
72754293ec3SDavid Daney 		uint64_t reserved_44_44:1;
72854293ec3SDavid Daney 		uint64_t pci_msi:4;
72954293ec3SDavid Daney 		uint64_t pci_int:4;
73054293ec3SDavid Daney 		uint64_t uart:2;
73154293ec3SDavid Daney 		uint64_t mbox:2;
73254293ec3SDavid Daney 		uint64_t gpio:16;
73354293ec3SDavid Daney 		uint64_t workq:16;
73454293ec3SDavid Daney 	} s;
73554293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1c_cn52xx {
73654293ec3SDavid Daney 		uint64_t bootdma:1;
73754293ec3SDavid Daney 		uint64_t mii:1;
73854293ec3SDavid Daney 		uint64_t ipdppthr:1;
73954293ec3SDavid Daney 		uint64_t powiq:1;
74054293ec3SDavid Daney 		uint64_t twsi2:1;
74154293ec3SDavid Daney 		uint64_t reserved_57_58:2;
74254293ec3SDavid Daney 		uint64_t usb:1;
74354293ec3SDavid Daney 		uint64_t timer:4;
74454293ec3SDavid Daney 		uint64_t reserved_51_51:1;
74554293ec3SDavid Daney 		uint64_t ipd_drp:1;
74654293ec3SDavid Daney 		uint64_t reserved_49_49:1;
74754293ec3SDavid Daney 		uint64_t gmx_drp:1;
74854293ec3SDavid Daney 		uint64_t trace:1;
74954293ec3SDavid Daney 		uint64_t rml:1;
75054293ec3SDavid Daney 		uint64_t twsi:1;
75154293ec3SDavid Daney 		uint64_t reserved_44_44:1;
75254293ec3SDavid Daney 		uint64_t pci_msi:4;
75354293ec3SDavid Daney 		uint64_t pci_int:4;
75454293ec3SDavid Daney 		uint64_t uart:2;
75554293ec3SDavid Daney 		uint64_t mbox:2;
75654293ec3SDavid Daney 		uint64_t gpio:16;
75754293ec3SDavid Daney 		uint64_t workq:16;
75854293ec3SDavid Daney 	} cn52xx;
75954293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1c_s cn56xx;
76054293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1c_cn58xx {
76154293ec3SDavid Daney 		uint64_t reserved_56_63:8;
76254293ec3SDavid Daney 		uint64_t timer:4;
76354293ec3SDavid Daney 		uint64_t key_zero:1;
76454293ec3SDavid Daney 		uint64_t ipd_drp:1;
76554293ec3SDavid Daney 		uint64_t gmx_drp:2;
76654293ec3SDavid Daney 		uint64_t trace:1;
76754293ec3SDavid Daney 		uint64_t rml:1;
76854293ec3SDavid Daney 		uint64_t twsi:1;
76954293ec3SDavid Daney 		uint64_t reserved_44_44:1;
77054293ec3SDavid Daney 		uint64_t pci_msi:4;
77154293ec3SDavid Daney 		uint64_t pci_int:4;
77254293ec3SDavid Daney 		uint64_t uart:2;
77354293ec3SDavid Daney 		uint64_t mbox:2;
77454293ec3SDavid Daney 		uint64_t gpio:16;
77554293ec3SDavid Daney 		uint64_t workq:16;
77654293ec3SDavid Daney 	} cn58xx;
77754293ec3SDavid Daney };
77854293ec3SDavid Daney 
77954293ec3SDavid Daney union cvmx_ciu_intx_en4_0_w1s {
78054293ec3SDavid Daney 	uint64_t u64;
78154293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1s_s {
78254293ec3SDavid Daney 		uint64_t bootdma:1;
78354293ec3SDavid Daney 		uint64_t mii:1;
78454293ec3SDavid Daney 		uint64_t ipdppthr:1;
78554293ec3SDavid Daney 		uint64_t powiq:1;
78654293ec3SDavid Daney 		uint64_t twsi2:1;
78754293ec3SDavid Daney 		uint64_t reserved_57_58:2;
78854293ec3SDavid Daney 		uint64_t usb:1;
78954293ec3SDavid Daney 		uint64_t timer:4;
79054293ec3SDavid Daney 		uint64_t key_zero:1;
79154293ec3SDavid Daney 		uint64_t ipd_drp:1;
79254293ec3SDavid Daney 		uint64_t gmx_drp:2;
79354293ec3SDavid Daney 		uint64_t trace:1;
79454293ec3SDavid Daney 		uint64_t rml:1;
79554293ec3SDavid Daney 		uint64_t twsi:1;
79654293ec3SDavid Daney 		uint64_t reserved_44_44:1;
79754293ec3SDavid Daney 		uint64_t pci_msi:4;
79854293ec3SDavid Daney 		uint64_t pci_int:4;
79954293ec3SDavid Daney 		uint64_t uart:2;
80054293ec3SDavid Daney 		uint64_t mbox:2;
80154293ec3SDavid Daney 		uint64_t gpio:16;
80254293ec3SDavid Daney 		uint64_t workq:16;
80354293ec3SDavid Daney 	} s;
80454293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1s_cn52xx {
80554293ec3SDavid Daney 		uint64_t bootdma:1;
80654293ec3SDavid Daney 		uint64_t mii:1;
80754293ec3SDavid Daney 		uint64_t ipdppthr:1;
80854293ec3SDavid Daney 		uint64_t powiq:1;
80954293ec3SDavid Daney 		uint64_t twsi2:1;
81054293ec3SDavid Daney 		uint64_t reserved_57_58:2;
81154293ec3SDavid Daney 		uint64_t usb:1;
81254293ec3SDavid Daney 		uint64_t timer:4;
81354293ec3SDavid Daney 		uint64_t reserved_51_51:1;
81454293ec3SDavid Daney 		uint64_t ipd_drp:1;
81554293ec3SDavid Daney 		uint64_t reserved_49_49:1;
81654293ec3SDavid Daney 		uint64_t gmx_drp:1;
81754293ec3SDavid Daney 		uint64_t trace:1;
81854293ec3SDavid Daney 		uint64_t rml:1;
81954293ec3SDavid Daney 		uint64_t twsi:1;
82054293ec3SDavid Daney 		uint64_t reserved_44_44:1;
82154293ec3SDavid Daney 		uint64_t pci_msi:4;
82254293ec3SDavid Daney 		uint64_t pci_int:4;
82354293ec3SDavid Daney 		uint64_t uart:2;
82454293ec3SDavid Daney 		uint64_t mbox:2;
82554293ec3SDavid Daney 		uint64_t gpio:16;
82654293ec3SDavid Daney 		uint64_t workq:16;
82754293ec3SDavid Daney 	} cn52xx;
82854293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1s_s cn56xx;
82954293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_0_w1s_cn58xx {
83054293ec3SDavid Daney 		uint64_t reserved_56_63:8;
83154293ec3SDavid Daney 		uint64_t timer:4;
83254293ec3SDavid Daney 		uint64_t key_zero:1;
83354293ec3SDavid Daney 		uint64_t ipd_drp:1;
83454293ec3SDavid Daney 		uint64_t gmx_drp:2;
83554293ec3SDavid Daney 		uint64_t trace:1;
83654293ec3SDavid Daney 		uint64_t rml:1;
83754293ec3SDavid Daney 		uint64_t twsi:1;
83854293ec3SDavid Daney 		uint64_t reserved_44_44:1;
83954293ec3SDavid Daney 		uint64_t pci_msi:4;
84054293ec3SDavid Daney 		uint64_t pci_int:4;
84154293ec3SDavid Daney 		uint64_t uart:2;
84254293ec3SDavid Daney 		uint64_t mbox:2;
84354293ec3SDavid Daney 		uint64_t gpio:16;
84454293ec3SDavid Daney 		uint64_t workq:16;
84554293ec3SDavid Daney 	} cn58xx;
84654293ec3SDavid Daney };
84754293ec3SDavid Daney 
84854293ec3SDavid Daney union cvmx_ciu_intx_en4_1 {
84954293ec3SDavid Daney 	uint64_t u64;
85054293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_s {
85154293ec3SDavid Daney 		uint64_t reserved_20_63:44;
85254293ec3SDavid Daney 		uint64_t nand:1;
85354293ec3SDavid Daney 		uint64_t mii1:1;
85454293ec3SDavid Daney 		uint64_t usb1:1;
85554293ec3SDavid Daney 		uint64_t uart2:1;
85654293ec3SDavid Daney 		uint64_t wdog:16;
85754293ec3SDavid Daney 	} s;
85854293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn50xx {
85954293ec3SDavid Daney 		uint64_t reserved_2_63:62;
86054293ec3SDavid Daney 		uint64_t wdog:2;
86154293ec3SDavid Daney 	} cn50xx;
86254293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn52xx {
86354293ec3SDavid Daney 		uint64_t reserved_20_63:44;
86454293ec3SDavid Daney 		uint64_t nand:1;
86554293ec3SDavid Daney 		uint64_t mii1:1;
86654293ec3SDavid Daney 		uint64_t usb1:1;
86754293ec3SDavid Daney 		uint64_t uart2:1;
86854293ec3SDavid Daney 		uint64_t reserved_4_15:12;
86954293ec3SDavid Daney 		uint64_t wdog:4;
87054293ec3SDavid Daney 	} cn52xx;
87154293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn52xxp1 {
87254293ec3SDavid Daney 		uint64_t reserved_19_63:45;
87354293ec3SDavid Daney 		uint64_t mii1:1;
87454293ec3SDavid Daney 		uint64_t usb1:1;
87554293ec3SDavid Daney 		uint64_t uart2:1;
87654293ec3SDavid Daney 		uint64_t reserved_4_15:12;
87754293ec3SDavid Daney 		uint64_t wdog:4;
87854293ec3SDavid Daney 	} cn52xxp1;
87954293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn56xx {
88054293ec3SDavid Daney 		uint64_t reserved_12_63:52;
88154293ec3SDavid Daney 		uint64_t wdog:12;
88254293ec3SDavid Daney 	} cn56xx;
88354293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn56xx cn56xxp1;
88454293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn58xx {
88554293ec3SDavid Daney 		uint64_t reserved_16_63:48;
88654293ec3SDavid Daney 		uint64_t wdog:16;
88754293ec3SDavid Daney 	} cn58xx;
88854293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_cn58xx cn58xxp1;
88954293ec3SDavid Daney };
89054293ec3SDavid Daney 
89154293ec3SDavid Daney union cvmx_ciu_intx_en4_1_w1c {
89254293ec3SDavid Daney 	uint64_t u64;
89354293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1c_s {
89454293ec3SDavid Daney 		uint64_t reserved_20_63:44;
89554293ec3SDavid Daney 		uint64_t nand:1;
89654293ec3SDavid Daney 		uint64_t mii1:1;
89754293ec3SDavid Daney 		uint64_t usb1:1;
89854293ec3SDavid Daney 		uint64_t uart2:1;
89954293ec3SDavid Daney 		uint64_t wdog:16;
90054293ec3SDavid Daney 	} s;
90154293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1c_cn52xx {
90254293ec3SDavid Daney 		uint64_t reserved_20_63:44;
90354293ec3SDavid Daney 		uint64_t nand:1;
90454293ec3SDavid Daney 		uint64_t mii1:1;
90554293ec3SDavid Daney 		uint64_t usb1:1;
90654293ec3SDavid Daney 		uint64_t uart2:1;
90754293ec3SDavid Daney 		uint64_t reserved_4_15:12;
90854293ec3SDavid Daney 		uint64_t wdog:4;
90954293ec3SDavid Daney 	} cn52xx;
91054293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1c_cn56xx {
91154293ec3SDavid Daney 		uint64_t reserved_12_63:52;
91254293ec3SDavid Daney 		uint64_t wdog:12;
91354293ec3SDavid Daney 	} cn56xx;
91454293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1c_cn58xx {
91554293ec3SDavid Daney 		uint64_t reserved_16_63:48;
91654293ec3SDavid Daney 		uint64_t wdog:16;
91754293ec3SDavid Daney 	} cn58xx;
91854293ec3SDavid Daney };
91954293ec3SDavid Daney 
92054293ec3SDavid Daney union cvmx_ciu_intx_en4_1_w1s {
92154293ec3SDavid Daney 	uint64_t u64;
92254293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1s_s {
92354293ec3SDavid Daney 		uint64_t reserved_20_63:44;
92454293ec3SDavid Daney 		uint64_t nand:1;
92554293ec3SDavid Daney 		uint64_t mii1:1;
92654293ec3SDavid Daney 		uint64_t usb1:1;
92754293ec3SDavid Daney 		uint64_t uart2:1;
92854293ec3SDavid Daney 		uint64_t wdog:16;
92954293ec3SDavid Daney 	} s;
93054293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1s_cn52xx {
93154293ec3SDavid Daney 		uint64_t reserved_20_63:44;
93254293ec3SDavid Daney 		uint64_t nand:1;
93354293ec3SDavid Daney 		uint64_t mii1:1;
93454293ec3SDavid Daney 		uint64_t usb1:1;
93554293ec3SDavid Daney 		uint64_t uart2:1;
93654293ec3SDavid Daney 		uint64_t reserved_4_15:12;
93754293ec3SDavid Daney 		uint64_t wdog:4;
93854293ec3SDavid Daney 	} cn52xx;
93954293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1s_cn56xx {
94054293ec3SDavid Daney 		uint64_t reserved_12_63:52;
94154293ec3SDavid Daney 		uint64_t wdog:12;
94254293ec3SDavid Daney 	} cn56xx;
94354293ec3SDavid Daney 	struct cvmx_ciu_intx_en4_1_w1s_cn58xx {
94454293ec3SDavid Daney 		uint64_t reserved_16_63:48;
94554293ec3SDavid Daney 		uint64_t wdog:16;
94654293ec3SDavid Daney 	} cn58xx;
94754293ec3SDavid Daney };
94854293ec3SDavid Daney 
94954293ec3SDavid Daney union cvmx_ciu_intx_sum0 {
95054293ec3SDavid Daney 	uint64_t u64;
95154293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_s {
95254293ec3SDavid Daney 		uint64_t bootdma:1;
95354293ec3SDavid Daney 		uint64_t mii:1;
95454293ec3SDavid Daney 		uint64_t ipdppthr:1;
95554293ec3SDavid Daney 		uint64_t powiq:1;
95654293ec3SDavid Daney 		uint64_t twsi2:1;
95754293ec3SDavid Daney 		uint64_t mpi:1;
95854293ec3SDavid Daney 		uint64_t pcm:1;
95954293ec3SDavid Daney 		uint64_t usb:1;
96054293ec3SDavid Daney 		uint64_t timer:4;
96154293ec3SDavid Daney 		uint64_t key_zero:1;
96254293ec3SDavid Daney 		uint64_t ipd_drp:1;
96354293ec3SDavid Daney 		uint64_t gmx_drp:2;
96454293ec3SDavid Daney 		uint64_t trace:1;
96554293ec3SDavid Daney 		uint64_t rml:1;
96654293ec3SDavid Daney 		uint64_t twsi:1;
96754293ec3SDavid Daney 		uint64_t wdog_sum:1;
96854293ec3SDavid Daney 		uint64_t pci_msi:4;
96954293ec3SDavid Daney 		uint64_t pci_int:4;
97054293ec3SDavid Daney 		uint64_t uart:2;
97154293ec3SDavid Daney 		uint64_t mbox:2;
97254293ec3SDavid Daney 		uint64_t gpio:16;
97354293ec3SDavid Daney 		uint64_t workq:16;
97454293ec3SDavid Daney 	} s;
97554293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn30xx {
97654293ec3SDavid Daney 		uint64_t reserved_59_63:5;
97754293ec3SDavid Daney 		uint64_t mpi:1;
97854293ec3SDavid Daney 		uint64_t pcm:1;
97954293ec3SDavid Daney 		uint64_t usb:1;
98054293ec3SDavid Daney 		uint64_t timer:4;
98154293ec3SDavid Daney 		uint64_t reserved_51_51:1;
98254293ec3SDavid Daney 		uint64_t ipd_drp:1;
98354293ec3SDavid Daney 		uint64_t reserved_49_49:1;
98454293ec3SDavid Daney 		uint64_t gmx_drp:1;
98554293ec3SDavid Daney 		uint64_t reserved_47_47:1;
98654293ec3SDavid Daney 		uint64_t rml:1;
98754293ec3SDavid Daney 		uint64_t twsi:1;
98854293ec3SDavid Daney 		uint64_t wdog_sum:1;
98954293ec3SDavid Daney 		uint64_t pci_msi:4;
99054293ec3SDavid Daney 		uint64_t pci_int:4;
99154293ec3SDavid Daney 		uint64_t uart:2;
99254293ec3SDavid Daney 		uint64_t mbox:2;
99354293ec3SDavid Daney 		uint64_t gpio:16;
99454293ec3SDavid Daney 		uint64_t workq:16;
99554293ec3SDavid Daney 	} cn30xx;
99654293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn31xx {
99754293ec3SDavid Daney 		uint64_t reserved_59_63:5;
99854293ec3SDavid Daney 		uint64_t mpi:1;
99954293ec3SDavid Daney 		uint64_t pcm:1;
100054293ec3SDavid Daney 		uint64_t usb:1;
100154293ec3SDavid Daney 		uint64_t timer:4;
100254293ec3SDavid Daney 		uint64_t reserved_51_51:1;
100354293ec3SDavid Daney 		uint64_t ipd_drp:1;
100454293ec3SDavid Daney 		uint64_t reserved_49_49:1;
100554293ec3SDavid Daney 		uint64_t gmx_drp:1;
100654293ec3SDavid Daney 		uint64_t trace:1;
100754293ec3SDavid Daney 		uint64_t rml:1;
100854293ec3SDavid Daney 		uint64_t twsi:1;
100954293ec3SDavid Daney 		uint64_t wdog_sum:1;
101054293ec3SDavid Daney 		uint64_t pci_msi:4;
101154293ec3SDavid Daney 		uint64_t pci_int:4;
101254293ec3SDavid Daney 		uint64_t uart:2;
101354293ec3SDavid Daney 		uint64_t mbox:2;
101454293ec3SDavid Daney 		uint64_t gpio:16;
101554293ec3SDavid Daney 		uint64_t workq:16;
101654293ec3SDavid Daney 	} cn31xx;
101754293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn38xx {
101854293ec3SDavid Daney 		uint64_t reserved_56_63:8;
101954293ec3SDavid Daney 		uint64_t timer:4;
102054293ec3SDavid Daney 		uint64_t key_zero:1;
102154293ec3SDavid Daney 		uint64_t ipd_drp:1;
102254293ec3SDavid Daney 		uint64_t gmx_drp:2;
102354293ec3SDavid Daney 		uint64_t trace:1;
102454293ec3SDavid Daney 		uint64_t rml:1;
102554293ec3SDavid Daney 		uint64_t twsi:1;
102654293ec3SDavid Daney 		uint64_t wdog_sum:1;
102754293ec3SDavid Daney 		uint64_t pci_msi:4;
102854293ec3SDavid Daney 		uint64_t pci_int:4;
102954293ec3SDavid Daney 		uint64_t uart:2;
103054293ec3SDavid Daney 		uint64_t mbox:2;
103154293ec3SDavid Daney 		uint64_t gpio:16;
103254293ec3SDavid Daney 		uint64_t workq:16;
103354293ec3SDavid Daney 	} cn38xx;
103454293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn38xx cn38xxp2;
103554293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn30xx cn50xx;
103654293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn52xx {
103754293ec3SDavid Daney 		uint64_t bootdma:1;
103854293ec3SDavid Daney 		uint64_t mii:1;
103954293ec3SDavid Daney 		uint64_t ipdppthr:1;
104054293ec3SDavid Daney 		uint64_t powiq:1;
104154293ec3SDavid Daney 		uint64_t twsi2:1;
104254293ec3SDavid Daney 		uint64_t reserved_57_58:2;
104354293ec3SDavid Daney 		uint64_t usb:1;
104454293ec3SDavid Daney 		uint64_t timer:4;
104554293ec3SDavid Daney 		uint64_t reserved_51_51:1;
104654293ec3SDavid Daney 		uint64_t ipd_drp:1;
104754293ec3SDavid Daney 		uint64_t reserved_49_49:1;
104854293ec3SDavid Daney 		uint64_t gmx_drp:1;
104954293ec3SDavid Daney 		uint64_t trace:1;
105054293ec3SDavid Daney 		uint64_t rml:1;
105154293ec3SDavid Daney 		uint64_t twsi:1;
105254293ec3SDavid Daney 		uint64_t wdog_sum:1;
105354293ec3SDavid Daney 		uint64_t pci_msi:4;
105454293ec3SDavid Daney 		uint64_t pci_int:4;
105554293ec3SDavid Daney 		uint64_t uart:2;
105654293ec3SDavid Daney 		uint64_t mbox:2;
105754293ec3SDavid Daney 		uint64_t gpio:16;
105854293ec3SDavid Daney 		uint64_t workq:16;
105954293ec3SDavid Daney 	} cn52xx;
106054293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn52xx cn52xxp1;
106154293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn56xx {
106254293ec3SDavid Daney 		uint64_t bootdma:1;
106354293ec3SDavid Daney 		uint64_t mii:1;
106454293ec3SDavid Daney 		uint64_t ipdppthr:1;
106554293ec3SDavid Daney 		uint64_t powiq:1;
106654293ec3SDavid Daney 		uint64_t twsi2:1;
106754293ec3SDavid Daney 		uint64_t reserved_57_58:2;
106854293ec3SDavid Daney 		uint64_t usb:1;
106954293ec3SDavid Daney 		uint64_t timer:4;
107054293ec3SDavid Daney 		uint64_t key_zero:1;
107154293ec3SDavid Daney 		uint64_t ipd_drp:1;
107254293ec3SDavid Daney 		uint64_t gmx_drp:2;
107354293ec3SDavid Daney 		uint64_t trace:1;
107454293ec3SDavid Daney 		uint64_t rml:1;
107554293ec3SDavid Daney 		uint64_t twsi:1;
107654293ec3SDavid Daney 		uint64_t wdog_sum:1;
107754293ec3SDavid Daney 		uint64_t pci_msi:4;
107854293ec3SDavid Daney 		uint64_t pci_int:4;
107954293ec3SDavid Daney 		uint64_t uart:2;
108054293ec3SDavid Daney 		uint64_t mbox:2;
108154293ec3SDavid Daney 		uint64_t gpio:16;
108254293ec3SDavid Daney 		uint64_t workq:16;
108354293ec3SDavid Daney 	} cn56xx;
108454293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn56xx cn56xxp1;
108554293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn38xx cn58xx;
108654293ec3SDavid Daney 	struct cvmx_ciu_intx_sum0_cn38xx cn58xxp1;
108754293ec3SDavid Daney };
108854293ec3SDavid Daney 
108954293ec3SDavid Daney union cvmx_ciu_intx_sum4 {
109054293ec3SDavid Daney 	uint64_t u64;
109154293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_s {
109254293ec3SDavid Daney 		uint64_t bootdma:1;
109354293ec3SDavid Daney 		uint64_t mii:1;
109454293ec3SDavid Daney 		uint64_t ipdppthr:1;
109554293ec3SDavid Daney 		uint64_t powiq:1;
109654293ec3SDavid Daney 		uint64_t twsi2:1;
109754293ec3SDavid Daney 		uint64_t mpi:1;
109854293ec3SDavid Daney 		uint64_t pcm:1;
109954293ec3SDavid Daney 		uint64_t usb:1;
110054293ec3SDavid Daney 		uint64_t timer:4;
110154293ec3SDavid Daney 		uint64_t key_zero:1;
110254293ec3SDavid Daney 		uint64_t ipd_drp:1;
110354293ec3SDavid Daney 		uint64_t gmx_drp:2;
110454293ec3SDavid Daney 		uint64_t trace:1;
110554293ec3SDavid Daney 		uint64_t rml:1;
110654293ec3SDavid Daney 		uint64_t twsi:1;
110754293ec3SDavid Daney 		uint64_t wdog_sum:1;
110854293ec3SDavid Daney 		uint64_t pci_msi:4;
110954293ec3SDavid Daney 		uint64_t pci_int:4;
111054293ec3SDavid Daney 		uint64_t uart:2;
111154293ec3SDavid Daney 		uint64_t mbox:2;
111254293ec3SDavid Daney 		uint64_t gpio:16;
111354293ec3SDavid Daney 		uint64_t workq:16;
111454293ec3SDavid Daney 	} s;
111554293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn50xx {
111654293ec3SDavid Daney 		uint64_t reserved_59_63:5;
111754293ec3SDavid Daney 		uint64_t mpi:1;
111854293ec3SDavid Daney 		uint64_t pcm:1;
111954293ec3SDavid Daney 		uint64_t usb:1;
112054293ec3SDavid Daney 		uint64_t timer:4;
112154293ec3SDavid Daney 		uint64_t reserved_51_51:1;
112254293ec3SDavid Daney 		uint64_t ipd_drp:1;
112354293ec3SDavid Daney 		uint64_t reserved_49_49:1;
112454293ec3SDavid Daney 		uint64_t gmx_drp:1;
112554293ec3SDavid Daney 		uint64_t reserved_47_47:1;
112654293ec3SDavid Daney 		uint64_t rml:1;
112754293ec3SDavid Daney 		uint64_t twsi:1;
112854293ec3SDavid Daney 		uint64_t wdog_sum:1;
112954293ec3SDavid Daney 		uint64_t pci_msi:4;
113054293ec3SDavid Daney 		uint64_t pci_int:4;
113154293ec3SDavid Daney 		uint64_t uart:2;
113254293ec3SDavid Daney 		uint64_t mbox:2;
113354293ec3SDavid Daney 		uint64_t gpio:16;
113454293ec3SDavid Daney 		uint64_t workq:16;
113554293ec3SDavid Daney 	} cn50xx;
113654293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn52xx {
113754293ec3SDavid Daney 		uint64_t bootdma:1;
113854293ec3SDavid Daney 		uint64_t mii:1;
113954293ec3SDavid Daney 		uint64_t ipdppthr:1;
114054293ec3SDavid Daney 		uint64_t powiq:1;
114154293ec3SDavid Daney 		uint64_t twsi2:1;
114254293ec3SDavid Daney 		uint64_t reserved_57_58:2;
114354293ec3SDavid Daney 		uint64_t usb:1;
114454293ec3SDavid Daney 		uint64_t timer:4;
114554293ec3SDavid Daney 		uint64_t reserved_51_51:1;
114654293ec3SDavid Daney 		uint64_t ipd_drp:1;
114754293ec3SDavid Daney 		uint64_t reserved_49_49:1;
114854293ec3SDavid Daney 		uint64_t gmx_drp:1;
114954293ec3SDavid Daney 		uint64_t trace:1;
115054293ec3SDavid Daney 		uint64_t rml:1;
115154293ec3SDavid Daney 		uint64_t twsi:1;
115254293ec3SDavid Daney 		uint64_t wdog_sum:1;
115354293ec3SDavid Daney 		uint64_t pci_msi:4;
115454293ec3SDavid Daney 		uint64_t pci_int:4;
115554293ec3SDavid Daney 		uint64_t uart:2;
115654293ec3SDavid Daney 		uint64_t mbox:2;
115754293ec3SDavid Daney 		uint64_t gpio:16;
115854293ec3SDavid Daney 		uint64_t workq:16;
115954293ec3SDavid Daney 	} cn52xx;
116054293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn52xx cn52xxp1;
116154293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn56xx {
116254293ec3SDavid Daney 		uint64_t bootdma:1;
116354293ec3SDavid Daney 		uint64_t mii:1;
116454293ec3SDavid Daney 		uint64_t ipdppthr:1;
116554293ec3SDavid Daney 		uint64_t powiq:1;
116654293ec3SDavid Daney 		uint64_t twsi2:1;
116754293ec3SDavid Daney 		uint64_t reserved_57_58:2;
116854293ec3SDavid Daney 		uint64_t usb:1;
116954293ec3SDavid Daney 		uint64_t timer:4;
117054293ec3SDavid Daney 		uint64_t key_zero:1;
117154293ec3SDavid Daney 		uint64_t ipd_drp:1;
117254293ec3SDavid Daney 		uint64_t gmx_drp:2;
117354293ec3SDavid Daney 		uint64_t trace:1;
117454293ec3SDavid Daney 		uint64_t rml:1;
117554293ec3SDavid Daney 		uint64_t twsi:1;
117654293ec3SDavid Daney 		uint64_t wdog_sum:1;
117754293ec3SDavid Daney 		uint64_t pci_msi:4;
117854293ec3SDavid Daney 		uint64_t pci_int:4;
117954293ec3SDavid Daney 		uint64_t uart:2;
118054293ec3SDavid Daney 		uint64_t mbox:2;
118154293ec3SDavid Daney 		uint64_t gpio:16;
118254293ec3SDavid Daney 		uint64_t workq:16;
118354293ec3SDavid Daney 	} cn56xx;
118454293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn56xx cn56xxp1;
118554293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn58xx {
118654293ec3SDavid Daney 		uint64_t reserved_56_63:8;
118754293ec3SDavid Daney 		uint64_t timer:4;
118854293ec3SDavid Daney 		uint64_t key_zero:1;
118954293ec3SDavid Daney 		uint64_t ipd_drp:1;
119054293ec3SDavid Daney 		uint64_t gmx_drp:2;
119154293ec3SDavid Daney 		uint64_t trace:1;
119254293ec3SDavid Daney 		uint64_t rml:1;
119354293ec3SDavid Daney 		uint64_t twsi:1;
119454293ec3SDavid Daney 		uint64_t wdog_sum:1;
119554293ec3SDavid Daney 		uint64_t pci_msi:4;
119654293ec3SDavid Daney 		uint64_t pci_int:4;
119754293ec3SDavid Daney 		uint64_t uart:2;
119854293ec3SDavid Daney 		uint64_t mbox:2;
119954293ec3SDavid Daney 		uint64_t gpio:16;
120054293ec3SDavid Daney 		uint64_t workq:16;
120154293ec3SDavid Daney 	} cn58xx;
120254293ec3SDavid Daney 	struct cvmx_ciu_intx_sum4_cn58xx cn58xxp1;
120354293ec3SDavid Daney };
120454293ec3SDavid Daney 
120554293ec3SDavid Daney union cvmx_ciu_int_sum1 {
120654293ec3SDavid Daney 	uint64_t u64;
120754293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_s {
120854293ec3SDavid Daney 		uint64_t reserved_20_63:44;
120954293ec3SDavid Daney 		uint64_t nand:1;
121054293ec3SDavid Daney 		uint64_t mii1:1;
121154293ec3SDavid Daney 		uint64_t usb1:1;
121254293ec3SDavid Daney 		uint64_t uart2:1;
121354293ec3SDavid Daney 		uint64_t wdog:16;
121454293ec3SDavid Daney 	} s;
121554293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn30xx {
121654293ec3SDavid Daney 		uint64_t reserved_1_63:63;
121754293ec3SDavid Daney 		uint64_t wdog:1;
121854293ec3SDavid Daney 	} cn30xx;
121954293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn31xx {
122054293ec3SDavid Daney 		uint64_t reserved_2_63:62;
122154293ec3SDavid Daney 		uint64_t wdog:2;
122254293ec3SDavid Daney 	} cn31xx;
122354293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn38xx {
122454293ec3SDavid Daney 		uint64_t reserved_16_63:48;
122554293ec3SDavid Daney 		uint64_t wdog:16;
122654293ec3SDavid Daney 	} cn38xx;
122754293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn38xx cn38xxp2;
122854293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn31xx cn50xx;
122954293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn52xx {
123054293ec3SDavid Daney 		uint64_t reserved_20_63:44;
123154293ec3SDavid Daney 		uint64_t nand:1;
123254293ec3SDavid Daney 		uint64_t mii1:1;
123354293ec3SDavid Daney 		uint64_t usb1:1;
123454293ec3SDavid Daney 		uint64_t uart2:1;
123554293ec3SDavid Daney 		uint64_t reserved_4_15:12;
123654293ec3SDavid Daney 		uint64_t wdog:4;
123754293ec3SDavid Daney 	} cn52xx;
123854293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn52xxp1 {
123954293ec3SDavid Daney 		uint64_t reserved_19_63:45;
124054293ec3SDavid Daney 		uint64_t mii1:1;
124154293ec3SDavid Daney 		uint64_t usb1:1;
124254293ec3SDavid Daney 		uint64_t uart2:1;
124354293ec3SDavid Daney 		uint64_t reserved_4_15:12;
124454293ec3SDavid Daney 		uint64_t wdog:4;
124554293ec3SDavid Daney 	} cn52xxp1;
124654293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn56xx {
124754293ec3SDavid Daney 		uint64_t reserved_12_63:52;
124854293ec3SDavid Daney 		uint64_t wdog:12;
124954293ec3SDavid Daney 	} cn56xx;
125054293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn56xx cn56xxp1;
125154293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn38xx cn58xx;
125254293ec3SDavid Daney 	struct cvmx_ciu_int_sum1_cn38xx cn58xxp1;
125354293ec3SDavid Daney };
125454293ec3SDavid Daney 
125554293ec3SDavid Daney union cvmx_ciu_mbox_clrx {
125654293ec3SDavid Daney 	uint64_t u64;
125754293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s {
125854293ec3SDavid Daney 		uint64_t reserved_32_63:32;
125954293ec3SDavid Daney 		uint64_t bits:32;
126054293ec3SDavid Daney 	} s;
126154293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn30xx;
126254293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn31xx;
126354293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn38xx;
126454293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn38xxp2;
126554293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn50xx;
126654293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn52xx;
126754293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn52xxp1;
126854293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn56xx;
126954293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn56xxp1;
127054293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn58xx;
127154293ec3SDavid Daney 	struct cvmx_ciu_mbox_clrx_s cn58xxp1;
127254293ec3SDavid Daney };
127354293ec3SDavid Daney 
127454293ec3SDavid Daney union cvmx_ciu_mbox_setx {
127554293ec3SDavid Daney 	uint64_t u64;
127654293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s {
127754293ec3SDavid Daney 		uint64_t reserved_32_63:32;
127854293ec3SDavid Daney 		uint64_t bits:32;
127954293ec3SDavid Daney 	} s;
128054293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn30xx;
128154293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn31xx;
128254293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn38xx;
128354293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn38xxp2;
128454293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn50xx;
128554293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn52xx;
128654293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn52xxp1;
128754293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn56xx;
128854293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn56xxp1;
128954293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn58xx;
129054293ec3SDavid Daney 	struct cvmx_ciu_mbox_setx_s cn58xxp1;
129154293ec3SDavid Daney };
129254293ec3SDavid Daney 
129354293ec3SDavid Daney union cvmx_ciu_nmi {
129454293ec3SDavid Daney 	uint64_t u64;
129554293ec3SDavid Daney 	struct cvmx_ciu_nmi_s {
129654293ec3SDavid Daney 		uint64_t reserved_16_63:48;
129754293ec3SDavid Daney 		uint64_t nmi:16;
129854293ec3SDavid Daney 	} s;
129954293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn30xx {
130054293ec3SDavid Daney 		uint64_t reserved_1_63:63;
130154293ec3SDavid Daney 		uint64_t nmi:1;
130254293ec3SDavid Daney 	} cn30xx;
130354293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn31xx {
130454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
130554293ec3SDavid Daney 		uint64_t nmi:2;
130654293ec3SDavid Daney 	} cn31xx;
130754293ec3SDavid Daney 	struct cvmx_ciu_nmi_s cn38xx;
130854293ec3SDavid Daney 	struct cvmx_ciu_nmi_s cn38xxp2;
130954293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn31xx cn50xx;
131054293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn52xx {
131154293ec3SDavid Daney 		uint64_t reserved_4_63:60;
131254293ec3SDavid Daney 		uint64_t nmi:4;
131354293ec3SDavid Daney 	} cn52xx;
131454293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn52xx cn52xxp1;
131554293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn56xx {
131654293ec3SDavid Daney 		uint64_t reserved_12_63:52;
131754293ec3SDavid Daney 		uint64_t nmi:12;
131854293ec3SDavid Daney 	} cn56xx;
131954293ec3SDavid Daney 	struct cvmx_ciu_nmi_cn56xx cn56xxp1;
132054293ec3SDavid Daney 	struct cvmx_ciu_nmi_s cn58xx;
132154293ec3SDavid Daney 	struct cvmx_ciu_nmi_s cn58xxp1;
132254293ec3SDavid Daney };
132354293ec3SDavid Daney 
132454293ec3SDavid Daney union cvmx_ciu_pci_inta {
132554293ec3SDavid Daney 	uint64_t u64;
132654293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s {
132754293ec3SDavid Daney 		uint64_t reserved_2_63:62;
132854293ec3SDavid Daney 		uint64_t intr:2;
132954293ec3SDavid Daney 	} s;
133054293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn30xx;
133154293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn31xx;
133254293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn38xx;
133354293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn38xxp2;
133454293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn50xx;
133554293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn52xx;
133654293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn52xxp1;
133754293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn56xx;
133854293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn56xxp1;
133954293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn58xx;
134054293ec3SDavid Daney 	struct cvmx_ciu_pci_inta_s cn58xxp1;
134154293ec3SDavid Daney };
134254293ec3SDavid Daney 
134354293ec3SDavid Daney union cvmx_ciu_pp_dbg {
134454293ec3SDavid Daney 	uint64_t u64;
134554293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_s {
134654293ec3SDavid Daney 		uint64_t reserved_16_63:48;
134754293ec3SDavid Daney 		uint64_t ppdbg:16;
134854293ec3SDavid Daney 	} s;
134954293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn30xx {
135054293ec3SDavid Daney 		uint64_t reserved_1_63:63;
135154293ec3SDavid Daney 		uint64_t ppdbg:1;
135254293ec3SDavid Daney 	} cn30xx;
135354293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn31xx {
135454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
135554293ec3SDavid Daney 		uint64_t ppdbg:2;
135654293ec3SDavid Daney 	} cn31xx;
135754293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_s cn38xx;
135854293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_s cn38xxp2;
135954293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn31xx cn50xx;
136054293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn52xx {
136154293ec3SDavid Daney 		uint64_t reserved_4_63:60;
136254293ec3SDavid Daney 		uint64_t ppdbg:4;
136354293ec3SDavid Daney 	} cn52xx;
136454293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn52xx cn52xxp1;
136554293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn56xx {
136654293ec3SDavid Daney 		uint64_t reserved_12_63:52;
136754293ec3SDavid Daney 		uint64_t ppdbg:12;
136854293ec3SDavid Daney 	} cn56xx;
136954293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_cn56xx cn56xxp1;
137054293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_s cn58xx;
137154293ec3SDavid Daney 	struct cvmx_ciu_pp_dbg_s cn58xxp1;
137254293ec3SDavid Daney };
137354293ec3SDavid Daney 
137454293ec3SDavid Daney union cvmx_ciu_pp_pokex {
137554293ec3SDavid Daney 	uint64_t u64;
137654293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s {
137754293ec3SDavid Daney 		uint64_t reserved_0_63:64;
137854293ec3SDavid Daney 	} s;
137954293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn30xx;
138054293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn31xx;
138154293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn38xx;
138254293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn38xxp2;
138354293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn50xx;
138454293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn52xx;
138554293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn52xxp1;
138654293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn56xx;
138754293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn56xxp1;
138854293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn58xx;
138954293ec3SDavid Daney 	struct cvmx_ciu_pp_pokex_s cn58xxp1;
139054293ec3SDavid Daney };
139154293ec3SDavid Daney 
139254293ec3SDavid Daney union cvmx_ciu_pp_rst {
139354293ec3SDavid Daney 	uint64_t u64;
139454293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_s {
139554293ec3SDavid Daney 		uint64_t reserved_16_63:48;
139654293ec3SDavid Daney 		uint64_t rst:15;
139754293ec3SDavid Daney 		uint64_t rst0:1;
139854293ec3SDavid Daney 	} s;
139954293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn30xx {
140054293ec3SDavid Daney 		uint64_t reserved_1_63:63;
140154293ec3SDavid Daney 		uint64_t rst0:1;
140254293ec3SDavid Daney 	} cn30xx;
140354293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn31xx {
140454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
140554293ec3SDavid Daney 		uint64_t rst:1;
140654293ec3SDavid Daney 		uint64_t rst0:1;
140754293ec3SDavid Daney 	} cn31xx;
140854293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_s cn38xx;
140954293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_s cn38xxp2;
141054293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn31xx cn50xx;
141154293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn52xx {
141254293ec3SDavid Daney 		uint64_t reserved_4_63:60;
141354293ec3SDavid Daney 		uint64_t rst:3;
141454293ec3SDavid Daney 		uint64_t rst0:1;
141554293ec3SDavid Daney 	} cn52xx;
141654293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn52xx cn52xxp1;
141754293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn56xx {
141854293ec3SDavid Daney 		uint64_t reserved_12_63:52;
141954293ec3SDavid Daney 		uint64_t rst:11;
142054293ec3SDavid Daney 		uint64_t rst0:1;
142154293ec3SDavid Daney 	} cn56xx;
142254293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_cn56xx cn56xxp1;
142354293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_s cn58xx;
142454293ec3SDavid Daney 	struct cvmx_ciu_pp_rst_s cn58xxp1;
142554293ec3SDavid Daney };
142654293ec3SDavid Daney 
142754293ec3SDavid Daney union cvmx_ciu_qlm_dcok {
142854293ec3SDavid Daney 	uint64_t u64;
142954293ec3SDavid Daney 	struct cvmx_ciu_qlm_dcok_s {
143054293ec3SDavid Daney 		uint64_t reserved_4_63:60;
143154293ec3SDavid Daney 		uint64_t qlm_dcok:4;
143254293ec3SDavid Daney 	} s;
143354293ec3SDavid Daney 	struct cvmx_ciu_qlm_dcok_cn52xx {
143454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
143554293ec3SDavid Daney 		uint64_t qlm_dcok:2;
143654293ec3SDavid Daney 	} cn52xx;
143754293ec3SDavid Daney 	struct cvmx_ciu_qlm_dcok_cn52xx cn52xxp1;
143854293ec3SDavid Daney 	struct cvmx_ciu_qlm_dcok_s cn56xx;
143954293ec3SDavid Daney 	struct cvmx_ciu_qlm_dcok_s cn56xxp1;
144054293ec3SDavid Daney };
144154293ec3SDavid Daney 
144254293ec3SDavid Daney union cvmx_ciu_qlm_jtgc {
144354293ec3SDavid Daney 	uint64_t u64;
144454293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgc_s {
144554293ec3SDavid Daney 		uint64_t reserved_11_63:53;
144654293ec3SDavid Daney 		uint64_t clk_div:3;
144754293ec3SDavid Daney 		uint64_t reserved_6_7:2;
144854293ec3SDavid Daney 		uint64_t mux_sel:2;
144954293ec3SDavid Daney 		uint64_t bypass:4;
145054293ec3SDavid Daney 	} s;
145154293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgc_cn52xx {
145254293ec3SDavid Daney 		uint64_t reserved_11_63:53;
145354293ec3SDavid Daney 		uint64_t clk_div:3;
145454293ec3SDavid Daney 		uint64_t reserved_5_7:3;
145554293ec3SDavid Daney 		uint64_t mux_sel:1;
145654293ec3SDavid Daney 		uint64_t reserved_2_3:2;
145754293ec3SDavid Daney 		uint64_t bypass:2;
145854293ec3SDavid Daney 	} cn52xx;
145954293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgc_cn52xx cn52xxp1;
146054293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgc_s cn56xx;
146154293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgc_s cn56xxp1;
146254293ec3SDavid Daney };
146354293ec3SDavid Daney 
146454293ec3SDavid Daney union cvmx_ciu_qlm_jtgd {
146554293ec3SDavid Daney 	uint64_t u64;
146654293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgd_s {
146754293ec3SDavid Daney 		uint64_t capture:1;
146854293ec3SDavid Daney 		uint64_t shift:1;
146954293ec3SDavid Daney 		uint64_t update:1;
147054293ec3SDavid Daney 		uint64_t reserved_44_60:17;
147154293ec3SDavid Daney 		uint64_t select:4;
147254293ec3SDavid Daney 		uint64_t reserved_37_39:3;
147354293ec3SDavid Daney 		uint64_t shft_cnt:5;
147454293ec3SDavid Daney 		uint64_t shft_reg:32;
147554293ec3SDavid Daney 	} s;
147654293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgd_cn52xx {
147754293ec3SDavid Daney 		uint64_t capture:1;
147854293ec3SDavid Daney 		uint64_t shift:1;
147954293ec3SDavid Daney 		uint64_t update:1;
148054293ec3SDavid Daney 		uint64_t reserved_42_60:19;
148154293ec3SDavid Daney 		uint64_t select:2;
148254293ec3SDavid Daney 		uint64_t reserved_37_39:3;
148354293ec3SDavid Daney 		uint64_t shft_cnt:5;
148454293ec3SDavid Daney 		uint64_t shft_reg:32;
148554293ec3SDavid Daney 	} cn52xx;
148654293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgd_cn52xx cn52xxp1;
148754293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgd_s cn56xx;
148854293ec3SDavid Daney 	struct cvmx_ciu_qlm_jtgd_cn56xxp1 {
148954293ec3SDavid Daney 		uint64_t capture:1;
149054293ec3SDavid Daney 		uint64_t shift:1;
149154293ec3SDavid Daney 		uint64_t update:1;
149254293ec3SDavid Daney 		uint64_t reserved_37_60:24;
149354293ec3SDavid Daney 		uint64_t shft_cnt:5;
149454293ec3SDavid Daney 		uint64_t shft_reg:32;
149554293ec3SDavid Daney 	} cn56xxp1;
149654293ec3SDavid Daney };
149754293ec3SDavid Daney 
149854293ec3SDavid Daney union cvmx_ciu_soft_bist {
149954293ec3SDavid Daney 	uint64_t u64;
150054293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s {
150154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
150254293ec3SDavid Daney 		uint64_t soft_bist:1;
150354293ec3SDavid Daney 	} s;
150454293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn30xx;
150554293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn31xx;
150654293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn38xx;
150754293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn38xxp2;
150854293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn50xx;
150954293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn52xx;
151054293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn52xxp1;
151154293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn56xx;
151254293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn56xxp1;
151354293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn58xx;
151454293ec3SDavid Daney 	struct cvmx_ciu_soft_bist_s cn58xxp1;
151554293ec3SDavid Daney };
151654293ec3SDavid Daney 
151754293ec3SDavid Daney union cvmx_ciu_soft_prst {
151854293ec3SDavid Daney 	uint64_t u64;
151954293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s {
152054293ec3SDavid Daney 		uint64_t reserved_3_63:61;
152154293ec3SDavid Daney 		uint64_t host64:1;
152254293ec3SDavid Daney 		uint64_t npi:1;
152354293ec3SDavid Daney 		uint64_t soft_prst:1;
152454293ec3SDavid Daney 	} s;
152554293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn30xx;
152654293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn31xx;
152754293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn38xx;
152854293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn38xxp2;
152954293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn50xx;
153054293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_cn52xx {
153154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
153254293ec3SDavid Daney 		uint64_t soft_prst:1;
153354293ec3SDavid Daney 	} cn52xx;
153454293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_cn52xx cn52xxp1;
153554293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_cn52xx cn56xx;
153654293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_cn52xx cn56xxp1;
153754293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn58xx;
153854293ec3SDavid Daney 	struct cvmx_ciu_soft_prst_s cn58xxp1;
153954293ec3SDavid Daney };
154054293ec3SDavid Daney 
154154293ec3SDavid Daney union cvmx_ciu_soft_prst1 {
154254293ec3SDavid Daney 	uint64_t u64;
154354293ec3SDavid Daney 	struct cvmx_ciu_soft_prst1_s {
154454293ec3SDavid Daney 		uint64_t reserved_1_63:63;
154554293ec3SDavid Daney 		uint64_t soft_prst:1;
154654293ec3SDavid Daney 	} s;
154754293ec3SDavid Daney 	struct cvmx_ciu_soft_prst1_s cn52xx;
154854293ec3SDavid Daney 	struct cvmx_ciu_soft_prst1_s cn52xxp1;
154954293ec3SDavid Daney 	struct cvmx_ciu_soft_prst1_s cn56xx;
155054293ec3SDavid Daney 	struct cvmx_ciu_soft_prst1_s cn56xxp1;
155154293ec3SDavid Daney };
155254293ec3SDavid Daney 
155354293ec3SDavid Daney union cvmx_ciu_soft_rst {
155454293ec3SDavid Daney 	uint64_t u64;
155554293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s {
155654293ec3SDavid Daney 		uint64_t reserved_1_63:63;
155754293ec3SDavid Daney 		uint64_t soft_rst:1;
155854293ec3SDavid Daney 	} s;
155954293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn30xx;
156054293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn31xx;
156154293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn38xx;
156254293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn38xxp2;
156354293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn50xx;
156454293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn52xx;
156554293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn52xxp1;
156654293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn56xx;
156754293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn56xxp1;
156854293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn58xx;
156954293ec3SDavid Daney 	struct cvmx_ciu_soft_rst_s cn58xxp1;
157054293ec3SDavid Daney };
157154293ec3SDavid Daney 
157254293ec3SDavid Daney union cvmx_ciu_timx {
157354293ec3SDavid Daney 	uint64_t u64;
157454293ec3SDavid Daney 	struct cvmx_ciu_timx_s {
157554293ec3SDavid Daney 		uint64_t reserved_37_63:27;
157654293ec3SDavid Daney 		uint64_t one_shot:1;
157754293ec3SDavid Daney 		uint64_t len:36;
157854293ec3SDavid Daney 	} s;
157954293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn30xx;
158054293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn31xx;
158154293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn38xx;
158254293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn38xxp2;
158354293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn50xx;
158454293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn52xx;
158554293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn52xxp1;
158654293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn56xx;
158754293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn56xxp1;
158854293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn58xx;
158954293ec3SDavid Daney 	struct cvmx_ciu_timx_s cn58xxp1;
159054293ec3SDavid Daney };
159154293ec3SDavid Daney 
159254293ec3SDavid Daney union cvmx_ciu_wdogx {
159354293ec3SDavid Daney 	uint64_t u64;
159454293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s {
159554293ec3SDavid Daney 		uint64_t reserved_46_63:18;
159654293ec3SDavid Daney 		uint64_t gstopen:1;
159754293ec3SDavid Daney 		uint64_t dstop:1;
159854293ec3SDavid Daney 		uint64_t cnt:24;
159954293ec3SDavid Daney 		uint64_t len:16;
160054293ec3SDavid Daney 		uint64_t state:2;
160154293ec3SDavid Daney 		uint64_t mode:2;
160254293ec3SDavid Daney 	} s;
160354293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn30xx;
160454293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn31xx;
160554293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn38xx;
160654293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn38xxp2;
160754293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn50xx;
160854293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn52xx;
160954293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn52xxp1;
161054293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn56xx;
161154293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn56xxp1;
161254293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn58xx;
161354293ec3SDavid Daney 	struct cvmx_ciu_wdogx_s cn58xxp1;
161454293ec3SDavid Daney };
161554293ec3SDavid Daney 
161654293ec3SDavid Daney #endif
1617