1/*! NOTE(Haiku): This file was generated via gcc -C -E in order to avoid
2 * having to include the accompanying _reg_map_macro.h file, which was
3 * over 3MB in size (!). */
4/*
5 * Copyright (c) 2013 Qualcomm Atheros, Inc.
6 *
7 * Permission to use, copy, modify, and/or distribute this software for any
8 * purpose with or without fee is hereby granted, provided that the above
9 * copyright notice and this permission notice appear in all copies.
10 *
11 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
12 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
13 * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
14 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
15 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
16 * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17 * PERFORMANCE OF THIS SOFTWARE.
18 */
19#ifndef __REG_OSPREY_REG_MAP_H__
20#define __REG_OSPREY_REG_MAP_H__
21
22#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_GAINTB__MASK              0x20000000U
23#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_GAINTB__READ(src) \
24                    (((u_int32_t)(src)\
25                    & 0x20000000U) >> 29)
26#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_GAINTB__WRITE(src) \
27                    (((u_int32_t)(src)\
28                    << 29) & 0x20000000U)
29
30#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_LNACONF__SHIFT                     25
31#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_LNACONF__WIDTH                      2
32#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_LNACONF__MASK             0x06000000U
33#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_LNACONF__READ(src) \
34                    (((u_int32_t)(src)\
35                    & 0x06000000U) >> 25)
36#define MULTICHAIN_GAIN_CTRL__ANT_DIV_ALT_LNACONF__WRITE(src) \
37                    (((u_int32_t)(src)\
38                    << 25) & 0x06000000U)
39
40#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_GAINTB__MASK             0x40000000U
41#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_GAINTB__READ(src) \
42                    (((u_int32_t)(src)\
43                    & 0x40000000U) >> 30)
44#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_GAINTB__WRITE(src) \
45                    (((u_int32_t)(src)\
46                    << 30) & 0x40000000U)
47
48#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_LNACONF__SHIFT                    27
49#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_LNACONF__WIDTH                     2
50#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_LNACONF__MASK            0x18000000U
51#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_LNACONF__READ(src) \
52                    (((u_int32_t)(src)\
53                    & 0x18000000U) >> 27)
54#define MULTICHAIN_GAIN_CTRL__ANT_DIV_MAIN_LNACONF__WRITE(src) \
55                    (((u_int32_t)(src)\
56                    << 27) & 0x18000000U)
57
58#define MULTICHAIN_GAIN_CTRL__ANT_FAST_DIV_BIAS__MASK               0x00007e00U
59#define MULTICHAIN_GAIN_CTRL__ANT_FAST_DIV_BIAS__READ(src) \
60                    (((u_int32_t)(src)\
61                    & 0x00007e00U) >> 9)
62#define MULTICHAIN_GAIN_CTRL__ANT_FAST_DIV_BIAS__WRITE(src) \
63                    (((u_int32_t)(src)\
64                    << 9) & 0x00007e00U)
65
66#define MULTICHAIN_GAIN_CTRL__ENABLE_ANT_DIV_LNADIV__SHIFT                   24
67#define MULTICHAIN_GAIN_CTRL__ENABLE_ANT_DIV_LNADIV__WIDTH                    1
68#define MULTICHAIN_GAIN_CTRL__ENABLE_ANT_DIV_LNADIV__MASK           0x01000000U
69
70#define MULTICHAIN_GAIN_CTRL__ENABLE_ANT_SW_RX_PROT__SHIFT                   23
71
72#define RESTART__ENABLE_ANT_FAST_DIV_M2FLAG__MASK                   0x00200000U
73
74#define BBB_SIG_DETECT__ENABLE_ANT_FAST_DIV__SHIFT                           13
75#define BBB_SIG_DETECT__ENABLE_ANT_FAST_DIV__WIDTH                            1
76#define BBB_SIG_DETECT__ENABLE_ANT_FAST_DIV__MASK                   0x00002000U
77
78struct mac_dma_reg {
79  volatile char pad__0[0x8]; /*        0x0 - 0x8        */
80  volatile u_int32_t MAC_DMA_CR; /*        0x8 - 0xc        */
81  volatile char pad__1[0x8]; /*        0xc - 0x14       */
82  volatile u_int32_t MAC_DMA_CFG; /*       0x14 - 0x18       */
83  volatile u_int32_t MAC_DMA_RXBUFPTR_THRESH; /*       0x18 - 0x1c       */
84  volatile u_int32_t MAC_DMA_TXDPPTR_THRESH; /*       0x1c - 0x20       */
85  volatile u_int32_t MAC_DMA_MIRT; /*       0x20 - 0x24       */
86  volatile u_int32_t MAC_DMA_GLOBAL_IER; /*       0x24 - 0x28       */
87  volatile u_int32_t MAC_DMA_TIMT; /*       0x28 - 0x2c       */
88  volatile u_int32_t MAC_DMA_RIMT; /*       0x2c - 0x30       */
89  volatile u_int32_t MAC_DMA_TXCFG; /*       0x30 - 0x34       */
90  volatile u_int32_t MAC_DMA_RXCFG; /*       0x34 - 0x38       */
91  volatile u_int32_t MAC_DMA_RXJLA; /*       0x38 - 0x3c       */
92  volatile char pad__2[0x4]; /*       0x3c - 0x40       */
93  volatile u_int32_t MAC_DMA_MIBC; /*       0x40 - 0x44       */
94  volatile u_int32_t MAC_DMA_TOPS; /*       0x44 - 0x48       */
95  volatile u_int32_t MAC_DMA_RXNPTO; /*       0x48 - 0x4c       */
96  volatile u_int32_t MAC_DMA_TXNPTO; /*       0x4c - 0x50       */
97  volatile u_int32_t MAC_DMA_RPGTO; /*       0x50 - 0x54       */
98  volatile char pad__3[0x4]; /*       0x54 - 0x58       */
99  volatile u_int32_t MAC_DMA_MACMISC; /*       0x58 - 0x5c       */
100  volatile u_int32_t MAC_DMA_INTER; /*       0x5c - 0x60       */
101  volatile u_int32_t MAC_DMA_DATABUF; /*       0x60 - 0x64       */
102  volatile u_int32_t MAC_DMA_GTT; /*       0x64 - 0x68       */
103  volatile u_int32_t MAC_DMA_GTTM; /*       0x68 - 0x6c       */
104  volatile u_int32_t MAC_DMA_CST; /*       0x6c - 0x70       */
105  volatile u_int32_t MAC_DMA_RXDP_SIZE; /*       0x70 - 0x74       */
106  volatile u_int32_t MAC_DMA_RX_QUEUE_HP_RXDP; /*       0x74 - 0x78       */
107  volatile u_int32_t MAC_DMA_RX_QUEUE_LP_RXDP; /*       0x78 - 0x7c       */
108  volatile char pad__4[0x4]; /*       0x7c - 0x80       */
109  volatile u_int32_t MAC_DMA_ISR_P; /*       0x80 - 0x84       */
110  volatile u_int32_t MAC_DMA_ISR_S0; /*       0x84 - 0x88       */
111  volatile u_int32_t MAC_DMA_ISR_S1; /*       0x88 - 0x8c       */
112  volatile u_int32_t MAC_DMA_ISR_S2; /*       0x8c - 0x90       */
113  volatile u_int32_t MAC_DMA_ISR_S3; /*       0x90 - 0x94       */
114  volatile u_int32_t MAC_DMA_ISR_S4; /*       0x94 - 0x98       */
115  volatile u_int32_t MAC_DMA_ISR_S5; /*       0x98 - 0x9c       */
116  /* Jupiter */
117  volatile u_int32_t MAC_DMA_ISR_S6; /*       0x9c - 0xa0       */
118  volatile u_int32_t MAC_DMA_IMR_P; /*       0xa0 - 0xa4       */
119  volatile u_int32_t MAC_DMA_IMR_S0; /*       0xa4 - 0xa8       */
120  volatile u_int32_t MAC_DMA_IMR_S1; /*       0xa8 - 0xac       */
121  volatile u_int32_t MAC_DMA_IMR_S2; /*       0xac - 0xb0       */
122  volatile u_int32_t MAC_DMA_IMR_S3; /*       0xb0 - 0xb4       */
123  volatile u_int32_t MAC_DMA_IMR_S4; /*       0xb4 - 0xb8       */
124  volatile u_int32_t MAC_DMA_IMR_S5; /*       0xb8 - 0xbc       */
125  /* Jupiter */
126  volatile u_int32_t MAC_DMA_IMR_S6; /*       0xbc - 0xc0       */
127  volatile u_int32_t MAC_DMA_ISR_P_RAC; /*       0xc0 - 0xc4       */
128  volatile u_int32_t MAC_DMA_ISR_S0_S; /*       0xc4 - 0xc8       */
129  volatile u_int32_t MAC_DMA_ISR_S1_S; /*       0xc8 - 0xcc       */
130  /* Jupiter */
131  volatile u_int32_t MAC_DMA_ISR_S6_S; /*       0xcc - 0xd0       */
132  volatile u_int32_t MAC_DMA_ISR_S2_S; /*       0xd0 - 0xd4       */
133  volatile u_int32_t MAC_DMA_ISR_S3_S; /*       0xd4 - 0xd8       */
134  volatile u_int32_t MAC_DMA_ISR_S4_S; /*       0xd8 - 0xdc       */
135  volatile u_int32_t MAC_DMA_ISR_S5_S; /*       0xdc - 0xe0       */
136  volatile u_int32_t MAC_DMA_DMADBG_0; /*       0xe0 - 0xe4       */
137  volatile u_int32_t MAC_DMA_DMADBG_1; /*       0xe4 - 0xe8       */
138  volatile u_int32_t MAC_DMA_DMADBG_2; /*       0xe8 - 0xec       */
139  volatile u_int32_t MAC_DMA_DMADBG_3; /*       0xec - 0xf0       */
140  volatile u_int32_t MAC_DMA_DMADBG_4; /*       0xf0 - 0xf4       */
141  volatile u_int32_t MAC_DMA_DMADBG_5; /*       0xf4 - 0xf8       */
142  volatile u_int32_t MAC_DMA_DMADBG_6; /*       0xf8 - 0xfc       */
143  volatile u_int32_t MAC_DMA_DMADBG_7; /*       0xfc - 0x100      */
144  volatile u_int32_t MAC_DMA_QCU_TXDP_REMAINING_QCU_7_0;
145                                                  /*      0x100 - 0x104      */
146  volatile u_int32_t MAC_DMA_QCU_TXDP_REMAINING_QCU_9_8;
147                                                  /*      0x104 - 0x108      */
148};
149
150struct mac_qcu_reg {
151  volatile char pad__0[0x800]; /*        0x0 - 0x800      */
152  volatile u_int32_t MAC_QCU_TXDP[10]; /*      0x800 - 0x828      */
153  volatile char pad__1[0x8]; /*      0x828 - 0x830      */
154  volatile u_int32_t MAC_QCU_STATUS_RING_START; /*      0x830 - 0x834      */
155  volatile u_int32_t MAC_QCU_STATUS_RING_END; /*      0x834 - 0x838      */
156  volatile u_int32_t MAC_QCU_STATUS_RING_CURRENT; /*      0x838 - 0x83c      */
157  volatile char pad__2[0x4]; /*      0x83c - 0x840      */
158  volatile u_int32_t MAC_QCU_TXE; /*      0x840 - 0x844      */
159  volatile char pad__3[0x3c]; /*      0x844 - 0x880      */
160  volatile u_int32_t MAC_QCU_TXD; /*      0x880 - 0x884      */
161  volatile char pad__4[0x3c]; /*      0x884 - 0x8c0      */
162  volatile u_int32_t MAC_QCU_CBR[10]; /*      0x8c0 - 0x8e8      */
163  volatile char pad__5[0x18]; /*      0x8e8 - 0x900      */
164  volatile u_int32_t MAC_QCU_RDYTIME[10]; /*      0x900 - 0x928      */
165  volatile char pad__6[0x18]; /*      0x928 - 0x940      */
166  volatile u_int32_t MAC_QCU_ONESHOT_ARM_SC; /*      0x940 - 0x944      */
167  volatile char pad__7[0x3c]; /*      0x944 - 0x980      */
168  volatile u_int32_t MAC_QCU_ONESHOT_ARM_CC; /*      0x980 - 0x984      */
169  volatile char pad__8[0x3c]; /*      0x984 - 0x9c0      */
170  volatile u_int32_t MAC_QCU_MISC[10]; /*      0x9c0 - 0x9e8      */
171  volatile char pad__9[0x18]; /*      0x9e8 - 0xa00      */
172  volatile u_int32_t MAC_QCU_CNT[10]; /*      0xa00 - 0xa28      */
173  volatile char pad__10[0x18]; /*      0xa28 - 0xa40      */
174  volatile u_int32_t MAC_QCU_RDYTIME_SHDN; /*      0xa40 - 0xa44      */
175  volatile u_int32_t MAC_QCU_DESC_CRC_CHK; /*      0xa44 - 0xa48      */
176  /* Jupiter_20 */
177  volatile u_int32_t MAC_QCU_EOL; /*      0xa48 - 0xa4c      */
178};
179
180struct mac_dcu_reg {
181  volatile char pad__0[0x1000]; /*        0x0 - 0x1000     */
182  volatile u_int32_t MAC_DCU_QCUMASK[10]; /*     0x1000 - 0x1028     */
183  volatile char pad__1[0x8]; /*     0x1028 - 0x1030     */
184  volatile u_int32_t MAC_DCU_GBL_IFS_SIFS; /*     0x1030 - 0x1034     */
185  volatile char pad__2[0x4]; /*     0x1034 - 0x1038     */
186  volatile u_int32_t MAC_DCU_TXFILTER_DCU0_31_0; /*     0x1038 - 0x103c     */
187  volatile u_int32_t MAC_DCU_TXFILTER_DCU8_31_0; /*     0x103c - 0x1040     */
188  volatile u_int32_t MAC_DCU_LCL_IFS[10]; /*     0x1040 - 0x1068     */
189  volatile char pad__3[0x8]; /*     0x1068 - 0x1070     */
190  volatile u_int32_t MAC_DCU_GBL_IFS_SLOT; /*     0x1070 - 0x1074     */
191  volatile char pad__4[0x4]; /*     0x1074 - 0x1078     */
192  volatile u_int32_t MAC_DCU_TXFILTER_DCU0_63_32; /*     0x1078 - 0x107c     */
193  volatile u_int32_t MAC_DCU_TXFILTER_DCU8_63_32; /*     0x107c - 0x1080     */
194  volatile u_int32_t MAC_DCU_RETRY_LIMIT[10]; /*     0x1080 - 0x10a8     */
195  volatile char pad__5[0x8]; /*     0x10a8 - 0x10b0     */
196  volatile u_int32_t MAC_DCU_GBL_IFS_EIFS; /*     0x10b0 - 0x10b4     */
197  volatile char pad__6[0x4]; /*     0x10b4 - 0x10b8     */
198  volatile u_int32_t MAC_DCU_TXFILTER_DCU0_95_64; /*     0x10b8 - 0x10bc     */
199  volatile u_int32_t MAC_DCU_TXFILTER_DCU8_95_64; /*     0x10bc - 0x10c0     */
200  volatile u_int32_t MAC_DCU_CHANNEL_TIME[10]; /*     0x10c0 - 0x10e8     */
201  volatile char pad__7[0x8]; /*     0x10e8 - 0x10f0     */
202  volatile u_int32_t MAC_DCU_GBL_IFS_MISC; /*     0x10f0 - 0x10f4     */
203  volatile char pad__8[0x4]; /*     0x10f4 - 0x10f8     */
204  volatile u_int32_t MAC_DCU_TXFILTER_DCU0_127_96;
205                                                  /*     0x10f8 - 0x10fc     */
206  volatile u_int32_t MAC_DCU_TXFILTER_DCU8_127_96;
207                                                  /*     0x10fc - 0x1100     */
208  volatile u_int32_t MAC_DCU_MISC[10]; /*     0x1100 - 0x1128     */
209  volatile char pad__9[0x10]; /*     0x1128 - 0x1138     */
210  volatile u_int32_t MAC_DCU_TXFILTER_DCU1_31_0; /*     0x1138 - 0x113c     */
211  volatile u_int32_t MAC_DCU_TXFILTER_DCU9_31_0; /*     0x113c - 0x1140     */
212  volatile u_int32_t MAC_DCU_SEQ; /*     0x1140 - 0x1144     */
213  volatile char pad__10[0x34]; /*     0x1144 - 0x1178     */
214  volatile u_int32_t MAC_DCU_TXFILTER_DCU1_63_32; /*     0x1178 - 0x117c     */
215  volatile u_int32_t MAC_DCU_TXFILTER_DCU9_63_32; /*     0x117c - 0x1180     */
216  volatile char pad__11[0x38]; /*     0x1180 - 0x11b8     */
217  volatile u_int32_t MAC_DCU_TXFILTER_DCU1_95_64; /*     0x11b8 - 0x11bc     */
218  volatile u_int32_t MAC_DCU_TXFILTER_DCU9_95_64; /*     0x11bc - 0x11c0     */
219  volatile char pad__12[0x38]; /*     0x11c0 - 0x11f8     */
220  volatile u_int32_t MAC_DCU_TXFILTER_DCU1_127_96;
221                                                  /*     0x11f8 - 0x11fc     */
222  volatile u_int32_t MAC_DCU_TXFILTER_DCU9_127_96;
223                                                  /*     0x11fc - 0x1200     */
224  volatile char pad__13[0x38]; /*     0x1200 - 0x1238     */
225  volatile u_int32_t MAC_DCU_TXFILTER_DCU2_31_0; /*     0x1238 - 0x123c     */
226  volatile char pad__14[0x34]; /*     0x123c - 0x1270     */
227  volatile u_int32_t MAC_DCU_PAUSE; /*     0x1270 - 0x1274     */
228  volatile char pad__15[0x4]; /*     0x1274 - 0x1278     */
229  volatile u_int32_t MAC_DCU_TXFILTER_DCU2_63_32; /*     0x1278 - 0x127c     */
230  volatile char pad__16[0x34]; /*     0x127c - 0x12b0     */
231  volatile u_int32_t MAC_DCU_WOW_KACFG; /*     0x12b0 - 0x12b4     */
232  volatile char pad__17[0x4]; /*     0x12b4 - 0x12b8     */
233  volatile u_int32_t MAC_DCU_TXFILTER_DCU2_95_64; /*     0x12b8 - 0x12bc     */
234  volatile char pad__18[0x34]; /*     0x12bc - 0x12f0     */
235  volatile u_int32_t MAC_DCU_TXSLOT; /*     0x12f0 - 0x12f4     */
236  volatile char pad__19[0x4]; /*     0x12f4 - 0x12f8     */
237  volatile u_int32_t MAC_DCU_TXFILTER_DCU2_127_96;
238                                                  /*     0x12f8 - 0x12fc     */
239  volatile char pad__20[0x3c]; /*     0x12fc - 0x1338     */
240  volatile u_int32_t MAC_DCU_TXFILTER_DCU3_31_0; /*     0x1338 - 0x133c     */
241  volatile char pad__21[0x3c]; /*     0x133c - 0x1378     */
242  volatile u_int32_t MAC_DCU_TXFILTER_DCU3_63_32; /*     0x1378 - 0x137c     */
243  volatile char pad__22[0x3c]; /*     0x137c - 0x13b8     */
244  volatile u_int32_t MAC_DCU_TXFILTER_DCU3_95_64; /*     0x13b8 - 0x13bc     */
245  volatile char pad__23[0x3c]; /*     0x13bc - 0x13f8     */
246  volatile u_int32_t MAC_DCU_TXFILTER_DCU3_127_96;
247                                                  /*     0x13f8 - 0x13fc     */
248  volatile char pad__24[0x3c]; /*     0x13fc - 0x1438     */
249  volatile u_int32_t MAC_DCU_TXFILTER_DCU4_31_0; /*     0x1438 - 0x143c     */
250  volatile u_int32_t MAC_DCU_TXFILTER_CLEAR; /*     0x143c - 0x1440     */
251  volatile char pad__25[0x38]; /*     0x1440 - 0x1478     */
252  volatile u_int32_t MAC_DCU_TXFILTER_DCU4_63_32; /*     0x1478 - 0x147c     */
253  volatile u_int32_t MAC_DCU_TXFILTER_SET; /*     0x147c - 0x1480     */
254  volatile char pad__26[0x38]; /*     0x1480 - 0x14b8     */
255  volatile u_int32_t MAC_DCU_TXFILTER_DCU4_95_64; /*     0x14b8 - 0x14bc     */
256  volatile char pad__27[0x3c]; /*     0x14bc - 0x14f8     */
257  volatile u_int32_t MAC_DCU_TXFILTER_DCU4_127_96;
258                                                  /*     0x14f8 - 0x14fc     */
259  volatile char pad__28[0x3c]; /*     0x14fc - 0x1538     */
260  volatile u_int32_t MAC_DCU_TXFILTER_DCU5_31_0; /*     0x1538 - 0x153c     */
261  volatile char pad__29[0x3c]; /*     0x153c - 0x1578     */
262  volatile u_int32_t MAC_DCU_TXFILTER_DCU5_63_32; /*     0x1578 - 0x157c     */
263  volatile char pad__30[0x3c]; /*     0x157c - 0x15b8     */
264  volatile u_int32_t MAC_DCU_TXFILTER_DCU5_95_64; /*     0x15b8 - 0x15bc     */
265  volatile char pad__31[0x3c]; /*     0x15bc - 0x15f8     */
266  volatile u_int32_t MAC_DCU_TXFILTER_DCU5_127_96;
267                                                  /*     0x15f8 - 0x15fc     */
268  volatile char pad__32[0x3c]; /*     0x15fc - 0x1638     */
269  volatile u_int32_t MAC_DCU_TXFILTER_DCU6_31_0; /*     0x1638 - 0x163c     */
270  volatile char pad__33[0x3c]; /*     0x163c - 0x1678     */
271  volatile u_int32_t MAC_DCU_TXFILTER_DCU6_63_32; /*     0x1678 - 0x167c     */
272  volatile char pad__34[0x3c]; /*     0x167c - 0x16b8     */
273  volatile u_int32_t MAC_DCU_TXFILTER_DCU6_95_64; /*     0x16b8 - 0x16bc     */
274  volatile char pad__35[0x3c]; /*     0x16bc - 0x16f8     */
275  volatile u_int32_t MAC_DCU_TXFILTER_DCU6_127_96;
276                                                  /*     0x16f8 - 0x16fc     */
277  volatile char pad__36[0x3c]; /*     0x16fc - 0x1738     */
278  volatile u_int32_t MAC_DCU_TXFILTER_DCU7_31_0; /*     0x1738 - 0x173c     */
279  volatile char pad__37[0x3c]; /*     0x173c - 0x1778     */
280  volatile u_int32_t MAC_DCU_TXFILTER_DCU7_63_32; /*     0x1778 - 0x177c     */
281  volatile char pad__38[0x3c]; /*     0x177c - 0x17b8     */
282  volatile u_int32_t MAC_DCU_TXFILTER_DCU7_95_64; /*     0x17b8 - 0x17bc     */
283  volatile char pad__39[0x3c]; /*     0x17bc - 0x17f8     */
284  volatile u_int32_t MAC_DCU_TXFILTER_DCU7_127_96;
285                                                  /*     0x17f8 - 0x17fc     */
286};
287
288struct host_intf_reg {
289  volatile char pad__0[0x4000]; /*        0x0 - 0x4000     */
290  volatile u_int32_t HOST_INTF_RESET_CONTROL; /*     0x4000 - 0x4004     */
291  volatile u_int32_t HOST_INTF_WORK_AROUND; /*     0x4004 - 0x4008     */
292  volatile u_int32_t HOST_INTF_PM_STATE; /*     0x4008 - 0x400c     */
293  volatile u_int32_t HOST_INTF_CXPL_DEBUG_INFOL; /*     0x400c - 0x4010     */
294  volatile u_int32_t HOST_INTF_CXPL_DEBUG_INFOH; /*     0x4010 - 0x4014     */
295  volatile u_int32_t HOST_INTF_PM_CTRL; /*     0x4014 - 0x4018     */
296  volatile u_int32_t HOST_INTF_TIMEOUT; /*     0x4018 - 0x401c     */
297  volatile u_int32_t HOST_INTF_EEPROM_CTRL; /*     0x401c - 0x4020     */
298  volatile u_int32_t HOST_INTF_SREV; /*     0x4020 - 0x4024     */
299  volatile char pad__1[0x4]; /*     0x4024 - 0x4028     */
300  volatile u_int32_t HOST_INTF_INTR_SYNC_CAUSE; /*     0x4028 - 0x402c     */
301  volatile u_int32_t HOST_INTF_INTR_SYNC_ENABLE; /*     0x402c - 0x4030     */
302  volatile u_int32_t HOST_INTF_INTR_ASYNC_MASK; /*     0x4030 - 0x4034     */
303  volatile u_int32_t HOST_INTF_INTR_SYNC_MASK; /*     0x4034 - 0x4038     */
304  volatile u_int32_t HOST_INTF_INTR_ASYNC_CAUSE; /*     0x4038 - 0x403c     */
305  volatile u_int32_t HOST_INTF_INTR_ASYNC_ENABLE; /*     0x403c - 0x4040     */
306  volatile u_int32_t HOST_INTF_PCIE_PHY_RW; /*     0x4040 - 0x4044     */
307  volatile u_int32_t HOST_INTF_PCIE_PHY_LOAD; /*     0x4044 - 0x4048     */
308  volatile u_int32_t HOST_INTF_GPIO_OUT; /*     0x4048 - 0x404c     */
309  volatile u_int32_t HOST_INTF_GPIO_IN; /*     0x404c - 0x4050     */
310  volatile u_int32_t HOST_INTF_GPIO_OE; /*     0x4050 - 0x4054     */
311  volatile u_int32_t HOST_INTF_GPIO_OE1; /*     0x4054 - 0x4058     */
312  volatile u_int32_t HOST_INTF_GPIO_INTR_POLAR; /*     0x4058 - 0x405c     */
313  volatile u_int32_t HOST_INTF_GPIO_INPUT_VALUE; /*     0x405c - 0x4060     */
314  volatile u_int32_t HOST_INTF_GPIO_INPUT_MUX1; /*     0x4060 - 0x4064     */
315  volatile u_int32_t HOST_INTF_GPIO_INPUT_MUX2; /*     0x4064 - 0x4068     */
316  volatile u_int32_t HOST_INTF_GPIO_OUTPUT_MUX1; /*     0x4068 - 0x406c     */
317  volatile u_int32_t HOST_INTF_GPIO_OUTPUT_MUX2; /*     0x406c - 0x4070     */
318  volatile u_int32_t HOST_INTF_GPIO_OUTPUT_MUX3; /*     0x4070 - 0x4074     */
319  volatile u_int32_t HOST_INTF_GPIO_INPUT_STATE; /*     0x4074 - 0x4078     */
320  volatile u_int32_t HOST_INTF_SPARE; /*     0x4078 - 0x407c     */
321  volatile u_int32_t HOST_INTF_PCIE_CORE_RST_EN; /*     0x407c - 0x4080     */
322  volatile u_int32_t HOST_INTF_CLKRUN; /*     0x4080 - 0x4084     */
323  volatile u_int32_t HOST_INTF_EEPROM_STS; /*     0x4084 - 0x4088     */
324  volatile u_int32_t HOST_INTF_OBS_CTRL; /*     0x4088 - 0x408c     */
325  volatile u_int32_t HOST_INTF_RFSILENT; /*     0x408c - 0x4090     */
326  volatile u_int32_t HOST_INTF_GPIO_PDPU; /*     0x4090 - 0x4094     */
327  volatile u_int32_t HOST_INTF_GPIO_PDPU1; /*     0x4094 - 0x4098     */
328  volatile u_int32_t HOST_INTF_GPIO_DS; /*     0x4098 - 0x409c     */
329  volatile u_int32_t HOST_INTF_GPIO_DS1; /*     0x409c - 0x40a0     */
330  volatile u_int32_t HOST_INTF_MISC; /*     0x40a0 - 0x40a4     */
331  volatile u_int32_t HOST_INTF_PCIE_MSI; /*     0x40a4 - 0x40a8     */
332  volatile char pad__2[0x8]; /*     0x40a8 - 0x40b0     */
333  volatile u_int32_t HOST_INTF_PCIE_PHY_LATENCY_NFTS_ADJ;
334                                                  /*     0x40b0 - 0x40b4     */
335  volatile u_int32_t HOST_INTF_MAC_TDMA_CCA_CNTL; /*     0x40b4 - 0x40b8     */
336  volatile u_int32_t HOST_INTF_MAC_TXAPSYNC; /*     0x40b8 - 0x40bc     */
337  volatile u_int32_t HOST_INTF_MAC_TXSYNC_INITIAL_SYNC_TMR;
338                                                  /*     0x40bc - 0x40c0     */
339  volatile u_int32_t HOST_INTF_INTR_PRIORITY_SYNC_CAUSE;
340                                                  /*     0x40c0 - 0x40c4     */
341  volatile u_int32_t HOST_INTF_INTR_PRIORITY_SYNC_ENABLE;
342                                                  /*     0x40c4 - 0x40c8     */
343  volatile u_int32_t HOST_INTF_INTR_PRIORITY_ASYNC_MASK;
344                                                  /*     0x40c8 - 0x40cc     */
345  volatile u_int32_t HOST_INTF_INTR_PRIORITY_SYNC_MASK;
346                                                  /*     0x40cc - 0x40d0     */
347  volatile u_int32_t HOST_INTF_INTR_PRIORITY_ASYNC_CAUSE;
348                                                  /*     0x40d0 - 0x40d4     */
349  volatile u_int32_t HOST_INTF_INTR_PRIORITY_ASYNC_ENABLE;
350                                                  /*     0x40d4 - 0x40d8     */
351  volatile u_int32_t HOST_INTF_OTP; /*     0x40d8 - 0x40dc     */
352  volatile char pad__3[0x4]; /*     0x40dc - 0x40e0     */
353  volatile u_int32_t PCIE_CO_ERR_CTR0; /*     0x40e0 - 0x40e4     */
354  volatile u_int32_t PCIE_CO_ERR_CTR1; /*     0x40e4 - 0x40e8     */
355  volatile u_int32_t PCIE_CO_ERR_CTR_CTRL; /*     0x40e8 - 0x40ec     */
356  /* Poseidon, Jupiter */
357  volatile u_int32_t AXI_INTERCONNECT_CTRL; /*     0x40ec - 0x40f0     */
358  /* Jupiter */
359  volatile u_int32_t PCIE_AXI_BRIDGE_CTRL; /*     0x40f0 - 0x40f4     */
360};
361
362struct emulation_misc_regs {
363  volatile char pad__0[0x4f00]; /*        0x0 - 0x4f00     */
364  volatile u_int32_t FPGA_PHY_LAYER_REVID; /*     0x4f00 - 0x4f04     */
365  volatile u_int32_t FPGA_LINK_LAYER_REVID; /*     0x4f04 - 0x4f08     */
366  volatile u_int32_t FPGA_REG1; /*     0x4f08 - 0x4f0c     */
367  volatile u_int32_t FPGA_REG2; /*     0x4f0c - 0x4f10     */
368  volatile u_int32_t FPGA_REG3; /*     0x4f10 - 0x4f14     */
369  volatile u_int32_t FPGA_REG4; /*     0x4f14 - 0x4f18     */
370  volatile u_int32_t FPGA_REG5; /*     0x4f18 - 0x4f1c     */
371  volatile u_int32_t FPGA_REG6; /*     0x4f1c - 0x4f20     */
372  volatile u_int32_t FPGA_REG7; /*     0x4f20 - 0x4f24     */
373  volatile u_int32_t FPGA_REG8; /*     0x4f24 - 0x4f28     */
374  volatile u_int32_t FPGA_REG9; /*     0x4f28 - 0x4f2c     */
375  volatile u_int32_t FPGA_REG10; /*     0x4f2c - 0x4f30     */
376  /* Aphrodite-start */
377  volatile u_int32_t FPGA_REG11; /*     0x4f30 - 0x4f34     */
378  volatile u_int32_t FPGA_REG12; /*     0x4f34 - 0x4f38     */
379  volatile u_int32_t FPGA_REG13; /*     0x4f38 - 0x4f3c     */
380  volatile u_int32_t FPGA_REG14; /*     0x4f3c - 0x4f40     */
381  /* Aphrodite-end */
382};
383
384struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_0 {
385  volatile u_int32_t ID; /*        0x0 - 0x4        */
386  volatile u_int32_t STS_CMD_RGSTR; /*        0x4 - 0x8        */
387  volatile u_int32_t CLS_REV_ID; /*        0x8 - 0xc        */
388  volatile u_int32_t BIST_HEAD_LAT_CACH; /*        0xc - 0x10       */
389  volatile u_int32_t BAS_ADR_0; /*       0x10 - 0x14       */
390  volatile u_int32_t BAS_ADR_1; /*       0x14 - 0x18       */
391  volatile u_int32_t BAS_ADR_2; /*       0x18 - 0x1c       */
392  volatile u_int32_t BAS_ADR_3; /*       0x1c - 0x20       */
393  volatile u_int32_t BAS_ADR_4; /*       0x20 - 0x24       */
394  volatile u_int32_t BAS_ADR_5; /*       0x24 - 0x28       */
395  volatile u_int32_t CRD_CIS_PTR; /*       0x28 - 0x2c       */
396  volatile u_int32_t Sub_VenID; /*       0x2c - 0x30       */
397  volatile u_int32_t EXP_ROM_ADDR; /*       0x30 - 0x34       */
398  volatile u_int32_t CAPPTR; /*       0x34 - 0x38       */
399  volatile u_int32_t RESERVE2; /*       0x38 - 0x3c       */
400  volatile u_int32_t LAT_INT; /*       0x3c - 0x40       */
401};
402
403struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_1 {
404  volatile u_int32_t CFG_PWR_CAP; /*        0x0 - 0x4        */
405  volatile u_int32_t PWR_CSR; /*        0x4 - 0x8        */
406};
407
408struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_2 {
409  volatile u_int32_t MSG_CTR; /*        0x0 - 0x4        */
410  volatile u_int32_t MSI_L32; /*        0x4 - 0x8        */
411  volatile u_int32_t MSI_U32; /*        0x8 - 0xc        */
412  volatile u_int32_t MSI_DATA; /*        0xc - 0x10       */
413};
414
415struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_3 {
416  volatile u_int32_t PCIE_CAP; /*        0x0 - 0x4        */
417  volatile u_int32_t DEV_CAP; /*        0x4 - 0x8        */
418  volatile u_int32_t DEV_STS_CTRL; /*        0x8 - 0xc        */
419  volatile u_int32_t LNK_CAP; /*        0xc - 0x10       */
420  volatile u_int32_t LNK_STS_CTRL; /*       0x10 - 0x14       */
421  volatile u_int32_t SLT_CAP; /*       0x14 - 0x18       */
422  volatile u_int32_t SLT_STS_CTRL; /*       0x18 - 0x1c       */
423};
424
425struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_5 {
426  volatile u_int32_t VPD_CAP; /*        0x0 - 0x4        */
427  volatile u_int32_t VPD_DATA; /*        0x4 - 0x8        */
428};
429
430struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_6 {
431  volatile u_int32_t PCIE_EN_CAP_AER; /*        0x0 - 0x4        */
432  volatile u_int32_t UN_ERR_ST_R; /*        0x4 - 0x8        */
433  volatile u_int32_t UN_ERR_MS_R; /*        0x8 - 0xc        */
434  volatile u_int32_t UN_ERR_SV_R; /*        0xc - 0x10       */
435  volatile u_int32_t CO_ERR_ST_R; /*       0x10 - 0x14       */
436  volatile u_int32_t CO_ERR_MS_R; /*       0x14 - 0x18       */
437  volatile u_int32_t ADERR_CAP_CR; /*       0x18 - 0x1c       */
438  volatile u_int32_t HD_L_R0; /*       0x1c - 0x20       */
439  volatile u_int32_t HD_L_R4; /*       0x20 - 0x24       */
440  volatile u_int32_t HD_L_R8; /*       0x24 - 0x28       */
441  volatile u_int32_t HD_L_R12; /*       0x28 - 0x2c       */
442};
443
444struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_7 {
445  volatile u_int32_t PCIE_EN_CAP_VC; /*        0x0 - 0x4        */
446  volatile u_int32_t PVC_CAP_R1; /*        0x4 - 0x8        */
447  volatile u_int32_t P_CAP_R2; /*        0x8 - 0xc        */
448  volatile u_int32_t PVC_STS_CTRL; /*        0xc - 0x10       */
449  volatile u_int32_t VC_CAP_R; /*       0x10 - 0x14       */
450  volatile u_int32_t VC_CTL_R; /*       0x14 - 0x18       */
451  volatile u_int32_t VC_STS_RSV; /*       0x18 - 0x1c       */
452  volatile u_int32_t VCR_CAP_R1; /*       0x1c - 0x20       */
453  volatile u_int32_t VCR_CTRL_R1; /*       0x20 - 0x24       */
454  volatile u_int32_t VCR_STS_R1; /*       0x24 - 0x28       */
455};
456
457struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_7_Jupiter {
458  volatile u_int32_t PCIE_EN_CAP_VC; /*        0x0 - 0x4        */
459  volatile u_int32_t PVC_CAP_R1; /*        0x4 - 0x8        */
460  volatile u_int32_t P_CAP_R2; /*        0x8 - 0xc        */
461  volatile u_int32_t PVC_STS_CTRL; /*        0xc - 0x10       */
462  volatile u_int32_t VC_CAP_R; /*       0x10 - 0x14       */
463  volatile u_int32_t VC_CTL_R; /*       0x14 - 0x18       */
464  volatile u_int32_t VC_STS_RSV; /*       0x18 - 0x1c       */
465};
466
467struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_8 {
468  volatile u_int32_t DEV_EN_CAP; /*        0x0 - 0x4        */
469  volatile u_int32_t SN_R1; /*        0x4 - 0x8        */
470  volatile u_int32_t SN_R2; /*        0x8 - 0xc        */
471};
472
473struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_9 {
474  volatile u_int32_t LAT_REL_TIM; /*        0x0 - 0x4        */
475  volatile u_int32_t OT_MSG_R; /*        0x4 - 0x8        */
476  volatile u_int32_t PT_LNK_R; /*        0x8 - 0xc        */
477  volatile u_int32_t ACk_FREQ_R; /*        0xc - 0x10       */
478  volatile u_int32_t PT_LNK_CTRL_R; /*       0x10 - 0x14       */
479  volatile u_int32_t LN_SKW_R; /*       0x14 - 0x18       */
480  volatile u_int32_t SYMB_N_R; /*       0x18 - 0x1c       */
481  volatile u_int32_t SYMB_T_R; /*       0x1c - 0x20       */
482  volatile u_int32_t FL_MSK_R2; /*       0x20 - 0x24       */
483  volatile char pad__0[0x4]; /*       0x24 - 0x28       */
484  volatile u_int32_t DB_R0; /*       0x28 - 0x2c       */
485  volatile u_int32_t DB_R1; /*       0x2c - 0x30       */
486  volatile u_int32_t TR_P_STS_R; /*       0x30 - 0x34       */
487  volatile u_int32_t TR_NP_STS_R; /*       0x34 - 0x38       */
488  volatile u_int32_t TR_C_STS_R; /*       0x38 - 0x3c       */
489  volatile u_int32_t Q_STS_R; /*       0x3c - 0x40       */
490  volatile u_int32_t VC_TR_A_R1; /*       0x40 - 0x44       */
491  volatile u_int32_t VC_TR_A_R2; /*       0x44 - 0x48       */
492  volatile u_int32_t VC0_PR_Q_C; /*       0x48 - 0x4c       */
493  volatile u_int32_t VC0_NPR_Q_C; /*       0x4c - 0x50       */
494  volatile u_int32_t VC0_CR_Q_C; /*       0x50 - 0x54       */
495  volatile u_int32_t VC1_PR_Q_C; /*       0x54 - 0x58       */
496  volatile u_int32_t VC1_NPR_Q_C; /*       0x58 - 0x5c       */
497  volatile u_int32_t VC1_CR_Q_C; /*       0x5c - 0x60       */
498  volatile u_int32_t VC2_PR_Q_C; /*       0x60 - 0x64       */
499  volatile u_int32_t VC2_NPR_Q_C; /*       0x64 - 0x68       */
500  volatile u_int32_t VC2_CR_Q_C; /*       0x68 - 0x6c       */
501  volatile u_int32_t VC3_PR_Q_C; /*       0x6c - 0x70       */
502  volatile u_int32_t VC3_NPR_Q_C; /*       0x70 - 0x74       */
503  volatile u_int32_t VC3_CR_Q_C; /*       0x74 - 0x78       */
504  volatile u_int32_t VC4_PR_Q_C; /*       0x78 - 0x7c       */
505  volatile u_int32_t VC4_NPR_Q_C; /*       0x7c - 0x80       */
506  volatile u_int32_t VC4_CR_Q_C; /*       0x80 - 0x84       */
507  volatile u_int32_t VC5_PR_Q_C; /*       0x84 - 0x88       */
508  volatile u_int32_t VC5_NPR_Q_C; /*       0x88 - 0x8c       */
509  volatile u_int32_t VC5_CR_Q_C; /*       0x8c - 0x90       */
510  volatile u_int32_t VC6_PR_Q_C; /*       0x90 - 0x94       */
511  volatile u_int32_t VC6_NPR_Q_C; /*       0x94 - 0x98       */
512  volatile u_int32_t VC6_CR_Q_C; /*       0x98 - 0x9c       */
513  volatile u_int32_t VC7_PR_Q_C; /*       0x9c - 0xa0       */
514  volatile u_int32_t VC7_NPR_Q_C; /*       0xa0 - 0xa4       */
515  volatile u_int32_t VC7_CR_Q_C; /*       0xa4 - 0xa8       */
516  volatile u_int32_t VC0_PB_D; /*       0xa8 - 0xac       */
517  volatile u_int32_t VC0_NPB_D; /*       0xac - 0xb0       */
518  volatile u_int32_t VC0_CB_D; /*       0xb0 - 0xb4       */
519  volatile u_int32_t VC1_PB_D; /*       0xb4 - 0xb8       */
520  volatile u_int32_t VC1_NPB_D; /*       0xb8 - 0xbc       */
521  volatile u_int32_t VC1_CB_D; /*       0xbc - 0xc0       */
522  volatile u_int32_t VC2_PB_D; /*       0xc0 - 0xc4       */
523  volatile u_int32_t VC2_NPB_D; /*       0xc4 - 0xc8       */
524  volatile u_int32_t VC2_CB_D; /*       0xc8 - 0xcc       */
525  volatile u_int32_t VC3_PB_D; /*       0xcc - 0xd0       */
526  volatile u_int32_t VC3_NPB_D; /*       0xd0 - 0xd4       */
527  volatile u_int32_t VC3_CB_D; /*       0xd4 - 0xd8       */
528  volatile u_int32_t VC4_PB_D; /*       0xd8 - 0xdc       */
529  volatile u_int32_t VC4_NPB_D; /*       0xdc - 0xe0       */
530  volatile u_int32_t VC4_CB_D; /*       0xe0 - 0xe4       */
531  volatile u_int32_t VC5_PB_D; /*       0xe4 - 0xe8       */
532  volatile u_int32_t VC5_NPB_D; /*       0xe8 - 0xec       */
533  volatile u_int32_t VC5_CB_D; /*       0xec - 0xf0       */
534  volatile u_int32_t VC6_PB_D; /*       0xf0 - 0xf4       */
535  volatile u_int32_t VC6_NPB_D; /*       0xf4 - 0xf8       */
536  volatile u_int32_t VC6_CB_D; /*       0xf8 - 0xfc       */
537  volatile u_int32_t VC7_PB_D; /*       0xfc - 0x100      */
538  volatile u_int32_t VC7_NPB_D; /*      0x100 - 0x104      */
539  volatile u_int32_t VC7_CB_D; /*      0x104 - 0x108      */
540  volatile char pad__1[0x4]; /*      0x108 - 0x10c      */
541  volatile u_int32_t GEN2; /*      0x10c - 0x110      */
542  volatile u_int32_t PHY_STS_R; /*      0x110 - 0x114      */
543  volatile u_int32_t PHY_CTRL_R; /*      0x114 - 0x118      */
544};
545
546struct DWC_pcie_dbi_axi {
547  volatile char pad__0[0x5000]; /*        0x0 - 0x5000     */
548  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_0 DWC_pcie_dbi_axi_0;
549                                                  /*     0x5000 - 0x5040     */
550  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_1 DWC_pcie_dbi_axi_1;
551                                                  /*     0x5040 - 0x5048     */
552  volatile char pad__1[0x8]; /*     0x5048 - 0x5050     */
553  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_2 DWC_pcie_dbi_axi_2;
554                                                  /*     0x5050 - 0x5060     */
555  volatile char pad__2[0x10]; /*     0x5060 - 0x5070     */
556  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_3 DWC_pcie_dbi_axi_3;
557                                                  /*     0x5070 - 0x508c     */
558  volatile char pad__3[0x44]; /*     0x508c - 0x50d0     */
559  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_5 DWC_pcie_dbi_axi_5;
560                                                  /*     0x50d0 - 0x50d8     */
561  volatile char pad__4[0x28]; /*     0x50d8 - 0x5100     */
562  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_6 DWC_pcie_dbi_axi_6;
563                                                  /*     0x5100 - 0x512c     */
564  volatile char pad__5[0x14]; /*     0x512c - 0x5140     */
565  union {
566      struct {
567          struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_7 DWC_pcie_dbi_axi_7;
568                                                  /*     0x5140 - 0x5168     */
569          volatile char pad__1[0x198]; /*     0x5168 - 0x5300     */
570          struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_8 DWC_pcie_dbi_axi_8;
571                                                  /*     0x5300 - 0x530c     */
572          volatile char pad__2[0x3f4]; /*     0x530c - 0x5700     */
573      } Osprey;
574
575      struct pcie_dbi_axi {
576          struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_7_Jupiter DWC_pcie_dbi_axi_7;
577                                                  /*     0x5140 - 0x515c     */
578          volatile char pad__1[0x4]; /*     0x515c - 0x5160     */
579          struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_8 DWC_pcie_dbi_axi_8;
580                                                  /*     0x5160 - 0x516c     */
581          volatile char pad__2[0x594]; /*     0x516c - 0x5700     */
582      } Jupiter;
583  } overlay_0x5140; /*     0x5140 - 0x5700     */
584  struct DWC_pcie_dbi_axi__DWC_pcie_dbi_axi_9 DWC_pcie_dbi_axi_9;
585                                                  /*     0x5700 - 0x5818     */
586};
587
588struct rtc_reg {
589  volatile char pad__0[0x7000]; /*        0x0 - 0x7000     */
590  volatile u_int32_t RESET_CONTROL; /*     0x7000 - 0x7004     */
591  volatile u_int32_t XTAL_CONTROL; /*     0x7004 - 0x7008     */
592  volatile u_int32_t REG_CONTROL0; /*     0x7008 - 0x700c     */
593  volatile u_int32_t REG_CONTROL1; /*     0x700c - 0x7010     */
594  volatile u_int32_t QUADRATURE; /*     0x7010 - 0x7014     */
595  volatile u_int32_t PLL_CONTROL; /*     0x7014 - 0x7018     */
596  volatile u_int32_t PLL_SETTLE; /*     0x7018 - 0x701c     */
597  volatile u_int32_t XTAL_SETTLE; /*     0x701c - 0x7020     */
598  volatile u_int32_t CLOCK_OUT; /*     0x7020 - 0x7024     */
599  volatile u_int32_t BIAS_OVERRIDE; /*     0x7024 - 0x7028     */
600  volatile u_int32_t RESET_CAUSE; /*     0x7028 - 0x702c     */
601  volatile u_int32_t SYSTEM_SLEEP; /*     0x702c - 0x7030     */
602  volatile u_int32_t MAC_SLEEP_CONTROL; /*     0x7030 - 0x7034     */
603  volatile u_int32_t KEEP_AWAKE; /*     0x7034 - 0x7038     */
604  volatile u_int32_t DERIVED_RTC_CLK; /*     0x7038 - 0x703c     */
605  volatile u_int32_t PLL_CONTROL2; /*     0x703c - 0x7040     */
606};
607
608struct rtc_sync_reg {
609  volatile char pad__0[0x7040]; /*        0x0 - 0x7040     */
610  volatile u_int32_t RTC_SYNC_RESET; /*     0x7040 - 0x7044     */
611  volatile u_int32_t RTC_SYNC_STATUS; /*     0x7044 - 0x7048     */
612  volatile u_int32_t RTC_SYNC_DERIVED; /*     0x7048 - 0x704c     */
613  volatile u_int32_t RTC_SYNC_FORCE_WAKE; /*     0x704c - 0x7050     */
614  volatile u_int32_t RTC_SYNC_INTR_CAUSE; /*     0x7050 - 0x7054     */
615  volatile u_int32_t RTC_SYNC_INTR_ENABLE; /*     0x7054 - 0x7058     */
616  volatile u_int32_t RTC_SYNC_INTR_MASK; /*     0x7058 - 0x705c     */
617};
618
619struct merlin2_0_radio_reg_map {
620  volatile char pad__0[0x7800]; /*        0x0 - 0x7800     */
621  volatile u_int32_t RXTXBB1_CH1; /*     0x7800 - 0x7804     */
622  volatile u_int32_t RXTXBB2_CH1; /*     0x7804 - 0x7808     */
623  volatile u_int32_t RXTXBB3_CH1; /*     0x7808 - 0x780c     */
624  volatile u_int32_t RXTXBB4_CH1; /*     0x780c - 0x7810     */
625  volatile u_int32_t RF2G1_CH1; /*     0x7810 - 0x7814     */
626  volatile u_int32_t RF2G2_CH1; /*     0x7814 - 0x7818     */
627  volatile u_int32_t RF5G1_CH1; /*     0x7818 - 0x781c     */
628  volatile u_int32_t RF5G2_CH1; /*     0x781c - 0x7820     */
629  volatile u_int32_t RF5G3_CH1; /*     0x7820 - 0x7824     */
630  volatile u_int32_t RXTXBB1_CH0; /*     0x7824 - 0x7828     */
631  volatile u_int32_t RXTXBB2_CH0; /*     0x7828 - 0x782c     */
632  volatile u_int32_t RXTXBB3_CH0; /*     0x782c - 0x7830     */
633  volatile u_int32_t RXTXBB4_CH0; /*     0x7830 - 0x7834     */
634  volatile u_int32_t RF5G1_CH0; /*     0x7834 - 0x7838     */
635  volatile u_int32_t RF5G2_CH0; /*     0x7838 - 0x783c     */
636  volatile u_int32_t RF5G3_CH0; /*     0x783c - 0x7840     */
637  volatile u_int32_t RF2G1_CH0; /*     0x7840 - 0x7844     */
638  volatile u_int32_t RF2G2_CH0; /*     0x7844 - 0x7848     */
639  volatile u_int32_t SYNTH1; /*     0x7848 - 0x784c     */
640  volatile u_int32_t SYNTH2; /*     0x784c - 0x7850     */
641  volatile u_int32_t SYNTH3; /*     0x7850 - 0x7854     */
642  volatile u_int32_t SYNTH4; /*     0x7854 - 0x7858     */
643  volatile u_int32_t SYNTH5; /*     0x7858 - 0x785c     */
644  volatile u_int32_t SYNTH6; /*     0x785c - 0x7860     */
645  volatile u_int32_t SYNTH7; /*     0x7860 - 0x7864     */
646  volatile u_int32_t SYNTH8; /*     0x7864 - 0x7868     */
647  volatile u_int32_t SYNTH9; /*     0x7868 - 0x786c     */
648  volatile u_int32_t SYNTH10; /*     0x786c - 0x7870     */
649  volatile u_int32_t SYNTH11; /*     0x7870 - 0x7874     */
650  volatile u_int32_t BIAS1; /*     0x7874 - 0x7878     */
651  volatile u_int32_t BIAS2; /*     0x7878 - 0x787c     */
652  volatile u_int32_t BIAS3; /*     0x787c - 0x7880     */
653  volatile u_int32_t BIAS4; /*     0x7880 - 0x7884     */
654  volatile u_int32_t GAIN0; /*     0x7884 - 0x7888     */
655  volatile u_int32_t GAIN1; /*     0x7888 - 0x788c     */
656  volatile u_int32_t TOP0; /*     0x788c - 0x7890     */
657  volatile u_int32_t TOP1; /*     0x7890 - 0x7894     */
658  volatile u_int32_t TOP2; /*     0x7894 - 0x7898     */
659  volatile u_int32_t TOP3; /*     0x7898 - 0x789c     */
660};
661
662struct analog_intf_reg_csr {
663  volatile char pad__0[0x7900]; /*        0x0 - 0x7900     */
664  volatile u_int32_t SW_OVERRIDE; /*     0x7900 - 0x7904     */
665  volatile u_int32_t SIN_VAL; /*     0x7904 - 0x7908     */
666  volatile u_int32_t SW_SCLK; /*     0x7908 - 0x790c     */
667  volatile u_int32_t SW_CNTL; /*     0x790c - 0x7910     */
668};
669
670struct mac_pcu_reg {
671  volatile char pad__0[0x8000]; /*        0x0 - 0x8000     */
672  volatile u_int32_t MAC_PCU_STA_ADDR_L32; /*     0x8000 - 0x8004     */
673  volatile u_int32_t MAC_PCU_STA_ADDR_U16; /*     0x8004 - 0x8008     */
674  volatile u_int32_t MAC_PCU_BSSID_L32; /*     0x8008 - 0x800c     */
675  volatile u_int32_t MAC_PCU_BSSID_U16; /*     0x800c - 0x8010     */
676  volatile u_int32_t MAC_PCU_BCN_RSSI_AVE; /*     0x8010 - 0x8014     */
677  volatile u_int32_t MAC_PCU_ACK_CTS_TIMEOUT; /*     0x8014 - 0x8018     */
678  volatile u_int32_t MAC_PCU_BCN_RSSI_CTL; /*     0x8018 - 0x801c     */
679  volatile u_int32_t MAC_PCU_USEC_LATENCY; /*     0x801c - 0x8020     */
680  volatile u_int32_t MAC_PCU_RESET_TSF; /*     0x8020 - 0x8024     */
681  volatile char pad__1[0x14]; /*     0x8024 - 0x8038     */
682  volatile u_int32_t MAC_PCU_MAX_CFP_DUR; /*     0x8038 - 0x803c     */
683  volatile u_int32_t MAC_PCU_RX_FILTER; /*     0x803c - 0x8040     */
684  volatile u_int32_t MAC_PCU_MCAST_FILTER_L32; /*     0x8040 - 0x8044     */
685  volatile u_int32_t MAC_PCU_MCAST_FILTER_U32; /*     0x8044 - 0x8048     */
686  volatile u_int32_t MAC_PCU_DIAG_SW; /*     0x8048 - 0x804c     */
687  volatile u_int32_t MAC_PCU_TSF_L32; /*     0x804c - 0x8050     */
688  volatile u_int32_t MAC_PCU_TSF_U32; /*     0x8050 - 0x8054     */
689  volatile u_int32_t MAC_PCU_TST_ADDAC; /*     0x8054 - 0x8058     */
690  volatile u_int32_t MAC_PCU_DEF_ANTENNA; /*     0x8058 - 0x805c     */
691  volatile u_int32_t MAC_PCU_AES_MUTE_MASK_0; /*     0x805c - 0x8060     */
692  volatile u_int32_t MAC_PCU_AES_MUTE_MASK_1; /*     0x8060 - 0x8064     */
693  volatile u_int32_t MAC_PCU_GATED_CLKS; /*     0x8064 - 0x8068     */
694  volatile u_int32_t MAC_PCU_OBS_BUS_2; /*     0x8068 - 0x806c     */
695  volatile u_int32_t MAC_PCU_OBS_BUS_1; /*     0x806c - 0x8070     */
696  volatile u_int32_t MAC_PCU_DYM_MIMO_PWR_SAVE; /*     0x8070 - 0x8074     */
697  volatile u_int32_t MAC_PCU_TDMA_TXFRAME_START_TIME_TRIGGER_LSB;
698                                                  /*     0x8074 - 0x8078     */
699  volatile u_int32_t MAC_PCU_TDMA_TXFRAME_START_TIME_TRIGGER_MSB;
700                                                  /*     0x8078 - 0x807c     */
701  volatile char pad__2[0x4]; /*     0x807c - 0x8080     */
702  volatile u_int32_t MAC_PCU_LAST_BEACON_TSF; /*     0x8080 - 0x8084     */
703  volatile u_int32_t MAC_PCU_NAV; /*     0x8084 - 0x8088     */
704  volatile u_int32_t MAC_PCU_RTS_SUCCESS_CNT; /*     0x8088 - 0x808c     */
705  volatile u_int32_t MAC_PCU_RTS_FAIL_CNT; /*     0x808c - 0x8090     */
706  volatile u_int32_t MAC_PCU_ACK_FAIL_CNT; /*     0x8090 - 0x8094     */
707  volatile u_int32_t MAC_PCU_FCS_FAIL_CNT; /*     0x8094 - 0x8098     */
708  volatile u_int32_t MAC_PCU_BEACON_CNT; /*     0x8098 - 0x809c     */
709  volatile u_int32_t MAC_PCU_TDMA_SLOT_ALERT_CNTL;
710                                                  /*     0x809c - 0x80a0     */
711  volatile u_int32_t MAC_PCU_BASIC_SET; /*     0x80a0 - 0x80a4     */
712  volatile u_int32_t MAC_PCU_MGMT_SEQ; /*     0x80a4 - 0x80a8     */
713  volatile u_int32_t MAC_PCU_BF_RPT1; /*     0x80a8 - 0x80ac     */
714  volatile u_int32_t MAC_PCU_BF_RPT2; /*     0x80ac - 0x80b0     */
715  volatile u_int32_t MAC_PCU_TX_ANT_1; /*     0x80b0 - 0x80b4     */
716  volatile u_int32_t MAC_PCU_TX_ANT_2; /*     0x80b4 - 0x80b8     */
717  volatile u_int32_t MAC_PCU_TX_ANT_3; /*     0x80b8 - 0x80bc     */
718  volatile u_int32_t MAC_PCU_TX_ANT_4; /*     0x80bc - 0x80c0     */
719  volatile u_int32_t MAC_PCU_XRMODE; /*     0x80c0 - 0x80c4     */
720  volatile u_int32_t MAC_PCU_XRDEL; /*     0x80c4 - 0x80c8     */
721  volatile u_int32_t MAC_PCU_XRTO; /*     0x80c8 - 0x80cc     */
722  volatile u_int32_t MAC_PCU_XRCRP; /*     0x80cc - 0x80d0     */
723  volatile u_int32_t MAC_PCU_XRSTMP; /*     0x80d0 - 0x80d4     */
724  volatile u_int32_t MAC_PCU_SLP1; /*     0x80d4 - 0x80d8     */
725  volatile u_int32_t MAC_PCU_SLP2; /*     0x80d8 - 0x80dc     */
726  volatile u_int32_t MAC_PCU_SELF_GEN_DEFAULT; /*     0x80dc - 0x80e0     */
727  volatile u_int32_t MAC_PCU_ADDR1_MASK_L32; /*     0x80e0 - 0x80e4     */
728  volatile u_int32_t MAC_PCU_ADDR1_MASK_U16; /*     0x80e4 - 0x80e8     */
729  volatile u_int32_t MAC_PCU_TPC; /*     0x80e8 - 0x80ec     */
730  volatile u_int32_t MAC_PCU_TX_FRAME_CNT; /*     0x80ec - 0x80f0     */
731  volatile u_int32_t MAC_PCU_RX_FRAME_CNT; /*     0x80f0 - 0x80f4     */
732  volatile u_int32_t MAC_PCU_RX_CLEAR_CNT; /*     0x80f4 - 0x80f8     */
733  volatile u_int32_t MAC_PCU_CYCLE_CNT; /*     0x80f8 - 0x80fc     */
734  volatile u_int32_t MAC_PCU_QUIET_TIME_1; /*     0x80fc - 0x8100     */
735  volatile u_int32_t MAC_PCU_QUIET_TIME_2; /*     0x8100 - 0x8104     */
736  volatile char pad__3[0x4]; /*     0x8104 - 0x8108     */
737  volatile u_int32_t MAC_PCU_QOS_NO_ACK; /*     0x8108 - 0x810c     */
738  volatile u_int32_t MAC_PCU_PHY_ERROR_MASK; /*     0x810c - 0x8110     */
739  volatile u_int32_t MAC_PCU_XRLAT; /*     0x8110 - 0x8114     */
740  volatile u_int32_t MAC_PCU_RXBUF; /*     0x8114 - 0x8118     */
741  volatile u_int32_t MAC_PCU_MIC_QOS_CONTROL; /*     0x8118 - 0x811c     */
742  volatile u_int32_t MAC_PCU_MIC_QOS_SELECT; /*     0x811c - 0x8120     */
743  volatile u_int32_t MAC_PCU_MISC_MODE; /*     0x8120 - 0x8124     */
744  volatile u_int32_t MAC_PCU_FILTER_OFDM_CNT; /*     0x8124 - 0x8128     */
745  volatile u_int32_t MAC_PCU_FILTER_CCK_CNT; /*     0x8128 - 0x812c     */
746  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_1; /*     0x812c - 0x8130     */
747  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_1_MASK; /*     0x8130 - 0x8134     */
748  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_2; /*     0x8134 - 0x8138     */
749  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_2_MASK; /*     0x8138 - 0x813c     */
750  volatile u_int32_t MAC_PCU_TSF_THRESHOLD; /*     0x813c - 0x8140     */
751  volatile char pad__4[0x4]; /*     0x8140 - 0x8144     */
752  volatile u_int32_t MAC_PCU_PHY_ERROR_EIFS_MASK; /*     0x8144 - 0x8148     */
753  volatile char pad__5[0x20]; /*     0x8148 - 0x8168     */
754  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_3; /*     0x8168 - 0x816c     */
755  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_3_MASK; /*     0x816c - 0x8170     */
756  volatile u_int32_t MAC_PCU_BLUETOOTH_MODE; /*     0x8170 - 0x8174     */
757  volatile u_int32_t MAC_PCU_BLUETOOTH_WL_WEIGHTS0;
758                                                  /*     0x8174 - 0x8178     */
759  volatile u_int32_t MAC_PCU_HCF_TIMEOUT; /*     0x8178 - 0x817c     */
760  volatile u_int32_t MAC_PCU_BLUETOOTH_MODE2; /*     0x817c - 0x8180     */
761  volatile u_int32_t MAC_PCU_GENERIC_TIMERS2[16]; /*     0x8180 - 0x81c0     */
762  volatile u_int32_t MAC_PCU_GENERIC_TIMERS2_MODE;
763                                                  /*     0x81c0 - 0x81c4     */
764  volatile u_int32_t MAC_PCU_BLUETOOTH_WL_WEIGHTS1;
765                                                  /*     0x81c4 - 0x81c8     */
766  volatile u_int32_t MAC_PCU_BLUETOOTH_TSF_BT_ACTIVE;
767                                                  /*     0x81c8 - 0x81cc     */
768  volatile u_int32_t MAC_PCU_BLUETOOTH_TSF_BT_PRIORITY;
769                                                  /*     0x81cc - 0x81d0     */
770  volatile u_int32_t MAC_PCU_TXSIFS; /*     0x81d0 - 0x81d4     */
771  volatile u_int32_t MAC_PCU_BLUETOOTH_MODE3; /*     0x81d4 - 0x81d8     */
772  volatile char pad__6[0x14]; /*     0x81d8 - 0x81ec     */
773  volatile u_int32_t MAC_PCU_TXOP_X; /*     0x81ec - 0x81f0     */
774  volatile u_int32_t MAC_PCU_TXOP_0_3; /*     0x81f0 - 0x81f4     */
775  volatile u_int32_t MAC_PCU_TXOP_4_7; /*     0x81f4 - 0x81f8     */
776  volatile u_int32_t MAC_PCU_TXOP_8_11; /*     0x81f8 - 0x81fc     */
777  volatile u_int32_t MAC_PCU_TXOP_12_15; /*     0x81fc - 0x8200     */
778  volatile u_int32_t MAC_PCU_GENERIC_TIMERS[16]; /*     0x8200 - 0x8240     */
779  volatile u_int32_t MAC_PCU_GENERIC_TIMERS_MODE; /*     0x8240 - 0x8244     */
780  volatile u_int32_t MAC_PCU_SLP32_MODE; /*     0x8244 - 0x8248     */
781  volatile u_int32_t MAC_PCU_SLP32_WAKE; /*     0x8248 - 0x824c     */
782  volatile u_int32_t MAC_PCU_SLP32_INC; /*     0x824c - 0x8250     */
783  volatile u_int32_t MAC_PCU_SLP_MIB1; /*     0x8250 - 0x8254     */
784  volatile u_int32_t MAC_PCU_SLP_MIB2; /*     0x8254 - 0x8258     */
785  volatile u_int32_t MAC_PCU_SLP_MIB3; /*     0x8258 - 0x825c     */
786  volatile u_int32_t MAC_PCU_WOW1; /*     0x825c - 0x8260     */
787  volatile u_int32_t MAC_PCU_WOW2; /*     0x8260 - 0x8264     */
788  volatile u_int32_t MAC_PCU_LOGIC_ANALYZER; /*     0x8264 - 0x8268     */
789  volatile u_int32_t MAC_PCU_LOGIC_ANALYZER_32L; /*     0x8268 - 0x826c     */
790  volatile u_int32_t MAC_PCU_LOGIC_ANALYZER_16U; /*     0x826c - 0x8270     */
791  volatile u_int32_t MAC_PCU_WOW3_BEACON_FAIL; /*     0x8270 - 0x8274     */
792  volatile u_int32_t MAC_PCU_WOW3_BEACON; /*     0x8274 - 0x8278     */
793  volatile u_int32_t MAC_PCU_WOW3_KEEP_ALIVE; /*     0x8278 - 0x827c     */
794  volatile u_int32_t MAC_PCU_WOW_KA; /*     0x827c - 0x8280     */
795  volatile char pad__7[0x4]; /*     0x8280 - 0x8284     */
796  volatile u_int32_t PCU_1US; /*     0x8284 - 0x8288     */
797  volatile u_int32_t PCU_KA; /*     0x8288 - 0x828c     */
798  volatile u_int32_t WOW_EXACT; /*     0x828c - 0x8290     */
799  volatile char pad__8[0x4]; /*     0x8290 - 0x8294     */
800  volatile u_int32_t PCU_WOW4; /*     0x8294 - 0x8298     */
801  volatile u_int32_t PCU_WOW5; /*     0x8298 - 0x829c     */
802  volatile u_int32_t MAC_PCU_PHY_ERR_CNT_MASK_CONT;
803                                                  /*     0x829c - 0x82a0     */
804  volatile char pad__9[0x60]; /*     0x82a0 - 0x8300     */
805  volatile u_int32_t MAC_PCU_AZIMUTH_MODE; /*     0x8300 - 0x8304     */
806  volatile char pad__10[0x10]; /*     0x8304 - 0x8314     */
807  volatile u_int32_t MAC_PCU_AZIMUTH_TIME_STAMP; /*     0x8314 - 0x8318     */
808  volatile u_int32_t MAC_PCU_20_40_MODE; /*     0x8318 - 0x831c     */
809  volatile u_int32_t MAC_PCU_H_XFER_TIMEOUT; /*     0x831c - 0x8320     */
810  volatile char pad__11[0x8]; /*     0x8320 - 0x8328     */
811  volatile u_int32_t MAC_PCU_RX_CLEAR_DIFF_CNT; /*     0x8328 - 0x832c     */
812  volatile u_int32_t MAC_PCU_SELF_GEN_ANTENNA_MASK;
813                                                  /*     0x832c - 0x8330     */
814  volatile u_int32_t MAC_PCU_BA_BAR_CONTROL; /*     0x8330 - 0x8334     */
815  volatile u_int32_t MAC_PCU_LEGACY_PLCP_SPOOF; /*     0x8334 - 0x8338     */
816  volatile u_int32_t MAC_PCU_PHY_ERROR_MASK_CONT; /*     0x8338 - 0x833c     */
817  volatile u_int32_t MAC_PCU_TX_TIMER; /*     0x833c - 0x8340     */
818  volatile u_int32_t MAC_PCU_TXBUF_CTRL; /*     0x8340 - 0x8344     */
819  volatile u_int32_t MAC_PCU_MISC_MODE2; /*     0x8344 - 0x8348     */
820  volatile u_int32_t MAC_PCU_ALT_AES_MUTE_MASK; /*     0x8348 - 0x834c     */
821  volatile u_int32_t MAC_PCU_WOW6; /*     0x834c - 0x8350     */
822  volatile u_int32_t ASYNC_FIFO_REG1; /*     0x8350 - 0x8354     */
823  volatile u_int32_t ASYNC_FIFO_REG2; /*     0x8354 - 0x8358     */
824  volatile u_int32_t ASYNC_FIFO_REG3; /*     0x8358 - 0x835c     */
825  volatile u_int32_t MAC_PCU_WOW5; /*     0x835c - 0x8360     */
826  volatile u_int32_t MAC_PCU_WOW_LENGTH1; /*     0x8360 - 0x8364     */
827  volatile u_int32_t MAC_PCU_WOW_LENGTH2; /*     0x8364 - 0x8368     */
828  volatile u_int32_t WOW_PATTERN_MATCH_LESS_THAN_256_BYTES;
829                                                  /*     0x8368 - 0x836c     */
830  volatile char pad__12[0x4]; /*     0x836c - 0x8370     */
831  volatile u_int32_t MAC_PCU_WOW4; /*     0x8370 - 0x8374     */
832  volatile u_int32_t WOW2_EXACT; /*     0x8374 - 0x8378     */
833  volatile u_int32_t PCU_WOW6; /*     0x8378 - 0x837c     */
834  volatile u_int32_t PCU_WOW7; /*     0x837c - 0x8380     */
835  volatile u_int32_t MAC_PCU_WOW_LENGTH3; /*     0x8380 - 0x8384     */
836  volatile u_int32_t MAC_PCU_WOW_LENGTH4; /*     0x8384 - 0x8388     */
837  volatile u_int32_t MAC_PCU_LOCATION_MODE_CONTROL;
838                                                  /*     0x8388 - 0x838c     */
839  volatile u_int32_t MAC_PCU_LOCATION_MODE_TIMER; /*     0x838c - 0x8390     */
840  volatile u_int32_t MAC_PCU_TSF2_L32; /*     0x8390 - 0x8394     */
841  volatile u_int32_t MAC_PCU_TSF2_U32; /*     0x8394 - 0x8398     */
842  volatile u_int32_t MAC_PCU_BSSID2_L32; /*     0x8398 - 0x839c     */
843  volatile u_int32_t MAC_PCU_BSSID2_U16; /*     0x839c - 0x83a0     */
844  volatile u_int32_t MAC_PCU_DIRECT_CONNECT; /*     0x83a0 - 0x83a4     */
845  volatile u_int32_t MAC_PCU_TID_TO_AC; /*     0x83a4 - 0x83a8     */
846  volatile u_int32_t MAC_PCU_HP_QUEUE; /*     0x83a8 - 0x83ac     */
847  volatile u_int32_t MAC_PCU_BLUETOOTH_BT_WEIGHTS0;
848                                                  /*     0x83ac - 0x83b0     */
849  volatile u_int32_t MAC_PCU_BLUETOOTH_BT_WEIGHTS1;
850                                                  /*     0x83b0 - 0x83b4     */
851  volatile u_int32_t MAC_PCU_BLUETOOTH_BT_WEIGHTS2;
852                                                  /*     0x83b4 - 0x83b8     */
853  volatile u_int32_t MAC_PCU_BLUETOOTH_BT_WEIGHTS3;
854                                                  /*     0x83b8 - 0x83bc     */
855  volatile u_int32_t MAC_PCU_AGC_SATURATION_CNT0; /*     0x83bc - 0x83c0     */
856  volatile u_int32_t MAC_PCU_AGC_SATURATION_CNT1; /*     0x83c0 - 0x83c4     */
857  volatile u_int32_t MAC_PCU_AGC_SATURATION_CNT2; /*     0x83c4 - 0x83c8     */
858  volatile u_int32_t MAC_PCU_HW_BCN_PROC1; /*     0x83c8 - 0x83cc     */
859  volatile u_int32_t MAC_PCU_HW_BCN_PROC2; /*     0x83cc - 0x83d0     */
860  volatile u_int32_t MAC_PCU_MISC_MODE3; /*     0x83d0 - 0x83d4     */
861  /* Jupiter */
862  volatile u_int32_t MAC_PCU_FILTER_RSSI_AVE; /*     0x83d4 - 0x83d8     */
863  /* Jupiter */
864  volatile u_int32_t MAC_PCU_GENERIC_TIMERS_TSF_SEL;
865                                                  /*     0x83d8 - 0x83dc     */
866  /* Jupiter */
867  volatile u_int32_t MAC_PCU_BEACON2_CNT; /*     0x83dc - 0x83e0     */
868  /* Jupiter */
869  volatile u_int32_t MAC_PCU_LAST_BEACON2_TSF; /*     0x83e0 - 0x83e4     */
870  /* Jupiter */
871  volatile u_int32_t MAC_PCU_BMISS_TIMEOUT; /*     0x83e4 - 0x83e8     */
872  /* Jupiter */
873  volatile u_int32_t MAC_PCU_BMISS2_TIMEOUT; /*     0x83e8 - 0x83ec     */
874  /* Jupiter */
875  volatile u_int32_t MAC_PCU_SLP3; /*     0x83ec - 0x83f0     */
876  /* Jupiter */
877  volatile u_int32_t MAC_PCU_BCN_RSSI_CTL2; /*     0x83f0 - 0x83f4     */
878  /* Jupiter */
879  volatile u_int32_t MAC_PCU_PHY_ERROR_AIFS_MASK; /*     0x83f4 - 0x83f8     */
880  /* Jupiter_20 */
881  volatile u_int32_t MAC_PCU_TBD_FILTER; /*     0x83f8 - 0x83fc     */
882  /* Jupiter_20 */
883  volatile u_int32_t MAC_PCU_MISC_MODE4; /*     0x83fc - 0x8400     */
884  volatile u_int32_t MAC_PCU_TXBUF_BA[64]; /*     0x8400 - 0x8500     */
885  /* Jupiter_20 */
886  volatile u_int32_t MAC_PCU_SLP4; /*     0x8500 - 0x8504     */
887  volatile char pad__13[0x2fc]; /*     0x8504 - 0x8800     */
888  volatile u_int32_t MAC_PCU_KEY_CACHE[1024]; /*     0x8800 - 0x9800     */
889  volatile char pad__14[0x4800]; /*     0x9800 - 0xe000     */
890  volatile u_int32_t MAC_PCU_BUF[2048]; /*     0xe000 - 0x10000    */
891};
892
893struct chn_reg_map {
894  volatile u_int32_t BB_timing_controls_1; /*        0x0 - 0x4        */
895  volatile u_int32_t BB_timing_controls_2; /*        0x4 - 0x8        */
896  volatile u_int32_t BB_timing_controls_3; /*        0x8 - 0xc        */
897  volatile u_int32_t BB_timing_control_4; /*        0xc - 0x10       */
898  volatile u_int32_t BB_timing_control_5; /*       0x10 - 0x14       */
899  volatile u_int32_t BB_timing_control_6; /*       0x14 - 0x18       */
900  volatile u_int32_t BB_timing_control_11; /*       0x18 - 0x1c       */
901  volatile u_int32_t BB_spur_mask_controls; /*       0x1c - 0x20       */
902  volatile u_int32_t BB_find_signal_low; /*       0x20 - 0x24       */
903  volatile u_int32_t BB_sfcorr; /*       0x24 - 0x28       */
904  volatile u_int32_t BB_self_corr_low; /*       0x28 - 0x2c       */
905  volatile u_int32_t BB_ext_chan_scorr_thr; /*       0x2c - 0x30       */
906  volatile u_int32_t BB_ext_chan_pwr_thr_2_b0; /*       0x30 - 0x34       */
907  volatile u_int32_t BB_radar_detection; /*       0x34 - 0x38       */
908  volatile u_int32_t BB_radar_detection_2; /*       0x38 - 0x3c       */
909  volatile u_int32_t BB_extension_radar; /*       0x3c - 0x40       */
910  volatile char pad__0[0x40]; /*       0x40 - 0x80       */
911  volatile u_int32_t BB_multichain_control; /*       0x80 - 0x84       */
912  volatile u_int32_t BB_per_chain_csd; /*       0x84 - 0x88       */
913  volatile char pad__1[0x18]; /*       0x88 - 0xa0       */
914  volatile u_int32_t BB_tx_crc; /*       0xa0 - 0xa4       */
915  volatile u_int32_t BB_tstdac_constant; /*       0xa4 - 0xa8       */
916  volatile u_int32_t BB_spur_report_b0; /*       0xa8 - 0xac       */
917  volatile char pad__2[0x4]; /*       0xac - 0xb0       */
918  volatile u_int32_t BB_txiqcal_control_3; /*       0xb0 - 0xb4       */
919  volatile char pad__3[0x8]; /*       0xb4 - 0xbc       */
920  /* Poseidon, Jupiter */
921  volatile u_int32_t BB_green_tx_control_1; /*       0xbc - 0xc0       */
922  volatile u_int32_t BB_iq_adc_meas_0_b0; /*       0xc0 - 0xc4       */
923  volatile u_int32_t BB_iq_adc_meas_1_b0; /*       0xc4 - 0xc8       */
924  volatile u_int32_t BB_iq_adc_meas_2_b0; /*       0xc8 - 0xcc       */
925  volatile u_int32_t BB_iq_adc_meas_3_b0; /*       0xcc - 0xd0       */
926  volatile u_int32_t BB_tx_phase_ramp_b0; /*       0xd0 - 0xd4       */
927  volatile u_int32_t BB_adc_gain_dc_corr_b0; /*       0xd4 - 0xd8       */
928  volatile char pad__4[0x4]; /*       0xd8 - 0xdc       */
929  volatile u_int32_t BB_rx_iq_corr_b0; /*       0xdc - 0xe0       */
930  volatile char pad__5[0x4]; /*       0xe0 - 0xe4       */
931  volatile u_int32_t BB_paprd_am2am_mask; /*       0xe4 - 0xe8       */
932  volatile u_int32_t BB_paprd_am2pm_mask; /*       0xe8 - 0xec       */
933  volatile u_int32_t BB_paprd_ht40_mask; /*       0xec - 0xf0       */
934  volatile u_int32_t BB_paprd_ctrl0_b0; /*       0xf0 - 0xf4       */
935  volatile u_int32_t BB_paprd_ctrl1_b0; /*       0xf4 - 0xf8       */
936  volatile u_int32_t BB_pa_gain123_b0; /*       0xf8 - 0xfc       */
937  volatile u_int32_t BB_pa_gain45_b0; /*       0xfc - 0x100      */
938  volatile u_int32_t BB_paprd_pre_post_scale_0_b0;
939                                                  /*      0x100 - 0x104      */
940  volatile u_int32_t BB_paprd_pre_post_scale_1_b0;
941                                                  /*      0x104 - 0x108      */
942  volatile u_int32_t BB_paprd_pre_post_scale_2_b0;
943                                                  /*      0x108 - 0x10c      */
944  volatile u_int32_t BB_paprd_pre_post_scale_3_b0;
945                                                  /*      0x10c - 0x110      */
946  volatile u_int32_t BB_paprd_pre_post_scale_4_b0;
947                                                  /*      0x110 - 0x114      */
948  volatile u_int32_t BB_paprd_pre_post_scale_5_b0;
949                                                  /*      0x114 - 0x118      */
950  volatile u_int32_t BB_paprd_pre_post_scale_6_b0;
951                                                  /*      0x118 - 0x11c      */
952  volatile u_int32_t BB_paprd_pre_post_scale_7_b0;
953                                                  /*      0x11c - 0x120      */
954  volatile u_int32_t BB_paprd_mem_tab_b0[120]; /*      0x120 - 0x300      */
955  volatile u_int32_t BB_chan_info_chan_tab_b0[60];
956                                                  /*      0x300 - 0x3f0      */
957  /* Jupiter_20 */
958  volatile u_int32_t BB_chn_tables_intf_addr; /*      0x3f0 - 0x3f4      */
959  /* Jupiter_20 */
960  volatile u_int32_t BB_chn_tables_intf_data; /*      0x3f4 - 0x3f8      */
961};
962
963struct mrc_reg_map {
964  volatile u_int32_t BB_timing_control_3a; /*        0x0 - 0x4        */
965  volatile u_int32_t BB_ldpc_cntl1; /*        0x4 - 0x8        */
966  volatile u_int32_t BB_ldpc_cntl2; /*        0x8 - 0xc        */
967  volatile u_int32_t BB_pilot_spur_mask; /*        0xc - 0x10       */
968  volatile u_int32_t BB_chan_spur_mask; /*       0x10 - 0x14       */
969  volatile u_int32_t BB_short_gi_delta_slope; /*       0x14 - 0x18       */
970  volatile u_int32_t BB_ml_cntl1; /*       0x18 - 0x1c       */
971  volatile u_int32_t BB_ml_cntl2; /*       0x1c - 0x20       */
972  volatile u_int32_t BB_tstadc; /*       0x20 - 0x24       */
973};
974
975struct bbb_reg_map {
976  volatile u_int32_t BB_bbb_rx_ctrl_1; /*        0x0 - 0x4        */
977  volatile u_int32_t BB_bbb_rx_ctrl_2; /*        0x4 - 0x8        */
978  volatile u_int32_t BB_bbb_rx_ctrl_3; /*        0x8 - 0xc        */
979  volatile u_int32_t BB_bbb_rx_ctrl_4; /*        0xc - 0x10       */
980  volatile u_int32_t BB_bbb_rx_ctrl_5; /*       0x10 - 0x14       */
981  volatile u_int32_t BB_bbb_rx_ctrl_6; /*       0x14 - 0x18       */
982  volatile u_int32_t BB_force_clken_cck; /*       0x18 - 0x1c       */
983  /* Poseidon, Jupiter_10 */
984  volatile u_int32_t BB_bb_reg_page_control; /*       0x1c - 0x20       */
985};
986
987struct agc_reg_map {
988  volatile u_int32_t BB_settling_time; /*        0x0 - 0x4        */
989  volatile u_int32_t BB_gain_force_max_gains_b0; /*        0x4 - 0x8        */
990  volatile u_int32_t BB_gains_min_offsets; /*        0x8 - 0xc        */
991  volatile u_int32_t BB_desired_sigsize; /*        0xc - 0x10       */
992  volatile u_int32_t BB_find_signal; /*       0x10 - 0x14       */
993  volatile u_int32_t BB_agc; /*       0x14 - 0x18       */
994  volatile u_int32_t BB_ext_atten_switch_ctl_b0; /*       0x18 - 0x1c       */
995  volatile u_int32_t BB_cca_b0; /*       0x1c - 0x20       */
996  volatile u_int32_t BB_cca_ctrl_2_b0; /*       0x20 - 0x24       */
997  volatile u_int32_t BB_restart; /*       0x24 - 0x28       */
998  volatile u_int32_t BB_multichain_gain_ctrl; /*       0x28 - 0x2c       */
999  volatile u_int32_t BB_ext_chan_pwr_thr_1; /*       0x2c - 0x30       */
1000  volatile u_int32_t BB_ext_chan_detect_win; /*       0x30 - 0x34       */
1001  volatile u_int32_t BB_pwr_thr_20_40_det; /*       0x34 - 0x38       */
1002  volatile u_int32_t BB_rifs_srch; /*       0x38 - 0x3c       */
1003  volatile u_int32_t BB_peak_det_ctrl_1; /*       0x3c - 0x40       */
1004  volatile u_int32_t BB_peak_det_ctrl_2; /*       0x40 - 0x44       */
1005  volatile u_int32_t BB_rx_gain_bounds_1; /*       0x44 - 0x48       */
1006  volatile u_int32_t BB_rx_gain_bounds_2; /*       0x48 - 0x4c       */
1007  volatile u_int32_t BB_peak_det_cal_ctrl; /*       0x4c - 0x50       */
1008  volatile u_int32_t BB_agc_dig_dc_ctrl; /*       0x50 - 0x54       */
1009  volatile u_int32_t BB_bt_coex_1; /*       0x54 - 0x58       */
1010  /* Poseidon, Jupiter */
1011  volatile u_int32_t BB_bt_coex_2; /*       0x58 - 0x5c       */
1012  /* Poseidon, Jupiter */
1013  volatile u_int32_t BB_bt_coex_3; /*       0x5c - 0x60       */
1014  /* Poseidon, Jupiter */
1015  volatile u_int32_t BB_bt_coex_4; /*       0x60 - 0x64       */
1016  /* Poseidon, Jupiter */
1017  volatile u_int32_t BB_bt_coex_5; /*       0x64 - 0x68       */
1018  /* Jupiter_20 */
1019  volatile u_int32_t BB_redpwr_ctrl_1; /*       0x68 - 0x6c       */
1020  /* Jupiter_20 */
1021  volatile u_int32_t BB_redpwr_ctrl_2; /*       0x6c - 0x70       */
1022  volatile char pad__0[0x110]; /*       0x70 - 0x180      */
1023  volatile u_int32_t BB_rssi_b0; /*      0x180 - 0x184      */
1024  volatile u_int32_t BB_spur_est_cck_report_b0; /*      0x184 - 0x188      */
1025  volatile u_int32_t BB_agc_dig_dc_status_i_b0; /*      0x188 - 0x18c      */
1026  volatile u_int32_t BB_agc_dig_dc_status_q_b0; /*      0x18c - 0x190      */
1027  /* Poseidon, Jupiter */
1028  volatile u_int32_t BB_dc_cal_status_b0; /*      0x190 - 0x194      */
1029  volatile char pad__1[0x2c]; /*      0x194 - 0x1c0      */
1030  volatile u_int32_t BB_bbb_sig_detect; /*      0x1c0 - 0x1c4      */
1031  volatile u_int32_t BB_bbb_dagc_ctrl; /*      0x1c4 - 0x1c8      */
1032  volatile u_int32_t BB_iqcorr_ctrl_cck; /*      0x1c8 - 0x1cc      */
1033  volatile u_int32_t BB_cck_spur_mit; /*      0x1cc - 0x1d0      */
1034  /* Not Poseidon */
1035  volatile u_int32_t BB_mrc_cck_ctrl; /*      0x1d0 - 0x1d4      */
1036  /* Jupiter_20 */
1037  volatile u_int32_t BB_cck_blocker_det; /*      0x1d4 - 0x1d8      */
1038  volatile char pad__2[0x28]; /*      0x1d8 - 0x200      */
1039  volatile u_int32_t BB_rx_ocgain[128]; /*      0x200 - 0x400      */
1040};
1041
1042struct sm_reg_map {
1043  volatile u_int32_t BB_D2_chip_id; /*        0x0 - 0x4        */
1044  volatile u_int32_t BB_gen_controls; /*        0x4 - 0x8        */
1045  volatile u_int32_t BB_modes_select; /*        0x8 - 0xc        */
1046  volatile u_int32_t BB_active; /*        0xc - 0x10       */
1047  /* Poseidon, Jupiter_10 */
1048  volatile u_int32_t BB_bb_reg_page; /*       0x10 - 0x14       */
1049  volatile char pad__0[0xc]; /*       0x14 - 0x20       */
1050  volatile u_int32_t BB_vit_spur_mask_A; /*       0x20 - 0x24       */
1051  volatile u_int32_t BB_vit_spur_mask_B; /*       0x24 - 0x28       */
1052  volatile u_int32_t BB_spectral_scan; /*       0x28 - 0x2c       */
1053  volatile u_int32_t BB_radar_bw_filter; /*       0x2c - 0x30       */
1054  volatile u_int32_t BB_search_start_delay; /*       0x30 - 0x34       */
1055  volatile u_int32_t BB_max_rx_length; /*       0x34 - 0x38       */
1056  volatile u_int32_t BB_frame_control; /*       0x38 - 0x3c       */
1057  volatile u_int32_t BB_rfbus_request; /*       0x3c - 0x40       */
1058  volatile u_int32_t BB_rfbus_grant; /*       0x40 - 0x44       */
1059  volatile u_int32_t BB_rifs; /*       0x44 - 0x48       */
1060  /* Jupiter */
1061  volatile u_int32_t BB_spectral_scan_2; /*       0x48 - 0x4c       */
1062  volatile char pad__1[0x4]; /*       0x4c - 0x50       */
1063  volatile u_int32_t BB_rx_clear_delay; /*       0x50 - 0x54       */
1064  volatile u_int32_t BB_analog_power_on_time; /*       0x54 - 0x58       */
1065  volatile u_int32_t BB_tx_timing_1; /*       0x58 - 0x5c       */
1066  volatile u_int32_t BB_tx_timing_2; /*       0x5c - 0x60       */
1067  volatile u_int32_t BB_tx_timing_3; /*       0x60 - 0x64       */
1068  volatile u_int32_t BB_xpa_timing_control; /*       0x64 - 0x68       */
1069  volatile char pad__2[0x18]; /*       0x68 - 0x80       */
1070  volatile u_int32_t BB_misc_pa_control; /*       0x80 - 0x84       */
1071  volatile u_int32_t BB_switch_table_chn_b0; /*       0x84 - 0x88       */
1072  volatile u_int32_t BB_switch_table_com1; /*       0x88 - 0x8c       */
1073  volatile u_int32_t BB_switch_table_com2; /*       0x8c - 0x90       */
1074  volatile char pad__3[0x10]; /*       0x90 - 0xa0       */
1075  volatile u_int32_t BB_multichain_enable; /*       0xa0 - 0xa4       */
1076  volatile char pad__4[0x1c]; /*       0xa4 - 0xc0       */
1077  volatile u_int32_t BB_cal_chain_mask; /*       0xc0 - 0xc4       */
1078  volatile u_int32_t BB_agc_control; /*       0xc4 - 0xc8       */
1079  volatile u_int32_t BB_iq_adc_cal_mode; /*       0xc8 - 0xcc       */
1080  volatile u_int32_t BB_fcal_1; /*       0xcc - 0xd0       */
1081  volatile u_int32_t BB_fcal_2_b0; /*       0xd0 - 0xd4       */
1082  volatile u_int32_t BB_dft_tone_ctrl_b0; /*       0xd4 - 0xd8       */
1083  volatile u_int32_t BB_cl_cal_ctrl; /*       0xd8 - 0xdc       */
1084  volatile u_int32_t BB_cl_map_0_b0; /*       0xdc - 0xe0       */
1085  volatile u_int32_t BB_cl_map_1_b0; /*       0xe0 - 0xe4       */
1086  volatile u_int32_t BB_cl_map_2_b0; /*       0xe4 - 0xe8       */
1087  volatile u_int32_t BB_cl_map_3_b0; /*       0xe8 - 0xec       */
1088  volatile u_int32_t BB_cl_map_pal_0_b0; /*       0xec - 0xf0       */
1089  volatile u_int32_t BB_cl_map_pal_1_b0; /*       0xf0 - 0xf4       */
1090  volatile u_int32_t BB_cl_map_pal_2_b0; /*       0xf4 - 0xf8       */
1091  volatile u_int32_t BB_cl_map_pal_3_b0; /*       0xf8 - 0xfc       */
1092  volatile char pad__5[0x4]; /*       0xfc - 0x100      */
1093  volatile u_int32_t BB_cl_tab_b0[16]; /*      0x100 - 0x140      */
1094  volatile u_int32_t BB_synth_control; /*      0x140 - 0x144      */
1095  volatile u_int32_t BB_addac_clk_select; /*      0x144 - 0x148      */
1096  volatile u_int32_t BB_pll_cntl; /*      0x148 - 0x14c      */
1097  volatile u_int32_t BB_analog_swap; /*      0x14c - 0x150      */
1098  volatile u_int32_t BB_addac_parallel_control; /*      0x150 - 0x154      */
1099  volatile char pad__6[0x4]; /*      0x154 - 0x158      */
1100  volatile u_int32_t BB_force_analog; /*      0x158 - 0x15c      */
1101  volatile char pad__7[0x4]; /*      0x15c - 0x160      */
1102  volatile u_int32_t BB_test_controls; /*      0x160 - 0x164      */
1103  volatile u_int32_t BB_test_controls_status; /*      0x164 - 0x168      */
1104  volatile u_int32_t BB_tstdac; /*      0x168 - 0x16c      */
1105  volatile u_int32_t BB_channel_status; /*      0x16c - 0x170      */
1106  volatile u_int32_t BB_chaninfo_ctrl; /*      0x170 - 0x174      */
1107  volatile u_int32_t BB_chan_info_noise_pwr; /*      0x174 - 0x178      */
1108  volatile u_int32_t BB_chan_info_gain_diff; /*      0x178 - 0x17c      */
1109  volatile u_int32_t BB_chan_info_fine_timing; /*      0x17c - 0x180      */
1110  volatile u_int32_t BB_chan_info_gain_b0; /*      0x180 - 0x184      */
1111  volatile char pad__8[0xc]; /*      0x184 - 0x190      */
1112  volatile u_int32_t BB_scrambler_seed; /*      0x190 - 0x194      */
1113  volatile u_int32_t BB_bbb_tx_ctrl; /*      0x194 - 0x198      */
1114  volatile u_int32_t BB_bbb_txfir_0; /*      0x198 - 0x19c      */
1115  volatile u_int32_t BB_bbb_txfir_1; /*      0x19c - 0x1a0      */
1116  volatile u_int32_t BB_bbb_txfir_2; /*      0x1a0 - 0x1a4      */
1117  volatile u_int32_t BB_heavy_clip_ctrl; /*      0x1a4 - 0x1a8      */
1118  volatile u_int32_t BB_heavy_clip_20; /*      0x1a8 - 0x1ac      */
1119  volatile u_int32_t BB_heavy_clip_40; /*      0x1ac - 0x1b0      */
1120  volatile u_int32_t BB_illegal_tx_rate; /*      0x1b0 - 0x1b4      */
1121  volatile char pad__9[0xc]; /*      0x1b4 - 0x1c0      */
1122  volatile u_int32_t BB_powertx_rate1; /*      0x1c0 - 0x1c4      */
1123  volatile u_int32_t BB_powertx_rate2; /*      0x1c4 - 0x1c8      */
1124  volatile u_int32_t BB_powertx_rate3; /*      0x1c8 - 0x1cc      */
1125  volatile u_int32_t BB_powertx_rate4; /*      0x1cc - 0x1d0      */
1126  volatile u_int32_t BB_powertx_rate5; /*      0x1d0 - 0x1d4      */
1127  volatile u_int32_t BB_powertx_rate6; /*      0x1d4 - 0x1d8      */
1128  volatile u_int32_t BB_powertx_rate7; /*      0x1d8 - 0x1dc      */
1129  volatile u_int32_t BB_powertx_rate8; /*      0x1dc - 0x1e0      */
1130  volatile u_int32_t BB_powertx_rate9; /*      0x1e0 - 0x1e4      */
1131  volatile u_int32_t BB_powertx_rate10; /*      0x1e4 - 0x1e8      */
1132  volatile u_int32_t BB_powertx_rate11; /*      0x1e8 - 0x1ec      */
1133  volatile u_int32_t BB_powertx_rate12; /*      0x1ec - 0x1f0      */
1134  volatile u_int32_t BB_powertx_max; /*      0x1f0 - 0x1f4      */
1135  volatile u_int32_t BB_powertx_sub; /*      0x1f4 - 0x1f8      */
1136  volatile u_int32_t BB_tpc_1; /*      0x1f8 - 0x1fc      */
1137  volatile u_int32_t BB_tpc_2; /*      0x1fc - 0x200      */
1138  volatile u_int32_t BB_tpc_3; /*      0x200 - 0x204      */
1139  volatile u_int32_t BB_tpc_4_b0; /*      0x204 - 0x208      */
1140  volatile u_int32_t BB_tpc_5_b0; /*      0x208 - 0x20c      */
1141  volatile u_int32_t BB_tpc_6_b0; /*      0x20c - 0x210      */
1142  volatile u_int32_t BB_tpc_7; /*      0x210 - 0x214      */
1143  volatile u_int32_t BB_tpc_8; /*      0x214 - 0x218      */
1144  volatile u_int32_t BB_tpc_9; /*      0x218 - 0x21c      */
1145  volatile u_int32_t BB_tpc_10; /*      0x21c - 0x220      */
1146  volatile u_int32_t BB_tpc_11_b0; /*      0x220 - 0x224      */
1147  volatile u_int32_t BB_tpc_12; /*      0x224 - 0x228      */
1148  volatile u_int32_t BB_tpc_13; /*      0x228 - 0x22c      */
1149  volatile u_int32_t BB_tpc_14; /*      0x22c - 0x230      */
1150  volatile u_int32_t BB_tpc_15; /*      0x230 - 0x234      */
1151  volatile u_int32_t BB_tpc_16; /*      0x234 - 0x238      */
1152  volatile u_int32_t BB_tpc_17; /*      0x238 - 0x23c      */
1153  volatile u_int32_t BB_tpc_18; /*      0x23c - 0x240      */
1154  volatile u_int32_t BB_tpc_19; /*      0x240 - 0x244      */
1155  volatile u_int32_t BB_tpc_20; /*      0x244 - 0x248      */
1156  volatile u_int32_t BB_therm_adc_1; /*      0x248 - 0x24c      */
1157  volatile u_int32_t BB_therm_adc_2; /*      0x24c - 0x250      */
1158  volatile u_int32_t BB_therm_adc_3; /*      0x250 - 0x254      */
1159  volatile u_int32_t BB_therm_adc_4; /*      0x254 - 0x258      */
1160  volatile u_int32_t BB_tx_forced_gain; /*      0x258 - 0x25c      */
1161  volatile char pad__10[0x24]; /*      0x25c - 0x280      */
1162  volatile u_int32_t BB_pdadc_tab_b0[32]; /*      0x280 - 0x300      */
1163  volatile u_int32_t BB_tx_gain_tab_1; /*      0x300 - 0x304      */
1164  volatile u_int32_t BB_tx_gain_tab_2; /*      0x304 - 0x308      */
1165  volatile u_int32_t BB_tx_gain_tab_3; /*      0x308 - 0x30c      */
1166  volatile u_int32_t BB_tx_gain_tab_4; /*      0x30c - 0x310      */
1167  volatile u_int32_t BB_tx_gain_tab_5; /*      0x310 - 0x314      */
1168  volatile u_int32_t BB_tx_gain_tab_6; /*      0x314 - 0x318      */
1169  volatile u_int32_t BB_tx_gain_tab_7; /*      0x318 - 0x31c      */
1170  volatile u_int32_t BB_tx_gain_tab_8; /*      0x31c - 0x320      */
1171  volatile u_int32_t BB_tx_gain_tab_9; /*      0x320 - 0x324      */
1172  volatile u_int32_t BB_tx_gain_tab_10; /*      0x324 - 0x328      */
1173  volatile u_int32_t BB_tx_gain_tab_11; /*      0x328 - 0x32c      */
1174  volatile u_int32_t BB_tx_gain_tab_12; /*      0x32c - 0x330      */
1175  volatile u_int32_t BB_tx_gain_tab_13; /*      0x330 - 0x334      */
1176  volatile u_int32_t BB_tx_gain_tab_14; /*      0x334 - 0x338      */
1177  volatile u_int32_t BB_tx_gain_tab_15; /*      0x338 - 0x33c      */
1178  volatile u_int32_t BB_tx_gain_tab_16; /*      0x33c - 0x340      */
1179  volatile u_int32_t BB_tx_gain_tab_17; /*      0x340 - 0x344      */
1180  volatile u_int32_t BB_tx_gain_tab_18; /*      0x344 - 0x348      */
1181  volatile u_int32_t BB_tx_gain_tab_19; /*      0x348 - 0x34c      */
1182  volatile u_int32_t BB_tx_gain_tab_20; /*      0x34c - 0x350      */
1183  volatile u_int32_t BB_tx_gain_tab_21; /*      0x350 - 0x354      */
1184  volatile u_int32_t BB_tx_gain_tab_22; /*      0x354 - 0x358      */
1185  volatile u_int32_t BB_tx_gain_tab_23; /*      0x358 - 0x35c      */
1186  volatile u_int32_t BB_tx_gain_tab_24; /*      0x35c - 0x360      */
1187  volatile u_int32_t BB_tx_gain_tab_25; /*      0x360 - 0x364      */
1188  volatile u_int32_t BB_tx_gain_tab_26; /*      0x364 - 0x368      */
1189  volatile u_int32_t BB_tx_gain_tab_27; /*      0x368 - 0x36c      */
1190  volatile u_int32_t BB_tx_gain_tab_28; /*      0x36c - 0x370      */
1191  volatile u_int32_t BB_tx_gain_tab_29; /*      0x370 - 0x374      */
1192  volatile u_int32_t BB_tx_gain_tab_30; /*      0x374 - 0x378      */
1193  volatile u_int32_t BB_tx_gain_tab_31; /*      0x378 - 0x37c      */
1194  volatile u_int32_t BB_tx_gain_tab_32; /*      0x37c - 0x380      */
1195  union {
1196      struct {
1197          volatile u_int32_t BB_tx_gain_tab_pal_1; /*      0x380 - 0x384      */
1198          volatile u_int32_t BB_tx_gain_tab_pal_2; /*      0x384 - 0x388      */
1199          volatile u_int32_t BB_tx_gain_tab_pal_3; /*      0x388 - 0x38c      */
1200          volatile u_int32_t BB_tx_gain_tab_pal_4; /*      0x38c - 0x390      */
1201          volatile u_int32_t BB_tx_gain_tab_pal_5; /*      0x390 - 0x394      */
1202          volatile u_int32_t BB_tx_gain_tab_pal_6; /*      0x394 - 0x398      */
1203          volatile u_int32_t BB_tx_gain_tab_pal_7; /*      0x398 - 0x39c      */
1204          volatile u_int32_t BB_tx_gain_tab_pal_8; /*      0x39c - 0x3a0      */
1205          volatile u_int32_t BB_tx_gain_tab_pal_9; /*      0x3a0 - 0x3a4      */
1206          volatile u_int32_t BB_tx_gain_tab_pal_10; /*      0x3a4 - 0x3a8      */
1207          volatile u_int32_t BB_tx_gain_tab_pal_11; /*      0x3a8 - 0x3ac      */
1208          volatile u_int32_t BB_tx_gain_tab_pal_12; /*      0x3ac - 0x3b0      */
1209          volatile u_int32_t BB_tx_gain_tab_pal_13; /*      0x3b0 - 0x3b4      */
1210          volatile u_int32_t BB_tx_gain_tab_pal_14; /*      0x3b4 - 0x3b8      */
1211          volatile u_int32_t BB_tx_gain_tab_pal_15; /*      0x3b8 - 0x3bc      */
1212          volatile u_int32_t BB_tx_gain_tab_pal_16; /*      0x3bc - 0x3c0      */
1213          volatile u_int32_t BB_tx_gain_tab_pal_17; /*      0x3c0 - 0x3c4      */
1214          volatile u_int32_t BB_tx_gain_tab_pal_18; /*      0x3c4 - 0x3c8      */
1215          volatile u_int32_t BB_tx_gain_tab_pal_19; /*      0x3c8 - 0x3cc      */
1216          volatile u_int32_t BB_tx_gain_tab_pal_20; /*      0x3cc - 0x3d0      */
1217          volatile u_int32_t BB_tx_gain_tab_pal_21; /*      0x3d0 - 0x3d4      */
1218          volatile u_int32_t BB_tx_gain_tab_pal_22; /*      0x3d4 - 0x3d8      */
1219          volatile u_int32_t BB_tx_gain_tab_pal_23; /*      0x3d8 - 0x3dc      */
1220          volatile u_int32_t BB_tx_gain_tab_pal_24; /*      0x3dc - 0x3e0      */
1221          volatile u_int32_t BB_tx_gain_tab_pal_25; /*      0x3e0 - 0x3e4      */
1222          volatile u_int32_t BB_tx_gain_tab_pal_26; /*      0x3e4 - 0x3e8      */
1223          volatile u_int32_t BB_tx_gain_tab_pal_27; /*      0x3e8 - 0x3ec      */
1224          volatile u_int32_t BB_tx_gain_tab_pal_28; /*      0x3ec - 0x3f0      */
1225          volatile u_int32_t BB_tx_gain_tab_pal_29; /*      0x3f0 - 0x3f4      */
1226          volatile u_int32_t BB_tx_gain_tab_pal_30; /*      0x3f4 - 0x3f8      */
1227          volatile u_int32_t BB_tx_gain_tab_pal_31; /*      0x3f8 - 0x3fc      */
1228          volatile u_int32_t BB_tx_gain_tab_pal_32; /*      0x3fc - 0x400      */
1229          volatile u_int32_t BB_caltx_gain_set_0; /*      0x400 - 0x404      */
1230          volatile u_int32_t BB_caltx_gain_set_2; /*      0x404 - 0x408      */
1231          volatile u_int32_t BB_caltx_gain_set_4; /*      0x408 - 0x40c      */
1232          volatile u_int32_t BB_caltx_gain_set_6; /*      0x40c - 0x410      */
1233          volatile u_int32_t BB_caltx_gain_set_8; /*      0x410 - 0x414      */
1234          volatile u_int32_t BB_caltx_gain_set_10; /*      0x414 - 0x418      */
1235          volatile u_int32_t BB_caltx_gain_set_12; /*      0x418 - 0x41c      */
1236          volatile u_int32_t BB_caltx_gain_set_14; /*      0x41c - 0x420      */
1237          volatile u_int32_t BB_caltx_gain_set_16; /*      0x420 - 0x424      */
1238          volatile u_int32_t BB_caltx_gain_set_18; /*      0x424 - 0x428      */
1239          volatile u_int32_t BB_caltx_gain_set_20; /*      0x428 - 0x42c      */
1240          volatile u_int32_t BB_caltx_gain_set_22; /*      0x42c - 0x430      */
1241          volatile u_int32_t BB_caltx_gain_set_24; /*      0x430 - 0x434      */
1242          volatile u_int32_t BB_caltx_gain_set_26; /*      0x434 - 0x438      */
1243          volatile u_int32_t BB_caltx_gain_set_28; /*      0x438 - 0x43c      */
1244          volatile u_int32_t BB_caltx_gain_set_30; /*      0x43c - 0x440      */
1245          volatile u_int32_t BB_txiqcal_start; /*      0x440 - 0x444      */
1246          volatile u_int32_t BB_txiqcal_control_0; /*      0x444 - 0x448      */
1247          volatile u_int32_t BB_txiqcal_control_1; /*      0x448 - 0x44c      */
1248          volatile u_int32_t BB_txiqcal_control_2; /*      0x44c - 0x450      */
1249          volatile u_int32_t BB_txiq_corr_coeff_01_b0; /*      0x450 - 0x454      */
1250          volatile u_int32_t BB_txiq_corr_coeff_23_b0; /*      0x454 - 0x458      */
1251          volatile u_int32_t BB_txiq_corr_coeff_45_b0; /*      0x458 - 0x45c      */
1252          volatile u_int32_t BB_txiq_corr_coeff_67_b0; /*      0x45c - 0x460      */
1253          volatile u_int32_t BB_txiq_corr_coeff_89_b0; /*      0x460 - 0x464      */
1254          volatile u_int32_t BB_txiq_corr_coeff_ab_b0; /*      0x464 - 0x468      */
1255          volatile u_int32_t BB_txiq_corr_coeff_cd_b0; /*      0x468 - 0x46c      */
1256          volatile u_int32_t BB_txiq_corr_coeff_ef_b0; /*      0x46c - 0x470      */
1257          volatile u_int32_t BB_cal_rxbb_gain_tbl_0; /*      0x470 - 0x474      */
1258          volatile u_int32_t BB_cal_rxbb_gain_tbl_4; /*      0x474 - 0x478      */
1259          volatile u_int32_t BB_cal_rxbb_gain_tbl_8; /*      0x478 - 0x47c      */
1260          volatile u_int32_t BB_cal_rxbb_gain_tbl_12; /*      0x47c - 0x480      */
1261          volatile u_int32_t BB_cal_rxbb_gain_tbl_16; /*      0x480 - 0x484      */
1262          volatile u_int32_t BB_cal_rxbb_gain_tbl_20; /*      0x484 - 0x488      */
1263          volatile u_int32_t BB_cal_rxbb_gain_tbl_24; /*      0x488 - 0x48c      */
1264          volatile u_int32_t BB_txiqcal_status_b0; /*      0x48c - 0x490      */
1265          volatile u_int32_t BB_paprd_trainer_cntl1; /*      0x490 - 0x494      */
1266          volatile u_int32_t BB_paprd_trainer_cntl2; /*      0x494 - 0x498      */
1267          volatile u_int32_t BB_paprd_trainer_cntl3; /*      0x498 - 0x49c      */
1268          volatile u_int32_t BB_paprd_trainer_cntl4; /*      0x49c - 0x4a0      */
1269          volatile u_int32_t BB_paprd_trainer_stat1; /*      0x4a0 - 0x4a4      */
1270          volatile u_int32_t BB_paprd_trainer_stat2; /*      0x4a4 - 0x4a8      */
1271          volatile u_int32_t BB_paprd_trainer_stat3; /*      0x4a8 - 0x4ac      */
1272          volatile char pad__11[0x114]; /*      0x4ac - 0x5c0      */
1273      } Osprey;
1274      struct {
1275          volatile u_int32_t BB_caltx_gain_set_0; /*      0x380 - 0x384      */
1276          volatile u_int32_t BB_caltx_gain_set_2; /*      0x384 - 0x388      */
1277          volatile u_int32_t BB_caltx_gain_set_4; /*      0x388 - 0x38c      */
1278          volatile u_int32_t BB_caltx_gain_set_6; /*      0x38c - 0x390      */
1279          volatile u_int32_t BB_caltx_gain_set_8; /*      0x390 - 0x394      */
1280          volatile u_int32_t BB_caltx_gain_set_10; /*      0x394 - 0x398      */
1281          volatile u_int32_t BB_caltx_gain_set_12; /*      0x398 - 0x39c      */
1282          volatile u_int32_t BB_caltx_gain_set_14; /*      0x39c - 0x3a0      */
1283          volatile u_int32_t BB_caltx_gain_set_16; /*      0x3a0 - 0x3a4      */
1284          volatile u_int32_t BB_caltx_gain_set_18; /*      0x3a4 - 0x3a8      */
1285          volatile u_int32_t BB_caltx_gain_set_20; /*      0x3a8 - 0x3ac      */
1286          volatile u_int32_t BB_caltx_gain_set_22; /*      0x3ac - 0x3b0      */
1287          volatile u_int32_t BB_caltx_gain_set_24; /*      0x3b0 - 0x3b4      */
1288          volatile u_int32_t BB_caltx_gain_set_26; /*      0x3b4 - 0x3b8      */
1289          volatile u_int32_t BB_caltx_gain_set_28; /*      0x3b8 - 0x3bc      */
1290          volatile u_int32_t BB_caltx_gain_set_30; /*      0x3bc - 0x3c0      */
1291          volatile char pad__11[0x4]; /*      0x3c0 - 0x3c4      */
1292          volatile u_int32_t BB_txiqcal_control_0; /*      0x3c4 - 0x3c8      */
1293          volatile u_int32_t BB_txiqcal_control_1; /*      0x3c8 - 0x3cc      */
1294          volatile u_int32_t BB_txiqcal_control_2; /*      0x3cc - 0x3d0      */
1295          volatile u_int32_t BB_txiq_corr_coeff_01_b0; /*      0x3d0 - 0x3d4      */
1296          volatile u_int32_t BB_txiq_corr_coeff_23_b0; /*      0x3d4 - 0x3d8      */
1297          volatile u_int32_t BB_txiq_corr_coeff_45_b0; /*      0x3d8 - 0x3dc      */
1298          volatile u_int32_t BB_txiq_corr_coeff_67_b0; /*      0x3dc - 0x3e0      */
1299          volatile u_int32_t BB_txiq_corr_coeff_89_b0; /*      0x3e0 - 0x3e4      */
1300          volatile u_int32_t BB_txiq_corr_coeff_ab_b0; /*      0x3e4 - 0x3e8      */
1301          volatile u_int32_t BB_txiq_corr_coeff_cd_b0; /*      0x3e8 - 0x3ec      */
1302          volatile u_int32_t BB_txiq_corr_coeff_ef_b0; /*      0x3ec - 0x3f0      */
1303          volatile u_int32_t BB_txiqcal_status_b0; /*      0x3f0 - 0x3f4      */
1304          volatile char pad__12[0x16c]; /*      0x3f4 - 0x560      */
1305          volatile u_int32_t BB_cal_rxbb_gain_tbl_0; /*      0x560 - 0x564      */
1306          volatile u_int32_t BB_cal_rxbb_gain_tbl_4; /*      0x564 - 0x568      */
1307          volatile u_int32_t BB_cal_rxbb_gain_tbl_8; /*      0x568 - 0x56c      */
1308          volatile u_int32_t BB_cal_rxbb_gain_tbl_12; /*      0x56c - 0x570      */
1309          volatile u_int32_t BB_cal_rxbb_gain_tbl_16; /*      0x570 - 0x574      */
1310          volatile u_int32_t BB_cal_rxbb_gain_tbl_20; /*      0x574 - 0x578      */
1311          volatile u_int32_t BB_cal_rxbb_gain_tbl_24; /*      0x578 - 0x57c      */
1312          volatile char pad__13[0x4]; /*      0x57c - 0x580      */
1313          volatile u_int32_t BB_paprd_trainer_cntl1; /*      0x580 - 0x584      */
1314          volatile u_int32_t BB_paprd_trainer_cntl2; /*      0x584 - 0x588      */
1315          volatile u_int32_t BB_paprd_trainer_cntl3; /*      0x588 - 0x58c      */
1316          volatile u_int32_t BB_paprd_trainer_cntl4; /*      0x58c - 0x590      */
1317          volatile u_int32_t BB_paprd_trainer_stat1; /*      0x590 - 0x594      */
1318          volatile u_int32_t BB_paprd_trainer_stat2; /*      0x594 - 0x598      */
1319          volatile u_int32_t BB_paprd_trainer_stat3; /*      0x598 - 0x59c      */
1320          volatile char pad__14[0x24]; /*      0x59c - 0x5c0      */
1321      } Poseidon;
1322      struct {
1323          volatile char pad__11[0x80]; /*      0x380 - 0x400      */
1324          /* 0x400 - 0x4b0 same as Osprey - start */
1325          volatile u_int32_t BB_caltx_gain_set_0; /*      0x400 - 0x404      */
1326          volatile u_int32_t BB_caltx_gain_set_2; /*      0x404 - 0x408      */
1327          volatile u_int32_t BB_caltx_gain_set_4; /*      0x408 - 0x40c      */
1328          volatile u_int32_t BB_caltx_gain_set_6; /*      0x40c - 0x410      */
1329          volatile u_int32_t BB_caltx_gain_set_8; /*      0x410 - 0x414      */
1330          volatile u_int32_t BB_caltx_gain_set_10; /*      0x414 - 0x418      */
1331          volatile u_int32_t BB_caltx_gain_set_12; /*      0x418 - 0x41c      */
1332          volatile u_int32_t BB_caltx_gain_set_14; /*      0x41c - 0x420      */
1333          volatile u_int32_t BB_caltx_gain_set_16; /*      0x420 - 0x424      */
1334          volatile u_int32_t BB_caltx_gain_set_18; /*      0x424 - 0x428      */
1335          volatile u_int32_t BB_caltx_gain_set_20; /*      0x428 - 0x42c      */
1336          volatile u_int32_t BB_caltx_gain_set_22; /*      0x42c - 0x430      */
1337          volatile u_int32_t BB_caltx_gain_set_24; /*      0x430 - 0x434      */
1338          volatile u_int32_t BB_caltx_gain_set_26; /*      0x434 - 0x438      */
1339          volatile u_int32_t BB_caltx_gain_set_28; /*      0x438 - 0x43c      */
1340          volatile u_int32_t BB_caltx_gain_set_30; /*      0x43c - 0x440      */
1341          volatile char pad__12[0x4]; /*      0x440 - 0x444      */
1342          volatile u_int32_t BB_txiqcal_control_0; /*      0x444 - 0x448      */
1343          volatile u_int32_t BB_txiqcal_control_1; /*      0x448 - 0x44c      */
1344          volatile u_int32_t BB_txiqcal_control_2; /*      0x44c - 0x450      */
1345          volatile u_int32_t BB_txiq_corr_coeff_01_b0; /*      0x450 - 0x454      */
1346          volatile u_int32_t BB_txiq_corr_coeff_23_b0; /*      0x454 - 0x458      */
1347          volatile u_int32_t BB_txiq_corr_coeff_45_b0; /*      0x458 - 0x45c      */
1348          volatile u_int32_t BB_txiq_corr_coeff_67_b0; /*      0x45c - 0x460      */
1349          volatile u_int32_t BB_txiq_corr_coeff_89_b0; /*      0x460 - 0x464      */
1350          volatile u_int32_t BB_txiq_corr_coeff_ab_b0; /*      0x464 - 0x468      */
1351          volatile u_int32_t BB_txiq_corr_coeff_cd_b0; /*      0x468 - 0x46c      */
1352          volatile u_int32_t BB_txiq_corr_coeff_ef_b0; /*      0x46c - 0x470      */
1353          volatile u_int32_t BB_cal_rxbb_gain_tbl_0; /*      0x470 - 0x474      */
1354          volatile u_int32_t BB_cal_rxbb_gain_tbl_4; /*      0x474 - 0x478      */
1355          volatile u_int32_t BB_cal_rxbb_gain_tbl_8; /*      0x478 - 0x47c      */
1356          volatile u_int32_t BB_cal_rxbb_gain_tbl_12; /*      0x47c - 0x480      */
1357          volatile u_int32_t BB_cal_rxbb_gain_tbl_16; /*      0x480 - 0x484      */
1358          volatile u_int32_t BB_cal_rxbb_gain_tbl_20; /*      0x484 - 0x488      */
1359          volatile u_int32_t BB_cal_rxbb_gain_tbl_24; /*      0x488 - 0x48c      */
1360          volatile u_int32_t BB_txiqcal_status_b0; /*      0x48c - 0x490      */
1361          volatile u_int32_t BB_paprd_trainer_cntl1; /*      0x490 - 0x494      */
1362          volatile u_int32_t BB_paprd_trainer_cntl2; /*      0x494 - 0x498      */
1363          volatile u_int32_t BB_paprd_trainer_cntl3; /*      0x498 - 0x49c      */
1364          volatile u_int32_t BB_paprd_trainer_cntl4; /*      0x49c - 0x4a0      */
1365          volatile u_int32_t BB_paprd_trainer_stat1; /*      0x4a0 - 0x4a4      */
1366          volatile u_int32_t BB_paprd_trainer_stat2; /*      0x4a4 - 0x4a8      */
1367          volatile u_int32_t BB_paprd_trainer_stat3; /*      0x4a8 - 0x4ac      */
1368          volatile char pad__13[0x4]; /*      0x4ac - 0x4b0      */
1369          /* 0x400 - 0x4b0 same as Osprey - end */
1370          volatile u_int32_t BB_aic_ctrl_0_b0; /*      0x4b0 - 0x4b4      */
1371          volatile u_int32_t BB_aic_ctrl_1_b0; /*      0x4b4 - 0x4b8      */
1372          volatile u_int32_t BB_aic_ctrl_2_b0; /*      0x4b8 - 0x4bc      */
1373          volatile u_int32_t BB_aic_ctrl_3_b0; /*      0x4bc - 0x4c0      */
1374          volatile u_int32_t BB_aic_stat_0_b0; /*      0x4c0 - 0x4c4      */
1375          volatile u_int32_t BB_aic_stat_1_b0; /*      0x4c4 - 0x4c8      */
1376          volatile char pad__14[0xf8]; /*      0x4c8 - 0x5c0      */
1377      } Jupiter_10;
1378      struct {
1379          volatile u_int32_t BB_rtt_ctrl; /*      0x380 - 0x384      */
1380          volatile u_int32_t BB_rtt_table_sw_intf_b0; /*      0x384 - 0x388      */
1381          volatile u_int32_t BB_rtt_table_sw_intf_1_b0; /*      0x388 - 0x38c      */
1382          volatile char pad__11[0x74]; /*      0x38c - 0x400      */
1383          /* 0x400 - 0x4b0 same as Osprey - start */
1384          volatile u_int32_t BB_caltx_gain_set_0; /*      0x400 - 0x404      */
1385          volatile u_int32_t BB_caltx_gain_set_2; /*      0x404 - 0x408      */
1386          volatile u_int32_t BB_caltx_gain_set_4; /*      0x408 - 0x40c      */
1387          volatile u_int32_t BB_caltx_gain_set_6; /*      0x40c - 0x410      */
1388          volatile u_int32_t BB_caltx_gain_set_8; /*      0x410 - 0x414      */
1389          volatile u_int32_t BB_caltx_gain_set_10; /*      0x414 - 0x418      */
1390          volatile u_int32_t BB_caltx_gain_set_12; /*      0x418 - 0x41c      */
1391          volatile u_int32_t BB_caltx_gain_set_14; /*      0x41c - 0x420      */
1392          volatile u_int32_t BB_caltx_gain_set_16; /*      0x420 - 0x424      */
1393          volatile u_int32_t BB_caltx_gain_set_18; /*      0x424 - 0x428      */
1394          volatile u_int32_t BB_caltx_gain_set_20; /*      0x428 - 0x42c      */
1395          volatile u_int32_t BB_caltx_gain_set_22; /*      0x42c - 0x430      */
1396          volatile u_int32_t BB_caltx_gain_set_24; /*      0x430 - 0x434      */
1397          volatile u_int32_t BB_caltx_gain_set_26; /*      0x434 - 0x438      */
1398          volatile u_int32_t BB_caltx_gain_set_28; /*      0x438 - 0x43c      */
1399          volatile u_int32_t BB_caltx_gain_set_30; /*      0x43c - 0x440      */
1400          volatile char pad__12[0x4]; /*      0x440 - 0x444      */
1401          volatile u_int32_t BB_txiqcal_control_0; /*      0x444 - 0x448      */
1402          volatile u_int32_t BB_txiqcal_control_1; /*      0x448 - 0x44c      */
1403          volatile u_int32_t BB_txiqcal_control_2; /*      0x44c - 0x450      */
1404          volatile u_int32_t BB_txiq_corr_coeff_01_b0; /*      0x450 - 0x454      */
1405          volatile u_int32_t BB_txiq_corr_coeff_23_b0; /*      0x454 - 0x458      */
1406          volatile u_int32_t BB_txiq_corr_coeff_45_b0; /*      0x458 - 0x45c      */
1407          volatile u_int32_t BB_txiq_corr_coeff_67_b0; /*      0x45c - 0x460      */
1408          volatile u_int32_t BB_txiq_corr_coeff_89_b0; /*      0x460 - 0x464      */
1409          volatile u_int32_t BB_txiq_corr_coeff_ab_b0; /*      0x464 - 0x468      */
1410          volatile u_int32_t BB_txiq_corr_coeff_cd_b0; /*      0x468 - 0x46c      */
1411          volatile u_int32_t BB_txiq_corr_coeff_ef_b0; /*      0x46c - 0x470      */
1412          volatile u_int32_t BB_cal_rxbb_gain_tbl_0; /*      0x470 - 0x474      */
1413          volatile u_int32_t BB_cal_rxbb_gain_tbl_4; /*      0x474 - 0x478      */
1414          volatile u_int32_t BB_cal_rxbb_gain_tbl_8; /*      0x478 - 0x47c      */
1415          volatile u_int32_t BB_cal_rxbb_gain_tbl_12; /*      0x47c - 0x480      */
1416          volatile u_int32_t BB_cal_rxbb_gain_tbl_16; /*      0x480 - 0x484      */
1417          volatile u_int32_t BB_cal_rxbb_gain_tbl_20; /*      0x484 - 0x488      */
1418          volatile u_int32_t BB_cal_rxbb_gain_tbl_24; /*      0x488 - 0x48c      */
1419          volatile u_int32_t BB_txiqcal_status_b0; /*      0x48c - 0x490      */
1420          volatile u_int32_t BB_paprd_trainer_cntl1; /*      0x490 - 0x494      */
1421          volatile u_int32_t BB_paprd_trainer_cntl2; /*      0x494 - 0x498      */
1422          volatile u_int32_t BB_paprd_trainer_cntl3; /*      0x498 - 0x49c      */
1423          volatile u_int32_t BB_paprd_trainer_cntl4; /*      0x49c - 0x4a0      */
1424          volatile u_int32_t BB_paprd_trainer_stat1; /*      0x4a0 - 0x4a4      */
1425          volatile u_int32_t BB_paprd_trainer_stat2; /*      0x4a4 - 0x4a8      */
1426          volatile u_int32_t BB_paprd_trainer_stat3; /*      0x4a8 - 0x4ac      */
1427          volatile char pad__13[0x4]; /*      0x4ac - 0x4b0      */
1428          /* 0x400 - 0x4b0 same as Osprey - end */
1429          volatile u_int32_t BB_aic_ctrl_0_b0; /*      0x4b0 - 0x4b4      */
1430          volatile u_int32_t BB_aic_ctrl_1_b0; /*      0x4b4 - 0x4b8      */
1431          volatile u_int32_t BB_aic_ctrl_2_b0; /*      0x4b8 - 0x4bc      */
1432          volatile u_int32_t BB_aic_ctrl_3_b0; /*      0x4bc - 0x4c0      */
1433          volatile u_int32_t BB_aic_ctrl_4_b0; /*      0x4c0 - 0x4c4      */
1434          volatile u_int32_t BB_aic_stat_0_b0; /*      0x4c4 - 0x4c8      */
1435          volatile u_int32_t BB_aic_stat_1_b0; /*      0x4c8 - 0x4cc      */
1436          volatile u_int32_t BB_aic_stat_2_b0; /*      0x4cc - 0x4d0      */
1437          volatile char pad__14[0xf0]; /*      0x4d0 - 0x5c0      */
1438      } Jupiter_20;
1439  } overlay_0xa580;
1440  volatile u_int32_t BB_panic_watchdog_status; /*      0x5c0 - 0x5c4      */
1441  volatile u_int32_t BB_panic_watchdog_ctrl_1; /*      0x5c4 - 0x5c8      */
1442  volatile u_int32_t BB_panic_watchdog_ctrl_2; /*      0x5c8 - 0x5cc      */
1443  volatile u_int32_t BB_bluetooth_cntl; /*      0x5cc - 0x5d0      */
1444  volatile u_int32_t BB_phyonly_warm_reset; /*      0x5d0 - 0x5d4      */
1445  volatile u_int32_t BB_phyonly_control; /*      0x5d4 - 0x5d8      */
1446  volatile char pad__12[0x4]; /*      0x5d8 - 0x5dc      */
1447  volatile u_int32_t BB_eco_ctrl; /*      0x5dc - 0x5e0      */
1448  volatile char pad__13[0x10]; /*      0x5e0 - 0x5f0      */
1449  /* Jupiter */
1450  volatile u_int32_t BB_tables_intf_addr_b0; /*      0x5f0 - 0x5f4      */
1451  /* Jupiter */
1452  volatile u_int32_t BB_tables_intf_data_b0; /*      0x5f4 - 0x5f8      */
1453};
1454
1455struct chn1_reg_map {
1456  volatile u_int32_t BB_dummy_DONOTACCESS1; /*        0x0 - 0x4        */
1457  volatile char pad__0[0x2c]; /*        0x4 - 0x30       */
1458  volatile u_int32_t BB_ext_chan_pwr_thr_2_b1; /*       0x30 - 0x34       */
1459  volatile char pad__1[0x74]; /*       0x34 - 0xa8       */
1460  volatile u_int32_t BB_spur_report_b1; /*       0xa8 - 0xac       */
1461  volatile char pad__2[0x14]; /*       0xac - 0xc0       */
1462  volatile u_int32_t BB_iq_adc_meas_0_b1; /*       0xc0 - 0xc4       */
1463  volatile u_int32_t BB_iq_adc_meas_1_b1; /*       0xc4 - 0xc8       */
1464  volatile u_int32_t BB_iq_adc_meas_2_b1; /*       0xc8 - 0xcc       */
1465  volatile u_int32_t BB_iq_adc_meas_3_b1; /*       0xcc - 0xd0       */
1466  volatile u_int32_t BB_tx_phase_ramp_b1; /*       0xd0 - 0xd4       */
1467  volatile u_int32_t BB_adc_gain_dc_corr_b1; /*       0xd4 - 0xd8       */
1468  volatile char pad__3[0x4]; /*       0xd8 - 0xdc       */
1469  volatile u_int32_t BB_rx_iq_corr_b1; /*       0xdc - 0xe0       */
1470  volatile char pad__4[0x10]; /*       0xe0 - 0xf0       */
1471  volatile u_int32_t BB_paprd_ctrl0_b1; /*       0xf0 - 0xf4       */
1472  volatile u_int32_t BB_paprd_ctrl1_b1; /*       0xf4 - 0xf8       */
1473  volatile u_int32_t BB_pa_gain123_b1; /*       0xf8 - 0xfc       */
1474  volatile u_int32_t BB_pa_gain45_b1; /*       0xfc - 0x100      */
1475  volatile u_int32_t BB_paprd_pre_post_scale_0_b1;
1476                                                  /*      0x100 - 0x104      */
1477  volatile u_int32_t BB_paprd_pre_post_scale_1_b1;
1478                                                  /*      0x104 - 0x108      */
1479  volatile u_int32_t BB_paprd_pre_post_scale_2_b1;
1480                                                  /*      0x108 - 0x10c      */
1481  volatile u_int32_t BB_paprd_pre_post_scale_3_b1;
1482                                                  /*      0x10c - 0x110      */
1483  volatile u_int32_t BB_paprd_pre_post_scale_4_b1;
1484                                                  /*      0x110 - 0x114      */
1485  volatile u_int32_t BB_paprd_pre_post_scale_5_b1;
1486                                                  /*      0x114 - 0x118      */
1487  volatile u_int32_t BB_paprd_pre_post_scale_6_b1;
1488                                                  /*      0x118 - 0x11c      */
1489  volatile u_int32_t BB_paprd_pre_post_scale_7_b1;
1490                                                  /*      0x11c - 0x120      */
1491  volatile u_int32_t BB_paprd_mem_tab_b1[120]; /*      0x120 - 0x300      */
1492  volatile u_int32_t BB_chan_info_chan_tab_b1[60];
1493                                                  /*      0x300 - 0x3f0      */
1494  /* Jupiter_20 */
1495  volatile u_int32_t BB_chn1_tables_intf_addr; /*      0x3f0 - 0x3f4      */
1496  /* Jupiter_20 */
1497  volatile u_int32_t BB_chn1_tables_intf_data; /*      0x3f4 - 0x3f8      */
1498};
1499
1500struct chn_ext_reg_map {
1501  volatile u_int32_t BB_paprd_pre_post_scale_0_1_b0;
1502                                                  /*        0x0 - 0x4        */
1503  volatile u_int32_t BB_paprd_pre_post_scale_1_1_b0;
1504                                                  /*        0x4 - 0x8        */
1505  volatile u_int32_t BB_paprd_pre_post_scale_2_1_b0;
1506                                                  /*        0x8 - 0xc        */
1507  volatile u_int32_t BB_paprd_pre_post_scale_3_1_b0;
1508                                                  /*        0xc - 0x10       */
1509  volatile u_int32_t BB_paprd_pre_post_scale_4_1_b0;
1510                                                  /*       0x10 - 0x14       */
1511  volatile u_int32_t BB_paprd_pre_post_scale_5_1_b0;
1512                                                  /*       0x14 - 0x18       */
1513  volatile u_int32_t BB_paprd_pre_post_scale_6_1_b0;
1514                                                  /*       0x18 - 0x1c       */
1515  volatile u_int32_t BB_paprd_pre_post_scale_7_1_b0;
1516                                                  /*       0x1c - 0x20       */
1517  volatile u_int32_t BB_paprd_pre_post_scale_0_2_b0;
1518                                                  /*       0x20 - 0x24       */
1519  volatile u_int32_t BB_paprd_pre_post_scale_1_2_b0;
1520                                                  /*       0x24 - 0x28       */
1521  volatile u_int32_t BB_paprd_pre_post_scale_2_2_b0;
1522                                                  /*       0x28 - 0x2c       */
1523  volatile u_int32_t BB_paprd_pre_post_scale_3_2_b0;
1524                                                  /*       0x2c - 0x30       */
1525  volatile u_int32_t BB_paprd_pre_post_scale_4_2_b0;
1526                                                  /*       0x30 - 0x34       */
1527  volatile u_int32_t BB_paprd_pre_post_scale_5_2_b0;
1528                                                  /*       0x34 - 0x38       */
1529  volatile u_int32_t BB_paprd_pre_post_scale_6_2_b0;
1530                                                  /*       0x38 - 0x3c       */
1531  volatile u_int32_t BB_paprd_pre_post_scale_7_2_b0;
1532                                                  /*       0x3c - 0x40       */
1533  volatile u_int32_t BB_paprd_pre_post_scale_0_3_b0;
1534                                                  /*       0x40 - 0x44       */
1535  volatile u_int32_t BB_paprd_pre_post_scale_1_3_b0;
1536                                                  /*       0x44 - 0x48       */
1537  volatile u_int32_t BB_paprd_pre_post_scale_2_3_b0;
1538                                                  /*       0x48 - 0x4c       */
1539  volatile u_int32_t BB_paprd_pre_post_scale_3_3_b0;
1540                                                  /*       0x4c - 0x50       */
1541  volatile u_int32_t BB_paprd_pre_post_scale_4_3_b0;
1542                                                  /*       0x50 - 0x54       */
1543  volatile u_int32_t BB_paprd_pre_post_scale_5_3_b0;
1544                                                  /*       0x54 - 0x58       */
1545  volatile u_int32_t BB_paprd_pre_post_scale_6_3_b0;
1546                                                  /*       0x58 - 0x5c       */
1547  volatile u_int32_t BB_paprd_pre_post_scale_7_3_b0;
1548                                                  /*       0x5c - 0x60       */
1549  volatile u_int32_t BB_paprd_pre_post_scale_0_4_b0;
1550                                                  /*       0x60 - 0x64       */
1551  volatile u_int32_t BB_paprd_pre_post_scale_1_4_b0;
1552                                                  /*       0x64 - 0x68       */
1553  volatile u_int32_t BB_paprd_pre_post_scale_2_4_b0;
1554                                                  /*       0x68 - 0x6c       */
1555  volatile u_int32_t BB_paprd_pre_post_scale_3_4_b0;
1556                                                  /*       0x6c - 0x70       */
1557  volatile u_int32_t BB_paprd_pre_post_scale_4_4_b0;
1558                                                  /*       0x70 - 0x74       */
1559  volatile u_int32_t BB_paprd_pre_post_scale_5_4_b0;
1560                                                  /*       0x74 - 0x78       */
1561  volatile u_int32_t BB_paprd_pre_post_scale_6_4_b0;
1562                                                  /*       0x78 - 0x7c       */
1563  volatile u_int32_t BB_paprd_pre_post_scale_7_4_b0;
1564                                                  /*       0x7c - 0x80       */
1565  volatile u_int32_t BB_paprd_power_at_am2am_cal_b0;
1566                                                  /*       0x80 - 0x84       */
1567  volatile u_int32_t BB_paprd_valid_obdb_b0; /*       0x84 - 0x88       */
1568  volatile char pad__0[0x374]; /*       0x88 - 0x3fc      */
1569  volatile u_int32_t BB_chn_ext_dummy_2; /*      0x3fc - 0x400      */
1570};
1571
1572struct sm_ext_reg_map {
1573  volatile u_int32_t BB_sm_ext_dummy1; /*        0x0 - 0x4        */
1574  volatile char pad__0[0x2fc]; /*        0x4 - 0x300      */
1575  volatile u_int32_t BB_green_tx_gain_tab_1; /*      0x300 - 0x304      */
1576  volatile u_int32_t BB_green_tx_gain_tab_2; /*      0x304 - 0x308      */
1577  volatile u_int32_t BB_green_tx_gain_tab_3; /*      0x308 - 0x30c      */
1578  volatile u_int32_t BB_green_tx_gain_tab_4; /*      0x30c - 0x310      */
1579  volatile u_int32_t BB_green_tx_gain_tab_5; /*      0x310 - 0x314      */
1580  volatile u_int32_t BB_green_tx_gain_tab_6; /*      0x314 - 0x318      */
1581  volatile u_int32_t BB_green_tx_gain_tab_7; /*      0x318 - 0x31c      */
1582  volatile u_int32_t BB_green_tx_gain_tab_8; /*      0x31c - 0x320      */
1583  volatile u_int32_t BB_green_tx_gain_tab_9; /*      0x320 - 0x324      */
1584  volatile u_int32_t BB_green_tx_gain_tab_10; /*      0x324 - 0x328      */
1585  volatile u_int32_t BB_green_tx_gain_tab_11; /*      0x328 - 0x32c      */
1586  volatile u_int32_t BB_green_tx_gain_tab_12; /*      0x32c - 0x330      */
1587  volatile u_int32_t BB_green_tx_gain_tab_13; /*      0x330 - 0x334      */
1588  volatile u_int32_t BB_green_tx_gain_tab_14; /*      0x334 - 0x338      */
1589  volatile u_int32_t BB_green_tx_gain_tab_15; /*      0x338 - 0x33c      */
1590  volatile u_int32_t BB_green_tx_gain_tab_16; /*      0x33c - 0x340      */
1591  volatile u_int32_t BB_green_tx_gain_tab_17; /*      0x340 - 0x344      */
1592  volatile u_int32_t BB_green_tx_gain_tab_18; /*      0x344 - 0x348      */
1593  volatile u_int32_t BB_green_tx_gain_tab_19; /*      0x348 - 0x34c      */
1594  volatile u_int32_t BB_green_tx_gain_tab_20; /*      0x34c - 0x350      */
1595  volatile u_int32_t BB_green_tx_gain_tab_21; /*      0x350 - 0x354      */
1596  volatile u_int32_t BB_green_tx_gain_tab_22; /*      0x354 - 0x358      */
1597  volatile u_int32_t BB_green_tx_gain_tab_23; /*      0x358 - 0x35c      */
1598  volatile u_int32_t BB_green_tx_gain_tab_24; /*      0x35c - 0x360      */
1599  volatile u_int32_t BB_green_tx_gain_tab_25; /*      0x360 - 0x364      */
1600  volatile u_int32_t BB_green_tx_gain_tab_26; /*      0x364 - 0x368      */
1601  volatile u_int32_t BB_green_tx_gain_tab_27; /*      0x368 - 0x36c      */
1602  volatile u_int32_t BB_green_tx_gain_tab_28; /*      0x36c - 0x370      */
1603  volatile u_int32_t BB_green_tx_gain_tab_29; /*      0x370 - 0x374      */
1604  volatile u_int32_t BB_green_tx_gain_tab_30; /*      0x374 - 0x378      */
1605  volatile u_int32_t BB_green_tx_gain_tab_31; /*      0x378 - 0x37c      */
1606  volatile u_int32_t BB_green_tx_gain_tab_32; /*      0x37c - 0x380      */
1607  volatile char pad__1[0x27c]; /*      0x380 - 0x5fc      */
1608  volatile u_int32_t BB_sm_ext_dummy2; /*      0x5fc - 0x600      */
1609};
1610
1611struct agc1_reg_map {
1612  volatile u_int32_t BB_dummy_DONOTACCESS3; /*        0x0 - 0x4        */
1613  volatile u_int32_t BB_gain_force_max_gains_b1; /*        0x4 - 0x8        */
1614  volatile char pad__0[0x10]; /*        0x8 - 0x18       */
1615  volatile u_int32_t BB_ext_atten_switch_ctl_b1; /*       0x18 - 0x1c       */
1616  /* Not Poseidon */
1617  volatile u_int32_t BB_cca_b1; /*       0x1c - 0x20       */
1618  /* Not Poseidon */
1619  volatile u_int32_t BB_cca_ctrl_2_b1; /*       0x20 - 0x24       */
1620  volatile char pad__1[0x15c]; /*       0x24 - 0x180      */
1621  volatile u_int32_t BB_rssi_b1; /*      0x180 - 0x184      */
1622  /* Not Poseidon */
1623  volatile u_int32_t BB_spur_est_cck_report_b1; /*      0x184 - 0x188      */
1624  /* Not Poseidon */
1625  volatile u_int32_t BB_agc_dig_dc_status_i_b1; /*      0x188 - 0x18c      */
1626  /* Not Poseidon */
1627  volatile u_int32_t BB_agc_dig_dc_status_q_b1; /*      0x18c - 0x190      */
1628  /* Jupiter */
1629  volatile u_int32_t BB_dc_cal_status_b1; /*      0x190 - 0x194      */
1630  volatile char pad__2[0x6c]; /*      0x194 - 0x200      */
1631  volatile u_int32_t BB_rx_ocgain2[128]; /*      0x200 - 0x400      */
1632};
1633
1634struct sm1_reg_map {
1635  volatile u_int32_t BB_dummy_DONOTACCESS5; /*        0x0 - 0x4        */
1636  volatile char pad__0[0x80]; /*        0x4 - 0x84       */
1637  volatile u_int32_t BB_switch_table_chn_b1; /*       0x84 - 0x88       */
1638  volatile char pad__1[0x48]; /*       0x88 - 0xd0       */
1639  volatile u_int32_t BB_fcal_2_b1; /*       0xd0 - 0xd4       */
1640  volatile u_int32_t BB_dft_tone_ctrl_b1; /*       0xd4 - 0xd8       */
1641  volatile char pad__2[0x4]; /*       0xd8 - 0xdc       */
1642  volatile u_int32_t BB_cl_map_0_b1; /*       0xdc - 0xe0       */
1643  volatile u_int32_t BB_cl_map_1_b1; /*       0xe0 - 0xe4       */
1644  volatile u_int32_t BB_cl_map_2_b1; /*       0xe4 - 0xe8       */
1645  volatile u_int32_t BB_cl_map_3_b1; /*       0xe8 - 0xec       */
1646  volatile u_int32_t BB_cl_map_pal_0_b1; /*       0xec - 0xf0       */
1647  volatile u_int32_t BB_cl_map_pal_1_b1; /*       0xf0 - 0xf4       */
1648  volatile u_int32_t BB_cl_map_pal_2_b1; /*       0xf4 - 0xf8       */
1649  volatile u_int32_t BB_cl_map_pal_3_b1; /*       0xf8 - 0xfc       */
1650  volatile char pad__3[0x4]; /*       0xfc - 0x100      */
1651  volatile u_int32_t BB_cl_tab_b1[16]; /*      0x100 - 0x140      */
1652  volatile char pad__4[0x40]; /*      0x140 - 0x180      */
1653  volatile u_int32_t BB_chan_info_gain_b1; /*      0x180 - 0x184      */
1654  volatile char pad__5[0x80]; /*      0x184 - 0x204      */
1655  volatile u_int32_t BB_tpc_4_b1; /*      0x204 - 0x208      */
1656  volatile u_int32_t BB_tpc_5_b1; /*      0x208 - 0x20c      */
1657  volatile u_int32_t BB_tpc_6_b1; /*      0x20c - 0x210      */
1658  volatile char pad__6[0x10]; /*      0x210 - 0x220      */
1659  volatile u_int32_t BB_tpc_11_b1; /*      0x220 - 0x224      */
1660  volatile char pad__7[0x1c]; /*      0x224 - 0x240      */
1661  union {
1662    volatile u_int32_t BB_pdadc_tab_b1[32]; /*      0x240 - 0x2c0      */
1663      struct {
1664          volatile u_int32_t BB_tpc_19_b1; /*      0x240 - 0x244      */
1665          volatile u_int32_t pad__7_1[31]; /*      0x244 - 0x2c0      */
1666          volatile char pad__8[0x190]; /*      0x2c0 - 0x450      */
1667      } Scorpion;
1668      struct {
1669          volatile u_int32_t BB_pdadc_tab_b1[32]; /*      0x240 - 0x2c0      */
1670          volatile char pad__8[0x190]; /*      0x2c0 - 0x450      */
1671      } Osprey;
1672      struct {
1673          volatile u_int32_t BB_tpc_19_b1; /*      0x240 - 0x244      */
1674          volatile char pad__8[0x3c]; /*      0x244 - 0x280      */
1675          volatile u_int32_t BB_pdadc_tab_b1[32]; /*      0x280 - 0x300      */
1676          volatile char pad__9[0x84]; /*      0x300 - 0x384      */
1677          volatile u_int32_t BB_rtt_table_sw_intf_b1; /*      0x384 - 0x388      */
1678          volatile u_int32_t BB_rtt_table_sw_intf_1_b1; /*      0x388 - 0x38c      */
1679          volatile char pad__10[0xc4]; /*      0x38c - 0x450      */
1680      } Jupiter_20;
1681  } overlay_b440;
1682  volatile u_int32_t BB_txiq_corr_coeff_01_b1; /*      0x450 - 0x454      */
1683  volatile u_int32_t BB_txiq_corr_coeff_23_b1; /*      0x454 - 0x458      */
1684  volatile u_int32_t BB_txiq_corr_coeff_45_b1; /*      0x458 - 0x45c      */
1685  volatile u_int32_t BB_txiq_corr_coeff_67_b1; /*      0x45c - 0x460      */
1686  volatile u_int32_t BB_txiq_corr_coeff_89_b1; /*      0x460 - 0x464      */
1687  volatile u_int32_t BB_txiq_corr_coeff_ab_b1; /*      0x464 - 0x468      */
1688  volatile u_int32_t BB_txiq_corr_coeff_cd_b1; /*      0x468 - 0x46c      */
1689  volatile u_int32_t BB_txiq_corr_coeff_ef_b1; /*      0x46c - 0x470      */
1690  volatile char pad__9[0x1c]; /*      0x470 - 0x48c      */
1691  volatile u_int32_t BB_txiqcal_status_b1; /*      0x48c - 0x490      */
1692  volatile char pad__10[0x20]; /*      0x490 - 0x4b0      */
1693  union {
1694      struct {
1695          volatile char pad__11[0x150]; /*      0x4b0 - 0x600     */
1696      } Osprey;
1697      struct {
1698          volatile u_int32_t BB_aic_ctrl_0_b1; /*      0x4b0 - 0x4b4      */
1699          volatile u_int32_t BB_aic_ctrl_1_b1; /*      0x4b4 - 0x4b8      */
1700          volatile char pad__11[0x8]; /*      0x4b8 - 0x4c0      */
1701          volatile u_int32_t BB_aic_stat_0_b1; /*      0x4c0 - 0x4c4      */
1702          volatile u_int32_t BB_aic_stat_1_b1; /*      0x4c4 - 0x4c8      */
1703          volatile char pad__12[0x128]; /*      0x4c8 - 0x5f0      */
1704          volatile u_int32_t BB_tables_intf_addr_b1; /*      0x5f0 - 0x5f4      */
1705          volatile u_int32_t BB_tables_intf_data_b1; /*      0x5f4 - 0x5f8      */
1706          volatile char pad__13[0x8]; /*      0x5f8 - 0x600      */
1707      } Jupiter_10;
1708      struct {
1709          volatile u_int32_t BB_aic_ctrl_0_b1; /*      0x4b0 - 0x4b4      */
1710          volatile u_int32_t BB_aic_ctrl_1_b1; /*      0x4b4 - 0x4b8      */
1711          volatile char pad__11[0x8]; /*      0x4b8 - 0x4c0      */
1712          volatile u_int32_t BB_aic_ctrl_4_b1; /*      0x4c0 - 0x4c4      */
1713          volatile u_int32_t BB_aic_stat_0_b1; /*      0x4c4 - 0x4c8      */
1714          volatile u_int32_t BB_aic_stat_1_b1; /*      0x4c8 - 0x4cc      */
1715          volatile u_int32_t BB_aic_stat_2_b1; /*      0x4cc - 0x4d0      */
1716          volatile char pad__12[0x120]; /*      0x4d0 - 0x5f0      */
1717          volatile u_int32_t BB_tables_intf_addr_b1; /*      0x5f0 - 0x5f4      */
1718          volatile u_int32_t BB_tables_intf_data_b1; /*      0x5f4 - 0x5f8      */
1719          volatile char pad__13[0x8]; /*      0x5f8 - 0x600      */
1720      } Jupiter_20;
1721  } overlay_0x4b0;
1722};
1723
1724struct chn2_reg_map {
1725  volatile u_int32_t BB_dummy_DONOTACCESS2; /*        0x0 - 0x4        */
1726  volatile char pad__0[0x2c]; /*        0x4 - 0x30       */
1727  volatile u_int32_t BB_ext_chan_pwr_thr_2_b2; /*       0x30 - 0x34       */
1728  volatile char pad__1[0x74]; /*       0x34 - 0xa8       */
1729  volatile u_int32_t BB_spur_report_b2; /*       0xa8 - 0xac       */
1730  volatile char pad__2[0x14]; /*       0xac - 0xc0       */
1731  volatile u_int32_t BB_iq_adc_meas_0_b2; /*       0xc0 - 0xc4       */
1732  volatile u_int32_t BB_iq_adc_meas_1_b2; /*       0xc4 - 0xc8       */
1733  volatile u_int32_t BB_iq_adc_meas_2_b2; /*       0xc8 - 0xcc       */
1734  volatile u_int32_t BB_iq_adc_meas_3_b2; /*       0xcc - 0xd0       */
1735  volatile u_int32_t BB_tx_phase_ramp_b2; /*       0xd0 - 0xd4       */
1736  volatile u_int32_t BB_adc_gain_dc_corr_b2; /*       0xd4 - 0xd8       */
1737  volatile char pad__3[0x4]; /*       0xd8 - 0xdc       */
1738  volatile u_int32_t BB_rx_iq_corr_b2; /*       0xdc - 0xe0       */
1739  volatile char pad__4[0x10]; /*       0xe0 - 0xf0       */
1740  volatile u_int32_t BB_paprd_ctrl0_b2; /*       0xf0 - 0xf4       */
1741  volatile u_int32_t BB_paprd_ctrl1_b2; /*       0xf4 - 0xf8       */
1742  volatile u_int32_t BB_pa_gain123_b2; /*       0xf8 - 0xfc       */
1743  volatile u_int32_t BB_pa_gain45_b2; /*       0xfc - 0x100      */
1744  volatile u_int32_t BB_paprd_pre_post_scale_0_b2;
1745                                                  /*      0x100 - 0x104      */
1746  volatile u_int32_t BB_paprd_pre_post_scale_1_b2;
1747                                                  /*      0x104 - 0x108      */
1748  volatile u_int32_t BB_paprd_pre_post_scale_2_b2;
1749                                                  /*      0x108 - 0x10c      */
1750  volatile u_int32_t BB_paprd_pre_post_scale_3_b2;
1751                                                  /*      0x10c - 0x110      */
1752  volatile u_int32_t BB_paprd_pre_post_scale_4_b2;
1753                                                  /*      0x110 - 0x114      */
1754  volatile u_int32_t BB_paprd_pre_post_scale_5_b2;
1755                                                  /*      0x114 - 0x118      */
1756  volatile u_int32_t BB_paprd_pre_post_scale_6_b2;
1757                                                  /*      0x118 - 0x11c      */
1758  volatile u_int32_t BB_paprd_pre_post_scale_7_b2;
1759                                                  /*      0x11c - 0x120      */
1760  volatile u_int32_t BB_paprd_mem_tab_b2[120]; /*      0x120 - 0x300      */
1761  volatile u_int32_t BB_chan_info_chan_tab_b2[60];
1762                                                  /*      0x300 - 0x3f0      */
1763};
1764
1765struct agc2_reg_map {
1766  volatile u_int32_t BB_dummy_DONOTACCESS4; /*        0x0 - 0x4        */
1767  volatile u_int32_t BB_gain_force_max_gains_b2; /*        0x4 - 0x8        */
1768  volatile char pad__0[0x10]; /*        0x8 - 0x18       */
1769  volatile u_int32_t BB_ext_atten_switch_ctl_b2; /*       0x18 - 0x1c       */
1770  volatile u_int32_t BB_cca_b2; /*       0x1c - 0x20       */
1771  volatile u_int32_t BB_cca_ctrl_2_b2; /*       0x20 - 0x24       */
1772  volatile char pad__1[0x15c]; /*       0x24 - 0x180      */
1773  volatile u_int32_t BB_rssi_b2; /*      0x180 - 0x184      */
1774  volatile char pad__2[0x4]; /*      0x184 - 0x188      */
1775  volatile u_int32_t BB_agc_dig_dc_status_i_b2; /*      0x188 - 0x18c      */
1776  volatile u_int32_t BB_agc_dig_dc_status_q_b2; /*      0x18c - 0x190      */
1777};
1778
1779struct sm2_reg_map {
1780  volatile u_int32_t BB_dummy_DONOTACCESS6; /*        0x0 - 0x4        */
1781  volatile char pad__0[0x80]; /*        0x4 - 0x84       */
1782  volatile u_int32_t BB_switch_table_chn_b2; /*       0x84 - 0x88       */
1783  volatile char pad__1[0x48]; /*       0x88 - 0xd0       */
1784  volatile u_int32_t BB_fcal_2_b2; /*       0xd0 - 0xd4       */
1785  volatile u_int32_t BB_dft_tone_ctrl_b2; /*       0xd4 - 0xd8       */
1786  volatile char pad__2[0x4]; /*       0xd8 - 0xdc       */
1787  volatile u_int32_t BB_cl_map_0_b2; /*       0xdc - 0xe0       */
1788  volatile u_int32_t BB_cl_map_1_b2; /*       0xe0 - 0xe4       */
1789  volatile u_int32_t BB_cl_map_2_b2; /*       0xe4 - 0xe8       */
1790  volatile u_int32_t BB_cl_map_3_b2; /*       0xe8 - 0xec       */
1791  volatile u_int32_t BB_cl_map_pal_0_b2; /*       0xec - 0xf0       */
1792  volatile u_int32_t BB_cl_map_pal_1_b2; /*       0xf0 - 0xf4       */
1793  volatile u_int32_t BB_cl_map_pal_2_b2; /*       0xf4 - 0xf8       */
1794  volatile u_int32_t BB_cl_map_pal_3_b2; /*       0xf8 - 0xfc       */
1795  volatile char pad__3[0x4]; /*       0xfc - 0x100      */
1796  volatile u_int32_t BB_cl_tab_b2[16]; /*      0x100 - 0x140      */
1797  volatile char pad__4[0x40]; /*      0x140 - 0x180      */
1798  volatile u_int32_t BB_chan_info_gain_b2; /*      0x180 - 0x184      */
1799  volatile char pad__5[0x80]; /*      0x184 - 0x204      */
1800  volatile u_int32_t BB_tpc_4_b2; /*      0x204 - 0x208      */
1801  volatile u_int32_t BB_tpc_5_b2; /*      0x208 - 0x20c      */
1802  volatile u_int32_t BB_tpc_6_b2; /*      0x20c - 0x210      */
1803  volatile char pad__6[0x10]; /*      0x210 - 0x220      */
1804  volatile u_int32_t BB_tpc_11_b2; /*      0x220 - 0x224      */
1805  volatile char pad__7[0x1c]; /*      0x224 - 0x240      */
1806  union {
1807    volatile u_int32_t BB_pdadc_tab_b2[32]; /*      0x240 - 0x2c0      */
1808    struct {
1809      volatile u_int32_t BB_tpc_19_b2; /*      0x240 - 0x244      */
1810      volatile u_int32_t pad__7_1[31]; /*      0x244 - 0x2c0      */
1811    } Scorpion;
1812  } overlay_c440;
1813  volatile char pad__8[0x190]; /*      0x2c0 - 0x450      */
1814  volatile u_int32_t BB_txiq_corr_coeff_01_b2; /*      0x450 - 0x454      */
1815  volatile u_int32_t BB_txiq_corr_coeff_23_b2; /*      0x454 - 0x458      */
1816  volatile u_int32_t BB_txiq_corr_coeff_45_b2; /*      0x458 - 0x45c      */
1817  volatile u_int32_t BB_txiq_corr_coeff_67_b2; /*      0x45c - 0x460      */
1818  volatile u_int32_t BB_txiq_corr_coeff_89_b2; /*      0x460 - 0x464      */
1819  volatile u_int32_t BB_txiq_corr_coeff_ab_b2; /*      0x464 - 0x468      */
1820  volatile u_int32_t BB_txiq_corr_coeff_cd_b2; /*      0x468 - 0x46c      */
1821  volatile u_int32_t BB_txiq_corr_coeff_ef_b2; /*      0x46c - 0x470      */
1822  volatile char pad__9[0x1c]; /*      0x470 - 0x48c      */
1823  volatile u_int32_t BB_txiqcal_status_b2; /*      0x48c - 0x490      */
1824  volatile char pad__10[0x16c]; /*      0x490 - 0x5fc      */
1825  volatile u_int32_t BB_dummy_sm2; /*      0x5fc - 0x600      */
1826};
1827
1828struct chn3_reg_map {
1829  volatile u_int32_t BB_dummy1[256]; /*        0x0 - 0x400      */
1830};
1831
1832struct agc3_reg_map {
1833  volatile u_int32_t BB_dummy; /*        0x0 - 0x4        */
1834  volatile char pad__0[0x17c]; /*        0x4 - 0x180      */
1835  volatile u_int32_t BB_rssi_b3; /*      0x180 - 0x184      */
1836};
1837
1838struct sm3_reg_map {
1839  volatile u_int32_t BB_dummy2[384]; /*        0x0 - 0x600      */
1840};
1841
1842struct bb_reg_map {
1843  volatile char pad__0[0x9800]; /*        0x0 - 0x9800     */
1844  struct chn_reg_map bb_chn_reg_map; /*     0x9800 - 0x9bf8     */
1845  volatile char pad__1[0x8]; /*     0x9bf8 - 0x9c00     */
1846  struct mrc_reg_map bb_mrc_reg_map; /*     0x9c00 - 0x9c24     */
1847  volatile char pad__2[0xdc]; /*     0x9c24 - 0x9d00     */
1848  struct bbb_reg_map bb_bbb_reg_map; /*     0x9d00 - 0x9d20     */
1849  volatile char pad__3[0xe0]; /*     0x9d20 - 0x9e00     */
1850  struct agc_reg_map bb_agc_reg_map; /*     0x9e00 - 0xa200     */
1851  struct sm_reg_map bb_sm_reg_map; /*     0xa200 - 0xa7f8     */
1852  volatile char pad__4[0x8]; /*     0xa7f8 - 0xa800     */
1853  union {
1854      struct {
1855          struct chn1_reg_map bb_chn1_reg_map; /*     0xa800 - 0xabf8     */
1856          volatile char pad__5[0x208]; /*     0xabf8 - 0xae00     */
1857          struct agc1_reg_map bb_agc1_reg_map; /*     0xae00 - 0xb200     */
1858          struct sm1_reg_map bb_sm1_reg_map; /*     0xb200 - 0xb800     */
1859          struct chn2_reg_map bb_chn2_reg_map; /*     0xb800 - 0xbbf0     */
1860          volatile char pad__6[0x210]; /*     0xbbf0 - 0xbe00     */
1861          struct agc2_reg_map bb_agc2_reg_map; /*     0xbe00 - 0xbf90     */
1862          volatile char pad__7[0x270]; /*     0xbf90 - 0xc200     */
1863          struct sm2_reg_map bb_sm2_reg_map; /*     0xc200 - 0xc800     */
1864      } Osprey;
1865      struct {
1866          struct chn_ext_reg_map bb_chn_ext_reg_map; /*     0xa800 - 0xac00     */
1867          volatile char pad__5[0x600]; /*     0xac00 - 0xb200     */
1868          struct sm_ext_reg_map bb_sm_ext_reg_map; /*     0xb200 - 0xb800     */
1869          volatile char pad__6[0x600]; /*     0xb800 - 0xbe00     */
1870          struct agc1_reg_map bb_agc1_reg_map; /*     0xbe00 - 0xc1fc     */
1871          volatile char pad__7[0x4]; /*     0xc1fc - 0xc200     */
1872          struct sm1_reg_map bb_sm1_reg_map; /*     0xc200 - 0xc800     */
1873      } Poseidon;
1874  } overlay_0xa800;
1875  struct chn3_reg_map bb_chn3_reg_map; /*     0xc800 - 0xcc00     */
1876  volatile char pad__8[0x200]; /*     0xcc00 - 0xce00     */
1877  struct agc3_reg_map bb_agc3_reg_map; /*     0xce00 - 0xcf84     */
1878  volatile char pad__9[0x27c]; /*     0xcf84 - 0xd200     */
1879  struct sm3_reg_map bb_sm3_reg_map; /*     0xd200 - 0xd800     */
1880};
1881
1882struct svd_reg {
1883  volatile char pad__0[0x10000]; /*        0x0 - 0x10000    */
1884  volatile u_int32_t TXBF_DBG; /*    0x10000 - 0x10004    */
1885  volatile u_int32_t TXBF; /*    0x10004 - 0x10008    */
1886  volatile u_int32_t TXBF_TIMER; /*    0x10008 - 0x1000c    */
1887  volatile u_int32_t TXBF_SW; /*    0x1000c - 0x10010    */
1888  volatile u_int32_t TXBF_SM; /*    0x10010 - 0x10014    */
1889  volatile u_int32_t TXBF1_CNTL; /*    0x10014 - 0x10018    */
1890  volatile u_int32_t TXBF2_CNTL; /*    0x10018 - 0x1001c    */
1891  volatile u_int32_t TXBF3_CNTL; /*    0x1001c - 0x10020    */
1892  volatile u_int32_t TXBF4_CNTL; /*    0x10020 - 0x10024    */
1893  volatile u_int32_t TXBF5_CNTL; /*    0x10024 - 0x10028    */
1894  volatile u_int32_t TXBF6_CNTL; /*    0x10028 - 0x1002c    */
1895  volatile u_int32_t TXBF7_CNTL; /*    0x1002c - 0x10030    */
1896  volatile u_int32_t TXBF8_CNTL; /*    0x10030 - 0x10034    */
1897  volatile char pad__1[0xfcc]; /*    0x10034 - 0x11000    */
1898  volatile u_int32_t RC0[118]; /*    0x11000 - 0x111d8    */
1899  volatile char pad__2[0x28]; /*    0x111d8 - 0x11200    */
1900  volatile u_int32_t RC1[118]; /*    0x11200 - 0x113d8    */
1901  volatile char pad__3[0x28]; /*    0x113d8 - 0x11400    */
1902  volatile u_int32_t SVD_MEM0[114]; /*    0x11400 - 0x115c8    */
1903  volatile char pad__4[0x38]; /*    0x115c8 - 0x11600    */
1904  volatile u_int32_t SVD_MEM1[114]; /*    0x11600 - 0x117c8    */
1905  volatile char pad__5[0x38]; /*    0x117c8 - 0x11800    */
1906  volatile u_int32_t SVD_MEM2[114]; /*    0x11800 - 0x119c8    */
1907  volatile char pad__6[0x38]; /*    0x119c8 - 0x11a00    */
1908  volatile u_int32_t SVD_MEM3[114]; /*    0x11a00 - 0x11bc8    */
1909  volatile char pad__7[0x38]; /*    0x11bc8 - 0x11c00    */
1910  volatile u_int32_t SVD_MEM4[114]; /*    0x11c00 - 0x11dc8    */
1911  volatile char pad__8[0x638]; /*    0x11dc8 - 0x12400    */
1912  volatile u_int32_t CVCACHE[512]; /*    0x12400 - 0x12c00    */
1913};
1914
1915struct efuse_reg_WLAN {
1916  volatile char pad__0[0x14000]; /*        0x0 - 0x14000    */
1917  volatile u_int32_t OTP_MEM[256]; /*    0x14000 - 0x14400    */
1918  volatile char pad__1[0x1b00]; /*    0x14400 - 0x15f00    */
1919  volatile u_int32_t OTP_INTF0; /*    0x15f00 - 0x15f04    */
1920  volatile u_int32_t OTP_INTF1; /*    0x15f04 - 0x15f08    */
1921  volatile u_int32_t OTP_INTF2; /*    0x15f08 - 0x15f0c    */
1922  volatile u_int32_t OTP_INTF3; /*    0x15f0c - 0x15f10    */
1923  volatile u_int32_t OTP_INTF4; /*    0x15f10 - 0x15f14    */
1924  volatile u_int32_t OTP_INTF5; /*    0x15f14 - 0x15f18    */
1925  volatile u_int32_t OTP_STATUS0; /*    0x15f18 - 0x15f1c    */
1926  volatile u_int32_t OTP_STATUS1; /*    0x15f1c - 0x15f20    */
1927  volatile u_int32_t OTP_INTF6; /*    0x15f20 - 0x15f24    */
1928  volatile u_int32_t OTP_LDO_CONTROL; /*    0x15f24 - 0x15f28    */
1929  volatile u_int32_t OTP_LDO_POWER_GOOD; /*    0x15f28 - 0x15f2c    */
1930  volatile u_int32_t OTP_LDO_STATUS; /*    0x15f2c - 0x15f30    */
1931  volatile u_int32_t OTP_VDDQ_HOLD_TIME; /*    0x15f30 - 0x15f34    */
1932  volatile u_int32_t OTP_PGENB_SETUP_HOLD_TIME; /*    0x15f34 - 0x15f38    */
1933  volatile u_int32_t OTP_STROBE_PULSE_INTERVAL; /*    0x15f38 - 0x15f3c    */
1934  volatile u_int32_t OTP_CSB_ADDR_LOAD_SETUP_HOLD;
1935                                                  /*    0x15f3c - 0x15f40    */
1936};
1937
1938struct radio65_reg {
1939  volatile char pad__0[0x16000]; /*        0x0 - 0x16000    */
1940  volatile u_int32_t ch0_RXRF_BIAS1; /*    0x16000 - 0x16004    */
1941  volatile u_int32_t ch0_RXRF_BIAS2; /*    0x16004 - 0x16008    */
1942  volatile u_int32_t ch0_RXRF_GAINSTAGES; /*    0x16008 - 0x1600c    */
1943  volatile u_int32_t ch0_RXRF_AGC; /*    0x1600c - 0x16010    */
1944  /* Jupiter */
1945  volatile u_int32_t ch0_RXRF_BIAS3; /*    0x16010 - 0x16014    */
1946  volatile char pad__1[0x2c]; /*    0x16014 - 0x16040    */
1947  volatile u_int32_t ch0_TXRF1; /*    0x16040 - 0x16044    */
1948  volatile u_int32_t ch0_TXRF2; /*    0x16044 - 0x16048    */
1949  volatile u_int32_t ch0_TXRF3; /*    0x16048 - 0x1604c    */
1950  volatile u_int32_t ch0_TXRF4; /*    0x1604c - 0x16050    */
1951  volatile u_int32_t ch0_TXRF5; /*    0x16050 - 0x16054    */
1952  volatile u_int32_t ch0_TXRF6; /*    0x16054 - 0x16058    */
1953  /* Not Poseidon */
1954  volatile u_int32_t ch0_TXRF7; /*    0x16058 - 0x1605c    */
1955  /* Not Poseidon */
1956  volatile u_int32_t ch0_TXRF8; /*    0x1605c - 0x16060    */
1957  /* Not Poseidon */
1958  volatile u_int32_t ch0_TXRF9; /*    0x16060 - 0x16064    */
1959  /* Not Poseidon */
1960  volatile u_int32_t ch0_TXRF10; /*    0x16064 - 0x16068    */
1961  /* Not Poseidon */
1962  volatile u_int32_t ch0_TXRF11; /*    0x16068 - 0x1606c    */
1963  /* Not Poseidon */
1964  volatile u_int32_t ch0_TXRF12; /*    0x1606c - 0x16070    */
1965  volatile char pad__2[0x10]; /*    0x16070 - 0x16080    */
1966  volatile u_int32_t ch0_SYNTH1; /*    0x16080 - 0x16084    */
1967  volatile u_int32_t ch0_SYNTH2; /*    0x16084 - 0x16088    */
1968  volatile u_int32_t ch0_SYNTH3; /*    0x16088 - 0x1608c    */
1969  volatile u_int32_t ch0_SYNTH4; /*    0x1608c - 0x16090    */
1970  volatile u_int32_t ch0_SYNTH5; /*    0x16090 - 0x16094    */
1971  volatile u_int32_t ch0_SYNTH6; /*    0x16094 - 0x16098    */
1972  volatile u_int32_t ch0_SYNTH7; /*    0x16098 - 0x1609c    */
1973  volatile u_int32_t ch0_SYNTH8; /*    0x1609c - 0x160a0    */
1974  volatile u_int32_t ch0_SYNTH9; /*    0x160a0 - 0x160a4    */
1975  volatile u_int32_t ch0_SYNTH10; /*    0x160a4 - 0x160a8    */
1976  volatile u_int32_t ch0_SYNTH11; /*    0x160a8 - 0x160ac    */
1977  volatile u_int32_t ch0_SYNTH12; /*    0x160ac - 0x160b0    */
1978  volatile u_int32_t ch0_SYNTH13; /*    0x160b0 - 0x160b4    */
1979  volatile u_int32_t ch0_SYNTH14; /*    0x160b4 - 0x160b8    */
1980  /* Jupiter */
1981  volatile u_int32_t ch0_SYNTH15; /*    0x160b8 - 0x160bc    */
1982  /* Jupiter */
1983  volatile u_int32_t ch0_SYNTH16; /*    0x160bc - 0x160c0    */
1984  volatile u_int32_t ch0_BIAS1; /*    0x160c0 - 0x160c4    */
1985  volatile u_int32_t ch0_BIAS2; /*    0x160c4 - 0x160c8    */
1986  volatile u_int32_t ch0_BIAS3; /*    0x160c8 - 0x160cc    */
1987  volatile u_int32_t ch0_BIAS4; /*    0x160cc - 0x160d0    */
1988  /* Poseidon */
1989  volatile u_int32_t ch0_BIAS5; /*    0x160d0 - 0x160d4    */
1990  volatile char pad__3[0x2c]; /*    0x160d4 - 0x16100    */
1991  volatile u_int32_t ch0_RXTX1; /*    0x16100 - 0x16104    */
1992  volatile u_int32_t ch0_RXTX2; /*    0x16104 - 0x16108    */
1993  volatile u_int32_t ch0_RXTX3; /*    0x16108 - 0x1610c    */
1994  volatile u_int32_t ch0_RXTX4; /*    0x1610c - 0x16110    */
1995  /* Jupiter */
1996  volatile u_int32_t ch0_RXTX5; /*    0x16110 - 0x16114    */
1997  volatile char pad__4[0x2c]; /*    0x16114 - 0x16140    */
1998  volatile u_int32_t ch0_BB1; /*    0x16140 - 0x16144    */
1999  volatile u_int32_t ch0_BB2; /*    0x16144 - 0x16148    */
2000  volatile u_int32_t ch0_BB3; /*    0x16148 - 0x1614c    */
2001  volatile char pad__6[0x34]; /*    0x1614c - 0x16180    */
2002  union {
2003      struct {
2004          volatile u_int32_t ch0_pll_cntl; /*    0x16180 - 0x16184    */
2005          volatile u_int32_t ch0_pll_mode; /*    0x16184 - 0x16188    */
2006          volatile u_int32_t ch0_bb_dpll3; /*    0x16188 - 0x1618c    */
2007          volatile u_int32_t ch0_bb_dpll4; /*    0x1618c - 0x16190    */
2008          volatile char pad__6_1[0xf0]; /*    0x16190 - 0x16280    */
2009          volatile u_int32_t ch0_PLLCLKMODA; /*    0x16280 - 0x16284    */
2010          volatile u_int32_t ch0_PLLCLKMODA2; /*    0x16284 - 0x16288    */
2011          volatile u_int32_t ch0_TOP; /*    0x16288 - 0x1628c    */
2012          volatile u_int32_t ch0_TOP2; /*    0x1628c - 0x16290    */
2013          volatile u_int32_t ch0_THERM; /*    0x16290 - 0x16294    */
2014          volatile u_int32_t ch0_XTAL; /*    0x16294 - 0x16298    */
2015          volatile char pad__7[0xe8]; /*    0x16298 - 0x16380    */
2016      } Osprey;
2017      struct {
2018          volatile u_int32_t ch0_BB_DPLL1; /*    0x16180 - 0x16184    */
2019          volatile u_int32_t ch0_BB_DPLL2; /*    0x16184 - 0x16188    */
2020          volatile u_int32_t ch0_BB_DPLL3; /*    0x16188 - 0x1618c    */
2021          volatile u_int32_t ch0_BB_DPLL4; /*    0x1618c - 0x16190    */
2022          volatile char pad__7[0xb0]; /*    0x16190 - 0x16240    */
2023          volatile u_int32_t ch0_DDR_DPLL1; /*    0x16240 - 0x16244    */
2024          volatile u_int32_t ch0_DDR_DPLL2; /*    0x16244 - 0x16248    */
2025          volatile u_int32_t ch0_DDR_DPLL3; /*    0x16248 - 0x1624c    */
2026          volatile u_int32_t ch0_DDR_DPLL4; /*    0x1624c - 0x16250    */
2027          volatile char pad__8[0x30]; /*    0x16250 - 0x16280    */
2028          volatile u_int32_t ch0_TOP; /*    0x16280 - 0x16284    */
2029          volatile u_int32_t ch0_TOP2; /*    0x16284 - 0x16288    */
2030          volatile u_int32_t ch0_TOP3; /*    0x16288 - 0x1628c    */
2031          volatile u_int32_t ch0_THERM; /*    0x1628c - 0x16290    */
2032          volatile u_int32_t ch0_XTAL; /*    0x16290 - 0x16294    */
2033          volatile char pad__9[0xec]; /*    0x16294 - 0x16380    */
2034      } Poseidon;
2035      struct {
2036          volatile char pad__6_1[0x100]; /*    0x16180 - 0x16280    */
2037          volatile u_int32_t ch0_PLLCLKMODA1; /*    0x16280 - 0x16284    */
2038          volatile u_int32_t ch0_PLLCLKMODA2; /*    0x16284 - 0x16288    */
2039          volatile u_int32_t ch0_PLLCLKMODA3; /*    0x16288 - 0x1628c    */
2040          volatile u_int32_t ch0_TOP1; /*    0x1628c - 0x16290    */
2041          volatile u_int32_t ch0_TOP2; /*    0x16290 - 0x16294    */
2042          volatile u_int32_t ch0_THERM; /*    0x16294 - 0x16298    */
2043          volatile u_int32_t ch0_XTAL; /*    0x16298 - 0x1629c    */
2044          volatile char pad__7[0xa4]; /*    0x1629c - 0x16340    */
2045          volatile u_int32_t ch0_PMU1; /*    0x16340 - 0x16344    */
2046          volatile u_int32_t ch0_PMU2; /*    0x16344 - 0x16348    */
2047          volatile u_int32_t ch0_PMU3; /*    0x16348 - 0x1634c    */
2048          volatile char pad__8[0x34]; /*    0x1634c - 0x16380    */
2049      } Jupiter;
2050      struct {
2051          volatile u_int32_t ch0_DPLL; /*    0x16180 - 0x16184    */
2052          volatile u_int32_t ch0_DPLL2; /*    0x16184 - 0x16188    */
2053          volatile u_int32_t ch0_DPLL3; /*    0x16188 - 0x1618c    */
2054          volatile u_int32_t ch0_DPLL4; /*    0x1618c - 0x16190    */
2055          volatile u_int32_t ch0_DPLL5; /*    0x16190 - 0x16194    */
2056          volatile char pad__6[0xec]; /*    0x16194 - 0x16280    */
2057          volatile u_int32_t ch0_PLLCLKMODA1; /*    0x16280 - 0x16284    */
2058          volatile u_int32_t ch0_PLLCLKMODA2; /*    0x16284 - 0x16288    */
2059          volatile u_int32_t ch0_PLLCLKMODA3; /*    0x16288 - 0x1628c    */
2060          volatile u_int32_t ch0_TOP1; /*    0x1628c - 0x16290    */
2061          volatile u_int32_t ch0_TOP2; /*    0x16290 - 0x16294    */
2062          volatile u_int32_t ch0_THERM; /*    0x16294 - 0x16298    */
2063          volatile u_int32_t ch0_XTAL; /*    0x16298 - 0x1629c    */
2064          volatile char pad__7[0xa4]; /*    0x1629c - 0x16340    */
2065          volatile u_int32_t ch0_PMU1; /*    0x16340 - 0x16344    */
2066          volatile u_int32_t ch0_PMU2; /*    0x16344 - 0x16348    */
2067          volatile char pad__8[0x38]; /*    0x16348 - 0x16380    */
2068      } Aphrodite;
2069  } overlay_0x16180;
2070  volatile u_int32_t ch0_rbist_cntrl; /*    0x16380 - 0x16384    */
2071  volatile u_int32_t ch0_tx_dc_offset; /*    0x16384 - 0x16388    */
2072  volatile u_int32_t ch0_tx_tonegen0; /*    0x16388 - 0x1638c    */
2073  volatile u_int32_t ch0_tx_tonegen1; /*    0x1638c - 0x16390    */
2074  volatile u_int32_t ch0_tx_lftonegen0; /*    0x16390 - 0x16394    */
2075  volatile u_int32_t ch0_tx_linear_ramp_i; /*    0x16394 - 0x16398    */
2076  volatile u_int32_t ch0_tx_linear_ramp_q; /*    0x16398 - 0x1639c    */
2077  volatile u_int32_t ch0_tx_prbs_mag; /*    0x1639c - 0x163a0    */
2078  volatile u_int32_t ch0_tx_prbs_seed_i; /*    0x163a0 - 0x163a4    */
2079  volatile u_int32_t ch0_tx_prbs_seed_q; /*    0x163a4 - 0x163a8    */
2080  volatile u_int32_t ch0_cmac_dc_cancel; /*    0x163a8 - 0x163ac    */
2081  volatile u_int32_t ch0_cmac_dc_offset; /*    0x163ac - 0x163b0    */
2082  volatile u_int32_t ch0_cmac_corr; /*    0x163b0 - 0x163b4    */
2083  volatile u_int32_t ch0_cmac_power; /*    0x163b4 - 0x163b8    */
2084  volatile u_int32_t ch0_cmac_cross_corr; /*    0x163b8 - 0x163bc    */
2085  volatile u_int32_t ch0_cmac_i2q2; /*    0x163bc - 0x163c0    */
2086  volatile u_int32_t ch0_cmac_power_hpf; /*    0x163c0 - 0x163c4    */
2087  volatile u_int32_t ch0_rxdac_set1; /*    0x163c4 - 0x163c8    */
2088  volatile u_int32_t ch0_rxdac_set2; /*    0x163c8 - 0x163cc    */
2089  volatile u_int32_t ch0_rxdac_long_shift; /*    0x163cc - 0x163d0    */
2090  volatile u_int32_t ch0_cmac_results_i; /*    0x163d0 - 0x163d4    */
2091  volatile u_int32_t ch0_cmac_results_q; /*    0x163d4 - 0x163d8    */
2092  volatile char pad__8[0x28]; /*    0x163d8 - 0x16400    */
2093  volatile u_int32_t ch1_RXRF_BIAS1; /*    0x16400 - 0x16404    */
2094  volatile u_int32_t ch1_RXRF_BIAS2; /*    0x16404 - 0x16408    */
2095  volatile u_int32_t ch1_RXRF_GAINSTAGES; /*    0x16408 - 0x1640c    */
2096  volatile u_int32_t ch1_RXRF_AGC; /*    0x1640c - 0x16410    */
2097  /* Jupiter */
2098  volatile u_int32_t ch1_RXRF_BIAS3; /*    0x16410 - 0x16414    */
2099  volatile char pad__9[0x2c]; /*    0x16414 - 0x16440    */
2100  volatile u_int32_t ch1_TXRF1; /*    0x16440 - 0x16444    */
2101  volatile u_int32_t ch1_TXRF2; /*    0x16444 - 0x16448    */
2102  volatile u_int32_t ch1_TXRF3; /*    0x16448 - 0x1644c    */
2103  volatile u_int32_t ch1_TXRF4; /*    0x1644c - 0x16450    */
2104  volatile u_int32_t ch1_TXRF5; /*    0x16450 - 0x16454    */
2105  volatile u_int32_t ch1_TXRF6; /*    0x16454 - 0x16458    */
2106  volatile u_int32_t ch1_TXRF7; /*    0x16458 - 0x1645c    */
2107  volatile u_int32_t ch1_TXRF8; /*    0x1645c - 0x16460    */
2108  volatile u_int32_t ch1_TXRF9; /*    0x16460 - 0x16464    */
2109  volatile u_int32_t ch1_TXRF10; /*    0x16464 - 0x16468    */
2110  volatile u_int32_t ch1_TXRF11; /*    0x16468 - 0x1646c    */
2111  volatile u_int32_t ch1_TXRF12; /*    0x1646c - 0x16470    */
2112  volatile char pad__10[0x90]; /*    0x16470 - 0x16500    */
2113  volatile u_int32_t ch1_RXTX1; /*    0x16500 - 0x16504    */
2114  volatile u_int32_t ch1_RXTX2; /*    0x16504 - 0x16508    */
2115  volatile u_int32_t ch1_RXTX3; /*    0x16508 - 0x1650c    */
2116  volatile u_int32_t ch1_RXTX4; /*    0x1650c - 0x16510    */
2117  /* Jupiter */
2118  volatile u_int32_t ch1_RXTX5; /*    0x16510 - 0x16514    */
2119  volatile char pad__11[0x2c]; /*    0x16514 - 0x16540    */
2120  volatile u_int32_t ch1_BB1; /*    0x16540 - 0x16544    */
2121  volatile u_int32_t ch1_BB2; /*    0x16544 - 0x16548    */
2122  volatile u_int32_t ch1_BB3; /*    0x16548 - 0x1654c    */
2123  volatile char pad__12[0x234]; /*    0x1654c - 0x16780    */
2124  volatile u_int32_t ch1_rbist_cntrl; /*    0x16780 - 0x16784    */
2125  volatile u_int32_t ch1_tx_dc_offset; /*    0x16784 - 0x16788    */
2126  volatile u_int32_t ch1_tx_tonegen0; /*    0x16788 - 0x1678c    */
2127  volatile u_int32_t ch1_tx_tonegen1; /*    0x1678c - 0x16790    */
2128  volatile u_int32_t ch1_tx_lftonegen0; /*    0x16790 - 0x16794    */
2129  volatile u_int32_t ch1_tx_linear_ramp_i; /*    0x16794 - 0x16798    */
2130  volatile u_int32_t ch1_tx_linear_ramp_q; /*    0x16798 - 0x1679c    */
2131  volatile u_int32_t ch1_tx_prbs_mag; /*    0x1679c - 0x167a0    */
2132  volatile u_int32_t ch1_tx_prbs_seed_i; /*    0x167a0 - 0x167a4    */
2133  volatile u_int32_t ch1_tx_prbs_seed_q; /*    0x167a4 - 0x167a8    */
2134  volatile u_int32_t ch1_cmac_dc_cancel; /*    0x167a8 - 0x167ac    */
2135  volatile u_int32_t ch1_cmac_dc_offset; /*    0x167ac - 0x167b0    */
2136  volatile u_int32_t ch1_cmac_corr; /*    0x167b0 - 0x167b4    */
2137  volatile u_int32_t ch1_cmac_power; /*    0x167b4 - 0x167b8    */
2138  volatile u_int32_t ch1_cmac_cross_corr; /*    0x167b8 - 0x167bc    */
2139  volatile u_int32_t ch1_cmac_i2q2; /*    0x167bc - 0x167c0    */
2140  volatile u_int32_t ch1_cmac_power_hpf; /*    0x167c0 - 0x167c4    */
2141  volatile u_int32_t ch1_rxdac_set1; /*    0x167c4 - 0x167c8    */
2142  volatile u_int32_t ch1_rxdac_set2; /*    0x167c8 - 0x167cc    */
2143  volatile u_int32_t ch1_rxdac_long_shift; /*    0x167cc - 0x167d0    */
2144  volatile u_int32_t ch1_cmac_results_i; /*    0x167d0 - 0x167d4    */
2145  volatile u_int32_t ch1_cmac_results_q; /*    0x167d4 - 0x167d8    */
2146  volatile char pad__13[0x28]; /*    0x167d8 - 0x16800    */
2147  volatile u_int32_t ch2_RXRF_BIAS1; /*    0x16800 - 0x16804    */
2148  volatile u_int32_t ch2_RXRF_BIAS2; /*    0x16804 - 0x16808    */
2149  volatile u_int32_t ch2_RXRF_GAINSTAGES; /*    0x16808 - 0x1680c    */
2150  volatile u_int32_t ch2_RXRF_AGC; /*    0x1680c - 0x16810    */
2151  volatile char pad__14[0x30]; /*    0x16810 - 0x16840    */
2152  volatile u_int32_t ch2_TXRF1; /*    0x16840 - 0x16844    */
2153  volatile u_int32_t ch2_TXRF2; /*    0x16844 - 0x16848    */
2154  volatile u_int32_t ch2_TXRF3; /*    0x16848 - 0x1684c    */
2155  volatile u_int32_t ch2_TXRF4; /*    0x1684c - 0x16850    */
2156  volatile u_int32_t ch2_TXRF5; /*    0x16850 - 0x16854    */
2157  volatile u_int32_t ch2_TXRF6; /*    0x16854 - 0x16858    */
2158  volatile u_int32_t ch2_TXRF7; /*    0x16858 - 0x1685c    */
2159  volatile u_int32_t ch2_TXRF8; /*    0x1685c - 0x16860    */
2160  volatile u_int32_t ch2_TXRF9; /*    0x16860 - 0x16864    */
2161  volatile u_int32_t ch2_TXRF10; /*    0x16864 - 0x16868    */
2162  volatile u_int32_t ch2_TXRF11; /*    0x16868 - 0x1686c    */
2163  volatile u_int32_t ch2_TXRF12; /*    0x1686c - 0x16870    */
2164  volatile char pad__15[0x90]; /*    0x16870 - 0x16900    */
2165  volatile u_int32_t ch2_RXTX1; /*    0x16900 - 0x16904    */
2166  volatile u_int32_t ch2_RXTX2; /*    0x16904 - 0x16908    */
2167  volatile u_int32_t ch2_RXTX3; /*    0x16908 - 0x1690c    */
2168  volatile u_int32_t ch2_RXTX4; /*    0x1690c - 0x16910    */
2169  volatile char pad__16[0x30]; /*    0x16910 - 0x16940    */
2170  volatile u_int32_t ch2_BB1; /*    0x16940 - 0x16944    */
2171  volatile u_int32_t ch2_BB2; /*    0x16944 - 0x16948    */
2172  volatile u_int32_t ch2_BB3; /*    0x16948 - 0x1694c    */
2173  volatile char pad__17[0x234]; /*    0x1694c - 0x16b80    */
2174  volatile u_int32_t ch2_rbist_cntrl; /*    0x16b80 - 0x16b84    */
2175  volatile u_int32_t ch2_tx_dc_offset; /*    0x16b84 - 0x16b88    */
2176  volatile u_int32_t ch2_tx_tonegen0; /*    0x16b88 - 0x16b8c    */
2177  volatile u_int32_t ch2_tx_tonegen1; /*    0x16b8c - 0x16b90    */
2178  volatile u_int32_t ch2_tx_lftonegen0; /*    0x16b90 - 0x16b94    */
2179  volatile u_int32_t ch2_tx_linear_ramp_i; /*    0x16b94 - 0x16b98    */
2180  volatile u_int32_t ch2_tx_linear_ramp_q; /*    0x16b98 - 0x16b9c    */
2181  volatile u_int32_t ch2_tx_prbs_mag; /*    0x16b9c - 0x16ba0    */
2182  volatile u_int32_t ch2_tx_prbs_seed_i; /*    0x16ba0 - 0x16ba4    */
2183  volatile u_int32_t ch2_tx_prbs_seed_q; /*    0x16ba4 - 0x16ba8    */
2184  volatile u_int32_t ch2_cmac_dc_cancel; /*    0x16ba8 - 0x16bac    */
2185  volatile u_int32_t ch2_cmac_dc_offset; /*    0x16bac - 0x16bb0    */
2186  volatile u_int32_t ch2_cmac_corr; /*    0x16bb0 - 0x16bb4    */
2187  volatile u_int32_t ch2_cmac_power; /*    0x16bb4 - 0x16bb8    */
2188  volatile u_int32_t ch2_cmac_cross_corr; /*    0x16bb8 - 0x16bbc    */
2189  volatile u_int32_t ch2_cmac_i2q2; /*    0x16bbc - 0x16bc0    */
2190  volatile u_int32_t ch2_cmac_power_hpf; /*    0x16bc0 - 0x16bc4    */
2191  volatile u_int32_t ch2_rxdac_set1; /*    0x16bc4 - 0x16bc8    */
2192  volatile u_int32_t ch2_rxdac_set2; /*    0x16bc8 - 0x16bcc    */
2193  volatile u_int32_t ch2_rxdac_long_shift; /*    0x16bcc - 0x16bd0    */
2194  volatile u_int32_t ch2_cmac_results_i; /*    0x16bd0 - 0x16bd4    */
2195  volatile u_int32_t ch2_cmac_results_q; /*    0x16bd4 - 0x16bd8    */
2196  volatile char pad__18[0x4c4a8]; /*    0x16bd8 - 0x63080    */
2197  /* Jupiter-start */
2198  volatile u_int32_t chbt_SYNTH1; /*    0x63080 - 0x63084    */
2199  volatile u_int32_t chbt_SYNTH2; /*    0x63084 - 0x63088    */
2200  volatile u_int32_t chbt_SYNTH3; /*    0x63088 - 0x6308c    */
2201  volatile u_int32_t chbt_SYNTH4; /*    0x6308c - 0x63090    */
2202  volatile u_int32_t chbt_SYNTH5; /*    0x63090 - 0x63094    */
2203  volatile u_int32_t chbt_SYNTH6; /*    0x63094 - 0x63098    */
2204  volatile u_int32_t chbt_SYNTH7; /*    0x63098 - 0x6309c    */
2205  volatile u_int32_t chbt_SYNTH8; /*    0x6309c - 0x630a0    */
2206  volatile char pad__19[0x20]; /*    0x630a0 - 0x630c0    */
2207  volatile u_int32_t chbt_BIAS1; /*    0x630c0 - 0x630c4    */
2208  volatile u_int32_t chbt_BIAS2; /*    0x630c4 - 0x630c8    */
2209  volatile u_int32_t chbt_BIAS3; /*    0x630c8 - 0x630cc    */
2210  volatile u_int32_t chbt_BIAS4; /*    0x630cc - 0x630d0    */
2211  volatile u_int32_t chbt_BIAS5; /*    0x630d0 - 0x630d4    */
2212  volatile char pad__20[0x2c]; /*    0x630d4 - 0x63100    */
2213  volatile u_int32_t chbt_TOP1; /*    0x63100 - 0x63104    */
2214  volatile u_int32_t chbt_TOP2; /*    0x63104 - 0x63108    */
2215  volatile u_int32_t chbt_TOP3; /*    0x63108 - 0x6310c    */
2216  volatile u_int32_t chbt_TOP4; /*    0x6310c - 0x63110    */
2217  volatile u_int32_t chbt_TOP5; /*    0x63110 - 0x63114    */
2218  volatile u_int32_t chbt_TOP6; /*    0x63114 - 0x63118    */
2219  volatile u_int32_t chbt_TOP7; /*    0x63118 - 0x6311c    */
2220  volatile u_int32_t chbt_TOP8; /*    0x6311c - 0x63120    */
2221  volatile u_int32_t chbt_TOP9; /*    0x63120 - 0x63124    */
2222  volatile u_int32_t chbt_TOP10; /*    0x63124 - 0x63128    */
2223  volatile char pad__21[0x158]; /*    0x63128 - 0x63280    */
2224  volatile u_int32_t chbt_CLK1; /*    0x63280 - 0x63284    */
2225  volatile u_int32_t chbt_CLK2; /*    0x63284 - 0x63288    */
2226  volatile u_int32_t chbt_CLK3; /*    0x63288 - 0x6328c    */
2227  volatile char pad__22[0xb4]; /*    0x6328c - 0x63340    */
2228  volatile u_int32_t chbt_PMU1; /*    0x63340 - 0x63344    */
2229  volatile u_int32_t chbt_PMU2; /*    0x63344 - 0x63348    */
2230  /* Jupiter-end */
2231  /* Aphrodite-start */
2232  volatile char pad__23[0x38]; /*    0x63348 - 0x63380    */
2233  volatile u_int32_t chbt_rbist_cntrl; /*    0x63380 - 0x63384    */
2234  volatile u_int32_t chbt_tx_dc_offset; /*    0x63384 - 0x63388    */
2235  volatile u_int32_t chbt_tx_tonegen0; /*    0x63388 - 0x6338c    */
2236  volatile u_int32_t chbt_tx_tonegen1; /*    0x6338c - 0x63390    */
2237  volatile u_int32_t chbt_tx_lftonegen0; /*    0x63390 - 0x63394    */
2238  volatile u_int32_t chbt_tx_linear_ramp_i; /*    0x63394 - 0x63398    */
2239  volatile u_int32_t chbt_tx_linear_ramp_q; /*    0x63398 - 0x6339c    */
2240  volatile u_int32_t chbt_tx_prbs_mag; /*    0x6339c - 0x633a0    */
2241  volatile u_int32_t chbt_tx_prbs_seed_i; /*    0x633a0 - 0x633a4    */
2242  volatile u_int32_t chbt_tx_prbs_seed_q; /*    0x633a4 - 0x633a8    */
2243  volatile u_int32_t chbt_cmac_dc_cancel; /*    0x633a8 - 0x633ac    */
2244  volatile u_int32_t chbt_cmac_dc_offset; /*    0x633ac - 0x633b0    */
2245  volatile u_int32_t chbt_cmac_corr; /*    0x633b0 - 0x633b4    */
2246  volatile u_int32_t chbt_cmac_power; /*    0x633b4 - 0x633b8    */
2247  volatile u_int32_t chbt_cmac_cross_corr; /*    0x633b8 - 0x633bc    */
2248  volatile u_int32_t chbt_cmac_i2q2; /*    0x633bc - 0x633c0    */
2249  volatile u_int32_t chbt_cmac_power_hpf; /*    0x633c0 - 0x633c4    */
2250  volatile u_int32_t chbt_rxdac_set1; /*    0x633c4 - 0x633c8    */
2251  volatile u_int32_t chbt_rxdac_set2; /*    0x633c8 - 0x633cc    */
2252  volatile u_int32_t chbt_rxdac_long_shift; /*    0x633cc - 0x633d0    */
2253  volatile u_int32_t chbt_cmac_results_i; /*    0x633d0 - 0x633d4    */
2254  volatile u_int32_t chbt_cmac_results_q; /*    0x633d4 - 0x633d8    */
2255  /* Aphrodite-end */
2256};
2257
2258struct pcie_phy_reg_csr {
2259  volatile char pad__0[0x18c00]; /*        0x0 - 0x18c00    */
2260  volatile u_int32_t pcie_phy_reg_1; /*    0x18c00 - 0x18c04    */
2261  volatile u_int32_t pcie_phy_reg_2; /*    0x18c04 - 0x18c08    */
2262  volatile u_int32_t pcie_phy_reg_3; /*    0x18c08 - 0x18c0c    */
2263};
2264
2265struct pmu_reg {
2266  volatile char pad__0[0x16c40]; /*        0x0 - 0x16c40    */
2267  volatile u_int32_t ch0_PMU1; /*    0x16c40 - 0x16c44    */
2268  volatile u_int32_t ch0_PMU2; /*    0x16c44 - 0x16c48    */
2269};
2270
2271struct wlan_coex_reg {
2272  volatile char pad__0[0x1800]; /*        0x0 - 0x1800     */
2273  volatile u_int32_t MCI_COMMAND0; /*     0x1800 - 0x1804     */
2274  volatile u_int32_t MCI_COMMAND1; /*     0x1804 - 0x1808     */
2275  volatile u_int32_t MCI_COMMAND2; /*     0x1808 - 0x180c     */
2276  volatile u_int32_t MCI_RX_CTRL; /*     0x180c - 0x1810     */
2277  volatile u_int32_t MCI_TX_CTRL; /*     0x1810 - 0x1814     */
2278  volatile u_int32_t MCI_MSG_ATTRIBUTES_TABLE; /*     0x1814 - 0x1818     */
2279  volatile u_int32_t MCI_SCHD_TABLE_0; /*     0x1818 - 0x181c     */
2280  volatile u_int32_t MCI_SCHD_TABLE_1; /*     0x181c - 0x1820     */
2281  volatile u_int32_t MCI_GPM_0; /*     0x1820 - 0x1824     */
2282  volatile u_int32_t MCI_GPM_1; /*     0x1824 - 0x1828     */
2283  volatile u_int32_t MCI_INTERRUPT_RAW; /*     0x1828 - 0x182c     */
2284  volatile u_int32_t MCI_INTERRUPT_EN; /*     0x182c - 0x1830     */
2285  volatile u_int32_t MCI_REMOTE_CPU_INT; /*     0x1830 - 0x1834     */
2286  volatile u_int32_t MCI_REMOTE_CPU_INT_EN; /*     0x1834 - 0x1838     */
2287  volatile u_int32_t MCI_INTERRUPT_RX_MSG_RAW; /*     0x1838 - 0x183c     */
2288  volatile u_int32_t MCI_INTERRUPT_RX_MSG_EN; /*     0x183c - 0x1840     */
2289  volatile u_int32_t MCI_CPU_INT; /*     0x1840 - 0x1844     */
2290  volatile u_int32_t MCI_RX_STATUS; /*     0x1844 - 0x1848     */
2291  volatile u_int32_t MCI_CONT_STATUS; /*     0x1848 - 0x184c     */
2292  volatile u_int32_t MCI_BT_PRI0; /*     0x184c - 0x1850     */
2293  volatile u_int32_t MCI_BT_PRI1; /*     0x1850 - 0x1854     */
2294  volatile u_int32_t MCI_BT_PRI2; /*     0x1854 - 0x1858     */
2295  volatile u_int32_t MCI_BT_PRI3; /*     0x1858 - 0x185c     */
2296  volatile u_int32_t MCI_BT_PRI; /*     0x185c - 0x1860     */
2297  volatile u_int32_t MCI_WL_FREQ0; /*     0x1860 - 0x1864     */
2298  volatile u_int32_t MCI_WL_FREQ1; /*     0x1864 - 0x1868     */
2299  volatile u_int32_t MCI_WL_FREQ2; /*     0x1868 - 0x186c     */
2300  volatile u_int32_t MCI_GAIN; /*     0x186c - 0x1870     */
2301  volatile u_int32_t MCI_WBTIMER1; /*     0x1870 - 0x1874     */
2302  volatile u_int32_t MCI_WBTIMER2; /*     0x1874 - 0x1878     */
2303  volatile u_int32_t MCI_WBTIMER3; /*     0x1878 - 0x187c     */
2304  volatile u_int32_t MCI_WBTIMER4; /*     0x187c - 0x1880     */
2305  volatile u_int32_t MCI_MAXGAIN; /*     0x1880 - 0x1884     */
2306  volatile u_int32_t MCI_HW_SCHD_TBL_CTL; /*     0x1884 - 0x1888     */
2307  volatile u_int32_t MCI_HW_SCHD_TBL_D0; /*     0x1888 - 0x188c     */
2308  volatile u_int32_t MCI_HW_SCHD_TBL_D1; /*     0x188c - 0x1890     */
2309  volatile u_int32_t MCI_HW_SCHD_TBL_D2; /*     0x1890 - 0x1894     */
2310  volatile u_int32_t MCI_HW_SCHD_TBL_D3; /*     0x1894 - 0x1898     */
2311  volatile u_int32_t MCI_TX_PAYLOAD0; /*     0x1898 - 0x189c     */
2312  volatile u_int32_t MCI_TX_PAYLOAD1; /*     0x189c - 0x18a0     */
2313  volatile u_int32_t MCI_TX_PAYLOAD2; /*     0x18a0 - 0x18a4     */
2314  volatile u_int32_t MCI_TX_PAYLOAD3; /*     0x18a4 - 0x18a8     */
2315  volatile u_int32_t BTCOEX_WBTIMER; /*     0x18a8 - 0x18ac     */
2316  volatile u_int32_t BTCOEX_CTRL; /*     0x18ac - 0x18b0     */
2317  volatile u_int32_t BTCOEX_WL_WEIGHTS0; /*     0x18b0 - 0x18b4     */
2318  volatile u_int32_t BTCOEX_WL_WEIGHTS1; /*     0x18b4 - 0x18b8     */
2319  volatile u_int32_t BTCOEX_WL_WEIGHTS2; /*     0x18b8 - 0x18bc     */
2320  volatile u_int32_t BTCOEX_WL_WEIGHTS3; /*     0x18bc - 0x18c0     */
2321  volatile u_int32_t BTCOEX_MAX_TXPWR[8]; /*     0x18c0 - 0x18e0     */
2322  volatile char pad__1[0x60]; /*     0x18e0 - 0x1940     */
2323  volatile u_int32_t BTCOEX_WL_LNA; /*     0x1940 - 0x1944     */
2324  volatile u_int32_t BTCOEX_RFGAIN_CTRL; /*     0x1944 - 0x1948     */
2325  volatile u_int32_t BTCOEX_CTRL2; /*     0x1948 - 0x194c     */
2326  volatile u_int32_t BTCOEX_RC; /*     0x194c - 0x1950     */
2327  volatile u_int32_t BTCOEX_MAX_RFGAIN[16]; /*     0x1950 - 0x1990     */
2328  volatile char pad__2[0xc0]; /*     0x1990 - 0x1a50     */
2329  volatile u_int32_t BTCOEX_DBG; /*     0x1a50 - 0x1a54     */
2330  volatile u_int32_t MCI_LAST_HW_MSG_HDR; /*     0x1a54 - 0x1a58     */
2331  volatile u_int32_t MCI_LAST_HW_MSG_BDY; /*     0x1a58 - 0x1a5c     */
2332  volatile u_int32_t MCI_SCHD_TABLE_2; /*     0x1a5c - 0x1a60     */
2333  volatile u_int32_t BTCOEX_CTRL3; /*     0x1a60 - 0x1a64     */
2334  /* Aphrodite-start */
2335  volatile u_int32_t BTCOEX_WL_LNADIV; /*     0x1a64 - 0x1a68     */
2336  volatile u_int32_t BTCOEX_TXTX_RANGE; /*     0x1a68 - 0x1a6c     */
2337  volatile u_int32_t MCI_INTERRUPT_1_RAW; /*     0x1a6c - 0x1a70     */
2338  volatile u_int32_t MCI_INTERRUPT_1_EN; /*     0x1a70 - 0x1a74     */
2339  volatile u_int32_t MCI_EV_MISC; /*     0x1a74 - 0x1a78     */
2340  volatile u_int32_t MCI_DBG_CNT_CTRL; /*     0x1a78 - 0x1a7c     */
2341  volatile u_int32_t MCI_DBG_CNT1; /*     0x1a7c - 0x1a80     */
2342  volatile u_int32_t MCI_DBG_CNT2; /*     0x1a80 - 0x1a84     */
2343  volatile u_int32_t MCI_DBG_CNT3; /*     0x1a84 - 0x1a88     */
2344  volatile u_int32_t MCI_DBG_CNT4; /*     0x1a88 - 0x1a8c     */
2345  volatile u_int32_t MCI_DBG_CNT5; /*     0x1a8c - 0x1a90     */
2346  volatile u_int32_t MCI_DBG_CNT6; /*     0x1a90 - 0x1a94     */
2347  volatile u_int32_t MCI_DBG_CNT7; /*     0x1a94 - 0x1a98     */
2348  volatile u_int32_t MCI_DBG_CNT8; /*     0x1a98 - 0x1a9c     */
2349  volatile u_int32_t MCI_DBG_CNT9; /*     0x1a9c - 0x1aa0     */
2350  volatile u_int32_t MCI_DBG_CNT10; /*     0x1aa0 - 0x1aa4     */
2351  volatile u_int32_t MCI_DBG_CNT11; /*     0x1aa4 - 0x1aa8     */
2352  volatile u_int32_t MCI_DBG_CNT12; /*     0x1aa8 - 0x1aac     */
2353  volatile u_int32_t MCI_DBG_CNT13; /*     0x1aac - 0x1ab0     */
2354  volatile u_int32_t MCI_DBG_CNT14; /*     0x1ab0 - 0x1ab4     */
2355  volatile u_int32_t MCI_DBG_CNT15; /*     0x1ab4 - 0x1ab8     */
2356  volatile u_int32_t MCI_DBG_CNT16; /*     0x1ab8 - 0x1abc     */
2357  volatile u_int32_t MCI_DBG_CNT17; /*     0x1abc - 0x1ac0     */
2358  volatile u_int32_t MCI_DBG_CNT18; /*     0x1ac0 - 0x1ac4     */
2359  volatile u_int32_t MCI_DBG_CNT19; /*     0x1ac4 - 0x1ac8     */
2360  /* Aphrodite-end */
2361};
2362
2363struct uart1_reg_csr {
2364  volatile u_int32_t UART_DATA; /*        0x0 - 0x4        */
2365  volatile u_int32_t UART_CONTROL; /*        0x4 - 0x8        */
2366  volatile u_int32_t UART_CLKDIV; /*        0x8 - 0xc        */
2367  volatile u_int32_t UART_INT; /*        0xc - 0x10       */
2368  volatile u_int32_t UART_INT_EN; /*       0x10 - 0x14       */
2369};
2370
2371struct wlan_bt_glb_reg_pcie {
2372  volatile char pad__0[0x20000]; /*        0x0 - 0x20000    */
2373  volatile u_int32_t GLB_GPIO_CONTROL; /*    0x20000 - 0x20004    */
2374  volatile u_int32_t GLB_WLAN_WOW_STATUS; /*    0x20004 - 0x20008    */
2375  volatile u_int32_t GLB_WLAN_WOW_ENABLE; /*    0x20008 - 0x2000c    */
2376  volatile u_int32_t GLB_EMB_CPU_WOW_STATUS; /*    0x2000c - 0x20010    */
2377  volatile u_int32_t GLB_EMB_CPU_WOW_ENABLE; /*    0x20010 - 0x20014    */
2378  volatile u_int32_t GLB_MBOX_CONTROL_STATUS; /*    0x20014 - 0x20018    */
2379  volatile u_int32_t GLB_SW_WOW_CONTROL; /*    0x20018 - 0x2001c    */
2380  volatile u_int32_t GLB_APB_TIMEOUT; /*    0x2001c - 0x20020    */
2381  volatile u_int32_t GLB_OTP_LDO_CONTROL; /*    0x20020 - 0x20024    */
2382  volatile u_int32_t GLB_OTP_LDO_POWER_GOOD; /*    0x20024 - 0x20028    */
2383  volatile u_int32_t GLB_OTP_LDO_STATUS; /*    0x20028 - 0x2002c    */
2384  volatile u_int32_t GLB_SWREG_DISCONT_MODE; /*    0x2002c - 0x20030    */
2385  volatile u_int32_t GLB_BT_GPIO_REMAP_OUT_CONTROL0;
2386                                                  /*    0x20030 - 0x20034    */
2387  volatile u_int32_t GLB_BT_GPIO_REMAP_OUT_CONTROL1;
2388                                                  /*    0x20034 - 0x20038    */
2389  volatile u_int32_t GLB_BT_GPIO_REMAP_IN_CONTROL0;
2390                                                  /*    0x20038 - 0x2003c    */
2391  volatile u_int32_t GLB_BT_GPIO_REMAP_IN_CONTROL1;
2392                                                  /*    0x2003c - 0x20040    */
2393  volatile u_int32_t GLB_BT_GPIO_REMAP_IN_CONTROL2;
2394                                                  /*    0x20040 - 0x20044    */
2395  union {
2396      struct {
2397          volatile char pad__1[0xc]; /*    0x20044 - 0x20050    */
2398          volatile u_int32_t GLB_SCRATCH[16]; /*    0x20050 - 0x20090    */
2399          volatile char pad__2[0x370]; /*    0x20090 - 0x20400    */
2400      } Jupiter_10;
2401      struct {
2402          volatile u_int32_t GLB_CONTROL; /*    0x20044 - 0x20048    */
2403          volatile u_int32_t GLB_STATUS; /*    0x20048 - 0x2004c    */
2404          volatile u_int32_t GLB_SCRATCH[16]; /*    0x2004c - 0x2008c    */
2405          volatile char pad__1[0x354]; /*    0x2008c - 0x203e0    */
2406          struct uart1_reg_csr shared_uart1; /*    0x203e0 - 0x203f4    */
2407          volatile char pad__2[0xc]; /*    0x203f4 - 0x20400    */
2408      } Jupiter_20;
2409      struct {
2410          volatile u_int32_t GLB_CONTROL; /*    0x20044 - 0x20048    */
2411          volatile u_int32_t GLB_STATUS; /*    0x20048 - 0x2004c    */
2412          volatile char pad__1[0x4]; /*    0x2004c - 0x20050    */
2413          volatile u_int32_t GLB_SCRATCH[16]; /*    0x20050 - 0x20090    */
2414          volatile char pad__2[0x70]; /*    0x20090 - 0x20100    */
2415          volatile u_int32_t PLLOSC_CTRL; /*    0x20100 - 0x20104    */
2416          volatile u_int32_t PLLOSC_CFG; /*    0x20104 - 0x20108    */
2417          volatile char pad__3[0x4]; /*    0x20108 - 0x2010c    */
2418          volatile u_int32_t INNOP_MEM_CONTROL; /*    0x2010c - 0x20110    */
2419          volatile u_int32_t USB_CONFIG; /*    0x20110 - 0x20114    */
2420          volatile u_int32_t USB_SPARE32; /*    0x20114 - 0x20118    */
2421          volatile u_int32_t PCIE_AHB_BRIDGE_CFG; /*    0x20118 - 0x2011c    */
2422          volatile u_int32_t PCIE_AHB_BRIDGE_CTRL; /*    0x2011c - 0x20120    */
2423          volatile u_int32_t OPTIONAL_CTL_REG; /*    0x20120 - 0x20124    */
2424          volatile u_int32_t PCIE_PWR_CTRL_REG; /*    0x20124 - 0x20128    */
2425          volatile char pad__4[0x4]; /*    0x20128 - 0x2012c    */
2426          volatile u_int32_t USBDEV_CLK_CTL_REG; /*    0x2012c - 0x20130    */
2427          volatile u_int32_t UHOST_DEBUG_FSM; /*    0x20130 - 0x20134    */
2428          volatile u_int32_t BRIDGE_DEBUG_FSM; /*    0x20134 - 0x20138    */
2429          volatile u_int32_t BRIDGE_DEBUG_PTR; /*    0x20138 - 0x2013c    */
2430          volatile u_int32_t BRIDGE_DEBUG_CLIENT_LOG0; /*    0x2013c - 0x20140    */
2431          volatile u_int32_t BRIDGE_DEBUG_CLIENT_LOG1; /*    0x20140 - 0x20144    */
2432          volatile u_int32_t BRIDGE_DEBUG_CLIENT_LOG2; /*    0x20144 - 0x20148    */
2433          volatile char pad__5[0x298]; /*    0x20148 - 0x203e0    */
2434          volatile u_int32_t GLB_UART[8]; /*    0x203e0 - 0x20400    */
2435      } Aphrodite;
2436  } overlay_0x20044;
2437};
2438
2439struct jupiter_reg_map__rtc_reg_csr {
2440  volatile u_int32_t RESET_CONTROL; /*        0x0 - 0x4        */
2441  volatile u_int32_t PLL_SETTLE; /*        0x4 - 0x8        */
2442  volatile u_int32_t VDD_SETTLE; /*        0x8 - 0xc        */
2443  volatile u_int32_t PWR_CONTROL; /*        0xc - 0x10       */
2444  volatile u_int32_t XTAL_SETTLE; /*       0x10 - 0x14       */
2445  volatile u_int32_t RTC_CLOCK; /*       0x14 - 0x18       */
2446  volatile u_int32_t CORE_CLOCK; /*       0x18 - 0x1c       */
2447  volatile u_int32_t CLKBOOT; /*       0x1c - 0x20       */
2448  volatile u_int32_t UART_CLOCK; /*       0x20 - 0x24       */
2449  volatile u_int32_t SI_CLOCK; /*       0x24 - 0x28       */
2450  volatile u_int32_t CLOCK_CONTROL; /*       0x28 - 0x2c       */
2451  volatile u_int32_t WDT_CONTROL; /*       0x2c - 0x30       */
2452  volatile u_int32_t WDT_STATUS; /*       0x30 - 0x34       */
2453  volatile u_int32_t WDT; /*       0x34 - 0x38       */
2454  volatile u_int32_t WDT_COUNT; /*       0x38 - 0x3c       */
2455  volatile u_int32_t WDT_RESET; /*       0x3c - 0x40       */
2456  volatile u_int32_t RTC_INT_STATUS; /*       0x40 - 0x44       */
2457  volatile u_int32_t INT_SRC_MAPPING; /*       0x44 - 0x48       */
2458  volatile u_int32_t UART_SI_GPIO_INT_STATUS; /*       0x48 - 0x4c       */
2459  volatile u_int32_t LF_TIMER0; /*       0x4c - 0x50       */
2460  volatile u_int32_t LF_TIMER_COUNT0; /*       0x50 - 0x54       */
2461  volatile u_int32_t LF_TIMER_CONTROL0; /*       0x54 - 0x58       */
2462  volatile u_int32_t LF_TIMER_STATUS0; /*       0x58 - 0x5c       */
2463  volatile u_int32_t LF_TIMER1; /*       0x5c - 0x60       */
2464  volatile u_int32_t LF_TIMER_COUNT1; /*       0x60 - 0x64       */
2465  volatile u_int32_t LF_TIMER_CONTROL1; /*       0x64 - 0x68       */
2466  volatile u_int32_t LF_TIMER_STATUS1; /*       0x68 - 0x6c       */
2467  volatile u_int32_t RESET_CAUSE; /*       0x6c - 0x70       */
2468  volatile u_int32_t SYSTEM_SLEEP; /*       0x70 - 0x74       */
2469  volatile u_int32_t KEEP_AWAKE; /*       0x74 - 0x78       */
2470  volatile u_int32_t LPO_CAL; /*       0x78 - 0x7c       */
2471  volatile u_int32_t OBS_CLOCK; /*       0x7c - 0x80       */
2472  volatile u_int32_t CHIP_REV; /*       0x80 - 0x84       */
2473  volatile u_int32_t PWR_ON_TIME; /*       0x84 - 0x88       */
2474  volatile u_int32_t PWD_TIME; /*       0x88 - 0x8c       */
2475  volatile u_int32_t USB_SUSPEND_POWER_REG; /*       0x8c - 0x90       */
2476  volatile u_int32_t USB_SUSPEND_WAKEUP_COUNTER_REG;
2477                                                  /*       0x90 - 0x94       */
2478  volatile u_int32_t LPO_STEP_CFG; /*       0x94 - 0x98       */
2479  volatile u_int32_t LPO_FAST_CYL; /*       0x98 - 0x9c       */
2480  volatile u_int32_t LPO_LPO1; /*       0x9c - 0xa0       */
2481  volatile u_int32_t LPO_LPO2; /*       0xa0 - 0xa4       */
2482  volatile u_int32_t LPO_INT_RAW; /*       0xa4 - 0xa8       */
2483  volatile u_int32_t LPO_N1TARGET; /*       0xa8 - 0xac       */
2484  volatile u_int32_t LPO_N2TARGET; /*       0xac - 0xb0       */
2485  volatile u_int32_t LPO_DN1_MULT; /*       0xb0 - 0xb4       */
2486  volatile u_int32_t LPO_DN2_MULT; /*       0xb4 - 0xb8       */
2487  volatile u_int32_t LPO_NTARGET_MIN; /*       0xb8 - 0xbc       */
2488  volatile u_int32_t LPO_NTARGET_MAX; /*       0xbc - 0xc0       */
2489  volatile u_int32_t LPO_N1TARGET_DEBUG; /*       0xc0 - 0xc4       */
2490  volatile u_int32_t LPO_N2TARGET_DEBUG; /*       0xc4 - 0xc8       */
2491  volatile u_int32_t OTP; /*       0xc8 - 0xcc       */
2492  volatile u_int32_t OTP_STATUS; /*       0xcc - 0xd0       */
2493  volatile u_int32_t USB_PHY_TEST; /*       0xd0 - 0xd4       */
2494  volatile u_int32_t USB_PHY_CONFIG; /*       0xd4 - 0xd8       */
2495  volatile u_int32_t ADDAC_CLOCK_PHASE; /*       0xd8 - 0xdc       */
2496  volatile u_int32_t THERM_CONTROL; /*       0xdc - 0xe0       */
2497  volatile u_int32_t THERM_TRIGGER_INTERVAL1; /*       0xe0 - 0xe4       */
2498  volatile u_int32_t THERM_TRIGGER_INTERVAL2; /*       0xe4 - 0xe8       */
2499  volatile u_int32_t THERM_CORRECTION; /*       0xe8 - 0xec       */
2500  volatile u_int32_t THERM_CORRECTION_VALUE1; /*       0xec - 0xf0       */
2501  volatile u_int32_t THERM_CORRECTION_VALUE2; /*       0xf0 - 0xf4       */
2502  volatile u_int32_t PLL_CONTROL; /*       0xf4 - 0xf8       */
2503  volatile u_int32_t VDD12D_SENSE; /*       0xf8 - 0xfc       */
2504  volatile u_int32_t RBIAS; /*       0xfc - 0x100      */
2505  volatile u_int32_t THERM_CONTROL_VAL; /*      0x100 - 0x104      */
2506  volatile u_int32_t PLL_OSC_CONTROL; /*      0x104 - 0x108      */
2507  volatile u_int32_t AHB_ERR_INT; /*      0x108 - 0x10c      */
2508  volatile u_int32_t INT_P2_EN; /*      0x10c - 0x110      */
2509  volatile u_int32_t XTAL_CLOCK; /*      0x110 - 0x114      */
2510  volatile u_int32_t CHIP_MODES; /*      0x114 - 0x118      */
2511  volatile u_int32_t XTAL_FREQ; /*      0x118 - 0x11c      */
2512  volatile u_int32_t DEBUGGER_RESET; /*      0x11c - 0x120      */
2513  volatile u_int32_t LPO_3_2K_CLK; /*      0x120 - 0x124      */
2514  volatile u_int32_t LPO1_CLK_DEBUG; /*      0x124 - 0x128      */
2515  volatile u_int32_t LPO2_CLK_DEBUG; /*      0x128 - 0x12c      */
2516  volatile u_int32_t ADDR_CHECK; /*      0x12c - 0x130      */
2517  volatile u_int32_t RTC_DUMMY; /*      0x130 - 0x134      */
2518};
2519
2520struct jupiter_reg_map__vmc_reg_csr {
2521  volatile u_int32_t BANK0_ADDR; /*        0x0 - 0x4        */
2522  volatile u_int32_t BANK1_ADDR; /*        0x4 - 0x8        */
2523  volatile u_int32_t BANK_CONFIG; /*        0x8 - 0xc        */
2524  volatile u_int32_t MC_BCAM_CONFLICT_ERROR; /*        0xc - 0x10       */
2525  volatile char pad__0[0x10]; /*       0x10 - 0x20       */
2526  volatile u_int32_t MC_BCAM_COMPARE[128]; /*       0x20 - 0x220      */
2527  volatile u_int32_t MC_BCAM_VALID[128]; /*      0x220 - 0x420      */
2528  volatile u_int32_t MC_BCAM_TARGET[128]; /*      0x420 - 0x620      */
2529};
2530
2531struct jupiter_reg_map__apb_map_csr__uart_reg_csr {
2532  volatile u_int32_t UART_DATA; /*        0x0 - 0x4        */
2533  volatile u_int32_t UART_CONTROL; /*        0x4 - 0x8        */
2534  volatile u_int32_t UART_CLKDIV; /*        0x8 - 0xc        */
2535  volatile u_int32_t UART_INT; /*        0xc - 0x10       */
2536  volatile u_int32_t UART_INT_EN; /*       0x10 - 0x14       */
2537};
2538
2539struct jupiter_reg_map__si_reg_csr {
2540  volatile u_int32_t SI_CONFIG; /*        0x0 - 0x4        */
2541  volatile u_int32_t SI_CS; /*        0x4 - 0x8        */
2542  volatile u_int32_t SI_TX_DATA0; /*        0x8 - 0xc        */
2543  volatile u_int32_t SI_TX_DATA1; /*        0xc - 0x10       */
2544  volatile u_int32_t SI_RX_DATA0; /*       0x10 - 0x14       */
2545  volatile u_int32_t SI_RX_DATA1; /*       0x14 - 0x18       */
2546};
2547
2548struct jupiter_reg_map__gpio_reg_csr {
2549  volatile u_int32_t GPIO_OUT; /*        0x0 - 0x4        */
2550  volatile u_int32_t GPIO_OUT_W1TS; /*        0x4 - 0x8        */
2551  volatile u_int32_t GPIO_OUT_W1TC; /*        0x8 - 0xc        */
2552  volatile u_int32_t GPIO_ENABLE; /*        0xc - 0x10       */
2553  volatile u_int32_t GPIO_ENABLE_W1TS; /*       0x10 - 0x14       */
2554  volatile u_int32_t GPIO_ENABLE_W1TC; /*       0x14 - 0x18       */
2555  volatile u_int32_t GPIO_IN; /*       0x18 - 0x1c       */
2556  volatile u_int32_t GPIO_STATUS; /*       0x1c - 0x20       */
2557  volatile u_int32_t GPIO_STATUS_W1TS; /*       0x20 - 0x24       */
2558  volatile u_int32_t GPIO_STATUS_W1TC; /*       0x24 - 0x28       */
2559  volatile u_int32_t GPIO_INT_ENABLE; /*       0x28 - 0x2c       */
2560  volatile u_int32_t GPIO_INT_ENABLE_W1TS; /*       0x2c - 0x30       */
2561  volatile u_int32_t GPIO_INT_ENABLE_W1TC; /*       0x30 - 0x34       */
2562  volatile u_int32_t GPIO_PIN0; /*       0x34 - 0x38       */
2563  volatile u_int32_t GPIO_PIN1; /*       0x38 - 0x3c       */
2564  volatile u_int32_t GPIO_PIN2; /*       0x3c - 0x40       */
2565  volatile u_int32_t GPIO_PIN3; /*       0x40 - 0x44       */
2566  volatile u_int32_t GPIO_PIN4; /*       0x44 - 0x48       */
2567  volatile u_int32_t GPIO_PIN5; /*       0x48 - 0x4c       */
2568  volatile u_int32_t GPIO_PIN6; /*       0x4c - 0x50       */
2569  volatile u_int32_t GPIO_PIN7; /*       0x50 - 0x54       */
2570  volatile u_int32_t GPIO_PIN8; /*       0x54 - 0x58       */
2571  volatile u_int32_t GPIO_PIN9; /*       0x58 - 0x5c       */
2572  volatile u_int32_t GPIO_PIN10; /*       0x5c - 0x60       */
2573  volatile u_int32_t GPIO_PIN11; /*       0x60 - 0x64       */
2574  volatile u_int32_t GPIO_PIN12; /*       0x64 - 0x68       */
2575  volatile u_int32_t GPIO_PIN13; /*       0x68 - 0x6c       */
2576  volatile u_int32_t GPIO_PIN14; /*       0x6c - 0x70       */
2577  volatile u_int32_t GPIO_PIN15; /*       0x70 - 0x74       */
2578  volatile u_int32_t GPIO_PIN16; /*       0x74 - 0x78       */
2579  volatile u_int32_t GPIO_PIN17; /*       0x78 - 0x7c       */
2580  volatile u_int32_t GPIO_PIN18; /*       0x7c - 0x80       */
2581  volatile u_int32_t GPIO_PIN19; /*       0x80 - 0x84       */
2582  volatile u_int32_t SIGMA_DELTA; /*       0x84 - 0x88       */
2583  volatile u_int32_t DEBUG_CONTROL; /*       0x88 - 0x8c       */
2584  volatile u_int32_t DEBUG_INPUT_SEL; /*       0x8c - 0x90       */
2585  volatile u_int32_t DEBUG_PIN_SEL; /*       0x90 - 0x94       */
2586  volatile u_int32_t DEBUG_OBS_BUS; /*       0x94 - 0x98       */
2587};
2588
2589struct jupiter_reg_map__mbox_reg_csr {
2590  volatile u_int32_t MBOX_FIFO[4]; /*        0x0 - 0x10       */
2591  volatile u_int32_t MBOX_FIFO_STATUS; /*       0x10 - 0x14       */
2592  volatile u_int32_t MBOX_DMA_POLICY; /*       0x14 - 0x18       */
2593  volatile u_int32_t MBOX0_DMA_RX_DESCRIPTOR_BASE;
2594                                                  /*       0x18 - 0x1c       */
2595  volatile u_int32_t MBOX0_DMA_RX_CONTROL; /*       0x1c - 0x20       */
2596  volatile u_int32_t MBOX0_DMA_TX_DESCRIPTOR_BASE;
2597                                                  /*       0x20 - 0x24       */
2598  volatile u_int32_t MBOX0_DMA_TX_CONTROL; /*       0x24 - 0x28       */
2599  volatile u_int32_t MBOX1_DMA_RX_DESCRIPTOR_BASE;
2600                                                  /*       0x28 - 0x2c       */
2601  volatile u_int32_t MBOX1_DMA_RX_CONTROL; /*       0x2c - 0x30       */
2602  volatile u_int32_t MBOX1_DMA_TX_DESCRIPTOR_BASE;
2603                                                  /*       0x30 - 0x34       */
2604  volatile u_int32_t MBOX1_DMA_TX_CONTROL; /*       0x34 - 0x38       */
2605  volatile u_int32_t MBOX2_DMA_RX_DESCRIPTOR_BASE;
2606                                                  /*       0x38 - 0x3c       */
2607  volatile u_int32_t MBOX2_DMA_RX_CONTROL; /*       0x3c - 0x40       */
2608  volatile u_int32_t MBOX2_DMA_TX_DESCRIPTOR_BASE;
2609                                                  /*       0x40 - 0x44       */
2610  volatile u_int32_t MBOX2_DMA_TX_CONTROL; /*       0x44 - 0x48       */
2611  volatile u_int32_t MBOX3_DMA_RX_DESCRIPTOR_BASE;
2612                                                  /*       0x48 - 0x4c       */
2613  volatile u_int32_t MBOX3_DMA_RX_CONTROL; /*       0x4c - 0x50       */
2614  volatile u_int32_t MBOX3_DMA_TX_DESCRIPTOR_BASE;
2615                                                  /*       0x50 - 0x54       */
2616  volatile u_int32_t MBOX3_DMA_TX_CONTROL; /*       0x54 - 0x58       */
2617  volatile u_int32_t FIFO_TIMEOUT; /*       0x58 - 0x5c       */
2618  volatile u_int32_t MBOX_INT_STATUS; /*       0x5c - 0x60       */
2619  volatile u_int32_t MBOX_INT_ENABLE; /*       0x60 - 0x64       */
2620  volatile u_int32_t MBOX_DEBUG; /*       0x64 - 0x68       */
2621  volatile u_int32_t MBOX_FIFO_RESET; /*       0x68 - 0x6c       */
2622  volatile char pad__0[0x4]; /*       0x6c - 0x70       */
2623  volatile u_int32_t MBOX_TXFIFO_POP[4]; /*       0x70 - 0x80       */
2624  volatile u_int32_t HCI_FRAMER; /*       0x80 - 0x84       */
2625  volatile u_int32_t STEREO_CONFIG; /*       0x84 - 0x88       */
2626  volatile u_int32_t STEREO_CONFIG1; /*       0x88 - 0x8c       */
2627  volatile u_int32_t STEREO_CONFIG2; /*       0x8c - 0x90       */
2628  volatile u_int32_t STEREO_VOLUME; /*       0x90 - 0x94       */
2629  volatile u_int32_t STEREO_DEBUG; /*       0x94 - 0x98       */
2630  volatile u_int32_t STEREO_CONFIG3; /*       0x98 - 0x9c       */
2631};
2632
2633struct jupiter_reg_map__lc_dma_reg_csr {
2634  volatile u_int32_t LC_DMA_MASTER; /*        0x0 - 0x4        */
2635  volatile u_int32_t LC_DMA_TX_CONTROL; /*        0x4 - 0x8        */
2636  volatile u_int32_t LC_DMA_RX_CONTROL; /*        0x8 - 0xc        */
2637  volatile u_int32_t LC_DMA_TX_HW; /*        0xc - 0x10       */
2638  volatile u_int32_t LC_DMA_RX_HW; /*       0x10 - 0x14       */
2639  volatile u_int32_t LC_DMA_INT_STATUS; /*       0x14 - 0x18       */
2640  volatile u_int32_t LC_DMA_TX_STATUS; /*       0x18 - 0x1c       */
2641  volatile u_int32_t LC_DMA_TX_STATUS_W1TC; /*       0x1c - 0x20       */
2642  volatile u_int32_t LC_DMA_TX_ENABLE; /*       0x20 - 0x24       */
2643  volatile u_int32_t LC_DMA_RX_STATUS; /*       0x24 - 0x28       */
2644  volatile u_int32_t LC_DMA_RX_STATUS_W1TC; /*       0x28 - 0x2c       */
2645  volatile u_int32_t LC_DMA_RX_ENABLE; /*       0x2c - 0x30       */
2646  volatile u_int32_t LC_DMA_DEBUG; /*       0x30 - 0x34       */
2647};
2648
2649struct jupiter_reg_map__lc_reg_csr {
2650  volatile u_int32_t LC_DEV_PARAM_DAC_L; /*        0x0 - 0x4        */
2651  volatile u_int32_t LC_DEV_PARAM_DAC_U; /*        0x4 - 0x8        */
2652  volatile u_int32_t LC_DEV_PARAM_BD_ADDR; /*        0x8 - 0xc        */
2653  volatile u_int32_t LC_DEV_PARAM_FHS; /*        0xc - 0x10       */
2654  volatile u_int32_t LC_DEV_PARAM_CTL; /*       0x10 - 0x14       */
2655  volatile u_int32_t LC_DEV_PARAM_TIMING; /*       0x14 - 0x18       */
2656  volatile u_int32_t LC_DEV_PARAM_TIMING_1; /*       0x18 - 0x1c       */
2657  volatile u_int32_t LC_MISC; /*       0x1c - 0x20       */
2658  volatile u_int32_t LC_DEV_PARAM_COMMAND1; /*       0x20 - 0x24       */
2659  volatile u_int32_t LC_DEV_PARAM_COMMAND2; /*       0x24 - 0x28       */
2660  volatile u_int32_t LC_DEV_PARAM_COMMAND3; /*       0x28 - 0x2c       */
2661  volatile u_int32_t LC_DEV_PARAM_COMMAND4; /*       0x2c - 0x30       */
2662  volatile u_int32_t LC_DEV_PARAM_COMMAND5; /*       0x30 - 0x34       */
2663  volatile u_int32_t LC_DEV_PARAM_COMMAND6; /*       0x34 - 0x38       */
2664  volatile u_int32_t LC_DEV_PARAM_COMMAND7; /*       0x38 - 0x3c       */
2665  volatile u_int32_t LC_DEV_PARAM_COMMAND8; /*       0x3c - 0x40       */
2666  volatile u_int32_t LC_DEV_PARAM_AC1_L; /*       0x40 - 0x44       */
2667  volatile u_int32_t LC_DEV_PARAM_AC1_U; /*       0x44 - 0x48       */
2668  volatile u_int32_t LC_DEV_PARAM_AC2_L; /*       0x48 - 0x4c       */
2669  volatile u_int32_t LC_DEV_PARAM_AC2_U; /*       0x4c - 0x50       */
2670  volatile u_int32_t LC_DEV_PARAM_CLOCK_OFFSET; /*       0x50 - 0x54       */
2671  volatile u_int32_t LC_FREQUENCY; /*       0x54 - 0x58       */
2672  volatile u_int32_t LC_CH_ASSESS_1; /*       0x58 - 0x5c       */
2673  volatile u_int32_t LC_CH_ASSESS_2; /*       0x5c - 0x60       */
2674  volatile u_int32_t LC_DEV_PARAM_ENCRYPTION_KEY0;
2675                                                  /*       0x60 - 0x64       */
2676  volatile u_int32_t LC_DEV_PARAM_ENCRYPTION_KEY1;
2677                                                  /*       0x64 - 0x68       */
2678  volatile u_int32_t LC_DEV_PARAM_ENCRYPTION_KEY2;
2679                                                  /*       0x68 - 0x6c       */
2680  volatile u_int32_t LC_DEV_PARAM_ENCRYPTION_KEY3;
2681                                                  /*       0x6c - 0x70       */
2682  volatile u_int32_t LC_DEV_PARAM_TX_CONTROL; /*       0x70 - 0x74       */
2683  volatile u_int32_t LC_DEV_PARAM_RX_CONTROL; /*       0x74 - 0x78       */
2684  volatile u_int32_t LC_DEV_PARAM_RX_STATUS1; /*       0x78 - 0x7c       */
2685  volatile u_int32_t LC_DEV_PARAM_RX_STATUS2; /*       0x7c - 0x80       */
2686  volatile char pad__0[0x4]; /*       0x80 - 0x84       */
2687  volatile u_int32_t LC_BT_CLOCK0; /*       0x84 - 0x88       */
2688  volatile u_int32_t LC_BT_CLOCK1; /*       0x88 - 0x8c       */
2689  volatile u_int32_t LC_BT_CLOCK2; /*       0x8c - 0x90       */
2690  volatile u_int32_t LC_BT_CLOCK3; /*       0x90 - 0x94       */
2691  volatile u_int32_t LC_SYM_TIME0; /*       0x94 - 0x98       */
2692  volatile u_int32_t LC_SYM_TIME1; /*       0x98 - 0x9c       */
2693  volatile u_int32_t LC_SYM_TIME2; /*       0x9c - 0xa0       */
2694  volatile u_int32_t LC_SYM_TIME3; /*       0xa0 - 0xa4       */
2695  volatile char pad__1[0x4]; /*       0xa4 - 0xa8       */
2696  volatile u_int32_t LC_ABORT; /*       0xa8 - 0xac       */
2697  volatile u_int32_t LC_PRBS; /*       0xac - 0xb0       */
2698  volatile u_int32_t LC_LAST_CORR_HECOK; /*       0xb0 - 0xb4       */
2699  volatile char pad__2[0x4c]; /*       0xb4 - 0x100      */
2700  volatile u_int32_t LC_SM_AFH_TABLE[24]; /*      0x100 - 0x160      */
2701  volatile char pad__3[0x20]; /*      0x160 - 0x180      */
2702  volatile u_int32_t LC_SM_AFH_BITMAP_0; /*      0x180 - 0x184      */
2703  volatile u_int32_t LC_SM_AFH_BITMAP_1; /*      0x184 - 0x188      */
2704  volatile u_int32_t LC_SM_AFH_BITMAP_2; /*      0x188 - 0x18c      */
2705  volatile u_int32_t LC_STAT0; /*      0x18c - 0x190      */
2706  volatile u_int32_t LC_STAT1; /*      0x190 - 0x194      */
2707  volatile u_int32_t LC_STAT2; /*      0x194 - 0x198      */
2708  volatile u_int32_t LC_STAT3; /*      0x198 - 0x19c      */
2709  volatile u_int32_t LC_STAT4; /*      0x19c - 0x1a0      */
2710  volatile u_int32_t LC_STAT5; /*      0x1a0 - 0x1a4      */
2711  volatile u_int32_t LC_STAT6; /*      0x1a4 - 0x1a8      */
2712  volatile u_int32_t LC_STAT7; /*      0x1a8 - 0x1ac      */
2713  volatile u_int32_t LC_STAT8; /*      0x1ac - 0x1b0      */
2714  volatile u_int32_t LC_STAT9; /*      0x1b0 - 0x1b4      */
2715  volatile char pad__4[0x14c]; /*      0x1b4 - 0x300      */
2716  volatile u_int32_t LC_INTERRUPT_RAW; /*      0x300 - 0x304      */
2717  volatile u_int32_t LC_INTERRUPT_EN; /*      0x304 - 0x308      */
2718  volatile u_int32_t LC_INTERRUPT_RX_STATUS; /*      0x308 - 0x30c      */
2719  volatile u_int32_t LC_AUDIO_DATAPATH; /*      0x30c - 0x310      */
2720  volatile u_int32_t LC_VOICE_CHAN0; /*      0x310 - 0x314      */
2721  volatile u_int32_t LC_VOICE_CHAN1; /*      0x314 - 0x318      */
2722  volatile u_int32_t LC_VOICE_CHAN0_RX_ENERGY; /*      0x318 - 0x31c      */
2723  volatile u_int32_t LC_VOICE_CHAN1_RX_ENERGY; /*      0x31c - 0x320      */
2724  volatile u_int32_t LC_VOICE_CHAN0_TX_ENERGY; /*      0x320 - 0x324      */
2725  volatile u_int32_t LC_VOICE_CHAN1_TX_ENERGY; /*      0x324 - 0x328      */
2726  volatile u_int32_t LC_VOICE_CHAN0_ZERO_CROSS; /*      0x328 - 0x32c      */
2727  volatile u_int32_t LC_VOICE_CHAN1_ZERO_CROSS; /*      0x32c - 0x330      */
2728  volatile char pad__5[0xd0]; /*      0x330 - 0x400      */
2729  volatile u_int32_t LC_RX_CTRL_DATAPATH; /*      0x400 - 0x404      */
2730  volatile u_int32_t LC_DEBUG; /*      0x404 - 0x408      */
2731  volatile u_int32_t LC_TX_CTRL_DATAPATH; /*      0x408 - 0x40c      */
2732  volatile u_int32_t LC_COMMAND9; /*      0x40c - 0x410      */
2733  volatile u_int32_t BT_CLOCK0_FREE_RUN; /*      0x410 - 0x414      */
2734  volatile u_int32_t BT_CLOCK1_FREE_RUN; /*      0x414 - 0x418      */
2735  volatile u_int32_t BT_CLOCK2_FREE_RUN; /*      0x418 - 0x41c      */
2736  volatile u_int32_t BT_CLOCK3_FREE_RUN; /*      0x41c - 0x420      */
2737  volatile u_int32_t LC_DEV_PARAM_COMMAND10; /*      0x420 - 0x424      */
2738  volatile u_int32_t LC_DEV_PARAM_TIMING_2; /*      0x424 - 0x428      */
2739  volatile u_int32_t LC_DEV_PARAM_COMMAND11; /*      0x428 - 0x42c      */
2740  volatile u_int32_t MCI_SUB_PRIORITY_TABLE_0; /*      0x42c - 0x430      */
2741  volatile u_int32_t MCI_SUB_PRIORITY_TABLE_1; /*      0x430 - 0x434      */
2742  volatile u_int32_t MCI_SUB_PRIORITY_TABLE_2; /*      0x434 - 0x438      */
2743  volatile u_int32_t MCI_SUB_PRIORITY_TABLE_3; /*      0x438 - 0x43c      */
2744  volatile u_int32_t MCI_SUB_PRIORITY_TABLE_4; /*      0x43c - 0x440      */
2745  volatile u_int32_t MCI_COMMAND0; /*      0x440 - 0x444      */
2746  volatile u_int32_t MCI_COMMAND1; /*      0x444 - 0x448      */
2747  volatile u_int32_t MCI_COMMAND2; /*      0x448 - 0x44c      */
2748  volatile u_int32_t MCI_RX_CTRL; /*      0x44c - 0x450      */
2749  volatile u_int32_t MCI_TX_CTRL; /*      0x450 - 0x454      */
2750  volatile u_int32_t MCI_MSG_ATTRIBUTES_TABLE; /*      0x454 - 0x458      */
2751  volatile u_int32_t MCI_SCHD_TABLE_0; /*      0x458 - 0x45c      */
2752  volatile u_int32_t MCI_SCHD_TABLE_1; /*      0x45c - 0x460      */
2753  volatile u_int32_t MCI_GPM_0; /*      0x460 - 0x464      */
2754  volatile u_int32_t MCI_GPM_1; /*      0x464 - 0x468      */
2755  volatile u_int32_t MCI_INTERRUPT_RAW; /*      0x468 - 0x46c      */
2756  volatile u_int32_t MCI_INTERRUPT_EN; /*      0x46c - 0x470      */
2757  volatile u_int32_t MCI_REMOTE_CPU_INT; /*      0x470 - 0x474      */
2758  volatile u_int32_t MCI_REMOTE_CPU_INT_EN; /*      0x474 - 0x478      */
2759  volatile u_int32_t MCI_INTERRUPT_RX_MSG_RAW; /*      0x478 - 0x47c      */
2760  volatile u_int32_t MCI_INTERRUPT_RX_MSG_EN; /*      0x47c - 0x480      */
2761  volatile u_int32_t MCI_CPU_INT; /*      0x480 - 0x484      */
2762  volatile u_int32_t MCI_RX_STATUS; /*      0x484 - 0x488      */
2763  volatile u_int32_t WBTIMER; /*      0x488 - 0x48c      */
2764  volatile u_int32_t WB_BTCLK_SYNC_PN0; /*      0x48c - 0x490      */
2765  volatile u_int32_t WB_BTCLK_SYNC_PN1; /*      0x490 - 0x494      */
2766  volatile u_int32_t WB_BTCLK_SYNC_PN2; /*      0x494 - 0x498      */
2767  volatile u_int32_t WB_BTCLK_SYNC_PN3; /*      0x498 - 0x49c      */
2768  volatile u_int32_t LC_SERIAL; /*      0x49c - 0x4a0      */
2769  volatile u_int32_t LC_PHY_ERR; /*      0x4a0 - 0x4a4      */
2770  volatile u_int32_t LC_PHY_ERR_0; /*      0x4a4 - 0x4a8      */
2771  volatile u_int32_t LC_PHY_ERR_1; /*      0x4a8 - 0x4ac      */
2772  volatile u_int32_t LC_PHY_ERR_2; /*      0x4ac - 0x4b0      */
2773  volatile u_int32_t LC_PHY_ERR_3; /*      0x4b0 - 0x4b4      */
2774  volatile u_int32_t LC_PHY_ERR_4; /*      0x4b4 - 0x4b8      */
2775  volatile u_int32_t LC_PHY_ERR_5; /*      0x4b8 - 0x4bc      */
2776  volatile u_int32_t LC_SF_CTRL; /*      0x4bc - 0x4c0      */
2777  volatile u_int32_t LC_DUMMY; /*      0x4c0 - 0x4c4      */
2778  volatile u_int32_t LC_FOR_BQB; /*      0x4c4 - 0x4c8      */
2779  volatile u_int32_t SHARED_LNA_PARAM; /*      0x4c8 - 0x4cc      */
2780  volatile u_int32_t LC_CHNASS0_SUB1; /*      0x4cc - 0x4d0      */
2781  volatile u_int32_t LC_CHNASS1_SUB1; /*      0x4d0 - 0x4d4      */
2782  volatile u_int32_t LC_CHNASS0_SUB2; /*      0x4d4 - 0x4d8      */
2783  volatile u_int32_t LC_CHNASS1_SUB2; /*      0x4d8 - 0x4dc      */
2784  volatile u_int32_t LC_CHNASS0_SUB3; /*      0x4dc - 0x4e0      */
2785  volatile u_int32_t LC_CHNASS1_SUB3; /*      0x4e0 - 0x4e4      */
2786  volatile u_int32_t LC_CHNASS0_SUB4; /*      0x4e4 - 0x4e8      */
2787  volatile u_int32_t LC_CHNASS1_SUB4; /*      0x4e8 - 0x4ec      */
2788  volatile u_int32_t LC_CHNASS0_SUB5; /*      0x4ec - 0x4f0      */
2789  volatile u_int32_t LC_CHNASS1_SUB5; /*      0x4f0 - 0x4f4      */
2790  volatile u_int32_t LC_CHNASS0_SUB6; /*      0x4f4 - 0x4f8      */
2791  volatile u_int32_t LC_CHNASS1_SUB6; /*      0x4f8 - 0x4fc      */
2792  volatile u_int32_t LC_CHNASS0_SUB7; /*      0x4fc - 0x500      */
2793  volatile u_int32_t LC_CHNASS1_SUB7; /*      0x500 - 0x504      */
2794  volatile u_int32_t LC_LE; /*      0x504 - 0x508      */
2795  volatile u_int32_t MCI_SCHD_TABLE_2; /*      0x508 - 0x50c      */
2796  volatile u_int32_t WB_BTCLK_SYNC_LE_PN0; /*      0x50c - 0x510      */
2797  volatile u_int32_t WB_BTCLK_SYNC_LE_PN1; /*      0x510 - 0x514      */
2798  volatile u_int32_t LC_TB_LLR; /*      0x514 - 0x518      */
2799  volatile u_int32_t LC_SYM_TIME0_FREE_RUN; /*      0x518 - 0x51c      */
2800  volatile u_int32_t LC_SYM_TIME1_FREE_RUN; /*      0x51c - 0x520      */
2801  volatile u_int32_t LC_SYM_TIME2_FREE_RUN; /*      0x520 - 0x524      */
2802  volatile u_int32_t LC_SYM_TIME3_FREE_RUN; /*      0x524 - 0x528      */
2803  volatile u_int32_t WBTIMERCLK; /*      0x528 - 0x52c      */
2804};
2805
2806struct jupiter_reg_map__synthBT_reg_csr {
2807  volatile u_int32_t SYNTHBT1; /*        0x0 - 0x4        */
2808  volatile u_int32_t SYNTHBT2; /*        0x4 - 0x8        */
2809  volatile u_int32_t SYNTHBT3; /*        0x8 - 0xc        */
2810  volatile u_int32_t SYNTHBT4; /*        0xc - 0x10       */
2811  volatile u_int32_t SYNTHBT5; /*       0x10 - 0x14       */
2812  volatile u_int32_t SYNTHBT6; /*       0x14 - 0x18       */
2813  volatile u_int32_t SYNTHBT7; /*       0x18 - 0x1c       */
2814  volatile u_int32_t SYNTHBT8; /*       0x1c - 0x20       */
2815};
2816
2817struct jupiter_reg_map__BIASBT_reg_csr {
2818  volatile u_int32_t BIASBT1; /*        0x0 - 0x4        */
2819  volatile u_int32_t BIASBT2; /*        0x4 - 0x8        */
2820  volatile u_int32_t BIASBT3; /*        0x8 - 0xc        */
2821  volatile u_int32_t BIASBT4; /*        0xc - 0x10       */
2822  volatile u_int32_t BIASBT5; /*       0x10 - 0x14       */
2823};
2824
2825struct jupiter_reg_map__TOPBT_reg_csr {
2826  volatile u_int32_t TOPBT1; /*        0x0 - 0x4        */
2827  volatile u_int32_t TOPBT2; /*        0x4 - 0x8        */
2828  volatile u_int32_t TOPBT3; /*        0x8 - 0xc        */
2829  volatile u_int32_t TOPBT4; /*        0xc - 0x10       */
2830  volatile u_int32_t TOPBT5; /*       0x10 - 0x14       */
2831  volatile u_int32_t TOPBT6; /*       0x14 - 0x18       */
2832  volatile u_int32_t TOPBT7; /*       0x18 - 0x1c       */
2833  volatile u_int32_t TOPBT8; /*       0x1c - 0x20       */
2834  volatile u_int32_t TOPBT9; /*       0x20 - 0x24       */
2835  volatile u_int32_t TOPBT10; /*       0x24 - 0x28       */
2836};
2837
2838struct jupiter_reg_map__CLK_reg_csr {
2839  volatile u_int32_t CLK1; /*        0x0 - 0x4        */
2840  volatile u_int32_t CLK2; /*        0x4 - 0x8        */
2841  volatile u_int32_t CLK3; /*        0x8 - 0xc        */
2842};
2843
2844struct jupiter_reg_map__analog_intf_athr_wlan_reg_csr {
2845  volatile char pad__0[0x880]; /*        0x0 - 0x880      */
2846  struct jupiter_reg_map__synthBT_reg_csr synth_reg_map;
2847                                                  /*      0x880 - 0x8a0      */
2848  volatile char pad__1[0x20]; /*      0x8a0 - 0x8c0      */
2849  struct jupiter_reg_map__BIASBT_reg_csr BIAS_reg_map;
2850                                                  /*      0x8c0 - 0x8d4      */
2851  volatile char pad__2[0x2c]; /*      0x8d4 - 0x900      */
2852  struct jupiter_reg_map__TOPBT_reg_csr TOP_reg_map;
2853                                                  /*      0x900 - 0x928      */
2854  volatile char pad__3[0x158]; /*      0x928 - 0xa80      */
2855  struct jupiter_reg_map__CLK_reg_csr CLK_reg_map;
2856                                                  /*      0xa80 - 0xa8c      */
2857};
2858
2859struct jupiter_reg_map__efuse_reg {
2860  volatile u_int32_t OTP_MEM[128]; /*        0x0 - 0x200      */
2861  volatile char pad__0[0x1d00]; /*      0x200 - 0x1f00     */
2862  volatile u_int32_t OTP_INTF0; /*     0x1f00 - 0x1f04     */
2863  volatile u_int32_t OTP_INTF1; /*     0x1f04 - 0x1f08     */
2864  volatile u_int32_t OTP_INTF2; /*     0x1f08 - 0x1f0c     */
2865  volatile u_int32_t OTP_INTF3; /*     0x1f0c - 0x1f10     */
2866  volatile u_int32_t OTP_INTF4; /*     0x1f10 - 0x1f14     */
2867  volatile u_int32_t OTP_INTF5; /*     0x1f14 - 0x1f18     */
2868  volatile u_int32_t OTP_STATUS0; /*     0x1f18 - 0x1f1c     */
2869  volatile u_int32_t OTP_STATUS1; /*     0x1f1c - 0x1f20     */
2870  volatile u_int32_t OTP_INTF6; /*     0x1f20 - 0x1f24     */
2871  volatile u_int32_t OTP_LDO_CONTROL; /*     0x1f24 - 0x1f28     */
2872  volatile u_int32_t OTP_LDO_POWER_GOOD; /*     0x1f28 - 0x1f2c     */
2873  volatile u_int32_t OTP_LDO_STATUS; /*     0x1f2c - 0x1f30     */
2874  volatile u_int32_t OTP_VDDQ_HOLD_TIME; /*     0x1f30 - 0x1f34     */
2875  volatile u_int32_t OTP_PGENB_SETUP_HOLD_TIME; /*     0x1f34 - 0x1f38     */
2876  volatile u_int32_t OTP_STROBE_PULSE_INTERVAL; /*     0x1f38 - 0x1f3c     */
2877  volatile u_int32_t OTP_CSB_ADDR_LOAD_SETUP_HOLD;
2878                                                  /*     0x1f3c - 0x1f40     */
2879};
2880
2881struct jupiter_reg_map__modem_reg_csr {
2882  volatile u_int32_t START_REG; /*        0x0 - 0x4        */
2883  volatile u_int32_t RX_STATUS; /*        0x4 - 0x8        */
2884  volatile u_int32_t AC1_L; /*        0x8 - 0xc        */
2885  volatile u_int32_t AC1_U; /*        0xc - 0x10       */
2886  volatile u_int32_t AC2_L; /*       0x10 - 0x14       */
2887  volatile u_int32_t AC2_U; /*       0x14 - 0x18       */
2888  volatile u_int32_t TX_LATE; /*       0x18 - 0x1c       */
2889  volatile u_int32_t RF_SYNTH; /*       0x1c - 0x20       */
2890  volatile u_int32_t RF_RX_CONTROL; /*       0x20 - 0x24       */
2891  volatile u_int32_t RF_TX_CONTROL; /*       0x24 - 0x28       */
2892  volatile u_int32_t RF_FORCE; /*       0x28 - 0x2c       */
2893  volatile u_int32_t MODEM_CONTROL; /*       0x2c - 0x30       */
2894  volatile u_int32_t DC_FREQ_TRACK; /*       0x30 - 0x34       */
2895  volatile u_int32_t PSK_TRACK; /*       0x34 - 0x38       */
2896  volatile u_int32_t PSK_TRACK2; /*       0x38 - 0x3c       */
2897  volatile u_int32_t DEMOD_CTRL1; /*       0x3c - 0x40       */
2898  volatile u_int32_t DEMOD_CTRL2; /*       0x40 - 0x44       */
2899  volatile u_int32_t CORR_PARAM1; /*       0x44 - 0x48       */
2900  volatile u_int32_t CORR_PARAM2; /*       0x48 - 0x4c       */
2901  volatile u_int32_t RX_LFDATA; /*       0x4c - 0x50       */
2902  volatile u_int32_t ROT; /*       0x50 - 0x54       */
2903  volatile u_int32_t TX; /*       0x54 - 0x58       */
2904  volatile u_int32_t TX_GFSK1; /*       0x58 - 0x5c       */
2905  volatile u_int32_t TX_GFSK2; /*       0x5c - 0x60       */
2906  volatile u_int32_t TX_POWER_CORR0; /*       0x60 - 0x64       */
2907  volatile u_int32_t TX_POWER_CORR1; /*       0x64 - 0x68       */
2908  volatile u_int32_t SYNTH_CHN0; /*       0x68 - 0x6c       */
2909  volatile u_int32_t SYNTH_OFFSET; /*       0x6c - 0x70       */
2910  volatile u_int32_t MODEM_DEBUG; /*       0x70 - 0x74       */
2911  volatile u_int32_t AGC_BYPASS; /*       0x74 - 0x78       */
2912  volatile u_int32_t AGC_SAT; /*       0x78 - 0x7c       */
2913  volatile u_int32_t AGC_DET1; /*       0x7c - 0x80       */
2914  volatile u_int32_t AGC_DET2; /*       0x80 - 0x84       */
2915  volatile u_int32_t AGC_GAIN1; /*       0x84 - 0x88       */
2916  volatile u_int32_t AGC_GAIN2; /*       0x88 - 0x8c       */
2917  volatile u_int32_t AGC_LINEAR_BLK; /*       0x8c - 0x90       */
2918  volatile u_int32_t AGC_NONLIN_BLK; /*       0x90 - 0x94       */
2919  volatile u_int32_t AGC_MIN_POWER; /*       0x94 - 0x98       */
2920  volatile u_int32_t AGC_SLNA_SET0; /*       0x98 - 0x9c       */
2921  volatile u_int32_t AGC_SLNA_SET1; /*       0x9c - 0xa0       */
2922  volatile u_int32_t AGC_SLNA_SET2; /*       0xa0 - 0xa4       */
2923  volatile u_int32_t AGC_SLNA_SET3; /*       0xa4 - 0xa8       */
2924  volatile u_int32_t AGC_GAIN1_LEAN; /*       0xa8 - 0xac       */
2925  volatile u_int32_t MODEM_CTRL; /*       0xac - 0xb0       */
2926  volatile u_int32_t DEMOD_CTRL3; /*       0xb0 - 0xb4       */
2927  volatile u_int32_t DEMOD_CTRL4; /*       0xb4 - 0xb8       */
2928  volatile u_int32_t TX_GFSK3; /*       0xb8 - 0xbc       */
2929  volatile u_int32_t LE_DEMOD; /*       0xbc - 0xc0       */
2930  volatile u_int32_t AGC_LE1; /*       0xc0 - 0xc4       */
2931  volatile u_int32_t AGC_LE2; /*       0xc4 - 0xc8       */
2932  volatile u_int32_t AGC_LE3; /*       0xc8 - 0xcc       */
2933  volatile u_int32_t AGC_LE4; /*       0xcc - 0xd0       */
2934  volatile u_int32_t AGC_LE5; /*       0xd0 - 0xd4       */
2935  volatile u_int32_t AGC_LE6; /*       0xd4 - 0xd8       */
2936  volatile u_int32_t LE_FREQ; /*       0xd8 - 0xdc       */
2937  volatile u_int32_t LE_BLOCKER; /*       0xdc - 0xe0       */
2938  volatile char pad__0[0x420]; /*       0xe0 - 0x500      */
2939  volatile u_int32_t AGC_GAIN_TABLE[128]; /*      0x500 - 0x700      */
2940  volatile u_int32_t TX_ULP_CNTRL; /*      0x700 - 0x704      */
2941  volatile u_int32_t SS_MANUAL1; /*      0x704 - 0x708      */
2942  volatile u_int32_t SS_MANUAL2; /*      0x708 - 0x70c      */
2943  volatile u_int32_t SS_RADIO_CTRL; /*      0x70c - 0x710      */
2944  volatile u_int32_t PHY_ERR_CTRL1; /*      0x710 - 0x714      */
2945  volatile u_int32_t PHY_ERR_CTRL2; /*      0x714 - 0x718      */
2946  volatile u_int32_t PHY_ERR_CTRL3; /*      0x718 - 0x71c      */
2947  volatile u_int32_t PHY_ERR_CTRL4; /*      0x71c - 0x720      */
2948  volatile u_int32_t PHY_ERR_STATUS; /*      0x720 - 0x724      */
2949  volatile u_int32_t RBIST_ENABLE_CONTROL; /*      0x724 - 0x728      */
2950  volatile u_int32_t RBIST_TX_DC; /*      0x728 - 0x72c      */
2951  volatile u_int32_t RBIST_TX_TONE0; /*      0x72c - 0x730      */
2952  volatile u_int32_t RBIST_TX_TONE1; /*      0x730 - 0x734      */
2953  volatile u_int32_t RBIST_TX_TONE2; /*      0x734 - 0x738      */
2954  volatile u_int32_t RBIST_TX_RAMP_I; /*      0x738 - 0x73c      */
2955  volatile u_int32_t RBIST_TX_RAMP_Q; /*      0x73c - 0x740      */
2956  volatile u_int32_t RBIST_TX_PRBS_MAG; /*      0x740 - 0x744      */
2957  volatile u_int32_t RBIST_TX_PRBS_SEED_I; /*      0x744 - 0x748      */
2958  volatile u_int32_t RBIST_TX_PRBS_SEED_Q; /*      0x748 - 0x74c      */
2959  volatile u_int32_t RBIST_RX_DC_OFFSET; /*      0x74c - 0x750      */
2960  volatile u_int32_t RBIST_RX_DC_OFFSET_CANCEL; /*      0x750 - 0x754      */
2961  volatile u_int32_t RBIST_RX_DFT; /*      0x754 - 0x758      */
2962  volatile u_int32_t RBIST_RX_POWER; /*      0x758 - 0x75c      */
2963  volatile u_int32_t RBIST_RX_IQ; /*      0x75c - 0x760      */
2964  volatile u_int32_t RBIST_RX_I2Q2; /*      0x760 - 0x764      */
2965  volatile u_int32_t RBIST_RX_HPF; /*      0x764 - 0x768      */
2966  volatile u_int32_t RBIST_RX_RESULT_Q; /*      0x768 - 0x76c      */
2967  volatile u_int32_t RBIST_RX_RESULT_I; /*      0x76c - 0x770      */
2968  volatile u_int32_t CAL_EN; /*      0x770 - 0x774      */
2969  volatile u_int32_t CAL_CONFIG; /*      0x774 - 0x778      */
2970  volatile u_int32_t PASSIVE_RXIQ; /*      0x778 - 0x77c      */
2971  volatile u_int32_t TX_CORR1; /*      0x77c - 0x780      */
2972  volatile u_int32_t TX_CORR2; /*      0x780 - 0x784      */
2973  volatile u_int32_t TX_CORR3; /*      0x784 - 0x788      */
2974  volatile u_int32_t TX_CORR4; /*      0x788 - 0x78c      */
2975  volatile u_int32_t RX_IQCORR_0; /*      0x78c - 0x790      */
2976  volatile u_int32_t RX_IQCORR_1; /*      0x790 - 0x794      */
2977  volatile u_int32_t RX_IQCORR_2; /*      0x794 - 0x798      */
2978  volatile u_int32_t RX_IQCORR_3; /*      0x798 - 0x79c      */
2979  volatile u_int32_t CAL_MEAS_I2_L; /*      0x79c - 0x7a0      */
2980  volatile u_int32_t CAL_MEAS_I2_U; /*      0x7a0 - 0x7a4      */
2981  volatile u_int32_t CAL_MEAS_IQ_L; /*      0x7a4 - 0x7a8      */
2982  volatile u_int32_t CAL_MEAS_IQ_U; /*      0x7a8 - 0x7ac      */
2983  volatile u_int32_t CAL_MEAS_Q2_L; /*      0x7ac - 0x7b0      */
2984  volatile u_int32_t CAL_MEAS_Q2_U; /*      0x7b0 - 0x7b4      */
2985  volatile u_int32_t CAP_SFT_DEBUG; /*      0x7b4 - 0x7b8      */
2986  volatile u_int32_t RX_NOTCH_0; /*      0x7b8 - 0x7bc      */
2987  volatile u_int32_t RX_NOTCH_1; /*      0x7bc - 0x7c0      */
2988  volatile u_int32_t RX_NOTCH_2; /*      0x7c0 - 0x7c4      */
2989  volatile u_int32_t RX_NOTCH_INDEX_0; /*      0x7c4 - 0x7c8      */
2990  volatile u_int32_t RX_NOTCH_INDEX_1; /*      0x7c8 - 0x7cc      */
2991  volatile u_int32_t RX_NOTCH_INDEX_2; /*      0x7cc - 0x7d0      */
2992  volatile u_int32_t RX_NOTCH_INDEX_3; /*      0x7d0 - 0x7d4      */
2993  volatile u_int32_t RX_NOTCH_INDEX_4; /*      0x7d4 - 0x7d8      */
2994  volatile u_int32_t RX_NOTCH_INDEX_5; /*      0x7d8 - 0x7dc      */
2995  volatile u_int32_t RX_NOTCH_INDEX_6; /*      0x7dc - 0x7e0      */
2996  volatile u_int32_t RX_NOTCH_INDEX_7; /*      0x7e0 - 0x7e4      */
2997  volatile u_int32_t RX_NOTCH_PARAMS_0; /*      0x7e4 - 0x7e8      */
2998  volatile u_int32_t RX_NOTCH_PARAMS_1; /*      0x7e8 - 0x7ec      */
2999  volatile u_int32_t RX_NOTCH_PARAMS_2; /*      0x7ec - 0x7f0      */
3000  volatile u_int32_t RX_NOTCH_PARAMS_3; /*      0x7f0 - 0x7f4      */
3001  volatile u_int32_t RX_NOTCH_PARAMS_4; /*      0x7f4 - 0x7f8      */
3002  volatile u_int32_t RX_NOTCH_PARAMS_5; /*      0x7f8 - 0x7fc      */
3003  volatile u_int32_t RX_NOTCH_PARAMS_6; /*      0x7fc - 0x800      */
3004  volatile u_int32_t CHNASS_CTRL; /*      0x800 - 0x804      */
3005  volatile u_int32_t CHNASS_SETUP_0; /*      0x804 - 0x808      */
3006  volatile u_int32_t CHNASS_SETUP_1; /*      0x808 - 0x80c      */
3007  volatile u_int32_t CHNASS_SETUP_2; /*      0x80c - 0x810      */
3008  volatile u_int32_t CHNASS_SETUP_3; /*      0x810 - 0x814      */
3009  volatile u_int32_t CHNASS_RSSI_0; /*      0x814 - 0x818      */
3010  volatile u_int32_t CHNASS_RSSI_1; /*      0x818 - 0x81c      */
3011  volatile u_int32_t SW_CTRL; /*      0x81c - 0x820      */
3012  volatile u_int32_t JUPITER_CTRL; /*      0x820 - 0x824      */
3013  volatile u_int32_t JUPITER_GAIN; /*      0x824 - 0x828      */
3014  volatile u_int32_t AGC_HIST_SETUP; /*      0x828 - 0x82c      */
3015  volatile u_int32_t AGC_HIST_BANK_0; /*      0x82c - 0x830      */
3016  volatile u_int32_t AGC_HIST_BANK_1; /*      0x830 - 0x834      */
3017  volatile u_int32_t AGC_HIST_BANK_2; /*      0x834 - 0x838      */
3018  volatile u_int32_t AGC_HIST_BANK_3; /*      0x838 - 0x83c      */
3019  volatile u_int32_t AGC_HIST_BANK_4; /*      0x83c - 0x840      */
3020  volatile u_int32_t SPARE; /*      0x840 - 0x844      */
3021};
3022
3023struct jupiter_reg_map__le_dma_reg_csr {
3024  volatile u_int32_t LE_DMA_MASTER; /*        0x0 - 0x4        */
3025  volatile u_int32_t LE_DMA_TX_CONTROL; /*        0x4 - 0x8        */
3026  volatile u_int32_t LE_DMA_RX_CONTROL; /*        0x8 - 0xc        */
3027  volatile u_int32_t LE_DMA_TX_HW; /*        0xc - 0x10       */
3028  volatile u_int32_t LE_DMA_RX_HW; /*       0x10 - 0x14       */
3029  volatile u_int32_t LE_DMA_INT_STATUS; /*       0x14 - 0x18       */
3030  volatile u_int32_t LE_DMA_TX_STATUS; /*       0x18 - 0x1c       */
3031  volatile u_int32_t LE_DMA_TX_STATUS_W1TC; /*       0x1c - 0x20       */
3032  volatile u_int32_t LE_DMA_TX_ENABLE; /*       0x20 - 0x24       */
3033  volatile u_int32_t LE_DMA_RX_STATUS; /*       0x24 - 0x28       */
3034  volatile u_int32_t LE_DMA_RX_STATUS_W1TC; /*       0x28 - 0x2c       */
3035  volatile u_int32_t LE_DMA_RX_ENABLE; /*       0x2c - 0x30       */
3036  volatile u_int32_t LE_DMA_DEBUG; /*       0x30 - 0x34       */
3037  volatile u_int32_t LE_DMA_DUMMY; /*       0x34 - 0x38       */
3038};
3039
3040struct jupiter_reg_map__le_reg_csr {
3041  volatile u_int32_t LE_PUBLIC_ADDRESS_L; /*        0x0 - 0x4        */
3042  volatile u_int32_t LE_PUBLIC_ADDRESS_U; /*        0x4 - 0x8        */
3043  volatile u_int32_t LE_RANDOM_ADDRESS_L; /*        0x8 - 0xc        */
3044  volatile u_int32_t LE_RANDOM_ADDRESS_U; /*        0xc - 0x10       */
3045  volatile u_int32_t LE_DEV_PARAM; /*       0x10 - 0x14       */
3046  volatile u_int32_t COMMAND1; /*       0x14 - 0x18       */
3047  volatile u_int32_t COMMAND2; /*       0x18 - 0x1c       */
3048  volatile u_int32_t COMMAND3; /*       0x1c - 0x20       */
3049  volatile u_int32_t COMMAND4; /*       0x20 - 0x24       */
3050  volatile u_int32_t COMMAND5; /*       0x24 - 0x28       */
3051  volatile u_int32_t COMMAND6; /*       0x28 - 0x2c       */
3052  volatile u_int32_t COMMAND7; /*       0x2c - 0x30       */
3053  volatile u_int32_t COMMAND8; /*       0x30 - 0x34       */
3054  volatile u_int32_t COMMAND9; /*       0x34 - 0x38       */
3055  volatile u_int32_t COMMAND10; /*       0x38 - 0x3c       */
3056  volatile u_int32_t COMMAND11; /*       0x3c - 0x40       */
3057  volatile u_int32_t COMMAND12; /*       0x40 - 0x44       */
3058  volatile u_int32_t COMMAND13; /*       0x44 - 0x48       */
3059  volatile u_int32_t LE_ABORT; /*       0x48 - 0x4c       */
3060  volatile u_int32_t LE_RX_STATUS1; /*       0x4c - 0x50       */
3061  volatile u_int32_t LE_RX_STATUS2; /*       0x50 - 0x54       */
3062  volatile u_int32_t LE_RX_STATUS3; /*       0x54 - 0x58       */
3063  volatile u_int32_t LE_RX_STATUS4; /*       0x58 - 0x5c       */
3064  volatile u_int32_t LE_RX_STATUS5; /*       0x5c - 0x60       */
3065  volatile u_int32_t LE_RX_STATUS6; /*       0x60 - 0x64       */
3066  volatile u_int32_t LE_RX_STATUS7; /*       0x64 - 0x68       */
3067  volatile u_int32_t LE_RX_STATUS8; /*       0x68 - 0x6c       */
3068  volatile u_int32_t LE_RX_STATUS9; /*       0x6c - 0x70       */
3069  volatile u_int32_t LE_INTERRUPT_EN; /*       0x70 - 0x74       */
3070  volatile u_int32_t LE_INTERRUPT; /*       0x74 - 0x78       */
3071  volatile u_int32_t LE_DATAPATH_CNTL; /*       0x78 - 0x7c       */
3072  volatile u_int32_t LE_BT_CLOCK0; /*       0x7c - 0x80       */
3073  volatile u_int32_t LE_BT_CLOCK1; /*       0x80 - 0x84       */
3074  volatile u_int32_t LE_SYM_TIME0; /*       0x84 - 0x88       */
3075  volatile u_int32_t LE_SYM_TIME1; /*       0x88 - 0x8c       */
3076  volatile u_int32_t LE_TIMER0; /*       0x8c - 0x90       */
3077  volatile u_int32_t LE_TIMER0_FRAME; /*       0x90 - 0x94       */
3078  volatile u_int32_t LE_TIMER1; /*       0x94 - 0x98       */
3079  volatile u_int32_t LE_TIMER1_FRAME; /*       0x98 - 0x9c       */
3080  volatile u_int32_t LE_WL_TABLE[256]; /*       0x9c - 0x49c      */
3081  volatile u_int32_t LE_TIM; /*      0x49c - 0x4a0      */
3082  volatile u_int32_t TX_ERROR_GENERATION; /*      0x4a0 - 0x4a4      */
3083  volatile u_int32_t LE_FREQ_MAP0; /*      0x4a4 - 0x4a8      */
3084  volatile u_int32_t LE_FREQ_MAP1; /*      0x4a8 - 0x4ac      */
3085  volatile u_int32_t LE_FREQ_MAP2; /*      0x4ac - 0x4b0      */
3086  volatile u_int32_t LE_FREQ_MAP3; /*      0x4b0 - 0x4b4      */
3087  volatile u_int32_t LE_FREQ_MAP4; /*      0x4b4 - 0x4b8      */
3088  volatile u_int32_t LE_FREQ_MAP5; /*      0x4b8 - 0x4bc      */
3089  volatile u_int32_t LE_FREQ_MAP6; /*      0x4bc - 0x4c0      */
3090  volatile u_int32_t LE_FREQ_MAP7; /*      0x4c0 - 0x4c4      */
3091  volatile u_int32_t LE_FREQ_MAP8; /*      0x4c4 - 0x4c8      */
3092  volatile u_int32_t LE_FREQ_MAP9; /*      0x4c8 - 0x4cc      */
3093  volatile u_int32_t LE_DEBUG_CTRL; /*      0x4cc - 0x4d0      */
3094  volatile u_int32_t LE_DEBUG_OBS; /*      0x4d0 - 0x4d4      */
3095  volatile u_int32_t LE_PHY_ERR; /*      0x4d4 - 0x4d8      */
3096  volatile u_int32_t LE_PHY_ERR_0; /*      0x4d8 - 0x4dc      */
3097  volatile u_int32_t LE_PHY_ERR_1; /*      0x4dc - 0x4e0      */
3098  volatile u_int32_t LE_PHY_ERR_2; /*      0x4e0 - 0x4e4      */
3099  volatile u_int32_t LE_PHY_ERR_3; /*      0x4e4 - 0x4e8      */
3100  volatile u_int32_t LE_PHY_ERR_4; /*      0x4e8 - 0x4ec      */
3101  volatile u_int32_t LE_DUMMY; /*      0x4ec - 0x4f0      */
3102};
3103
3104struct jupiter_reg_map__apb_map_csr {
3105  volatile char pad__0[0x4000]; /*        0x0 - 0x4000     */
3106  struct jupiter_reg_map__rtc_reg_csr rtc; /*     0x4000 - 0x4134     */
3107  volatile char pad__1[0x3ecc]; /*     0x4134 - 0x8000     */
3108  struct jupiter_reg_map__vmc_reg_csr vmc; /*     0x8000 - 0x8620     */
3109  volatile char pad__2[0x39e0]; /*     0x8620 - 0xc000     */
3110  struct jupiter_reg_map__apb_map_csr__uart_reg_csr uart;
3111                                                  /*     0xc000 - 0xc014     */
3112  volatile char pad__3[0x3fec]; /*     0xc014 - 0x10000    */
3113  struct jupiter_reg_map__si_reg_csr si; /*    0x10000 - 0x10018    */
3114  volatile char pad__4[0x3fe8]; /*    0x10018 - 0x14000    */
3115  struct jupiter_reg_map__gpio_reg_csr gpio; /*    0x14000 - 0x14098    */
3116  volatile char pad__5[0x3f68]; /*    0x14098 - 0x18000    */
3117  struct jupiter_reg_map__mbox_reg_csr mbox; /*    0x18000 - 0x1809c    */
3118  volatile char pad__6[0x3f64]; /*    0x1809c - 0x1c000    */
3119  struct jupiter_reg_map__lc_dma_reg_csr lc_dma; /*    0x1c000 - 0x1c034    */
3120  volatile char pad__7[0x3fcc]; /*    0x1c034 - 0x20000    */
3121  struct jupiter_reg_map__lc_reg_csr lc; /*    0x20000 - 0x2052c    */
3122  volatile char pad__8[0x2ad4]; /*    0x2052c - 0x23000    */
3123  struct jupiter_reg_map__analog_intf_athr_wlan_reg_csr analog;
3124                                                  /*    0x23000 - 0x23a90    */
3125  volatile char pad__9[0x570]; /*    0x23a90 - 0x24000    */
3126  struct jupiter_reg_map__efuse_reg efuse; /*    0x24000 - 0x25f40    */
3127  volatile char pad__10[0xc0]; /*    0x25f40 - 0x26000    */
3128  struct jupiter_reg_map__modem_reg_csr modem; /*    0x26000 - 0x26844    */
3129  volatile char pad__11[0x37bc]; /*    0x26844 - 0x2a000    */
3130  struct jupiter_reg_map__le_dma_reg_csr le_dma; /*    0x2a000 - 0x2a038    */
3131  volatile char pad__12[0x1fc8]; /*    0x2a038 - 0x2c000    */
3132  struct jupiter_reg_map__le_reg_csr le; /*    0x2c000 - 0x2c4f0    */
3133};
3134
3135struct bt_apb_reg {
3136  volatile char pad__0[0x40000]; /*        0x0 - 0x40000    */
3137  struct jupiter_reg_map__apb_map_csr bt_apb_map_block;
3138                                                  /*    0x40000 - 0x6c800    */
3139};
3140
3141struct osprey_reg_map {
3142  struct mac_dma_reg mac_dma_reg_block; /*        0x0 - 0x108      */
3143  volatile char pad__0; /*      0x108 - 0x0        */
3144  struct mac_qcu_reg mac_qcu_reg_block; /*        0x0 - 0x24c      */
3145  volatile char pad__1; /*      0x24c - 0x0        */
3146  struct mac_dcu_reg mac_dcu_reg_block; /*        0x0 - 0x7fc      */
3147  volatile char pad__2; /*      0x7fc - 0x0        */
3148  struct host_intf_reg host_intf_reg_block; /*        0x0 - 0xf4       */
3149  volatile char pad__3; /*       0xf4 - 0x0        */
3150  struct emulation_misc_regs emulation_misc_reg_block;
3151                                                  /*        0x0 - 0x30       */
3152  volatile char pad__4; /*      Osprey: 0x30 - 0x0        */
3153  struct DWC_pcie_dbi_axi DWC_pcie_dbi_axi_block; /*      Osprey: 0x0  - 0x818      */
3154  volatile char pad__5; /*      0x818 - 0x0        */
3155  struct rtc_reg rtc_reg_block; /*      Osprey: 0x0  - 0x3c, Poseidon: 0x0  - 0x40       */
3156  volatile char pad__6; /*      Osprey: 0x3c - 0x0,  Poseidon: 0x40 - 0x0        */
3157  struct rtc_sync_reg rtc_sync_reg_block; /*        0x0 - 0x1c       */
3158  volatile char pad__7; /*       0x1c - 0x0        */
3159  struct merlin2_0_radio_reg_map merlin2_0_radio_reg_map;
3160                                                  /*        0x0 - 0x9c       */
3161  volatile char pad__8; /*       0x9c - 0x0        */
3162  struct analog_intf_reg_csr analog_intf_reg_csr_block;
3163                                                  /*        0x0 - 0x10       */
3164  volatile char pad__9; /*       0x10 - 0x0        */
3165  struct mac_pcu_reg mac_pcu_reg_block; /*        0x0 - 0x8000     */
3166  volatile char pad__10; /*     0x8000 - 0x0        */
3167  struct bb_reg_map bb_reg_block; /*        0x0 - 0x4000     */
3168  volatile char pad__11; /*     0x4000 - 0x0        */
3169  struct svd_reg svd_reg_block; /*        0x0 - 0x2c00     */
3170  volatile char pad__12; /*     0x2c00 - 0x0        */
3171  struct efuse_reg_WLAN efuse_reg_block; /*        0x0 - 0x1f40     */
3172  volatile char pad__13; /*     0x1f40 - 0x0        */
3173  struct radio65_reg radio65_reg_block; /*     Osprey:   0x0 - 0xbd8, Poseidon: 0x0   - 0x3d8      */
3174  volatile char pad__14; /*     Osprey: 0xbd8 - 0x0,   Poseidon: 0x3d8 - 0x0        */
3175  struct pmu_reg pmu_reg_block; /*     Osprey:   0x0 - 0x8        */
3176  volatile char pad__15; /*     Osprey:   0x8 - 0x0        */
3177  struct pcie_phy_reg_csr pcie_phy_reg_block; /*        0x0 - 0xc        */
3178  volatile char pad__16; /*        0xc - 0x0        */
3179  struct wlan_coex_reg wlan_coex_reg_block; /*        0x0 - 0x264      */
3180  volatile char pad__17; /*      0x264 - 0x0        */
3181  struct wlan_bt_glb_reg_pcie glb_reg_block; /*        0x0 - 0x400      */
3182  volatile char pad__18; /*      0x400 - 0x0        */
3183  struct bt_apb_reg bt_apb_reg_block; /*     Jupiter:  0x0 - 0x2c800    */
3184};
3185
3186#endif /* __REG_OSPREY_REG_MAP_H__ */
3187