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  *
7aa32a955SDavid Daney  * Copyright (c) 2003-2010 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))
97751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_HI_INCR (CVMX_ADD_IO_SEG(0x0001070000000F60ull))
98751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_LO_INCR (CVMX_ADD_IO_SEG(0x0001070000000F68ull))
99751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_THRESH_HI (CVMX_ADD_IO_SEG(0x0001070000000F58ull))
100751c9f68SDavid Daney #define CVMX_MIO_PTP_PPS_THRESH_LO (CVMX_ADD_IO_SEG(0x0001070000000F50ull))
101aa32a955SDavid Daney #define CVMX_MIO_PTP_TIMESTAMP (CVMX_ADD_IO_SEG(0x0001070000000F20ull))
102751c9f68SDavid Daney #define CVMX_MIO_QLMX_CFG(offset) (CVMX_ADD_IO_SEG(0x0001180000001590ull) + ((offset) & 7) * 8)
103aa32a955SDavid Daney #define CVMX_MIO_RST_BOOT (CVMX_ADD_IO_SEG(0x0001180000001600ull))
104aa32a955SDavid Daney #define CVMX_MIO_RST_CFG (CVMX_ADD_IO_SEG(0x0001180000001610ull))
105751c9f68SDavid Daney #define CVMX_MIO_RST_CKILL (CVMX_ADD_IO_SEG(0x0001180000001638ull))
106751c9f68SDavid Daney #define CVMX_MIO_RST_CNTLX(offset) (CVMX_ADD_IO_SEG(0x0001180000001648ull) + ((offset) & 3) * 8)
107aa32a955SDavid Daney #define CVMX_MIO_RST_CTLX(offset) (CVMX_ADD_IO_SEG(0x0001180000001618ull) + ((offset) & 1) * 8)
108aa32a955SDavid Daney #define CVMX_MIO_RST_DELAY (CVMX_ADD_IO_SEG(0x0001180000001608ull))
109aa32a955SDavid Daney #define CVMX_MIO_RST_INT (CVMX_ADD_IO_SEG(0x0001180000001628ull))
110aa32a955SDavid Daney #define CVMX_MIO_RST_INT_EN (CVMX_ADD_IO_SEG(0x0001180000001630ull))
111aa32a955SDavid Daney #define CVMX_MIO_TWSX_INT(offset) (CVMX_ADD_IO_SEG(0x0001180000001010ull) + ((offset) & 1) * 512)
112aa32a955SDavid Daney #define CVMX_MIO_TWSX_SW_TWSI(offset) (CVMX_ADD_IO_SEG(0x0001180000001000ull) + ((offset) & 1) * 512)
113aa32a955SDavid Daney #define CVMX_MIO_TWSX_SW_TWSI_EXT(offset) (CVMX_ADD_IO_SEG(0x0001180000001018ull) + ((offset) & 1) * 512)
114aa32a955SDavid Daney #define CVMX_MIO_TWSX_TWSI_SW(offset) (CVMX_ADD_IO_SEG(0x0001180000001008ull) + ((offset) & 1) * 512)
115aa32a955SDavid Daney #define CVMX_MIO_UART2_DLH (CVMX_ADD_IO_SEG(0x0001180000000488ull))
116aa32a955SDavid Daney #define CVMX_MIO_UART2_DLL (CVMX_ADD_IO_SEG(0x0001180000000480ull))
117aa32a955SDavid Daney #define CVMX_MIO_UART2_FAR (CVMX_ADD_IO_SEG(0x0001180000000520ull))
118aa32a955SDavid Daney #define CVMX_MIO_UART2_FCR (CVMX_ADD_IO_SEG(0x0001180000000450ull))
119aa32a955SDavid Daney #define CVMX_MIO_UART2_HTX (CVMX_ADD_IO_SEG(0x0001180000000708ull))
120aa32a955SDavid Daney #define CVMX_MIO_UART2_IER (CVMX_ADD_IO_SEG(0x0001180000000408ull))
121aa32a955SDavid Daney #define CVMX_MIO_UART2_IIR (CVMX_ADD_IO_SEG(0x0001180000000410ull))
122aa32a955SDavid Daney #define CVMX_MIO_UART2_LCR (CVMX_ADD_IO_SEG(0x0001180000000418ull))
123aa32a955SDavid Daney #define CVMX_MIO_UART2_LSR (CVMX_ADD_IO_SEG(0x0001180000000428ull))
124aa32a955SDavid Daney #define CVMX_MIO_UART2_MCR (CVMX_ADD_IO_SEG(0x0001180000000420ull))
125aa32a955SDavid Daney #define CVMX_MIO_UART2_MSR (CVMX_ADD_IO_SEG(0x0001180000000430ull))
126aa32a955SDavid Daney #define CVMX_MIO_UART2_RBR (CVMX_ADD_IO_SEG(0x0001180000000400ull))
127aa32a955SDavid Daney #define CVMX_MIO_UART2_RFL (CVMX_ADD_IO_SEG(0x0001180000000608ull))
128aa32a955SDavid Daney #define CVMX_MIO_UART2_RFW (CVMX_ADD_IO_SEG(0x0001180000000530ull))
129aa32a955SDavid Daney #define CVMX_MIO_UART2_SBCR (CVMX_ADD_IO_SEG(0x0001180000000620ull))
130aa32a955SDavid Daney #define CVMX_MIO_UART2_SCR (CVMX_ADD_IO_SEG(0x0001180000000438ull))
131aa32a955SDavid Daney #define CVMX_MIO_UART2_SFE (CVMX_ADD_IO_SEG(0x0001180000000630ull))
132aa32a955SDavid Daney #define CVMX_MIO_UART2_SRR (CVMX_ADD_IO_SEG(0x0001180000000610ull))
133aa32a955SDavid Daney #define CVMX_MIO_UART2_SRT (CVMX_ADD_IO_SEG(0x0001180000000638ull))
134aa32a955SDavid Daney #define CVMX_MIO_UART2_SRTS (CVMX_ADD_IO_SEG(0x0001180000000618ull))
135aa32a955SDavid Daney #define CVMX_MIO_UART2_STT (CVMX_ADD_IO_SEG(0x0001180000000700ull))
136aa32a955SDavid Daney #define CVMX_MIO_UART2_TFL (CVMX_ADD_IO_SEG(0x0001180000000600ull))
137aa32a955SDavid Daney #define CVMX_MIO_UART2_TFR (CVMX_ADD_IO_SEG(0x0001180000000528ull))
138aa32a955SDavid Daney #define CVMX_MIO_UART2_THR (CVMX_ADD_IO_SEG(0x0001180000000440ull))
139aa32a955SDavid Daney #define CVMX_MIO_UART2_USR (CVMX_ADD_IO_SEG(0x0001180000000538ull))
140aa32a955SDavid Daney #define CVMX_MIO_UARTX_DLH(offset) (CVMX_ADD_IO_SEG(0x0001180000000888ull) + ((offset) & 1) * 1024)
141aa32a955SDavid Daney #define CVMX_MIO_UARTX_DLL(offset) (CVMX_ADD_IO_SEG(0x0001180000000880ull) + ((offset) & 1) * 1024)
142aa32a955SDavid Daney #define CVMX_MIO_UARTX_FAR(offset) (CVMX_ADD_IO_SEG(0x0001180000000920ull) + ((offset) & 1) * 1024)
143aa32a955SDavid Daney #define CVMX_MIO_UARTX_FCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000850ull) + ((offset) & 1) * 1024)
144aa32a955SDavid Daney #define CVMX_MIO_UARTX_HTX(offset) (CVMX_ADD_IO_SEG(0x0001180000000B08ull) + ((offset) & 1) * 1024)
145aa32a955SDavid Daney #define CVMX_MIO_UARTX_IER(offset) (CVMX_ADD_IO_SEG(0x0001180000000808ull) + ((offset) & 1) * 1024)
146aa32a955SDavid Daney #define CVMX_MIO_UARTX_IIR(offset) (CVMX_ADD_IO_SEG(0x0001180000000810ull) + ((offset) & 1) * 1024)
147aa32a955SDavid Daney #define CVMX_MIO_UARTX_LCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000818ull) + ((offset) & 1) * 1024)
148aa32a955SDavid Daney #define CVMX_MIO_UARTX_LSR(offset) (CVMX_ADD_IO_SEG(0x0001180000000828ull) + ((offset) & 1) * 1024)
149aa32a955SDavid Daney #define CVMX_MIO_UARTX_MCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000820ull) + ((offset) & 1) * 1024)
150aa32a955SDavid Daney #define CVMX_MIO_UARTX_MSR(offset) (CVMX_ADD_IO_SEG(0x0001180000000830ull) + ((offset) & 1) * 1024)
151aa32a955SDavid Daney #define CVMX_MIO_UARTX_RBR(offset) (CVMX_ADD_IO_SEG(0x0001180000000800ull) + ((offset) & 1) * 1024)
152aa32a955SDavid Daney #define CVMX_MIO_UARTX_RFL(offset) (CVMX_ADD_IO_SEG(0x0001180000000A08ull) + ((offset) & 1) * 1024)
153aa32a955SDavid Daney #define CVMX_MIO_UARTX_RFW(offset) (CVMX_ADD_IO_SEG(0x0001180000000930ull) + ((offset) & 1) * 1024)
154aa32a955SDavid Daney #define CVMX_MIO_UARTX_SBCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000A20ull) + ((offset) & 1) * 1024)
155aa32a955SDavid Daney #define CVMX_MIO_UARTX_SCR(offset) (CVMX_ADD_IO_SEG(0x0001180000000838ull) + ((offset) & 1) * 1024)
156aa32a955SDavid Daney #define CVMX_MIO_UARTX_SFE(offset) (CVMX_ADD_IO_SEG(0x0001180000000A30ull) + ((offset) & 1) * 1024)
157aa32a955SDavid Daney #define CVMX_MIO_UARTX_SRR(offset) (CVMX_ADD_IO_SEG(0x0001180000000A10ull) + ((offset) & 1) * 1024)
158aa32a955SDavid Daney #define CVMX_MIO_UARTX_SRT(offset) (CVMX_ADD_IO_SEG(0x0001180000000A38ull) + ((offset) & 1) * 1024)
159aa32a955SDavid Daney #define CVMX_MIO_UARTX_SRTS(offset) (CVMX_ADD_IO_SEG(0x0001180000000A18ull) + ((offset) & 1) * 1024)
160aa32a955SDavid Daney #define CVMX_MIO_UARTX_STT(offset) (CVMX_ADD_IO_SEG(0x0001180000000B00ull) + ((offset) & 1) * 1024)
161aa32a955SDavid Daney #define CVMX_MIO_UARTX_TFL(offset) (CVMX_ADD_IO_SEG(0x0001180000000A00ull) + ((offset) & 1) * 1024)
162aa32a955SDavid Daney #define CVMX_MIO_UARTX_TFR(offset) (CVMX_ADD_IO_SEG(0x0001180000000928ull) + ((offset) & 1) * 1024)
163aa32a955SDavid Daney #define CVMX_MIO_UARTX_THR(offset) (CVMX_ADD_IO_SEG(0x0001180000000840ull) + ((offset) & 1) * 1024)
164aa32a955SDavid Daney #define CVMX_MIO_UARTX_USR(offset) (CVMX_ADD_IO_SEG(0x0001180000000938ull) + ((offset) & 1) * 1024)
16554293ec3SDavid Daney 
16654293ec3SDavid Daney union cvmx_mio_boot_bist_stat {
16754293ec3SDavid Daney 	uint64_t u64;
16854293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_s {
169aa32a955SDavid Daney 		uint64_t reserved_0_63:64;
17054293ec3SDavid Daney 	} s;
17154293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn30xx {
17254293ec3SDavid Daney 		uint64_t reserved_4_63:60;
17354293ec3SDavid Daney 		uint64_t ncbo_1:1;
17454293ec3SDavid Daney 		uint64_t ncbo_0:1;
17554293ec3SDavid Daney 		uint64_t loc:1;
17654293ec3SDavid Daney 		uint64_t ncbi:1;
17754293ec3SDavid Daney 	} cn30xx;
17854293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn30xx cn31xx;
17954293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn38xx {
18054293ec3SDavid Daney 		uint64_t reserved_3_63:61;
18154293ec3SDavid Daney 		uint64_t ncbo_0:1;
18254293ec3SDavid Daney 		uint64_t loc:1;
18354293ec3SDavid Daney 		uint64_t ncbi:1;
18454293ec3SDavid Daney 	} cn38xx;
18554293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn38xx cn38xxp2;
18654293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn50xx {
18754293ec3SDavid Daney 		uint64_t reserved_6_63:58;
18854293ec3SDavid Daney 		uint64_t pcm_1:1;
18954293ec3SDavid Daney 		uint64_t pcm_0:1;
19054293ec3SDavid Daney 		uint64_t ncbo_1:1;
19154293ec3SDavid Daney 		uint64_t ncbo_0:1;
19254293ec3SDavid Daney 		uint64_t loc:1;
19354293ec3SDavid Daney 		uint64_t ncbi:1;
19454293ec3SDavid Daney 	} cn50xx;
19554293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn52xx {
19654293ec3SDavid Daney 		uint64_t reserved_6_63:58;
19754293ec3SDavid Daney 		uint64_t ndf:2;
19854293ec3SDavid Daney 		uint64_t ncbo_0:1;
19954293ec3SDavid Daney 		uint64_t dma:1;
20054293ec3SDavid Daney 		uint64_t loc:1;
20154293ec3SDavid Daney 		uint64_t ncbi:1;
20254293ec3SDavid Daney 	} cn52xx;
20354293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn52xxp1 {
20454293ec3SDavid Daney 		uint64_t reserved_4_63:60;
20554293ec3SDavid Daney 		uint64_t ncbo_0:1;
20654293ec3SDavid Daney 		uint64_t dma:1;
20754293ec3SDavid Daney 		uint64_t loc:1;
20854293ec3SDavid Daney 		uint64_t ncbi:1;
20954293ec3SDavid Daney 	} cn52xxp1;
21054293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn52xxp1 cn56xx;
21154293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn52xxp1 cn56xxp1;
21254293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn38xx cn58xx;
21354293ec3SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn38xx cn58xxp1;
214751c9f68SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn61xx {
215751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
216751c9f68SDavid Daney 		uint64_t stat:12;
217751c9f68SDavid Daney 	} cn61xx;
218aa32a955SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn63xx {
219aa32a955SDavid Daney 		uint64_t reserved_9_63:55;
220aa32a955SDavid Daney 		uint64_t stat:9;
221aa32a955SDavid Daney 	} cn63xx;
222aa32a955SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn63xx cn63xxp1;
223751c9f68SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn66xx {
224751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
225751c9f68SDavid Daney 		uint64_t stat:10;
226751c9f68SDavid Daney 	} cn66xx;
227751c9f68SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn66xx cn68xx;
228751c9f68SDavid Daney 	struct cvmx_mio_boot_bist_stat_cn66xx cn68xxp1;
22954293ec3SDavid Daney };
23054293ec3SDavid Daney 
23154293ec3SDavid Daney union cvmx_mio_boot_comp {
23254293ec3SDavid Daney 	uint64_t u64;
23354293ec3SDavid Daney 	struct cvmx_mio_boot_comp_s {
234aa32a955SDavid Daney 		uint64_t reserved_0_63:64;
235aa32a955SDavid Daney 	} s;
236aa32a955SDavid Daney 	struct cvmx_mio_boot_comp_cn50xx {
23754293ec3SDavid Daney 		uint64_t reserved_10_63:54;
23854293ec3SDavid Daney 		uint64_t pctl:5;
23954293ec3SDavid Daney 		uint64_t nctl:5;
240aa32a955SDavid Daney 	} cn50xx;
241aa32a955SDavid Daney 	struct cvmx_mio_boot_comp_cn50xx cn52xx;
242aa32a955SDavid Daney 	struct cvmx_mio_boot_comp_cn50xx cn52xxp1;
243aa32a955SDavid Daney 	struct cvmx_mio_boot_comp_cn50xx cn56xx;
244aa32a955SDavid Daney 	struct cvmx_mio_boot_comp_cn50xx cn56xxp1;
245751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx {
246aa32a955SDavid Daney 		uint64_t reserved_12_63:52;
247aa32a955SDavid Daney 		uint64_t pctl:6;
248aa32a955SDavid Daney 		uint64_t nctl:6;
249751c9f68SDavid Daney 	} cn61xx;
250751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx cn63xx;
251751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx cn63xxp1;
252751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx cn66xx;
253751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx cn68xx;
254751c9f68SDavid Daney 	struct cvmx_mio_boot_comp_cn61xx cn68xxp1;
25554293ec3SDavid Daney };
25654293ec3SDavid Daney 
25754293ec3SDavid Daney union cvmx_mio_boot_dma_cfgx {
25854293ec3SDavid Daney 	uint64_t u64;
25954293ec3SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s {
26054293ec3SDavid Daney 		uint64_t en:1;
26154293ec3SDavid Daney 		uint64_t rw:1;
26254293ec3SDavid Daney 		uint64_t clr:1;
26354293ec3SDavid Daney 		uint64_t reserved_60_60:1;
26454293ec3SDavid Daney 		uint64_t swap32:1;
26554293ec3SDavid Daney 		uint64_t swap16:1;
26654293ec3SDavid Daney 		uint64_t swap8:1;
26754293ec3SDavid Daney 		uint64_t endian:1;
26854293ec3SDavid Daney 		uint64_t size:20;
26954293ec3SDavid Daney 		uint64_t adr:36;
27054293ec3SDavid Daney 	} s;
27154293ec3SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn52xx;
27254293ec3SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn52xxp1;
27354293ec3SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn56xx;
27454293ec3SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn56xxp1;
275751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn61xx;
276aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn63xx;
277aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn63xxp1;
278751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn66xx;
279751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn68xx;
280751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_cfgx_s cn68xxp1;
28154293ec3SDavid Daney };
28254293ec3SDavid Daney 
28354293ec3SDavid Daney union cvmx_mio_boot_dma_intx {
28454293ec3SDavid Daney 	uint64_t u64;
28554293ec3SDavid Daney 	struct cvmx_mio_boot_dma_intx_s {
28654293ec3SDavid Daney 		uint64_t reserved_2_63:62;
28754293ec3SDavid Daney 		uint64_t dmarq:1;
28854293ec3SDavid Daney 		uint64_t done:1;
28954293ec3SDavid Daney 	} s;
29054293ec3SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn52xx;
29154293ec3SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn52xxp1;
29254293ec3SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn56xx;
29354293ec3SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn56xxp1;
294751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn61xx;
295aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn63xx;
296aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn63xxp1;
297751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn66xx;
298751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn68xx;
299751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_intx_s cn68xxp1;
30054293ec3SDavid Daney };
30154293ec3SDavid Daney 
30254293ec3SDavid Daney union cvmx_mio_boot_dma_int_enx {
30354293ec3SDavid Daney 	uint64_t u64;
30454293ec3SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s {
30554293ec3SDavid Daney 		uint64_t reserved_2_63:62;
30654293ec3SDavid Daney 		uint64_t dmarq:1;
30754293ec3SDavid Daney 		uint64_t done:1;
30854293ec3SDavid Daney 	} s;
30954293ec3SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn52xx;
31054293ec3SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn52xxp1;
31154293ec3SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn56xx;
31254293ec3SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn56xxp1;
313751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn61xx;
314aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn63xx;
315aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn63xxp1;
316751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn66xx;
317751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn68xx;
318751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_int_enx_s cn68xxp1;
31954293ec3SDavid Daney };
32054293ec3SDavid Daney 
32154293ec3SDavid Daney union cvmx_mio_boot_dma_timx {
32254293ec3SDavid Daney 	uint64_t u64;
32354293ec3SDavid Daney 	struct cvmx_mio_boot_dma_timx_s {
32454293ec3SDavid Daney 		uint64_t dmack_pi:1;
32554293ec3SDavid Daney 		uint64_t dmarq_pi:1;
32654293ec3SDavid Daney 		uint64_t tim_mult:2;
32754293ec3SDavid Daney 		uint64_t rd_dly:3;
32854293ec3SDavid Daney 		uint64_t ddr:1;
32954293ec3SDavid Daney 		uint64_t width:1;
33054293ec3SDavid Daney 		uint64_t reserved_48_54:7;
33154293ec3SDavid Daney 		uint64_t pause:6;
33254293ec3SDavid Daney 		uint64_t dmack_h:6;
33354293ec3SDavid Daney 		uint64_t we_n:6;
33454293ec3SDavid Daney 		uint64_t we_a:6;
33554293ec3SDavid Daney 		uint64_t oe_n:6;
33654293ec3SDavid Daney 		uint64_t oe_a:6;
33754293ec3SDavid Daney 		uint64_t dmack_s:6;
33854293ec3SDavid Daney 		uint64_t dmarq:6;
33954293ec3SDavid Daney 	} s;
34054293ec3SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn52xx;
34154293ec3SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn52xxp1;
34254293ec3SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn56xx;
34354293ec3SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn56xxp1;
344751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn61xx;
345aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn63xx;
346aa32a955SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn63xxp1;
347751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn66xx;
348751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn68xx;
349751c9f68SDavid Daney 	struct cvmx_mio_boot_dma_timx_s cn68xxp1;
35054293ec3SDavid Daney };
35154293ec3SDavid Daney 
35254293ec3SDavid Daney union cvmx_mio_boot_err {
35354293ec3SDavid Daney 	uint64_t u64;
35454293ec3SDavid Daney 	struct cvmx_mio_boot_err_s {
35554293ec3SDavid Daney 		uint64_t reserved_2_63:62;
35654293ec3SDavid Daney 		uint64_t wait_err:1;
35754293ec3SDavid Daney 		uint64_t adr_err:1;
35854293ec3SDavid Daney 	} s;
35954293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn30xx;
36054293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn31xx;
36154293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn38xx;
36254293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn38xxp2;
36354293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn50xx;
36454293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn52xx;
36554293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn52xxp1;
36654293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn56xx;
36754293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn56xxp1;
36854293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn58xx;
36954293ec3SDavid Daney 	struct cvmx_mio_boot_err_s cn58xxp1;
370751c9f68SDavid Daney 	struct cvmx_mio_boot_err_s cn61xx;
371aa32a955SDavid Daney 	struct cvmx_mio_boot_err_s cn63xx;
372aa32a955SDavid Daney 	struct cvmx_mio_boot_err_s cn63xxp1;
373751c9f68SDavid Daney 	struct cvmx_mio_boot_err_s cn66xx;
374751c9f68SDavid Daney 	struct cvmx_mio_boot_err_s cn68xx;
375751c9f68SDavid Daney 	struct cvmx_mio_boot_err_s cn68xxp1;
37654293ec3SDavid Daney };
37754293ec3SDavid Daney 
37854293ec3SDavid Daney union cvmx_mio_boot_int {
37954293ec3SDavid Daney 	uint64_t u64;
38054293ec3SDavid Daney 	struct cvmx_mio_boot_int_s {
38154293ec3SDavid Daney 		uint64_t reserved_2_63:62;
38254293ec3SDavid Daney 		uint64_t wait_int:1;
38354293ec3SDavid Daney 		uint64_t adr_int:1;
38454293ec3SDavid Daney 	} s;
38554293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn30xx;
38654293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn31xx;
38754293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn38xx;
38854293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn38xxp2;
38954293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn50xx;
39054293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn52xx;
39154293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn52xxp1;
39254293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn56xx;
39354293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn56xxp1;
39454293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn58xx;
39554293ec3SDavid Daney 	struct cvmx_mio_boot_int_s cn58xxp1;
396751c9f68SDavid Daney 	struct cvmx_mio_boot_int_s cn61xx;
397aa32a955SDavid Daney 	struct cvmx_mio_boot_int_s cn63xx;
398aa32a955SDavid Daney 	struct cvmx_mio_boot_int_s cn63xxp1;
399751c9f68SDavid Daney 	struct cvmx_mio_boot_int_s cn66xx;
400751c9f68SDavid Daney 	struct cvmx_mio_boot_int_s cn68xx;
401751c9f68SDavid Daney 	struct cvmx_mio_boot_int_s cn68xxp1;
40254293ec3SDavid Daney };
40354293ec3SDavid Daney 
40454293ec3SDavid Daney union cvmx_mio_boot_loc_adr {
40554293ec3SDavid Daney 	uint64_t u64;
40654293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s {
40754293ec3SDavid Daney 		uint64_t reserved_8_63:56;
40854293ec3SDavid Daney 		uint64_t adr:5;
40954293ec3SDavid Daney 		uint64_t reserved_0_2:3;
41054293ec3SDavid Daney 	} s;
41154293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn30xx;
41254293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn31xx;
41354293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn38xx;
41454293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn38xxp2;
41554293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn50xx;
41654293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn52xx;
41754293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn52xxp1;
41854293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn56xx;
41954293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn56xxp1;
42054293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn58xx;
42154293ec3SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn58xxp1;
422751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn61xx;
423aa32a955SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn63xx;
424aa32a955SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn63xxp1;
425751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn66xx;
426751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn68xx;
427751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_adr_s cn68xxp1;
42854293ec3SDavid Daney };
42954293ec3SDavid Daney 
43054293ec3SDavid Daney union cvmx_mio_boot_loc_cfgx {
43154293ec3SDavid Daney 	uint64_t u64;
43254293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s {
43354293ec3SDavid Daney 		uint64_t reserved_32_63:32;
43454293ec3SDavid Daney 		uint64_t en:1;
43554293ec3SDavid Daney 		uint64_t reserved_28_30:3;
43654293ec3SDavid Daney 		uint64_t base:25;
43754293ec3SDavid Daney 		uint64_t reserved_0_2:3;
43854293ec3SDavid Daney 	} s;
43954293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn30xx;
44054293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn31xx;
44154293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn38xx;
44254293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn38xxp2;
44354293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn50xx;
44454293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn52xx;
44554293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn52xxp1;
44654293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn56xx;
44754293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn56xxp1;
44854293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn58xx;
44954293ec3SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn58xxp1;
450751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn61xx;
451aa32a955SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn63xx;
452aa32a955SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn63xxp1;
453751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn66xx;
454751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn68xx;
455751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_cfgx_s cn68xxp1;
45654293ec3SDavid Daney };
45754293ec3SDavid Daney 
45854293ec3SDavid Daney union cvmx_mio_boot_loc_dat {
45954293ec3SDavid Daney 	uint64_t u64;
46054293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s {
46154293ec3SDavid Daney 		uint64_t data:64;
46254293ec3SDavid Daney 	} s;
46354293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn30xx;
46454293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn31xx;
46554293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn38xx;
46654293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn38xxp2;
46754293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn50xx;
46854293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn52xx;
46954293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn52xxp1;
47054293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn56xx;
47154293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn56xxp1;
47254293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn58xx;
47354293ec3SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn58xxp1;
474751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn61xx;
475aa32a955SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn63xx;
476aa32a955SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn63xxp1;
477751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn66xx;
478751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn68xx;
479751c9f68SDavid Daney 	struct cvmx_mio_boot_loc_dat_s cn68xxp1;
48054293ec3SDavid Daney };
48154293ec3SDavid Daney 
48254293ec3SDavid Daney union cvmx_mio_boot_pin_defs {
48354293ec3SDavid Daney 	uint64_t u64;
48454293ec3SDavid Daney 	struct cvmx_mio_boot_pin_defs_s {
485751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
486751c9f68SDavid Daney 		uint64_t user1:16;
48754293ec3SDavid Daney 		uint64_t ale:1;
48854293ec3SDavid Daney 		uint64_t width:1;
48954293ec3SDavid Daney 		uint64_t dmack_p2:1;
49054293ec3SDavid Daney 		uint64_t dmack_p1:1;
49154293ec3SDavid Daney 		uint64_t dmack_p0:1;
49254293ec3SDavid Daney 		uint64_t term:2;
49354293ec3SDavid Daney 		uint64_t nand:1;
494751c9f68SDavid Daney 		uint64_t user0:8;
49554293ec3SDavid Daney 	} s;
49654293ec3SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx {
49754293ec3SDavid Daney 		uint64_t reserved_16_63:48;
49854293ec3SDavid Daney 		uint64_t ale:1;
49954293ec3SDavid Daney 		uint64_t width:1;
50054293ec3SDavid Daney 		uint64_t reserved_13_13:1;
50154293ec3SDavid Daney 		uint64_t dmack_p1:1;
50254293ec3SDavid Daney 		uint64_t dmack_p0:1;
50354293ec3SDavid Daney 		uint64_t term:2;
50454293ec3SDavid Daney 		uint64_t nand:1;
50554293ec3SDavid Daney 		uint64_t reserved_0_7:8;
50654293ec3SDavid Daney 	} cn52xx;
50754293ec3SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn56xx {
50854293ec3SDavid Daney 		uint64_t reserved_16_63:48;
50954293ec3SDavid Daney 		uint64_t ale:1;
51054293ec3SDavid Daney 		uint64_t width:1;
51154293ec3SDavid Daney 		uint64_t dmack_p2:1;
51254293ec3SDavid Daney 		uint64_t dmack_p1:1;
51354293ec3SDavid Daney 		uint64_t dmack_p0:1;
51454293ec3SDavid Daney 		uint64_t term:2;
51554293ec3SDavid Daney 		uint64_t reserved_0_8:9;
51654293ec3SDavid Daney 	} cn56xx;
517751c9f68SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn61xx {
518751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
519751c9f68SDavid Daney 		uint64_t user1:16;
520751c9f68SDavid Daney 		uint64_t ale:1;
521751c9f68SDavid Daney 		uint64_t width:1;
522751c9f68SDavid Daney 		uint64_t reserved_13_13:1;
523751c9f68SDavid Daney 		uint64_t dmack_p1:1;
524751c9f68SDavid Daney 		uint64_t dmack_p0:1;
525751c9f68SDavid Daney 		uint64_t term:2;
526751c9f68SDavid Daney 		uint64_t nand:1;
527751c9f68SDavid Daney 		uint64_t user0:8;
528751c9f68SDavid Daney 	} cn61xx;
529aa32a955SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx cn63xx;
530aa32a955SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx cn63xxp1;
531751c9f68SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx cn66xx;
532751c9f68SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx cn68xx;
533751c9f68SDavid Daney 	struct cvmx_mio_boot_pin_defs_cn52xx cn68xxp1;
53454293ec3SDavid Daney };
53554293ec3SDavid Daney 
53654293ec3SDavid Daney union cvmx_mio_boot_reg_cfgx {
53754293ec3SDavid Daney 	uint64_t u64;
53854293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s {
53954293ec3SDavid Daney 		uint64_t reserved_44_63:20;
54054293ec3SDavid Daney 		uint64_t dmack:2;
54154293ec3SDavid Daney 		uint64_t tim_mult:2;
54254293ec3SDavid Daney 		uint64_t rd_dly:3;
54354293ec3SDavid Daney 		uint64_t sam:1;
54454293ec3SDavid Daney 		uint64_t we_ext:2;
54554293ec3SDavid Daney 		uint64_t oe_ext:2;
54654293ec3SDavid Daney 		uint64_t en:1;
54754293ec3SDavid Daney 		uint64_t orbit:1;
54854293ec3SDavid Daney 		uint64_t ale:1;
54954293ec3SDavid Daney 		uint64_t width:1;
55054293ec3SDavid Daney 		uint64_t size:12;
55154293ec3SDavid Daney 		uint64_t base:16;
55254293ec3SDavid Daney 	} s;
55354293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn30xx {
55454293ec3SDavid Daney 		uint64_t reserved_37_63:27;
55554293ec3SDavid Daney 		uint64_t sam:1;
55654293ec3SDavid Daney 		uint64_t we_ext:2;
55754293ec3SDavid Daney 		uint64_t oe_ext:2;
55854293ec3SDavid Daney 		uint64_t en:1;
55954293ec3SDavid Daney 		uint64_t orbit:1;
56054293ec3SDavid Daney 		uint64_t ale:1;
56154293ec3SDavid Daney 		uint64_t width:1;
56254293ec3SDavid Daney 		uint64_t size:12;
56354293ec3SDavid Daney 		uint64_t base:16;
56454293ec3SDavid Daney 	} cn30xx;
56554293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn30xx cn31xx;
56654293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn38xx {
56754293ec3SDavid Daney 		uint64_t reserved_32_63:32;
56854293ec3SDavid Daney 		uint64_t en:1;
56954293ec3SDavid Daney 		uint64_t orbit:1;
57054293ec3SDavid Daney 		uint64_t reserved_28_29:2;
57154293ec3SDavid Daney 		uint64_t size:12;
57254293ec3SDavid Daney 		uint64_t base:16;
57354293ec3SDavid Daney 	} cn38xx;
57454293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn38xx cn38xxp2;
57554293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn50xx {
57654293ec3SDavid Daney 		uint64_t reserved_42_63:22;
57754293ec3SDavid Daney 		uint64_t tim_mult:2;
57854293ec3SDavid Daney 		uint64_t rd_dly:3;
57954293ec3SDavid Daney 		uint64_t sam:1;
58054293ec3SDavid Daney 		uint64_t we_ext:2;
58154293ec3SDavid Daney 		uint64_t oe_ext:2;
58254293ec3SDavid Daney 		uint64_t en:1;
58354293ec3SDavid Daney 		uint64_t orbit:1;
58454293ec3SDavid Daney 		uint64_t ale:1;
58554293ec3SDavid Daney 		uint64_t width:1;
58654293ec3SDavid Daney 		uint64_t size:12;
58754293ec3SDavid Daney 		uint64_t base:16;
58854293ec3SDavid Daney 	} cn50xx;
58954293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn52xx;
59054293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn52xxp1;
59154293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn56xx;
59254293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn56xxp1;
59354293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn30xx cn58xx;
59454293ec3SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_cn30xx cn58xxp1;
595751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn61xx;
596aa32a955SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn63xx;
597aa32a955SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn63xxp1;
598751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn66xx;
599751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn68xx;
600751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_cfgx_s cn68xxp1;
60154293ec3SDavid Daney };
60254293ec3SDavid Daney 
60354293ec3SDavid Daney union cvmx_mio_boot_reg_timx {
60454293ec3SDavid Daney 	uint64_t u64;
60554293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s {
60654293ec3SDavid Daney 		uint64_t pagem:1;
60754293ec3SDavid Daney 		uint64_t waitm:1;
60854293ec3SDavid Daney 		uint64_t pages:2;
60954293ec3SDavid Daney 		uint64_t ale:6;
61054293ec3SDavid Daney 		uint64_t page:6;
61154293ec3SDavid Daney 		uint64_t wait:6;
61254293ec3SDavid Daney 		uint64_t pause:6;
61354293ec3SDavid Daney 		uint64_t wr_hld:6;
61454293ec3SDavid Daney 		uint64_t rd_hld:6;
61554293ec3SDavid Daney 		uint64_t we:6;
61654293ec3SDavid Daney 		uint64_t oe:6;
61754293ec3SDavid Daney 		uint64_t ce:6;
61854293ec3SDavid Daney 		uint64_t adr:6;
61954293ec3SDavid Daney 	} s;
62054293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn30xx;
62154293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn31xx;
62254293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_cn38xx {
62354293ec3SDavid Daney 		uint64_t pagem:1;
62454293ec3SDavid Daney 		uint64_t waitm:1;
62554293ec3SDavid Daney 		uint64_t pages:2;
62654293ec3SDavid Daney 		uint64_t reserved_54_59:6;
62754293ec3SDavid Daney 		uint64_t page:6;
62854293ec3SDavid Daney 		uint64_t wait:6;
62954293ec3SDavid Daney 		uint64_t pause:6;
63054293ec3SDavid Daney 		uint64_t wr_hld:6;
63154293ec3SDavid Daney 		uint64_t rd_hld:6;
63254293ec3SDavid Daney 		uint64_t we:6;
63354293ec3SDavid Daney 		uint64_t oe:6;
63454293ec3SDavid Daney 		uint64_t ce:6;
63554293ec3SDavid Daney 		uint64_t adr:6;
63654293ec3SDavid Daney 	} cn38xx;
63754293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_cn38xx cn38xxp2;
63854293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn50xx;
63954293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn52xx;
64054293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn52xxp1;
64154293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn56xx;
64254293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn56xxp1;
64354293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn58xx;
64454293ec3SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn58xxp1;
645751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn61xx;
646aa32a955SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn63xx;
647aa32a955SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn63xxp1;
648751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn66xx;
649751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn68xx;
650751c9f68SDavid Daney 	struct cvmx_mio_boot_reg_timx_s cn68xxp1;
65154293ec3SDavid Daney };
65254293ec3SDavid Daney 
65354293ec3SDavid Daney union cvmx_mio_boot_thr {
65454293ec3SDavid Daney 	uint64_t u64;
65554293ec3SDavid Daney 	struct cvmx_mio_boot_thr_s {
65654293ec3SDavid Daney 		uint64_t reserved_22_63:42;
65754293ec3SDavid Daney 		uint64_t dma_thr:6;
65854293ec3SDavid Daney 		uint64_t reserved_14_15:2;
65954293ec3SDavid Daney 		uint64_t fif_cnt:6;
66054293ec3SDavid Daney 		uint64_t reserved_6_7:2;
66154293ec3SDavid Daney 		uint64_t fif_thr:6;
66254293ec3SDavid Daney 	} s;
66354293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx {
66454293ec3SDavid Daney 		uint64_t reserved_14_63:50;
66554293ec3SDavid Daney 		uint64_t fif_cnt:6;
66654293ec3SDavid Daney 		uint64_t reserved_6_7:2;
66754293ec3SDavid Daney 		uint64_t fif_thr:6;
66854293ec3SDavid Daney 	} cn30xx;
66954293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx cn31xx;
67054293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx cn38xx;
67154293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx cn38xxp2;
67254293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx cn50xx;
67354293ec3SDavid Daney 	struct cvmx_mio_boot_thr_s cn52xx;
67454293ec3SDavid Daney 	struct cvmx_mio_boot_thr_s cn52xxp1;
67554293ec3SDavid Daney 	struct cvmx_mio_boot_thr_s cn56xx;
67654293ec3SDavid Daney 	struct cvmx_mio_boot_thr_s cn56xxp1;
67754293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx cn58xx;
67854293ec3SDavid Daney 	struct cvmx_mio_boot_thr_cn30xx cn58xxp1;
679751c9f68SDavid Daney 	struct cvmx_mio_boot_thr_s cn61xx;
680aa32a955SDavid Daney 	struct cvmx_mio_boot_thr_s cn63xx;
681aa32a955SDavid Daney 	struct cvmx_mio_boot_thr_s cn63xxp1;
682751c9f68SDavid Daney 	struct cvmx_mio_boot_thr_s cn66xx;
683751c9f68SDavid Daney 	struct cvmx_mio_boot_thr_s cn68xx;
684751c9f68SDavid Daney 	struct cvmx_mio_boot_thr_s cn68xxp1;
685751c9f68SDavid Daney };
686751c9f68SDavid Daney 
687751c9f68SDavid Daney union cvmx_mio_emm_buf_dat {
688751c9f68SDavid Daney 	uint64_t u64;
689751c9f68SDavid Daney 	struct cvmx_mio_emm_buf_dat_s {
690751c9f68SDavid Daney 		uint64_t dat:64;
691751c9f68SDavid Daney 	} s;
692751c9f68SDavid Daney 	struct cvmx_mio_emm_buf_dat_s cn61xx;
693751c9f68SDavid Daney };
694751c9f68SDavid Daney 
695751c9f68SDavid Daney union cvmx_mio_emm_buf_idx {
696751c9f68SDavid Daney 	uint64_t u64;
697751c9f68SDavid Daney 	struct cvmx_mio_emm_buf_idx_s {
698751c9f68SDavid Daney 		uint64_t reserved_17_63:47;
699751c9f68SDavid Daney 		uint64_t inc:1;
700751c9f68SDavid Daney 		uint64_t reserved_7_15:9;
701751c9f68SDavid Daney 		uint64_t buf_num:1;
702751c9f68SDavid Daney 		uint64_t offset:6;
703751c9f68SDavid Daney 	} s;
704751c9f68SDavid Daney 	struct cvmx_mio_emm_buf_idx_s cn61xx;
705751c9f68SDavid Daney };
706751c9f68SDavid Daney 
707751c9f68SDavid Daney union cvmx_mio_emm_cfg {
708751c9f68SDavid Daney 	uint64_t u64;
709751c9f68SDavid Daney 	struct cvmx_mio_emm_cfg_s {
710751c9f68SDavid Daney 		uint64_t reserved_17_63:47;
711751c9f68SDavid Daney 		uint64_t boot_fail:1;
712751c9f68SDavid Daney 		uint64_t reserved_4_15:12;
713751c9f68SDavid Daney 		uint64_t bus_ena:4;
714751c9f68SDavid Daney 	} s;
715751c9f68SDavid Daney 	struct cvmx_mio_emm_cfg_s cn61xx;
716751c9f68SDavid Daney };
717751c9f68SDavid Daney 
718751c9f68SDavid Daney union cvmx_mio_emm_cmd {
719751c9f68SDavid Daney 	uint64_t u64;
720751c9f68SDavid Daney 	struct cvmx_mio_emm_cmd_s {
721751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
722751c9f68SDavid Daney 		uint64_t bus_id:2;
723751c9f68SDavid Daney 		uint64_t cmd_val:1;
724751c9f68SDavid Daney 		uint64_t reserved_56_58:3;
725751c9f68SDavid Daney 		uint64_t dbuf:1;
726751c9f68SDavid Daney 		uint64_t offset:6;
727751c9f68SDavid Daney 		uint64_t reserved_43_48:6;
728751c9f68SDavid Daney 		uint64_t ctype_xor:2;
729751c9f68SDavid Daney 		uint64_t rtype_xor:3;
730751c9f68SDavid Daney 		uint64_t cmd_idx:6;
731751c9f68SDavid Daney 		uint64_t arg:32;
732751c9f68SDavid Daney 	} s;
733751c9f68SDavid Daney 	struct cvmx_mio_emm_cmd_s cn61xx;
734751c9f68SDavid Daney };
735751c9f68SDavid Daney 
736751c9f68SDavid Daney union cvmx_mio_emm_dma {
737751c9f68SDavid Daney 	uint64_t u64;
738751c9f68SDavid Daney 	struct cvmx_mio_emm_dma_s {
739751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
740751c9f68SDavid Daney 		uint64_t bus_id:2;
741751c9f68SDavid Daney 		uint64_t dma_val:1;
742751c9f68SDavid Daney 		uint64_t sector:1;
743751c9f68SDavid Daney 		uint64_t dat_null:1;
744751c9f68SDavid Daney 		uint64_t thres:6;
745751c9f68SDavid Daney 		uint64_t rel_wr:1;
746751c9f68SDavid Daney 		uint64_t rw:1;
747751c9f68SDavid Daney 		uint64_t multi:1;
748751c9f68SDavid Daney 		uint64_t block_cnt:16;
749751c9f68SDavid Daney 		uint64_t card_addr:32;
750751c9f68SDavid Daney 	} s;
751751c9f68SDavid Daney 	struct cvmx_mio_emm_dma_s cn61xx;
752751c9f68SDavid Daney };
753751c9f68SDavid Daney 
754751c9f68SDavid Daney union cvmx_mio_emm_int {
755751c9f68SDavid Daney 	uint64_t u64;
756751c9f68SDavid Daney 	struct cvmx_mio_emm_int_s {
757751c9f68SDavid Daney 		uint64_t reserved_7_63:57;
758751c9f68SDavid Daney 		uint64_t switch_err:1;
759751c9f68SDavid Daney 		uint64_t switch_done:1;
760751c9f68SDavid Daney 		uint64_t dma_err:1;
761751c9f68SDavid Daney 		uint64_t cmd_err:1;
762751c9f68SDavid Daney 		uint64_t dma_done:1;
763751c9f68SDavid Daney 		uint64_t cmd_done:1;
764751c9f68SDavid Daney 		uint64_t buf_done:1;
765751c9f68SDavid Daney 	} s;
766751c9f68SDavid Daney 	struct cvmx_mio_emm_int_s cn61xx;
767751c9f68SDavid Daney };
768751c9f68SDavid Daney 
769751c9f68SDavid Daney union cvmx_mio_emm_int_en {
770751c9f68SDavid Daney 	uint64_t u64;
771751c9f68SDavid Daney 	struct cvmx_mio_emm_int_en_s {
772751c9f68SDavid Daney 		uint64_t reserved_7_63:57;
773751c9f68SDavid Daney 		uint64_t switch_err:1;
774751c9f68SDavid Daney 		uint64_t switch_done:1;
775751c9f68SDavid Daney 		uint64_t dma_err:1;
776751c9f68SDavid Daney 		uint64_t cmd_err:1;
777751c9f68SDavid Daney 		uint64_t dma_done:1;
778751c9f68SDavid Daney 		uint64_t cmd_done:1;
779751c9f68SDavid Daney 		uint64_t buf_done:1;
780751c9f68SDavid Daney 	} s;
781751c9f68SDavid Daney 	struct cvmx_mio_emm_int_en_s cn61xx;
782751c9f68SDavid Daney };
783751c9f68SDavid Daney 
784751c9f68SDavid Daney union cvmx_mio_emm_modex {
785751c9f68SDavid Daney 	uint64_t u64;
786751c9f68SDavid Daney 	struct cvmx_mio_emm_modex_s {
787751c9f68SDavid Daney 		uint64_t reserved_49_63:15;
788751c9f68SDavid Daney 		uint64_t hs_timing:1;
789751c9f68SDavid Daney 		uint64_t reserved_43_47:5;
790751c9f68SDavid Daney 		uint64_t bus_width:3;
791751c9f68SDavid Daney 		uint64_t reserved_36_39:4;
792751c9f68SDavid Daney 		uint64_t power_class:4;
793751c9f68SDavid Daney 		uint64_t clk_hi:16;
794751c9f68SDavid Daney 		uint64_t clk_lo:16;
795751c9f68SDavid Daney 	} s;
796751c9f68SDavid Daney 	struct cvmx_mio_emm_modex_s cn61xx;
797751c9f68SDavid Daney };
798751c9f68SDavid Daney 
799751c9f68SDavid Daney union cvmx_mio_emm_rca {
800751c9f68SDavid Daney 	uint64_t u64;
801751c9f68SDavid Daney 	struct cvmx_mio_emm_rca_s {
802751c9f68SDavid Daney 		uint64_t reserved_16_63:48;
803751c9f68SDavid Daney 		uint64_t card_rca:16;
804751c9f68SDavid Daney 	} s;
805751c9f68SDavid Daney 	struct cvmx_mio_emm_rca_s cn61xx;
806751c9f68SDavid Daney };
807751c9f68SDavid Daney 
808751c9f68SDavid Daney union cvmx_mio_emm_rsp_hi {
809751c9f68SDavid Daney 	uint64_t u64;
810751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_hi_s {
811751c9f68SDavid Daney 		uint64_t dat:64;
812751c9f68SDavid Daney 	} s;
813751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_hi_s cn61xx;
814751c9f68SDavid Daney };
815751c9f68SDavid Daney 
816751c9f68SDavid Daney union cvmx_mio_emm_rsp_lo {
817751c9f68SDavid Daney 	uint64_t u64;
818751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_lo_s {
819751c9f68SDavid Daney 		uint64_t dat:64;
820751c9f68SDavid Daney 	} s;
821751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_lo_s cn61xx;
822751c9f68SDavid Daney };
823751c9f68SDavid Daney 
824751c9f68SDavid Daney union cvmx_mio_emm_rsp_sts {
825751c9f68SDavid Daney 	uint64_t u64;
826751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_sts_s {
827751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
828751c9f68SDavid Daney 		uint64_t bus_id:2;
829751c9f68SDavid Daney 		uint64_t cmd_val:1;
830751c9f68SDavid Daney 		uint64_t switch_val:1;
831751c9f68SDavid Daney 		uint64_t dma_val:1;
832751c9f68SDavid Daney 		uint64_t dma_pend:1;
833751c9f68SDavid Daney 		uint64_t reserved_29_55:27;
834751c9f68SDavid Daney 		uint64_t dbuf_err:1;
835751c9f68SDavid Daney 		uint64_t reserved_24_27:4;
836751c9f68SDavid Daney 		uint64_t dbuf:1;
837751c9f68SDavid Daney 		uint64_t blk_timeout:1;
838751c9f68SDavid Daney 		uint64_t blk_crc_err:1;
839751c9f68SDavid Daney 		uint64_t rsp_busybit:1;
840751c9f68SDavid Daney 		uint64_t stp_timeout:1;
841751c9f68SDavid Daney 		uint64_t stp_crc_err:1;
842751c9f68SDavid Daney 		uint64_t stp_bad_sts:1;
843751c9f68SDavid Daney 		uint64_t stp_val:1;
844751c9f68SDavid Daney 		uint64_t rsp_timeout:1;
845751c9f68SDavid Daney 		uint64_t rsp_crc_err:1;
846751c9f68SDavid Daney 		uint64_t rsp_bad_sts:1;
847751c9f68SDavid Daney 		uint64_t rsp_val:1;
848751c9f68SDavid Daney 		uint64_t rsp_type:3;
849751c9f68SDavid Daney 		uint64_t cmd_type:2;
850751c9f68SDavid Daney 		uint64_t cmd_idx:6;
851751c9f68SDavid Daney 		uint64_t cmd_done:1;
852751c9f68SDavid Daney 	} s;
853751c9f68SDavid Daney 	struct cvmx_mio_emm_rsp_sts_s cn61xx;
854751c9f68SDavid Daney };
855751c9f68SDavid Daney 
856751c9f68SDavid Daney union cvmx_mio_emm_sample {
857751c9f68SDavid Daney 	uint64_t u64;
858751c9f68SDavid Daney 	struct cvmx_mio_emm_sample_s {
859751c9f68SDavid Daney 		uint64_t reserved_26_63:38;
860751c9f68SDavid Daney 		uint64_t cmd_cnt:10;
861751c9f68SDavid Daney 		uint64_t reserved_10_15:6;
862751c9f68SDavid Daney 		uint64_t dat_cnt:10;
863751c9f68SDavid Daney 	} s;
864751c9f68SDavid Daney 	struct cvmx_mio_emm_sample_s cn61xx;
865751c9f68SDavid Daney };
866751c9f68SDavid Daney 
867751c9f68SDavid Daney union cvmx_mio_emm_sts_mask {
868751c9f68SDavid Daney 	uint64_t u64;
869751c9f68SDavid Daney 	struct cvmx_mio_emm_sts_mask_s {
870751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
871751c9f68SDavid Daney 		uint64_t sts_msk:32;
872751c9f68SDavid Daney 	} s;
873751c9f68SDavid Daney 	struct cvmx_mio_emm_sts_mask_s cn61xx;
874751c9f68SDavid Daney };
875751c9f68SDavid Daney 
876751c9f68SDavid Daney union cvmx_mio_emm_switch {
877751c9f68SDavid Daney 	uint64_t u64;
878751c9f68SDavid Daney 	struct cvmx_mio_emm_switch_s {
879751c9f68SDavid Daney 		uint64_t reserved_62_63:2;
880751c9f68SDavid Daney 		uint64_t bus_id:2;
881751c9f68SDavid Daney 		uint64_t switch_exe:1;
882751c9f68SDavid Daney 		uint64_t switch_err0:1;
883751c9f68SDavid Daney 		uint64_t switch_err1:1;
884751c9f68SDavid Daney 		uint64_t switch_err2:1;
885751c9f68SDavid Daney 		uint64_t reserved_49_55:7;
886751c9f68SDavid Daney 		uint64_t hs_timing:1;
887751c9f68SDavid Daney 		uint64_t reserved_43_47:5;
888751c9f68SDavid Daney 		uint64_t bus_width:3;
889751c9f68SDavid Daney 		uint64_t reserved_36_39:4;
890751c9f68SDavid Daney 		uint64_t power_class:4;
891751c9f68SDavid Daney 		uint64_t clk_hi:16;
892751c9f68SDavid Daney 		uint64_t clk_lo:16;
893751c9f68SDavid Daney 	} s;
894751c9f68SDavid Daney 	struct cvmx_mio_emm_switch_s cn61xx;
895751c9f68SDavid Daney };
896751c9f68SDavid Daney 
897751c9f68SDavid Daney union cvmx_mio_emm_wdog {
898751c9f68SDavid Daney 	uint64_t u64;
899751c9f68SDavid Daney 	struct cvmx_mio_emm_wdog_s {
900751c9f68SDavid Daney 		uint64_t reserved_26_63:38;
901751c9f68SDavid Daney 		uint64_t clk_cnt:26;
902751c9f68SDavid Daney 	} s;
903751c9f68SDavid Daney 	struct cvmx_mio_emm_wdog_s cn61xx;
90454293ec3SDavid Daney };
90554293ec3SDavid Daney 
90654293ec3SDavid Daney union cvmx_mio_fus_bnk_datx {
90754293ec3SDavid Daney 	uint64_t u64;
90854293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s {
90954293ec3SDavid Daney 		uint64_t dat:64;
91054293ec3SDavid Daney 	} s;
91154293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn50xx;
91254293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn52xx;
91354293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn52xxp1;
91454293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn56xx;
91554293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn56xxp1;
91654293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn58xx;
91754293ec3SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn58xxp1;
918751c9f68SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn61xx;
919aa32a955SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn63xx;
920aa32a955SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn63xxp1;
921751c9f68SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn66xx;
922751c9f68SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn68xx;
923751c9f68SDavid Daney 	struct cvmx_mio_fus_bnk_datx_s cn68xxp1;
92454293ec3SDavid Daney };
92554293ec3SDavid Daney 
92654293ec3SDavid Daney union cvmx_mio_fus_dat0 {
92754293ec3SDavid Daney 	uint64_t u64;
92854293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s {
92954293ec3SDavid Daney 		uint64_t reserved_32_63:32;
93054293ec3SDavid Daney 		uint64_t man_info:32;
93154293ec3SDavid Daney 	} s;
93254293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn30xx;
93354293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn31xx;
93454293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn38xx;
93554293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn38xxp2;
93654293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn50xx;
93754293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn52xx;
93854293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn52xxp1;
93954293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn56xx;
94054293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn56xxp1;
94154293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn58xx;
94254293ec3SDavid Daney 	struct cvmx_mio_fus_dat0_s cn58xxp1;
943751c9f68SDavid Daney 	struct cvmx_mio_fus_dat0_s cn61xx;
944aa32a955SDavid Daney 	struct cvmx_mio_fus_dat0_s cn63xx;
945aa32a955SDavid Daney 	struct cvmx_mio_fus_dat0_s cn63xxp1;
946751c9f68SDavid Daney 	struct cvmx_mio_fus_dat0_s cn66xx;
947751c9f68SDavid Daney 	struct cvmx_mio_fus_dat0_s cn68xx;
948751c9f68SDavid Daney 	struct cvmx_mio_fus_dat0_s cn68xxp1;
94954293ec3SDavid Daney };
95054293ec3SDavid Daney 
95154293ec3SDavid Daney union cvmx_mio_fus_dat1 {
95254293ec3SDavid Daney 	uint64_t u64;
95354293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s {
95454293ec3SDavid Daney 		uint64_t reserved_32_63:32;
95554293ec3SDavid Daney 		uint64_t man_info:32;
95654293ec3SDavid Daney 	} s;
95754293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn30xx;
95854293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn31xx;
95954293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn38xx;
96054293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn38xxp2;
96154293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn50xx;
96254293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn52xx;
96354293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn52xxp1;
96454293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn56xx;
96554293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn56xxp1;
96654293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn58xx;
96754293ec3SDavid Daney 	struct cvmx_mio_fus_dat1_s cn58xxp1;
968751c9f68SDavid Daney 	struct cvmx_mio_fus_dat1_s cn61xx;
969aa32a955SDavid Daney 	struct cvmx_mio_fus_dat1_s cn63xx;
970aa32a955SDavid Daney 	struct cvmx_mio_fus_dat1_s cn63xxp1;
971751c9f68SDavid Daney 	struct cvmx_mio_fus_dat1_s cn66xx;
972751c9f68SDavid Daney 	struct cvmx_mio_fus_dat1_s cn68xx;
973751c9f68SDavid Daney 	struct cvmx_mio_fus_dat1_s cn68xxp1;
97454293ec3SDavid Daney };
97554293ec3SDavid Daney 
97654293ec3SDavid Daney union cvmx_mio_fus_dat2 {
97754293ec3SDavid Daney 	uint64_t u64;
97854293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_s {
979751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
980751c9f68SDavid Daney 		uint64_t fus118:1;
981751c9f68SDavid Daney 		uint64_t rom_info:10;
982751c9f68SDavid Daney 		uint64_t power_limit:2;
983aa32a955SDavid Daney 		uint64_t dorm_crypto:1;
98454293ec3SDavid Daney 		uint64_t fus318:1;
98554293ec3SDavid Daney 		uint64_t raid_en:1;
98654293ec3SDavid Daney 		uint64_t reserved_30_31:2;
98754293ec3SDavid Daney 		uint64_t nokasu:1;
98854293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
98954293ec3SDavid Daney 		uint64_t nomul:1;
99054293ec3SDavid Daney 		uint64_t nocrypto:1;
99154293ec3SDavid Daney 		uint64_t rst_sht:1;
99254293ec3SDavid Daney 		uint64_t bist_dis:1;
99354293ec3SDavid Daney 		uint64_t chip_id:8;
99454293ec3SDavid Daney 		uint64_t reserved_0_15:16;
99554293ec3SDavid Daney 	} s;
99654293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn30xx {
99754293ec3SDavid Daney 		uint64_t reserved_29_63:35;
99854293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
99954293ec3SDavid Daney 		uint64_t nomul:1;
100054293ec3SDavid Daney 		uint64_t nocrypto:1;
100154293ec3SDavid Daney 		uint64_t rst_sht:1;
100254293ec3SDavid Daney 		uint64_t bist_dis:1;
100354293ec3SDavid Daney 		uint64_t chip_id:8;
100454293ec3SDavid Daney 		uint64_t pll_off:4;
100554293ec3SDavid Daney 		uint64_t reserved_1_11:11;
100654293ec3SDavid Daney 		uint64_t pp_dis:1;
100754293ec3SDavid Daney 	} cn30xx;
100854293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn31xx {
100954293ec3SDavid Daney 		uint64_t reserved_29_63:35;
101054293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
101154293ec3SDavid Daney 		uint64_t nomul:1;
101254293ec3SDavid Daney 		uint64_t nocrypto:1;
101354293ec3SDavid Daney 		uint64_t rst_sht:1;
101454293ec3SDavid Daney 		uint64_t bist_dis:1;
101554293ec3SDavid Daney 		uint64_t chip_id:8;
101654293ec3SDavid Daney 		uint64_t pll_off:4;
101754293ec3SDavid Daney 		uint64_t reserved_2_11:10;
101854293ec3SDavid Daney 		uint64_t pp_dis:2;
101954293ec3SDavid Daney 	} cn31xx;
102054293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn38xx {
102154293ec3SDavid Daney 		uint64_t reserved_29_63:35;
102254293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
102354293ec3SDavid Daney 		uint64_t nomul:1;
102454293ec3SDavid Daney 		uint64_t nocrypto:1;
102554293ec3SDavid Daney 		uint64_t rst_sht:1;
102654293ec3SDavid Daney 		uint64_t bist_dis:1;
102754293ec3SDavid Daney 		uint64_t chip_id:8;
102854293ec3SDavid Daney 		uint64_t pp_dis:16;
102954293ec3SDavid Daney 	} cn38xx;
103054293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn38xx cn38xxp2;
103154293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn50xx {
103254293ec3SDavid Daney 		uint64_t reserved_34_63:30;
103354293ec3SDavid Daney 		uint64_t fus318:1;
103454293ec3SDavid Daney 		uint64_t raid_en:1;
103554293ec3SDavid Daney 		uint64_t reserved_30_31:2;
103654293ec3SDavid Daney 		uint64_t nokasu:1;
103754293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
103854293ec3SDavid Daney 		uint64_t nomul:1;
103954293ec3SDavid Daney 		uint64_t nocrypto:1;
104054293ec3SDavid Daney 		uint64_t rst_sht:1;
104154293ec3SDavid Daney 		uint64_t bist_dis:1;
104254293ec3SDavid Daney 		uint64_t chip_id:8;
104354293ec3SDavid Daney 		uint64_t reserved_2_15:14;
104454293ec3SDavid Daney 		uint64_t pp_dis:2;
104554293ec3SDavid Daney 	} cn50xx;
104654293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn52xx {
104754293ec3SDavid Daney 		uint64_t reserved_34_63:30;
104854293ec3SDavid Daney 		uint64_t fus318:1;
104954293ec3SDavid Daney 		uint64_t raid_en:1;
105054293ec3SDavid Daney 		uint64_t reserved_30_31:2;
105154293ec3SDavid Daney 		uint64_t nokasu:1;
105254293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
105354293ec3SDavid Daney 		uint64_t nomul:1;
105454293ec3SDavid Daney 		uint64_t nocrypto:1;
105554293ec3SDavid Daney 		uint64_t rst_sht:1;
105654293ec3SDavid Daney 		uint64_t bist_dis:1;
105754293ec3SDavid Daney 		uint64_t chip_id:8;
105854293ec3SDavid Daney 		uint64_t reserved_4_15:12;
105954293ec3SDavid Daney 		uint64_t pp_dis:4;
106054293ec3SDavid Daney 	} cn52xx;
106154293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn52xx cn52xxp1;
106254293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn56xx {
106354293ec3SDavid Daney 		uint64_t reserved_34_63:30;
106454293ec3SDavid Daney 		uint64_t fus318:1;
106554293ec3SDavid Daney 		uint64_t raid_en:1;
106654293ec3SDavid Daney 		uint64_t reserved_30_31:2;
106754293ec3SDavid Daney 		uint64_t nokasu:1;
106854293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
106954293ec3SDavid Daney 		uint64_t nomul:1;
107054293ec3SDavid Daney 		uint64_t nocrypto:1;
107154293ec3SDavid Daney 		uint64_t rst_sht:1;
107254293ec3SDavid Daney 		uint64_t bist_dis:1;
107354293ec3SDavid Daney 		uint64_t chip_id:8;
107454293ec3SDavid Daney 		uint64_t reserved_12_15:4;
107554293ec3SDavid Daney 		uint64_t pp_dis:12;
107654293ec3SDavid Daney 	} cn56xx;
107754293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn56xx cn56xxp1;
107854293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn58xx {
107954293ec3SDavid Daney 		uint64_t reserved_30_63:34;
108054293ec3SDavid Daney 		uint64_t nokasu:1;
108154293ec3SDavid Daney 		uint64_t nodfa_cp2:1;
108254293ec3SDavid Daney 		uint64_t nomul:1;
108354293ec3SDavid Daney 		uint64_t nocrypto:1;
108454293ec3SDavid Daney 		uint64_t rst_sht:1;
108554293ec3SDavid Daney 		uint64_t bist_dis:1;
108654293ec3SDavid Daney 		uint64_t chip_id:8;
108754293ec3SDavid Daney 		uint64_t pp_dis:16;
108854293ec3SDavid Daney 	} cn58xx;
108954293ec3SDavid Daney 	struct cvmx_mio_fus_dat2_cn58xx cn58xxp1;
1090751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn61xx {
1091751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
1092751c9f68SDavid Daney 		uint64_t fus118:1;
1093751c9f68SDavid Daney 		uint64_t rom_info:10;
1094751c9f68SDavid Daney 		uint64_t power_limit:2;
1095751c9f68SDavid Daney 		uint64_t dorm_crypto:1;
1096751c9f68SDavid Daney 		uint64_t fus318:1;
1097751c9f68SDavid Daney 		uint64_t raid_en:1;
1098751c9f68SDavid Daney 		uint64_t reserved_29_31:3;
1099751c9f68SDavid Daney 		uint64_t nodfa_cp2:1;
1100751c9f68SDavid Daney 		uint64_t nomul:1;
1101751c9f68SDavid Daney 		uint64_t nocrypto:1;
1102751c9f68SDavid Daney 		uint64_t reserved_24_25:2;
1103751c9f68SDavid Daney 		uint64_t chip_id:8;
1104751c9f68SDavid Daney 		uint64_t reserved_4_15:12;
1105751c9f68SDavid Daney 		uint64_t pp_dis:4;
1106751c9f68SDavid Daney 	} cn61xx;
1107aa32a955SDavid Daney 	struct cvmx_mio_fus_dat2_cn63xx {
1108aa32a955SDavid Daney 		uint64_t reserved_35_63:29;
1109aa32a955SDavid Daney 		uint64_t dorm_crypto:1;
1110aa32a955SDavid Daney 		uint64_t fus318:1;
1111aa32a955SDavid Daney 		uint64_t raid_en:1;
1112aa32a955SDavid Daney 		uint64_t reserved_29_31:3;
1113aa32a955SDavid Daney 		uint64_t nodfa_cp2:1;
1114aa32a955SDavid Daney 		uint64_t nomul:1;
1115aa32a955SDavid Daney 		uint64_t nocrypto:1;
1116aa32a955SDavid Daney 		uint64_t reserved_24_25:2;
1117aa32a955SDavid Daney 		uint64_t chip_id:8;
1118aa32a955SDavid Daney 		uint64_t reserved_6_15:10;
1119aa32a955SDavid Daney 		uint64_t pp_dis:6;
1120aa32a955SDavid Daney 	} cn63xx;
1121aa32a955SDavid Daney 	struct cvmx_mio_fus_dat2_cn63xx cn63xxp1;
1122751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn66xx {
1123751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
1124751c9f68SDavid Daney 		uint64_t fus118:1;
1125751c9f68SDavid Daney 		uint64_t rom_info:10;
1126751c9f68SDavid Daney 		uint64_t power_limit:2;
1127751c9f68SDavid Daney 		uint64_t dorm_crypto:1;
1128751c9f68SDavid Daney 		uint64_t fus318:1;
1129751c9f68SDavid Daney 		uint64_t raid_en:1;
1130751c9f68SDavid Daney 		uint64_t reserved_29_31:3;
1131751c9f68SDavid Daney 		uint64_t nodfa_cp2:1;
1132751c9f68SDavid Daney 		uint64_t nomul:1;
1133751c9f68SDavid Daney 		uint64_t nocrypto:1;
1134751c9f68SDavid Daney 		uint64_t reserved_24_25:2;
1135751c9f68SDavid Daney 		uint64_t chip_id:8;
1136751c9f68SDavid Daney 		uint64_t reserved_10_15:6;
1137751c9f68SDavid Daney 		uint64_t pp_dis:10;
1138751c9f68SDavid Daney 	} cn66xx;
1139751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn68xx {
1140751c9f68SDavid Daney 		uint64_t reserved_37_63:27;
1141751c9f68SDavid Daney 		uint64_t power_limit:2;
1142751c9f68SDavid Daney 		uint64_t dorm_crypto:1;
1143751c9f68SDavid Daney 		uint64_t fus318:1;
1144751c9f68SDavid Daney 		uint64_t raid_en:1;
1145751c9f68SDavid Daney 		uint64_t reserved_29_31:3;
1146751c9f68SDavid Daney 		uint64_t nodfa_cp2:1;
1147751c9f68SDavid Daney 		uint64_t nomul:1;
1148751c9f68SDavid Daney 		uint64_t nocrypto:1;
1149751c9f68SDavid Daney 		uint64_t reserved_24_25:2;
1150751c9f68SDavid Daney 		uint64_t chip_id:8;
1151751c9f68SDavid Daney 		uint64_t reserved_0_15:16;
1152751c9f68SDavid Daney 	} cn68xx;
1153751c9f68SDavid Daney 	struct cvmx_mio_fus_dat2_cn68xx cn68xxp1;
115454293ec3SDavid Daney };
115554293ec3SDavid Daney 
115654293ec3SDavid Daney union cvmx_mio_fus_dat3 {
115754293ec3SDavid Daney 	uint64_t u64;
115854293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_s {
1159aa32a955SDavid Daney 		uint64_t reserved_58_63:6;
1160aa32a955SDavid Daney 		uint64_t pll_ctl:10;
1161aa32a955SDavid Daney 		uint64_t dfa_info_dte:3;
1162aa32a955SDavid Daney 		uint64_t dfa_info_clm:4;
1163aa32a955SDavid Daney 		uint64_t reserved_40_40:1;
1164aa32a955SDavid Daney 		uint64_t ema:2;
1165aa32a955SDavid Daney 		uint64_t efus_lck_rsv:1;
1166aa32a955SDavid Daney 		uint64_t efus_lck_man:1;
1167aa32a955SDavid Daney 		uint64_t pll_half_dis:1;
1168aa32a955SDavid Daney 		uint64_t l2c_crip:3;
116954293ec3SDavid Daney 		uint64_t pll_div4:1;
1170aa32a955SDavid Daney 		uint64_t reserved_29_30:2;
117154293ec3SDavid Daney 		uint64_t bar2_en:1;
117254293ec3SDavid Daney 		uint64_t efus_lck:1;
117354293ec3SDavid Daney 		uint64_t efus_ign:1;
117454293ec3SDavid Daney 		uint64_t nozip:1;
117554293ec3SDavid Daney 		uint64_t nodfa_dte:1;
117654293ec3SDavid Daney 		uint64_t icache:24;
117754293ec3SDavid Daney 	} s;
117854293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn30xx {
117954293ec3SDavid Daney 		uint64_t reserved_32_63:32;
118054293ec3SDavid Daney 		uint64_t pll_div4:1;
118154293ec3SDavid Daney 		uint64_t reserved_29_30:2;
118254293ec3SDavid Daney 		uint64_t bar2_en:1;
118354293ec3SDavid Daney 		uint64_t efus_lck:1;
118454293ec3SDavid Daney 		uint64_t efus_ign:1;
118554293ec3SDavid Daney 		uint64_t nozip:1;
118654293ec3SDavid Daney 		uint64_t nodfa_dte:1;
118754293ec3SDavid Daney 		uint64_t icache:24;
118854293ec3SDavid Daney 	} cn30xx;
1189aa32a955SDavid Daney 	struct cvmx_mio_fus_dat3_cn31xx {
1190aa32a955SDavid Daney 		uint64_t reserved_32_63:32;
1191aa32a955SDavid Daney 		uint64_t pll_div4:1;
1192aa32a955SDavid Daney 		uint64_t zip_crip:2;
1193aa32a955SDavid Daney 		uint64_t bar2_en:1;
1194aa32a955SDavid Daney 		uint64_t efus_lck:1;
1195aa32a955SDavid Daney 		uint64_t efus_ign:1;
1196aa32a955SDavid Daney 		uint64_t nozip:1;
1197aa32a955SDavid Daney 		uint64_t nodfa_dte:1;
1198aa32a955SDavid Daney 		uint64_t icache:24;
1199aa32a955SDavid Daney 	} cn31xx;
120054293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx {
120154293ec3SDavid Daney 		uint64_t reserved_31_63:33;
120254293ec3SDavid Daney 		uint64_t zip_crip:2;
120354293ec3SDavid Daney 		uint64_t bar2_en:1;
120454293ec3SDavid Daney 		uint64_t efus_lck:1;
120554293ec3SDavid Daney 		uint64_t efus_ign:1;
120654293ec3SDavid Daney 		uint64_t nozip:1;
120754293ec3SDavid Daney 		uint64_t nodfa_dte:1;
120854293ec3SDavid Daney 		uint64_t icache:24;
120954293ec3SDavid Daney 	} cn38xx;
121054293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xxp2 {
121154293ec3SDavid Daney 		uint64_t reserved_29_63:35;
121254293ec3SDavid Daney 		uint64_t bar2_en:1;
121354293ec3SDavid Daney 		uint64_t efus_lck:1;
121454293ec3SDavid Daney 		uint64_t efus_ign:1;
121554293ec3SDavid Daney 		uint64_t nozip:1;
121654293ec3SDavid Daney 		uint64_t nodfa_dte:1;
121754293ec3SDavid Daney 		uint64_t icache:24;
121854293ec3SDavid Daney 	} cn38xxp2;
121954293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn50xx;
122054293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn52xx;
122154293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn52xxp1;
122254293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn56xx;
122354293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn56xxp1;
122454293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn58xx;
122554293ec3SDavid Daney 	struct cvmx_mio_fus_dat3_cn38xx cn58xxp1;
1226751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx {
1227aa32a955SDavid Daney 		uint64_t reserved_58_63:6;
1228aa32a955SDavid Daney 		uint64_t pll_ctl:10;
1229aa32a955SDavid Daney 		uint64_t dfa_info_dte:3;
1230aa32a955SDavid Daney 		uint64_t dfa_info_clm:4;
1231aa32a955SDavid Daney 		uint64_t reserved_40_40:1;
1232aa32a955SDavid Daney 		uint64_t ema:2;
1233aa32a955SDavid Daney 		uint64_t efus_lck_rsv:1;
1234aa32a955SDavid Daney 		uint64_t efus_lck_man:1;
1235aa32a955SDavid Daney 		uint64_t pll_half_dis:1;
1236aa32a955SDavid Daney 		uint64_t l2c_crip:3;
1237aa32a955SDavid Daney 		uint64_t reserved_31_31:1;
1238aa32a955SDavid Daney 		uint64_t zip_info:2;
1239aa32a955SDavid Daney 		uint64_t bar2_en:1;
1240aa32a955SDavid Daney 		uint64_t efus_lck:1;
1241aa32a955SDavid Daney 		uint64_t efus_ign:1;
1242aa32a955SDavid Daney 		uint64_t nozip:1;
1243aa32a955SDavid Daney 		uint64_t nodfa_dte:1;
1244aa32a955SDavid Daney 		uint64_t reserved_0_23:24;
1245751c9f68SDavid Daney 	} cn61xx;
1246751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx cn63xx;
1247751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx cn63xxp1;
1248751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx cn66xx;
1249751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx cn68xx;
1250751c9f68SDavid Daney 	struct cvmx_mio_fus_dat3_cn61xx cn68xxp1;
125154293ec3SDavid Daney };
125254293ec3SDavid Daney 
125354293ec3SDavid Daney union cvmx_mio_fus_ema {
125454293ec3SDavid Daney 	uint64_t u64;
125554293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s {
125654293ec3SDavid Daney 		uint64_t reserved_7_63:57;
125754293ec3SDavid Daney 		uint64_t eff_ema:3;
125854293ec3SDavid Daney 		uint64_t reserved_3_3:1;
125954293ec3SDavid Daney 		uint64_t ema:3;
126054293ec3SDavid Daney 	} s;
126154293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s cn50xx;
126254293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s cn52xx;
126354293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s cn52xxp1;
126454293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s cn56xx;
126554293ec3SDavid Daney 	struct cvmx_mio_fus_ema_s cn56xxp1;
126654293ec3SDavid Daney 	struct cvmx_mio_fus_ema_cn58xx {
126754293ec3SDavid Daney 		uint64_t reserved_2_63:62;
126854293ec3SDavid Daney 		uint64_t ema:2;
126954293ec3SDavid Daney 	} cn58xx;
127054293ec3SDavid Daney 	struct cvmx_mio_fus_ema_cn58xx cn58xxp1;
1271751c9f68SDavid Daney 	struct cvmx_mio_fus_ema_s cn61xx;
1272aa32a955SDavid Daney 	struct cvmx_mio_fus_ema_s cn63xx;
1273aa32a955SDavid Daney 	struct cvmx_mio_fus_ema_s cn63xxp1;
1274751c9f68SDavid Daney 	struct cvmx_mio_fus_ema_s cn66xx;
1275751c9f68SDavid Daney 	struct cvmx_mio_fus_ema_s cn68xx;
1276751c9f68SDavid Daney 	struct cvmx_mio_fus_ema_s cn68xxp1;
127754293ec3SDavid Daney };
127854293ec3SDavid Daney 
127954293ec3SDavid Daney union cvmx_mio_fus_pdf {
128054293ec3SDavid Daney 	uint64_t u64;
128154293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s {
128254293ec3SDavid Daney 		uint64_t pdf:64;
128354293ec3SDavid Daney 	} s;
128454293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s cn50xx;
128554293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s cn52xx;
128654293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s cn52xxp1;
128754293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s cn56xx;
128854293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s cn56xxp1;
128954293ec3SDavid Daney 	struct cvmx_mio_fus_pdf_s cn58xx;
1290751c9f68SDavid Daney 	struct cvmx_mio_fus_pdf_s cn61xx;
1291aa32a955SDavid Daney 	struct cvmx_mio_fus_pdf_s cn63xx;
1292aa32a955SDavid Daney 	struct cvmx_mio_fus_pdf_s cn63xxp1;
1293751c9f68SDavid Daney 	struct cvmx_mio_fus_pdf_s cn66xx;
1294751c9f68SDavid Daney 	struct cvmx_mio_fus_pdf_s cn68xx;
1295751c9f68SDavid Daney 	struct cvmx_mio_fus_pdf_s cn68xxp1;
129654293ec3SDavid Daney };
129754293ec3SDavid Daney 
129854293ec3SDavid Daney union cvmx_mio_fus_pll {
129954293ec3SDavid Daney 	uint64_t u64;
130054293ec3SDavid Daney 	struct cvmx_mio_fus_pll_s {
1301751c9f68SDavid Daney 		uint64_t reserved_48_63:16;
1302751c9f68SDavid Daney 		uint64_t rclk_align_r:8;
1303751c9f68SDavid Daney 		uint64_t rclk_align_l:8;
1304751c9f68SDavid Daney 		uint64_t reserved_8_31:24;
1305aa32a955SDavid Daney 		uint64_t c_cout_rst:1;
1306aa32a955SDavid Daney 		uint64_t c_cout_sel:2;
1307aa32a955SDavid Daney 		uint64_t pnr_cout_rst:1;
1308aa32a955SDavid Daney 		uint64_t pnr_cout_sel:2;
130954293ec3SDavid Daney 		uint64_t rfslip:1;
131054293ec3SDavid Daney 		uint64_t fbslip:1;
131154293ec3SDavid Daney 	} s;
1312aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx {
1313aa32a955SDavid Daney 		uint64_t reserved_2_63:62;
1314aa32a955SDavid Daney 		uint64_t rfslip:1;
1315aa32a955SDavid Daney 		uint64_t fbslip:1;
1316aa32a955SDavid Daney 	} cn50xx;
1317aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx cn52xx;
1318aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx cn52xxp1;
1319aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx cn56xx;
1320aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx cn56xxp1;
1321aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx cn58xx;
1322aa32a955SDavid Daney 	struct cvmx_mio_fus_pll_cn50xx cn58xxp1;
1323751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_cn61xx {
1324751c9f68SDavid Daney 		uint64_t reserved_8_63:56;
1325751c9f68SDavid Daney 		uint64_t c_cout_rst:1;
1326751c9f68SDavid Daney 		uint64_t c_cout_sel:2;
1327751c9f68SDavid Daney 		uint64_t pnr_cout_rst:1;
1328751c9f68SDavid Daney 		uint64_t pnr_cout_sel:2;
1329751c9f68SDavid Daney 		uint64_t rfslip:1;
1330751c9f68SDavid Daney 		uint64_t fbslip:1;
1331751c9f68SDavid Daney 	} cn61xx;
1332751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_cn61xx cn63xx;
1333751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_cn61xx cn63xxp1;
1334751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_cn61xx cn66xx;
1335751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_s cn68xx;
1336751c9f68SDavid Daney 	struct cvmx_mio_fus_pll_s cn68xxp1;
133754293ec3SDavid Daney };
133854293ec3SDavid Daney 
133954293ec3SDavid Daney union cvmx_mio_fus_prog {
134054293ec3SDavid Daney 	uint64_t u64;
134154293ec3SDavid Daney 	struct cvmx_mio_fus_prog_s {
1342aa32a955SDavid Daney 		uint64_t reserved_2_63:62;
1343aa32a955SDavid Daney 		uint64_t soft:1;
134454293ec3SDavid Daney 		uint64_t prog:1;
134554293ec3SDavid Daney 	} s;
1346aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx {
1347aa32a955SDavid Daney 		uint64_t reserved_1_63:63;
1348aa32a955SDavid Daney 		uint64_t prog:1;
1349aa32a955SDavid Daney 	} cn30xx;
1350aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn31xx;
1351aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn38xx;
1352aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn38xxp2;
1353aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn50xx;
1354aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn52xx;
1355aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn52xxp1;
1356aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn56xx;
1357aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn56xxp1;
1358aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn58xx;
1359aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_cn30xx cn58xxp1;
1360751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_s cn61xx;
1361aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_s cn63xx;
1362aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_s cn63xxp1;
1363751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_s cn66xx;
1364751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_s cn68xx;
1365751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_s cn68xxp1;
136654293ec3SDavid Daney };
136754293ec3SDavid Daney 
136854293ec3SDavid Daney union cvmx_mio_fus_prog_times {
136954293ec3SDavid Daney 	uint64_t u64;
137054293ec3SDavid Daney 	struct cvmx_mio_fus_prog_times_s {
1371aa32a955SDavid Daney 		uint64_t reserved_35_63:29;
1372aa32a955SDavid Daney 		uint64_t vgate_pin:1;
1373aa32a955SDavid Daney 		uint64_t fsrc_pin:1;
1374aa32a955SDavid Daney 		uint64_t prog_pin:1;
1375aa32a955SDavid Daney 		uint64_t reserved_6_31:26;
1376aa32a955SDavid Daney 		uint64_t setup:6;
1377aa32a955SDavid Daney 	} s;
1378aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx {
137954293ec3SDavid Daney 		uint64_t reserved_33_63:31;
138054293ec3SDavid Daney 		uint64_t prog_pin:1;
138154293ec3SDavid Daney 		uint64_t out:8;
138254293ec3SDavid Daney 		uint64_t sclk_lo:4;
138354293ec3SDavid Daney 		uint64_t sclk_hi:12;
138454293ec3SDavid Daney 		uint64_t setup:8;
1385aa32a955SDavid Daney 	} cn50xx;
1386aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx cn52xx;
1387aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx cn52xxp1;
1388aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx cn56xx;
1389aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx cn56xxp1;
1390aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx cn58xx;
1391aa32a955SDavid Daney 	struct cvmx_mio_fus_prog_times_cn50xx cn58xxp1;
1392751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx {
1393aa32a955SDavid Daney 		uint64_t reserved_35_63:29;
1394aa32a955SDavid Daney 		uint64_t vgate_pin:1;
1395aa32a955SDavid Daney 		uint64_t fsrc_pin:1;
1396aa32a955SDavid Daney 		uint64_t prog_pin:1;
1397aa32a955SDavid Daney 		uint64_t out:7;
1398aa32a955SDavid Daney 		uint64_t sclk_lo:4;
1399aa32a955SDavid Daney 		uint64_t sclk_hi:15;
1400aa32a955SDavid Daney 		uint64_t setup:6;
1401751c9f68SDavid Daney 	} cn61xx;
1402751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx cn63xx;
1403751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx cn63xxp1;
1404751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx cn66xx;
1405751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx cn68xx;
1406751c9f68SDavid Daney 	struct cvmx_mio_fus_prog_times_cn61xx cn68xxp1;
140754293ec3SDavid Daney };
140854293ec3SDavid Daney 
140954293ec3SDavid Daney union cvmx_mio_fus_rcmd {
141054293ec3SDavid Daney 	uint64_t u64;
141154293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_s {
141254293ec3SDavid Daney 		uint64_t reserved_24_63:40;
141354293ec3SDavid Daney 		uint64_t dat:8;
141454293ec3SDavid Daney 		uint64_t reserved_13_15:3;
141554293ec3SDavid Daney 		uint64_t pend:1;
141654293ec3SDavid Daney 		uint64_t reserved_9_11:3;
141754293ec3SDavid Daney 		uint64_t efuse:1;
141854293ec3SDavid Daney 		uint64_t addr:8;
141954293ec3SDavid Daney 	} s;
142054293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx {
142154293ec3SDavid Daney 		uint64_t reserved_24_63:40;
142254293ec3SDavid Daney 		uint64_t dat:8;
142354293ec3SDavid Daney 		uint64_t reserved_13_15:3;
142454293ec3SDavid Daney 		uint64_t pend:1;
142554293ec3SDavid Daney 		uint64_t reserved_9_11:3;
142654293ec3SDavid Daney 		uint64_t efuse:1;
142754293ec3SDavid Daney 		uint64_t reserved_7_7:1;
142854293ec3SDavid Daney 		uint64_t addr:7;
142954293ec3SDavid Daney 	} cn30xx;
143054293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx cn31xx;
143154293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx cn38xx;
143254293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx cn38xxp2;
143354293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx cn50xx;
143454293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn52xx;
143554293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn52xxp1;
143654293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn56xx;
143754293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn56xxp1;
143854293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx cn58xx;
143954293ec3SDavid Daney 	struct cvmx_mio_fus_rcmd_cn30xx cn58xxp1;
1440751c9f68SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn61xx;
1441aa32a955SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn63xx;
1442aa32a955SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn63xxp1;
1443751c9f68SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn66xx;
1444751c9f68SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn68xx;
1445751c9f68SDavid Daney 	struct cvmx_mio_fus_rcmd_s cn68xxp1;
1446aa32a955SDavid Daney };
1447aa32a955SDavid Daney 
1448aa32a955SDavid Daney union cvmx_mio_fus_read_times {
1449aa32a955SDavid Daney 	uint64_t u64;
1450aa32a955SDavid Daney 	struct cvmx_mio_fus_read_times_s {
1451aa32a955SDavid Daney 		uint64_t reserved_26_63:38;
1452aa32a955SDavid Daney 		uint64_t sch:4;
1453aa32a955SDavid Daney 		uint64_t fsh:4;
1454aa32a955SDavid Daney 		uint64_t prh:4;
1455aa32a955SDavid Daney 		uint64_t sdh:4;
1456aa32a955SDavid Daney 		uint64_t setup:10;
1457aa32a955SDavid Daney 	} s;
1458751c9f68SDavid Daney 	struct cvmx_mio_fus_read_times_s cn61xx;
1459aa32a955SDavid Daney 	struct cvmx_mio_fus_read_times_s cn63xx;
1460aa32a955SDavid Daney 	struct cvmx_mio_fus_read_times_s cn63xxp1;
1461751c9f68SDavid Daney 	struct cvmx_mio_fus_read_times_s cn66xx;
1462751c9f68SDavid Daney 	struct cvmx_mio_fus_read_times_s cn68xx;
1463751c9f68SDavid Daney 	struct cvmx_mio_fus_read_times_s cn68xxp1;
1464aa32a955SDavid Daney };
1465aa32a955SDavid Daney 
1466aa32a955SDavid Daney union cvmx_mio_fus_repair_res0 {
1467aa32a955SDavid Daney 	uint64_t u64;
1468aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res0_s {
1469aa32a955SDavid Daney 		uint64_t reserved_55_63:9;
1470aa32a955SDavid Daney 		uint64_t too_many:1;
1471aa32a955SDavid Daney 		uint64_t repair2:18;
1472aa32a955SDavid Daney 		uint64_t repair1:18;
1473aa32a955SDavid Daney 		uint64_t repair0:18;
1474aa32a955SDavid Daney 	} s;
1475751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res0_s cn61xx;
1476aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res0_s cn63xx;
1477aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res0_s cn63xxp1;
1478751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res0_s cn66xx;
1479751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res0_s cn68xx;
1480751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res0_s cn68xxp1;
1481aa32a955SDavid Daney };
1482aa32a955SDavid Daney 
1483aa32a955SDavid Daney union cvmx_mio_fus_repair_res1 {
1484aa32a955SDavid Daney 	uint64_t u64;
1485aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res1_s {
1486aa32a955SDavid Daney 		uint64_t reserved_54_63:10;
1487aa32a955SDavid Daney 		uint64_t repair5:18;
1488aa32a955SDavid Daney 		uint64_t repair4:18;
1489aa32a955SDavid Daney 		uint64_t repair3:18;
1490aa32a955SDavid Daney 	} s;
1491751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res1_s cn61xx;
1492aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res1_s cn63xx;
1493aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res1_s cn63xxp1;
1494751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res1_s cn66xx;
1495751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res1_s cn68xx;
1496751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res1_s cn68xxp1;
1497aa32a955SDavid Daney };
1498aa32a955SDavid Daney 
1499aa32a955SDavid Daney union cvmx_mio_fus_repair_res2 {
1500aa32a955SDavid Daney 	uint64_t u64;
1501aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res2_s {
1502aa32a955SDavid Daney 		uint64_t reserved_18_63:46;
1503aa32a955SDavid Daney 		uint64_t repair6:18;
1504aa32a955SDavid Daney 	} s;
1505751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res2_s cn61xx;
1506aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res2_s cn63xx;
1507aa32a955SDavid Daney 	struct cvmx_mio_fus_repair_res2_s cn63xxp1;
1508751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res2_s cn66xx;
1509751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res2_s cn68xx;
1510751c9f68SDavid Daney 	struct cvmx_mio_fus_repair_res2_s cn68xxp1;
151154293ec3SDavid Daney };
151254293ec3SDavid Daney 
151354293ec3SDavid Daney union cvmx_mio_fus_spr_repair_res {
151454293ec3SDavid Daney 	uint64_t u64;
151554293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s {
151654293ec3SDavid Daney 		uint64_t reserved_42_63:22;
151754293ec3SDavid Daney 		uint64_t repair2:14;
151854293ec3SDavid Daney 		uint64_t repair1:14;
151954293ec3SDavid Daney 		uint64_t repair0:14;
152054293ec3SDavid Daney 	} s;
152154293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn30xx;
152254293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn31xx;
152354293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn38xx;
152454293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn50xx;
152554293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn52xx;
152654293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn52xxp1;
152754293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn56xx;
152854293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn56xxp1;
152954293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn58xx;
153054293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn58xxp1;
1531751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn61xx;
1532aa32a955SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn63xx;
1533aa32a955SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn63xxp1;
1534751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn66xx;
1535751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn68xx;
1536751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_res_s cn68xxp1;
153754293ec3SDavid Daney };
153854293ec3SDavid Daney 
153954293ec3SDavid Daney union cvmx_mio_fus_spr_repair_sum {
154054293ec3SDavid Daney 	uint64_t u64;
154154293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s {
154254293ec3SDavid Daney 		uint64_t reserved_1_63:63;
154354293ec3SDavid Daney 		uint64_t too_many:1;
154454293ec3SDavid Daney 	} s;
154554293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn30xx;
154654293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn31xx;
154754293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn38xx;
154854293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn50xx;
154954293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn52xx;
155054293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn52xxp1;
155154293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn56xx;
155254293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn56xxp1;
155354293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn58xx;
155454293ec3SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn58xxp1;
1555751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn61xx;
1556aa32a955SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn63xx;
1557aa32a955SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn63xxp1;
1558751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn66xx;
1559751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn68xx;
1560751c9f68SDavid Daney 	struct cvmx_mio_fus_spr_repair_sum_s cn68xxp1;
1561751c9f68SDavid Daney };
1562751c9f68SDavid Daney 
1563751c9f68SDavid Daney union cvmx_mio_fus_tgg {
1564751c9f68SDavid Daney 	uint64_t u64;
1565751c9f68SDavid Daney 	struct cvmx_mio_fus_tgg_s {
1566751c9f68SDavid Daney 		uint64_t val:1;
1567751c9f68SDavid Daney 		uint64_t dat:63;
1568751c9f68SDavid Daney 	} s;
1569751c9f68SDavid Daney 	struct cvmx_mio_fus_tgg_s cn61xx;
1570751c9f68SDavid Daney 	struct cvmx_mio_fus_tgg_s cn66xx;
157154293ec3SDavid Daney };
157254293ec3SDavid Daney 
157354293ec3SDavid Daney union cvmx_mio_fus_unlock {
157454293ec3SDavid Daney 	uint64_t u64;
157554293ec3SDavid Daney 	struct cvmx_mio_fus_unlock_s {
157654293ec3SDavid Daney 		uint64_t reserved_24_63:40;
157754293ec3SDavid Daney 		uint64_t key:24;
157854293ec3SDavid Daney 	} s;
157954293ec3SDavid Daney 	struct cvmx_mio_fus_unlock_s cn30xx;
158054293ec3SDavid Daney 	struct cvmx_mio_fus_unlock_s cn31xx;
158154293ec3SDavid Daney };
158254293ec3SDavid Daney 
158354293ec3SDavid Daney union cvmx_mio_fus_wadr {
158454293ec3SDavid Daney 	uint64_t u64;
158554293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_s {
158654293ec3SDavid Daney 		uint64_t reserved_10_63:54;
158754293ec3SDavid Daney 		uint64_t addr:10;
158854293ec3SDavid Daney 	} s;
158954293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_s cn30xx;
159054293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_s cn31xx;
159154293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_s cn38xx;
159254293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_s cn38xxp2;
159354293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn50xx {
159454293ec3SDavid Daney 		uint64_t reserved_2_63:62;
159554293ec3SDavid Daney 		uint64_t addr:2;
159654293ec3SDavid Daney 	} cn50xx;
159754293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn52xx {
159854293ec3SDavid Daney 		uint64_t reserved_3_63:61;
159954293ec3SDavid Daney 		uint64_t addr:3;
160054293ec3SDavid Daney 	} cn52xx;
160154293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn52xx cn52xxp1;
160254293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn52xx cn56xx;
160354293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn52xx cn56xxp1;
160454293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn50xx cn58xx;
160554293ec3SDavid Daney 	struct cvmx_mio_fus_wadr_cn50xx cn58xxp1;
1606751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx {
1607aa32a955SDavid Daney 		uint64_t reserved_4_63:60;
1608aa32a955SDavid Daney 		uint64_t addr:4;
1609751c9f68SDavid Daney 	} cn61xx;
1610751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx cn63xx;
1611751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx cn63xxp1;
1612751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx cn66xx;
1613751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx cn68xx;
1614751c9f68SDavid Daney 	struct cvmx_mio_fus_wadr_cn61xx cn68xxp1;
1615aa32a955SDavid Daney };
1616aa32a955SDavid Daney 
1617aa32a955SDavid Daney union cvmx_mio_gpio_comp {
1618aa32a955SDavid Daney 	uint64_t u64;
1619aa32a955SDavid Daney 	struct cvmx_mio_gpio_comp_s {
1620aa32a955SDavid Daney 		uint64_t reserved_12_63:52;
1621aa32a955SDavid Daney 		uint64_t pctl:6;
1622aa32a955SDavid Daney 		uint64_t nctl:6;
1623aa32a955SDavid Daney 	} s;
1624751c9f68SDavid Daney 	struct cvmx_mio_gpio_comp_s cn61xx;
1625aa32a955SDavid Daney 	struct cvmx_mio_gpio_comp_s cn63xx;
1626aa32a955SDavid Daney 	struct cvmx_mio_gpio_comp_s cn63xxp1;
1627751c9f68SDavid Daney 	struct cvmx_mio_gpio_comp_s cn66xx;
1628751c9f68SDavid Daney 	struct cvmx_mio_gpio_comp_s cn68xx;
1629751c9f68SDavid Daney 	struct cvmx_mio_gpio_comp_s cn68xxp1;
163054293ec3SDavid Daney };
163154293ec3SDavid Daney 
163254293ec3SDavid Daney union cvmx_mio_ndf_dma_cfg {
163354293ec3SDavid Daney 	uint64_t u64;
163454293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s {
163554293ec3SDavid Daney 		uint64_t en:1;
163654293ec3SDavid Daney 		uint64_t rw:1;
163754293ec3SDavid Daney 		uint64_t clr:1;
163854293ec3SDavid Daney 		uint64_t reserved_60_60:1;
163954293ec3SDavid Daney 		uint64_t swap32:1;
164054293ec3SDavid Daney 		uint64_t swap16:1;
164154293ec3SDavid Daney 		uint64_t swap8:1;
164254293ec3SDavid Daney 		uint64_t endian:1;
164354293ec3SDavid Daney 		uint64_t size:20;
164454293ec3SDavid Daney 		uint64_t adr:36;
164554293ec3SDavid Daney 	} s;
164654293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn52xx;
1647751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn61xx;
1648aa32a955SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn63xx;
1649aa32a955SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn63xxp1;
1650751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn66xx;
1651751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn68xx;
1652751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_cfg_s cn68xxp1;
165354293ec3SDavid Daney };
165454293ec3SDavid Daney 
165554293ec3SDavid Daney union cvmx_mio_ndf_dma_int {
165654293ec3SDavid Daney 	uint64_t u64;
165754293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_int_s {
165854293ec3SDavid Daney 		uint64_t reserved_1_63:63;
165954293ec3SDavid Daney 		uint64_t done:1;
166054293ec3SDavid Daney 	} s;
166154293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn52xx;
1662751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn61xx;
1663aa32a955SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn63xx;
1664aa32a955SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn63xxp1;
1665751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn66xx;
1666751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn68xx;
1667751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_s cn68xxp1;
166854293ec3SDavid Daney };
166954293ec3SDavid Daney 
167054293ec3SDavid Daney union cvmx_mio_ndf_dma_int_en {
167154293ec3SDavid Daney 	uint64_t u64;
167254293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s {
167354293ec3SDavid Daney 		uint64_t reserved_1_63:63;
167454293ec3SDavid Daney 		uint64_t done:1;
167554293ec3SDavid Daney 	} s;
167654293ec3SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn52xx;
1677751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn61xx;
1678aa32a955SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn63xx;
1679aa32a955SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn63xxp1;
1680751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn66xx;
1681751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn68xx;
1682751c9f68SDavid Daney 	struct cvmx_mio_ndf_dma_int_en_s cn68xxp1;
168354293ec3SDavid Daney };
168454293ec3SDavid Daney 
168554293ec3SDavid Daney union cvmx_mio_pll_ctl {
168654293ec3SDavid Daney 	uint64_t u64;
168754293ec3SDavid Daney 	struct cvmx_mio_pll_ctl_s {
168854293ec3SDavid Daney 		uint64_t reserved_5_63:59;
168954293ec3SDavid Daney 		uint64_t bw_ctl:5;
169054293ec3SDavid Daney 	} s;
169154293ec3SDavid Daney 	struct cvmx_mio_pll_ctl_s cn30xx;
169254293ec3SDavid Daney 	struct cvmx_mio_pll_ctl_s cn31xx;
169354293ec3SDavid Daney };
169454293ec3SDavid Daney 
169554293ec3SDavid Daney union cvmx_mio_pll_setting {
169654293ec3SDavid Daney 	uint64_t u64;
169754293ec3SDavid Daney 	struct cvmx_mio_pll_setting_s {
169854293ec3SDavid Daney 		uint64_t reserved_17_63:47;
169954293ec3SDavid Daney 		uint64_t setting:17;
170054293ec3SDavid Daney 	} s;
170154293ec3SDavid Daney 	struct cvmx_mio_pll_setting_s cn30xx;
170254293ec3SDavid Daney 	struct cvmx_mio_pll_setting_s cn31xx;
170354293ec3SDavid Daney };
170454293ec3SDavid Daney 
1705751c9f68SDavid Daney union cvmx_mio_ptp_ckout_hi_incr {
1706751c9f68SDavid Daney 	uint64_t u64;
1707751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_hi_incr_s {
1708751c9f68SDavid Daney 		uint64_t nanosec:32;
1709751c9f68SDavid Daney 		uint64_t frnanosec:32;
1710751c9f68SDavid Daney 	} s;
1711751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_hi_incr_s cn61xx;
1712751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_hi_incr_s cn66xx;
1713751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_hi_incr_s cn68xx;
1714751c9f68SDavid Daney };
1715751c9f68SDavid Daney 
1716751c9f68SDavid Daney union cvmx_mio_ptp_ckout_lo_incr {
1717751c9f68SDavid Daney 	uint64_t u64;
1718751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_lo_incr_s {
1719751c9f68SDavid Daney 		uint64_t nanosec:32;
1720751c9f68SDavid Daney 		uint64_t frnanosec:32;
1721751c9f68SDavid Daney 	} s;
1722751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_lo_incr_s cn61xx;
1723751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_lo_incr_s cn66xx;
1724751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_lo_incr_s cn68xx;
1725751c9f68SDavid Daney };
1726751c9f68SDavid Daney 
1727751c9f68SDavid Daney union cvmx_mio_ptp_ckout_thresh_hi {
1728751c9f68SDavid Daney 	uint64_t u64;
1729751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_hi_s {
1730751c9f68SDavid Daney 		uint64_t nanosec:64;
1731751c9f68SDavid Daney 	} s;
1732751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_hi_s cn61xx;
1733751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_hi_s cn66xx;
1734751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_hi_s cn68xx;
1735751c9f68SDavid Daney };
1736751c9f68SDavid Daney 
1737751c9f68SDavid Daney union cvmx_mio_ptp_ckout_thresh_lo {
1738751c9f68SDavid Daney 	uint64_t u64;
1739751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_lo_s {
1740751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
1741751c9f68SDavid Daney 		uint64_t frnanosec:32;
1742751c9f68SDavid Daney 	} s;
1743751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_lo_s cn61xx;
1744751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_lo_s cn66xx;
1745751c9f68SDavid Daney 	struct cvmx_mio_ptp_ckout_thresh_lo_s cn68xx;
1746751c9f68SDavid Daney };
1747751c9f68SDavid Daney 
1748aa32a955SDavid Daney union cvmx_mio_ptp_clock_cfg {
1749aa32a955SDavid Daney 	uint64_t u64;
1750aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_s {
1751751c9f68SDavid Daney 		uint64_t reserved_42_63:22;
1752751c9f68SDavid Daney 		uint64_t pps:1;
1753751c9f68SDavid Daney 		uint64_t ckout:1;
1754751c9f68SDavid Daney 		uint64_t ext_clk_edge:2;
1755751c9f68SDavid Daney 		uint64_t ckout_out4:1;
1756751c9f68SDavid Daney 		uint64_t pps_out:5;
1757751c9f68SDavid Daney 		uint64_t pps_inv:1;
1758751c9f68SDavid Daney 		uint64_t pps_en:1;
1759751c9f68SDavid Daney 		uint64_t ckout_out:4;
1760751c9f68SDavid Daney 		uint64_t ckout_inv:1;
1761751c9f68SDavid Daney 		uint64_t ckout_en:1;
1762aa32a955SDavid Daney 		uint64_t evcnt_in:6;
1763aa32a955SDavid Daney 		uint64_t evcnt_edge:1;
1764aa32a955SDavid Daney 		uint64_t evcnt_en:1;
1765aa32a955SDavid Daney 		uint64_t tstmp_in:6;
1766aa32a955SDavid Daney 		uint64_t tstmp_edge:1;
1767aa32a955SDavid Daney 		uint64_t tstmp_en:1;
1768aa32a955SDavid Daney 		uint64_t ext_clk_in:6;
1769aa32a955SDavid Daney 		uint64_t ext_clk_en:1;
1770aa32a955SDavid Daney 		uint64_t ptp_en:1;
1771aa32a955SDavid Daney 	} s;
1772751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_s cn61xx;
1773751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_cn63xx {
1774751c9f68SDavid Daney 		uint64_t reserved_24_63:40;
1775751c9f68SDavid Daney 		uint64_t evcnt_in:6;
1776751c9f68SDavid Daney 		uint64_t evcnt_edge:1;
1777751c9f68SDavid Daney 		uint64_t evcnt_en:1;
1778751c9f68SDavid Daney 		uint64_t tstmp_in:6;
1779751c9f68SDavid Daney 		uint64_t tstmp_edge:1;
1780751c9f68SDavid Daney 		uint64_t tstmp_en:1;
1781751c9f68SDavid Daney 		uint64_t ext_clk_in:6;
1782751c9f68SDavid Daney 		uint64_t ext_clk_en:1;
1783751c9f68SDavid Daney 		uint64_t ptp_en:1;
1784751c9f68SDavid Daney 	} cn63xx;
1785751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_cn63xx cn63xxp1;
1786751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_cn66xx {
1787751c9f68SDavid Daney 		uint64_t reserved_40_63:24;
1788751c9f68SDavid Daney 		uint64_t ext_clk_edge:2;
1789751c9f68SDavid Daney 		uint64_t ckout_out4:1;
1790751c9f68SDavid Daney 		uint64_t pps_out:5;
1791751c9f68SDavid Daney 		uint64_t pps_inv:1;
1792751c9f68SDavid Daney 		uint64_t pps_en:1;
1793751c9f68SDavid Daney 		uint64_t ckout_out:4;
1794751c9f68SDavid Daney 		uint64_t ckout_inv:1;
1795751c9f68SDavid Daney 		uint64_t ckout_en:1;
1796751c9f68SDavid Daney 		uint64_t evcnt_in:6;
1797751c9f68SDavid Daney 		uint64_t evcnt_edge:1;
1798751c9f68SDavid Daney 		uint64_t evcnt_en:1;
1799751c9f68SDavid Daney 		uint64_t tstmp_in:6;
1800751c9f68SDavid Daney 		uint64_t tstmp_edge:1;
1801751c9f68SDavid Daney 		uint64_t tstmp_en:1;
1802751c9f68SDavid Daney 		uint64_t ext_clk_in:6;
1803751c9f68SDavid Daney 		uint64_t ext_clk_en:1;
1804751c9f68SDavid Daney 		uint64_t ptp_en:1;
1805751c9f68SDavid Daney 	} cn66xx;
1806751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_s cn68xx;
1807751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_cfg_cn63xx cn68xxp1;
1808aa32a955SDavid Daney };
1809aa32a955SDavid Daney 
1810aa32a955SDavid Daney union cvmx_mio_ptp_clock_comp {
1811aa32a955SDavid Daney 	uint64_t u64;
1812aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s {
1813aa32a955SDavid Daney 		uint64_t nanosec:32;
1814aa32a955SDavid Daney 		uint64_t frnanosec:32;
1815aa32a955SDavid Daney 	} s;
1816751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s cn61xx;
1817aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s cn63xx;
1818aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s cn63xxp1;
1819751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s cn66xx;
1820751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s cn68xx;
1821751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_comp_s cn68xxp1;
1822aa32a955SDavid Daney };
1823aa32a955SDavid Daney 
1824aa32a955SDavid Daney union cvmx_mio_ptp_clock_hi {
1825aa32a955SDavid Daney 	uint64_t u64;
1826aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s {
1827aa32a955SDavid Daney 		uint64_t nanosec:64;
1828aa32a955SDavid Daney 	} s;
1829751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s cn61xx;
1830aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s cn63xx;
1831aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s cn63xxp1;
1832751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s cn66xx;
1833751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s cn68xx;
1834751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_hi_s cn68xxp1;
1835aa32a955SDavid Daney };
1836aa32a955SDavid Daney 
1837aa32a955SDavid Daney union cvmx_mio_ptp_clock_lo {
1838aa32a955SDavid Daney 	uint64_t u64;
1839aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s {
1840aa32a955SDavid Daney 		uint64_t reserved_32_63:32;
1841aa32a955SDavid Daney 		uint64_t frnanosec:32;
1842aa32a955SDavid Daney 	} s;
1843751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s cn61xx;
1844aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s cn63xx;
1845aa32a955SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s cn63xxp1;
1846751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s cn66xx;
1847751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s cn68xx;
1848751c9f68SDavid Daney 	struct cvmx_mio_ptp_clock_lo_s cn68xxp1;
1849aa32a955SDavid Daney };
1850aa32a955SDavid Daney 
1851aa32a955SDavid Daney union cvmx_mio_ptp_evt_cnt {
1852aa32a955SDavid Daney 	uint64_t u64;
1853aa32a955SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s {
1854aa32a955SDavid Daney 		uint64_t cntr:64;
1855aa32a955SDavid Daney 	} s;
1856751c9f68SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s cn61xx;
1857aa32a955SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s cn63xx;
1858aa32a955SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s cn63xxp1;
1859751c9f68SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s cn66xx;
1860751c9f68SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s cn68xx;
1861751c9f68SDavid Daney 	struct cvmx_mio_ptp_evt_cnt_s cn68xxp1;
1862751c9f68SDavid Daney };
1863751c9f68SDavid Daney 
1864751c9f68SDavid Daney union cvmx_mio_ptp_pps_hi_incr {
1865751c9f68SDavid Daney 	uint64_t u64;
1866751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_hi_incr_s {
1867751c9f68SDavid Daney 		uint64_t nanosec:32;
1868751c9f68SDavid Daney 		uint64_t frnanosec:32;
1869751c9f68SDavid Daney 	} s;
1870751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_hi_incr_s cn61xx;
1871751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_hi_incr_s cn66xx;
1872751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_hi_incr_s cn68xx;
1873751c9f68SDavid Daney };
1874751c9f68SDavid Daney 
1875751c9f68SDavid Daney union cvmx_mio_ptp_pps_lo_incr {
1876751c9f68SDavid Daney 	uint64_t u64;
1877751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_lo_incr_s {
1878751c9f68SDavid Daney 		uint64_t nanosec:32;
1879751c9f68SDavid Daney 		uint64_t frnanosec:32;
1880751c9f68SDavid Daney 	} s;
1881751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_lo_incr_s cn61xx;
1882751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_lo_incr_s cn66xx;
1883751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_lo_incr_s cn68xx;
1884751c9f68SDavid Daney };
1885751c9f68SDavid Daney 
1886751c9f68SDavid Daney union cvmx_mio_ptp_pps_thresh_hi {
1887751c9f68SDavid Daney 	uint64_t u64;
1888751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_hi_s {
1889751c9f68SDavid Daney 		uint64_t nanosec:64;
1890751c9f68SDavid Daney 	} s;
1891751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_hi_s cn61xx;
1892751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_hi_s cn66xx;
1893751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_hi_s cn68xx;
1894751c9f68SDavid Daney };
1895751c9f68SDavid Daney 
1896751c9f68SDavid Daney union cvmx_mio_ptp_pps_thresh_lo {
1897751c9f68SDavid Daney 	uint64_t u64;
1898751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_lo_s {
1899751c9f68SDavid Daney 		uint64_t reserved_32_63:32;
1900751c9f68SDavid Daney 		uint64_t frnanosec:32;
1901751c9f68SDavid Daney 	} s;
1902751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_lo_s cn61xx;
1903751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_lo_s cn66xx;
1904751c9f68SDavid Daney 	struct cvmx_mio_ptp_pps_thresh_lo_s cn68xx;
1905aa32a955SDavid Daney };
1906aa32a955SDavid Daney 
1907aa32a955SDavid Daney union cvmx_mio_ptp_timestamp {
1908aa32a955SDavid Daney 	uint64_t u64;
1909aa32a955SDavid Daney 	struct cvmx_mio_ptp_timestamp_s {
1910aa32a955SDavid Daney 		uint64_t nanosec:64;
1911aa32a955SDavid Daney 	} s;
1912751c9f68SDavid Daney 	struct cvmx_mio_ptp_timestamp_s cn61xx;
1913aa32a955SDavid Daney 	struct cvmx_mio_ptp_timestamp_s cn63xx;
1914aa32a955SDavid Daney 	struct cvmx_mio_ptp_timestamp_s cn63xxp1;
1915751c9f68SDavid Daney 	struct cvmx_mio_ptp_timestamp_s cn66xx;
1916751c9f68SDavid Daney 	struct cvmx_mio_ptp_timestamp_s cn68xx;
1917751c9f68SDavid Daney 	struct cvmx_mio_ptp_timestamp_s cn68xxp1;
1918751c9f68SDavid Daney };
1919751c9f68SDavid Daney 
1920751c9f68SDavid Daney union cvmx_mio_qlmx_cfg {
1921751c9f68SDavid Daney 	uint64_t u64;
1922751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_s {
1923751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
1924751c9f68SDavid Daney 		uint64_t qlm_spd:4;
1925751c9f68SDavid Daney 		uint64_t reserved_4_7:4;
1926751c9f68SDavid Daney 		uint64_t qlm_cfg:4;
1927751c9f68SDavid Daney 	} s;
1928751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_cn61xx {
1929751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
1930751c9f68SDavid Daney 		uint64_t qlm_spd:4;
1931751c9f68SDavid Daney 		uint64_t reserved_2_7:6;
1932751c9f68SDavid Daney 		uint64_t qlm_cfg:2;
1933751c9f68SDavid Daney 	} cn61xx;
1934751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_s cn66xx;
1935751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_cn68xx {
1936751c9f68SDavid Daney 		uint64_t reserved_12_63:52;
1937751c9f68SDavid Daney 		uint64_t qlm_spd:4;
1938751c9f68SDavid Daney 		uint64_t reserved_3_7:5;
1939751c9f68SDavid Daney 		uint64_t qlm_cfg:3;
1940751c9f68SDavid Daney 	} cn68xx;
1941751c9f68SDavid Daney 	struct cvmx_mio_qlmx_cfg_cn68xx cn68xxp1;
1942aa32a955SDavid Daney };
1943aa32a955SDavid Daney 
1944aa32a955SDavid Daney union cvmx_mio_rst_boot {
1945aa32a955SDavid Daney 	uint64_t u64;
1946aa32a955SDavid Daney 	struct cvmx_mio_rst_boot_s {
1947751c9f68SDavid Daney 		uint64_t chipkill:1;
1948751c9f68SDavid Daney 		uint64_t jtcsrdis:1;
1949751c9f68SDavid Daney 		uint64_t ejtagdis:1;
1950751c9f68SDavid Daney 		uint64_t romen:1;
1951751c9f68SDavid Daney 		uint64_t ckill_ppdis:1;
1952751c9f68SDavid Daney 		uint64_t jt_tstmode:1;
1953751c9f68SDavid Daney 		uint64_t reserved_50_57:8;
1954751c9f68SDavid Daney 		uint64_t lboot_ext:2;
1955751c9f68SDavid Daney 		uint64_t reserved_44_47:4;
1956751c9f68SDavid Daney 		uint64_t qlm4_spd:4;
1957751c9f68SDavid Daney 		uint64_t qlm3_spd:4;
1958aa32a955SDavid Daney 		uint64_t c_mul:6;
1959aa32a955SDavid Daney 		uint64_t pnr_mul:6;
1960aa32a955SDavid Daney 		uint64_t qlm2_spd:4;
1961aa32a955SDavid Daney 		uint64_t qlm1_spd:4;
1962aa32a955SDavid Daney 		uint64_t qlm0_spd:4;
1963aa32a955SDavid Daney 		uint64_t lboot:10;
1964aa32a955SDavid Daney 		uint64_t rboot:1;
1965aa32a955SDavid Daney 		uint64_t rboot_pin:1;
1966aa32a955SDavid Daney 	} s;
1967751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn61xx {
1968751c9f68SDavid Daney 		uint64_t chipkill:1;
1969751c9f68SDavid Daney 		uint64_t jtcsrdis:1;
1970751c9f68SDavid Daney 		uint64_t ejtagdis:1;
1971751c9f68SDavid Daney 		uint64_t romen:1;
1972751c9f68SDavid Daney 		uint64_t ckill_ppdis:1;
1973751c9f68SDavid Daney 		uint64_t jt_tstmode:1;
1974751c9f68SDavid Daney 		uint64_t reserved_50_57:8;
1975751c9f68SDavid Daney 		uint64_t lboot_ext:2;
1976751c9f68SDavid Daney 		uint64_t reserved_36_47:12;
1977751c9f68SDavid Daney 		uint64_t c_mul:6;
1978751c9f68SDavid Daney 		uint64_t pnr_mul:6;
1979751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
1980751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
1981751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
1982751c9f68SDavid Daney 		uint64_t lboot:10;
1983751c9f68SDavid Daney 		uint64_t rboot:1;
1984751c9f68SDavid Daney 		uint64_t rboot_pin:1;
1985751c9f68SDavid Daney 	} cn61xx;
1986751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn63xx {
1987751c9f68SDavid Daney 		uint64_t reserved_36_63:28;
1988751c9f68SDavid Daney 		uint64_t c_mul:6;
1989751c9f68SDavid Daney 		uint64_t pnr_mul:6;
1990751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
1991751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
1992751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
1993751c9f68SDavid Daney 		uint64_t lboot:10;
1994751c9f68SDavid Daney 		uint64_t rboot:1;
1995751c9f68SDavid Daney 		uint64_t rboot_pin:1;
1996751c9f68SDavid Daney 	} cn63xx;
1997751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn63xx cn63xxp1;
1998751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn66xx {
1999751c9f68SDavid Daney 		uint64_t chipkill:1;
2000751c9f68SDavid Daney 		uint64_t jtcsrdis:1;
2001751c9f68SDavid Daney 		uint64_t ejtagdis:1;
2002751c9f68SDavid Daney 		uint64_t romen:1;
2003751c9f68SDavid Daney 		uint64_t ckill_ppdis:1;
2004751c9f68SDavid Daney 		uint64_t reserved_50_58:9;
2005751c9f68SDavid Daney 		uint64_t lboot_ext:2;
2006751c9f68SDavid Daney 		uint64_t reserved_36_47:12;
2007751c9f68SDavid Daney 		uint64_t c_mul:6;
2008751c9f68SDavid Daney 		uint64_t pnr_mul:6;
2009751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
2010751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
2011751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
2012751c9f68SDavid Daney 		uint64_t lboot:10;
2013751c9f68SDavid Daney 		uint64_t rboot:1;
2014751c9f68SDavid Daney 		uint64_t rboot_pin:1;
2015751c9f68SDavid Daney 	} cn66xx;
2016751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn68xx {
2017751c9f68SDavid Daney 		uint64_t reserved_59_63:5;
2018751c9f68SDavid Daney 		uint64_t jt_tstmode:1;
2019751c9f68SDavid Daney 		uint64_t reserved_44_57:14;
2020751c9f68SDavid Daney 		uint64_t qlm4_spd:4;
2021751c9f68SDavid Daney 		uint64_t qlm3_spd:4;
2022751c9f68SDavid Daney 		uint64_t c_mul:6;
2023751c9f68SDavid Daney 		uint64_t pnr_mul:6;
2024751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
2025751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
2026751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
2027751c9f68SDavid Daney 		uint64_t lboot:10;
2028751c9f68SDavid Daney 		uint64_t rboot:1;
2029751c9f68SDavid Daney 		uint64_t rboot_pin:1;
2030751c9f68SDavid Daney 	} cn68xx;
2031751c9f68SDavid Daney 	struct cvmx_mio_rst_boot_cn68xxp1 {
2032751c9f68SDavid Daney 		uint64_t reserved_44_63:20;
2033751c9f68SDavid Daney 		uint64_t qlm4_spd:4;
2034751c9f68SDavid Daney 		uint64_t qlm3_spd:4;
2035751c9f68SDavid Daney 		uint64_t c_mul:6;
2036751c9f68SDavid Daney 		uint64_t pnr_mul:6;
2037751c9f68SDavid Daney 		uint64_t qlm2_spd:4;
2038751c9f68SDavid Daney 		uint64_t qlm1_spd:4;
2039751c9f68SDavid Daney 		uint64_t qlm0_spd:4;
2040751c9f68SDavid Daney 		uint64_t lboot:10;
2041751c9f68SDavid Daney 		uint64_t rboot:1;
2042751c9f68SDavid Daney 		uint64_t rboot_pin:1;
2043751c9f68SDavid Daney 	} cn68xxp1;
2044aa32a955SDavid Daney };
2045aa32a955SDavid Daney 
2046aa32a955SDavid Daney union cvmx_mio_rst_cfg {
2047aa32a955SDavid Daney 	uint64_t u64;
2048aa32a955SDavid Daney 	struct cvmx_mio_rst_cfg_s {
2049751c9f68SDavid Daney 		uint64_t reserved_3_63:61;
2050751c9f68SDavid Daney 		uint64_t cntl_clr_bist:1;
2051751c9f68SDavid Daney 		uint64_t warm_clr_bist:1;
2052751c9f68SDavid Daney 		uint64_t soft_clr_bist:1;
2053751c9f68SDavid Daney 	} s;
2054751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn61xx {
2055aa32a955SDavid Daney 		uint64_t bist_delay:58;
2056aa32a955SDavid Daney 		uint64_t reserved_3_5:3;
2057aa32a955SDavid Daney 		uint64_t cntl_clr_bist:1;
2058aa32a955SDavid Daney 		uint64_t warm_clr_bist:1;
2059aa32a955SDavid Daney 		uint64_t soft_clr_bist:1;
2060751c9f68SDavid Daney 	} cn61xx;
2061751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn61xx cn63xx;
2062aa32a955SDavid Daney 	struct cvmx_mio_rst_cfg_cn63xxp1 {
2063aa32a955SDavid Daney 		uint64_t bist_delay:58;
2064aa32a955SDavid Daney 		uint64_t reserved_2_5:4;
2065aa32a955SDavid Daney 		uint64_t warm_clr_bist:1;
2066aa32a955SDavid Daney 		uint64_t soft_clr_bist:1;
2067aa32a955SDavid Daney 	} cn63xxp1;
2068751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn61xx cn66xx;
2069751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn68xx {
2070751c9f68SDavid Daney 		uint64_t bist_delay:56;
2071751c9f68SDavid Daney 		uint64_t reserved_3_7:5;
2072751c9f68SDavid Daney 		uint64_t cntl_clr_bist:1;
2073751c9f68SDavid Daney 		uint64_t warm_clr_bist:1;
2074751c9f68SDavid Daney 		uint64_t soft_clr_bist:1;
2075751c9f68SDavid Daney 	} cn68xx;
2076751c9f68SDavid Daney 	struct cvmx_mio_rst_cfg_cn68xx cn68xxp1;
2077aa32a955SDavid Daney };
2078aa32a955SDavid Daney 
2079751c9f68SDavid Daney union cvmx_mio_rst_ckill {
2080aa32a955SDavid Daney 	uint64_t u64;
2081751c9f68SDavid Daney 	struct cvmx_mio_rst_ckill_s {
2082751c9f68SDavid Daney 		uint64_t reserved_47_63:17;
2083751c9f68SDavid Daney 		uint64_t timer:47;
2084751c9f68SDavid Daney 	} s;
2085751c9f68SDavid Daney 	struct cvmx_mio_rst_ckill_s cn61xx;
2086751c9f68SDavid Daney 	struct cvmx_mio_rst_ckill_s cn66xx;
2087751c9f68SDavid Daney };
2088751c9f68SDavid Daney 
2089751c9f68SDavid Daney union cvmx_mio_rst_cntlx {
2090751c9f68SDavid Daney 	uint64_t u64;
2091751c9f68SDavid Daney 	struct cvmx_mio_rst_cntlx_s {
2092751c9f68SDavid Daney 		uint64_t reserved_13_63:51;
2093751c9f68SDavid Daney 		uint64_t in_rev_ln:1;
2094751c9f68SDavid Daney 		uint64_t rev_lanes:1;
2095751c9f68SDavid Daney 		uint64_t gen1_only:1;
2096aa32a955SDavid Daney 		uint64_t prst_link:1;
2097aa32a955SDavid Daney 		uint64_t rst_done:1;
2098aa32a955SDavid Daney 		uint64_t rst_link:1;
2099aa32a955SDavid Daney 		uint64_t host_mode:1;
2100aa32a955SDavid Daney 		uint64_t prtmode:2;
2101aa32a955SDavid Daney 		uint64_t rst_drv:1;
2102aa32a955SDavid Daney 		uint64_t rst_rcv:1;
2103aa32a955SDavid Daney 		uint64_t rst_chip:1;
2104aa32a955SDavid Daney 		uint64_t rst_val:1;
2105aa32a955SDavid Daney 	} s;
2106751c9f68SDavid Daney 	struct cvmx_mio_rst_cntlx_s cn61xx;
2107751c9f68SDavid Daney 	struct cvmx_mio_rst_cntlx_cn66xx {
2108751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
2109751c9f68SDavid Daney 		uint64_t prst_link:1;
2110751c9f68SDavid Daney 		uint64_t rst_done:1;
2111751c9f68SDavid Daney 		uint64_t rst_link:1;
2112751c9f68SDavid Daney 		uint64_t host_mode:1;
2113751c9f68SDavid Daney 		uint64_t prtmode:2;
2114751c9f68SDavid Daney 		uint64_t rst_drv:1;
2115751c9f68SDavid Daney 		uint64_t rst_rcv:1;
2116751c9f68SDavid Daney 		uint64_t rst_chip:1;
2117751c9f68SDavid Daney 		uint64_t rst_val:1;
2118751c9f68SDavid Daney 	} cn66xx;
2119751c9f68SDavid Daney 	struct cvmx_mio_rst_cntlx_cn66xx cn68xx;
2120751c9f68SDavid Daney };
2121751c9f68SDavid Daney 
2122751c9f68SDavid Daney union cvmx_mio_rst_ctlx {
2123751c9f68SDavid Daney 	uint64_t u64;
2124751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_s {
2125751c9f68SDavid Daney 		uint64_t reserved_13_63:51;
2126751c9f68SDavid Daney 		uint64_t in_rev_ln:1;
2127751c9f68SDavid Daney 		uint64_t rev_lanes:1;
2128751c9f68SDavid Daney 		uint64_t gen1_only:1;
2129751c9f68SDavid Daney 		uint64_t prst_link:1;
2130751c9f68SDavid Daney 		uint64_t rst_done:1;
2131751c9f68SDavid Daney 		uint64_t rst_link:1;
2132751c9f68SDavid Daney 		uint64_t host_mode:1;
2133751c9f68SDavid Daney 		uint64_t prtmode:2;
2134751c9f68SDavid Daney 		uint64_t rst_drv:1;
2135751c9f68SDavid Daney 		uint64_t rst_rcv:1;
2136751c9f68SDavid Daney 		uint64_t rst_chip:1;
2137751c9f68SDavid Daney 		uint64_t rst_val:1;
2138751c9f68SDavid Daney 	} s;
2139751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_s cn61xx;
2140751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xx {
2141751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
2142751c9f68SDavid Daney 		uint64_t prst_link:1;
2143751c9f68SDavid Daney 		uint64_t rst_done:1;
2144751c9f68SDavid Daney 		uint64_t rst_link:1;
2145751c9f68SDavid Daney 		uint64_t host_mode:1;
2146751c9f68SDavid Daney 		uint64_t prtmode:2;
2147751c9f68SDavid Daney 		uint64_t rst_drv:1;
2148751c9f68SDavid Daney 		uint64_t rst_rcv:1;
2149751c9f68SDavid Daney 		uint64_t rst_chip:1;
2150751c9f68SDavid Daney 		uint64_t rst_val:1;
2151751c9f68SDavid Daney 	} cn63xx;
2152aa32a955SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xxp1 {
2153aa32a955SDavid Daney 		uint64_t reserved_9_63:55;
2154aa32a955SDavid Daney 		uint64_t rst_done:1;
2155aa32a955SDavid Daney 		uint64_t rst_link:1;
2156aa32a955SDavid Daney 		uint64_t host_mode:1;
2157aa32a955SDavid Daney 		uint64_t prtmode:2;
2158aa32a955SDavid Daney 		uint64_t rst_drv:1;
2159aa32a955SDavid Daney 		uint64_t rst_rcv:1;
2160aa32a955SDavid Daney 		uint64_t rst_chip:1;
2161aa32a955SDavid Daney 		uint64_t rst_val:1;
2162aa32a955SDavid Daney 	} cn63xxp1;
2163751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xx cn66xx;
2164751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xx cn68xx;
2165751c9f68SDavid Daney 	struct cvmx_mio_rst_ctlx_cn63xx cn68xxp1;
2166aa32a955SDavid Daney };
2167aa32a955SDavid Daney 
2168aa32a955SDavid Daney union cvmx_mio_rst_delay {
2169aa32a955SDavid Daney 	uint64_t u64;
2170aa32a955SDavid Daney 	struct cvmx_mio_rst_delay_s {
2171aa32a955SDavid Daney 		uint64_t reserved_32_63:32;
2172aa32a955SDavid Daney 		uint64_t warm_rst_dly:16;
2173751c9f68SDavid Daney 		uint64_t soft_rst_dly:16;
2174aa32a955SDavid Daney 	} s;
2175751c9f68SDavid Daney 	struct cvmx_mio_rst_delay_s cn61xx;
2176aa32a955SDavid Daney 	struct cvmx_mio_rst_delay_s cn63xx;
2177aa32a955SDavid Daney 	struct cvmx_mio_rst_delay_s cn63xxp1;
2178751c9f68SDavid Daney 	struct cvmx_mio_rst_delay_s cn66xx;
2179751c9f68SDavid Daney 	struct cvmx_mio_rst_delay_s cn68xx;
2180751c9f68SDavid Daney 	struct cvmx_mio_rst_delay_s cn68xxp1;
2181aa32a955SDavid Daney };
2182aa32a955SDavid Daney 
2183aa32a955SDavid Daney union cvmx_mio_rst_int {
2184aa32a955SDavid Daney 	uint64_t u64;
2185aa32a955SDavid Daney 	struct cvmx_mio_rst_int_s {
2186aa32a955SDavid Daney 		uint64_t reserved_10_63:54;
2187aa32a955SDavid Daney 		uint64_t perst1:1;
2188aa32a955SDavid Daney 		uint64_t perst0:1;
2189751c9f68SDavid Daney 		uint64_t reserved_4_7:4;
2190751c9f68SDavid Daney 		uint64_t rst_link3:1;
2191751c9f68SDavid Daney 		uint64_t rst_link2:1;
2192aa32a955SDavid Daney 		uint64_t rst_link1:1;
2193aa32a955SDavid Daney 		uint64_t rst_link0:1;
2194aa32a955SDavid Daney 	} s;
2195751c9f68SDavid Daney 	struct cvmx_mio_rst_int_cn61xx {
2196751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
2197751c9f68SDavid Daney 		uint64_t perst1:1;
2198751c9f68SDavid Daney 		uint64_t perst0:1;
2199751c9f68SDavid Daney 		uint64_t reserved_2_7:6;
2200751c9f68SDavid Daney 		uint64_t rst_link1:1;
2201751c9f68SDavid Daney 		uint64_t rst_link0:1;
2202751c9f68SDavid Daney 	} cn61xx;
2203751c9f68SDavid Daney 	struct cvmx_mio_rst_int_cn61xx cn63xx;
2204751c9f68SDavid Daney 	struct cvmx_mio_rst_int_cn61xx cn63xxp1;
2205751c9f68SDavid Daney 	struct cvmx_mio_rst_int_s cn66xx;
2206751c9f68SDavid Daney 	struct cvmx_mio_rst_int_cn61xx cn68xx;
2207751c9f68SDavid Daney 	struct cvmx_mio_rst_int_cn61xx cn68xxp1;
2208aa32a955SDavid Daney };
2209aa32a955SDavid Daney 
2210aa32a955SDavid Daney union cvmx_mio_rst_int_en {
2211aa32a955SDavid Daney 	uint64_t u64;
2212aa32a955SDavid Daney 	struct cvmx_mio_rst_int_en_s {
2213aa32a955SDavid Daney 		uint64_t reserved_10_63:54;
2214aa32a955SDavid Daney 		uint64_t perst1:1;
2215aa32a955SDavid Daney 		uint64_t perst0:1;
2216751c9f68SDavid Daney 		uint64_t reserved_4_7:4;
2217751c9f68SDavid Daney 		uint64_t rst_link3:1;
2218751c9f68SDavid Daney 		uint64_t rst_link2:1;
2219aa32a955SDavid Daney 		uint64_t rst_link1:1;
2220aa32a955SDavid Daney 		uint64_t rst_link0:1;
2221aa32a955SDavid Daney 	} s;
2222751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_cn61xx {
2223751c9f68SDavid Daney 		uint64_t reserved_10_63:54;
2224751c9f68SDavid Daney 		uint64_t perst1:1;
2225751c9f68SDavid Daney 		uint64_t perst0:1;
2226751c9f68SDavid Daney 		uint64_t reserved_2_7:6;
2227751c9f68SDavid Daney 		uint64_t rst_link1:1;
2228751c9f68SDavid Daney 		uint64_t rst_link0:1;
2229751c9f68SDavid Daney 	} cn61xx;
2230751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_cn61xx cn63xx;
2231751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_cn61xx cn63xxp1;
2232751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_s cn66xx;
2233751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_cn61xx cn68xx;
2234751c9f68SDavid Daney 	struct cvmx_mio_rst_int_en_cn61xx cn68xxp1;
2235aa32a955SDavid Daney };
2236aa32a955SDavid Daney 
223754293ec3SDavid Daney union cvmx_mio_twsx_int {
223854293ec3SDavid Daney 	uint64_t u64;
223954293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s {
224054293ec3SDavid Daney 		uint64_t reserved_12_63:52;
224154293ec3SDavid Daney 		uint64_t scl:1;
224254293ec3SDavid Daney 		uint64_t sda:1;
224354293ec3SDavid Daney 		uint64_t scl_ovr:1;
224454293ec3SDavid Daney 		uint64_t sda_ovr:1;
224554293ec3SDavid Daney 		uint64_t reserved_7_7:1;
224654293ec3SDavid Daney 		uint64_t core_en:1;
224754293ec3SDavid Daney 		uint64_t ts_en:1;
224854293ec3SDavid Daney 		uint64_t st_en:1;
224954293ec3SDavid Daney 		uint64_t reserved_3_3:1;
225054293ec3SDavid Daney 		uint64_t core_int:1;
225154293ec3SDavid Daney 		uint64_t ts_int:1;
225254293ec3SDavid Daney 		uint64_t st_int:1;
225354293ec3SDavid Daney 	} s;
225454293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn30xx;
225554293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn31xx;
225654293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn38xx;
225754293ec3SDavid Daney 	struct cvmx_mio_twsx_int_cn38xxp2 {
225854293ec3SDavid Daney 		uint64_t reserved_7_63:57;
225954293ec3SDavid Daney 		uint64_t core_en:1;
226054293ec3SDavid Daney 		uint64_t ts_en:1;
226154293ec3SDavid Daney 		uint64_t st_en:1;
226254293ec3SDavid Daney 		uint64_t reserved_3_3:1;
226354293ec3SDavid Daney 		uint64_t core_int:1;
226454293ec3SDavid Daney 		uint64_t ts_int:1;
226554293ec3SDavid Daney 		uint64_t st_int:1;
226654293ec3SDavid Daney 	} cn38xxp2;
226754293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn50xx;
226854293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn52xx;
226954293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn52xxp1;
227054293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn56xx;
227154293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn56xxp1;
227254293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn58xx;
227354293ec3SDavid Daney 	struct cvmx_mio_twsx_int_s cn58xxp1;
2274751c9f68SDavid Daney 	struct cvmx_mio_twsx_int_s cn61xx;
2275aa32a955SDavid Daney 	struct cvmx_mio_twsx_int_s cn63xx;
2276aa32a955SDavid Daney 	struct cvmx_mio_twsx_int_s cn63xxp1;
2277751c9f68SDavid Daney 	struct cvmx_mio_twsx_int_s cn66xx;
2278751c9f68SDavid Daney 	struct cvmx_mio_twsx_int_s cn68xx;
2279751c9f68SDavid Daney 	struct cvmx_mio_twsx_int_s cn68xxp1;
228054293ec3SDavid Daney };
228154293ec3SDavid Daney 
228254293ec3SDavid Daney union cvmx_mio_twsx_sw_twsi {
228354293ec3SDavid Daney 	uint64_t u64;
228454293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s {
228554293ec3SDavid Daney 		uint64_t v:1;
228654293ec3SDavid Daney 		uint64_t slonly:1;
228754293ec3SDavid Daney 		uint64_t eia:1;
228854293ec3SDavid Daney 		uint64_t op:4;
228954293ec3SDavid Daney 		uint64_t r:1;
229054293ec3SDavid Daney 		uint64_t sovr:1;
229154293ec3SDavid Daney 		uint64_t size:3;
229254293ec3SDavid Daney 		uint64_t scr:2;
229354293ec3SDavid Daney 		uint64_t a:10;
229454293ec3SDavid Daney 		uint64_t ia:5;
229554293ec3SDavid Daney 		uint64_t eop_ia:3;
229654293ec3SDavid Daney 		uint64_t d:32;
229754293ec3SDavid Daney 	} s;
229854293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn30xx;
229954293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn31xx;
230054293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn38xx;
230154293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn38xxp2;
230254293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn50xx;
230354293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn52xx;
230454293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn52xxp1;
230554293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn56xx;
230654293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn56xxp1;
230754293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn58xx;
230854293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn58xxp1;
2309751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn61xx;
2310aa32a955SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn63xx;
2311aa32a955SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn63xxp1;
2312751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn66xx;
2313751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn68xx;
2314751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_s cn68xxp1;
231554293ec3SDavid Daney };
231654293ec3SDavid Daney 
231754293ec3SDavid Daney union cvmx_mio_twsx_sw_twsi_ext {
231854293ec3SDavid Daney 	uint64_t u64;
231954293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s {
232054293ec3SDavid Daney 		uint64_t reserved_40_63:24;
232154293ec3SDavid Daney 		uint64_t ia:8;
232254293ec3SDavid Daney 		uint64_t d:32;
232354293ec3SDavid Daney 	} s;
232454293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn30xx;
232554293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn31xx;
232654293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn38xx;
232754293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn38xxp2;
232854293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn50xx;
232954293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn52xx;
233054293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn52xxp1;
233154293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn56xx;
233254293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn56xxp1;
233354293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn58xx;
233454293ec3SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn58xxp1;
2335751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn61xx;
2336aa32a955SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn63xx;
2337aa32a955SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn63xxp1;
2338751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn66xx;
2339751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn68xx;
2340751c9f68SDavid Daney 	struct cvmx_mio_twsx_sw_twsi_ext_s cn68xxp1;
234154293ec3SDavid Daney };
234254293ec3SDavid Daney 
234354293ec3SDavid Daney union cvmx_mio_twsx_twsi_sw {
234454293ec3SDavid Daney 	uint64_t u64;
234554293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s {
234654293ec3SDavid Daney 		uint64_t v:2;
234754293ec3SDavid Daney 		uint64_t reserved_32_61:30;
234854293ec3SDavid Daney 		uint64_t d:32;
234954293ec3SDavid Daney 	} s;
235054293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn30xx;
235154293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn31xx;
235254293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn38xx;
235354293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn38xxp2;
235454293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn50xx;
235554293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn52xx;
235654293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn52xxp1;
235754293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn56xx;
235854293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn56xxp1;
235954293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn58xx;
236054293ec3SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn58xxp1;
2361751c9f68SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn61xx;
2362aa32a955SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn63xx;
2363aa32a955SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn63xxp1;
2364751c9f68SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn66xx;
2365751c9f68SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn68xx;
2366751c9f68SDavid Daney 	struct cvmx_mio_twsx_twsi_sw_s cn68xxp1;
236754293ec3SDavid Daney };
236854293ec3SDavid Daney 
236954293ec3SDavid Daney union cvmx_mio_uartx_dlh {
237054293ec3SDavid Daney 	uint64_t u64;
237154293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s {
237254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
237354293ec3SDavid Daney 		uint64_t dlh:8;
237454293ec3SDavid Daney 	} s;
237554293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn30xx;
237654293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn31xx;
237754293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn38xx;
237854293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn38xxp2;
237954293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn50xx;
238054293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn52xx;
238154293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn52xxp1;
238254293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn56xx;
238354293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn56xxp1;
238454293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn58xx;
238554293ec3SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn58xxp1;
2386751c9f68SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn61xx;
2387aa32a955SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn63xx;
2388aa32a955SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn63xxp1;
2389751c9f68SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn66xx;
2390751c9f68SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn68xx;
2391751c9f68SDavid Daney 	struct cvmx_mio_uartx_dlh_s cn68xxp1;
239254293ec3SDavid Daney };
239354293ec3SDavid Daney 
239454293ec3SDavid Daney union cvmx_mio_uartx_dll {
239554293ec3SDavid Daney 	uint64_t u64;
239654293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s {
239754293ec3SDavid Daney 		uint64_t reserved_8_63:56;
239854293ec3SDavid Daney 		uint64_t dll:8;
239954293ec3SDavid Daney 	} s;
240054293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn30xx;
240154293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn31xx;
240254293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn38xx;
240354293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn38xxp2;
240454293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn50xx;
240554293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn52xx;
240654293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn52xxp1;
240754293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn56xx;
240854293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn56xxp1;
240954293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn58xx;
241054293ec3SDavid Daney 	struct cvmx_mio_uartx_dll_s cn58xxp1;
2411751c9f68SDavid Daney 	struct cvmx_mio_uartx_dll_s cn61xx;
2412aa32a955SDavid Daney 	struct cvmx_mio_uartx_dll_s cn63xx;
2413aa32a955SDavid Daney 	struct cvmx_mio_uartx_dll_s cn63xxp1;
2414751c9f68SDavid Daney 	struct cvmx_mio_uartx_dll_s cn66xx;
2415751c9f68SDavid Daney 	struct cvmx_mio_uartx_dll_s cn68xx;
2416751c9f68SDavid Daney 	struct cvmx_mio_uartx_dll_s cn68xxp1;
241754293ec3SDavid Daney };
241854293ec3SDavid Daney 
241954293ec3SDavid Daney union cvmx_mio_uartx_far {
242054293ec3SDavid Daney 	uint64_t u64;
242154293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s {
242254293ec3SDavid Daney 		uint64_t reserved_1_63:63;
242354293ec3SDavid Daney 		uint64_t far:1;
242454293ec3SDavid Daney 	} s;
242554293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn30xx;
242654293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn31xx;
242754293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn38xx;
242854293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn38xxp2;
242954293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn50xx;
243054293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn52xx;
243154293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn52xxp1;
243254293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn56xx;
243354293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn56xxp1;
243454293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn58xx;
243554293ec3SDavid Daney 	struct cvmx_mio_uartx_far_s cn58xxp1;
2436751c9f68SDavid Daney 	struct cvmx_mio_uartx_far_s cn61xx;
2437aa32a955SDavid Daney 	struct cvmx_mio_uartx_far_s cn63xx;
2438aa32a955SDavid Daney 	struct cvmx_mio_uartx_far_s cn63xxp1;
2439751c9f68SDavid Daney 	struct cvmx_mio_uartx_far_s cn66xx;
2440751c9f68SDavid Daney 	struct cvmx_mio_uartx_far_s cn68xx;
2441751c9f68SDavid Daney 	struct cvmx_mio_uartx_far_s cn68xxp1;
244254293ec3SDavid Daney };
244354293ec3SDavid Daney 
244454293ec3SDavid Daney union cvmx_mio_uartx_fcr {
244554293ec3SDavid Daney 	uint64_t u64;
244654293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s {
244754293ec3SDavid Daney 		uint64_t reserved_8_63:56;
244854293ec3SDavid Daney 		uint64_t rxtrig:2;
244954293ec3SDavid Daney 		uint64_t txtrig:2;
245054293ec3SDavid Daney 		uint64_t reserved_3_3:1;
245154293ec3SDavid Daney 		uint64_t txfr:1;
245254293ec3SDavid Daney 		uint64_t rxfr:1;
245354293ec3SDavid Daney 		uint64_t en:1;
245454293ec3SDavid Daney 	} s;
245554293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn30xx;
245654293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn31xx;
245754293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn38xx;
245854293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn38xxp2;
245954293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn50xx;
246054293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn52xx;
246154293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn52xxp1;
246254293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn56xx;
246354293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn56xxp1;
246454293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn58xx;
246554293ec3SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn58xxp1;
2466751c9f68SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn61xx;
2467aa32a955SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn63xx;
2468aa32a955SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn63xxp1;
2469751c9f68SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn66xx;
2470751c9f68SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn68xx;
2471751c9f68SDavid Daney 	struct cvmx_mio_uartx_fcr_s cn68xxp1;
247254293ec3SDavid Daney };
247354293ec3SDavid Daney 
247454293ec3SDavid Daney union cvmx_mio_uartx_htx {
247554293ec3SDavid Daney 	uint64_t u64;
247654293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s {
247754293ec3SDavid Daney 		uint64_t reserved_1_63:63;
247854293ec3SDavid Daney 		uint64_t htx:1;
247954293ec3SDavid Daney 	} s;
248054293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn30xx;
248154293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn31xx;
248254293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn38xx;
248354293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn38xxp2;
248454293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn50xx;
248554293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn52xx;
248654293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn52xxp1;
248754293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn56xx;
248854293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn56xxp1;
248954293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn58xx;
249054293ec3SDavid Daney 	struct cvmx_mio_uartx_htx_s cn58xxp1;
2491751c9f68SDavid Daney 	struct cvmx_mio_uartx_htx_s cn61xx;
2492aa32a955SDavid Daney 	struct cvmx_mio_uartx_htx_s cn63xx;
2493aa32a955SDavid Daney 	struct cvmx_mio_uartx_htx_s cn63xxp1;
2494751c9f68SDavid Daney 	struct cvmx_mio_uartx_htx_s cn66xx;
2495751c9f68SDavid Daney 	struct cvmx_mio_uartx_htx_s cn68xx;
2496751c9f68SDavid Daney 	struct cvmx_mio_uartx_htx_s cn68xxp1;
249754293ec3SDavid Daney };
249854293ec3SDavid Daney 
249954293ec3SDavid Daney union cvmx_mio_uartx_ier {
250054293ec3SDavid Daney 	uint64_t u64;
250154293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s {
250254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
250354293ec3SDavid Daney 		uint64_t ptime:1;
250454293ec3SDavid Daney 		uint64_t reserved_4_6:3;
250554293ec3SDavid Daney 		uint64_t edssi:1;
250654293ec3SDavid Daney 		uint64_t elsi:1;
250754293ec3SDavid Daney 		uint64_t etbei:1;
250854293ec3SDavid Daney 		uint64_t erbfi:1;
250954293ec3SDavid Daney 	} s;
251054293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn30xx;
251154293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn31xx;
251254293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn38xx;
251354293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn38xxp2;
251454293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn50xx;
251554293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn52xx;
251654293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn52xxp1;
251754293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn56xx;
251854293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn56xxp1;
251954293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn58xx;
252054293ec3SDavid Daney 	struct cvmx_mio_uartx_ier_s cn58xxp1;
2521751c9f68SDavid Daney 	struct cvmx_mio_uartx_ier_s cn61xx;
2522aa32a955SDavid Daney 	struct cvmx_mio_uartx_ier_s cn63xx;
2523aa32a955SDavid Daney 	struct cvmx_mio_uartx_ier_s cn63xxp1;
2524751c9f68SDavid Daney 	struct cvmx_mio_uartx_ier_s cn66xx;
2525751c9f68SDavid Daney 	struct cvmx_mio_uartx_ier_s cn68xx;
2526751c9f68SDavid Daney 	struct cvmx_mio_uartx_ier_s cn68xxp1;
252754293ec3SDavid Daney };
252854293ec3SDavid Daney 
252954293ec3SDavid Daney union cvmx_mio_uartx_iir {
253054293ec3SDavid Daney 	uint64_t u64;
253154293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s {
253254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
253354293ec3SDavid Daney 		uint64_t fen:2;
253454293ec3SDavid Daney 		uint64_t reserved_4_5:2;
253554293ec3SDavid Daney 		uint64_t iid:4;
253654293ec3SDavid Daney 	} s;
253754293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn30xx;
253854293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn31xx;
253954293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn38xx;
254054293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn38xxp2;
254154293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn50xx;
254254293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn52xx;
254354293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn52xxp1;
254454293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn56xx;
254554293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn56xxp1;
254654293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn58xx;
254754293ec3SDavid Daney 	struct cvmx_mio_uartx_iir_s cn58xxp1;
2548751c9f68SDavid Daney 	struct cvmx_mio_uartx_iir_s cn61xx;
2549aa32a955SDavid Daney 	struct cvmx_mio_uartx_iir_s cn63xx;
2550aa32a955SDavid Daney 	struct cvmx_mio_uartx_iir_s cn63xxp1;
2551751c9f68SDavid Daney 	struct cvmx_mio_uartx_iir_s cn66xx;
2552751c9f68SDavid Daney 	struct cvmx_mio_uartx_iir_s cn68xx;
2553751c9f68SDavid Daney 	struct cvmx_mio_uartx_iir_s cn68xxp1;
255454293ec3SDavid Daney };
255554293ec3SDavid Daney 
255654293ec3SDavid Daney union cvmx_mio_uartx_lcr {
255754293ec3SDavid Daney 	uint64_t u64;
255854293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s {
255954293ec3SDavid Daney 		uint64_t reserved_8_63:56;
256054293ec3SDavid Daney 		uint64_t dlab:1;
256154293ec3SDavid Daney 		uint64_t brk:1;
256254293ec3SDavid Daney 		uint64_t reserved_5_5:1;
256354293ec3SDavid Daney 		uint64_t eps:1;
256454293ec3SDavid Daney 		uint64_t pen:1;
256554293ec3SDavid Daney 		uint64_t stop:1;
256654293ec3SDavid Daney 		uint64_t cls:2;
256754293ec3SDavid Daney 	} s;
256854293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn30xx;
256954293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn31xx;
257054293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn38xx;
257154293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn38xxp2;
257254293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn50xx;
257354293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn52xx;
257454293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn52xxp1;
257554293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn56xx;
257654293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn56xxp1;
257754293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn58xx;
257854293ec3SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn58xxp1;
2579751c9f68SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn61xx;
2580aa32a955SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn63xx;
2581aa32a955SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn63xxp1;
2582751c9f68SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn66xx;
2583751c9f68SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn68xx;
2584751c9f68SDavid Daney 	struct cvmx_mio_uartx_lcr_s cn68xxp1;
258554293ec3SDavid Daney };
258654293ec3SDavid Daney 
258754293ec3SDavid Daney union cvmx_mio_uartx_lsr {
258854293ec3SDavid Daney 	uint64_t u64;
258954293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s {
259054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
259154293ec3SDavid Daney 		uint64_t ferr:1;
259254293ec3SDavid Daney 		uint64_t temt:1;
259354293ec3SDavid Daney 		uint64_t thre:1;
259454293ec3SDavid Daney 		uint64_t bi:1;
259554293ec3SDavid Daney 		uint64_t fe:1;
259654293ec3SDavid Daney 		uint64_t pe:1;
259754293ec3SDavid Daney 		uint64_t oe:1;
259854293ec3SDavid Daney 		uint64_t dr:1;
259954293ec3SDavid Daney 	} s;
260054293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn30xx;
260154293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn31xx;
260254293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn38xx;
260354293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn38xxp2;
260454293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn50xx;
260554293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn52xx;
260654293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn52xxp1;
260754293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn56xx;
260854293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn56xxp1;
260954293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn58xx;
261054293ec3SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn58xxp1;
2611751c9f68SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn61xx;
2612aa32a955SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn63xx;
2613aa32a955SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn63xxp1;
2614751c9f68SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn66xx;
2615751c9f68SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn68xx;
2616751c9f68SDavid Daney 	struct cvmx_mio_uartx_lsr_s cn68xxp1;
261754293ec3SDavid Daney };
261854293ec3SDavid Daney 
261954293ec3SDavid Daney union cvmx_mio_uartx_mcr {
262054293ec3SDavid Daney 	uint64_t u64;
262154293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s {
262254293ec3SDavid Daney 		uint64_t reserved_6_63:58;
262354293ec3SDavid Daney 		uint64_t afce:1;
262454293ec3SDavid Daney 		uint64_t loop:1;
262554293ec3SDavid Daney 		uint64_t out2:1;
262654293ec3SDavid Daney 		uint64_t out1:1;
262754293ec3SDavid Daney 		uint64_t rts:1;
262854293ec3SDavid Daney 		uint64_t dtr:1;
262954293ec3SDavid Daney 	} s;
263054293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn30xx;
263154293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn31xx;
263254293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn38xx;
263354293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn38xxp2;
263454293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn50xx;
263554293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn52xx;
263654293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn52xxp1;
263754293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn56xx;
263854293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn56xxp1;
263954293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn58xx;
264054293ec3SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn58xxp1;
2641751c9f68SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn61xx;
2642aa32a955SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn63xx;
2643aa32a955SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn63xxp1;
2644751c9f68SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn66xx;
2645751c9f68SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn68xx;
2646751c9f68SDavid Daney 	struct cvmx_mio_uartx_mcr_s cn68xxp1;
264754293ec3SDavid Daney };
264854293ec3SDavid Daney 
264954293ec3SDavid Daney union cvmx_mio_uartx_msr {
265054293ec3SDavid Daney 	uint64_t u64;
265154293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s {
265254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
265354293ec3SDavid Daney 		uint64_t dcd:1;
265454293ec3SDavid Daney 		uint64_t ri:1;
265554293ec3SDavid Daney 		uint64_t dsr:1;
265654293ec3SDavid Daney 		uint64_t cts:1;
265754293ec3SDavid Daney 		uint64_t ddcd:1;
265854293ec3SDavid Daney 		uint64_t teri:1;
265954293ec3SDavid Daney 		uint64_t ddsr:1;
266054293ec3SDavid Daney 		uint64_t dcts:1;
266154293ec3SDavid Daney 	} s;
266254293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn30xx;
266354293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn31xx;
266454293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn38xx;
266554293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn38xxp2;
266654293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn50xx;
266754293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn52xx;
266854293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn52xxp1;
266954293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn56xx;
267054293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn56xxp1;
267154293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn58xx;
267254293ec3SDavid Daney 	struct cvmx_mio_uartx_msr_s cn58xxp1;
2673751c9f68SDavid Daney 	struct cvmx_mio_uartx_msr_s cn61xx;
2674aa32a955SDavid Daney 	struct cvmx_mio_uartx_msr_s cn63xx;
2675aa32a955SDavid Daney 	struct cvmx_mio_uartx_msr_s cn63xxp1;
2676751c9f68SDavid Daney 	struct cvmx_mio_uartx_msr_s cn66xx;
2677751c9f68SDavid Daney 	struct cvmx_mio_uartx_msr_s cn68xx;
2678751c9f68SDavid Daney 	struct cvmx_mio_uartx_msr_s cn68xxp1;
267954293ec3SDavid Daney };
268054293ec3SDavid Daney 
268154293ec3SDavid Daney union cvmx_mio_uartx_rbr {
268254293ec3SDavid Daney 	uint64_t u64;
268354293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s {
268454293ec3SDavid Daney 		uint64_t reserved_8_63:56;
268554293ec3SDavid Daney 		uint64_t rbr:8;
268654293ec3SDavid Daney 	} s;
268754293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn30xx;
268854293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn31xx;
268954293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn38xx;
269054293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn38xxp2;
269154293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn50xx;
269254293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn52xx;
269354293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn52xxp1;
269454293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn56xx;
269554293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn56xxp1;
269654293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn58xx;
269754293ec3SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn58xxp1;
2698751c9f68SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn61xx;
2699aa32a955SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn63xx;
2700aa32a955SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn63xxp1;
2701751c9f68SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn66xx;
2702751c9f68SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn68xx;
2703751c9f68SDavid Daney 	struct cvmx_mio_uartx_rbr_s cn68xxp1;
270454293ec3SDavid Daney };
270554293ec3SDavid Daney 
270654293ec3SDavid Daney union cvmx_mio_uartx_rfl {
270754293ec3SDavid Daney 	uint64_t u64;
270854293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s {
270954293ec3SDavid Daney 		uint64_t reserved_7_63:57;
271054293ec3SDavid Daney 		uint64_t rfl:7;
271154293ec3SDavid Daney 	} s;
271254293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn30xx;
271354293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn31xx;
271454293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn38xx;
271554293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn38xxp2;
271654293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn50xx;
271754293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn52xx;
271854293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn52xxp1;
271954293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn56xx;
272054293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn56xxp1;
272154293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn58xx;
272254293ec3SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn58xxp1;
2723751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn61xx;
2724aa32a955SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn63xx;
2725aa32a955SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn63xxp1;
2726751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn66xx;
2727751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn68xx;
2728751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfl_s cn68xxp1;
272954293ec3SDavid Daney };
273054293ec3SDavid Daney 
273154293ec3SDavid Daney union cvmx_mio_uartx_rfw {
273254293ec3SDavid Daney 	uint64_t u64;
273354293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s {
273454293ec3SDavid Daney 		uint64_t reserved_10_63:54;
273554293ec3SDavid Daney 		uint64_t rffe:1;
273654293ec3SDavid Daney 		uint64_t rfpe:1;
273754293ec3SDavid Daney 		uint64_t rfwd:8;
273854293ec3SDavid Daney 	} s;
273954293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn30xx;
274054293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn31xx;
274154293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn38xx;
274254293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn38xxp2;
274354293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn50xx;
274454293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn52xx;
274554293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn52xxp1;
274654293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn56xx;
274754293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn56xxp1;
274854293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn58xx;
274954293ec3SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn58xxp1;
2750751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn61xx;
2751aa32a955SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn63xx;
2752aa32a955SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn63xxp1;
2753751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn66xx;
2754751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn68xx;
2755751c9f68SDavid Daney 	struct cvmx_mio_uartx_rfw_s cn68xxp1;
275654293ec3SDavid Daney };
275754293ec3SDavid Daney 
275854293ec3SDavid Daney union cvmx_mio_uartx_sbcr {
275954293ec3SDavid Daney 	uint64_t u64;
276054293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s {
276154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
276254293ec3SDavid Daney 		uint64_t sbcr:1;
276354293ec3SDavid Daney 	} s;
276454293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn30xx;
276554293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn31xx;
276654293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn38xx;
276754293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn38xxp2;
276854293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn50xx;
276954293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn52xx;
277054293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn52xxp1;
277154293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn56xx;
277254293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn56xxp1;
277354293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn58xx;
277454293ec3SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn58xxp1;
2775751c9f68SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn61xx;
2776aa32a955SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn63xx;
2777aa32a955SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn63xxp1;
2778751c9f68SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn66xx;
2779751c9f68SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn68xx;
2780751c9f68SDavid Daney 	struct cvmx_mio_uartx_sbcr_s cn68xxp1;
278154293ec3SDavid Daney };
278254293ec3SDavid Daney 
278354293ec3SDavid Daney union cvmx_mio_uartx_scr {
278454293ec3SDavid Daney 	uint64_t u64;
278554293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s {
278654293ec3SDavid Daney 		uint64_t reserved_8_63:56;
278754293ec3SDavid Daney 		uint64_t scr:8;
278854293ec3SDavid Daney 	} s;
278954293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn30xx;
279054293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn31xx;
279154293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn38xx;
279254293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn38xxp2;
279354293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn50xx;
279454293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn52xx;
279554293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn52xxp1;
279654293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn56xx;
279754293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn56xxp1;
279854293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn58xx;
279954293ec3SDavid Daney 	struct cvmx_mio_uartx_scr_s cn58xxp1;
2800751c9f68SDavid Daney 	struct cvmx_mio_uartx_scr_s cn61xx;
2801aa32a955SDavid Daney 	struct cvmx_mio_uartx_scr_s cn63xx;
2802aa32a955SDavid Daney 	struct cvmx_mio_uartx_scr_s cn63xxp1;
2803751c9f68SDavid Daney 	struct cvmx_mio_uartx_scr_s cn66xx;
2804751c9f68SDavid Daney 	struct cvmx_mio_uartx_scr_s cn68xx;
2805751c9f68SDavid Daney 	struct cvmx_mio_uartx_scr_s cn68xxp1;
280654293ec3SDavid Daney };
280754293ec3SDavid Daney 
280854293ec3SDavid Daney union cvmx_mio_uartx_sfe {
280954293ec3SDavid Daney 	uint64_t u64;
281054293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s {
281154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
281254293ec3SDavid Daney 		uint64_t sfe:1;
281354293ec3SDavid Daney 	} s;
281454293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn30xx;
281554293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn31xx;
281654293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn38xx;
281754293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn38xxp2;
281854293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn50xx;
281954293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn52xx;
282054293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn52xxp1;
282154293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn56xx;
282254293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn56xxp1;
282354293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn58xx;
282454293ec3SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn58xxp1;
2825751c9f68SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn61xx;
2826aa32a955SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn63xx;
2827aa32a955SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn63xxp1;
2828751c9f68SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn66xx;
2829751c9f68SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn68xx;
2830751c9f68SDavid Daney 	struct cvmx_mio_uartx_sfe_s cn68xxp1;
283154293ec3SDavid Daney };
283254293ec3SDavid Daney 
283354293ec3SDavid Daney union cvmx_mio_uartx_srr {
283454293ec3SDavid Daney 	uint64_t u64;
283554293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s {
283654293ec3SDavid Daney 		uint64_t reserved_3_63:61;
283754293ec3SDavid Daney 		uint64_t stfr:1;
283854293ec3SDavid Daney 		uint64_t srfr:1;
283954293ec3SDavid Daney 		uint64_t usr:1;
284054293ec3SDavid Daney 	} s;
284154293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn30xx;
284254293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn31xx;
284354293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn38xx;
284454293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn38xxp2;
284554293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn50xx;
284654293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn52xx;
284754293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn52xxp1;
284854293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn56xx;
284954293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn56xxp1;
285054293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn58xx;
285154293ec3SDavid Daney 	struct cvmx_mio_uartx_srr_s cn58xxp1;
2852751c9f68SDavid Daney 	struct cvmx_mio_uartx_srr_s cn61xx;
2853aa32a955SDavid Daney 	struct cvmx_mio_uartx_srr_s cn63xx;
2854aa32a955SDavid Daney 	struct cvmx_mio_uartx_srr_s cn63xxp1;
2855751c9f68SDavid Daney 	struct cvmx_mio_uartx_srr_s cn66xx;
2856751c9f68SDavid Daney 	struct cvmx_mio_uartx_srr_s cn68xx;
2857751c9f68SDavid Daney 	struct cvmx_mio_uartx_srr_s cn68xxp1;
285854293ec3SDavid Daney };
285954293ec3SDavid Daney 
286054293ec3SDavid Daney union cvmx_mio_uartx_srt {
286154293ec3SDavid Daney 	uint64_t u64;
286254293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s {
286354293ec3SDavid Daney 		uint64_t reserved_2_63:62;
286454293ec3SDavid Daney 		uint64_t srt:2;
286554293ec3SDavid Daney 	} s;
286654293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn30xx;
286754293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn31xx;
286854293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn38xx;
286954293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn38xxp2;
287054293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn50xx;
287154293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn52xx;
287254293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn52xxp1;
287354293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn56xx;
287454293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn56xxp1;
287554293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn58xx;
287654293ec3SDavid Daney 	struct cvmx_mio_uartx_srt_s cn58xxp1;
2877751c9f68SDavid Daney 	struct cvmx_mio_uartx_srt_s cn61xx;
2878aa32a955SDavid Daney 	struct cvmx_mio_uartx_srt_s cn63xx;
2879aa32a955SDavid Daney 	struct cvmx_mio_uartx_srt_s cn63xxp1;
2880751c9f68SDavid Daney 	struct cvmx_mio_uartx_srt_s cn66xx;
2881751c9f68SDavid Daney 	struct cvmx_mio_uartx_srt_s cn68xx;
2882751c9f68SDavid Daney 	struct cvmx_mio_uartx_srt_s cn68xxp1;
288354293ec3SDavid Daney };
288454293ec3SDavid Daney 
288554293ec3SDavid Daney union cvmx_mio_uartx_srts {
288654293ec3SDavid Daney 	uint64_t u64;
288754293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s {
288854293ec3SDavid Daney 		uint64_t reserved_1_63:63;
288954293ec3SDavid Daney 		uint64_t srts:1;
289054293ec3SDavid Daney 	} s;
289154293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn30xx;
289254293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn31xx;
289354293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn38xx;
289454293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn38xxp2;
289554293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn50xx;
289654293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn52xx;
289754293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn52xxp1;
289854293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn56xx;
289954293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn56xxp1;
290054293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn58xx;
290154293ec3SDavid Daney 	struct cvmx_mio_uartx_srts_s cn58xxp1;
2902751c9f68SDavid Daney 	struct cvmx_mio_uartx_srts_s cn61xx;
2903aa32a955SDavid Daney 	struct cvmx_mio_uartx_srts_s cn63xx;
2904aa32a955SDavid Daney 	struct cvmx_mio_uartx_srts_s cn63xxp1;
2905751c9f68SDavid Daney 	struct cvmx_mio_uartx_srts_s cn66xx;
2906751c9f68SDavid Daney 	struct cvmx_mio_uartx_srts_s cn68xx;
2907751c9f68SDavid Daney 	struct cvmx_mio_uartx_srts_s cn68xxp1;
290854293ec3SDavid Daney };
290954293ec3SDavid Daney 
291054293ec3SDavid Daney union cvmx_mio_uartx_stt {
291154293ec3SDavid Daney 	uint64_t u64;
291254293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s {
291354293ec3SDavid Daney 		uint64_t reserved_2_63:62;
291454293ec3SDavid Daney 		uint64_t stt:2;
291554293ec3SDavid Daney 	} s;
291654293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn30xx;
291754293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn31xx;
291854293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn38xx;
291954293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn38xxp2;
292054293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn50xx;
292154293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn52xx;
292254293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn52xxp1;
292354293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn56xx;
292454293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn56xxp1;
292554293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn58xx;
292654293ec3SDavid Daney 	struct cvmx_mio_uartx_stt_s cn58xxp1;
2927751c9f68SDavid Daney 	struct cvmx_mio_uartx_stt_s cn61xx;
2928aa32a955SDavid Daney 	struct cvmx_mio_uartx_stt_s cn63xx;
2929aa32a955SDavid Daney 	struct cvmx_mio_uartx_stt_s cn63xxp1;
2930751c9f68SDavid Daney 	struct cvmx_mio_uartx_stt_s cn66xx;
2931751c9f68SDavid Daney 	struct cvmx_mio_uartx_stt_s cn68xx;
2932751c9f68SDavid Daney 	struct cvmx_mio_uartx_stt_s cn68xxp1;
293354293ec3SDavid Daney };
293454293ec3SDavid Daney 
293554293ec3SDavid Daney union cvmx_mio_uartx_tfl {
293654293ec3SDavid Daney 	uint64_t u64;
293754293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s {
293854293ec3SDavid Daney 		uint64_t reserved_7_63:57;
293954293ec3SDavid Daney 		uint64_t tfl:7;
294054293ec3SDavid Daney 	} s;
294154293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn30xx;
294254293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn31xx;
294354293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn38xx;
294454293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn38xxp2;
294554293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn50xx;
294654293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn52xx;
294754293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn52xxp1;
294854293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn56xx;
294954293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn56xxp1;
295054293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn58xx;
295154293ec3SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn58xxp1;
2952751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn61xx;
2953aa32a955SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn63xx;
2954aa32a955SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn63xxp1;
2955751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn66xx;
2956751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn68xx;
2957751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfl_s cn68xxp1;
295854293ec3SDavid Daney };
295954293ec3SDavid Daney 
296054293ec3SDavid Daney union cvmx_mio_uartx_tfr {
296154293ec3SDavid Daney 	uint64_t u64;
296254293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s {
296354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
296454293ec3SDavid Daney 		uint64_t tfr:8;
296554293ec3SDavid Daney 	} s;
296654293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn30xx;
296754293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn31xx;
296854293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn38xx;
296954293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn38xxp2;
297054293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn50xx;
297154293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn52xx;
297254293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn52xxp1;
297354293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn56xx;
297454293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn56xxp1;
297554293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn58xx;
297654293ec3SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn58xxp1;
2977751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn61xx;
2978aa32a955SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn63xx;
2979aa32a955SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn63xxp1;
2980751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn66xx;
2981751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn68xx;
2982751c9f68SDavid Daney 	struct cvmx_mio_uartx_tfr_s cn68xxp1;
298354293ec3SDavid Daney };
298454293ec3SDavid Daney 
298554293ec3SDavid Daney union cvmx_mio_uartx_thr {
298654293ec3SDavid Daney 	uint64_t u64;
298754293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s {
298854293ec3SDavid Daney 		uint64_t reserved_8_63:56;
298954293ec3SDavid Daney 		uint64_t thr:8;
299054293ec3SDavid Daney 	} s;
299154293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn30xx;
299254293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn31xx;
299354293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn38xx;
299454293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn38xxp2;
299554293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn50xx;
299654293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn52xx;
299754293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn52xxp1;
299854293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn56xx;
299954293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn56xxp1;
300054293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn58xx;
300154293ec3SDavid Daney 	struct cvmx_mio_uartx_thr_s cn58xxp1;
3002751c9f68SDavid Daney 	struct cvmx_mio_uartx_thr_s cn61xx;
3003aa32a955SDavid Daney 	struct cvmx_mio_uartx_thr_s cn63xx;
3004aa32a955SDavid Daney 	struct cvmx_mio_uartx_thr_s cn63xxp1;
3005751c9f68SDavid Daney 	struct cvmx_mio_uartx_thr_s cn66xx;
3006751c9f68SDavid Daney 	struct cvmx_mio_uartx_thr_s cn68xx;
3007751c9f68SDavid Daney 	struct cvmx_mio_uartx_thr_s cn68xxp1;
300854293ec3SDavid Daney };
300954293ec3SDavid Daney 
301054293ec3SDavid Daney union cvmx_mio_uartx_usr {
301154293ec3SDavid Daney 	uint64_t u64;
301254293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s {
301354293ec3SDavid Daney 		uint64_t reserved_5_63:59;
301454293ec3SDavid Daney 		uint64_t rff:1;
301554293ec3SDavid Daney 		uint64_t rfne:1;
301654293ec3SDavid Daney 		uint64_t tfe:1;
301754293ec3SDavid Daney 		uint64_t tfnf:1;
301854293ec3SDavid Daney 		uint64_t busy:1;
301954293ec3SDavid Daney 	} s;
302054293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn30xx;
302154293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn31xx;
302254293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn38xx;
302354293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn38xxp2;
302454293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn50xx;
302554293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn52xx;
302654293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn52xxp1;
302754293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn56xx;
302854293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn56xxp1;
302954293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn58xx;
303054293ec3SDavid Daney 	struct cvmx_mio_uartx_usr_s cn58xxp1;
3031751c9f68SDavid Daney 	struct cvmx_mio_uartx_usr_s cn61xx;
3032aa32a955SDavid Daney 	struct cvmx_mio_uartx_usr_s cn63xx;
3033aa32a955SDavid Daney 	struct cvmx_mio_uartx_usr_s cn63xxp1;
3034751c9f68SDavid Daney 	struct cvmx_mio_uartx_usr_s cn66xx;
3035751c9f68SDavid Daney 	struct cvmx_mio_uartx_usr_s cn68xx;
3036751c9f68SDavid Daney 	struct cvmx_mio_uartx_usr_s cn68xxp1;
303754293ec3SDavid Daney };
303854293ec3SDavid Daney 
303954293ec3SDavid Daney union cvmx_mio_uart2_dlh {
304054293ec3SDavid Daney 	uint64_t u64;
304154293ec3SDavid Daney 	struct cvmx_mio_uart2_dlh_s {
304254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
304354293ec3SDavid Daney 		uint64_t dlh:8;
304454293ec3SDavid Daney 	} s;
304554293ec3SDavid Daney 	struct cvmx_mio_uart2_dlh_s cn52xx;
304654293ec3SDavid Daney 	struct cvmx_mio_uart2_dlh_s cn52xxp1;
304754293ec3SDavid Daney };
304854293ec3SDavid Daney 
304954293ec3SDavid Daney union cvmx_mio_uart2_dll {
305054293ec3SDavid Daney 	uint64_t u64;
305154293ec3SDavid Daney 	struct cvmx_mio_uart2_dll_s {
305254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
305354293ec3SDavid Daney 		uint64_t dll:8;
305454293ec3SDavid Daney 	} s;
305554293ec3SDavid Daney 	struct cvmx_mio_uart2_dll_s cn52xx;
305654293ec3SDavid Daney 	struct cvmx_mio_uart2_dll_s cn52xxp1;
305754293ec3SDavid Daney };
305854293ec3SDavid Daney 
305954293ec3SDavid Daney union cvmx_mio_uart2_far {
306054293ec3SDavid Daney 	uint64_t u64;
306154293ec3SDavid Daney 	struct cvmx_mio_uart2_far_s {
306254293ec3SDavid Daney 		uint64_t reserved_1_63:63;
306354293ec3SDavid Daney 		uint64_t far:1;
306454293ec3SDavid Daney 	} s;
306554293ec3SDavid Daney 	struct cvmx_mio_uart2_far_s cn52xx;
306654293ec3SDavid Daney 	struct cvmx_mio_uart2_far_s cn52xxp1;
306754293ec3SDavid Daney };
306854293ec3SDavid Daney 
306954293ec3SDavid Daney union cvmx_mio_uart2_fcr {
307054293ec3SDavid Daney 	uint64_t u64;
307154293ec3SDavid Daney 	struct cvmx_mio_uart2_fcr_s {
307254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
307354293ec3SDavid Daney 		uint64_t rxtrig:2;
307454293ec3SDavid Daney 		uint64_t txtrig:2;
307554293ec3SDavid Daney 		uint64_t reserved_3_3:1;
307654293ec3SDavid Daney 		uint64_t txfr:1;
307754293ec3SDavid Daney 		uint64_t rxfr:1;
307854293ec3SDavid Daney 		uint64_t en:1;
307954293ec3SDavid Daney 	} s;
308054293ec3SDavid Daney 	struct cvmx_mio_uart2_fcr_s cn52xx;
308154293ec3SDavid Daney 	struct cvmx_mio_uart2_fcr_s cn52xxp1;
308254293ec3SDavid Daney };
308354293ec3SDavid Daney 
308454293ec3SDavid Daney union cvmx_mio_uart2_htx {
308554293ec3SDavid Daney 	uint64_t u64;
308654293ec3SDavid Daney 	struct cvmx_mio_uart2_htx_s {
308754293ec3SDavid Daney 		uint64_t reserved_1_63:63;
308854293ec3SDavid Daney 		uint64_t htx:1;
308954293ec3SDavid Daney 	} s;
309054293ec3SDavid Daney 	struct cvmx_mio_uart2_htx_s cn52xx;
309154293ec3SDavid Daney 	struct cvmx_mio_uart2_htx_s cn52xxp1;
309254293ec3SDavid Daney };
309354293ec3SDavid Daney 
309454293ec3SDavid Daney union cvmx_mio_uart2_ier {
309554293ec3SDavid Daney 	uint64_t u64;
309654293ec3SDavid Daney 	struct cvmx_mio_uart2_ier_s {
309754293ec3SDavid Daney 		uint64_t reserved_8_63:56;
309854293ec3SDavid Daney 		uint64_t ptime:1;
309954293ec3SDavid Daney 		uint64_t reserved_4_6:3;
310054293ec3SDavid Daney 		uint64_t edssi:1;
310154293ec3SDavid Daney 		uint64_t elsi:1;
310254293ec3SDavid Daney 		uint64_t etbei:1;
310354293ec3SDavid Daney 		uint64_t erbfi:1;
310454293ec3SDavid Daney 	} s;
310554293ec3SDavid Daney 	struct cvmx_mio_uart2_ier_s cn52xx;
310654293ec3SDavid Daney 	struct cvmx_mio_uart2_ier_s cn52xxp1;
310754293ec3SDavid Daney };
310854293ec3SDavid Daney 
310954293ec3SDavid Daney union cvmx_mio_uart2_iir {
311054293ec3SDavid Daney 	uint64_t u64;
311154293ec3SDavid Daney 	struct cvmx_mio_uart2_iir_s {
311254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
311354293ec3SDavid Daney 		uint64_t fen:2;
311454293ec3SDavid Daney 		uint64_t reserved_4_5:2;
311554293ec3SDavid Daney 		uint64_t iid:4;
311654293ec3SDavid Daney 	} s;
311754293ec3SDavid Daney 	struct cvmx_mio_uart2_iir_s cn52xx;
311854293ec3SDavid Daney 	struct cvmx_mio_uart2_iir_s cn52xxp1;
311954293ec3SDavid Daney };
312054293ec3SDavid Daney 
312154293ec3SDavid Daney union cvmx_mio_uart2_lcr {
312254293ec3SDavid Daney 	uint64_t u64;
312354293ec3SDavid Daney 	struct cvmx_mio_uart2_lcr_s {
312454293ec3SDavid Daney 		uint64_t reserved_8_63:56;
312554293ec3SDavid Daney 		uint64_t dlab:1;
312654293ec3SDavid Daney 		uint64_t brk:1;
312754293ec3SDavid Daney 		uint64_t reserved_5_5:1;
312854293ec3SDavid Daney 		uint64_t eps:1;
312954293ec3SDavid Daney 		uint64_t pen:1;
313054293ec3SDavid Daney 		uint64_t stop:1;
313154293ec3SDavid Daney 		uint64_t cls:2;
313254293ec3SDavid Daney 	} s;
313354293ec3SDavid Daney 	struct cvmx_mio_uart2_lcr_s cn52xx;
313454293ec3SDavid Daney 	struct cvmx_mio_uart2_lcr_s cn52xxp1;
313554293ec3SDavid Daney };
313654293ec3SDavid Daney 
313754293ec3SDavid Daney union cvmx_mio_uart2_lsr {
313854293ec3SDavid Daney 	uint64_t u64;
313954293ec3SDavid Daney 	struct cvmx_mio_uart2_lsr_s {
314054293ec3SDavid Daney 		uint64_t reserved_8_63:56;
314154293ec3SDavid Daney 		uint64_t ferr:1;
314254293ec3SDavid Daney 		uint64_t temt:1;
314354293ec3SDavid Daney 		uint64_t thre:1;
314454293ec3SDavid Daney 		uint64_t bi:1;
314554293ec3SDavid Daney 		uint64_t fe:1;
314654293ec3SDavid Daney 		uint64_t pe:1;
314754293ec3SDavid Daney 		uint64_t oe:1;
314854293ec3SDavid Daney 		uint64_t dr:1;
314954293ec3SDavid Daney 	} s;
315054293ec3SDavid Daney 	struct cvmx_mio_uart2_lsr_s cn52xx;
315154293ec3SDavid Daney 	struct cvmx_mio_uart2_lsr_s cn52xxp1;
315254293ec3SDavid Daney };
315354293ec3SDavid Daney 
315454293ec3SDavid Daney union cvmx_mio_uart2_mcr {
315554293ec3SDavid Daney 	uint64_t u64;
315654293ec3SDavid Daney 	struct cvmx_mio_uart2_mcr_s {
315754293ec3SDavid Daney 		uint64_t reserved_6_63:58;
315854293ec3SDavid Daney 		uint64_t afce:1;
315954293ec3SDavid Daney 		uint64_t loop:1;
316054293ec3SDavid Daney 		uint64_t out2:1;
316154293ec3SDavid Daney 		uint64_t out1:1;
316254293ec3SDavid Daney 		uint64_t rts:1;
316354293ec3SDavid Daney 		uint64_t dtr:1;
316454293ec3SDavid Daney 	} s;
316554293ec3SDavid Daney 	struct cvmx_mio_uart2_mcr_s cn52xx;
316654293ec3SDavid Daney 	struct cvmx_mio_uart2_mcr_s cn52xxp1;
316754293ec3SDavid Daney };
316854293ec3SDavid Daney 
316954293ec3SDavid Daney union cvmx_mio_uart2_msr {
317054293ec3SDavid Daney 	uint64_t u64;
317154293ec3SDavid Daney 	struct cvmx_mio_uart2_msr_s {
317254293ec3SDavid Daney 		uint64_t reserved_8_63:56;
317354293ec3SDavid Daney 		uint64_t dcd:1;
317454293ec3SDavid Daney 		uint64_t ri:1;
317554293ec3SDavid Daney 		uint64_t dsr:1;
317654293ec3SDavid Daney 		uint64_t cts:1;
317754293ec3SDavid Daney 		uint64_t ddcd:1;
317854293ec3SDavid Daney 		uint64_t teri:1;
317954293ec3SDavid Daney 		uint64_t ddsr:1;
318054293ec3SDavid Daney 		uint64_t dcts:1;
318154293ec3SDavid Daney 	} s;
318254293ec3SDavid Daney 	struct cvmx_mio_uart2_msr_s cn52xx;
318354293ec3SDavid Daney 	struct cvmx_mio_uart2_msr_s cn52xxp1;
318454293ec3SDavid Daney };
318554293ec3SDavid Daney 
318654293ec3SDavid Daney union cvmx_mio_uart2_rbr {
318754293ec3SDavid Daney 	uint64_t u64;
318854293ec3SDavid Daney 	struct cvmx_mio_uart2_rbr_s {
318954293ec3SDavid Daney 		uint64_t reserved_8_63:56;
319054293ec3SDavid Daney 		uint64_t rbr:8;
319154293ec3SDavid Daney 	} s;
319254293ec3SDavid Daney 	struct cvmx_mio_uart2_rbr_s cn52xx;
319354293ec3SDavid Daney 	struct cvmx_mio_uart2_rbr_s cn52xxp1;
319454293ec3SDavid Daney };
319554293ec3SDavid Daney 
319654293ec3SDavid Daney union cvmx_mio_uart2_rfl {
319754293ec3SDavid Daney 	uint64_t u64;
319854293ec3SDavid Daney 	struct cvmx_mio_uart2_rfl_s {
319954293ec3SDavid Daney 		uint64_t reserved_7_63:57;
320054293ec3SDavid Daney 		uint64_t rfl:7;
320154293ec3SDavid Daney 	} s;
320254293ec3SDavid Daney 	struct cvmx_mio_uart2_rfl_s cn52xx;
320354293ec3SDavid Daney 	struct cvmx_mio_uart2_rfl_s cn52xxp1;
320454293ec3SDavid Daney };
320554293ec3SDavid Daney 
320654293ec3SDavid Daney union cvmx_mio_uart2_rfw {
320754293ec3SDavid Daney 	uint64_t u64;
320854293ec3SDavid Daney 	struct cvmx_mio_uart2_rfw_s {
320954293ec3SDavid Daney 		uint64_t reserved_10_63:54;
321054293ec3SDavid Daney 		uint64_t rffe:1;
321154293ec3SDavid Daney 		uint64_t rfpe:1;
321254293ec3SDavid Daney 		uint64_t rfwd:8;
321354293ec3SDavid Daney 	} s;
321454293ec3SDavid Daney 	struct cvmx_mio_uart2_rfw_s cn52xx;
321554293ec3SDavid Daney 	struct cvmx_mio_uart2_rfw_s cn52xxp1;
321654293ec3SDavid Daney };
321754293ec3SDavid Daney 
321854293ec3SDavid Daney union cvmx_mio_uart2_sbcr {
321954293ec3SDavid Daney 	uint64_t u64;
322054293ec3SDavid Daney 	struct cvmx_mio_uart2_sbcr_s {
322154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
322254293ec3SDavid Daney 		uint64_t sbcr:1;
322354293ec3SDavid Daney 	} s;
322454293ec3SDavid Daney 	struct cvmx_mio_uart2_sbcr_s cn52xx;
322554293ec3SDavid Daney 	struct cvmx_mio_uart2_sbcr_s cn52xxp1;
322654293ec3SDavid Daney };
322754293ec3SDavid Daney 
322854293ec3SDavid Daney union cvmx_mio_uart2_scr {
322954293ec3SDavid Daney 	uint64_t u64;
323054293ec3SDavid Daney 	struct cvmx_mio_uart2_scr_s {
323154293ec3SDavid Daney 		uint64_t reserved_8_63:56;
323254293ec3SDavid Daney 		uint64_t scr:8;
323354293ec3SDavid Daney 	} s;
323454293ec3SDavid Daney 	struct cvmx_mio_uart2_scr_s cn52xx;
323554293ec3SDavid Daney 	struct cvmx_mio_uart2_scr_s cn52xxp1;
323654293ec3SDavid Daney };
323754293ec3SDavid Daney 
323854293ec3SDavid Daney union cvmx_mio_uart2_sfe {
323954293ec3SDavid Daney 	uint64_t u64;
324054293ec3SDavid Daney 	struct cvmx_mio_uart2_sfe_s {
324154293ec3SDavid Daney 		uint64_t reserved_1_63:63;
324254293ec3SDavid Daney 		uint64_t sfe:1;
324354293ec3SDavid Daney 	} s;
324454293ec3SDavid Daney 	struct cvmx_mio_uart2_sfe_s cn52xx;
324554293ec3SDavid Daney 	struct cvmx_mio_uart2_sfe_s cn52xxp1;
324654293ec3SDavid Daney };
324754293ec3SDavid Daney 
324854293ec3SDavid Daney union cvmx_mio_uart2_srr {
324954293ec3SDavid Daney 	uint64_t u64;
325054293ec3SDavid Daney 	struct cvmx_mio_uart2_srr_s {
325154293ec3SDavid Daney 		uint64_t reserved_3_63:61;
325254293ec3SDavid Daney 		uint64_t stfr:1;
325354293ec3SDavid Daney 		uint64_t srfr:1;
325454293ec3SDavid Daney 		uint64_t usr:1;
325554293ec3SDavid Daney 	} s;
325654293ec3SDavid Daney 	struct cvmx_mio_uart2_srr_s cn52xx;
325754293ec3SDavid Daney 	struct cvmx_mio_uart2_srr_s cn52xxp1;
325854293ec3SDavid Daney };
325954293ec3SDavid Daney 
326054293ec3SDavid Daney union cvmx_mio_uart2_srt {
326154293ec3SDavid Daney 	uint64_t u64;
326254293ec3SDavid Daney 	struct cvmx_mio_uart2_srt_s {
326354293ec3SDavid Daney 		uint64_t reserved_2_63:62;
326454293ec3SDavid Daney 		uint64_t srt:2;
326554293ec3SDavid Daney 	} s;
326654293ec3SDavid Daney 	struct cvmx_mio_uart2_srt_s cn52xx;
326754293ec3SDavid Daney 	struct cvmx_mio_uart2_srt_s cn52xxp1;
326854293ec3SDavid Daney };
326954293ec3SDavid Daney 
327054293ec3SDavid Daney union cvmx_mio_uart2_srts {
327154293ec3SDavid Daney 	uint64_t u64;
327254293ec3SDavid Daney 	struct cvmx_mio_uart2_srts_s {
327354293ec3SDavid Daney 		uint64_t reserved_1_63:63;
327454293ec3SDavid Daney 		uint64_t srts:1;
327554293ec3SDavid Daney 	} s;
327654293ec3SDavid Daney 	struct cvmx_mio_uart2_srts_s cn52xx;
327754293ec3SDavid Daney 	struct cvmx_mio_uart2_srts_s cn52xxp1;
327854293ec3SDavid Daney };
327954293ec3SDavid Daney 
328054293ec3SDavid Daney union cvmx_mio_uart2_stt {
328154293ec3SDavid Daney 	uint64_t u64;
328254293ec3SDavid Daney 	struct cvmx_mio_uart2_stt_s {
328354293ec3SDavid Daney 		uint64_t reserved_2_63:62;
328454293ec3SDavid Daney 		uint64_t stt:2;
328554293ec3SDavid Daney 	} s;
328654293ec3SDavid Daney 	struct cvmx_mio_uart2_stt_s cn52xx;
328754293ec3SDavid Daney 	struct cvmx_mio_uart2_stt_s cn52xxp1;
328854293ec3SDavid Daney };
328954293ec3SDavid Daney 
329054293ec3SDavid Daney union cvmx_mio_uart2_tfl {
329154293ec3SDavid Daney 	uint64_t u64;
329254293ec3SDavid Daney 	struct cvmx_mio_uart2_tfl_s {
329354293ec3SDavid Daney 		uint64_t reserved_7_63:57;
329454293ec3SDavid Daney 		uint64_t tfl:7;
329554293ec3SDavid Daney 	} s;
329654293ec3SDavid Daney 	struct cvmx_mio_uart2_tfl_s cn52xx;
329754293ec3SDavid Daney 	struct cvmx_mio_uart2_tfl_s cn52xxp1;
329854293ec3SDavid Daney };
329954293ec3SDavid Daney 
330054293ec3SDavid Daney union cvmx_mio_uart2_tfr {
330154293ec3SDavid Daney 	uint64_t u64;
330254293ec3SDavid Daney 	struct cvmx_mio_uart2_tfr_s {
330354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
330454293ec3SDavid Daney 		uint64_t tfr:8;
330554293ec3SDavid Daney 	} s;
330654293ec3SDavid Daney 	struct cvmx_mio_uart2_tfr_s cn52xx;
330754293ec3SDavid Daney 	struct cvmx_mio_uart2_tfr_s cn52xxp1;
330854293ec3SDavid Daney };
330954293ec3SDavid Daney 
331054293ec3SDavid Daney union cvmx_mio_uart2_thr {
331154293ec3SDavid Daney 	uint64_t u64;
331254293ec3SDavid Daney 	struct cvmx_mio_uart2_thr_s {
331354293ec3SDavid Daney 		uint64_t reserved_8_63:56;
331454293ec3SDavid Daney 		uint64_t thr:8;
331554293ec3SDavid Daney 	} s;
331654293ec3SDavid Daney 	struct cvmx_mio_uart2_thr_s cn52xx;
331754293ec3SDavid Daney 	struct cvmx_mio_uart2_thr_s cn52xxp1;
331854293ec3SDavid Daney };
331954293ec3SDavid Daney 
332054293ec3SDavid Daney union cvmx_mio_uart2_usr {
332154293ec3SDavid Daney 	uint64_t u64;
332254293ec3SDavid Daney 	struct cvmx_mio_uart2_usr_s {
332354293ec3SDavid Daney 		uint64_t reserved_5_63:59;
332454293ec3SDavid Daney 		uint64_t rff:1;
332554293ec3SDavid Daney 		uint64_t rfne:1;
332654293ec3SDavid Daney 		uint64_t tfe:1;
332754293ec3SDavid Daney 		uint64_t tfnf:1;
332854293ec3SDavid Daney 		uint64_t busy:1;
332954293ec3SDavid Daney 	} s;
333054293ec3SDavid Daney 	struct cvmx_mio_uart2_usr_s cn52xx;
333154293ec3SDavid Daney 	struct cvmx_mio_uart2_usr_s cn52xxp1;
333254293ec3SDavid Daney };
333354293ec3SDavid Daney 
333454293ec3SDavid Daney #endif
3335