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  *
7c5aa59e8SDavid Daney  * Copyright (c) 2003-2012 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_MIO_DEFS_H__
2954293ec3SDavid Daney #define __CVMX_MIO_DEFS_H__
3054293ec3SDavid Daney 
31aa32a955SDavid Daney #define CVMX_MIO_BOOT_BIST_STAT (CVMX_ADD_IO_SEG(0x00011800000000F8ull))
32aa32a955SDavid Daney #define CVMX_MIO_BOOT_COMP (CVMX_ADD_IO_SEG(0x00011800000000B8ull))
33aa32a955SDavid Daney #define CVMX_MIO_BOOT_DMA_CFGX(offset) (CVMX_ADD_IO_SEG(0x0001180000000100ull) + ((offset) & 3) * 8)
34aa32a955SDavid Daney #define CVMX_MIO_BOOT_DMA_INTX(offset) (CVMX_ADD_IO_SEG(0x0001180000000138ull) + ((offset) & 3) * 8)
35aa32a955SDavid Daney #define CVMX_MIO_BOOT_DMA_INT_ENX(offset) (CVMX_ADD_IO_SEG(0x0001180000000150ull) + ((offset) & 3) * 8)
36aa32a955SDavid Daney #define CVMX_MIO_BOOT_DMA_TIMX(offset) (CVMX_ADD_IO_SEG(0x0001180000000120ull) + ((offset) & 3) * 8)
37aa32a955SDavid Daney #define CVMX_MIO_BOOT_ERR (CVMX_ADD_IO_SEG(0x00011800000000A0ull))
38aa32a955SDavid Daney #define CVMX_MIO_BOOT_INT (CVMX_ADD_IO_SEG(0x00011800000000A8ull))
39aa32a955SDavid Daney #define CVMX_MIO_BOOT_LOC_ADR (CVMX_ADD_IO_SEG(0x0001180000000090ull))
40aa32a955SDavid Daney #define CVMX_MIO_BOOT_LOC_CFGX(offset) (CVMX_ADD_IO_SEG(0x0001180000000080ull) + ((offset) & 1) * 8)
41aa32a955SDavid Daney #define CVMX_MIO_BOOT_LOC_DAT (CVMX_ADD_IO_SEG(0x0001180000000098ull))
42aa32a955SDavid Daney #define CVMX_MIO_BOOT_PIN_DEFS (CVMX_ADD_IO_SEG(0x00011800000000C0ull))
43aa32a955SDavid Daney #define CVMX_MIO_BOOT_REG_CFGX(offset) (CVMX_ADD_IO_SEG(0x0001180000000000ull) + ((offset) & 7) * 8)
44aa32a955SDavid Daney #define CVMX_MIO_BOOT_REG_TIMX(offset) (CVMX_ADD_IO_SEG(0x0001180000000040ull) + ((offset) & 7) * 8)
45aa32a955SDavid Daney #define CVMX_MIO_BOOT_THR (CVMX_ADD_IO_SEG(0x00011800000000B0ull))
46751c9f68SDavid Daney #define CVMX_MIO_EMM_BUF_DAT (CVMX_ADD_IO_SEG(0x00011800000020E8ull))
47751c9f68SDavid Daney #define CVMX_MIO_EMM_BUF_IDX (CVMX_ADD_IO_SEG(0x00011800000020E0ull))
48751c9f68SDavid Daney #define CVMX_MIO_EMM_CFG (CVMX_ADD_IO_SEG(0x0001180000002000ull))
49751c9f68SDavid Daney #define CVMX_MIO_EMM_CMD (CVMX_ADD_IO_SEG(0x0001180000002058ull))
50751c9f68SDavid Daney #define CVMX_MIO_EMM_DMA (CVMX_ADD_IO_SEG(0x0001180000002050ull))
51751c9f68SDavid Daney #define CVMX_MIO_EMM_INT (CVMX_ADD_IO_SEG(0x0001180000002078ull))
52751c9f68SDavid Daney #define CVMX_MIO_EMM_INT_EN (CVMX_ADD_IO_SEG(0x0001180000002080ull))
53751c9f68SDavid Daney #define CVMX_MIO_EMM_MODEX(offset) (CVMX_ADD_IO_SEG(0x0001180000002008ull) + ((offset) & 3) * 8)
54751c9f68SDavid Daney #define CVMX_MIO_EMM_RCA (CVMX_ADD_IO_SEG(0x00011800000020A0ull))
55751c9f68SDavid Daney #define CVMX_MIO_EMM_RSP_HI (CVMX_ADD_IO_SEG(0x0001180000002070ull))
56751c9f68SDavid Daney #define CVMX_MIO_EMM_RSP_LO (CVMX_ADD_IO_SEG(0x0001180000002068ull))
57751c9f68SDavid Daney #define CVMX_MIO_EMM_RSP_STS (CVMX_ADD_IO_SEG(0x0001180000002060ull))
58751c9f68SDavid Daney #define CVMX_MIO_EMM_SAMPLE (CVMX_ADD_IO_SEG(0x0001180000002090ull))
59751c9f68SDavid Daney #define CVMX_MIO_EMM_STS_MASK (CVMX_ADD_IO_SEG(0x0001180000002098ull))
60751c9f68SDavid Daney #define CVMX_MIO_EMM_SWITCH (CVMX_ADD_IO_SEG(0x0001180000002048ull))
61751c9f68SDavid Daney #define CVMX_MIO_EMM_WDOG (CVMX_ADD_IO_SEG(0x0001180000002088ull))
62aa32a955SDavid Daney #define CVMX_MIO_FUS_BNK_DATX(offset) (CVMX_ADD_IO_SEG(0x0001180000001520ull) + ((offset) & 3) * 8)
63aa32a955SDavid Daney #define CVMX_MIO_FUS_DAT0 (CVMX_ADD_IO_SEG(0x0001180000001400ull))
64aa32a955SDavid Daney #define CVMX_MIO_FUS_DAT1 (CVMX_ADD_IO_SEG(0x0001180000001408ull))
65aa32a955SDavid Daney #define CVMX_MIO_FUS_DAT2 (CVMX_ADD_IO_SEG(0x0001180000001410ull))
66aa32a955SDavid Daney #define CVMX_MIO_FUS_DAT3 (CVMX_ADD_IO_SEG(0x0001180000001418ull))
67aa32a955SDavid Daney #define CVMX_MIO_FUS_EMA (CVMX_ADD_IO_SEG(0x0001180000001550ull))
68aa32a955SDavid Daney #define CVMX_MIO_FUS_PDF (CVMX_ADD_IO_SEG(0x0001180000001420ull))
69aa32a955SDavid Daney #define CVMX_MIO_FUS_PLL (CVMX_ADD_IO_SEG(0x0001180000001580ull))
70aa32a955SDavid Daney #define CVMX_MIO_FUS_PROG (CVMX_ADD_IO_SEG(0x0001180000001510ull))
71aa32a955SDavid Daney #define CVMX_MIO_FUS_PROG_TIMES (CVMX_ADD_IO_SEG(0x0001180000001518ull))
72aa32a955SDavid Daney #define CVMX_MIO_FUS_RCMD (CVMX_ADD_IO_SEG(0x0001180000001500ull))
73aa32a955SDavid Daney #define CVMX_MIO_FUS_READ_TIMES (CVMX_ADD_IO_SEG(0x0001180000001570ull))
74aa32a955SDavid Daney #define CVMX_MIO_FUS_REPAIR_RES0 (CVMX_ADD_IO_SEG(0x0001180000001558ull))
75aa32a955SDavid Daney #define CVMX_MIO_FUS_REPAIR_RES1 (CVMX_ADD_IO_SEG(0x0001180000001560ull))
76aa32a955SDavid Daney #define CVMX_MIO_FUS_REPAIR_RES2 (CVMX_ADD_IO_SEG(0x0001180000001568ull))
77aa32a955SDavid Daney #define CVMX_MIO_FUS_SPR_REPAIR_RES (CVMX_ADD_IO_SEG(0x0001180000001548ull))
78aa32a955SDavid Daney #define CVMX_MIO_FUS_SPR_REPAIR_SUM (CVMX_ADD_IO_SEG(0x0001180000001540ull))
79751c9f68SDavid Daney #define CVMX_MIO_FUS_TGG (CVMX_ADD_IO_SEG(0x0001180000001428ull))
80aa32a955SDavid Daney #define CVMX_MIO_FUS_UNLOCK (CVMX_ADD_IO_SEG(0x0001180000001578ull))
81aa32a955SDavid Daney #define CVMX_MIO_FUS_WADR (CVMX_ADD_IO_SEG(0x0001180000001508ull))
82aa32a955SDavid Daney #define CVMX_MIO_GPIO_COMP (CVMX_ADD_IO_SEG(0x00011800000000C8ull))
83aa32a955SDavid Daney #define CVMX_MIO_NDF_DMA_CFG (CVMX_ADD_IO_SEG(0x0001180000000168ull))
84aa32a955SDavid Daney #define CVMX_MIO_NDF_DMA_INT (CVMX_ADD_IO_SEG(0x0001180000000170ull))
85aa32a955SDavid Daney #define CVMX_MIO_NDF_DMA_INT_EN (CVMX_ADD_IO_SEG(0x0001180000000178ull))
86aa32a955SDavid Daney #define CVMX_MIO_PLL_CTL (CVMX_ADD_IO_SEG(0x0001180000001448ull))
87aa32a955SDavid Daney #define CVMX_MIO_PLL_SETTING (CVMX_ADD_IO_SEG(0x0001180000001440ull))
88751c9f68SDavid Daney #define CVMX_MIO_PTP_CKOUT_HI_INCR (CVMX_ADD_IO_SEG(0x0001070000000F40ull))
89751c9f68SDavid Daney #define CVMX_MIO_PTP_CKOUT_LO_INCR (CVMX_ADD_IO_SEG(0x0001070000000F48ull))
90751c9f68SDavid Daney #define CVMX_MIO_PTP_CKOUT_THRESH_HI (CVMX_ADD_IO_SEG(0x0001070000000F38ull))
91751c9f68SDavid Daney #define CVMX_MIO_PTP_CKOUT_THRESH_LO (CVMX_ADD_IO_SEG(0x0001070000000F30ull))
92aa32a955SDavid Daney #define CVMX_MIO_PTP_CLOCK_CFG (CVMX_ADD_IO_SEG(0x0001070000000F00ull))
93aa32a955SDavid Daney #define CVMX_MIO_PTP_CLOCK_COMP (CVMX_ADD_IO_SEG(0x0001070000000F18ull))
94aa32a955SDavid Daney #define CVMX_MIO_PTP_CLOCK_HI (CVMX_ADD_IO_SEG(0x0001070000000F10ull))
95aa32a955SDavid Daney #define CVMX_MIO_PTP_CLOCK_LO (CVMX_ADD_IO_SEG(0x0001070000000F08ull))
96aa32a955SDavid Daney #define CVMX_MIO_PTP_EVT_CNT (CVMX_ADD_IO_SEG(0x0001070000000F28ull))
97c5aa59e8SDavid Daney #define CVMX_MIO_PTP_PHY_1PPS_IN (CVMX_ADD_IO_SEG(0x0001070000000F70ull))
98751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_HI_INCR (CVMX_ADD_IO_SEG(0x0001070000000F60ull))
99751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_LO_INCR (CVMX_ADD_IO_SEG(0x0001070000000F68ull))
100751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_THRESH_HI (CVMX_ADD_IO_SEG(0x0001070000000F58ull))
101751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_THRESH_LO (CVMX_ADD_IO_SEG(0x0001070000000F50ull))
102aa32a955SDavid Daney #define CVMX_MIO_PTP_TIMESTAMP (CVMX_ADD_IO_SEG(0x0001070000000F20ull))
103751c9f68SDavid Daney #define CVMX_MIO_QLMX_CFG(offset) (CVMX_ADD_IO_SEG(0x0001180000001590ull) + ((offset) & 7) * 8)
104aa32a955SDavid Daney #define CVMX_MIO_RST_BOOT (CVMX_ADD_IO_SEG(0x0001180000001600ull))
105aa32a955SDavid Daney #define CVMX_MIO_RST_CFG (CVMX_ADD_IO_SEG(0x0001180000001610ull))
106751c9f68SDavid Daney #define CVMX_MIO_RST_CKILL (CVMX_ADD_IO_SEG(0x0001180000001638ull))
107751c9f68SDavid Daney #define CVMX_MIO_RST_CNTLX(offset) (CVMX_ADD_IO_SEG(0x0001180000001648ull) + ((offset) & 3) * 8)
108aa32a955SDavid Daney #define CVMX_MIO_RST_CTLX(offset) (CVMX_ADD_IO_SEG(0x0001180000001618ull) + ((offset) & 1) * 8)
109aa32a955SDavid Daney #define CVMX_MIO_RST_DELAY (CVMX_ADD_IO_SEG(0x0001180000001608ull))
110aa32a955SDavid Daney #define CVMX_MIO_RST_INT (CVMX_ADD_IO_SEG(0x0001180000001628ull))
111aa32a955SDavid Daney #define CVMX_MIO_RST_INT_EN (CVMX_ADD_IO_SEG(0x0001180000001630ull))
112aa32a955SDavid Daney #define CVMX_MIO_TWSX_INT(offset) (CVMX_ADD_IO_SEG(0x0001180000001010ull) + ((offset) & 1) * 512)
113aa32a955SDavid Daney #define CVMX_MIO_TWSX_SW_TWSI(offset) (CVMX_ADD_IO_SEG(0x0001180000001000ull) + ((offset) & 1) * 512)
114aa32a955SDavid Daney #define CVMX_MIO_TWSX_SW_TWSI_EXT(offset) (CVMX_ADD_IO_SEG(0x0001180000001018ull) + ((offset) & 1) * 512)
115aa32a955SDavid Daney #define CVMX_MIO_TWSX_TWSI_SW(offset) (CVMX_ADD_IO_SEG(0x0001180000001008ull) + ((offset) & 1) * 512)
116aa32a955SDavid Daney #define CVMX_MIO_UART2_DLH (CVMX_ADD_IO_SEG(0x0001180000000488ull))
117aa32a955SDavid Daney #define CVMX_MIO_UART2_DLL (CVMX_ADD_IO_SEG(0x0001180000000480ull))
118aa32a955SDavid Daney #define CVMX_MIO_UART2_FAR (CVMX_ADD_IO_SEG(0x0001180000000520ull))
119aa32a955SDavid Daney #define CVMX_MIO_UART2_FCR (CVMX_ADD_IO_SEG(0x0001180000000450ull))
120aa32a955SDavid Daney #define CVMX_MIO_UART2_HTX (CVMX_ADD_IO_SEG(0x0001180000000708ull))
121aa32a955SDavid Daney #define CVMX_MIO_UART2_IER (CVMX_ADD_IO_SEG(0x0001180000000408ull))
122aa32a955SDavid Daney #define CVMX_MIO_UART2_IIR (CVMX_ADD_IO_SEG(0x0001180000000410ull))
123aa32a955SDavid Daney #define CVMX_MIO_UART2_LCR (CVMX_ADD_IO_SEG(0x0001180000000418ull))
124aa32a955SDavid Daney #define CVMX_MIO_UART2_LSR (CVMX_ADD_IO_SEG(0x0001180000000428ull))
125aa32a955SDavid Daney #define CVMX_MIO_UART2_MCR (CVMX_ADD_IO_SEG(0x0001180000000420ull))
126aa32a955SDavid Daney #define CVMX_MIO_UART2_MSR (CVMX_ADD_IO_SEG(0x0001180000000430ull))
127aa32a955SDavid Daney #define CVMX_MIO_UART2_RBR (CVMX_ADD_IO_SEG(0x0001180000000400ull))
128aa32a955SDavid Daney #define CVMX_MIO_UART2_RFL (CVMX_ADD_IO_SEG(0x0001180000000608ull))
129aa32a955SDavid Daney #define CVMX_MIO_UART2_RFW (CVMX_ADD_IO_SEG(0x0001180000000530ull))
130aa32a955SDavid Daney #define CVMX_MIO_UART2_SBCR (CVMX_ADD_IO_SEG(0x0001180000000620ull))
131aa32a955SDavid Daney #define CVMX_MIO_UART2_SCR (CVMX_ADD_IO_SEG(0x0001180000000438ull))
132aa32a955SDavid Daney #define CVMX_MIO_UART2_SFE (CVMX_ADD_IO_SEG(0x0001180000000630ull))
133aa32a955SDavid Daney #define CVMX_MIO_UART2_SRR (CVMX_ADD_IO_SEG(0x0001180000000610ull))
134aa32a955SDavid Daney #define CVMX_MIO_UART2_SRT (CVMX_ADD_IO_SEG(0x0001180000000638ull))
135aa32a955SDavid Daney #define CVMX_MIO_UART2_SRTS (CVMX_ADD_IO_SEG(0x0001180000000618ull))
136aa32a955SDavid Daney #define CVMX_MIO_UART2_STT (CVMX_ADD_IO_SEG(0x0001180000000700ull))
137aa32a955SDavid Daney #define CVMX_MIO_UART2_TFL (CVMX_ADD_IO_SEG(0x0001180000000600ull))
138aa32a955SDavid Daney #define CVMX_MIO_UART2_TFR (CVMX_ADD_IO_SEG(0x0001180000000528ull))
139aa32a955SDavid Daney #define CVMX_MIO_UART2_THR (CVMX_ADD_IO_SEG(0x0001180000000440ull))
140aa32a955SDavid Daney #define CVMX_MIO_UART2_USR (CVMX_ADD_IO_SEG(0x0001180000000538ull))
141aa32a955SDavid Daney #define CVMX_MIO_UARTX_DLH(offset) (CVMX_ADD_IO_SEG(0x0001180000000888ull) + ((offset) & 1) * 1024)
142aa32a955SDavid Daney #define CVMX_MIO_UARTX_DLL(offset) (CVMX_ADD_IO_SEG(0x0001180000000880ull) + ((offset) & 1) * 1024)
143aa32a955SDavid Daney #define CVMX_MIO_UARTX_FAR(offset) (CVMX_ADD_IO_SEG(0x0001180000000920ull) + ((offset) & 1) * 1024)
144aa32a955SDavid Daney #define CVMX_MIO_UARTX_FCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000850ull) + ((offset) & 1) * 1024)
145aa32a955SDavid Daney #define CVMX_MIO_UARTX_HTX(offset) (CVMX_ADD_IO_SEG(0x0001180000000B08ull) + ((offset) & 1) * 1024)
146aa32a955SDavid Daney #define CVMX_MIO_UARTX_IER(offset) (CVMX_ADD_IO_SEG(0x0001180000000808ull) + ((offset) & 1) * 1024)
147aa32a955SDavid Daney #define CVMX_MIO_UARTX_IIR(offset) (CVMX_ADD_IO_SEG(0x0001180000000810ull) + ((offset) & 1) * 1024)
148aa32a955SDavid Daney #define CVMX_MIO_UARTX_LCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000818ull) + ((offset) & 1) * 1024)
149aa32a955SDavid Daney #define CVMX_MIO_UARTX_LSR(offset) (CVMX_ADD_IO_SEG(0x0001180000000828ull) + ((offset) & 1) * 1024)
150aa32a955SDavid Daney #define CVMX_MIO_UARTX_MCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000820ull) + ((offset) & 1) * 1024)
151aa32a955SDavid Daney #define CVMX_MIO_UARTX_MSR(offset) (CVMX_ADD_IO_SEG(0x0001180000000830ull) + ((offset) & 1) * 1024)
152aa32a955SDavid Daney #define CVMX_MIO_UARTX_RBR(offset) (CVMX_ADD_IO_SEG(0x0001180000000800ull) + ((offset) & 1) * 1024)
153aa32a955SDavid Daney #define CVMX_MIO_UARTX_RFL(offset) (CVMX_ADD_IO_SEG(0x0001180000000A08ull) + ((offset) & 1) * 1024)
154aa32a955SDavid Daney #define CVMX_MIO_UARTX_RFW(offset) (CVMX_ADD_IO_SEG(0x0001180000000930ull) + ((offset) & 1) * 1024)
155aa32a955SDavid Daney #define CVMX_MIO_UARTX_SBCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000A20ull) + ((offset) & 1) * 1024)
156aa32a955SDavid Daney #define CVMX_MIO_UARTX_SCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000838ull) + ((offset) & 1) * 1024)
157aa32a955SDavid Daney #define CVMX_MIO_UARTX_SFE(offset) (CVMX_ADD_IO_SEG(0x0001180000000A30ull) + ((offset) & 1) * 1024)
158aa32a955SDavid Daney #define CVMX_MIO_UARTX_SRR(offset) (CVMX_ADD_IO_SEG(0x0001180000000A10ull) + ((offset) & 1) * 1024)
159aa32a955SDavid Daney #define CVMX_MIO_UARTX_SRT(offset) (CVMX_ADD_IO_SEG(0x0001180000000A38ull) + ((offset) & 1) * 1024)
160aa32a955SDavid Daney #define CVMX_MIO_UARTX_SRTS(offset) (CVMX_ADD_IO_SEG(0x0001180000000A18ull) + ((offset) & 1) * 1024)
161aa32a955SDavid Daney #define CVMX_MIO_UARTX_STT(offset) (CVMX_ADD_IO_SEG(0x0001180000000B00ull) + ((offset) & 1) * 1024)
162aa32a955SDavid Daney #define CVMX_MIO_UARTX_TFL(offset) (CVMX_ADD_IO_SEG(0x0001180000000A00ull) + ((offset) & 1) * 1024)
163aa32a955SDavid Daney #define CVMX_MIO_UARTX_TFR(offset) (CVMX_ADD_IO_SEG(0x0001180000000928ull) + ((offset) & 1) * 1024)
164aa32a955SDavid Daney #define CVMX_MIO_UARTX_THR(offset) (CVMX_ADD_IO_SEG(0x0001180000000840ull) + ((offset) & 1) * 1024)
165aa32a955SDavid Daney #define CVMX_MIO_UARTX_USR(offset) (CVMX_ADD_IO_SEG(0x0001180000000938ull) + ((offset) & 1) * 1024)
16654293ec3SDavid Daney 
16754293ec3SDavid Daney union cvmx_mio_boot_bist_stat {
16854293ec3SDavid Daney 	uint64_t u64;
16954293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_s {
170c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
171aa32a955SDavid Daney 		uint64_t reserved_0_63:64;
172c5aa59e8SDavid Daney #else
173c5aa59e8SDavid Daney 		uint64_t reserved_0_63:64;
174c5aa59e8SDavid Daney #endif
17554293ec3SDavid Daney 	} s;
17654293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn30xx {
177c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
17854293ec3SDavid Daney 		uint64_t reserved_4_63:60;
17954293ec3SDavid Daney 		uint64_t ncbo_1:1;
18054293ec3SDavid Daney 		uint64_t ncbo_0:1;
18154293ec3SDavid Daney 		uint64_t loc:1;
18254293ec3SDavid Daney 		uint64_t ncbi:1;
183c5aa59e8SDavid Daney #else
184c5aa59e8SDavid Daney 		uint64_t ncbi:1;
185c5aa59e8SDavid Daney 		uint64_t loc:1;
186c5aa59e8SDavid Daney 		uint64_t ncbo_0:1;
187c5aa59e8SDavid Daney 		uint64_t ncbo_1:1;
188c5aa59e8SDavid Daney 		uint64_t reserved_4_63:60;
189c5aa59e8SDavid Daney #endif
19054293ec3SDavid Daney 	} cn30xx;
19154293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn38xx {
192c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
19354293ec3SDavid Daney 		uint64_t reserved_3_63:61;
19454293ec3SDavid Daney 		uint64_t ncbo_0:1;
19554293ec3SDavid Daney 		uint64_t loc:1;
19654293ec3SDavid Daney 		uint64_t ncbi:1;
197c5aa59e8SDavid Daney #else
198c5aa59e8SDavid Daney 		uint64_t ncbi:1;
199c5aa59e8SDavid Daney 		uint64_t loc:1;
200c5aa59e8SDavid Daney 		uint64_t ncbo_0:1;
201c5aa59e8SDavid Daney 		uint64_t reserved_3_63:61;
202c5aa59e8SDavid Daney #endif
20354293ec3SDavid Daney 	} cn38xx;
20454293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn50xx {
205c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
20654293ec3SDavid Daney 		uint64_t reserved_6_63:58;
20754293ec3SDavid Daney 		uint64_t pcm_1:1;
20854293ec3SDavid Daney 		uint64_t pcm_0:1;
20954293ec3SDavid Daney 		uint64_t ncbo_1:1;
21054293ec3SDavid Daney 		uint64_t ncbo_0:1;
21154293ec3SDavid Daney 		uint64_t loc:1;
21254293ec3SDavid Daney 		uint64_t ncbi:1;
213c5aa59e8SDavid Daney #else
214c5aa59e8SDavid Daney 		uint64_t ncbi:1;
215c5aa59e8SDavid Daney 		uint64_t loc:1;
216c5aa59e8SDavid Daney 		uint64_t ncbo_0:1;
217c5aa59e8SDavid Daney 		uint64_t ncbo_1:1;
218c5aa59e8SDavid Daney 		uint64_t pcm_0:1;
219c5aa59e8SDavid Daney 		uint64_t pcm_1:1;
220c5aa59e8SDavid Daney 		uint64_t reserved_6_63:58;
221c5aa59e8SDavid Daney #endif
22254293ec3SDavid Daney 	} cn50xx;
22354293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn52xx {
224c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
22554293ec3SDavid Daney 		uint64_t reserved_6_63:58;
22654293ec3SDavid Daney 		uint64_t ndf:2;
22754293ec3SDavid Daney 		uint64_t ncbo_0:1;
22854293ec3SDavid Daney 		uint64_t dma:1;
22954293ec3SDavid Daney 		uint64_t loc:1;
23054293ec3SDavid Daney 		uint64_t ncbi:1;
231c5aa59e8SDavid Daney #else
232c5aa59e8SDavid Daney 		uint64_t ncbi:1;
233c5aa59e8SDavid Daney 		uint64_t loc:1;
234c5aa59e8SDavid Daney 		uint64_t dma:1;
235c5aa59e8SDavid Daney 		uint64_t ncbo_0:1;
236c5aa59e8SDavid Daney 		uint64_t ndf:2;
237c5aa59e8SDavid Daney 		uint64_t reserved_6_63:58;
238c5aa59e8SDavid Daney #endif
23954293ec3SDavid Daney 	} cn52xx;
24054293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn52xxp1 {
241c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
24254293ec3SDavid Daney 		uint64_t reserved_4_63:60;
24354293ec3SDavid Daney 		uint64_t ncbo_0:1;
24454293ec3SDavid Daney 		uint64_t dma:1;
24554293ec3SDavid Daney 		uint64_t loc:1;
24654293ec3SDavid Daney 		uint64_t ncbi:1;
247c5aa59e8SDavid Daney #else
248c5aa59e8SDavid Daney 		uint64_t ncbi:1;
249c5aa59e8SDavid Daney 		uint64_t loc:1;
250c5aa59e8SDavid Daney 		uint64_t dma:1;
251c5aa59e8SDavid Daney 		uint64_t ncbo_0:1;
252c5aa59e8SDavid Daney 		uint64_t reserved_4_63:60;
253c5aa59e8SDavid Daney #endif
25454293ec3SDavid Daney 	} cn52xxp1;
255751c9f68SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn61xx {
256c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
257751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
258751c9f68SDavid Daney 		uint64_t stat:12;
259c5aa59e8SDavid Daney #else
260c5aa59e8SDavid Daney 		uint64_t stat:12;
261c5aa59e8SDavid Daney 		uint64_t reserved_12_63:52;
262c5aa59e8SDavid Daney #endif
263751c9f68SDavid Daney 	} cn61xx;
264aa32a955SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn63xx {
265c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
266aa32a955SDavid Daney 		uint64_t reserved_9_63:55;
267aa32a955SDavid Daney 		uint64_t stat:9;
268c5aa59e8SDavid Daney #else
269c5aa59e8SDavid Daney 		uint64_t stat:9;
270c5aa59e8SDavid Daney 		uint64_t reserved_9_63:55;
271c5aa59e8SDavid Daney #endif
272aa32a955SDavid Daney 	} cn63xx;
273751c9f68SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn66xx {
274c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
275751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
276751c9f68SDavid Daney 		uint64_t stat:10;
277c5aa59e8SDavid Daney #else
278c5aa59e8SDavid Daney 		uint64_t stat:10;
279c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
280c5aa59e8SDavid Daney #endif
281751c9f68SDavid Daney 	} cn66xx;
28254293ec3SDavid Daney };
28354293ec3SDavid Daney 
28454293ec3SDavid Daney union cvmx_mio_boot_comp {
28554293ec3SDavid Daney 	uint64_t u64;
28654293ec3SDavid Daney 	struct cvmx_mio_boot_comp_s {
287c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
288aa32a955SDavid Daney 		uint64_t reserved_0_63:64;
289c5aa59e8SDavid Daney #else
290c5aa59e8SDavid Daney 		uint64_t reserved_0_63:64;
291c5aa59e8SDavid Daney #endif
292aa32a955SDavid Daney 	} s;
293aa32a955SDavid Daney 	struct cvmx_mio_boot_comp_cn50xx {
294c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
29554293ec3SDavid Daney 		uint64_t reserved_10_63:54;
29654293ec3SDavid Daney 		uint64_t pctl:5;
29754293ec3SDavid Daney 		uint64_t nctl:5;
298c5aa59e8SDavid Daney #else
299c5aa59e8SDavid Daney 		uint64_t nctl:5;
300c5aa59e8SDavid Daney 		uint64_t pctl:5;
301c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
302c5aa59e8SDavid Daney #endif
303aa32a955SDavid Daney 	} cn50xx;
304751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx {
305c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
306aa32a955SDavid Daney 		uint64_t reserved_12_63:52;
307aa32a955SDavid Daney 		uint64_t pctl:6;
308aa32a955SDavid Daney 		uint64_t nctl:6;
309c5aa59e8SDavid Daney #else
310c5aa59e8SDavid Daney 		uint64_t nctl:6;
311c5aa59e8SDavid Daney 		uint64_t pctl:6;
312c5aa59e8SDavid Daney 		uint64_t reserved_12_63:52;
313c5aa59e8SDavid Daney #endif
314751c9f68SDavid Daney 	} cn61xx;
31554293ec3SDavid Daney };
31654293ec3SDavid Daney 
31754293ec3SDavid Daney union cvmx_mio_boot_dma_cfgx {
31854293ec3SDavid Daney 	uint64_t u64;
31954293ec3SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s {
320c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
32154293ec3SDavid Daney 		uint64_t en:1;
32254293ec3SDavid Daney 		uint64_t rw:1;
32354293ec3SDavid Daney 		uint64_t clr:1;
32454293ec3SDavid Daney 		uint64_t reserved_60_60:1;
32554293ec3SDavid Daney 		uint64_t swap32:1;
32654293ec3SDavid Daney 		uint64_t swap16:1;
32754293ec3SDavid Daney 		uint64_t swap8:1;
32854293ec3SDavid Daney 		uint64_t endian:1;
32954293ec3SDavid Daney 		uint64_t size:20;
33054293ec3SDavid Daney 		uint64_t adr:36;
331c5aa59e8SDavid Daney #else
332c5aa59e8SDavid Daney 		uint64_t adr:36;
333c5aa59e8SDavid Daney 		uint64_t size:20;
334c5aa59e8SDavid Daney 		uint64_t endian:1;
335c5aa59e8SDavid Daney 		uint64_t swap8:1;
336c5aa59e8SDavid Daney 		uint64_t swap16:1;
337c5aa59e8SDavid Daney 		uint64_t swap32:1;
338c5aa59e8SDavid Daney 		uint64_t reserved_60_60:1;
339c5aa59e8SDavid Daney 		uint64_t clr:1;
340c5aa59e8SDavid Daney 		uint64_t rw:1;
341c5aa59e8SDavid Daney 		uint64_t en:1;
342c5aa59e8SDavid Daney #endif
34354293ec3SDavid Daney 	} s;
34454293ec3SDavid Daney };
34554293ec3SDavid Daney 
34654293ec3SDavid Daney union cvmx_mio_boot_dma_intx {
34754293ec3SDavid Daney 	uint64_t u64;
34854293ec3SDavid Daney 	struct cvmx_mio_boot_dma_intx_s {
349c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
35054293ec3SDavid Daney 		uint64_t reserved_2_63:62;
35154293ec3SDavid Daney 		uint64_t dmarq:1;
35254293ec3SDavid Daney 		uint64_t done:1;
353c5aa59e8SDavid Daney #else
354c5aa59e8SDavid Daney 		uint64_t done:1;
355c5aa59e8SDavid Daney 		uint64_t dmarq:1;
356c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
357c5aa59e8SDavid Daney #endif
35854293ec3SDavid Daney 	} s;
35954293ec3SDavid Daney };
36054293ec3SDavid Daney 
36154293ec3SDavid Daney union cvmx_mio_boot_dma_int_enx {
36254293ec3SDavid Daney 	uint64_t u64;
36354293ec3SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s {
364c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
36554293ec3SDavid Daney 		uint64_t reserved_2_63:62;
36654293ec3SDavid Daney 		uint64_t dmarq:1;
36754293ec3SDavid Daney 		uint64_t done:1;
368c5aa59e8SDavid Daney #else
369c5aa59e8SDavid Daney 		uint64_t done:1;
370c5aa59e8SDavid Daney 		uint64_t dmarq:1;
371c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
372c5aa59e8SDavid Daney #endif
37354293ec3SDavid Daney 	} s;
37454293ec3SDavid Daney };
37554293ec3SDavid Daney 
37654293ec3SDavid Daney union cvmx_mio_boot_dma_timx {
37754293ec3SDavid Daney 	uint64_t u64;
37854293ec3SDavid Daney 	struct cvmx_mio_boot_dma_timx_s {
379c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
38054293ec3SDavid Daney 		uint64_t dmack_pi:1;
38154293ec3SDavid Daney 		uint64_t dmarq_pi:1;
38254293ec3SDavid Daney 		uint64_t tim_mult:2;
38354293ec3SDavid Daney 		uint64_t rd_dly:3;
38454293ec3SDavid Daney 		uint64_t ddr:1;
38554293ec3SDavid Daney 		uint64_t width:1;
38654293ec3SDavid Daney 		uint64_t reserved_48_54:7;
38754293ec3SDavid Daney 		uint64_t pause:6;
38854293ec3SDavid Daney 		uint64_t dmack_h:6;
38954293ec3SDavid Daney 		uint64_t we_n:6;
39054293ec3SDavid Daney 		uint64_t we_a:6;
39154293ec3SDavid Daney 		uint64_t oe_n:6;
39254293ec3SDavid Daney 		uint64_t oe_a:6;
39354293ec3SDavid Daney 		uint64_t dmack_s:6;
39454293ec3SDavid Daney 		uint64_t dmarq:6;
395c5aa59e8SDavid Daney #else
396c5aa59e8SDavid Daney 		uint64_t dmarq:6;
397c5aa59e8SDavid Daney 		uint64_t dmack_s:6;
398c5aa59e8SDavid Daney 		uint64_t oe_a:6;
399c5aa59e8SDavid Daney 		uint64_t oe_n:6;
400c5aa59e8SDavid Daney 		uint64_t we_a:6;
401c5aa59e8SDavid Daney 		uint64_t we_n:6;
402c5aa59e8SDavid Daney 		uint64_t dmack_h:6;
403c5aa59e8SDavid Daney 		uint64_t pause:6;
404c5aa59e8SDavid Daney 		uint64_t reserved_48_54:7;
405c5aa59e8SDavid Daney 		uint64_t width:1;
406c5aa59e8SDavid Daney 		uint64_t ddr:1;
407c5aa59e8SDavid Daney 		uint64_t rd_dly:3;
408c5aa59e8SDavid Daney 		uint64_t tim_mult:2;
409c5aa59e8SDavid Daney 		uint64_t dmarq_pi:1;
410c5aa59e8SDavid Daney 		uint64_t dmack_pi:1;
411c5aa59e8SDavid Daney #endif
41254293ec3SDavid Daney 	} s;
41354293ec3SDavid Daney };
41454293ec3SDavid Daney 
41554293ec3SDavid Daney union cvmx_mio_boot_err {
41654293ec3SDavid Daney 	uint64_t u64;
41754293ec3SDavid Daney 	struct cvmx_mio_boot_err_s {
418c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
41954293ec3SDavid Daney 		uint64_t reserved_2_63:62;
42054293ec3SDavid Daney 		uint64_t wait_err:1;
42154293ec3SDavid Daney 		uint64_t adr_err:1;
422c5aa59e8SDavid Daney #else
423c5aa59e8SDavid Daney 		uint64_t adr_err:1;
424c5aa59e8SDavid Daney 		uint64_t wait_err:1;
425c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
426c5aa59e8SDavid Daney #endif
42754293ec3SDavid Daney 	} s;
42854293ec3SDavid Daney };
42954293ec3SDavid Daney 
43054293ec3SDavid Daney union cvmx_mio_boot_int {
43154293ec3SDavid Daney 	uint64_t u64;
43254293ec3SDavid Daney 	struct cvmx_mio_boot_int_s {
433c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
43454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
43554293ec3SDavid Daney 		uint64_t wait_int:1;
43654293ec3SDavid Daney 		uint64_t adr_int:1;
437c5aa59e8SDavid Daney #else
438c5aa59e8SDavid Daney 		uint64_t adr_int:1;
439c5aa59e8SDavid Daney 		uint64_t wait_int:1;
440c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
441c5aa59e8SDavid Daney #endif
44254293ec3SDavid Daney 	} s;
44354293ec3SDavid Daney };
44454293ec3SDavid Daney 
44554293ec3SDavid Daney union cvmx_mio_boot_loc_adr {
44654293ec3SDavid Daney 	uint64_t u64;
44754293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s {
448c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
44954293ec3SDavid Daney 		uint64_t reserved_8_63:56;
45054293ec3SDavid Daney 		uint64_t adr:5;
45154293ec3SDavid Daney 		uint64_t reserved_0_2:3;
452c5aa59e8SDavid Daney #else
453c5aa59e8SDavid Daney 		uint64_t reserved_0_2:3;
454c5aa59e8SDavid Daney 		uint64_t adr:5;
455c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
456c5aa59e8SDavid Daney #endif
45754293ec3SDavid Daney 	} s;
45854293ec3SDavid Daney };
45954293ec3SDavid Daney 
46054293ec3SDavid Daney union cvmx_mio_boot_loc_cfgx {
46154293ec3SDavid Daney 	uint64_t u64;
46254293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s {
463c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
46454293ec3SDavid Daney 		uint64_t reserved_32_63:32;
46554293ec3SDavid Daney 		uint64_t en:1;
46654293ec3SDavid Daney 		uint64_t reserved_28_30:3;
46754293ec3SDavid Daney 		uint64_t base:25;
46854293ec3SDavid Daney 		uint64_t reserved_0_2:3;
469c5aa59e8SDavid Daney #else
470c5aa59e8SDavid Daney 		uint64_t reserved_0_2:3;
471c5aa59e8SDavid Daney 		uint64_t base:25;
472c5aa59e8SDavid Daney 		uint64_t reserved_28_30:3;
473c5aa59e8SDavid Daney 		uint64_t en:1;
474c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
475c5aa59e8SDavid Daney #endif
47654293ec3SDavid Daney 	} s;
47754293ec3SDavid Daney };
47854293ec3SDavid Daney 
47954293ec3SDavid Daney union cvmx_mio_boot_loc_dat {
48054293ec3SDavid Daney 	uint64_t u64;
48154293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s {
482c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
48354293ec3SDavid Daney 		uint64_t data:64;
484c5aa59e8SDavid Daney #else
485c5aa59e8SDavid Daney 		uint64_t data:64;
486c5aa59e8SDavid Daney #endif
48754293ec3SDavid Daney 	} s;
48854293ec3SDavid Daney };
48954293ec3SDavid Daney 
49054293ec3SDavid Daney union cvmx_mio_boot_pin_defs {
49154293ec3SDavid Daney 	uint64_t u64;
49254293ec3SDavid Daney 	struct cvmx_mio_boot_pin_defs_s {
493c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
494751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
495751c9f68SDavid Daney 		uint64_t user1:16;
49654293ec3SDavid Daney 		uint64_t ale:1;
49754293ec3SDavid Daney 		uint64_t width:1;
49854293ec3SDavid Daney 		uint64_t dmack_p2:1;
49954293ec3SDavid Daney 		uint64_t dmack_p1:1;
50054293ec3SDavid Daney 		uint64_t dmack_p0:1;
50154293ec3SDavid Daney 		uint64_t term:2;
50254293ec3SDavid Daney 		uint64_t nand:1;
503751c9f68SDavid Daney 		uint64_t user0:8;
504c5aa59e8SDavid Daney #else
505c5aa59e8SDavid Daney 		uint64_t user0:8;
506c5aa59e8SDavid Daney 		uint64_t nand:1;
507c5aa59e8SDavid Daney 		uint64_t term:2;
508c5aa59e8SDavid Daney 		uint64_t dmack_p0:1;
509c5aa59e8SDavid Daney 		uint64_t dmack_p1:1;
510c5aa59e8SDavid Daney 		uint64_t dmack_p2:1;
511c5aa59e8SDavid Daney 		uint64_t width:1;
512c5aa59e8SDavid Daney 		uint64_t ale:1;
513c5aa59e8SDavid Daney 		uint64_t user1:16;
514c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
515c5aa59e8SDavid Daney #endif
51654293ec3SDavid Daney 	} s;
51754293ec3SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx {
518c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
51954293ec3SDavid Daney 		uint64_t reserved_16_63:48;
52054293ec3SDavid Daney 		uint64_t ale:1;
52154293ec3SDavid Daney 		uint64_t width:1;
52254293ec3SDavid Daney 		uint64_t reserved_13_13:1;
52354293ec3SDavid Daney 		uint64_t dmack_p1:1;
52454293ec3SDavid Daney 		uint64_t dmack_p0:1;
52554293ec3SDavid Daney 		uint64_t term:2;
52654293ec3SDavid Daney 		uint64_t nand:1;
52754293ec3SDavid Daney 		uint64_t reserved_0_7:8;
528c5aa59e8SDavid Daney #else
529c5aa59e8SDavid Daney 		uint64_t reserved_0_7:8;
530c5aa59e8SDavid Daney 		uint64_t nand:1;
531c5aa59e8SDavid Daney 		uint64_t term:2;
532c5aa59e8SDavid Daney 		uint64_t dmack_p0:1;
533c5aa59e8SDavid Daney 		uint64_t dmack_p1:1;
534c5aa59e8SDavid Daney 		uint64_t reserved_13_13:1;
535c5aa59e8SDavid Daney 		uint64_t width:1;
536c5aa59e8SDavid Daney 		uint64_t ale:1;
537c5aa59e8SDavid Daney 		uint64_t reserved_16_63:48;
538c5aa59e8SDavid Daney #endif
53954293ec3SDavid Daney 	} cn52xx;
54054293ec3SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn56xx {
541c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
54254293ec3SDavid Daney 		uint64_t reserved_16_63:48;
54354293ec3SDavid Daney 		uint64_t ale:1;
54454293ec3SDavid Daney 		uint64_t width:1;
54554293ec3SDavid Daney 		uint64_t dmack_p2:1;
54654293ec3SDavid Daney 		uint64_t dmack_p1:1;
54754293ec3SDavid Daney 		uint64_t dmack_p0:1;
54854293ec3SDavid Daney 		uint64_t term:2;
54954293ec3SDavid Daney 		uint64_t reserved_0_8:9;
550c5aa59e8SDavid Daney #else
551c5aa59e8SDavid Daney 		uint64_t reserved_0_8:9;
552c5aa59e8SDavid Daney 		uint64_t term:2;
553c5aa59e8SDavid Daney 		uint64_t dmack_p0:1;
554c5aa59e8SDavid Daney 		uint64_t dmack_p1:1;
555c5aa59e8SDavid Daney 		uint64_t dmack_p2:1;
556c5aa59e8SDavid Daney 		uint64_t width:1;
557c5aa59e8SDavid Daney 		uint64_t ale:1;
558c5aa59e8SDavid Daney 		uint64_t reserved_16_63:48;
559c5aa59e8SDavid Daney #endif
56054293ec3SDavid Daney 	} cn56xx;
561751c9f68SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn61xx {
562c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
563751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
564751c9f68SDavid Daney 		uint64_t user1:16;
565751c9f68SDavid Daney 		uint64_t ale:1;
566751c9f68SDavid Daney 		uint64_t width:1;
567751c9f68SDavid Daney 		uint64_t reserved_13_13:1;
568751c9f68SDavid Daney 		uint64_t dmack_p1:1;
569751c9f68SDavid Daney 		uint64_t dmack_p0:1;
570751c9f68SDavid Daney 		uint64_t term:2;
571751c9f68SDavid Daney 		uint64_t nand:1;
572751c9f68SDavid Daney 		uint64_t user0:8;
573c5aa59e8SDavid Daney #else
574c5aa59e8SDavid Daney 		uint64_t user0:8;
575c5aa59e8SDavid Daney 		uint64_t nand:1;
576c5aa59e8SDavid Daney 		uint64_t term:2;
577c5aa59e8SDavid Daney 		uint64_t dmack_p0:1;
578c5aa59e8SDavid Daney 		uint64_t dmack_p1:1;
579c5aa59e8SDavid Daney 		uint64_t reserved_13_13:1;
580c5aa59e8SDavid Daney 		uint64_t width:1;
581c5aa59e8SDavid Daney 		uint64_t ale:1;
582c5aa59e8SDavid Daney 		uint64_t user1:16;
583c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
584c5aa59e8SDavid Daney #endif
585751c9f68SDavid Daney 	} cn61xx;
58654293ec3SDavid Daney };
58754293ec3SDavid Daney 
58854293ec3SDavid Daney union cvmx_mio_boot_reg_cfgx {
58954293ec3SDavid Daney 	uint64_t u64;
59054293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s {
591c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
59254293ec3SDavid Daney 		uint64_t reserved_44_63:20;
59354293ec3SDavid Daney 		uint64_t dmack:2;
59454293ec3SDavid Daney 		uint64_t tim_mult:2;
59554293ec3SDavid Daney 		uint64_t rd_dly:3;
59654293ec3SDavid Daney 		uint64_t sam:1;
59754293ec3SDavid Daney 		uint64_t we_ext:2;
59854293ec3SDavid Daney 		uint64_t oe_ext:2;
59954293ec3SDavid Daney 		uint64_t en:1;
60054293ec3SDavid Daney 		uint64_t orbit:1;
60154293ec3SDavid Daney 		uint64_t ale:1;
60254293ec3SDavid Daney 		uint64_t width:1;
60354293ec3SDavid Daney 		uint64_t size:12;
60454293ec3SDavid Daney 		uint64_t base:16;
605c5aa59e8SDavid Daney #else
606c5aa59e8SDavid Daney 		uint64_t base:16;
607c5aa59e8SDavid Daney 		uint64_t size:12;
608c5aa59e8SDavid Daney 		uint64_t width:1;
609c5aa59e8SDavid Daney 		uint64_t ale:1;
610c5aa59e8SDavid Daney 		uint64_t orbit:1;
611c5aa59e8SDavid Daney 		uint64_t en:1;
612c5aa59e8SDavid Daney 		uint64_t oe_ext:2;
613c5aa59e8SDavid Daney 		uint64_t we_ext:2;
614c5aa59e8SDavid Daney 		uint64_t sam:1;
615c5aa59e8SDavid Daney 		uint64_t rd_dly:3;
616c5aa59e8SDavid Daney 		uint64_t tim_mult:2;
617c5aa59e8SDavid Daney 		uint64_t dmack:2;
618c5aa59e8SDavid Daney 		uint64_t reserved_44_63:20;
619c5aa59e8SDavid Daney #endif
62054293ec3SDavid Daney 	} s;
62154293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn30xx {
622c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
62354293ec3SDavid Daney 		uint64_t reserved_37_63:27;
62454293ec3SDavid Daney 		uint64_t sam:1;
62554293ec3SDavid Daney 		uint64_t we_ext:2;
62654293ec3SDavid Daney 		uint64_t oe_ext:2;
62754293ec3SDavid Daney 		uint64_t en:1;
62854293ec3SDavid Daney 		uint64_t orbit:1;
62954293ec3SDavid Daney 		uint64_t ale:1;
63054293ec3SDavid Daney 		uint64_t width:1;
63154293ec3SDavid Daney 		uint64_t size:12;
63254293ec3SDavid Daney 		uint64_t base:16;
633c5aa59e8SDavid Daney #else
634c5aa59e8SDavid Daney 		uint64_t base:16;
635c5aa59e8SDavid Daney 		uint64_t size:12;
636c5aa59e8SDavid Daney 		uint64_t width:1;
637c5aa59e8SDavid Daney 		uint64_t ale:1;
638c5aa59e8SDavid Daney 		uint64_t orbit:1;
639c5aa59e8SDavid Daney 		uint64_t en:1;
640c5aa59e8SDavid Daney 		uint64_t oe_ext:2;
641c5aa59e8SDavid Daney 		uint64_t we_ext:2;
642c5aa59e8SDavid Daney 		uint64_t sam:1;
643c5aa59e8SDavid Daney 		uint64_t reserved_37_63:27;
644c5aa59e8SDavid Daney #endif
64554293ec3SDavid Daney 	} cn30xx;
64654293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn38xx {
647c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
64854293ec3SDavid Daney 		uint64_t reserved_32_63:32;
64954293ec3SDavid Daney 		uint64_t en:1;
65054293ec3SDavid Daney 		uint64_t orbit:1;
65154293ec3SDavid Daney 		uint64_t reserved_28_29:2;
65254293ec3SDavid Daney 		uint64_t size:12;
65354293ec3SDavid Daney 		uint64_t base:16;
654c5aa59e8SDavid Daney #else
655c5aa59e8SDavid Daney 		uint64_t base:16;
656c5aa59e8SDavid Daney 		uint64_t size:12;
657c5aa59e8SDavid Daney 		uint64_t reserved_28_29:2;
658c5aa59e8SDavid Daney 		uint64_t orbit:1;
659c5aa59e8SDavid Daney 		uint64_t en:1;
660c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
661c5aa59e8SDavid Daney #endif
66254293ec3SDavid Daney 	} cn38xx;
66354293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn50xx {
664c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
66554293ec3SDavid Daney 		uint64_t reserved_42_63:22;
66654293ec3SDavid Daney 		uint64_t tim_mult:2;
66754293ec3SDavid Daney 		uint64_t rd_dly:3;
66854293ec3SDavid Daney 		uint64_t sam:1;
66954293ec3SDavid Daney 		uint64_t we_ext:2;
67054293ec3SDavid Daney 		uint64_t oe_ext:2;
67154293ec3SDavid Daney 		uint64_t en:1;
67254293ec3SDavid Daney 		uint64_t orbit:1;
67354293ec3SDavid Daney 		uint64_t ale:1;
67454293ec3SDavid Daney 		uint64_t width:1;
67554293ec3SDavid Daney 		uint64_t size:12;
67654293ec3SDavid Daney 		uint64_t base:16;
677c5aa59e8SDavid Daney #else
678c5aa59e8SDavid Daney 		uint64_t base:16;
679c5aa59e8SDavid Daney 		uint64_t size:12;
680c5aa59e8SDavid Daney 		uint64_t width:1;
681c5aa59e8SDavid Daney 		uint64_t ale:1;
682c5aa59e8SDavid Daney 		uint64_t orbit:1;
683c5aa59e8SDavid Daney 		uint64_t en:1;
684c5aa59e8SDavid Daney 		uint64_t oe_ext:2;
685c5aa59e8SDavid Daney 		uint64_t we_ext:2;
686c5aa59e8SDavid Daney 		uint64_t sam:1;
687c5aa59e8SDavid Daney 		uint64_t rd_dly:3;
688c5aa59e8SDavid Daney 		uint64_t tim_mult:2;
689c5aa59e8SDavid Daney 		uint64_t reserved_42_63:22;
690c5aa59e8SDavid Daney #endif
69154293ec3SDavid Daney 	} cn50xx;
69254293ec3SDavid Daney };
69354293ec3SDavid Daney 
69454293ec3SDavid Daney union cvmx_mio_boot_reg_timx {
69554293ec3SDavid Daney 	uint64_t u64;
69654293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s {
697c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
69854293ec3SDavid Daney 		uint64_t pagem:1;
69954293ec3SDavid Daney 		uint64_t waitm:1;
70054293ec3SDavid Daney 		uint64_t pages:2;
70154293ec3SDavid Daney 		uint64_t ale:6;
70254293ec3SDavid Daney 		uint64_t page:6;
70354293ec3SDavid Daney 		uint64_t wait:6;
70454293ec3SDavid Daney 		uint64_t pause:6;
70554293ec3SDavid Daney 		uint64_t wr_hld:6;
70654293ec3SDavid Daney 		uint64_t rd_hld:6;
70754293ec3SDavid Daney 		uint64_t we:6;
70854293ec3SDavid Daney 		uint64_t oe:6;
70954293ec3SDavid Daney 		uint64_t ce:6;
71054293ec3SDavid Daney 		uint64_t adr:6;
711c5aa59e8SDavid Daney #else
712c5aa59e8SDavid Daney 		uint64_t adr:6;
713c5aa59e8SDavid Daney 		uint64_t ce:6;
714c5aa59e8SDavid Daney 		uint64_t oe:6;
715c5aa59e8SDavid Daney 		uint64_t we:6;
716c5aa59e8SDavid Daney 		uint64_t rd_hld:6;
717c5aa59e8SDavid Daney 		uint64_t wr_hld:6;
718c5aa59e8SDavid Daney 		uint64_t pause:6;
719c5aa59e8SDavid Daney 		uint64_t wait:6;
720c5aa59e8SDavid Daney 		uint64_t page:6;
721c5aa59e8SDavid Daney 		uint64_t ale:6;
722c5aa59e8SDavid Daney 		uint64_t pages:2;
723c5aa59e8SDavid Daney 		uint64_t waitm:1;
724c5aa59e8SDavid Daney 		uint64_t pagem:1;
725c5aa59e8SDavid Daney #endif
72654293ec3SDavid Daney 	} s;
72754293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_cn38xx {
728c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
72954293ec3SDavid Daney 		uint64_t pagem:1;
73054293ec3SDavid Daney 		uint64_t waitm:1;
73154293ec3SDavid Daney 		uint64_t pages:2;
73254293ec3SDavid Daney 		uint64_t reserved_54_59:6;
73354293ec3SDavid Daney 		uint64_t page:6;
73454293ec3SDavid Daney 		uint64_t wait:6;
73554293ec3SDavid Daney 		uint64_t pause:6;
73654293ec3SDavid Daney 		uint64_t wr_hld:6;
73754293ec3SDavid Daney 		uint64_t rd_hld:6;
73854293ec3SDavid Daney 		uint64_t we:6;
73954293ec3SDavid Daney 		uint64_t oe:6;
74054293ec3SDavid Daney 		uint64_t ce:6;
74154293ec3SDavid Daney 		uint64_t adr:6;
742c5aa59e8SDavid Daney #else
743c5aa59e8SDavid Daney 		uint64_t adr:6;
744c5aa59e8SDavid Daney 		uint64_t ce:6;
745c5aa59e8SDavid Daney 		uint64_t oe:6;
746c5aa59e8SDavid Daney 		uint64_t we:6;
747c5aa59e8SDavid Daney 		uint64_t rd_hld:6;
748c5aa59e8SDavid Daney 		uint64_t wr_hld:6;
749c5aa59e8SDavid Daney 		uint64_t pause:6;
750c5aa59e8SDavid Daney 		uint64_t wait:6;
751c5aa59e8SDavid Daney 		uint64_t page:6;
752c5aa59e8SDavid Daney 		uint64_t reserved_54_59:6;
753c5aa59e8SDavid Daney 		uint64_t pages:2;
754c5aa59e8SDavid Daney 		uint64_t waitm:1;
755c5aa59e8SDavid Daney 		uint64_t pagem:1;
756c5aa59e8SDavid Daney #endif
75754293ec3SDavid Daney 	} cn38xx;
75854293ec3SDavid Daney };
75954293ec3SDavid Daney 
76054293ec3SDavid Daney union cvmx_mio_boot_thr {
76154293ec3SDavid Daney 	uint64_t u64;
76254293ec3SDavid Daney 	struct cvmx_mio_boot_thr_s {
763c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
76454293ec3SDavid Daney 		uint64_t reserved_22_63:42;
76554293ec3SDavid Daney 		uint64_t dma_thr:6;
76654293ec3SDavid Daney 		uint64_t reserved_14_15:2;
76754293ec3SDavid Daney 		uint64_t fif_cnt:6;
76854293ec3SDavid Daney 		uint64_t reserved_6_7:2;
76954293ec3SDavid Daney 		uint64_t fif_thr:6;
770c5aa59e8SDavid Daney #else
771c5aa59e8SDavid Daney 		uint64_t fif_thr:6;
772c5aa59e8SDavid Daney 		uint64_t reserved_6_7:2;
773c5aa59e8SDavid Daney 		uint64_t fif_cnt:6;
774c5aa59e8SDavid Daney 		uint64_t reserved_14_15:2;
775c5aa59e8SDavid Daney 		uint64_t dma_thr:6;
776c5aa59e8SDavid Daney 		uint64_t reserved_22_63:42;
777c5aa59e8SDavid Daney #endif
77854293ec3SDavid Daney 	} s;
77954293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx {
780c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
78154293ec3SDavid Daney 		uint64_t reserved_14_63:50;
78254293ec3SDavid Daney 		uint64_t fif_cnt:6;
78354293ec3SDavid Daney 		uint64_t reserved_6_7:2;
78454293ec3SDavid Daney 		uint64_t fif_thr:6;
785c5aa59e8SDavid Daney #else
786c5aa59e8SDavid Daney 		uint64_t fif_thr:6;
787c5aa59e8SDavid Daney 		uint64_t reserved_6_7:2;
788c5aa59e8SDavid Daney 		uint64_t fif_cnt:6;
789c5aa59e8SDavid Daney 		uint64_t reserved_14_63:50;
790c5aa59e8SDavid Daney #endif
79154293ec3SDavid Daney 	} cn30xx;
792751c9f68SDavid Daney };
793751c9f68SDavid Daney 
794751c9f68SDavid Daney union cvmx_mio_emm_buf_dat {
795751c9f68SDavid Daney 	uint64_t u64;
796751c9f68SDavid Daney 	struct cvmx_mio_emm_buf_dat_s {
797c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
798751c9f68SDavid Daney 		uint64_t dat:64;
799c5aa59e8SDavid Daney #else
800c5aa59e8SDavid Daney 		uint64_t dat:64;
801c5aa59e8SDavid Daney #endif
802751c9f68SDavid Daney 	} s;
803751c9f68SDavid Daney };
804751c9f68SDavid Daney 
805751c9f68SDavid Daney union cvmx_mio_emm_buf_idx {
806751c9f68SDavid Daney 	uint64_t u64;
807751c9f68SDavid Daney 	struct cvmx_mio_emm_buf_idx_s {
808c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
809751c9f68SDavid Daney 		uint64_t reserved_17_63:47;
810751c9f68SDavid Daney 		uint64_t inc:1;
811751c9f68SDavid Daney 		uint64_t reserved_7_15:9;
812751c9f68SDavid Daney 		uint64_t buf_num:1;
813751c9f68SDavid Daney 		uint64_t offset:6;
814c5aa59e8SDavid Daney #else
815c5aa59e8SDavid Daney 		uint64_t offset:6;
816c5aa59e8SDavid Daney 		uint64_t buf_num:1;
817c5aa59e8SDavid Daney 		uint64_t reserved_7_15:9;
818c5aa59e8SDavid Daney 		uint64_t inc:1;
819c5aa59e8SDavid Daney 		uint64_t reserved_17_63:47;
820c5aa59e8SDavid Daney #endif
821751c9f68SDavid Daney 	} s;
822751c9f68SDavid Daney };
823751c9f68SDavid Daney 
824751c9f68SDavid Daney union cvmx_mio_emm_cfg {
825751c9f68SDavid Daney 	uint64_t u64;
826751c9f68SDavid Daney 	struct cvmx_mio_emm_cfg_s {
827c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
828751c9f68SDavid Daney 		uint64_t reserved_17_63:47;
829751c9f68SDavid Daney 		uint64_t boot_fail:1;
830751c9f68SDavid Daney 		uint64_t reserved_4_15:12;
831751c9f68SDavid Daney 		uint64_t bus_ena:4;
832c5aa59e8SDavid Daney #else
833c5aa59e8SDavid Daney 		uint64_t bus_ena:4;
834c5aa59e8SDavid Daney 		uint64_t reserved_4_15:12;
835c5aa59e8SDavid Daney 		uint64_t boot_fail:1;
836c5aa59e8SDavid Daney 		uint64_t reserved_17_63:47;
837c5aa59e8SDavid Daney #endif
838751c9f68SDavid Daney 	} s;
839751c9f68SDavid Daney };
840751c9f68SDavid Daney 
841751c9f68SDavid Daney union cvmx_mio_emm_cmd {
842751c9f68SDavid Daney 	uint64_t u64;
843751c9f68SDavid Daney 	struct cvmx_mio_emm_cmd_s {
844c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
845751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
846751c9f68SDavid Daney 		uint64_t bus_id:2;
847751c9f68SDavid Daney 		uint64_t cmd_val:1;
848751c9f68SDavid Daney 		uint64_t reserved_56_58:3;
849751c9f68SDavid Daney 		uint64_t dbuf:1;
850751c9f68SDavid Daney 		uint64_t offset:6;
851751c9f68SDavid Daney 		uint64_t reserved_43_48:6;
852751c9f68SDavid Daney 		uint64_t ctype_xor:2;
853751c9f68SDavid Daney 		uint64_t rtype_xor:3;
854751c9f68SDavid Daney 		uint64_t cmd_idx:6;
855751c9f68SDavid Daney 		uint64_t arg:32;
856c5aa59e8SDavid Daney #else
857c5aa59e8SDavid Daney 		uint64_t arg:32;
858c5aa59e8SDavid Daney 		uint64_t cmd_idx:6;
859c5aa59e8SDavid Daney 		uint64_t rtype_xor:3;
860c5aa59e8SDavid Daney 		uint64_t ctype_xor:2;
861c5aa59e8SDavid Daney 		uint64_t reserved_43_48:6;
862c5aa59e8SDavid Daney 		uint64_t offset:6;
863c5aa59e8SDavid Daney 		uint64_t dbuf:1;
864c5aa59e8SDavid Daney 		uint64_t reserved_56_58:3;
865c5aa59e8SDavid Daney 		uint64_t cmd_val:1;
866c5aa59e8SDavid Daney 		uint64_t bus_id:2;
867c5aa59e8SDavid Daney 		uint64_t reserved_62_63:2;
868c5aa59e8SDavid Daney #endif
869751c9f68SDavid Daney 	} s;
870751c9f68SDavid Daney };
871751c9f68SDavid Daney 
872751c9f68SDavid Daney union cvmx_mio_emm_dma {
873751c9f68SDavid Daney 	uint64_t u64;
874751c9f68SDavid Daney 	struct cvmx_mio_emm_dma_s {
875c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
876751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
877751c9f68SDavid Daney 		uint64_t bus_id:2;
878751c9f68SDavid Daney 		uint64_t dma_val:1;
879751c9f68SDavid Daney 		uint64_t sector:1;
880751c9f68SDavid Daney 		uint64_t dat_null:1;
881751c9f68SDavid Daney 		uint64_t thres:6;
882751c9f68SDavid Daney 		uint64_t rel_wr:1;
883751c9f68SDavid Daney 		uint64_t rw:1;
884751c9f68SDavid Daney 		uint64_t multi:1;
885751c9f68SDavid Daney 		uint64_t block_cnt:16;
886751c9f68SDavid Daney 		uint64_t card_addr:32;
887c5aa59e8SDavid Daney #else
888c5aa59e8SDavid Daney 		uint64_t card_addr:32;
889c5aa59e8SDavid Daney 		uint64_t block_cnt:16;
890c5aa59e8SDavid Daney 		uint64_t multi:1;
891c5aa59e8SDavid Daney 		uint64_t rw:1;
892c5aa59e8SDavid Daney 		uint64_t rel_wr:1;
893c5aa59e8SDavid Daney 		uint64_t thres:6;
894c5aa59e8SDavid Daney 		uint64_t dat_null:1;
895c5aa59e8SDavid Daney 		uint64_t sector:1;
896c5aa59e8SDavid Daney 		uint64_t dma_val:1;
897c5aa59e8SDavid Daney 		uint64_t bus_id:2;
898c5aa59e8SDavid Daney 		uint64_t reserved_62_63:2;
899c5aa59e8SDavid Daney #endif
900751c9f68SDavid Daney 	} s;
901751c9f68SDavid Daney };
902751c9f68SDavid Daney 
903751c9f68SDavid Daney union cvmx_mio_emm_int {
904751c9f68SDavid Daney 	uint64_t u64;
905751c9f68SDavid Daney 	struct cvmx_mio_emm_int_s {
906c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
907751c9f68SDavid Daney 		uint64_t reserved_7_63:57;
908751c9f68SDavid Daney 		uint64_t switch_err:1;
909751c9f68SDavid Daney 		uint64_t switch_done:1;
910751c9f68SDavid Daney 		uint64_t dma_err:1;
911751c9f68SDavid Daney 		uint64_t cmd_err:1;
912751c9f68SDavid Daney 		uint64_t dma_done:1;
913751c9f68SDavid Daney 		uint64_t cmd_done:1;
914751c9f68SDavid Daney 		uint64_t buf_done:1;
915c5aa59e8SDavid Daney #else
916c5aa59e8SDavid Daney 		uint64_t buf_done:1;
917c5aa59e8SDavid Daney 		uint64_t cmd_done:1;
918c5aa59e8SDavid Daney 		uint64_t dma_done:1;
919c5aa59e8SDavid Daney 		uint64_t cmd_err:1;
920c5aa59e8SDavid Daney 		uint64_t dma_err:1;
921c5aa59e8SDavid Daney 		uint64_t switch_done:1;
922c5aa59e8SDavid Daney 		uint64_t switch_err:1;
923c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
924c5aa59e8SDavid Daney #endif
925751c9f68SDavid Daney 	} s;
926751c9f68SDavid Daney };
927751c9f68SDavid Daney 
928751c9f68SDavid Daney union cvmx_mio_emm_int_en {
929751c9f68SDavid Daney 	uint64_t u64;
930751c9f68SDavid Daney 	struct cvmx_mio_emm_int_en_s {
931c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
932751c9f68SDavid Daney 		uint64_t reserved_7_63:57;
933751c9f68SDavid Daney 		uint64_t switch_err:1;
934751c9f68SDavid Daney 		uint64_t switch_done:1;
935751c9f68SDavid Daney 		uint64_t dma_err:1;
936751c9f68SDavid Daney 		uint64_t cmd_err:1;
937751c9f68SDavid Daney 		uint64_t dma_done:1;
938751c9f68SDavid Daney 		uint64_t cmd_done:1;
939751c9f68SDavid Daney 		uint64_t buf_done:1;
940c5aa59e8SDavid Daney #else
941c5aa59e8SDavid Daney 		uint64_t buf_done:1;
942c5aa59e8SDavid Daney 		uint64_t cmd_done:1;
943c5aa59e8SDavid Daney 		uint64_t dma_done:1;
944c5aa59e8SDavid Daney 		uint64_t cmd_err:1;
945c5aa59e8SDavid Daney 		uint64_t dma_err:1;
946c5aa59e8SDavid Daney 		uint64_t switch_done:1;
947c5aa59e8SDavid Daney 		uint64_t switch_err:1;
948c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
949c5aa59e8SDavid Daney #endif
950751c9f68SDavid Daney 	} s;
951751c9f68SDavid Daney };
952751c9f68SDavid Daney 
953751c9f68SDavid Daney union cvmx_mio_emm_modex {
954751c9f68SDavid Daney 	uint64_t u64;
955751c9f68SDavid Daney 	struct cvmx_mio_emm_modex_s {
956c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
957751c9f68SDavid Daney 		uint64_t reserved_49_63:15;
958751c9f68SDavid Daney 		uint64_t hs_timing:1;
959751c9f68SDavid Daney 		uint64_t reserved_43_47:5;
960751c9f68SDavid Daney 		uint64_t bus_width:3;
961751c9f68SDavid Daney 		uint64_t reserved_36_39:4;
962751c9f68SDavid Daney 		uint64_t power_class:4;
963751c9f68SDavid Daney 		uint64_t clk_hi:16;
964751c9f68SDavid Daney 		uint64_t clk_lo:16;
965c5aa59e8SDavid Daney #else
966c5aa59e8SDavid Daney 		uint64_t clk_lo:16;
967c5aa59e8SDavid Daney 		uint64_t clk_hi:16;
968c5aa59e8SDavid Daney 		uint64_t power_class:4;
969c5aa59e8SDavid Daney 		uint64_t reserved_36_39:4;
970c5aa59e8SDavid Daney 		uint64_t bus_width:3;
971c5aa59e8SDavid Daney 		uint64_t reserved_43_47:5;
972c5aa59e8SDavid Daney 		uint64_t hs_timing:1;
973c5aa59e8SDavid Daney 		uint64_t reserved_49_63:15;
974c5aa59e8SDavid Daney #endif
975751c9f68SDavid Daney 	} s;
976751c9f68SDavid Daney };
977751c9f68SDavid Daney 
978751c9f68SDavid Daney union cvmx_mio_emm_rca {
979751c9f68SDavid Daney 	uint64_t u64;
980751c9f68SDavid Daney 	struct cvmx_mio_emm_rca_s {
981c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
982751c9f68SDavid Daney 		uint64_t reserved_16_63:48;
983751c9f68SDavid Daney 		uint64_t card_rca:16;
984c5aa59e8SDavid Daney #else
985c5aa59e8SDavid Daney 		uint64_t card_rca:16;
986c5aa59e8SDavid Daney 		uint64_t reserved_16_63:48;
987c5aa59e8SDavid Daney #endif
988751c9f68SDavid Daney 	} s;
989751c9f68SDavid Daney };
990751c9f68SDavid Daney 
991751c9f68SDavid Daney union cvmx_mio_emm_rsp_hi {
992751c9f68SDavid Daney 	uint64_t u64;
993751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_hi_s {
994c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
995751c9f68SDavid Daney 		uint64_t dat:64;
996c5aa59e8SDavid Daney #else
997c5aa59e8SDavid Daney 		uint64_t dat:64;
998c5aa59e8SDavid Daney #endif
999751c9f68SDavid Daney 	} s;
1000751c9f68SDavid Daney };
1001751c9f68SDavid Daney 
1002751c9f68SDavid Daney union cvmx_mio_emm_rsp_lo {
1003751c9f68SDavid Daney 	uint64_t u64;
1004751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_lo_s {
1005c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1006751c9f68SDavid Daney 		uint64_t dat:64;
1007c5aa59e8SDavid Daney #else
1008c5aa59e8SDavid Daney 		uint64_t dat:64;
1009c5aa59e8SDavid Daney #endif
1010751c9f68SDavid Daney 	} s;
1011751c9f68SDavid Daney };
1012751c9f68SDavid Daney 
1013751c9f68SDavid Daney union cvmx_mio_emm_rsp_sts {
1014751c9f68SDavid Daney 	uint64_t u64;
1015751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_sts_s {
1016c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1017751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
1018751c9f68SDavid Daney 		uint64_t bus_id:2;
1019751c9f68SDavid Daney 		uint64_t cmd_val:1;
1020751c9f68SDavid Daney 		uint64_t switch_val:1;
1021751c9f68SDavid Daney 		uint64_t dma_val:1;
1022751c9f68SDavid Daney 		uint64_t dma_pend:1;
1023751c9f68SDavid Daney 		uint64_t reserved_29_55:27;
1024751c9f68SDavid Daney 		uint64_t dbuf_err:1;
1025751c9f68SDavid Daney 		uint64_t reserved_24_27:4;
1026751c9f68SDavid Daney 		uint64_t dbuf:1;
1027751c9f68SDavid Daney 		uint64_t blk_timeout:1;
1028751c9f68SDavid Daney 		uint64_t blk_crc_err:1;
1029751c9f68SDavid Daney 		uint64_t rsp_busybit:1;
1030751c9f68SDavid Daney 		uint64_t stp_timeout:1;
1031751c9f68SDavid Daney 		uint64_t stp_crc_err:1;
1032751c9f68SDavid Daney 		uint64_t stp_bad_sts:1;
1033751c9f68SDavid Daney 		uint64_t stp_val:1;
1034751c9f68SDavid Daney 		uint64_t rsp_timeout:1;
1035751c9f68SDavid Daney 		uint64_t rsp_crc_err:1;
1036751c9f68SDavid Daney 		uint64_t rsp_bad_sts:1;
1037751c9f68SDavid Daney 		uint64_t rsp_val:1;
1038751c9f68SDavid Daney 		uint64_t rsp_type:3;
1039751c9f68SDavid Daney 		uint64_t cmd_type:2;
1040751c9f68SDavid Daney 		uint64_t cmd_idx:6;
1041751c9f68SDavid Daney 		uint64_t cmd_done:1;
1042c5aa59e8SDavid Daney #else
1043c5aa59e8SDavid Daney 		uint64_t cmd_done:1;
1044c5aa59e8SDavid Daney 		uint64_t cmd_idx:6;
1045c5aa59e8SDavid Daney 		uint64_t cmd_type:2;
1046c5aa59e8SDavid Daney 		uint64_t rsp_type:3;
1047c5aa59e8SDavid Daney 		uint64_t rsp_val:1;
1048c5aa59e8SDavid Daney 		uint64_t rsp_bad_sts:1;
1049c5aa59e8SDavid Daney 		uint64_t rsp_crc_err:1;
1050c5aa59e8SDavid Daney 		uint64_t rsp_timeout:1;
1051c5aa59e8SDavid Daney 		uint64_t stp_val:1;
1052c5aa59e8SDavid Daney 		uint64_t stp_bad_sts:1;
1053c5aa59e8SDavid Daney 		uint64_t stp_crc_err:1;
1054c5aa59e8SDavid Daney 		uint64_t stp_timeout:1;
1055c5aa59e8SDavid Daney 		uint64_t rsp_busybit:1;
1056c5aa59e8SDavid Daney 		uint64_t blk_crc_err:1;
1057c5aa59e8SDavid Daney 		uint64_t blk_timeout:1;
1058c5aa59e8SDavid Daney 		uint64_t dbuf:1;
1059c5aa59e8SDavid Daney 		uint64_t reserved_24_27:4;
1060c5aa59e8SDavid Daney 		uint64_t dbuf_err:1;
1061c5aa59e8SDavid Daney 		uint64_t reserved_29_55:27;
1062c5aa59e8SDavid Daney 		uint64_t dma_pend:1;
1063c5aa59e8SDavid Daney 		uint64_t dma_val:1;
1064c5aa59e8SDavid Daney 		uint64_t switch_val:1;
1065c5aa59e8SDavid Daney 		uint64_t cmd_val:1;
1066c5aa59e8SDavid Daney 		uint64_t bus_id:2;
1067c5aa59e8SDavid Daney 		uint64_t reserved_62_63:2;
1068c5aa59e8SDavid Daney #endif
1069751c9f68SDavid Daney 	} s;
1070751c9f68SDavid Daney };
1071751c9f68SDavid Daney 
1072751c9f68SDavid Daney union cvmx_mio_emm_sample {
1073751c9f68SDavid Daney 	uint64_t u64;
1074751c9f68SDavid Daney 	struct cvmx_mio_emm_sample_s {
1075c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1076751c9f68SDavid Daney 		uint64_t reserved_26_63:38;
1077751c9f68SDavid Daney 		uint64_t cmd_cnt:10;
1078751c9f68SDavid Daney 		uint64_t reserved_10_15:6;
1079751c9f68SDavid Daney 		uint64_t dat_cnt:10;
1080c5aa59e8SDavid Daney #else
1081c5aa59e8SDavid Daney 		uint64_t dat_cnt:10;
1082c5aa59e8SDavid Daney 		uint64_t reserved_10_15:6;
1083c5aa59e8SDavid Daney 		uint64_t cmd_cnt:10;
1084c5aa59e8SDavid Daney 		uint64_t reserved_26_63:38;
1085c5aa59e8SDavid Daney #endif
1086751c9f68SDavid Daney 	} s;
1087751c9f68SDavid Daney };
1088751c9f68SDavid Daney 
1089751c9f68SDavid Daney union cvmx_mio_emm_sts_mask {
1090751c9f68SDavid Daney 	uint64_t u64;
1091751c9f68SDavid Daney 	struct cvmx_mio_emm_sts_mask_s {
1092c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1093751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
1094751c9f68SDavid Daney 		uint64_t sts_msk:32;
1095c5aa59e8SDavid Daney #else
1096c5aa59e8SDavid Daney 		uint64_t sts_msk:32;
1097c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
1098c5aa59e8SDavid Daney #endif
1099751c9f68SDavid Daney 	} s;
1100751c9f68SDavid Daney };
1101751c9f68SDavid Daney 
1102751c9f68SDavid Daney union cvmx_mio_emm_switch {
1103751c9f68SDavid Daney 	uint64_t u64;
1104751c9f68SDavid Daney 	struct cvmx_mio_emm_switch_s {
1105c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1106751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
1107751c9f68SDavid Daney 		uint64_t bus_id:2;
1108751c9f68SDavid Daney 		uint64_t switch_exe:1;
1109751c9f68SDavid Daney 		uint64_t switch_err0:1;
1110751c9f68SDavid Daney 		uint64_t switch_err1:1;
1111751c9f68SDavid Daney 		uint64_t switch_err2:1;
1112751c9f68SDavid Daney 		uint64_t reserved_49_55:7;
1113751c9f68SDavid Daney 		uint64_t hs_timing:1;
1114751c9f68SDavid Daney 		uint64_t reserved_43_47:5;
1115751c9f68SDavid Daney 		uint64_t bus_width:3;
1116751c9f68SDavid Daney 		uint64_t reserved_36_39:4;
1117751c9f68SDavid Daney 		uint64_t power_class:4;
1118751c9f68SDavid Daney 		uint64_t clk_hi:16;
1119751c9f68SDavid Daney 		uint64_t clk_lo:16;
1120c5aa59e8SDavid Daney #else
1121c5aa59e8SDavid Daney 		uint64_t clk_lo:16;
1122c5aa59e8SDavid Daney 		uint64_t clk_hi:16;
1123c5aa59e8SDavid Daney 		uint64_t power_class:4;
1124c5aa59e8SDavid Daney 		uint64_t reserved_36_39:4;
1125c5aa59e8SDavid Daney 		uint64_t bus_width:3;
1126c5aa59e8SDavid Daney 		uint64_t reserved_43_47:5;
1127c5aa59e8SDavid Daney 		uint64_t hs_timing:1;
1128c5aa59e8SDavid Daney 		uint64_t reserved_49_55:7;
1129c5aa59e8SDavid Daney 		uint64_t switch_err2:1;
1130c5aa59e8SDavid Daney 		uint64_t switch_err1:1;
1131c5aa59e8SDavid Daney 		uint64_t switch_err0:1;
1132c5aa59e8SDavid Daney 		uint64_t switch_exe:1;
1133c5aa59e8SDavid Daney 		uint64_t bus_id:2;
1134c5aa59e8SDavid Daney 		uint64_t reserved_62_63:2;
1135c5aa59e8SDavid Daney #endif
1136751c9f68SDavid Daney 	} s;
1137751c9f68SDavid Daney };
1138751c9f68SDavid Daney 
1139751c9f68SDavid Daney union cvmx_mio_emm_wdog {
1140751c9f68SDavid Daney 	uint64_t u64;
1141751c9f68SDavid Daney 	struct cvmx_mio_emm_wdog_s {
1142c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1143751c9f68SDavid Daney 		uint64_t reserved_26_63:38;
1144751c9f68SDavid Daney 		uint64_t clk_cnt:26;
1145c5aa59e8SDavid Daney #else
1146c5aa59e8SDavid Daney 		uint64_t clk_cnt:26;
1147c5aa59e8SDavid Daney 		uint64_t reserved_26_63:38;
1148c5aa59e8SDavid Daney #endif
1149751c9f68SDavid Daney 	} s;
115054293ec3SDavid Daney };
115154293ec3SDavid Daney 
115254293ec3SDavid Daney union cvmx_mio_fus_bnk_datx {
115354293ec3SDavid Daney 	uint64_t u64;
115454293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s {
1155c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
115654293ec3SDavid Daney 		uint64_t dat:64;
1157c5aa59e8SDavid Daney #else
1158c5aa59e8SDavid Daney 		uint64_t dat:64;
1159c5aa59e8SDavid Daney #endif
116054293ec3SDavid Daney 	} s;
116154293ec3SDavid Daney };
116254293ec3SDavid Daney 
116354293ec3SDavid Daney union cvmx_mio_fus_dat0 {
116454293ec3SDavid Daney 	uint64_t u64;
116554293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s {
1166c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
116754293ec3SDavid Daney 		uint64_t reserved_32_63:32;
116854293ec3SDavid Daney 		uint64_t man_info:32;
1169c5aa59e8SDavid Daney #else
1170c5aa59e8SDavid Daney 		uint64_t man_info:32;
1171c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
1172c5aa59e8SDavid Daney #endif
117354293ec3SDavid Daney 	} s;
117454293ec3SDavid Daney };
117554293ec3SDavid Daney 
117654293ec3SDavid Daney union cvmx_mio_fus_dat1 {
117754293ec3SDavid Daney 	uint64_t u64;
117854293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s {
1179c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
118054293ec3SDavid Daney 		uint64_t reserved_32_63:32;
118154293ec3SDavid Daney 		uint64_t man_info:32;
1182c5aa59e8SDavid Daney #else
1183c5aa59e8SDavid Daney 		uint64_t man_info:32;
1184c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
1185c5aa59e8SDavid Daney #endif
118654293ec3SDavid Daney 	} s;
118754293ec3SDavid Daney };
118854293ec3SDavid Daney 
118954293ec3SDavid Daney union cvmx_mio_fus_dat2 {
119054293ec3SDavid Daney 	uint64_t u64;
119154293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_s {
1192c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
11932df11221SDavid Daney 		uint64_t reserved_59_63:5;
11942df11221SDavid Daney 		uint64_t run_platform:3;
11952df11221SDavid Daney 		uint64_t gbl_pwr_throttle:8;
1196751c9f68SDavid Daney 		uint64_t fus118:1;
1197751c9f68SDavid Daney 		uint64_t rom_info:10;
1198751c9f68SDavid Daney 		uint64_t power_limit:2;
1199aa32a955SDavid Daney 		uint64_t dorm_crypto:1;
120054293ec3SDavid Daney 		uint64_t fus318:1;
120154293ec3SDavid Daney 		uint64_t raid_en:1;
120254293ec3SDavid Daney 		uint64_t reserved_30_31:2;
120354293ec3SDavid Daney 		uint64_t nokasu:1;
120454293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
120554293ec3SDavid Daney 		uint64_t nomul:1;
120654293ec3SDavid Daney 		uint64_t nocrypto:1;
120754293ec3SDavid Daney 		uint64_t rst_sht:1;
120854293ec3SDavid Daney 		uint64_t bist_dis:1;
120954293ec3SDavid Daney 		uint64_t chip_id:8;
121054293ec3SDavid Daney 		uint64_t reserved_0_15:16;
1211c5aa59e8SDavid Daney #else
1212c5aa59e8SDavid Daney 		uint64_t reserved_0_15:16;
1213c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1214c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1215c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1216c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1217c5aa59e8SDavid Daney 		uint64_t nomul:1;
1218c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1219c5aa59e8SDavid Daney 		uint64_t nokasu:1;
1220c5aa59e8SDavid Daney 		uint64_t reserved_30_31:2;
1221c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1222c5aa59e8SDavid Daney 		uint64_t fus318:1;
1223c5aa59e8SDavid Daney 		uint64_t dorm_crypto:1;
1224c5aa59e8SDavid Daney 		uint64_t power_limit:2;
1225c5aa59e8SDavid Daney 		uint64_t rom_info:10;
1226c5aa59e8SDavid Daney 		uint64_t fus118:1;
12272df11221SDavid Daney 		uint64_t gbl_pwr_throttle:8;
12282df11221SDavid Daney 		uint64_t run_platform:3;
12292df11221SDavid Daney 		uint64_t reserved_59_63:5;
1230c5aa59e8SDavid Daney #endif
123154293ec3SDavid Daney 	} s;
123254293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn30xx {
1233c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
123454293ec3SDavid Daney 		uint64_t reserved_29_63:35;
123554293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
123654293ec3SDavid Daney 		uint64_t nomul:1;
123754293ec3SDavid Daney 		uint64_t nocrypto:1;
123854293ec3SDavid Daney 		uint64_t rst_sht:1;
123954293ec3SDavid Daney 		uint64_t bist_dis:1;
124054293ec3SDavid Daney 		uint64_t chip_id:8;
124154293ec3SDavid Daney 		uint64_t pll_off:4;
124254293ec3SDavid Daney 		uint64_t reserved_1_11:11;
124354293ec3SDavid Daney 		uint64_t pp_dis:1;
1244c5aa59e8SDavid Daney #else
1245c5aa59e8SDavid Daney 		uint64_t pp_dis:1;
1246c5aa59e8SDavid Daney 		uint64_t reserved_1_11:11;
1247c5aa59e8SDavid Daney 		uint64_t pll_off:4;
1248c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1249c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1250c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1251c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1252c5aa59e8SDavid Daney 		uint64_t nomul:1;
1253c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1254c5aa59e8SDavid Daney 		uint64_t reserved_29_63:35;
1255c5aa59e8SDavid Daney #endif
125654293ec3SDavid Daney 	} cn30xx;
125754293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn31xx {
1258c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
125954293ec3SDavid Daney 		uint64_t reserved_29_63:35;
126054293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
126154293ec3SDavid Daney 		uint64_t nomul:1;
126254293ec3SDavid Daney 		uint64_t nocrypto:1;
126354293ec3SDavid Daney 		uint64_t rst_sht:1;
126454293ec3SDavid Daney 		uint64_t bist_dis:1;
126554293ec3SDavid Daney 		uint64_t chip_id:8;
126654293ec3SDavid Daney 		uint64_t pll_off:4;
126754293ec3SDavid Daney 		uint64_t reserved_2_11:10;
126854293ec3SDavid Daney 		uint64_t pp_dis:2;
1269c5aa59e8SDavid Daney #else
1270c5aa59e8SDavid Daney 		uint64_t pp_dis:2;
1271c5aa59e8SDavid Daney 		uint64_t reserved_2_11:10;
1272c5aa59e8SDavid Daney 		uint64_t pll_off:4;
1273c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1274c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1275c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1276c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1277c5aa59e8SDavid Daney 		uint64_t nomul:1;
1278c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1279c5aa59e8SDavid Daney 		uint64_t reserved_29_63:35;
1280c5aa59e8SDavid Daney #endif
128154293ec3SDavid Daney 	} cn31xx;
128254293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn38xx {
1283c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
128454293ec3SDavid Daney 		uint64_t reserved_29_63:35;
128554293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
128654293ec3SDavid Daney 		uint64_t nomul:1;
128754293ec3SDavid Daney 		uint64_t nocrypto:1;
128854293ec3SDavid Daney 		uint64_t rst_sht:1;
128954293ec3SDavid Daney 		uint64_t bist_dis:1;
129054293ec3SDavid Daney 		uint64_t chip_id:8;
129154293ec3SDavid Daney 		uint64_t pp_dis:16;
1292c5aa59e8SDavid Daney #else
1293c5aa59e8SDavid Daney 		uint64_t pp_dis:16;
1294c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1295c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1296c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1297c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1298c5aa59e8SDavid Daney 		uint64_t nomul:1;
1299c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1300c5aa59e8SDavid Daney 		uint64_t reserved_29_63:35;
1301c5aa59e8SDavid Daney #endif
130254293ec3SDavid Daney 	} cn38xx;
130354293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn50xx {
1304c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
130554293ec3SDavid Daney 		uint64_t reserved_34_63:30;
130654293ec3SDavid Daney 		uint64_t fus318:1;
130754293ec3SDavid Daney 		uint64_t raid_en:1;
130854293ec3SDavid Daney 		uint64_t reserved_30_31:2;
130954293ec3SDavid Daney 		uint64_t nokasu:1;
131054293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
131154293ec3SDavid Daney 		uint64_t nomul:1;
131254293ec3SDavid Daney 		uint64_t nocrypto:1;
131354293ec3SDavid Daney 		uint64_t rst_sht:1;
131454293ec3SDavid Daney 		uint64_t bist_dis:1;
131554293ec3SDavid Daney 		uint64_t chip_id:8;
131654293ec3SDavid Daney 		uint64_t reserved_2_15:14;
131754293ec3SDavid Daney 		uint64_t pp_dis:2;
1318c5aa59e8SDavid Daney #else
1319c5aa59e8SDavid Daney 		uint64_t pp_dis:2;
1320c5aa59e8SDavid Daney 		uint64_t reserved_2_15:14;
1321c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1322c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1323c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1324c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1325c5aa59e8SDavid Daney 		uint64_t nomul:1;
1326c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1327c5aa59e8SDavid Daney 		uint64_t nokasu:1;
1328c5aa59e8SDavid Daney 		uint64_t reserved_30_31:2;
1329c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1330c5aa59e8SDavid Daney 		uint64_t fus318:1;
1331c5aa59e8SDavid Daney 		uint64_t reserved_34_63:30;
1332c5aa59e8SDavid Daney #endif
133354293ec3SDavid Daney 	} cn50xx;
133454293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn52xx {
1335c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
133654293ec3SDavid Daney 		uint64_t reserved_34_63:30;
133754293ec3SDavid Daney 		uint64_t fus318:1;
133854293ec3SDavid Daney 		uint64_t raid_en:1;
133954293ec3SDavid Daney 		uint64_t reserved_30_31:2;
134054293ec3SDavid Daney 		uint64_t nokasu:1;
134154293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
134254293ec3SDavid Daney 		uint64_t nomul:1;
134354293ec3SDavid Daney 		uint64_t nocrypto:1;
134454293ec3SDavid Daney 		uint64_t rst_sht:1;
134554293ec3SDavid Daney 		uint64_t bist_dis:1;
134654293ec3SDavid Daney 		uint64_t chip_id:8;
134754293ec3SDavid Daney 		uint64_t reserved_4_15:12;
134854293ec3SDavid Daney 		uint64_t pp_dis:4;
1349c5aa59e8SDavid Daney #else
1350c5aa59e8SDavid Daney 		uint64_t pp_dis:4;
1351c5aa59e8SDavid Daney 		uint64_t reserved_4_15:12;
1352c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1353c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1354c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1355c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1356c5aa59e8SDavid Daney 		uint64_t nomul:1;
1357c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1358c5aa59e8SDavid Daney 		uint64_t nokasu:1;
1359c5aa59e8SDavid Daney 		uint64_t reserved_30_31:2;
1360c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1361c5aa59e8SDavid Daney 		uint64_t fus318:1;
1362c5aa59e8SDavid Daney 		uint64_t reserved_34_63:30;
1363c5aa59e8SDavid Daney #endif
136454293ec3SDavid Daney 	} cn52xx;
136554293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn56xx {
1366c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
136754293ec3SDavid Daney 		uint64_t reserved_34_63:30;
136854293ec3SDavid Daney 		uint64_t fus318:1;
136954293ec3SDavid Daney 		uint64_t raid_en:1;
137054293ec3SDavid Daney 		uint64_t reserved_30_31:2;
137154293ec3SDavid Daney 		uint64_t nokasu:1;
137254293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
137354293ec3SDavid Daney 		uint64_t nomul:1;
137454293ec3SDavid Daney 		uint64_t nocrypto:1;
137554293ec3SDavid Daney 		uint64_t rst_sht:1;
137654293ec3SDavid Daney 		uint64_t bist_dis:1;
137754293ec3SDavid Daney 		uint64_t chip_id:8;
137854293ec3SDavid Daney 		uint64_t reserved_12_15:4;
137954293ec3SDavid Daney 		uint64_t pp_dis:12;
1380c5aa59e8SDavid Daney #else
1381c5aa59e8SDavid Daney 		uint64_t pp_dis:12;
1382c5aa59e8SDavid Daney 		uint64_t reserved_12_15:4;
1383c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1384c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1385c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1386c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1387c5aa59e8SDavid Daney 		uint64_t nomul:1;
1388c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1389c5aa59e8SDavid Daney 		uint64_t nokasu:1;
1390c5aa59e8SDavid Daney 		uint64_t reserved_30_31:2;
1391c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1392c5aa59e8SDavid Daney 		uint64_t fus318:1;
1393c5aa59e8SDavid Daney 		uint64_t reserved_34_63:30;
1394c5aa59e8SDavid Daney #endif
139554293ec3SDavid Daney 	} cn56xx;
139654293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn58xx {
1397c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
139854293ec3SDavid Daney 		uint64_t reserved_30_63:34;
139954293ec3SDavid Daney 		uint64_t nokasu:1;
140054293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
140154293ec3SDavid Daney 		uint64_t nomul:1;
140254293ec3SDavid Daney 		uint64_t nocrypto:1;
140354293ec3SDavid Daney 		uint64_t rst_sht:1;
140454293ec3SDavid Daney 		uint64_t bist_dis:1;
140554293ec3SDavid Daney 		uint64_t chip_id:8;
140654293ec3SDavid Daney 		uint64_t pp_dis:16;
1407c5aa59e8SDavid Daney #else
1408c5aa59e8SDavid Daney 		uint64_t pp_dis:16;
1409c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1410c5aa59e8SDavid Daney 		uint64_t bist_dis:1;
1411c5aa59e8SDavid Daney 		uint64_t rst_sht:1;
1412c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1413c5aa59e8SDavid Daney 		uint64_t nomul:1;
1414c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1415c5aa59e8SDavid Daney 		uint64_t nokasu:1;
1416c5aa59e8SDavid Daney 		uint64_t reserved_30_63:34;
1417c5aa59e8SDavid Daney #endif
141854293ec3SDavid Daney 	} cn58xx;
1419751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn61xx {
1420c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1421751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
1422751c9f68SDavid Daney 		uint64_t fus118:1;
1423751c9f68SDavid Daney 		uint64_t rom_info:10;
1424751c9f68SDavid Daney 		uint64_t power_limit:2;
1425751c9f68SDavid Daney 		uint64_t dorm_crypto:1;
1426751c9f68SDavid Daney 		uint64_t fus318:1;
1427751c9f68SDavid Daney 		uint64_t raid_en:1;
1428751c9f68SDavid Daney 		uint64_t reserved_29_31:3;
1429751c9f68SDavid Daney 		uint64_t nodfa_cp2:1;
1430751c9f68SDavid Daney 		uint64_t nomul:1;
1431751c9f68SDavid Daney 		uint64_t nocrypto:1;
1432751c9f68SDavid Daney 		uint64_t reserved_24_25:2;
1433751c9f68SDavid Daney 		uint64_t chip_id:8;
1434751c9f68SDavid Daney 		uint64_t reserved_4_15:12;
1435751c9f68SDavid Daney 		uint64_t pp_dis:4;
1436c5aa59e8SDavid Daney #else
1437c5aa59e8SDavid Daney 		uint64_t pp_dis:4;
1438c5aa59e8SDavid Daney 		uint64_t reserved_4_15:12;
1439c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1440c5aa59e8SDavid Daney 		uint64_t reserved_24_25:2;
1441c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1442c5aa59e8SDavid Daney 		uint64_t nomul:1;
1443c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1444c5aa59e8SDavid Daney 		uint64_t reserved_29_31:3;
1445c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1446c5aa59e8SDavid Daney 		uint64_t fus318:1;
1447c5aa59e8SDavid Daney 		uint64_t dorm_crypto:1;
1448c5aa59e8SDavid Daney 		uint64_t power_limit:2;
1449c5aa59e8SDavid Daney 		uint64_t rom_info:10;
1450c5aa59e8SDavid Daney 		uint64_t fus118:1;
1451c5aa59e8SDavid Daney 		uint64_t reserved_48_63:16;
1452c5aa59e8SDavid Daney #endif
1453751c9f68SDavid Daney 	} cn61xx;
1454aa32a955SDavid Daney 	struct cvmx_mio_fus_dat2_cn63xx {
1455c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1456aa32a955SDavid Daney 		uint64_t reserved_35_63:29;
1457aa32a955SDavid Daney 		uint64_t dorm_crypto:1;
1458aa32a955SDavid Daney 		uint64_t fus318:1;
1459aa32a955SDavid Daney 		uint64_t raid_en:1;
1460aa32a955SDavid Daney 		uint64_t reserved_29_31:3;
1461aa32a955SDavid Daney 		uint64_t nodfa_cp2:1;
1462aa32a955SDavid Daney 		uint64_t nomul:1;
1463aa32a955SDavid Daney 		uint64_t nocrypto:1;
1464aa32a955SDavid Daney 		uint64_t reserved_24_25:2;
1465aa32a955SDavid Daney 		uint64_t chip_id:8;
1466aa32a955SDavid Daney 		uint64_t reserved_6_15:10;
1467aa32a955SDavid Daney 		uint64_t pp_dis:6;
1468c5aa59e8SDavid Daney #else
1469c5aa59e8SDavid Daney 		uint64_t pp_dis:6;
1470c5aa59e8SDavid Daney 		uint64_t reserved_6_15:10;
1471c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1472c5aa59e8SDavid Daney 		uint64_t reserved_24_25:2;
1473c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1474c5aa59e8SDavid Daney 		uint64_t nomul:1;
1475c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1476c5aa59e8SDavid Daney 		uint64_t reserved_29_31:3;
1477c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1478c5aa59e8SDavid Daney 		uint64_t fus318:1;
1479c5aa59e8SDavid Daney 		uint64_t dorm_crypto:1;
1480c5aa59e8SDavid Daney 		uint64_t reserved_35_63:29;
1481c5aa59e8SDavid Daney #endif
1482aa32a955SDavid Daney 	} cn63xx;
1483751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn66xx {
1484c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1485751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
1486751c9f68SDavid Daney 		uint64_t fus118:1;
1487751c9f68SDavid Daney 		uint64_t rom_info:10;
1488751c9f68SDavid Daney 		uint64_t power_limit:2;
1489751c9f68SDavid Daney 		uint64_t dorm_crypto:1;
1490751c9f68SDavid Daney 		uint64_t fus318:1;
1491751c9f68SDavid Daney 		uint64_t raid_en:1;
1492751c9f68SDavid Daney 		uint64_t reserved_29_31:3;
1493751c9f68SDavid Daney 		uint64_t nodfa_cp2:1;
1494751c9f68SDavid Daney 		uint64_t nomul:1;
1495751c9f68SDavid Daney 		uint64_t nocrypto:1;
1496751c9f68SDavid Daney 		uint64_t reserved_24_25:2;
1497751c9f68SDavid Daney 		uint64_t chip_id:8;
1498751c9f68SDavid Daney 		uint64_t reserved_10_15:6;
1499751c9f68SDavid Daney 		uint64_t pp_dis:10;
1500c5aa59e8SDavid Daney #else
1501c5aa59e8SDavid Daney 		uint64_t pp_dis:10;
1502c5aa59e8SDavid Daney 		uint64_t reserved_10_15:6;
1503c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1504c5aa59e8SDavid Daney 		uint64_t reserved_24_25:2;
1505c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1506c5aa59e8SDavid Daney 		uint64_t nomul:1;
1507c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1508c5aa59e8SDavid Daney 		uint64_t reserved_29_31:3;
1509c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1510c5aa59e8SDavid Daney 		uint64_t fus318:1;
1511c5aa59e8SDavid Daney 		uint64_t dorm_crypto:1;
1512c5aa59e8SDavid Daney 		uint64_t power_limit:2;
1513c5aa59e8SDavid Daney 		uint64_t rom_info:10;
1514c5aa59e8SDavid Daney 		uint64_t fus118:1;
1515c5aa59e8SDavid Daney 		uint64_t reserved_48_63:16;
1516c5aa59e8SDavid Daney #endif
1517751c9f68SDavid Daney 	} cn66xx;
1518751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn68xx {
1519c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1520751c9f68SDavid Daney 		uint64_t reserved_37_63:27;
1521751c9f68SDavid Daney 		uint64_t power_limit:2;
1522751c9f68SDavid Daney 		uint64_t dorm_crypto:1;
1523751c9f68SDavid Daney 		uint64_t fus318:1;
1524751c9f68SDavid Daney 		uint64_t raid_en:1;
1525751c9f68SDavid Daney 		uint64_t reserved_29_31:3;
1526751c9f68SDavid Daney 		uint64_t nodfa_cp2:1;
1527751c9f68SDavid Daney 		uint64_t nomul:1;
1528751c9f68SDavid Daney 		uint64_t nocrypto:1;
1529751c9f68SDavid Daney 		uint64_t reserved_24_25:2;
1530751c9f68SDavid Daney 		uint64_t chip_id:8;
1531751c9f68SDavid Daney 		uint64_t reserved_0_15:16;
1532c5aa59e8SDavid Daney #else
1533c5aa59e8SDavid Daney 		uint64_t reserved_0_15:16;
1534c5aa59e8SDavid Daney 		uint64_t chip_id:8;
1535c5aa59e8SDavid Daney 		uint64_t reserved_24_25:2;
1536c5aa59e8SDavid Daney 		uint64_t nocrypto:1;
1537c5aa59e8SDavid Daney 		uint64_t nomul:1;
1538c5aa59e8SDavid Daney 		uint64_t nodfa_cp2:1;
1539c5aa59e8SDavid Daney 		uint64_t reserved_29_31:3;
1540c5aa59e8SDavid Daney 		uint64_t raid_en:1;
1541c5aa59e8SDavid Daney 		uint64_t fus318:1;
1542c5aa59e8SDavid Daney 		uint64_t dorm_crypto:1;
1543c5aa59e8SDavid Daney 		uint64_t power_limit:2;
1544c5aa59e8SDavid Daney 		uint64_t reserved_37_63:27;
1545c5aa59e8SDavid Daney #endif
1546751c9f68SDavid Daney 	} cn68xx;
15472df11221SDavid Daney 	struct cvmx_mio_fus_dat2_cn70xx {
15482df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
15492df11221SDavid Daney 		uint64_t reserved_48_63:16;
15502df11221SDavid Daney 		uint64_t fus118:1;
15512df11221SDavid Daney 		uint64_t rom_info:10;
15522df11221SDavid Daney 		uint64_t power_limit:2;
15532df11221SDavid Daney 		uint64_t dorm_crypto:1;
15542df11221SDavid Daney 		uint64_t fus318:1;
15552df11221SDavid Daney 		uint64_t raid_en:1;
15562df11221SDavid Daney 		uint64_t reserved_31_29:3;
15572df11221SDavid Daney 		uint64_t nodfa_cp2:1;
15582df11221SDavid Daney 		uint64_t nomul:1;
15592df11221SDavid Daney 		uint64_t nocrypto:1;
15602df11221SDavid Daney 		uint64_t reserved_25_24:2;
15612df11221SDavid Daney 		uint64_t chip_id:8;
15622df11221SDavid Daney 		uint64_t reserved_15_0:16;
15632df11221SDavid Daney #else
15642df11221SDavid Daney 		uint64_t reserved_15_0:16;
15652df11221SDavid Daney 		uint64_t chip_id:8;
15662df11221SDavid Daney 		uint64_t reserved_25_24:2;
15672df11221SDavid Daney 		uint64_t nocrypto:1;
15682df11221SDavid Daney 		uint64_t nomul:1;
15692df11221SDavid Daney 		uint64_t nodfa_cp2:1;
15702df11221SDavid Daney 		uint64_t reserved_31_29:3;
15712df11221SDavid Daney 		uint64_t raid_en:1;
15722df11221SDavid Daney 		uint64_t fus318:1;
15732df11221SDavid Daney 		uint64_t dorm_crypto:1;
15742df11221SDavid Daney 		uint64_t power_limit:2;
15752df11221SDavid Daney 		uint64_t rom_info:10;
15762df11221SDavid Daney 		uint64_t fus118:1;
15772df11221SDavid Daney 		uint64_t reserved_48_63:16;
15782df11221SDavid Daney #endif
15792df11221SDavid Daney 	} cn70xx;
15802df11221SDavid Daney 	struct cvmx_mio_fus_dat2_cn73xx {
15812df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
15822df11221SDavid Daney 		uint64_t reserved_59_63:5;
15832df11221SDavid Daney 		uint64_t run_platform:3;
15842df11221SDavid Daney 		uint64_t gbl_pwr_throttle:8;
15852df11221SDavid Daney 		uint64_t fus118:1;
15862df11221SDavid Daney 		uint64_t rom_info:10;
15872df11221SDavid Daney 		uint64_t power_limit:2;
15882df11221SDavid Daney 		uint64_t dorm_crypto:1;
15892df11221SDavid Daney 		uint64_t fus318:1;
15902df11221SDavid Daney 		uint64_t raid_en:1;
15912df11221SDavid Daney 		uint64_t reserved_31_29:3;
15922df11221SDavid Daney 		uint64_t nodfa_cp2:1;
15932df11221SDavid Daney 		uint64_t nomul:1;
15942df11221SDavid Daney 		uint64_t nocrypto:1;
15952df11221SDavid Daney 		uint64_t reserved_25_24:2;
15962df11221SDavid Daney 		uint64_t chip_id:8;
15972df11221SDavid Daney 		uint64_t reserved_15_0:16;
15982df11221SDavid Daney #else
15992df11221SDavid Daney 		uint64_t reserved_15_0:16;
16002df11221SDavid Daney 		uint64_t chip_id:8;
16012df11221SDavid Daney 		uint64_t reserved_25_24:2;
16022df11221SDavid Daney 		uint64_t nocrypto:1;
16032df11221SDavid Daney 		uint64_t nomul:1;
16042df11221SDavid Daney 		uint64_t nodfa_cp2:1;
16052df11221SDavid Daney 		uint64_t reserved_31_29:3;
16062df11221SDavid Daney 		uint64_t raid_en:1;
16072df11221SDavid Daney 		uint64_t fus318:1;
16082df11221SDavid Daney 		uint64_t dorm_crypto:1;
16092df11221SDavid Daney 		uint64_t power_limit:2;
16102df11221SDavid Daney 		uint64_t rom_info:10;
16112df11221SDavid Daney 		uint64_t fus118:1;
16122df11221SDavid Daney 		uint64_t gbl_pwr_throttle:8;
16132df11221SDavid Daney 		uint64_t run_platform:3;
16142df11221SDavid Daney 		uint64_t reserved_59_63:5;
16152df11221SDavid Daney #endif
16162df11221SDavid Daney 	} cn73xx;
16172df11221SDavid Daney 	struct cvmx_mio_fus_dat2_cn78xx {
16182df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
16192df11221SDavid Daney 		uint64_t reserved_59_63:5;
16202df11221SDavid Daney 		uint64_t run_platform:3;
16212df11221SDavid Daney 		uint64_t reserved_48_55:8;
16222df11221SDavid Daney 		uint64_t fus118:1;
16232df11221SDavid Daney 		uint64_t rom_info:10;
16242df11221SDavid Daney 		uint64_t power_limit:2;
16252df11221SDavid Daney 		uint64_t dorm_crypto:1;
16262df11221SDavid Daney 		uint64_t fus318:1;
16272df11221SDavid Daney 		uint64_t raid_en:1;
16282df11221SDavid Daney 		uint64_t reserved_31_29:3;
16292df11221SDavid Daney 		uint64_t nodfa_cp2:1;
16302df11221SDavid Daney 		uint64_t nomul:1;
16312df11221SDavid Daney 		uint64_t nocrypto:1;
16322df11221SDavid Daney 		uint64_t reserved_25_24:2;
16332df11221SDavid Daney 		uint64_t chip_id:8;
16342df11221SDavid Daney 		uint64_t reserved_0_15:16;
16352df11221SDavid Daney #else
16362df11221SDavid Daney 		uint64_t reserved_0_15:16;
16372df11221SDavid Daney 		uint64_t chip_id:8;
16382df11221SDavid Daney 		uint64_t reserved_25_24:2;
16392df11221SDavid Daney 		uint64_t nocrypto:1;
16402df11221SDavid Daney 		uint64_t nomul:1;
16412df11221SDavid Daney 		uint64_t nodfa_cp2:1;
16422df11221SDavid Daney 		uint64_t reserved_31_29:3;
16432df11221SDavid Daney 		uint64_t raid_en:1;
16442df11221SDavid Daney 		uint64_t fus318:1;
16452df11221SDavid Daney 		uint64_t dorm_crypto:1;
16462df11221SDavid Daney 		uint64_t power_limit:2;
16472df11221SDavid Daney 		uint64_t rom_info:10;
16482df11221SDavid Daney 		uint64_t fus118:1;
16492df11221SDavid Daney 		uint64_t reserved_48_55:8;
16502df11221SDavid Daney 		uint64_t run_platform:3;
16512df11221SDavid Daney 		uint64_t reserved_59_63:5;
16522df11221SDavid Daney #endif
16532df11221SDavid Daney 	} cn78xx;
16542df11221SDavid Daney 	struct cvmx_mio_fus_dat2_cn78xxp2 {
16552df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
16562df11221SDavid Daney 		uint64_t reserved_59_63:5;
16572df11221SDavid Daney 		uint64_t run_platform:3;
16582df11221SDavid Daney 		uint64_t gbl_pwr_throttle:8;
16592df11221SDavid Daney 		uint64_t fus118:1;
16602df11221SDavid Daney 		uint64_t rom_info:10;
16612df11221SDavid Daney 		uint64_t power_limit:2;
16622df11221SDavid Daney 		uint64_t dorm_crypto:1;
16632df11221SDavid Daney 		uint64_t fus318:1;
16642df11221SDavid Daney 		uint64_t raid_en:1;
16652df11221SDavid Daney 		uint64_t reserved_31_29:3;
16662df11221SDavid Daney 		uint64_t nodfa_cp2:1;
16672df11221SDavid Daney 		uint64_t nomul:1;
16682df11221SDavid Daney 		uint64_t nocrypto:1;
16692df11221SDavid Daney 		uint64_t reserved_25_24:2;
16702df11221SDavid Daney 		uint64_t chip_id:8;
16712df11221SDavid Daney 		uint64_t reserved_0_15:16;
16722df11221SDavid Daney #else
16732df11221SDavid Daney 		uint64_t reserved_0_15:16;
16742df11221SDavid Daney 		uint64_t chip_id:8;
16752df11221SDavid Daney 		uint64_t reserved_25_24:2;
16762df11221SDavid Daney 		uint64_t nocrypto:1;
16772df11221SDavid Daney 		uint64_t nomul:1;
16782df11221SDavid Daney 		uint64_t nodfa_cp2:1;
16792df11221SDavid Daney 		uint64_t reserved_31_29:3;
16802df11221SDavid Daney 		uint64_t raid_en:1;
16812df11221SDavid Daney 		uint64_t fus318:1;
16822df11221SDavid Daney 		uint64_t dorm_crypto:1;
16832df11221SDavid Daney 		uint64_t power_limit:2;
16842df11221SDavid Daney 		uint64_t rom_info:10;
16852df11221SDavid Daney 		uint64_t fus118:1;
16862df11221SDavid Daney 		uint64_t gbl_pwr_throttle:8;
16872df11221SDavid Daney 		uint64_t run_platform:3;
16882df11221SDavid Daney 		uint64_t reserved_59_63:5;
16892df11221SDavid Daney #endif
16902df11221SDavid Daney 	} cn78xxp2;
169154293ec3SDavid Daney };
169254293ec3SDavid Daney 
169354293ec3SDavid Daney union cvmx_mio_fus_dat3 {
169454293ec3SDavid Daney 	uint64_t u64;
169554293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_s {
1696c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
16972df11221SDavid Daney 		uint64_t ema0:6;
1698aa32a955SDavid Daney 		uint64_t pll_ctl:10;
1699aa32a955SDavid Daney 		uint64_t dfa_info_dte:3;
1700aa32a955SDavid Daney 		uint64_t dfa_info_clm:4;
17012df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
17022df11221SDavid Daney 		uint64_t reserved_38_39:2;
1703aa32a955SDavid Daney 		uint64_t efus_lck_rsv:1;
1704aa32a955SDavid Daney 		uint64_t efus_lck_man:1;
1705aa32a955SDavid Daney 		uint64_t pll_half_dis:1;
1706aa32a955SDavid Daney 		uint64_t l2c_crip:3;
17072df11221SDavid Daney 		uint64_t reserved_28_31:4;
170854293ec3SDavid Daney 		uint64_t efus_lck:1;
170954293ec3SDavid Daney 		uint64_t efus_ign:1;
171054293ec3SDavid Daney 		uint64_t nozip:1;
171154293ec3SDavid Daney 		uint64_t nodfa_dte:1;
17122df11221SDavid Daney 		uint64_t reserved_0_23:24;
1713c5aa59e8SDavid Daney #else
17142df11221SDavid Daney 		uint64_t reserved_0_23:24;
1715c5aa59e8SDavid Daney 		uint64_t nodfa_dte:1;
1716c5aa59e8SDavid Daney 		uint64_t nozip:1;
1717c5aa59e8SDavid Daney 		uint64_t efus_ign:1;
1718c5aa59e8SDavid Daney 		uint64_t efus_lck:1;
17192df11221SDavid Daney 		uint64_t reserved_28_31:4;
1720c5aa59e8SDavid Daney 		uint64_t l2c_crip:3;
1721c5aa59e8SDavid Daney 		uint64_t pll_half_dis:1;
1722c5aa59e8SDavid Daney 		uint64_t efus_lck_man:1;
1723c5aa59e8SDavid Daney 		uint64_t efus_lck_rsv:1;
17242df11221SDavid Daney 		uint64_t reserved_38_39:2;
17252df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
1726c5aa59e8SDavid Daney 		uint64_t dfa_info_clm:4;
1727c5aa59e8SDavid Daney 		uint64_t dfa_info_dte:3;
1728c5aa59e8SDavid Daney 		uint64_t pll_ctl:10;
17292df11221SDavid Daney 		uint64_t ema0:6;
1730c5aa59e8SDavid Daney #endif
173154293ec3SDavid Daney 	} s;
173254293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn30xx {
1733c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
173454293ec3SDavid Daney 		uint64_t reserved_32_63:32;
173554293ec3SDavid Daney 		uint64_t pll_div4:1;
173654293ec3SDavid Daney 		uint64_t reserved_29_30:2;
173754293ec3SDavid Daney 		uint64_t bar2_en:1;
173854293ec3SDavid Daney 		uint64_t efus_lck:1;
173954293ec3SDavid Daney 		uint64_t efus_ign:1;
174054293ec3SDavid Daney 		uint64_t nozip:1;
174154293ec3SDavid Daney 		uint64_t nodfa_dte:1;
174254293ec3SDavid Daney 		uint64_t icache:24;
1743c5aa59e8SDavid Daney #else
1744c5aa59e8SDavid Daney 		uint64_t icache:24;
1745c5aa59e8SDavid Daney 		uint64_t nodfa_dte:1;
1746c5aa59e8SDavid Daney 		uint64_t nozip:1;
1747c5aa59e8SDavid Daney 		uint64_t efus_ign:1;
1748c5aa59e8SDavid Daney 		uint64_t efus_lck:1;
1749c5aa59e8SDavid Daney 		uint64_t bar2_en:1;
1750c5aa59e8SDavid Daney 		uint64_t reserved_29_30:2;
1751c5aa59e8SDavid Daney 		uint64_t pll_div4:1;
1752c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
1753c5aa59e8SDavid Daney #endif
175454293ec3SDavid Daney 	} cn30xx;
1755aa32a955SDavid Daney 	struct cvmx_mio_fus_dat3_cn31xx {
1756c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1757aa32a955SDavid Daney 		uint64_t reserved_32_63:32;
1758aa32a955SDavid Daney 		uint64_t pll_div4:1;
1759aa32a955SDavid Daney 		uint64_t zip_crip:2;
1760aa32a955SDavid Daney 		uint64_t bar2_en:1;
1761aa32a955SDavid Daney 		uint64_t efus_lck:1;
1762aa32a955SDavid Daney 		uint64_t efus_ign:1;
1763aa32a955SDavid Daney 		uint64_t nozip:1;
1764aa32a955SDavid Daney 		uint64_t nodfa_dte:1;
1765aa32a955SDavid Daney 		uint64_t icache:24;
1766c5aa59e8SDavid Daney #else
1767c5aa59e8SDavid Daney 		uint64_t icache:24;
1768c5aa59e8SDavid Daney 		uint64_t nodfa_dte:1;
1769c5aa59e8SDavid Daney 		uint64_t nozip:1;
1770c5aa59e8SDavid Daney 		uint64_t efus_ign:1;
1771c5aa59e8SDavid Daney 		uint64_t efus_lck:1;
1772c5aa59e8SDavid Daney 		uint64_t bar2_en:1;
1773c5aa59e8SDavid Daney 		uint64_t zip_crip:2;
1774c5aa59e8SDavid Daney 		uint64_t pll_div4:1;
1775c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
1776c5aa59e8SDavid Daney #endif
1777aa32a955SDavid Daney 	} cn31xx;
177854293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx {
1779c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
178054293ec3SDavid Daney 		uint64_t reserved_31_63:33;
178154293ec3SDavid Daney 		uint64_t zip_crip:2;
178254293ec3SDavid Daney 		uint64_t bar2_en:1;
178354293ec3SDavid Daney 		uint64_t efus_lck:1;
178454293ec3SDavid Daney 		uint64_t efus_ign:1;
178554293ec3SDavid Daney 		uint64_t nozip:1;
178654293ec3SDavid Daney 		uint64_t nodfa_dte:1;
178754293ec3SDavid Daney 		uint64_t icache:24;
1788c5aa59e8SDavid Daney #else
1789c5aa59e8SDavid Daney 		uint64_t icache:24;
1790c5aa59e8SDavid Daney 		uint64_t nodfa_dte:1;
1791c5aa59e8SDavid Daney 		uint64_t nozip:1;
1792c5aa59e8SDavid Daney 		uint64_t efus_ign:1;
1793c5aa59e8SDavid Daney 		uint64_t efus_lck:1;
1794c5aa59e8SDavid Daney 		uint64_t bar2_en:1;
1795c5aa59e8SDavid Daney 		uint64_t zip_crip:2;
1796c5aa59e8SDavid Daney 		uint64_t reserved_31_63:33;
1797c5aa59e8SDavid Daney #endif
179854293ec3SDavid Daney 	} cn38xx;
179954293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xxp2 {
1800c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
180154293ec3SDavid Daney 		uint64_t reserved_29_63:35;
180254293ec3SDavid Daney 		uint64_t bar2_en:1;
180354293ec3SDavid Daney 		uint64_t efus_lck:1;
180454293ec3SDavid Daney 		uint64_t efus_ign:1;
180554293ec3SDavid Daney 		uint64_t nozip:1;
180654293ec3SDavid Daney 		uint64_t nodfa_dte:1;
180754293ec3SDavid Daney 		uint64_t icache:24;
1808c5aa59e8SDavid Daney #else
1809c5aa59e8SDavid Daney 		uint64_t icache:24;
1810c5aa59e8SDavid Daney 		uint64_t nodfa_dte:1;
1811c5aa59e8SDavid Daney 		uint64_t nozip:1;
1812c5aa59e8SDavid Daney 		uint64_t efus_ign:1;
1813c5aa59e8SDavid Daney 		uint64_t efus_lck:1;
1814c5aa59e8SDavid Daney 		uint64_t bar2_en:1;
1815c5aa59e8SDavid Daney 		uint64_t reserved_29_63:35;
1816c5aa59e8SDavid Daney #endif
181754293ec3SDavid Daney 	} cn38xxp2;
1818751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx {
1819c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
1820aa32a955SDavid Daney 		uint64_t reserved_58_63:6;
1821aa32a955SDavid Daney 		uint64_t pll_ctl:10;
1822aa32a955SDavid Daney 		uint64_t dfa_info_dte:3;
1823aa32a955SDavid Daney 		uint64_t dfa_info_clm:4;
1824aa32a955SDavid Daney 		uint64_t reserved_40_40:1;
1825aa32a955SDavid Daney 		uint64_t ema:2;
1826aa32a955SDavid Daney 		uint64_t efus_lck_rsv:1;
1827aa32a955SDavid Daney 		uint64_t efus_lck_man:1;
1828aa32a955SDavid Daney 		uint64_t pll_half_dis:1;
1829aa32a955SDavid Daney 		uint64_t l2c_crip:3;
1830aa32a955SDavid Daney 		uint64_t reserved_31_31:1;
1831aa32a955SDavid Daney 		uint64_t zip_info:2;
1832aa32a955SDavid Daney 		uint64_t bar2_en:1;
1833aa32a955SDavid Daney 		uint64_t efus_lck:1;
1834aa32a955SDavid Daney 		uint64_t efus_ign:1;
1835aa32a955SDavid Daney 		uint64_t nozip:1;
1836aa32a955SDavid Daney 		uint64_t nodfa_dte:1;
1837aa32a955SDavid Daney 		uint64_t reserved_0_23:24;
1838c5aa59e8SDavid Daney #else
1839c5aa59e8SDavid Daney 		uint64_t reserved_0_23:24;
1840c5aa59e8SDavid Daney 		uint64_t nodfa_dte:1;
1841c5aa59e8SDavid Daney 		uint64_t nozip:1;
1842c5aa59e8SDavid Daney 		uint64_t efus_ign:1;
1843c5aa59e8SDavid Daney 		uint64_t efus_lck:1;
1844c5aa59e8SDavid Daney 		uint64_t bar2_en:1;
1845c5aa59e8SDavid Daney 		uint64_t zip_info:2;
1846c5aa59e8SDavid Daney 		uint64_t reserved_31_31:1;
1847c5aa59e8SDavid Daney 		uint64_t l2c_crip:3;
1848c5aa59e8SDavid Daney 		uint64_t pll_half_dis:1;
1849c5aa59e8SDavid Daney 		uint64_t efus_lck_man:1;
1850c5aa59e8SDavid Daney 		uint64_t efus_lck_rsv:1;
1851c5aa59e8SDavid Daney 		uint64_t ema:2;
1852c5aa59e8SDavid Daney 		uint64_t reserved_40_40:1;
1853c5aa59e8SDavid Daney 		uint64_t dfa_info_clm:4;
1854c5aa59e8SDavid Daney 		uint64_t dfa_info_dte:3;
1855c5aa59e8SDavid Daney 		uint64_t pll_ctl:10;
1856c5aa59e8SDavid Daney 		uint64_t reserved_58_63:6;
1857c5aa59e8SDavid Daney #endif
1858751c9f68SDavid Daney 	} cn61xx;
18592df11221SDavid Daney 	struct cvmx_mio_fus_dat3_cn70xx {
18602df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
18612df11221SDavid Daney 		uint64_t ema0:6;
18622df11221SDavid Daney 		uint64_t pll_ctl:10;
18632df11221SDavid Daney 		uint64_t dfa_info_dte:3;
18642df11221SDavid Daney 		uint64_t dfa_info_clm:4;
18652df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
18662df11221SDavid Daney 		uint64_t pll_bwadj_denom:2;
18672df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
18682df11221SDavid Daney 		uint64_t efus_lck_man:1;
18692df11221SDavid Daney 		uint64_t pll_half_dis:1;
18702df11221SDavid Daney 		uint64_t l2c_crip:3;
18712df11221SDavid Daney 		uint64_t use_int_refclk:1;
18722df11221SDavid Daney 		uint64_t zip_info:2;
18732df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
18742df11221SDavid Daney 		uint64_t efus_lck:1;
18752df11221SDavid Daney 		uint64_t efus_ign:1;
18762df11221SDavid Daney 		uint64_t nozip:1;
18772df11221SDavid Daney 		uint64_t nodfa_dte:1;
18782df11221SDavid Daney 		uint64_t ema1:6;
18792df11221SDavid Daney 		uint64_t reserved_0_17:18;
18802df11221SDavid Daney #else
18812df11221SDavid Daney 		uint64_t reserved_0_17:18;
18822df11221SDavid Daney 		uint64_t ema1:6;
18832df11221SDavid Daney 		uint64_t nodfa_dte:1;
18842df11221SDavid Daney 		uint64_t nozip:1;
18852df11221SDavid Daney 		uint64_t efus_ign:1;
18862df11221SDavid Daney 		uint64_t efus_lck:1;
18872df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
18882df11221SDavid Daney 		uint64_t zip_info:2;
18892df11221SDavid Daney 		uint64_t use_int_refclk:1;
18902df11221SDavid Daney 		uint64_t l2c_crip:3;
18912df11221SDavid Daney 		uint64_t pll_half_dis:1;
18922df11221SDavid Daney 		uint64_t efus_lck_man:1;
18932df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
18942df11221SDavid Daney 		uint64_t pll_bwadj_denom:2;
18952df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
18962df11221SDavid Daney 		uint64_t dfa_info_clm:4;
18972df11221SDavid Daney 		uint64_t dfa_info_dte:3;
18982df11221SDavid Daney 		uint64_t pll_ctl:10;
18992df11221SDavid Daney 		uint64_t ema0:6;
19002df11221SDavid Daney #endif
19012df11221SDavid Daney 	} cn70xx;
19022df11221SDavid Daney 	struct cvmx_mio_fus_dat3_cn70xxp1 {
19032df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
19042df11221SDavid Daney 		uint64_t ema0:6;
19052df11221SDavid Daney 		uint64_t pll_ctl:10;
19062df11221SDavid Daney 		uint64_t dfa_info_dte:3;
19072df11221SDavid Daney 		uint64_t dfa_info_clm:4;
19082df11221SDavid Daney 		uint64_t reserved_38_40:3;
19092df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
19102df11221SDavid Daney 		uint64_t efus_lck_man:1;
19112df11221SDavid Daney 		uint64_t pll_half_dis:1;
19122df11221SDavid Daney 		uint64_t l2c_crip:3;
19132df11221SDavid Daney 		uint64_t reserved_31_31:1;
19142df11221SDavid Daney 		uint64_t zip_info:2;
19152df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
19162df11221SDavid Daney 		uint64_t efus_lck:1;
19172df11221SDavid Daney 		uint64_t efus_ign:1;
19182df11221SDavid Daney 		uint64_t nozip:1;
19192df11221SDavid Daney 		uint64_t nodfa_dte:1;
19202df11221SDavid Daney 		uint64_t ema1:6;
19212df11221SDavid Daney 		uint64_t reserved_0_17:18;
19222df11221SDavid Daney #else
19232df11221SDavid Daney 		uint64_t reserved_0_17:18;
19242df11221SDavid Daney 		uint64_t ema1:6;
19252df11221SDavid Daney 		uint64_t nodfa_dte:1;
19262df11221SDavid Daney 		uint64_t nozip:1;
19272df11221SDavid Daney 		uint64_t efus_ign:1;
19282df11221SDavid Daney 		uint64_t efus_lck:1;
19292df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
19302df11221SDavid Daney 		uint64_t zip_info:2;
19312df11221SDavid Daney 		uint64_t reserved_31_31:1;
19322df11221SDavid Daney 		uint64_t l2c_crip:3;
19332df11221SDavid Daney 		uint64_t pll_half_dis:1;
19342df11221SDavid Daney 		uint64_t efus_lck_man:1;
19352df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
19362df11221SDavid Daney 		uint64_t reserved_38_40:3;
19372df11221SDavid Daney 		uint64_t dfa_info_clm:4;
19382df11221SDavid Daney 		uint64_t dfa_info_dte:3;
19392df11221SDavid Daney 		uint64_t pll_ctl:10;
19402df11221SDavid Daney 		uint64_t ema0:6;
19412df11221SDavid Daney #endif
19422df11221SDavid Daney 	} cn70xxp1;
19432df11221SDavid Daney 	struct cvmx_mio_fus_dat3_cn73xx {
19442df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
19452df11221SDavid Daney 		uint64_t ema0:6;
19462df11221SDavid Daney 		uint64_t pll_ctl:10;
19472df11221SDavid Daney 		uint64_t dfa_info_dte:3;
19482df11221SDavid Daney 		uint64_t dfa_info_clm:4;
19492df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
19502df11221SDavid Daney 		uint64_t pll_bwadj_denom:2;
19512df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
19522df11221SDavid Daney 		uint64_t efus_lck_man:1;
19532df11221SDavid Daney 		uint64_t pll_half_dis:1;
19542df11221SDavid Daney 		uint64_t l2c_crip:3;
19552df11221SDavid Daney 		uint64_t use_int_refclk:1;
19562df11221SDavid Daney 		uint64_t zip_info:2;
19572df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
19582df11221SDavid Daney 		uint64_t efus_lck:1;
19592df11221SDavid Daney 		uint64_t efus_ign:1;
19602df11221SDavid Daney 		uint64_t nozip:1;
19612df11221SDavid Daney 		uint64_t nodfa_dte:1;
19622df11221SDavid Daney 		uint64_t ema1:6;
19632df11221SDavid Daney 		uint64_t nohna_dte:1;
19642df11221SDavid Daney 		uint64_t hna_info_dte:3;
19652df11221SDavid Daney 		uint64_t hna_info_clm:4;
19662df11221SDavid Daney 		uint64_t reserved_9_9:1;
19672df11221SDavid Daney 		uint64_t core_pll_mul:5;
19682df11221SDavid Daney 		uint64_t pnr_pll_mul:4;
19692df11221SDavid Daney #else
19702df11221SDavid Daney 		uint64_t pnr_pll_mul:4;
19712df11221SDavid Daney 		uint64_t core_pll_mul:5;
19722df11221SDavid Daney 		uint64_t reserved_9_9:1;
19732df11221SDavid Daney 		uint64_t hna_info_clm:4;
19742df11221SDavid Daney 		uint64_t hna_info_dte:3;
19752df11221SDavid Daney 		uint64_t nohna_dte:1;
19762df11221SDavid Daney 		uint64_t ema1:6;
19772df11221SDavid Daney 		uint64_t nodfa_dte:1;
19782df11221SDavid Daney 		uint64_t nozip:1;
19792df11221SDavid Daney 		uint64_t efus_ign:1;
19802df11221SDavid Daney 		uint64_t efus_lck:1;
19812df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
19822df11221SDavid Daney 		uint64_t zip_info:2;
19832df11221SDavid Daney 		uint64_t use_int_refclk:1;
19842df11221SDavid Daney 		uint64_t l2c_crip:3;
19852df11221SDavid Daney 		uint64_t pll_half_dis:1;
19862df11221SDavid Daney 		uint64_t efus_lck_man:1;
19872df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
19882df11221SDavid Daney 		uint64_t pll_bwadj_denom:2;
19892df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
19902df11221SDavid Daney 		uint64_t dfa_info_clm:4;
19912df11221SDavid Daney 		uint64_t dfa_info_dte:3;
19922df11221SDavid Daney 		uint64_t pll_ctl:10;
19932df11221SDavid Daney 		uint64_t ema0:6;
19942df11221SDavid Daney #endif
19952df11221SDavid Daney 	} cn73xx;
19962df11221SDavid Daney 	struct cvmx_mio_fus_dat3_cn78xx {
19972df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
19982df11221SDavid Daney 		uint64_t ema0:6;
19992df11221SDavid Daney 		uint64_t pll_ctl:10;
20002df11221SDavid Daney 		uint64_t dfa_info_dte:3;
20012df11221SDavid Daney 		uint64_t dfa_info_clm:4;
20022df11221SDavid Daney 		uint64_t reserved_38_40:3;
20032df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
20042df11221SDavid Daney 		uint64_t efus_lck_man:1;
20052df11221SDavid Daney 		uint64_t pll_half_dis:1;
20062df11221SDavid Daney 		uint64_t l2c_crip:3;
20072df11221SDavid Daney 		uint64_t reserved_31_31:1;
20082df11221SDavid Daney 		uint64_t zip_info:2;
20092df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
20102df11221SDavid Daney 		uint64_t efus_lck:1;
20112df11221SDavid Daney 		uint64_t efus_ign:1;
20122df11221SDavid Daney 		uint64_t nozip:1;
20132df11221SDavid Daney 		uint64_t nodfa_dte:1;
20142df11221SDavid Daney 		uint64_t ema1:6;
20152df11221SDavid Daney 		uint64_t nohna_dte:1;
20162df11221SDavid Daney 		uint64_t hna_info_dte:3;
20172df11221SDavid Daney 		uint64_t hna_info_clm:4;
20182df11221SDavid Daney 		uint64_t reserved_0_9:10;
20192df11221SDavid Daney #else
20202df11221SDavid Daney 		uint64_t reserved_0_9:10;
20212df11221SDavid Daney 		uint64_t hna_info_clm:4;
20222df11221SDavid Daney 		uint64_t hna_info_dte:3;
20232df11221SDavid Daney 		uint64_t nohna_dte:1;
20242df11221SDavid Daney 		uint64_t ema1:6;
20252df11221SDavid Daney 		uint64_t nodfa_dte:1;
20262df11221SDavid Daney 		uint64_t nozip:1;
20272df11221SDavid Daney 		uint64_t efus_ign:1;
20282df11221SDavid Daney 		uint64_t efus_lck:1;
20292df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
20302df11221SDavid Daney 		uint64_t zip_info:2;
20312df11221SDavid Daney 		uint64_t reserved_31_31:1;
20322df11221SDavid Daney 		uint64_t l2c_crip:3;
20332df11221SDavid Daney 		uint64_t pll_half_dis:1;
20342df11221SDavid Daney 		uint64_t efus_lck_man:1;
20352df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
20362df11221SDavid Daney 		uint64_t reserved_38_40:3;
20372df11221SDavid Daney 		uint64_t dfa_info_clm:4;
20382df11221SDavid Daney 		uint64_t dfa_info_dte:3;
20392df11221SDavid Daney 		uint64_t pll_ctl:10;
20402df11221SDavid Daney 		uint64_t ema0:6;
20412df11221SDavid Daney #endif
20422df11221SDavid Daney 	} cn78xx;
20432df11221SDavid Daney 	struct cvmx_mio_fus_dat3_cnf75xx {
20442df11221SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
20452df11221SDavid Daney 		uint64_t ema0:6;
20462df11221SDavid Daney 		uint64_t pll_ctl:10;
20472df11221SDavid Daney 		uint64_t dfa_info_dte:3;
20482df11221SDavid Daney 		uint64_t dfa_info_clm:4;
20492df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
20502df11221SDavid Daney 		uint64_t pll_bwadj_denom:2;
20512df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
20522df11221SDavid Daney 		uint64_t efus_lck_man:1;
20532df11221SDavid Daney 		uint64_t pll_half_dis:1;
20542df11221SDavid Daney 		uint64_t l2c_crip:3;
20552df11221SDavid Daney 		uint64_t use_int_refclk:1;
20562df11221SDavid Daney 		uint64_t zip_info:2;
20572df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
20582df11221SDavid Daney 		uint64_t efus_lck:1;
20592df11221SDavid Daney 		uint64_t efus_ign:1;
20602df11221SDavid Daney 		uint64_t nozip:1;
20612df11221SDavid Daney 		uint64_t nodfa_dte:1;
20622df11221SDavid Daney 		uint64_t ema1:6;
20632df11221SDavid Daney 		uint64_t reserved_9_17:9;
20642df11221SDavid Daney 		uint64_t core_pll_mul:5;
20652df11221SDavid Daney 		uint64_t pnr_pll_mul:4;
20662df11221SDavid Daney #else
20672df11221SDavid Daney 		uint64_t pnr_pll_mul:4;
20682df11221SDavid Daney 		uint64_t core_pll_mul:5;
20692df11221SDavid Daney 		uint64_t reserved_9_17:9;
20702df11221SDavid Daney 		uint64_t ema1:6;
20712df11221SDavid Daney 		uint64_t nodfa_dte:1;
20722df11221SDavid Daney 		uint64_t nozip:1;
20732df11221SDavid Daney 		uint64_t efus_ign:1;
20742df11221SDavid Daney 		uint64_t efus_lck:1;
20752df11221SDavid Daney 		uint64_t bar2_sz_conf:1;
20762df11221SDavid Daney 		uint64_t zip_info:2;
20772df11221SDavid Daney 		uint64_t use_int_refclk:1;
20782df11221SDavid Daney 		uint64_t l2c_crip:3;
20792df11221SDavid Daney 		uint64_t pll_half_dis:1;
20802df11221SDavid Daney 		uint64_t efus_lck_man:1;
20812df11221SDavid Daney 		uint64_t efus_lck_rsv:1;
20822df11221SDavid Daney 		uint64_t pll_bwadj_denom:2;
20832df11221SDavid Daney 		uint64_t pll_alt_matrix:1;
20842df11221SDavid Daney 		uint64_t dfa_info_clm:4;
20852df11221SDavid Daney 		uint64_t dfa_info_dte:3;
20862df11221SDavid Daney 		uint64_t pll_ctl:10;
20872df11221SDavid Daney 		uint64_t ema0:6;
20882df11221SDavid Daney #endif
20892df11221SDavid Daney 	} cnf75xx;
209054293ec3SDavid Daney };
209154293ec3SDavid Daney 
209254293ec3SDavid Daney union cvmx_mio_fus_ema {
209354293ec3SDavid Daney 	uint64_t u64;
209454293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s {
2095c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
209654293ec3SDavid Daney 		uint64_t reserved_7_63:57;
209754293ec3SDavid Daney 		uint64_t eff_ema:3;
209854293ec3SDavid Daney 		uint64_t reserved_3_3:1;
209954293ec3SDavid Daney 		uint64_t ema:3;
2100c5aa59e8SDavid Daney #else
2101c5aa59e8SDavid Daney 		uint64_t ema:3;
2102c5aa59e8SDavid Daney 		uint64_t reserved_3_3:1;
2103c5aa59e8SDavid Daney 		uint64_t eff_ema:3;
2104c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
2105c5aa59e8SDavid Daney #endif
210654293ec3SDavid Daney 	} s;
210754293ec3SDavid Daney 	struct cvmx_mio_fus_ema_cn58xx {
2108c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
210954293ec3SDavid Daney 		uint64_t reserved_2_63:62;
211054293ec3SDavid Daney 		uint64_t ema:2;
2111c5aa59e8SDavid Daney #else
2112c5aa59e8SDavid Daney 		uint64_t ema:2;
2113c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
2114c5aa59e8SDavid Daney #endif
211554293ec3SDavid Daney 	} cn58xx;
211654293ec3SDavid Daney };
211754293ec3SDavid Daney 
211854293ec3SDavid Daney union cvmx_mio_fus_pdf {
211954293ec3SDavid Daney 	uint64_t u64;
212054293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s {
2121c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
212254293ec3SDavid Daney 		uint64_t pdf:64;
2123c5aa59e8SDavid Daney #else
2124c5aa59e8SDavid Daney 		uint64_t pdf:64;
2125c5aa59e8SDavid Daney #endif
212654293ec3SDavid Daney 	} s;
212754293ec3SDavid Daney };
212854293ec3SDavid Daney 
212954293ec3SDavid Daney union cvmx_mio_fus_pll {
213054293ec3SDavid Daney 	uint64_t u64;
213154293ec3SDavid Daney 	struct cvmx_mio_fus_pll_s {
2132c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2133751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
2134751c9f68SDavid Daney 		uint64_t rclk_align_r:8;
2135751c9f68SDavid Daney 		uint64_t rclk_align_l:8;
2136751c9f68SDavid Daney 		uint64_t reserved_8_31:24;
2137aa32a955SDavid Daney 		uint64_t c_cout_rst:1;
2138aa32a955SDavid Daney 		uint64_t c_cout_sel:2;
2139aa32a955SDavid Daney 		uint64_t pnr_cout_rst:1;
2140aa32a955SDavid Daney 		uint64_t pnr_cout_sel:2;
214154293ec3SDavid Daney 		uint64_t rfslip:1;
214254293ec3SDavid Daney 		uint64_t fbslip:1;
2143c5aa59e8SDavid Daney #else
2144c5aa59e8SDavid Daney 		uint64_t fbslip:1;
2145c5aa59e8SDavid Daney 		uint64_t rfslip:1;
2146c5aa59e8SDavid Daney 		uint64_t pnr_cout_sel:2;
2147c5aa59e8SDavid Daney 		uint64_t pnr_cout_rst:1;
2148c5aa59e8SDavid Daney 		uint64_t c_cout_sel:2;
2149c5aa59e8SDavid Daney 		uint64_t c_cout_rst:1;
2150c5aa59e8SDavid Daney 		uint64_t reserved_8_31:24;
2151c5aa59e8SDavid Daney 		uint64_t rclk_align_l:8;
2152c5aa59e8SDavid Daney 		uint64_t rclk_align_r:8;
2153c5aa59e8SDavid Daney 		uint64_t reserved_48_63:16;
2154c5aa59e8SDavid Daney #endif
215554293ec3SDavid Daney 	} s;
2156aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx {
2157c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2158aa32a955SDavid Daney 		uint64_t reserved_2_63:62;
2159aa32a955SDavid Daney 		uint64_t rfslip:1;
2160aa32a955SDavid Daney 		uint64_t fbslip:1;
2161c5aa59e8SDavid Daney #else
2162c5aa59e8SDavid Daney 		uint64_t fbslip:1;
2163c5aa59e8SDavid Daney 		uint64_t rfslip:1;
2164c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
2165c5aa59e8SDavid Daney #endif
2166aa32a955SDavid Daney 	} cn50xx;
2167751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_cn61xx {
2168c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2169751c9f68SDavid Daney 		uint64_t reserved_8_63:56;
2170751c9f68SDavid Daney 		uint64_t c_cout_rst:1;
2171751c9f68SDavid Daney 		uint64_t c_cout_sel:2;
2172751c9f68SDavid Daney 		uint64_t pnr_cout_rst:1;
2173751c9f68SDavid Daney 		uint64_t pnr_cout_sel:2;
2174751c9f68SDavid Daney 		uint64_t rfslip:1;
2175751c9f68SDavid Daney 		uint64_t fbslip:1;
2176c5aa59e8SDavid Daney #else
2177c5aa59e8SDavid Daney 		uint64_t fbslip:1;
2178c5aa59e8SDavid Daney 		uint64_t rfslip:1;
2179c5aa59e8SDavid Daney 		uint64_t pnr_cout_sel:2;
2180c5aa59e8SDavid Daney 		uint64_t pnr_cout_rst:1;
2181c5aa59e8SDavid Daney 		uint64_t c_cout_sel:2;
2182c5aa59e8SDavid Daney 		uint64_t c_cout_rst:1;
2183c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
2184c5aa59e8SDavid Daney #endif
2185751c9f68SDavid Daney 	} cn61xx;
218654293ec3SDavid Daney };
218754293ec3SDavid Daney 
218854293ec3SDavid Daney union cvmx_mio_fus_prog {
218954293ec3SDavid Daney 	uint64_t u64;
219054293ec3SDavid Daney 	struct cvmx_mio_fus_prog_s {
2191c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2192aa32a955SDavid Daney 		uint64_t reserved_2_63:62;
2193aa32a955SDavid Daney 		uint64_t soft:1;
219454293ec3SDavid Daney 		uint64_t prog:1;
2195c5aa59e8SDavid Daney #else
2196c5aa59e8SDavid Daney 		uint64_t prog:1;
2197c5aa59e8SDavid Daney 		uint64_t soft:1;
2198c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
2199c5aa59e8SDavid Daney #endif
220054293ec3SDavid Daney 	} s;
2201aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx {
2202c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2203aa32a955SDavid Daney 		uint64_t reserved_1_63:63;
2204aa32a955SDavid Daney 		uint64_t prog:1;
2205c5aa59e8SDavid Daney #else
2206c5aa59e8SDavid Daney 		uint64_t prog:1;
2207c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
2208c5aa59e8SDavid Daney #endif
2209aa32a955SDavid Daney 	} cn30xx;
221054293ec3SDavid Daney };
221154293ec3SDavid Daney 
221254293ec3SDavid Daney union cvmx_mio_fus_prog_times {
221354293ec3SDavid Daney 	uint64_t u64;
221454293ec3SDavid Daney 	struct cvmx_mio_fus_prog_times_s {
2215c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2216aa32a955SDavid Daney 		uint64_t reserved_35_63:29;
2217aa32a955SDavid Daney 		uint64_t vgate_pin:1;
2218aa32a955SDavid Daney 		uint64_t fsrc_pin:1;
2219aa32a955SDavid Daney 		uint64_t prog_pin:1;
2220aa32a955SDavid Daney 		uint64_t reserved_6_31:26;
2221aa32a955SDavid Daney 		uint64_t setup:6;
2222c5aa59e8SDavid Daney #else
2223c5aa59e8SDavid Daney 		uint64_t setup:6;
2224c5aa59e8SDavid Daney 		uint64_t reserved_6_31:26;
2225c5aa59e8SDavid Daney 		uint64_t prog_pin:1;
2226c5aa59e8SDavid Daney 		uint64_t fsrc_pin:1;
2227c5aa59e8SDavid Daney 		uint64_t vgate_pin:1;
2228c5aa59e8SDavid Daney 		uint64_t reserved_35_63:29;
2229c5aa59e8SDavid Daney #endif
2230aa32a955SDavid Daney 	} s;
2231aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx {
2232c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
223354293ec3SDavid Daney 		uint64_t reserved_33_63:31;
223454293ec3SDavid Daney 		uint64_t prog_pin:1;
223554293ec3SDavid Daney 		uint64_t out:8;
223654293ec3SDavid Daney 		uint64_t sclk_lo:4;
223754293ec3SDavid Daney 		uint64_t sclk_hi:12;
223854293ec3SDavid Daney 		uint64_t setup:8;
2239c5aa59e8SDavid Daney #else
2240c5aa59e8SDavid Daney 		uint64_t setup:8;
2241c5aa59e8SDavid Daney 		uint64_t sclk_hi:12;
2242c5aa59e8SDavid Daney 		uint64_t sclk_lo:4;
2243c5aa59e8SDavid Daney 		uint64_t out:8;
2244c5aa59e8SDavid Daney 		uint64_t prog_pin:1;
2245c5aa59e8SDavid Daney 		uint64_t reserved_33_63:31;
2246c5aa59e8SDavid Daney #endif
2247aa32a955SDavid Daney 	} cn50xx;
2248751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx {
2249c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2250aa32a955SDavid Daney 		uint64_t reserved_35_63:29;
2251aa32a955SDavid Daney 		uint64_t vgate_pin:1;
2252aa32a955SDavid Daney 		uint64_t fsrc_pin:1;
2253aa32a955SDavid Daney 		uint64_t prog_pin:1;
2254aa32a955SDavid Daney 		uint64_t out:7;
2255aa32a955SDavid Daney 		uint64_t sclk_lo:4;
2256aa32a955SDavid Daney 		uint64_t sclk_hi:15;
2257aa32a955SDavid Daney 		uint64_t setup:6;
2258c5aa59e8SDavid Daney #else
2259c5aa59e8SDavid Daney 		uint64_t setup:6;
2260c5aa59e8SDavid Daney 		uint64_t sclk_hi:15;
2261c5aa59e8SDavid Daney 		uint64_t sclk_lo:4;
2262c5aa59e8SDavid Daney 		uint64_t out:7;
2263c5aa59e8SDavid Daney 		uint64_t prog_pin:1;
2264c5aa59e8SDavid Daney 		uint64_t fsrc_pin:1;
2265c5aa59e8SDavid Daney 		uint64_t vgate_pin:1;
2266c5aa59e8SDavid Daney 		uint64_t reserved_35_63:29;
2267c5aa59e8SDavid Daney #endif
2268751c9f68SDavid Daney 	} cn61xx;
226954293ec3SDavid Daney };
227054293ec3SDavid Daney 
227154293ec3SDavid Daney union cvmx_mio_fus_rcmd {
227254293ec3SDavid Daney 	uint64_t u64;
227354293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_s {
2274c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
227554293ec3SDavid Daney 		uint64_t reserved_24_63:40;
227654293ec3SDavid Daney 		uint64_t dat:8;
227754293ec3SDavid Daney 		uint64_t reserved_13_15:3;
227854293ec3SDavid Daney 		uint64_t pend:1;
227954293ec3SDavid Daney 		uint64_t reserved_9_11:3;
228054293ec3SDavid Daney 		uint64_t efuse:1;
228154293ec3SDavid Daney 		uint64_t addr:8;
2282c5aa59e8SDavid Daney #else
2283c5aa59e8SDavid Daney 		uint64_t addr:8;
2284c5aa59e8SDavid Daney 		uint64_t efuse:1;
2285c5aa59e8SDavid Daney 		uint64_t reserved_9_11:3;
2286c5aa59e8SDavid Daney 		uint64_t pend:1;
2287c5aa59e8SDavid Daney 		uint64_t reserved_13_15:3;
2288c5aa59e8SDavid Daney 		uint64_t dat:8;
2289c5aa59e8SDavid Daney 		uint64_t reserved_24_63:40;
2290c5aa59e8SDavid Daney #endif
229154293ec3SDavid Daney 	} s;
229254293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx {
2293c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
229454293ec3SDavid Daney 		uint64_t reserved_24_63:40;
229554293ec3SDavid Daney 		uint64_t dat:8;
229654293ec3SDavid Daney 		uint64_t reserved_13_15:3;
229754293ec3SDavid Daney 		uint64_t pend:1;
229854293ec3SDavid Daney 		uint64_t reserved_9_11:3;
229954293ec3SDavid Daney 		uint64_t efuse:1;
230054293ec3SDavid Daney 		uint64_t reserved_7_7:1;
230154293ec3SDavid Daney 		uint64_t addr:7;
2302c5aa59e8SDavid Daney #else
2303c5aa59e8SDavid Daney 		uint64_t addr:7;
2304c5aa59e8SDavid Daney 		uint64_t reserved_7_7:1;
2305c5aa59e8SDavid Daney 		uint64_t efuse:1;
2306c5aa59e8SDavid Daney 		uint64_t reserved_9_11:3;
2307c5aa59e8SDavid Daney 		uint64_t pend:1;
2308c5aa59e8SDavid Daney 		uint64_t reserved_13_15:3;
2309c5aa59e8SDavid Daney 		uint64_t dat:8;
2310c5aa59e8SDavid Daney 		uint64_t reserved_24_63:40;
2311c5aa59e8SDavid Daney #endif
231254293ec3SDavid Daney 	} cn30xx;
2313aa32a955SDavid Daney };
2314aa32a955SDavid Daney 
2315aa32a955SDavid Daney union cvmx_mio_fus_read_times {
2316aa32a955SDavid Daney 	uint64_t u64;
2317aa32a955SDavid Daney 	struct cvmx_mio_fus_read_times_s {
2318c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2319aa32a955SDavid Daney 		uint64_t reserved_26_63:38;
2320aa32a955SDavid Daney 		uint64_t sch:4;
2321aa32a955SDavid Daney 		uint64_t fsh:4;
2322aa32a955SDavid Daney 		uint64_t prh:4;
2323aa32a955SDavid Daney 		uint64_t sdh:4;
2324aa32a955SDavid Daney 		uint64_t setup:10;
2325c5aa59e8SDavid Daney #else
2326c5aa59e8SDavid Daney 		uint64_t setup:10;
2327c5aa59e8SDavid Daney 		uint64_t sdh:4;
2328c5aa59e8SDavid Daney 		uint64_t prh:4;
2329c5aa59e8SDavid Daney 		uint64_t fsh:4;
2330c5aa59e8SDavid Daney 		uint64_t sch:4;
2331c5aa59e8SDavid Daney 		uint64_t reserved_26_63:38;
2332c5aa59e8SDavid Daney #endif
2333aa32a955SDavid Daney 	} s;
2334aa32a955SDavid Daney };
2335aa32a955SDavid Daney 
2336aa32a955SDavid Daney union cvmx_mio_fus_repair_res0 {
2337aa32a955SDavid Daney 	uint64_t u64;
2338aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res0_s {
2339c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2340aa32a955SDavid Daney 		uint64_t reserved_55_63:9;
2341aa32a955SDavid Daney 		uint64_t too_many:1;
2342aa32a955SDavid Daney 		uint64_t repair2:18;
2343aa32a955SDavid Daney 		uint64_t repair1:18;
2344aa32a955SDavid Daney 		uint64_t repair0:18;
2345c5aa59e8SDavid Daney #else
2346c5aa59e8SDavid Daney 		uint64_t repair0:18;
2347c5aa59e8SDavid Daney 		uint64_t repair1:18;
2348c5aa59e8SDavid Daney 		uint64_t repair2:18;
2349c5aa59e8SDavid Daney 		uint64_t too_many:1;
2350c5aa59e8SDavid Daney 		uint64_t reserved_55_63:9;
2351c5aa59e8SDavid Daney #endif
2352aa32a955SDavid Daney 	} s;
2353aa32a955SDavid Daney };
2354aa32a955SDavid Daney 
2355aa32a955SDavid Daney union cvmx_mio_fus_repair_res1 {
2356aa32a955SDavid Daney 	uint64_t u64;
2357aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res1_s {
2358c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2359aa32a955SDavid Daney 		uint64_t reserved_54_63:10;
2360aa32a955SDavid Daney 		uint64_t repair5:18;
2361aa32a955SDavid Daney 		uint64_t repair4:18;
2362aa32a955SDavid Daney 		uint64_t repair3:18;
2363c5aa59e8SDavid Daney #else
2364c5aa59e8SDavid Daney 		uint64_t repair3:18;
2365c5aa59e8SDavid Daney 		uint64_t repair4:18;
2366c5aa59e8SDavid Daney 		uint64_t repair5:18;
2367c5aa59e8SDavid Daney 		uint64_t reserved_54_63:10;
2368c5aa59e8SDavid Daney #endif
2369aa32a955SDavid Daney 	} s;
2370aa32a955SDavid Daney };
2371aa32a955SDavid Daney 
2372aa32a955SDavid Daney union cvmx_mio_fus_repair_res2 {
2373aa32a955SDavid Daney 	uint64_t u64;
2374aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res2_s {
2375c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2376aa32a955SDavid Daney 		uint64_t reserved_18_63:46;
2377aa32a955SDavid Daney 		uint64_t repair6:18;
2378c5aa59e8SDavid Daney #else
2379c5aa59e8SDavid Daney 		uint64_t repair6:18;
2380c5aa59e8SDavid Daney 		uint64_t reserved_18_63:46;
2381c5aa59e8SDavid Daney #endif
2382aa32a955SDavid Daney 	} s;
238354293ec3SDavid Daney };
238454293ec3SDavid Daney 
238554293ec3SDavid Daney union cvmx_mio_fus_spr_repair_res {
238654293ec3SDavid Daney 	uint64_t u64;
238754293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s {
2388c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
238954293ec3SDavid Daney 		uint64_t reserved_42_63:22;
239054293ec3SDavid Daney 		uint64_t repair2:14;
239154293ec3SDavid Daney 		uint64_t repair1:14;
239254293ec3SDavid Daney 		uint64_t repair0:14;
2393c5aa59e8SDavid Daney #else
2394c5aa59e8SDavid Daney 		uint64_t repair0:14;
2395c5aa59e8SDavid Daney 		uint64_t repair1:14;
2396c5aa59e8SDavid Daney 		uint64_t repair2:14;
2397c5aa59e8SDavid Daney 		uint64_t reserved_42_63:22;
2398c5aa59e8SDavid Daney #endif
239954293ec3SDavid Daney 	} s;
240054293ec3SDavid Daney };
240154293ec3SDavid Daney 
240254293ec3SDavid Daney union cvmx_mio_fus_spr_repair_sum {
240354293ec3SDavid Daney 	uint64_t u64;
240454293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s {
2405c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
240654293ec3SDavid Daney 		uint64_t reserved_1_63:63;
240754293ec3SDavid Daney 		uint64_t too_many:1;
2408c5aa59e8SDavid Daney #else
2409c5aa59e8SDavid Daney 		uint64_t too_many:1;
2410c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
2411c5aa59e8SDavid Daney #endif
241254293ec3SDavid Daney 	} s;
2413751c9f68SDavid Daney };
2414751c9f68SDavid Daney 
2415751c9f68SDavid Daney union cvmx_mio_fus_tgg {
2416751c9f68SDavid Daney 	uint64_t u64;
2417751c9f68SDavid Daney 	struct cvmx_mio_fus_tgg_s {
2418c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2419751c9f68SDavid Daney 		uint64_t val:1;
2420751c9f68SDavid Daney 		uint64_t dat:63;
2421c5aa59e8SDavid Daney #else
2422c5aa59e8SDavid Daney 		uint64_t dat:63;
2423c5aa59e8SDavid Daney 		uint64_t val:1;
2424c5aa59e8SDavid Daney #endif
2425751c9f68SDavid Daney 	} s;
242654293ec3SDavid Daney };
242754293ec3SDavid Daney 
242854293ec3SDavid Daney union cvmx_mio_fus_unlock {
242954293ec3SDavid Daney 	uint64_t u64;
243054293ec3SDavid Daney 	struct cvmx_mio_fus_unlock_s {
2431c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
243254293ec3SDavid Daney 		uint64_t reserved_24_63:40;
243354293ec3SDavid Daney 		uint64_t key:24;
2434c5aa59e8SDavid Daney #else
2435c5aa59e8SDavid Daney 		uint64_t key:24;
2436c5aa59e8SDavid Daney 		uint64_t reserved_24_63:40;
2437c5aa59e8SDavid Daney #endif
243854293ec3SDavid Daney 	} s;
243954293ec3SDavid Daney };
244054293ec3SDavid Daney 
244154293ec3SDavid Daney union cvmx_mio_fus_wadr {
244254293ec3SDavid Daney 	uint64_t u64;
244354293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_s {
2444c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
244554293ec3SDavid Daney 		uint64_t reserved_10_63:54;
244654293ec3SDavid Daney 		uint64_t addr:10;
2447c5aa59e8SDavid Daney #else
2448c5aa59e8SDavid Daney 		uint64_t addr:10;
2449c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
2450c5aa59e8SDavid Daney #endif
245154293ec3SDavid Daney 	} s;
245254293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn50xx {
2453c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
245454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
245554293ec3SDavid Daney 		uint64_t addr:2;
2456c5aa59e8SDavid Daney #else
2457c5aa59e8SDavid Daney 		uint64_t addr:2;
2458c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
2459c5aa59e8SDavid Daney #endif
246054293ec3SDavid Daney 	} cn50xx;
246154293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn52xx {
2462c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
246354293ec3SDavid Daney 		uint64_t reserved_3_63:61;
246454293ec3SDavid Daney 		uint64_t addr:3;
2465c5aa59e8SDavid Daney #else
2466c5aa59e8SDavid Daney 		uint64_t addr:3;
2467c5aa59e8SDavid Daney 		uint64_t reserved_3_63:61;
2468c5aa59e8SDavid Daney #endif
246954293ec3SDavid Daney 	} cn52xx;
2470751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx {
2471c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2472aa32a955SDavid Daney 		uint64_t reserved_4_63:60;
2473aa32a955SDavid Daney 		uint64_t addr:4;
2474c5aa59e8SDavid Daney #else
2475c5aa59e8SDavid Daney 		uint64_t addr:4;
2476c5aa59e8SDavid Daney 		uint64_t reserved_4_63:60;
2477c5aa59e8SDavid Daney #endif
2478751c9f68SDavid Daney 	} cn61xx;
2479aa32a955SDavid Daney };
2480aa32a955SDavid Daney 
2481aa32a955SDavid Daney union cvmx_mio_gpio_comp {
2482aa32a955SDavid Daney 	uint64_t u64;
2483aa32a955SDavid Daney 	struct cvmx_mio_gpio_comp_s {
2484c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2485aa32a955SDavid Daney 		uint64_t reserved_12_63:52;
2486aa32a955SDavid Daney 		uint64_t pctl:6;
2487aa32a955SDavid Daney 		uint64_t nctl:6;
2488c5aa59e8SDavid Daney #else
2489c5aa59e8SDavid Daney 		uint64_t nctl:6;
2490c5aa59e8SDavid Daney 		uint64_t pctl:6;
2491c5aa59e8SDavid Daney 		uint64_t reserved_12_63:52;
2492c5aa59e8SDavid Daney #endif
2493aa32a955SDavid Daney 	} s;
249454293ec3SDavid Daney };
249554293ec3SDavid Daney 
249654293ec3SDavid Daney union cvmx_mio_ndf_dma_cfg {
249754293ec3SDavid Daney 	uint64_t u64;
249854293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s {
2499c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
250054293ec3SDavid Daney 		uint64_t en:1;
250154293ec3SDavid Daney 		uint64_t rw:1;
250254293ec3SDavid Daney 		uint64_t clr:1;
250354293ec3SDavid Daney 		uint64_t reserved_60_60:1;
250454293ec3SDavid Daney 		uint64_t swap32:1;
250554293ec3SDavid Daney 		uint64_t swap16:1;
250654293ec3SDavid Daney 		uint64_t swap8:1;
250754293ec3SDavid Daney 		uint64_t endian:1;
250854293ec3SDavid Daney 		uint64_t size:20;
250954293ec3SDavid Daney 		uint64_t adr:36;
2510c5aa59e8SDavid Daney #else
2511c5aa59e8SDavid Daney 		uint64_t adr:36;
2512c5aa59e8SDavid Daney 		uint64_t size:20;
2513c5aa59e8SDavid Daney 		uint64_t endian:1;
2514c5aa59e8SDavid Daney 		uint64_t swap8:1;
2515c5aa59e8SDavid Daney 		uint64_t swap16:1;
2516c5aa59e8SDavid Daney 		uint64_t swap32:1;
2517c5aa59e8SDavid Daney 		uint64_t reserved_60_60:1;
2518c5aa59e8SDavid Daney 		uint64_t clr:1;
2519c5aa59e8SDavid Daney 		uint64_t rw:1;
2520c5aa59e8SDavid Daney 		uint64_t en:1;
2521c5aa59e8SDavid Daney #endif
252254293ec3SDavid Daney 	} s;
252354293ec3SDavid Daney };
252454293ec3SDavid Daney 
252554293ec3SDavid Daney union cvmx_mio_ndf_dma_int {
252654293ec3SDavid Daney 	uint64_t u64;
252754293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_int_s {
2528c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
252954293ec3SDavid Daney 		uint64_t reserved_1_63:63;
253054293ec3SDavid Daney 		uint64_t done:1;
2531c5aa59e8SDavid Daney #else
2532c5aa59e8SDavid Daney 		uint64_t done:1;
2533c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
2534c5aa59e8SDavid Daney #endif
253554293ec3SDavid Daney 	} s;
253654293ec3SDavid Daney };
253754293ec3SDavid Daney 
253854293ec3SDavid Daney union cvmx_mio_ndf_dma_int_en {
253954293ec3SDavid Daney 	uint64_t u64;
254054293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s {
2541c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
254254293ec3SDavid Daney 		uint64_t reserved_1_63:63;
254354293ec3SDavid Daney 		uint64_t done:1;
2544c5aa59e8SDavid Daney #else
2545c5aa59e8SDavid Daney 		uint64_t done:1;
2546c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
2547c5aa59e8SDavid Daney #endif
254854293ec3SDavid Daney 	} s;
254954293ec3SDavid Daney };
255054293ec3SDavid Daney 
255154293ec3SDavid Daney union cvmx_mio_pll_ctl {
255254293ec3SDavid Daney 	uint64_t u64;
255354293ec3SDavid Daney 	struct cvmx_mio_pll_ctl_s {
2554c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
255554293ec3SDavid Daney 		uint64_t reserved_5_63:59;
255654293ec3SDavid Daney 		uint64_t bw_ctl:5;
2557c5aa59e8SDavid Daney #else
2558c5aa59e8SDavid Daney 		uint64_t bw_ctl:5;
2559c5aa59e8SDavid Daney 		uint64_t reserved_5_63:59;
2560c5aa59e8SDavid Daney #endif
256154293ec3SDavid Daney 	} s;
256254293ec3SDavid Daney };
256354293ec3SDavid Daney 
256454293ec3SDavid Daney union cvmx_mio_pll_setting {
256554293ec3SDavid Daney 	uint64_t u64;
256654293ec3SDavid Daney 	struct cvmx_mio_pll_setting_s {
2567c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
256854293ec3SDavid Daney 		uint64_t reserved_17_63:47;
256954293ec3SDavid Daney 		uint64_t setting:17;
2570c5aa59e8SDavid Daney #else
2571c5aa59e8SDavid Daney 		uint64_t setting:17;
2572c5aa59e8SDavid Daney 		uint64_t reserved_17_63:47;
2573c5aa59e8SDavid Daney #endif
257454293ec3SDavid Daney 	} s;
257554293ec3SDavid Daney };
257654293ec3SDavid Daney 
2577751c9f68SDavid Daney union cvmx_mio_ptp_ckout_hi_incr {
2578751c9f68SDavid Daney 	uint64_t u64;
2579751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_hi_incr_s {
2580c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2581751c9f68SDavid Daney 		uint64_t nanosec:32;
2582751c9f68SDavid Daney 		uint64_t frnanosec:32;
2583c5aa59e8SDavid Daney #else
2584c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2585c5aa59e8SDavid Daney 		uint64_t nanosec:32;
2586c5aa59e8SDavid Daney #endif
2587751c9f68SDavid Daney 	} s;
2588751c9f68SDavid Daney };
2589751c9f68SDavid Daney 
2590751c9f68SDavid Daney union cvmx_mio_ptp_ckout_lo_incr {
2591751c9f68SDavid Daney 	uint64_t u64;
2592751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_lo_incr_s {
2593c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2594751c9f68SDavid Daney 		uint64_t nanosec:32;
2595751c9f68SDavid Daney 		uint64_t frnanosec:32;
2596c5aa59e8SDavid Daney #else
2597c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2598c5aa59e8SDavid Daney 		uint64_t nanosec:32;
2599c5aa59e8SDavid Daney #endif
2600751c9f68SDavid Daney 	} s;
2601751c9f68SDavid Daney };
2602751c9f68SDavid Daney 
2603751c9f68SDavid Daney union cvmx_mio_ptp_ckout_thresh_hi {
2604751c9f68SDavid Daney 	uint64_t u64;
2605751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_hi_s {
2606c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2607751c9f68SDavid Daney 		uint64_t nanosec:64;
2608c5aa59e8SDavid Daney #else
2609c5aa59e8SDavid Daney 		uint64_t nanosec:64;
2610c5aa59e8SDavid Daney #endif
2611751c9f68SDavid Daney 	} s;
2612751c9f68SDavid Daney };
2613751c9f68SDavid Daney 
2614751c9f68SDavid Daney union cvmx_mio_ptp_ckout_thresh_lo {
2615751c9f68SDavid Daney 	uint64_t u64;
2616751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_lo_s {
2617c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2618751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
2619751c9f68SDavid Daney 		uint64_t frnanosec:32;
2620c5aa59e8SDavid Daney #else
2621c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2622c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
2623c5aa59e8SDavid Daney #endif
2624751c9f68SDavid Daney 	} s;
2625751c9f68SDavid Daney };
2626751c9f68SDavid Daney 
2627aa32a955SDavid Daney union cvmx_mio_ptp_clock_cfg {
2628aa32a955SDavid Daney 	uint64_t u64;
2629aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_s {
2630c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2631751c9f68SDavid Daney 		uint64_t reserved_42_63:22;
2632751c9f68SDavid Daney 		uint64_t pps:1;
2633751c9f68SDavid Daney 		uint64_t ckout:1;
2634751c9f68SDavid Daney 		uint64_t ext_clk_edge:2;
2635751c9f68SDavid Daney 		uint64_t ckout_out4:1;
2636751c9f68SDavid Daney 		uint64_t pps_out:5;
2637751c9f68SDavid Daney 		uint64_t pps_inv:1;
2638751c9f68SDavid Daney 		uint64_t pps_en:1;
2639751c9f68SDavid Daney 		uint64_t ckout_out:4;
2640751c9f68SDavid Daney 		uint64_t ckout_inv:1;
2641751c9f68SDavid Daney 		uint64_t ckout_en:1;
2642aa32a955SDavid Daney 		uint64_t evcnt_in:6;
2643aa32a955SDavid Daney 		uint64_t evcnt_edge:1;
2644aa32a955SDavid Daney 		uint64_t evcnt_en:1;
2645aa32a955SDavid Daney 		uint64_t tstmp_in:6;
2646aa32a955SDavid Daney 		uint64_t tstmp_edge:1;
2647aa32a955SDavid Daney 		uint64_t tstmp_en:1;
2648aa32a955SDavid Daney 		uint64_t ext_clk_in:6;
2649aa32a955SDavid Daney 		uint64_t ext_clk_en:1;
2650aa32a955SDavid Daney 		uint64_t ptp_en:1;
2651c5aa59e8SDavid Daney #else
2652c5aa59e8SDavid Daney 		uint64_t ptp_en:1;
2653c5aa59e8SDavid Daney 		uint64_t ext_clk_en:1;
2654c5aa59e8SDavid Daney 		uint64_t ext_clk_in:6;
2655c5aa59e8SDavid Daney 		uint64_t tstmp_en:1;
2656c5aa59e8SDavid Daney 		uint64_t tstmp_edge:1;
2657c5aa59e8SDavid Daney 		uint64_t tstmp_in:6;
2658c5aa59e8SDavid Daney 		uint64_t evcnt_en:1;
2659c5aa59e8SDavid Daney 		uint64_t evcnt_edge:1;
2660c5aa59e8SDavid Daney 		uint64_t evcnt_in:6;
2661c5aa59e8SDavid Daney 		uint64_t ckout_en:1;
2662c5aa59e8SDavid Daney 		uint64_t ckout_inv:1;
2663c5aa59e8SDavid Daney 		uint64_t ckout_out:4;
2664c5aa59e8SDavid Daney 		uint64_t pps_en:1;
2665c5aa59e8SDavid Daney 		uint64_t pps_inv:1;
2666c5aa59e8SDavid Daney 		uint64_t pps_out:5;
2667c5aa59e8SDavid Daney 		uint64_t ckout_out4:1;
2668c5aa59e8SDavid Daney 		uint64_t ext_clk_edge:2;
2669c5aa59e8SDavid Daney 		uint64_t ckout:1;
2670c5aa59e8SDavid Daney 		uint64_t pps:1;
2671c5aa59e8SDavid Daney 		uint64_t reserved_42_63:22;
2672c5aa59e8SDavid Daney #endif
2673aa32a955SDavid Daney 	} s;
2674751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_cn63xx {
2675c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2676751c9f68SDavid Daney 		uint64_t reserved_24_63:40;
2677751c9f68SDavid Daney 		uint64_t evcnt_in:6;
2678751c9f68SDavid Daney 		uint64_t evcnt_edge:1;
2679751c9f68SDavid Daney 		uint64_t evcnt_en:1;
2680751c9f68SDavid Daney 		uint64_t tstmp_in:6;
2681751c9f68SDavid Daney 		uint64_t tstmp_edge:1;
2682751c9f68SDavid Daney 		uint64_t tstmp_en:1;
2683751c9f68SDavid Daney 		uint64_t ext_clk_in:6;
2684751c9f68SDavid Daney 		uint64_t ext_clk_en:1;
2685751c9f68SDavid Daney 		uint64_t ptp_en:1;
2686c5aa59e8SDavid Daney #else
2687c5aa59e8SDavid Daney 		uint64_t ptp_en:1;
2688c5aa59e8SDavid Daney 		uint64_t ext_clk_en:1;
2689c5aa59e8SDavid Daney 		uint64_t ext_clk_in:6;
2690c5aa59e8SDavid Daney 		uint64_t tstmp_en:1;
2691c5aa59e8SDavid Daney 		uint64_t tstmp_edge:1;
2692c5aa59e8SDavid Daney 		uint64_t tstmp_in:6;
2693c5aa59e8SDavid Daney 		uint64_t evcnt_en:1;
2694c5aa59e8SDavid Daney 		uint64_t evcnt_edge:1;
2695c5aa59e8SDavid Daney 		uint64_t evcnt_in:6;
2696c5aa59e8SDavid Daney 		uint64_t reserved_24_63:40;
2697c5aa59e8SDavid Daney #endif
2698751c9f68SDavid Daney 	} cn63xx;
2699751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_cn66xx {
2700c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2701751c9f68SDavid Daney 		uint64_t reserved_40_63:24;
2702751c9f68SDavid Daney 		uint64_t ext_clk_edge:2;
2703751c9f68SDavid Daney 		uint64_t ckout_out4:1;
2704751c9f68SDavid Daney 		uint64_t pps_out:5;
2705751c9f68SDavid Daney 		uint64_t pps_inv:1;
2706751c9f68SDavid Daney 		uint64_t pps_en:1;
2707751c9f68SDavid Daney 		uint64_t ckout_out:4;
2708751c9f68SDavid Daney 		uint64_t ckout_inv:1;
2709751c9f68SDavid Daney 		uint64_t ckout_en:1;
2710751c9f68SDavid Daney 		uint64_t evcnt_in:6;
2711751c9f68SDavid Daney 		uint64_t evcnt_edge:1;
2712751c9f68SDavid Daney 		uint64_t evcnt_en:1;
2713751c9f68SDavid Daney 		uint64_t tstmp_in:6;
2714751c9f68SDavid Daney 		uint64_t tstmp_edge:1;
2715751c9f68SDavid Daney 		uint64_t tstmp_en:1;
2716751c9f68SDavid Daney 		uint64_t ext_clk_in:6;
2717751c9f68SDavid Daney 		uint64_t ext_clk_en:1;
2718751c9f68SDavid Daney 		uint64_t ptp_en:1;
2719c5aa59e8SDavid Daney #else
2720c5aa59e8SDavid Daney 		uint64_t ptp_en:1;
2721c5aa59e8SDavid Daney 		uint64_t ext_clk_en:1;
2722c5aa59e8SDavid Daney 		uint64_t ext_clk_in:6;
2723c5aa59e8SDavid Daney 		uint64_t tstmp_en:1;
2724c5aa59e8SDavid Daney 		uint64_t tstmp_edge:1;
2725c5aa59e8SDavid Daney 		uint64_t tstmp_in:6;
2726c5aa59e8SDavid Daney 		uint64_t evcnt_en:1;
2727c5aa59e8SDavid Daney 		uint64_t evcnt_edge:1;
2728c5aa59e8SDavid Daney 		uint64_t evcnt_in:6;
2729c5aa59e8SDavid Daney 		uint64_t ckout_en:1;
2730c5aa59e8SDavid Daney 		uint64_t ckout_inv:1;
2731c5aa59e8SDavid Daney 		uint64_t ckout_out:4;
2732c5aa59e8SDavid Daney 		uint64_t pps_en:1;
2733c5aa59e8SDavid Daney 		uint64_t pps_inv:1;
2734c5aa59e8SDavid Daney 		uint64_t pps_out:5;
2735c5aa59e8SDavid Daney 		uint64_t ckout_out4:1;
2736c5aa59e8SDavid Daney 		uint64_t ext_clk_edge:2;
2737c5aa59e8SDavid Daney 		uint64_t reserved_40_63:24;
2738c5aa59e8SDavid Daney #endif
2739751c9f68SDavid Daney 	} cn66xx;
2740aa32a955SDavid Daney };
2741aa32a955SDavid Daney 
2742aa32a955SDavid Daney union cvmx_mio_ptp_clock_comp {
2743aa32a955SDavid Daney 	uint64_t u64;
2744aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s {
2745c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2746aa32a955SDavid Daney 		uint64_t nanosec:32;
2747aa32a955SDavid Daney 		uint64_t frnanosec:32;
2748c5aa59e8SDavid Daney #else
2749c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2750c5aa59e8SDavid Daney 		uint64_t nanosec:32;
2751c5aa59e8SDavid Daney #endif
2752aa32a955SDavid Daney 	} s;
2753aa32a955SDavid Daney };
2754aa32a955SDavid Daney 
2755aa32a955SDavid Daney union cvmx_mio_ptp_clock_hi {
2756aa32a955SDavid Daney 	uint64_t u64;
2757aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s {
2758c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2759aa32a955SDavid Daney 		uint64_t nanosec:64;
2760c5aa59e8SDavid Daney #else
2761c5aa59e8SDavid Daney 		uint64_t nanosec:64;
2762c5aa59e8SDavid Daney #endif
2763aa32a955SDavid Daney 	} s;
2764aa32a955SDavid Daney };
2765aa32a955SDavid Daney 
2766aa32a955SDavid Daney union cvmx_mio_ptp_clock_lo {
2767aa32a955SDavid Daney 	uint64_t u64;
2768aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s {
2769c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2770aa32a955SDavid Daney 		uint64_t reserved_32_63:32;
2771aa32a955SDavid Daney 		uint64_t frnanosec:32;
2772c5aa59e8SDavid Daney #else
2773c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2774c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
2775c5aa59e8SDavid Daney #endif
2776aa32a955SDavid Daney 	} s;
2777aa32a955SDavid Daney };
2778aa32a955SDavid Daney 
2779aa32a955SDavid Daney union cvmx_mio_ptp_evt_cnt {
2780aa32a955SDavid Daney 	uint64_t u64;
2781aa32a955SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s {
2782c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2783aa32a955SDavid Daney 		uint64_t cntr:64;
2784c5aa59e8SDavid Daney #else
2785c5aa59e8SDavid Daney 		uint64_t cntr:64;
2786c5aa59e8SDavid Daney #endif
2787aa32a955SDavid Daney 	} s;
2788c5aa59e8SDavid Daney };
2789c5aa59e8SDavid Daney 
2790c5aa59e8SDavid Daney union cvmx_mio_ptp_phy_1pps_in {
2791c5aa59e8SDavid Daney 	uint64_t u64;
2792c5aa59e8SDavid Daney 	struct cvmx_mio_ptp_phy_1pps_in_s {
2793c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2794c5aa59e8SDavid Daney 		uint64_t reserved_5_63:59;
2795c5aa59e8SDavid Daney 		uint64_t sel:5;
2796c5aa59e8SDavid Daney #else
2797c5aa59e8SDavid Daney 		uint64_t sel:5;
2798c5aa59e8SDavid Daney 		uint64_t reserved_5_63:59;
2799c5aa59e8SDavid Daney #endif
2800c5aa59e8SDavid Daney 	} s;
2801751c9f68SDavid Daney };
2802751c9f68SDavid Daney 
2803751c9f68SDavid Daney union cvmx_mio_ptp_pps_hi_incr {
2804751c9f68SDavid Daney 	uint64_t u64;
2805751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_hi_incr_s {
2806c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2807751c9f68SDavid Daney 		uint64_t nanosec:32;
2808751c9f68SDavid Daney 		uint64_t frnanosec:32;
2809c5aa59e8SDavid Daney #else
2810c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2811c5aa59e8SDavid Daney 		uint64_t nanosec:32;
2812c5aa59e8SDavid Daney #endif
2813751c9f68SDavid Daney 	} s;
2814751c9f68SDavid Daney };
2815751c9f68SDavid Daney 
2816751c9f68SDavid Daney union cvmx_mio_ptp_pps_lo_incr {
2817751c9f68SDavid Daney 	uint64_t u64;
2818751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_lo_incr_s {
2819c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2820751c9f68SDavid Daney 		uint64_t nanosec:32;
2821751c9f68SDavid Daney 		uint64_t frnanosec:32;
2822c5aa59e8SDavid Daney #else
2823c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2824c5aa59e8SDavid Daney 		uint64_t nanosec:32;
2825c5aa59e8SDavid Daney #endif
2826751c9f68SDavid Daney 	} s;
2827751c9f68SDavid Daney };
2828751c9f68SDavid Daney 
2829751c9f68SDavid Daney union cvmx_mio_ptp_pps_thresh_hi {
2830751c9f68SDavid Daney 	uint64_t u64;
2831751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_hi_s {
2832c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2833751c9f68SDavid Daney 		uint64_t nanosec:64;
2834c5aa59e8SDavid Daney #else
2835c5aa59e8SDavid Daney 		uint64_t nanosec:64;
2836c5aa59e8SDavid Daney #endif
2837751c9f68SDavid Daney 	} s;
2838751c9f68SDavid Daney };
2839751c9f68SDavid Daney 
2840751c9f68SDavid Daney union cvmx_mio_ptp_pps_thresh_lo {
2841751c9f68SDavid Daney 	uint64_t u64;
2842751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_lo_s {
2843c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2844751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
2845751c9f68SDavid Daney 		uint64_t frnanosec:32;
2846c5aa59e8SDavid Daney #else
2847c5aa59e8SDavid Daney 		uint64_t frnanosec:32;
2848c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
2849c5aa59e8SDavid Daney #endif
2850751c9f68SDavid Daney 	} s;
2851aa32a955SDavid Daney };
2852aa32a955SDavid Daney 
2853aa32a955SDavid Daney union cvmx_mio_ptp_timestamp {
2854aa32a955SDavid Daney 	uint64_t u64;
2855aa32a955SDavid Daney 	struct cvmx_mio_ptp_timestamp_s {
2856c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2857aa32a955SDavid Daney 		uint64_t nanosec:64;
2858c5aa59e8SDavid Daney #else
2859c5aa59e8SDavid Daney 		uint64_t nanosec:64;
2860c5aa59e8SDavid Daney #endif
2861aa32a955SDavid Daney 	} s;
2862751c9f68SDavid Daney };
2863751c9f68SDavid Daney 
2864751c9f68SDavid Daney union cvmx_mio_qlmx_cfg {
2865751c9f68SDavid Daney 	uint64_t u64;
2866751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_s {
2867c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2868c5aa59e8SDavid Daney 		uint64_t reserved_15_63:49;
2869c5aa59e8SDavid Daney 		uint64_t prtmode:1;
2870c5aa59e8SDavid Daney 		uint64_t reserved_12_13:2;
2871c5aa59e8SDavid Daney 		uint64_t qlm_spd:4;
2872c5aa59e8SDavid Daney 		uint64_t reserved_4_7:4;
2873c5aa59e8SDavid Daney 		uint64_t qlm_cfg:4;
2874c5aa59e8SDavid Daney #else
2875c5aa59e8SDavid Daney 		uint64_t qlm_cfg:4;
2876c5aa59e8SDavid Daney 		uint64_t reserved_4_7:4;
2877c5aa59e8SDavid Daney 		uint64_t qlm_spd:4;
2878c5aa59e8SDavid Daney 		uint64_t reserved_12_13:2;
2879c5aa59e8SDavid Daney 		uint64_t prtmode:1;
2880c5aa59e8SDavid Daney 		uint64_t reserved_15_63:49;
2881c5aa59e8SDavid Daney #endif
2882c5aa59e8SDavid Daney 	} s;
2883c5aa59e8SDavid Daney 	struct cvmx_mio_qlmx_cfg_cn61xx {
2884c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2885c5aa59e8SDavid Daney 		uint64_t reserved_15_63:49;
2886c5aa59e8SDavid Daney 		uint64_t prtmode:1;
2887c5aa59e8SDavid Daney 		uint64_t reserved_12_13:2;
2888c5aa59e8SDavid Daney 		uint64_t qlm_spd:4;
2889c5aa59e8SDavid Daney 		uint64_t reserved_2_7:6;
2890c5aa59e8SDavid Daney 		uint64_t qlm_cfg:2;
2891c5aa59e8SDavid Daney #else
2892c5aa59e8SDavid Daney 		uint64_t qlm_cfg:2;
2893c5aa59e8SDavid Daney 		uint64_t reserved_2_7:6;
2894c5aa59e8SDavid Daney 		uint64_t qlm_spd:4;
2895c5aa59e8SDavid Daney 		uint64_t reserved_12_13:2;
2896c5aa59e8SDavid Daney 		uint64_t prtmode:1;
2897c5aa59e8SDavid Daney 		uint64_t reserved_15_63:49;
2898c5aa59e8SDavid Daney #endif
2899c5aa59e8SDavid Daney 	} cn61xx;
2900c5aa59e8SDavid Daney 	struct cvmx_mio_qlmx_cfg_cn66xx {
2901c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2902751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
2903751c9f68SDavid Daney 		uint64_t qlm_spd:4;
2904751c9f68SDavid Daney 		uint64_t reserved_4_7:4;
2905751c9f68SDavid Daney 		uint64_t qlm_cfg:4;
2906c5aa59e8SDavid Daney #else
2907c5aa59e8SDavid Daney 		uint64_t qlm_cfg:4;
2908c5aa59e8SDavid Daney 		uint64_t reserved_4_7:4;
2909751c9f68SDavid Daney 		uint64_t qlm_spd:4;
2910c5aa59e8SDavid Daney 		uint64_t reserved_12_63:52;
2911c5aa59e8SDavid Daney #endif
2912c5aa59e8SDavid Daney 	} cn66xx;
2913751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_cn68xx {
2914c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2915751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
2916751c9f68SDavid Daney 		uint64_t qlm_spd:4;
2917751c9f68SDavid Daney 		uint64_t reserved_3_7:5;
2918751c9f68SDavid Daney 		uint64_t qlm_cfg:3;
2919c5aa59e8SDavid Daney #else
2920c5aa59e8SDavid Daney 		uint64_t qlm_cfg:3;
2921c5aa59e8SDavid Daney 		uint64_t reserved_3_7:5;
2922c5aa59e8SDavid Daney 		uint64_t qlm_spd:4;
2923c5aa59e8SDavid Daney 		uint64_t reserved_12_63:52;
2924c5aa59e8SDavid Daney #endif
2925751c9f68SDavid Daney 	} cn68xx;
2926aa32a955SDavid Daney };
2927aa32a955SDavid Daney 
2928aa32a955SDavid Daney union cvmx_mio_rst_boot {
2929aa32a955SDavid Daney 	uint64_t u64;
2930aa32a955SDavid Daney 	struct cvmx_mio_rst_boot_s {
2931c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2932751c9f68SDavid Daney 		uint64_t chipkill:1;
2933751c9f68SDavid Daney 		uint64_t jtcsrdis:1;
2934751c9f68SDavid Daney 		uint64_t ejtagdis:1;
2935751c9f68SDavid Daney 		uint64_t romen:1;
2936751c9f68SDavid Daney 		uint64_t ckill_ppdis:1;
2937751c9f68SDavid Daney 		uint64_t jt_tstmode:1;
2938751c9f68SDavid Daney 		uint64_t reserved_50_57:8;
2939751c9f68SDavid Daney 		uint64_t lboot_ext:2;
2940751c9f68SDavid Daney 		uint64_t reserved_44_47:4;
2941751c9f68SDavid Daney 		uint64_t qlm4_spd:4;
2942751c9f68SDavid Daney 		uint64_t qlm3_spd:4;
2943aa32a955SDavid Daney 		uint64_t c_mul:6;
2944aa32a955SDavid Daney 		uint64_t pnr_mul:6;
2945aa32a955SDavid Daney 		uint64_t qlm2_spd:4;
2946aa32a955SDavid Daney 		uint64_t qlm1_spd:4;
2947aa32a955SDavid Daney 		uint64_t qlm0_spd:4;
2948aa32a955SDavid Daney 		uint64_t lboot:10;
2949aa32a955SDavid Daney 		uint64_t rboot:1;
2950aa32a955SDavid Daney 		uint64_t rboot_pin:1;
2951c5aa59e8SDavid Daney #else
2952c5aa59e8SDavid Daney 		uint64_t rboot_pin:1;
2953c5aa59e8SDavid Daney 		uint64_t rboot:1;
2954c5aa59e8SDavid Daney 		uint64_t lboot:10;
2955c5aa59e8SDavid Daney 		uint64_t qlm0_spd:4;
2956c5aa59e8SDavid Daney 		uint64_t qlm1_spd:4;
2957c5aa59e8SDavid Daney 		uint64_t qlm2_spd:4;
2958c5aa59e8SDavid Daney 		uint64_t pnr_mul:6;
2959c5aa59e8SDavid Daney 		uint64_t c_mul:6;
2960c5aa59e8SDavid Daney 		uint64_t qlm3_spd:4;
2961c5aa59e8SDavid Daney 		uint64_t qlm4_spd:4;
2962c5aa59e8SDavid Daney 		uint64_t reserved_44_47:4;
2963c5aa59e8SDavid Daney 		uint64_t lboot_ext:2;
2964c5aa59e8SDavid Daney 		uint64_t reserved_50_57:8;
2965c5aa59e8SDavid Daney 		uint64_t jt_tstmode:1;
2966c5aa59e8SDavid Daney 		uint64_t ckill_ppdis:1;
2967c5aa59e8SDavid Daney 		uint64_t romen:1;
2968c5aa59e8SDavid Daney 		uint64_t ejtagdis:1;
2969c5aa59e8SDavid Daney 		uint64_t jtcsrdis:1;
2970c5aa59e8SDavid Daney 		uint64_t chipkill:1;
2971c5aa59e8SDavid Daney #endif
2972aa32a955SDavid Daney 	} s;
2973751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn61xx {
2974c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
2975751c9f68SDavid Daney 		uint64_t chipkill:1;
2976751c9f68SDavid Daney 		uint64_t jtcsrdis:1;
2977751c9f68SDavid Daney 		uint64_t ejtagdis:1;
2978751c9f68SDavid Daney 		uint64_t romen:1;
2979751c9f68SDavid Daney 		uint64_t ckill_ppdis:1;
2980751c9f68SDavid Daney 		uint64_t jt_tstmode:1;
2981751c9f68SDavid Daney 		uint64_t reserved_50_57:8;
2982751c9f68SDavid Daney 		uint64_t lboot_ext:2;
2983751c9f68SDavid Daney 		uint64_t reserved_36_47:12;
2984751c9f68SDavid Daney 		uint64_t c_mul:6;
2985751c9f68SDavid Daney 		uint64_t pnr_mul:6;
2986751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
2987751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
2988751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
2989751c9f68SDavid Daney 		uint64_t lboot:10;
2990751c9f68SDavid Daney 		uint64_t rboot:1;
2991751c9f68SDavid Daney 		uint64_t rboot_pin:1;
2992c5aa59e8SDavid Daney #else
2993c5aa59e8SDavid Daney 		uint64_t rboot_pin:1;
2994c5aa59e8SDavid Daney 		uint64_t rboot:1;
2995c5aa59e8SDavid Daney 		uint64_t lboot:10;
2996c5aa59e8SDavid Daney 		uint64_t qlm0_spd:4;
2997c5aa59e8SDavid Daney 		uint64_t qlm1_spd:4;
2998c5aa59e8SDavid Daney 		uint64_t qlm2_spd:4;
2999c5aa59e8SDavid Daney 		uint64_t pnr_mul:6;
3000c5aa59e8SDavid Daney 		uint64_t c_mul:6;
3001c5aa59e8SDavid Daney 		uint64_t reserved_36_47:12;
3002c5aa59e8SDavid Daney 		uint64_t lboot_ext:2;
3003c5aa59e8SDavid Daney 		uint64_t reserved_50_57:8;
3004c5aa59e8SDavid Daney 		uint64_t jt_tstmode:1;
3005c5aa59e8SDavid Daney 		uint64_t ckill_ppdis:1;
3006c5aa59e8SDavid Daney 		uint64_t romen:1;
3007c5aa59e8SDavid Daney 		uint64_t ejtagdis:1;
3008c5aa59e8SDavid Daney 		uint64_t jtcsrdis:1;
3009c5aa59e8SDavid Daney 		uint64_t chipkill:1;
3010c5aa59e8SDavid Daney #endif
3011751c9f68SDavid Daney 	} cn61xx;
3012751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn63xx {
3013c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3014751c9f68SDavid Daney 		uint64_t reserved_36_63:28;
3015751c9f68SDavid Daney 		uint64_t c_mul:6;
3016751c9f68SDavid Daney 		uint64_t pnr_mul:6;
3017751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
3018751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
3019751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
3020751c9f68SDavid Daney 		uint64_t lboot:10;
3021751c9f68SDavid Daney 		uint64_t rboot:1;
3022751c9f68SDavid Daney 		uint64_t rboot_pin:1;
3023c5aa59e8SDavid Daney #else
3024c5aa59e8SDavid Daney 		uint64_t rboot_pin:1;
3025c5aa59e8SDavid Daney 		uint64_t rboot:1;
3026c5aa59e8SDavid Daney 		uint64_t lboot:10;
3027c5aa59e8SDavid Daney 		uint64_t qlm0_spd:4;
3028c5aa59e8SDavid Daney 		uint64_t qlm1_spd:4;
3029c5aa59e8SDavid Daney 		uint64_t qlm2_spd:4;
3030c5aa59e8SDavid Daney 		uint64_t pnr_mul:6;
3031c5aa59e8SDavid Daney 		uint64_t c_mul:6;
3032c5aa59e8SDavid Daney 		uint64_t reserved_36_63:28;
3033c5aa59e8SDavid Daney #endif
3034751c9f68SDavid Daney 	} cn63xx;
3035751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn66xx {
3036c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3037751c9f68SDavid Daney 		uint64_t chipkill:1;
3038751c9f68SDavid Daney 		uint64_t jtcsrdis:1;
3039751c9f68SDavid Daney 		uint64_t ejtagdis:1;
3040751c9f68SDavid Daney 		uint64_t romen:1;
3041751c9f68SDavid Daney 		uint64_t ckill_ppdis:1;
3042751c9f68SDavid Daney 		uint64_t reserved_50_58:9;
3043751c9f68SDavid Daney 		uint64_t lboot_ext:2;
3044751c9f68SDavid Daney 		uint64_t reserved_36_47:12;
3045751c9f68SDavid Daney 		uint64_t c_mul:6;
3046751c9f68SDavid Daney 		uint64_t pnr_mul:6;
3047751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
3048751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
3049751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
3050751c9f68SDavid Daney 		uint64_t lboot:10;
3051751c9f68SDavid Daney 		uint64_t rboot:1;
3052751c9f68SDavid Daney 		uint64_t rboot_pin:1;
3053c5aa59e8SDavid Daney #else
3054c5aa59e8SDavid Daney 		uint64_t rboot_pin:1;
3055c5aa59e8SDavid Daney 		uint64_t rboot:1;
3056c5aa59e8SDavid Daney 		uint64_t lboot:10;
3057c5aa59e8SDavid Daney 		uint64_t qlm0_spd:4;
3058c5aa59e8SDavid Daney 		uint64_t qlm1_spd:4;
3059c5aa59e8SDavid Daney 		uint64_t qlm2_spd:4;
3060c5aa59e8SDavid Daney 		uint64_t pnr_mul:6;
3061c5aa59e8SDavid Daney 		uint64_t c_mul:6;
3062c5aa59e8SDavid Daney 		uint64_t reserved_36_47:12;
3063c5aa59e8SDavid Daney 		uint64_t lboot_ext:2;
3064c5aa59e8SDavid Daney 		uint64_t reserved_50_58:9;
3065c5aa59e8SDavid Daney 		uint64_t ckill_ppdis:1;
3066c5aa59e8SDavid Daney 		uint64_t romen:1;
3067c5aa59e8SDavid Daney 		uint64_t ejtagdis:1;
3068c5aa59e8SDavid Daney 		uint64_t jtcsrdis:1;
3069c5aa59e8SDavid Daney 		uint64_t chipkill:1;
3070c5aa59e8SDavid Daney #endif
3071751c9f68SDavid Daney 	} cn66xx;
3072751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn68xx {
3073c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3074751c9f68SDavid Daney 		uint64_t reserved_59_63:5;
3075751c9f68SDavid Daney 		uint64_t jt_tstmode:1;
3076751c9f68SDavid Daney 		uint64_t reserved_44_57:14;
3077751c9f68SDavid Daney 		uint64_t qlm4_spd:4;
3078751c9f68SDavid Daney 		uint64_t qlm3_spd:4;
3079751c9f68SDavid Daney 		uint64_t c_mul:6;
3080751c9f68SDavid Daney 		uint64_t pnr_mul:6;
3081751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
3082751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
3083751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
3084751c9f68SDavid Daney 		uint64_t lboot:10;
3085751c9f68SDavid Daney 		uint64_t rboot:1;
3086751c9f68SDavid Daney 		uint64_t rboot_pin:1;
3087c5aa59e8SDavid Daney #else
3088c5aa59e8SDavid Daney 		uint64_t rboot_pin:1;
3089c5aa59e8SDavid Daney 		uint64_t rboot:1;
3090c5aa59e8SDavid Daney 		uint64_t lboot:10;
3091c5aa59e8SDavid Daney 		uint64_t qlm0_spd:4;
3092c5aa59e8SDavid Daney 		uint64_t qlm1_spd:4;
3093c5aa59e8SDavid Daney 		uint64_t qlm2_spd:4;
3094c5aa59e8SDavid Daney 		uint64_t pnr_mul:6;
3095c5aa59e8SDavid Daney 		uint64_t c_mul:6;
3096c5aa59e8SDavid Daney 		uint64_t qlm3_spd:4;
3097c5aa59e8SDavid Daney 		uint64_t qlm4_spd:4;
3098c5aa59e8SDavid Daney 		uint64_t reserved_44_57:14;
3099c5aa59e8SDavid Daney 		uint64_t jt_tstmode:1;
3100c5aa59e8SDavid Daney 		uint64_t reserved_59_63:5;
3101c5aa59e8SDavid Daney #endif
3102751c9f68SDavid Daney 	} cn68xx;
3103751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn68xxp1 {
3104c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3105751c9f68SDavid Daney 		uint64_t reserved_44_63:20;
3106751c9f68SDavid Daney 		uint64_t qlm4_spd:4;
3107751c9f68SDavid Daney 		uint64_t qlm3_spd:4;
3108751c9f68SDavid Daney 		uint64_t c_mul:6;
3109751c9f68SDavid Daney 		uint64_t pnr_mul:6;
3110751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
3111751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
3112751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
3113751c9f68SDavid Daney 		uint64_t lboot:10;
3114751c9f68SDavid Daney 		uint64_t rboot:1;
3115751c9f68SDavid Daney 		uint64_t rboot_pin:1;
3116c5aa59e8SDavid Daney #else
3117c5aa59e8SDavid Daney 		uint64_t rboot_pin:1;
3118c5aa59e8SDavid Daney 		uint64_t rboot:1;
3119c5aa59e8SDavid Daney 		uint64_t lboot:10;
3120c5aa59e8SDavid Daney 		uint64_t qlm0_spd:4;
3121c5aa59e8SDavid Daney 		uint64_t qlm1_spd:4;
3122c5aa59e8SDavid Daney 		uint64_t qlm2_spd:4;
3123c5aa59e8SDavid Daney 		uint64_t pnr_mul:6;
3124c5aa59e8SDavid Daney 		uint64_t c_mul:6;
3125c5aa59e8SDavid Daney 		uint64_t qlm3_spd:4;
3126c5aa59e8SDavid Daney 		uint64_t qlm4_spd:4;
3127c5aa59e8SDavid Daney 		uint64_t reserved_44_63:20;
3128c5aa59e8SDavid Daney #endif
3129751c9f68SDavid Daney 	} cn68xxp1;
3130aa32a955SDavid Daney };
3131aa32a955SDavid Daney 
3132aa32a955SDavid Daney union cvmx_mio_rst_cfg {
3133aa32a955SDavid Daney 	uint64_t u64;
3134aa32a955SDavid Daney 	struct cvmx_mio_rst_cfg_s {
3135c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3136751c9f68SDavid Daney 		uint64_t reserved_3_63:61;
3137751c9f68SDavid Daney 		uint64_t cntl_clr_bist:1;
3138751c9f68SDavid Daney 		uint64_t warm_clr_bist:1;
3139751c9f68SDavid Daney 		uint64_t soft_clr_bist:1;
3140c5aa59e8SDavid Daney #else
3141c5aa59e8SDavid Daney 		uint64_t soft_clr_bist:1;
3142c5aa59e8SDavid Daney 		uint64_t warm_clr_bist:1;
3143c5aa59e8SDavid Daney 		uint64_t cntl_clr_bist:1;
3144c5aa59e8SDavid Daney 		uint64_t reserved_3_63:61;
3145c5aa59e8SDavid Daney #endif
3146751c9f68SDavid Daney 	} s;
3147751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn61xx {
3148c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3149aa32a955SDavid Daney 		uint64_t bist_delay:58;
3150aa32a955SDavid Daney 		uint64_t reserved_3_5:3;
3151aa32a955SDavid Daney 		uint64_t cntl_clr_bist:1;
3152aa32a955SDavid Daney 		uint64_t warm_clr_bist:1;
3153aa32a955SDavid Daney 		uint64_t soft_clr_bist:1;
3154c5aa59e8SDavid Daney #else
3155c5aa59e8SDavid Daney 		uint64_t soft_clr_bist:1;
3156c5aa59e8SDavid Daney 		uint64_t warm_clr_bist:1;
3157c5aa59e8SDavid Daney 		uint64_t cntl_clr_bist:1;
3158c5aa59e8SDavid Daney 		uint64_t reserved_3_5:3;
3159c5aa59e8SDavid Daney 		uint64_t bist_delay:58;
3160c5aa59e8SDavid Daney #endif
3161751c9f68SDavid Daney 	} cn61xx;
3162aa32a955SDavid Daney 	struct cvmx_mio_rst_cfg_cn63xxp1 {
3163c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3164aa32a955SDavid Daney 		uint64_t bist_delay:58;
3165aa32a955SDavid Daney 		uint64_t reserved_2_5:4;
3166aa32a955SDavid Daney 		uint64_t warm_clr_bist:1;
3167aa32a955SDavid Daney 		uint64_t soft_clr_bist:1;
3168c5aa59e8SDavid Daney #else
3169c5aa59e8SDavid Daney 		uint64_t soft_clr_bist:1;
3170c5aa59e8SDavid Daney 		uint64_t warm_clr_bist:1;
3171c5aa59e8SDavid Daney 		uint64_t reserved_2_5:4;
3172c5aa59e8SDavid Daney 		uint64_t bist_delay:58;
3173c5aa59e8SDavid Daney #endif
3174aa32a955SDavid Daney 	} cn63xxp1;
3175751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn68xx {
3176c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3177751c9f68SDavid Daney 		uint64_t bist_delay:56;
3178751c9f68SDavid Daney 		uint64_t reserved_3_7:5;
3179751c9f68SDavid Daney 		uint64_t cntl_clr_bist:1;
3180751c9f68SDavid Daney 		uint64_t warm_clr_bist:1;
3181751c9f68SDavid Daney 		uint64_t soft_clr_bist:1;
3182c5aa59e8SDavid Daney #else
3183c5aa59e8SDavid Daney 		uint64_t soft_clr_bist:1;
3184c5aa59e8SDavid Daney 		uint64_t warm_clr_bist:1;
3185c5aa59e8SDavid Daney 		uint64_t cntl_clr_bist:1;
3186c5aa59e8SDavid Daney 		uint64_t reserved_3_7:5;
3187c5aa59e8SDavid Daney 		uint64_t bist_delay:56;
3188c5aa59e8SDavid Daney #endif
3189751c9f68SDavid Daney 	} cn68xx;
3190aa32a955SDavid Daney };
3191aa32a955SDavid Daney 
3192751c9f68SDavid Daney union cvmx_mio_rst_ckill {
3193aa32a955SDavid Daney 	uint64_t u64;
3194751c9f68SDavid Daney 	struct cvmx_mio_rst_ckill_s {
3195c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3196751c9f68SDavid Daney 		uint64_t reserved_47_63:17;
3197751c9f68SDavid Daney 		uint64_t timer:47;
3198c5aa59e8SDavid Daney #else
3199c5aa59e8SDavid Daney 		uint64_t timer:47;
3200c5aa59e8SDavid Daney 		uint64_t reserved_47_63:17;
3201c5aa59e8SDavid Daney #endif
3202751c9f68SDavid Daney 	} s;
3203751c9f68SDavid Daney };
3204751c9f68SDavid Daney 
3205751c9f68SDavid Daney union cvmx_mio_rst_cntlx {
3206751c9f68SDavid Daney 	uint64_t u64;
3207751c9f68SDavid Daney 	struct cvmx_mio_rst_cntlx_s {
3208c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3209751c9f68SDavid Daney 		uint64_t reserved_13_63:51;
3210751c9f68SDavid Daney 		uint64_t in_rev_ln:1;
3211751c9f68SDavid Daney 		uint64_t rev_lanes:1;
3212751c9f68SDavid Daney 		uint64_t gen1_only:1;
3213aa32a955SDavid Daney 		uint64_t prst_link:1;
3214aa32a955SDavid Daney 		uint64_t rst_done:1;
3215aa32a955SDavid Daney 		uint64_t rst_link:1;
3216aa32a955SDavid Daney 		uint64_t host_mode:1;
3217aa32a955SDavid Daney 		uint64_t prtmode:2;
3218aa32a955SDavid Daney 		uint64_t rst_drv:1;
3219aa32a955SDavid Daney 		uint64_t rst_rcv:1;
3220aa32a955SDavid Daney 		uint64_t rst_chip:1;
3221aa32a955SDavid Daney 		uint64_t rst_val:1;
3222c5aa59e8SDavid Daney #else
3223c5aa59e8SDavid Daney 		uint64_t rst_val:1;
3224c5aa59e8SDavid Daney 		uint64_t rst_chip:1;
3225c5aa59e8SDavid Daney 		uint64_t rst_rcv:1;
3226c5aa59e8SDavid Daney 		uint64_t rst_drv:1;
3227c5aa59e8SDavid Daney 		uint64_t prtmode:2;
3228c5aa59e8SDavid Daney 		uint64_t host_mode:1;
3229c5aa59e8SDavid Daney 		uint64_t rst_link:1;
3230c5aa59e8SDavid Daney 		uint64_t rst_done:1;
3231c5aa59e8SDavid Daney 		uint64_t prst_link:1;
3232c5aa59e8SDavid Daney 		uint64_t gen1_only:1;
3233c5aa59e8SDavid Daney 		uint64_t rev_lanes:1;
3234c5aa59e8SDavid Daney 		uint64_t in_rev_ln:1;
3235c5aa59e8SDavid Daney 		uint64_t reserved_13_63:51;
3236c5aa59e8SDavid Daney #endif
3237aa32a955SDavid Daney 	} s;
3238751c9f68SDavid Daney 	struct cvmx_mio_rst_cntlx_cn66xx {
3239c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3240751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
3241751c9f68SDavid Daney 		uint64_t prst_link:1;
3242751c9f68SDavid Daney 		uint64_t rst_done:1;
3243751c9f68SDavid Daney 		uint64_t rst_link:1;
3244751c9f68SDavid Daney 		uint64_t host_mode:1;
3245751c9f68SDavid Daney 		uint64_t prtmode:2;
3246751c9f68SDavid Daney 		uint64_t rst_drv:1;
3247751c9f68SDavid Daney 		uint64_t rst_rcv:1;
3248751c9f68SDavid Daney 		uint64_t rst_chip:1;
3249751c9f68SDavid Daney 		uint64_t rst_val:1;
3250c5aa59e8SDavid Daney #else
3251c5aa59e8SDavid Daney 		uint64_t rst_val:1;
3252c5aa59e8SDavid Daney 		uint64_t rst_chip:1;
3253c5aa59e8SDavid Daney 		uint64_t rst_rcv:1;
3254c5aa59e8SDavid Daney 		uint64_t rst_drv:1;
3255c5aa59e8SDavid Daney 		uint64_t prtmode:2;
3256c5aa59e8SDavid Daney 		uint64_t host_mode:1;
3257c5aa59e8SDavid Daney 		uint64_t rst_link:1;
3258c5aa59e8SDavid Daney 		uint64_t rst_done:1;
3259c5aa59e8SDavid Daney 		uint64_t prst_link:1;
3260c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3261c5aa59e8SDavid Daney #endif
3262751c9f68SDavid Daney 	} cn66xx;
3263751c9f68SDavid Daney };
3264751c9f68SDavid Daney 
3265751c9f68SDavid Daney union cvmx_mio_rst_ctlx {
3266751c9f68SDavid Daney 	uint64_t u64;
3267751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_s {
3268c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3269751c9f68SDavid Daney 		uint64_t reserved_13_63:51;
3270751c9f68SDavid Daney 		uint64_t in_rev_ln:1;
3271751c9f68SDavid Daney 		uint64_t rev_lanes:1;
3272751c9f68SDavid Daney 		uint64_t gen1_only:1;
3273751c9f68SDavid Daney 		uint64_t prst_link:1;
3274751c9f68SDavid Daney 		uint64_t rst_done:1;
3275751c9f68SDavid Daney 		uint64_t rst_link:1;
3276751c9f68SDavid Daney 		uint64_t host_mode:1;
3277751c9f68SDavid Daney 		uint64_t prtmode:2;
3278751c9f68SDavid Daney 		uint64_t rst_drv:1;
3279751c9f68SDavid Daney 		uint64_t rst_rcv:1;
3280751c9f68SDavid Daney 		uint64_t rst_chip:1;
3281751c9f68SDavid Daney 		uint64_t rst_val:1;
3282c5aa59e8SDavid Daney #else
3283c5aa59e8SDavid Daney 		uint64_t rst_val:1;
3284c5aa59e8SDavid Daney 		uint64_t rst_chip:1;
3285c5aa59e8SDavid Daney 		uint64_t rst_rcv:1;
3286c5aa59e8SDavid Daney 		uint64_t rst_drv:1;
3287c5aa59e8SDavid Daney 		uint64_t prtmode:2;
3288c5aa59e8SDavid Daney 		uint64_t host_mode:1;
3289c5aa59e8SDavid Daney 		uint64_t rst_link:1;
3290c5aa59e8SDavid Daney 		uint64_t rst_done:1;
3291c5aa59e8SDavid Daney 		uint64_t prst_link:1;
3292c5aa59e8SDavid Daney 		uint64_t gen1_only:1;
3293c5aa59e8SDavid Daney 		uint64_t rev_lanes:1;
3294c5aa59e8SDavid Daney 		uint64_t in_rev_ln:1;
3295c5aa59e8SDavid Daney 		uint64_t reserved_13_63:51;
3296c5aa59e8SDavid Daney #endif
3297751c9f68SDavid Daney 	} s;
3298751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xx {
3299c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3300751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
3301751c9f68SDavid Daney 		uint64_t prst_link:1;
3302751c9f68SDavid Daney 		uint64_t rst_done:1;
3303751c9f68SDavid Daney 		uint64_t rst_link:1;
3304751c9f68SDavid Daney 		uint64_t host_mode:1;
3305751c9f68SDavid Daney 		uint64_t prtmode:2;
3306751c9f68SDavid Daney 		uint64_t rst_drv:1;
3307751c9f68SDavid Daney 		uint64_t rst_rcv:1;
3308751c9f68SDavid Daney 		uint64_t rst_chip:1;
3309751c9f68SDavid Daney 		uint64_t rst_val:1;
3310c5aa59e8SDavid Daney #else
3311c5aa59e8SDavid Daney 		uint64_t rst_val:1;
3312c5aa59e8SDavid Daney 		uint64_t rst_chip:1;
3313c5aa59e8SDavid Daney 		uint64_t rst_rcv:1;
3314c5aa59e8SDavid Daney 		uint64_t rst_drv:1;
3315c5aa59e8SDavid Daney 		uint64_t prtmode:2;
3316c5aa59e8SDavid Daney 		uint64_t host_mode:1;
3317c5aa59e8SDavid Daney 		uint64_t rst_link:1;
3318c5aa59e8SDavid Daney 		uint64_t rst_done:1;
3319c5aa59e8SDavid Daney 		uint64_t prst_link:1;
3320c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3321c5aa59e8SDavid Daney #endif
3322751c9f68SDavid Daney 	} cn63xx;
3323aa32a955SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xxp1 {
3324c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3325aa32a955SDavid Daney 		uint64_t reserved_9_63:55;
3326aa32a955SDavid Daney 		uint64_t rst_done:1;
3327aa32a955SDavid Daney 		uint64_t rst_link:1;
3328aa32a955SDavid Daney 		uint64_t host_mode:1;
3329aa32a955SDavid Daney 		uint64_t prtmode:2;
3330aa32a955SDavid Daney 		uint64_t rst_drv:1;
3331aa32a955SDavid Daney 		uint64_t rst_rcv:1;
3332aa32a955SDavid Daney 		uint64_t rst_chip:1;
3333aa32a955SDavid Daney 		uint64_t rst_val:1;
3334c5aa59e8SDavid Daney #else
3335c5aa59e8SDavid Daney 		uint64_t rst_val:1;
3336c5aa59e8SDavid Daney 		uint64_t rst_chip:1;
3337c5aa59e8SDavid Daney 		uint64_t rst_rcv:1;
3338c5aa59e8SDavid Daney 		uint64_t rst_drv:1;
3339c5aa59e8SDavid Daney 		uint64_t prtmode:2;
3340c5aa59e8SDavid Daney 		uint64_t host_mode:1;
3341c5aa59e8SDavid Daney 		uint64_t rst_link:1;
3342c5aa59e8SDavid Daney 		uint64_t rst_done:1;
3343c5aa59e8SDavid Daney 		uint64_t reserved_9_63:55;
3344c5aa59e8SDavid Daney #endif
3345aa32a955SDavid Daney 	} cn63xxp1;
3346aa32a955SDavid Daney };
3347aa32a955SDavid Daney 
3348aa32a955SDavid Daney union cvmx_mio_rst_delay {
3349aa32a955SDavid Daney 	uint64_t u64;
3350aa32a955SDavid Daney 	struct cvmx_mio_rst_delay_s {
3351c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3352aa32a955SDavid Daney 		uint64_t reserved_32_63:32;
3353aa32a955SDavid Daney 		uint64_t warm_rst_dly:16;
3354751c9f68SDavid Daney 		uint64_t soft_rst_dly:16;
3355c5aa59e8SDavid Daney #else
3356c5aa59e8SDavid Daney 		uint64_t soft_rst_dly:16;
3357c5aa59e8SDavid Daney 		uint64_t warm_rst_dly:16;
3358c5aa59e8SDavid Daney 		uint64_t reserved_32_63:32;
3359c5aa59e8SDavid Daney #endif
3360aa32a955SDavid Daney 	} s;
3361aa32a955SDavid Daney };
3362aa32a955SDavid Daney 
3363aa32a955SDavid Daney union cvmx_mio_rst_int {
3364aa32a955SDavid Daney 	uint64_t u64;
3365aa32a955SDavid Daney 	struct cvmx_mio_rst_int_s {
3366c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3367aa32a955SDavid Daney 		uint64_t reserved_10_63:54;
3368aa32a955SDavid Daney 		uint64_t perst1:1;
3369aa32a955SDavid Daney 		uint64_t perst0:1;
3370751c9f68SDavid Daney 		uint64_t reserved_4_7:4;
3371751c9f68SDavid Daney 		uint64_t rst_link3:1;
3372751c9f68SDavid Daney 		uint64_t rst_link2:1;
3373aa32a955SDavid Daney 		uint64_t rst_link1:1;
3374aa32a955SDavid Daney 		uint64_t rst_link0:1;
3375c5aa59e8SDavid Daney #else
3376c5aa59e8SDavid Daney 		uint64_t rst_link0:1;
3377c5aa59e8SDavid Daney 		uint64_t rst_link1:1;
3378c5aa59e8SDavid Daney 		uint64_t rst_link2:1;
3379c5aa59e8SDavid Daney 		uint64_t rst_link3:1;
3380c5aa59e8SDavid Daney 		uint64_t reserved_4_7:4;
3381c5aa59e8SDavid Daney 		uint64_t perst0:1;
3382c5aa59e8SDavid Daney 		uint64_t perst1:1;
3383c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3384c5aa59e8SDavid Daney #endif
3385aa32a955SDavid Daney 	} s;
3386751c9f68SDavid Daney 	struct cvmx_mio_rst_int_cn61xx {
3387c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3388751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
3389751c9f68SDavid Daney 		uint64_t perst1:1;
3390751c9f68SDavid Daney 		uint64_t perst0:1;
3391751c9f68SDavid Daney 		uint64_t reserved_2_7:6;
3392751c9f68SDavid Daney 		uint64_t rst_link1:1;
3393751c9f68SDavid Daney 		uint64_t rst_link0:1;
3394c5aa59e8SDavid Daney #else
3395c5aa59e8SDavid Daney 		uint64_t rst_link0:1;
3396c5aa59e8SDavid Daney 		uint64_t rst_link1:1;
3397c5aa59e8SDavid Daney 		uint64_t reserved_2_7:6;
3398c5aa59e8SDavid Daney 		uint64_t perst0:1;
3399c5aa59e8SDavid Daney 		uint64_t perst1:1;
3400c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3401c5aa59e8SDavid Daney #endif
3402751c9f68SDavid Daney 	} cn61xx;
3403aa32a955SDavid Daney };
3404aa32a955SDavid Daney 
3405aa32a955SDavid Daney union cvmx_mio_rst_int_en {
3406aa32a955SDavid Daney 	uint64_t u64;
3407aa32a955SDavid Daney 	struct cvmx_mio_rst_int_en_s {
3408c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3409aa32a955SDavid Daney 		uint64_t reserved_10_63:54;
3410aa32a955SDavid Daney 		uint64_t perst1:1;
3411aa32a955SDavid Daney 		uint64_t perst0:1;
3412751c9f68SDavid Daney 		uint64_t reserved_4_7:4;
3413751c9f68SDavid Daney 		uint64_t rst_link3:1;
3414751c9f68SDavid Daney 		uint64_t rst_link2:1;
3415aa32a955SDavid Daney 		uint64_t rst_link1:1;
3416aa32a955SDavid Daney 		uint64_t rst_link0:1;
3417c5aa59e8SDavid Daney #else
3418c5aa59e8SDavid Daney 		uint64_t rst_link0:1;
3419c5aa59e8SDavid Daney 		uint64_t rst_link1:1;
3420c5aa59e8SDavid Daney 		uint64_t rst_link2:1;
3421c5aa59e8SDavid Daney 		uint64_t rst_link3:1;
3422c5aa59e8SDavid Daney 		uint64_t reserved_4_7:4;
3423c5aa59e8SDavid Daney 		uint64_t perst0:1;
3424c5aa59e8SDavid Daney 		uint64_t perst1:1;
3425c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3426c5aa59e8SDavid Daney #endif
3427aa32a955SDavid Daney 	} s;
3428751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_cn61xx {
3429c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
3430751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
3431751c9f68SDavid Daney 		uint64_t perst1:1;
3432751c9f68SDavid Daney 		uint64_t perst0:1;
3433751c9f68SDavid Daney 		uint64_t reserved_2_7:6;
3434751c9f68SDavid Daney 		uint64_t rst_link1:1;
3435751c9f68SDavid Daney 		uint64_t rst_link0:1;
3436c5aa59e8SDavid Daney #else
3437c5aa59e8SDavid Daney 		uint64_t rst_link0:1;
3438c5aa59e8SDavid Daney 		uint64_t rst_link1:1;
3439c5aa59e8SDavid Daney 		uint64_t reserved_2_7:6;
3440c5aa59e8SDavid Daney 		uint64_t perst0:1;
3441c5aa59e8SDavid Daney 		uint64_t perst1:1;
3442c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3443c5aa59e8SDavid Daney #endif
3444751c9f68SDavid Daney 	} cn61xx;
3445aa32a955SDavid Daney };
3446aa32a955SDavid Daney 
344754293ec3SDavid Daney union cvmx_mio_twsx_int {
344854293ec3SDavid Daney 	uint64_t u64;
344954293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s {
3450c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
345154293ec3SDavid Daney 		uint64_t reserved_12_63:52;
345254293ec3SDavid Daney 		uint64_t scl:1;
345354293ec3SDavid Daney 		uint64_t sda:1;
345454293ec3SDavid Daney 		uint64_t scl_ovr:1;
345554293ec3SDavid Daney 		uint64_t sda_ovr:1;
345654293ec3SDavid Daney 		uint64_t reserved_7_7:1;
345754293ec3SDavid Daney 		uint64_t core_en:1;
345854293ec3SDavid Daney 		uint64_t ts_en:1;
345954293ec3SDavid Daney 		uint64_t st_en:1;
346054293ec3SDavid Daney 		uint64_t reserved_3_3:1;
346154293ec3SDavid Daney 		uint64_t core_int:1;
346254293ec3SDavid Daney 		uint64_t ts_int:1;
346354293ec3SDavid Daney 		uint64_t st_int:1;
3464c5aa59e8SDavid Daney #else
3465c5aa59e8SDavid Daney 		uint64_t st_int:1;
3466c5aa59e8SDavid Daney 		uint64_t ts_int:1;
3467c5aa59e8SDavid Daney 		uint64_t core_int:1;
3468c5aa59e8SDavid Daney 		uint64_t reserved_3_3:1;
3469c5aa59e8SDavid Daney 		uint64_t st_en:1;
3470c5aa59e8SDavid Daney 		uint64_t ts_en:1;
3471c5aa59e8SDavid Daney 		uint64_t core_en:1;
3472c5aa59e8SDavid Daney 		uint64_t reserved_7_7:1;
3473c5aa59e8SDavid Daney 		uint64_t sda_ovr:1;
3474c5aa59e8SDavid Daney 		uint64_t scl_ovr:1;
3475c5aa59e8SDavid Daney 		uint64_t sda:1;
3476c5aa59e8SDavid Daney 		uint64_t scl:1;
3477c5aa59e8SDavid Daney 		uint64_t reserved_12_63:52;
3478c5aa59e8SDavid Daney #endif
347954293ec3SDavid Daney 	} s;
348054293ec3SDavid Daney 	struct cvmx_mio_twsx_int_cn38xxp2 {
3481c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
348254293ec3SDavid Daney 		uint64_t reserved_7_63:57;
348354293ec3SDavid Daney 		uint64_t core_en:1;
348454293ec3SDavid Daney 		uint64_t ts_en:1;
348554293ec3SDavid Daney 		uint64_t st_en:1;
348654293ec3SDavid Daney 		uint64_t reserved_3_3:1;
348754293ec3SDavid Daney 		uint64_t core_int:1;
348854293ec3SDavid Daney 		uint64_t ts_int:1;
348954293ec3SDavid Daney 		uint64_t st_int:1;
3490c5aa59e8SDavid Daney #else
3491c5aa59e8SDavid Daney 		uint64_t st_int:1;
3492c5aa59e8SDavid Daney 		uint64_t ts_int:1;
3493c5aa59e8SDavid Daney 		uint64_t core_int:1;
3494c5aa59e8SDavid Daney 		uint64_t reserved_3_3:1;
3495c5aa59e8SDavid Daney 		uint64_t st_en:1;
3496c5aa59e8SDavid Daney 		uint64_t ts_en:1;
3497c5aa59e8SDavid Daney 		uint64_t core_en:1;
3498c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
3499c5aa59e8SDavid Daney #endif
350054293ec3SDavid Daney 	} cn38xxp2;
350154293ec3SDavid Daney };
350254293ec3SDavid Daney 
350354293ec3SDavid Daney union cvmx_mio_twsx_sw_twsi {
350454293ec3SDavid Daney 	uint64_t u64;
350554293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s {
3506c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
350754293ec3SDavid Daney 		uint64_t v:1;
350854293ec3SDavid Daney 		uint64_t slonly:1;
350954293ec3SDavid Daney 		uint64_t eia:1;
351054293ec3SDavid Daney 		uint64_t op:4;
351154293ec3SDavid Daney 		uint64_t r:1;
351254293ec3SDavid Daney 		uint64_t sovr:1;
351354293ec3SDavid Daney 		uint64_t size:3;
351454293ec3SDavid Daney 		uint64_t scr:2;
351554293ec3SDavid Daney 		uint64_t a:10;
351654293ec3SDavid Daney 		uint64_t ia:5;
351754293ec3SDavid Daney 		uint64_t eop_ia:3;
351854293ec3SDavid Daney 		uint64_t d:32;
3519c5aa59e8SDavid Daney #else
3520c5aa59e8SDavid Daney 		uint64_t d:32;
3521c5aa59e8SDavid Daney 		uint64_t eop_ia:3;
3522c5aa59e8SDavid Daney 		uint64_t ia:5;
3523c5aa59e8SDavid Daney 		uint64_t a:10;
3524c5aa59e8SDavid Daney 		uint64_t scr:2;
3525c5aa59e8SDavid Daney 		uint64_t size:3;
3526c5aa59e8SDavid Daney 		uint64_t sovr:1;
3527c5aa59e8SDavid Daney 		uint64_t r:1;
3528c5aa59e8SDavid Daney 		uint64_t op:4;
3529c5aa59e8SDavid Daney 		uint64_t eia:1;
3530c5aa59e8SDavid Daney 		uint64_t slonly:1;
3531c5aa59e8SDavid Daney 		uint64_t v:1;
3532c5aa59e8SDavid Daney #endif
353354293ec3SDavid Daney 	} s;
353454293ec3SDavid Daney };
353554293ec3SDavid Daney 
353654293ec3SDavid Daney union cvmx_mio_twsx_sw_twsi_ext {
353754293ec3SDavid Daney 	uint64_t u64;
353854293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s {
3539c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
354054293ec3SDavid Daney 		uint64_t reserved_40_63:24;
354154293ec3SDavid Daney 		uint64_t ia:8;
354254293ec3SDavid Daney 		uint64_t d:32;
3543c5aa59e8SDavid Daney #else
3544c5aa59e8SDavid Daney 		uint64_t d:32;
3545c5aa59e8SDavid Daney 		uint64_t ia:8;
3546c5aa59e8SDavid Daney 		uint64_t reserved_40_63:24;
3547c5aa59e8SDavid Daney #endif
354854293ec3SDavid Daney 	} s;
354954293ec3SDavid Daney };
355054293ec3SDavid Daney 
355154293ec3SDavid Daney union cvmx_mio_twsx_twsi_sw {
355254293ec3SDavid Daney 	uint64_t u64;
355354293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s {
3554c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
355554293ec3SDavid Daney 		uint64_t v:2;
355654293ec3SDavid Daney 		uint64_t reserved_32_61:30;
355754293ec3SDavid Daney 		uint64_t d:32;
3558c5aa59e8SDavid Daney #else
3559c5aa59e8SDavid Daney 		uint64_t d:32;
3560c5aa59e8SDavid Daney 		uint64_t reserved_32_61:30;
3561c5aa59e8SDavid Daney 		uint64_t v:2;
3562c5aa59e8SDavid Daney #endif
356354293ec3SDavid Daney 	} s;
356454293ec3SDavid Daney };
356554293ec3SDavid Daney 
356654293ec3SDavid Daney union cvmx_mio_uartx_dlh {
356754293ec3SDavid Daney 	uint64_t u64;
356854293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s {
3569c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
357054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
357154293ec3SDavid Daney 		uint64_t dlh:8;
3572c5aa59e8SDavid Daney #else
3573c5aa59e8SDavid Daney 		uint64_t dlh:8;
3574c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3575c5aa59e8SDavid Daney #endif
357654293ec3SDavid Daney 	} s;
357754293ec3SDavid Daney };
357854293ec3SDavid Daney 
357954293ec3SDavid Daney union cvmx_mio_uartx_dll {
358054293ec3SDavid Daney 	uint64_t u64;
358154293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s {
3582c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
358354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
358454293ec3SDavid Daney 		uint64_t dll:8;
3585c5aa59e8SDavid Daney #else
3586c5aa59e8SDavid Daney 		uint64_t dll:8;
3587c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3588c5aa59e8SDavid Daney #endif
358954293ec3SDavid Daney 	} s;
359054293ec3SDavid Daney };
359154293ec3SDavid Daney 
359254293ec3SDavid Daney union cvmx_mio_uartx_far {
359354293ec3SDavid Daney 	uint64_t u64;
359454293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s {
3595c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
359654293ec3SDavid Daney 		uint64_t reserved_1_63:63;
359754293ec3SDavid Daney 		uint64_t far:1;
3598c5aa59e8SDavid Daney #else
3599c5aa59e8SDavid Daney 		uint64_t far:1;
3600c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
3601c5aa59e8SDavid Daney #endif
360254293ec3SDavid Daney 	} s;
360354293ec3SDavid Daney };
360454293ec3SDavid Daney 
360554293ec3SDavid Daney union cvmx_mio_uartx_fcr {
360654293ec3SDavid Daney 	uint64_t u64;
360754293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s {
3608c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
360954293ec3SDavid Daney 		uint64_t reserved_8_63:56;
361054293ec3SDavid Daney 		uint64_t rxtrig:2;
361154293ec3SDavid Daney 		uint64_t txtrig:2;
361254293ec3SDavid Daney 		uint64_t reserved_3_3:1;
361354293ec3SDavid Daney 		uint64_t txfr:1;
361454293ec3SDavid Daney 		uint64_t rxfr:1;
361554293ec3SDavid Daney 		uint64_t en:1;
3616c5aa59e8SDavid Daney #else
3617c5aa59e8SDavid Daney 		uint64_t en:1;
3618c5aa59e8SDavid Daney 		uint64_t rxfr:1;
3619c5aa59e8SDavid Daney 		uint64_t txfr:1;
3620c5aa59e8SDavid Daney 		uint64_t reserved_3_3:1;
3621c5aa59e8SDavid Daney 		uint64_t txtrig:2;
3622c5aa59e8SDavid Daney 		uint64_t rxtrig:2;
3623c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3624c5aa59e8SDavid Daney #endif
362554293ec3SDavid Daney 	} s;
362654293ec3SDavid Daney };
362754293ec3SDavid Daney 
362854293ec3SDavid Daney union cvmx_mio_uartx_htx {
362954293ec3SDavid Daney 	uint64_t u64;
363054293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s {
3631c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
363254293ec3SDavid Daney 		uint64_t reserved_1_63:63;
363354293ec3SDavid Daney 		uint64_t htx:1;
3634c5aa59e8SDavid Daney #else
3635c5aa59e8SDavid Daney 		uint64_t htx:1;
3636c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
3637c5aa59e8SDavid Daney #endif
363854293ec3SDavid Daney 	} s;
363954293ec3SDavid Daney };
364054293ec3SDavid Daney 
364154293ec3SDavid Daney union cvmx_mio_uartx_ier {
364254293ec3SDavid Daney 	uint64_t u64;
364354293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s {
3644c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
364554293ec3SDavid Daney 		uint64_t reserved_8_63:56;
364654293ec3SDavid Daney 		uint64_t ptime:1;
364754293ec3SDavid Daney 		uint64_t reserved_4_6:3;
364854293ec3SDavid Daney 		uint64_t edssi:1;
364954293ec3SDavid Daney 		uint64_t elsi:1;
365054293ec3SDavid Daney 		uint64_t etbei:1;
365154293ec3SDavid Daney 		uint64_t erbfi:1;
3652c5aa59e8SDavid Daney #else
3653c5aa59e8SDavid Daney 		uint64_t erbfi:1;
3654c5aa59e8SDavid Daney 		uint64_t etbei:1;
3655c5aa59e8SDavid Daney 		uint64_t elsi:1;
3656c5aa59e8SDavid Daney 		uint64_t edssi:1;
3657c5aa59e8SDavid Daney 		uint64_t reserved_4_6:3;
3658c5aa59e8SDavid Daney 		uint64_t ptime:1;
3659c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3660c5aa59e8SDavid Daney #endif
366154293ec3SDavid Daney 	} s;
366254293ec3SDavid Daney };
366354293ec3SDavid Daney 
366454293ec3SDavid Daney union cvmx_mio_uartx_iir {
366554293ec3SDavid Daney 	uint64_t u64;
366654293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s {
3667c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
366854293ec3SDavid Daney 		uint64_t reserved_8_63:56;
366954293ec3SDavid Daney 		uint64_t fen:2;
367054293ec3SDavid Daney 		uint64_t reserved_4_5:2;
367154293ec3SDavid Daney 		uint64_t iid:4;
3672c5aa59e8SDavid Daney #else
3673c5aa59e8SDavid Daney 		uint64_t iid:4;
3674c5aa59e8SDavid Daney 		uint64_t reserved_4_5:2;
3675c5aa59e8SDavid Daney 		uint64_t fen:2;
3676c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3677c5aa59e8SDavid Daney #endif
367854293ec3SDavid Daney 	} s;
367954293ec3SDavid Daney };
368054293ec3SDavid Daney 
368154293ec3SDavid Daney union cvmx_mio_uartx_lcr {
368254293ec3SDavid Daney 	uint64_t u64;
368354293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s {
3684c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
368554293ec3SDavid Daney 		uint64_t reserved_8_63:56;
368654293ec3SDavid Daney 		uint64_t dlab:1;
368754293ec3SDavid Daney 		uint64_t brk:1;
368854293ec3SDavid Daney 		uint64_t reserved_5_5:1;
368954293ec3SDavid Daney 		uint64_t eps:1;
369054293ec3SDavid Daney 		uint64_t pen:1;
369154293ec3SDavid Daney 		uint64_t stop:1;
369254293ec3SDavid Daney 		uint64_t cls:2;
3693c5aa59e8SDavid Daney #else
3694c5aa59e8SDavid Daney 		uint64_t cls:2;
3695c5aa59e8SDavid Daney 		uint64_t stop:1;
3696c5aa59e8SDavid Daney 		uint64_t pen:1;
3697c5aa59e8SDavid Daney 		uint64_t eps:1;
3698c5aa59e8SDavid Daney 		uint64_t reserved_5_5:1;
3699c5aa59e8SDavid Daney 		uint64_t brk:1;
3700c5aa59e8SDavid Daney 		uint64_t dlab:1;
3701c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3702c5aa59e8SDavid Daney #endif
370354293ec3SDavid Daney 	} s;
370454293ec3SDavid Daney };
370554293ec3SDavid Daney 
370654293ec3SDavid Daney union cvmx_mio_uartx_lsr {
370754293ec3SDavid Daney 	uint64_t u64;
370854293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s {
3709c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
371054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
371154293ec3SDavid Daney 		uint64_t ferr:1;
371254293ec3SDavid Daney 		uint64_t temt:1;
371354293ec3SDavid Daney 		uint64_t thre:1;
371454293ec3SDavid Daney 		uint64_t bi:1;
371554293ec3SDavid Daney 		uint64_t fe:1;
371654293ec3SDavid Daney 		uint64_t pe:1;
371754293ec3SDavid Daney 		uint64_t oe:1;
371854293ec3SDavid Daney 		uint64_t dr:1;
3719c5aa59e8SDavid Daney #else
3720c5aa59e8SDavid Daney 		uint64_t dr:1;
3721c5aa59e8SDavid Daney 		uint64_t oe:1;
3722c5aa59e8SDavid Daney 		uint64_t pe:1;
3723c5aa59e8SDavid Daney 		uint64_t fe:1;
3724c5aa59e8SDavid Daney 		uint64_t bi:1;
3725c5aa59e8SDavid Daney 		uint64_t thre:1;
3726c5aa59e8SDavid Daney 		uint64_t temt:1;
3727c5aa59e8SDavid Daney 		uint64_t ferr:1;
3728c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3729c5aa59e8SDavid Daney #endif
373054293ec3SDavid Daney 	} s;
373154293ec3SDavid Daney };
373254293ec3SDavid Daney 
373354293ec3SDavid Daney union cvmx_mio_uartx_mcr {
373454293ec3SDavid Daney 	uint64_t u64;
373554293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s {
3736c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
373754293ec3SDavid Daney 		uint64_t reserved_6_63:58;
373854293ec3SDavid Daney 		uint64_t afce:1;
373954293ec3SDavid Daney 		uint64_t loop:1;
374054293ec3SDavid Daney 		uint64_t out2:1;
374154293ec3SDavid Daney 		uint64_t out1:1;
374254293ec3SDavid Daney 		uint64_t rts:1;
374354293ec3SDavid Daney 		uint64_t dtr:1;
3744c5aa59e8SDavid Daney #else
3745c5aa59e8SDavid Daney 		uint64_t dtr:1;
3746c5aa59e8SDavid Daney 		uint64_t rts:1;
3747c5aa59e8SDavid Daney 		uint64_t out1:1;
3748c5aa59e8SDavid Daney 		uint64_t out2:1;
3749c5aa59e8SDavid Daney 		uint64_t loop:1;
3750c5aa59e8SDavid Daney 		uint64_t afce:1;
3751c5aa59e8SDavid Daney 		uint64_t reserved_6_63:58;
3752c5aa59e8SDavid Daney #endif
375354293ec3SDavid Daney 	} s;
375454293ec3SDavid Daney };
375554293ec3SDavid Daney 
375654293ec3SDavid Daney union cvmx_mio_uartx_msr {
375754293ec3SDavid Daney 	uint64_t u64;
375854293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s {
3759c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
376054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
376154293ec3SDavid Daney 		uint64_t dcd:1;
376254293ec3SDavid Daney 		uint64_t ri:1;
376354293ec3SDavid Daney 		uint64_t dsr:1;
376454293ec3SDavid Daney 		uint64_t cts:1;
376554293ec3SDavid Daney 		uint64_t ddcd:1;
376654293ec3SDavid Daney 		uint64_t teri:1;
376754293ec3SDavid Daney 		uint64_t ddsr:1;
376854293ec3SDavid Daney 		uint64_t dcts:1;
3769c5aa59e8SDavid Daney #else
3770c5aa59e8SDavid Daney 		uint64_t dcts:1;
3771c5aa59e8SDavid Daney 		uint64_t ddsr:1;
3772c5aa59e8SDavid Daney 		uint64_t teri:1;
3773c5aa59e8SDavid Daney 		uint64_t ddcd:1;
3774c5aa59e8SDavid Daney 		uint64_t cts:1;
3775c5aa59e8SDavid Daney 		uint64_t dsr:1;
3776c5aa59e8SDavid Daney 		uint64_t ri:1;
3777c5aa59e8SDavid Daney 		uint64_t dcd:1;
3778c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3779c5aa59e8SDavid Daney #endif
378054293ec3SDavid Daney 	} s;
378154293ec3SDavid Daney };
378254293ec3SDavid Daney 
378354293ec3SDavid Daney union cvmx_mio_uartx_rbr {
378454293ec3SDavid Daney 	uint64_t u64;
378554293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s {
3786c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
378754293ec3SDavid Daney 		uint64_t reserved_8_63:56;
378854293ec3SDavid Daney 		uint64_t rbr:8;
3789c5aa59e8SDavid Daney #else
3790c5aa59e8SDavid Daney 		uint64_t rbr:8;
3791c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3792c5aa59e8SDavid Daney #endif
379354293ec3SDavid Daney 	} s;
379454293ec3SDavid Daney };
379554293ec3SDavid Daney 
379654293ec3SDavid Daney union cvmx_mio_uartx_rfl {
379754293ec3SDavid Daney 	uint64_t u64;
379854293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s {
3799c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
380054293ec3SDavid Daney 		uint64_t reserved_7_63:57;
380154293ec3SDavid Daney 		uint64_t rfl:7;
3802c5aa59e8SDavid Daney #else
3803c5aa59e8SDavid Daney 		uint64_t rfl:7;
3804c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
3805c5aa59e8SDavid Daney #endif
380654293ec3SDavid Daney 	} s;
380754293ec3SDavid Daney };
380854293ec3SDavid Daney 
380954293ec3SDavid Daney union cvmx_mio_uartx_rfw {
381054293ec3SDavid Daney 	uint64_t u64;
381154293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s {
3812c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
381354293ec3SDavid Daney 		uint64_t reserved_10_63:54;
381454293ec3SDavid Daney 		uint64_t rffe:1;
381554293ec3SDavid Daney 		uint64_t rfpe:1;
381654293ec3SDavid Daney 		uint64_t rfwd:8;
3817c5aa59e8SDavid Daney #else
3818c5aa59e8SDavid Daney 		uint64_t rfwd:8;
3819c5aa59e8SDavid Daney 		uint64_t rfpe:1;
3820c5aa59e8SDavid Daney 		uint64_t rffe:1;
3821c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
3822c5aa59e8SDavid Daney #endif
382354293ec3SDavid Daney 	} s;
382454293ec3SDavid Daney };
382554293ec3SDavid Daney 
382654293ec3SDavid Daney union cvmx_mio_uartx_sbcr {
382754293ec3SDavid Daney 	uint64_t u64;
382854293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s {
3829c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
383054293ec3SDavid Daney 		uint64_t reserved_1_63:63;
383154293ec3SDavid Daney 		uint64_t sbcr:1;
3832c5aa59e8SDavid Daney #else
3833c5aa59e8SDavid Daney 		uint64_t sbcr:1;
3834c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
3835c5aa59e8SDavid Daney #endif
383654293ec3SDavid Daney 	} s;
383754293ec3SDavid Daney };
383854293ec3SDavid Daney 
383954293ec3SDavid Daney union cvmx_mio_uartx_scr {
384054293ec3SDavid Daney 	uint64_t u64;
384154293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s {
3842c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
384354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
384454293ec3SDavid Daney 		uint64_t scr:8;
3845c5aa59e8SDavid Daney #else
3846c5aa59e8SDavid Daney 		uint64_t scr:8;
3847c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3848c5aa59e8SDavid Daney #endif
384954293ec3SDavid Daney 	} s;
385054293ec3SDavid Daney };
385154293ec3SDavid Daney 
385254293ec3SDavid Daney union cvmx_mio_uartx_sfe {
385354293ec3SDavid Daney 	uint64_t u64;
385454293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s {
3855c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
385654293ec3SDavid Daney 		uint64_t reserved_1_63:63;
385754293ec3SDavid Daney 		uint64_t sfe:1;
3858c5aa59e8SDavid Daney #else
3859c5aa59e8SDavid Daney 		uint64_t sfe:1;
3860c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
3861c5aa59e8SDavid Daney #endif
386254293ec3SDavid Daney 	} s;
386354293ec3SDavid Daney };
386454293ec3SDavid Daney 
386554293ec3SDavid Daney union cvmx_mio_uartx_srr {
386654293ec3SDavid Daney 	uint64_t u64;
386754293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s {
3868c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
386954293ec3SDavid Daney 		uint64_t reserved_3_63:61;
387054293ec3SDavid Daney 		uint64_t stfr:1;
387154293ec3SDavid Daney 		uint64_t srfr:1;
387254293ec3SDavid Daney 		uint64_t usr:1;
3873c5aa59e8SDavid Daney #else
3874c5aa59e8SDavid Daney 		uint64_t usr:1;
3875c5aa59e8SDavid Daney 		uint64_t srfr:1;
3876c5aa59e8SDavid Daney 		uint64_t stfr:1;
3877c5aa59e8SDavid Daney 		uint64_t reserved_3_63:61;
3878c5aa59e8SDavid Daney #endif
387954293ec3SDavid Daney 	} s;
388054293ec3SDavid Daney };
388154293ec3SDavid Daney 
388254293ec3SDavid Daney union cvmx_mio_uartx_srt {
388354293ec3SDavid Daney 	uint64_t u64;
388454293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s {
3885c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
388654293ec3SDavid Daney 		uint64_t reserved_2_63:62;
388754293ec3SDavid Daney 		uint64_t srt:2;
3888c5aa59e8SDavid Daney #else
3889c5aa59e8SDavid Daney 		uint64_t srt:2;
3890c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
3891c5aa59e8SDavid Daney #endif
389254293ec3SDavid Daney 	} s;
389354293ec3SDavid Daney };
389454293ec3SDavid Daney 
389554293ec3SDavid Daney union cvmx_mio_uartx_srts {
389654293ec3SDavid Daney 	uint64_t u64;
389754293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s {
3898c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
389954293ec3SDavid Daney 		uint64_t reserved_1_63:63;
390054293ec3SDavid Daney 		uint64_t srts:1;
3901c5aa59e8SDavid Daney #else
3902c5aa59e8SDavid Daney 		uint64_t srts:1;
3903c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
3904c5aa59e8SDavid Daney #endif
390554293ec3SDavid Daney 	} s;
390654293ec3SDavid Daney };
390754293ec3SDavid Daney 
390854293ec3SDavid Daney union cvmx_mio_uartx_stt {
390954293ec3SDavid Daney 	uint64_t u64;
391054293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s {
3911c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
391254293ec3SDavid Daney 		uint64_t reserved_2_63:62;
391354293ec3SDavid Daney 		uint64_t stt:2;
3914c5aa59e8SDavid Daney #else
3915c5aa59e8SDavid Daney 		uint64_t stt:2;
3916c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
3917c5aa59e8SDavid Daney #endif
391854293ec3SDavid Daney 	} s;
391954293ec3SDavid Daney };
392054293ec3SDavid Daney 
392154293ec3SDavid Daney union cvmx_mio_uartx_tfl {
392254293ec3SDavid Daney 	uint64_t u64;
392354293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s {
3924c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
392554293ec3SDavid Daney 		uint64_t reserved_7_63:57;
392654293ec3SDavid Daney 		uint64_t tfl:7;
3927c5aa59e8SDavid Daney #else
3928c5aa59e8SDavid Daney 		uint64_t tfl:7;
3929c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
3930c5aa59e8SDavid Daney #endif
393154293ec3SDavid Daney 	} s;
393254293ec3SDavid Daney };
393354293ec3SDavid Daney 
393454293ec3SDavid Daney union cvmx_mio_uartx_tfr {
393554293ec3SDavid Daney 	uint64_t u64;
393654293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s {
3937c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
393854293ec3SDavid Daney 		uint64_t reserved_8_63:56;
393954293ec3SDavid Daney 		uint64_t tfr:8;
3940c5aa59e8SDavid Daney #else
3941c5aa59e8SDavid Daney 		uint64_t tfr:8;
3942c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3943c5aa59e8SDavid Daney #endif
394454293ec3SDavid Daney 	} s;
394554293ec3SDavid Daney };
394654293ec3SDavid Daney 
394754293ec3SDavid Daney union cvmx_mio_uartx_thr {
394854293ec3SDavid Daney 	uint64_t u64;
394954293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s {
3950c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
395154293ec3SDavid Daney 		uint64_t reserved_8_63:56;
395254293ec3SDavid Daney 		uint64_t thr:8;
3953c5aa59e8SDavid Daney #else
3954c5aa59e8SDavid Daney 		uint64_t thr:8;
3955c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3956c5aa59e8SDavid Daney #endif
395754293ec3SDavid Daney 	} s;
395854293ec3SDavid Daney };
395954293ec3SDavid Daney 
396054293ec3SDavid Daney union cvmx_mio_uartx_usr {
396154293ec3SDavid Daney 	uint64_t u64;
396254293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s {
3963c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
396454293ec3SDavid Daney 		uint64_t reserved_5_63:59;
396554293ec3SDavid Daney 		uint64_t rff:1;
396654293ec3SDavid Daney 		uint64_t rfne:1;
396754293ec3SDavid Daney 		uint64_t tfe:1;
396854293ec3SDavid Daney 		uint64_t tfnf:1;
396954293ec3SDavid Daney 		uint64_t busy:1;
3970c5aa59e8SDavid Daney #else
3971c5aa59e8SDavid Daney 		uint64_t busy:1;
3972c5aa59e8SDavid Daney 		uint64_t tfnf:1;
3973c5aa59e8SDavid Daney 		uint64_t tfe:1;
3974c5aa59e8SDavid Daney 		uint64_t rfne:1;
3975c5aa59e8SDavid Daney 		uint64_t rff:1;
3976c5aa59e8SDavid Daney 		uint64_t reserved_5_63:59;
3977c5aa59e8SDavid Daney #endif
397854293ec3SDavid Daney 	} s;
397954293ec3SDavid Daney };
398054293ec3SDavid Daney 
398154293ec3SDavid Daney union cvmx_mio_uart2_dlh {
398254293ec3SDavid Daney 	uint64_t u64;
398354293ec3SDavid Daney 	struct cvmx_mio_uart2_dlh_s {
3984c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
398554293ec3SDavid Daney 		uint64_t reserved_8_63:56;
398654293ec3SDavid Daney 		uint64_t dlh:8;
3987c5aa59e8SDavid Daney #else
3988c5aa59e8SDavid Daney 		uint64_t dlh:8;
3989c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
3990c5aa59e8SDavid Daney #endif
399154293ec3SDavid Daney 	} s;
399254293ec3SDavid Daney };
399354293ec3SDavid Daney 
399454293ec3SDavid Daney union cvmx_mio_uart2_dll {
399554293ec3SDavid Daney 	uint64_t u64;
399654293ec3SDavid Daney 	struct cvmx_mio_uart2_dll_s {
3997c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
399854293ec3SDavid Daney 		uint64_t reserved_8_63:56;
399954293ec3SDavid Daney 		uint64_t dll:8;
4000c5aa59e8SDavid Daney #else
4001c5aa59e8SDavid Daney 		uint64_t dll:8;
4002c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4003c5aa59e8SDavid Daney #endif
400454293ec3SDavid Daney 	} s;
400554293ec3SDavid Daney };
400654293ec3SDavid Daney 
400754293ec3SDavid Daney union cvmx_mio_uart2_far {
400854293ec3SDavid Daney 	uint64_t u64;
400954293ec3SDavid Daney 	struct cvmx_mio_uart2_far_s {
4010c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
401154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
401254293ec3SDavid Daney 		uint64_t far:1;
4013c5aa59e8SDavid Daney #else
4014c5aa59e8SDavid Daney 		uint64_t far:1;
4015c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
4016c5aa59e8SDavid Daney #endif
401754293ec3SDavid Daney 	} s;
401854293ec3SDavid Daney };
401954293ec3SDavid Daney 
402054293ec3SDavid Daney union cvmx_mio_uart2_fcr {
402154293ec3SDavid Daney 	uint64_t u64;
402254293ec3SDavid Daney 	struct cvmx_mio_uart2_fcr_s {
4023c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
402454293ec3SDavid Daney 		uint64_t reserved_8_63:56;
402554293ec3SDavid Daney 		uint64_t rxtrig:2;
402654293ec3SDavid Daney 		uint64_t txtrig:2;
402754293ec3SDavid Daney 		uint64_t reserved_3_3:1;
402854293ec3SDavid Daney 		uint64_t txfr:1;
402954293ec3SDavid Daney 		uint64_t rxfr:1;
403054293ec3SDavid Daney 		uint64_t en:1;
4031c5aa59e8SDavid Daney #else
4032c5aa59e8SDavid Daney 		uint64_t en:1;
4033c5aa59e8SDavid Daney 		uint64_t rxfr:1;
4034c5aa59e8SDavid Daney 		uint64_t txfr:1;
4035c5aa59e8SDavid Daney 		uint64_t reserved_3_3:1;
4036c5aa59e8SDavid Daney 		uint64_t txtrig:2;
4037c5aa59e8SDavid Daney 		uint64_t rxtrig:2;
4038c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4039c5aa59e8SDavid Daney #endif
404054293ec3SDavid Daney 	} s;
404154293ec3SDavid Daney };
404254293ec3SDavid Daney 
404354293ec3SDavid Daney union cvmx_mio_uart2_htx {
404454293ec3SDavid Daney 	uint64_t u64;
404554293ec3SDavid Daney 	struct cvmx_mio_uart2_htx_s {
4046c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
404754293ec3SDavid Daney 		uint64_t reserved_1_63:63;
404854293ec3SDavid Daney 		uint64_t htx:1;
4049c5aa59e8SDavid Daney #else
4050c5aa59e8SDavid Daney 		uint64_t htx:1;
4051c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
4052c5aa59e8SDavid Daney #endif
405354293ec3SDavid Daney 	} s;
405454293ec3SDavid Daney };
405554293ec3SDavid Daney 
405654293ec3SDavid Daney union cvmx_mio_uart2_ier {
405754293ec3SDavid Daney 	uint64_t u64;
405854293ec3SDavid Daney 	struct cvmx_mio_uart2_ier_s {
4059c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
406054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
406154293ec3SDavid Daney 		uint64_t ptime:1;
406254293ec3SDavid Daney 		uint64_t reserved_4_6:3;
406354293ec3SDavid Daney 		uint64_t edssi:1;
406454293ec3SDavid Daney 		uint64_t elsi:1;
406554293ec3SDavid Daney 		uint64_t etbei:1;
406654293ec3SDavid Daney 		uint64_t erbfi:1;
4067c5aa59e8SDavid Daney #else
4068c5aa59e8SDavid Daney 		uint64_t erbfi:1;
4069c5aa59e8SDavid Daney 		uint64_t etbei:1;
4070c5aa59e8SDavid Daney 		uint64_t elsi:1;
4071c5aa59e8SDavid Daney 		uint64_t edssi:1;
4072c5aa59e8SDavid Daney 		uint64_t reserved_4_6:3;
4073c5aa59e8SDavid Daney 		uint64_t ptime:1;
4074c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4075c5aa59e8SDavid Daney #endif
407654293ec3SDavid Daney 	} s;
407754293ec3SDavid Daney };
407854293ec3SDavid Daney 
407954293ec3SDavid Daney union cvmx_mio_uart2_iir {
408054293ec3SDavid Daney 	uint64_t u64;
408154293ec3SDavid Daney 	struct cvmx_mio_uart2_iir_s {
4082c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
408354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
408454293ec3SDavid Daney 		uint64_t fen:2;
408554293ec3SDavid Daney 		uint64_t reserved_4_5:2;
408654293ec3SDavid Daney 		uint64_t iid:4;
4087c5aa59e8SDavid Daney #else
4088c5aa59e8SDavid Daney 		uint64_t iid:4;
4089c5aa59e8SDavid Daney 		uint64_t reserved_4_5:2;
4090c5aa59e8SDavid Daney 		uint64_t fen:2;
4091c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4092c5aa59e8SDavid Daney #endif
409354293ec3SDavid Daney 	} s;
409454293ec3SDavid Daney };
409554293ec3SDavid Daney 
409654293ec3SDavid Daney union cvmx_mio_uart2_lcr {
409754293ec3SDavid Daney 	uint64_t u64;
409854293ec3SDavid Daney 	struct cvmx_mio_uart2_lcr_s {
4099c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
410054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
410154293ec3SDavid Daney 		uint64_t dlab:1;
410254293ec3SDavid Daney 		uint64_t brk:1;
410354293ec3SDavid Daney 		uint64_t reserved_5_5:1;
410454293ec3SDavid Daney 		uint64_t eps:1;
410554293ec3SDavid Daney 		uint64_t pen:1;
410654293ec3SDavid Daney 		uint64_t stop:1;
410754293ec3SDavid Daney 		uint64_t cls:2;
4108c5aa59e8SDavid Daney #else
4109c5aa59e8SDavid Daney 		uint64_t cls:2;
4110c5aa59e8SDavid Daney 		uint64_t stop:1;
4111c5aa59e8SDavid Daney 		uint64_t pen:1;
4112c5aa59e8SDavid Daney 		uint64_t eps:1;
4113c5aa59e8SDavid Daney 		uint64_t reserved_5_5:1;
4114c5aa59e8SDavid Daney 		uint64_t brk:1;
4115c5aa59e8SDavid Daney 		uint64_t dlab:1;
4116c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4117c5aa59e8SDavid Daney #endif
411854293ec3SDavid Daney 	} s;
411954293ec3SDavid Daney };
412054293ec3SDavid Daney 
412154293ec3SDavid Daney union cvmx_mio_uart2_lsr {
412254293ec3SDavid Daney 	uint64_t u64;
412354293ec3SDavid Daney 	struct cvmx_mio_uart2_lsr_s {
4124c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
412554293ec3SDavid Daney 		uint64_t reserved_8_63:56;
412654293ec3SDavid Daney 		uint64_t ferr:1;
412754293ec3SDavid Daney 		uint64_t temt:1;
412854293ec3SDavid Daney 		uint64_t thre:1;
412954293ec3SDavid Daney 		uint64_t bi:1;
413054293ec3SDavid Daney 		uint64_t fe:1;
413154293ec3SDavid Daney 		uint64_t pe:1;
413254293ec3SDavid Daney 		uint64_t oe:1;
413354293ec3SDavid Daney 		uint64_t dr:1;
4134c5aa59e8SDavid Daney #else
4135c5aa59e8SDavid Daney 		uint64_t dr:1;
4136c5aa59e8SDavid Daney 		uint64_t oe:1;
4137c5aa59e8SDavid Daney 		uint64_t pe:1;
4138c5aa59e8SDavid Daney 		uint64_t fe:1;
4139c5aa59e8SDavid Daney 		uint64_t bi:1;
4140c5aa59e8SDavid Daney 		uint64_t thre:1;
4141c5aa59e8SDavid Daney 		uint64_t temt:1;
4142c5aa59e8SDavid Daney 		uint64_t ferr:1;
4143c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4144c5aa59e8SDavid Daney #endif
414554293ec3SDavid Daney 	} s;
414654293ec3SDavid Daney };
414754293ec3SDavid Daney 
414854293ec3SDavid Daney union cvmx_mio_uart2_mcr {
414954293ec3SDavid Daney 	uint64_t u64;
415054293ec3SDavid Daney 	struct cvmx_mio_uart2_mcr_s {
4151c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
415254293ec3SDavid Daney 		uint64_t reserved_6_63:58;
415354293ec3SDavid Daney 		uint64_t afce:1;
415454293ec3SDavid Daney 		uint64_t loop:1;
415554293ec3SDavid Daney 		uint64_t out2:1;
415654293ec3SDavid Daney 		uint64_t out1:1;
415754293ec3SDavid Daney 		uint64_t rts:1;
415854293ec3SDavid Daney 		uint64_t dtr:1;
4159c5aa59e8SDavid Daney #else
4160c5aa59e8SDavid Daney 		uint64_t dtr:1;
4161c5aa59e8SDavid Daney 		uint64_t rts:1;
4162c5aa59e8SDavid Daney 		uint64_t out1:1;
4163c5aa59e8SDavid Daney 		uint64_t out2:1;
4164c5aa59e8SDavid Daney 		uint64_t loop:1;
4165c5aa59e8SDavid Daney 		uint64_t afce:1;
4166c5aa59e8SDavid Daney 		uint64_t reserved_6_63:58;
4167c5aa59e8SDavid Daney #endif
416854293ec3SDavid Daney 	} s;
416954293ec3SDavid Daney };
417054293ec3SDavid Daney 
417154293ec3SDavid Daney union cvmx_mio_uart2_msr {
417254293ec3SDavid Daney 	uint64_t u64;
417354293ec3SDavid Daney 	struct cvmx_mio_uart2_msr_s {
4174c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
417554293ec3SDavid Daney 		uint64_t reserved_8_63:56;
417654293ec3SDavid Daney 		uint64_t dcd:1;
417754293ec3SDavid Daney 		uint64_t ri:1;
417854293ec3SDavid Daney 		uint64_t dsr:1;
417954293ec3SDavid Daney 		uint64_t cts:1;
418054293ec3SDavid Daney 		uint64_t ddcd:1;
418154293ec3SDavid Daney 		uint64_t teri:1;
418254293ec3SDavid Daney 		uint64_t ddsr:1;
418354293ec3SDavid Daney 		uint64_t dcts:1;
4184c5aa59e8SDavid Daney #else
4185c5aa59e8SDavid Daney 		uint64_t dcts:1;
4186c5aa59e8SDavid Daney 		uint64_t ddsr:1;
4187c5aa59e8SDavid Daney 		uint64_t teri:1;
4188c5aa59e8SDavid Daney 		uint64_t ddcd:1;
4189c5aa59e8SDavid Daney 		uint64_t cts:1;
4190c5aa59e8SDavid Daney 		uint64_t dsr:1;
4191c5aa59e8SDavid Daney 		uint64_t ri:1;
4192c5aa59e8SDavid Daney 		uint64_t dcd:1;
4193c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4194c5aa59e8SDavid Daney #endif
419554293ec3SDavid Daney 	} s;
419654293ec3SDavid Daney };
419754293ec3SDavid Daney 
419854293ec3SDavid Daney union cvmx_mio_uart2_rbr {
419954293ec3SDavid Daney 	uint64_t u64;
420054293ec3SDavid Daney 	struct cvmx_mio_uart2_rbr_s {
4201c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
420254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
420354293ec3SDavid Daney 		uint64_t rbr:8;
4204c5aa59e8SDavid Daney #else
4205c5aa59e8SDavid Daney 		uint64_t rbr:8;
4206c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4207c5aa59e8SDavid Daney #endif
420854293ec3SDavid Daney 	} s;
420954293ec3SDavid Daney };
421054293ec3SDavid Daney 
421154293ec3SDavid Daney union cvmx_mio_uart2_rfl {
421254293ec3SDavid Daney 	uint64_t u64;
421354293ec3SDavid Daney 	struct cvmx_mio_uart2_rfl_s {
4214c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
421554293ec3SDavid Daney 		uint64_t reserved_7_63:57;
421654293ec3SDavid Daney 		uint64_t rfl:7;
4217c5aa59e8SDavid Daney #else
4218c5aa59e8SDavid Daney 		uint64_t rfl:7;
4219c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
4220c5aa59e8SDavid Daney #endif
422154293ec3SDavid Daney 	} s;
422254293ec3SDavid Daney };
422354293ec3SDavid Daney 
422454293ec3SDavid Daney union cvmx_mio_uart2_rfw {
422554293ec3SDavid Daney 	uint64_t u64;
422654293ec3SDavid Daney 	struct cvmx_mio_uart2_rfw_s {
4227c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
422854293ec3SDavid Daney 		uint64_t reserved_10_63:54;
422954293ec3SDavid Daney 		uint64_t rffe:1;
423054293ec3SDavid Daney 		uint64_t rfpe:1;
423154293ec3SDavid Daney 		uint64_t rfwd:8;
4232c5aa59e8SDavid Daney #else
4233c5aa59e8SDavid Daney 		uint64_t rfwd:8;
4234c5aa59e8SDavid Daney 		uint64_t rfpe:1;
4235c5aa59e8SDavid Daney 		uint64_t rffe:1;
4236c5aa59e8SDavid Daney 		uint64_t reserved_10_63:54;
4237c5aa59e8SDavid Daney #endif
423854293ec3SDavid Daney 	} s;
423954293ec3SDavid Daney };
424054293ec3SDavid Daney 
424154293ec3SDavid Daney union cvmx_mio_uart2_sbcr {
424254293ec3SDavid Daney 	uint64_t u64;
424354293ec3SDavid Daney 	struct cvmx_mio_uart2_sbcr_s {
4244c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
424554293ec3SDavid Daney 		uint64_t reserved_1_63:63;
424654293ec3SDavid Daney 		uint64_t sbcr:1;
4247c5aa59e8SDavid Daney #else
4248c5aa59e8SDavid Daney 		uint64_t sbcr:1;
4249c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
4250c5aa59e8SDavid Daney #endif
425154293ec3SDavid Daney 	} s;
425254293ec3SDavid Daney };
425354293ec3SDavid Daney 
425454293ec3SDavid Daney union cvmx_mio_uart2_scr {
425554293ec3SDavid Daney 	uint64_t u64;
425654293ec3SDavid Daney 	struct cvmx_mio_uart2_scr_s {
4257c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
425854293ec3SDavid Daney 		uint64_t reserved_8_63:56;
425954293ec3SDavid Daney 		uint64_t scr:8;
4260c5aa59e8SDavid Daney #else
4261c5aa59e8SDavid Daney 		uint64_t scr:8;
4262c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4263c5aa59e8SDavid Daney #endif
426454293ec3SDavid Daney 	} s;
426554293ec3SDavid Daney };
426654293ec3SDavid Daney 
426754293ec3SDavid Daney union cvmx_mio_uart2_sfe {
426854293ec3SDavid Daney 	uint64_t u64;
426954293ec3SDavid Daney 	struct cvmx_mio_uart2_sfe_s {
4270c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
427154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
427254293ec3SDavid Daney 		uint64_t sfe:1;
4273c5aa59e8SDavid Daney #else
4274c5aa59e8SDavid Daney 		uint64_t sfe:1;
4275c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
4276c5aa59e8SDavid Daney #endif
427754293ec3SDavid Daney 	} s;
427854293ec3SDavid Daney };
427954293ec3SDavid Daney 
428054293ec3SDavid Daney union cvmx_mio_uart2_srr {
428154293ec3SDavid Daney 	uint64_t u64;
428254293ec3SDavid Daney 	struct cvmx_mio_uart2_srr_s {
4283c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
428454293ec3SDavid Daney 		uint64_t reserved_3_63:61;
428554293ec3SDavid Daney 		uint64_t stfr:1;
428654293ec3SDavid Daney 		uint64_t srfr:1;
428754293ec3SDavid Daney 		uint64_t usr:1;
4288c5aa59e8SDavid Daney #else
4289c5aa59e8SDavid Daney 		uint64_t usr:1;
4290c5aa59e8SDavid Daney 		uint64_t srfr:1;
4291c5aa59e8SDavid Daney 		uint64_t stfr:1;
4292c5aa59e8SDavid Daney 		uint64_t reserved_3_63:61;
4293c5aa59e8SDavid Daney #endif
429454293ec3SDavid Daney 	} s;
429554293ec3SDavid Daney };
429654293ec3SDavid Daney 
429754293ec3SDavid Daney union cvmx_mio_uart2_srt {
429854293ec3SDavid Daney 	uint64_t u64;
429954293ec3SDavid Daney 	struct cvmx_mio_uart2_srt_s {
4300c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
430154293ec3SDavid Daney 		uint64_t reserved_2_63:62;
430254293ec3SDavid Daney 		uint64_t srt:2;
4303c5aa59e8SDavid Daney #else
4304c5aa59e8SDavid Daney 		uint64_t srt:2;
4305c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
4306c5aa59e8SDavid Daney #endif
430754293ec3SDavid Daney 	} s;
430854293ec3SDavid Daney };
430954293ec3SDavid Daney 
431054293ec3SDavid Daney union cvmx_mio_uart2_srts {
431154293ec3SDavid Daney 	uint64_t u64;
431254293ec3SDavid Daney 	struct cvmx_mio_uart2_srts_s {
4313c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
431454293ec3SDavid Daney 		uint64_t reserved_1_63:63;
431554293ec3SDavid Daney 		uint64_t srts:1;
4316c5aa59e8SDavid Daney #else
4317c5aa59e8SDavid Daney 		uint64_t srts:1;
4318c5aa59e8SDavid Daney 		uint64_t reserved_1_63:63;
4319c5aa59e8SDavid Daney #endif
432054293ec3SDavid Daney 	} s;
432154293ec3SDavid Daney };
432254293ec3SDavid Daney 
432354293ec3SDavid Daney union cvmx_mio_uart2_stt {
432454293ec3SDavid Daney 	uint64_t u64;
432554293ec3SDavid Daney 	struct cvmx_mio_uart2_stt_s {
4326c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
432754293ec3SDavid Daney 		uint64_t reserved_2_63:62;
432854293ec3SDavid Daney 		uint64_t stt:2;
4329c5aa59e8SDavid Daney #else
4330c5aa59e8SDavid Daney 		uint64_t stt:2;
4331c5aa59e8SDavid Daney 		uint64_t reserved_2_63:62;
4332c5aa59e8SDavid Daney #endif
433354293ec3SDavid Daney 	} s;
433454293ec3SDavid Daney };
433554293ec3SDavid Daney 
433654293ec3SDavid Daney union cvmx_mio_uart2_tfl {
433754293ec3SDavid Daney 	uint64_t u64;
433854293ec3SDavid Daney 	struct cvmx_mio_uart2_tfl_s {
4339c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
434054293ec3SDavid Daney 		uint64_t reserved_7_63:57;
434154293ec3SDavid Daney 		uint64_t tfl:7;
4342c5aa59e8SDavid Daney #else
4343c5aa59e8SDavid Daney 		uint64_t tfl:7;
4344c5aa59e8SDavid Daney 		uint64_t reserved_7_63:57;
4345c5aa59e8SDavid Daney #endif
434654293ec3SDavid Daney 	} s;
434754293ec3SDavid Daney };
434854293ec3SDavid Daney 
434954293ec3SDavid Daney union cvmx_mio_uart2_tfr {
435054293ec3SDavid Daney 	uint64_t u64;
435154293ec3SDavid Daney 	struct cvmx_mio_uart2_tfr_s {
4352c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
435354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
435454293ec3SDavid Daney 		uint64_t tfr:8;
4355c5aa59e8SDavid Daney #else
4356c5aa59e8SDavid Daney 		uint64_t tfr:8;
4357c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4358c5aa59e8SDavid Daney #endif
435954293ec3SDavid Daney 	} s;
436054293ec3SDavid Daney };
436154293ec3SDavid Daney 
436254293ec3SDavid Daney union cvmx_mio_uart2_thr {
436354293ec3SDavid Daney 	uint64_t u64;
436454293ec3SDavid Daney 	struct cvmx_mio_uart2_thr_s {
4365c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
436654293ec3SDavid Daney 		uint64_t reserved_8_63:56;
436754293ec3SDavid Daney 		uint64_t thr:8;
4368c5aa59e8SDavid Daney #else
4369c5aa59e8SDavid Daney 		uint64_t thr:8;
4370c5aa59e8SDavid Daney 		uint64_t reserved_8_63:56;
4371c5aa59e8SDavid Daney #endif
437254293ec3SDavid Daney 	} s;
437354293ec3SDavid Daney };
437454293ec3SDavid Daney 
437554293ec3SDavid Daney union cvmx_mio_uart2_usr {
437654293ec3SDavid Daney 	uint64_t u64;
437754293ec3SDavid Daney 	struct cvmx_mio_uart2_usr_s {
4378c5aa59e8SDavid Daney #ifdef __BIG_ENDIAN_BITFIELD
437954293ec3SDavid Daney 		uint64_t reserved_5_63:59;
438054293ec3SDavid Daney 		uint64_t rff:1;
438154293ec3SDavid Daney 		uint64_t rfne:1;
438254293ec3SDavid Daney 		uint64_t tfe:1;
438354293ec3SDavid Daney 		uint64_t tfnf:1;
438454293ec3SDavid Daney 		uint64_t busy:1;
4385c5aa59e8SDavid Daney #else
4386c5aa59e8SDavid Daney 		uint64_t busy:1;
4387c5aa59e8SDavid Daney 		uint64_t tfnf:1;
4388c5aa59e8SDavid Daney 		uint64_t tfe:1;
4389c5aa59e8SDavid Daney 		uint64_t rfne:1;
4390c5aa59e8SDavid Daney 		uint64_t rff:1;
4391c5aa59e8SDavid Daney 		uint64_t reserved_5_63:59;
4392c5aa59e8SDavid Daney #endif
439354293ec3SDavid Daney 	} s;
439454293ec3SDavid Daney };
439554293ec3SDavid Daney 
439654293ec3SDavid Daney #endif
4397