1 /*
2
3 Broadcom B43 wireless driver
4 IEEE 802.11n PHY data tables
5
6 Copyright (c) 2008 Michael Buesch <m@bues.ch>
7 Copyright (c) 2010 Rafał Miłecki <zajec5@gmail.com>
8
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
13
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; see the file COPYING. If not, write to
21 the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor,
22 Boston, MA 02110-1301, USA.
23
24 */
25
26 /*
27 * $FreeBSD$
28 */
29
30 #ifndef __IF_BWN_RADIO_2057_H__
31 #define __IF_BWN_RADIO_2057_H__
32
33 #define R2057_DACBUF_VINCM_CORE0 0x000
34 #define R2057_IDCODE 0x001
35 #define R2057_RCCAL_MASTER 0x002
36 #define R2057_RCCAL_CAP_SIZE 0x003
37 #define R2057_RCAL_CONFIG 0x004
38 #define R2057_GPAIO_CONFIG 0x005
39 #define R2057_GPAIO_SEL1 0x006
40 #define R2057_GPAIO_SEL0 0x007
41 #define R2057_CLPO_CONFIG 0x008
42 #define R2057_BANDGAP_CONFIG 0x009
43 #define R2057_BANDGAP_RCAL_TRIM 0x00a
44 #define R2057_AFEREG_CONFIG 0x00b
45 #define R2057_TEMPSENSE_CONFIG 0x00c
46 #define R2057_XTAL_CONFIG1 0x00d
47 #define R2057_XTAL_ICORE_SIZE 0x00e
48 #define R2057_XTAL_BUF_SIZE 0x00f
49 #define R2057_XTAL_PULLCAP_SIZE 0x010
50 #define R2057_RFPLL_MASTER 0x011
51 #define R2057_VCOMONITOR_VTH_L 0x012
52 #define R2057_VCOMONITOR_VTH_H 0x013
53 #define R2057_VCOCAL_BIASRESET_RFPLLREG_VOUT 0x014
54 #define R2057_VCO_VARCSIZE_IDAC 0x015
55 #define R2057_VCOCAL_COUNTVAL0 0x016
56 #define R2057_VCOCAL_COUNTVAL1 0x017
57 #define R2057_VCOCAL_INTCLK_COUNT 0x018
58 #define R2057_VCOCAL_MASTER 0x019
59 #define R2057_VCOCAL_NUMCAPCHANGE 0x01a
60 #define R2057_VCOCAL_WINSIZE 0x01b
61 #define R2057_VCOCAL_DELAY_AFTER_REFRESH 0x01c
62 #define R2057_VCOCAL_DELAY_AFTER_CLOSELOOP 0x01d
63 #define R2057_VCOCAL_DELAY_AFTER_OPENLOOP 0x01e
64 #define R2057_VCOCAL_DELAY_BEFORE_OPENLOOP 0x01f
65 #define R2057_VCO_FORCECAPEN_FORCECAP1 0x020
66 #define R2057_VCO_FORCECAP0 0x021
67 #define R2057_RFPLL_REFMASTER_SPAREXTALSIZE 0x022
68 #define R2057_RFPLL_PFD_RESET_PW 0x023
69 #define R2057_RFPLL_LOOPFILTER_R2 0x024
70 #define R2057_RFPLL_LOOPFILTER_R1 0x025
71 #define R2057_RFPLL_LOOPFILTER_C3 0x026
72 #define R2057_RFPLL_LOOPFILTER_C2 0x027
73 #define R2057_RFPLL_LOOPFILTER_C1 0x028
74 #define R2057_CP_KPD_IDAC 0x029
75 #define R2057_RFPLL_IDACS 0x02a
76 #define R2057_RFPLL_MISC_EN 0x02b
77 #define R2057_RFPLL_MMD0 0x02c
78 #define R2057_RFPLL_MMD1 0x02d
79 #define R2057_RFPLL_MISC_CAL_RESETN 0x02e
80 #define R2057_JTAGXTAL_SIZE_CPBIAS_FILTRES 0x02f
81 #define R2057_VCO_ALCREF_BBPLLXTAL_SIZE 0x030
82 #define R2057_VCOCAL_READCAP0 0x031
83 #define R2057_VCOCAL_READCAP1 0x032
84 #define R2057_VCOCAL_STATUS 0x033
85 #define R2057_LOGEN_PUS 0x034
86 #define R2057_LOGEN_PTAT_RESETS 0x035
87 #define R2057_VCOBUF_IDACS 0x036
88 #define R2057_VCOBUF_TUNE 0x037
89 #define R2057_CMOSBUF_TX2GQ_IDACS 0x038
90 #define R2057_CMOSBUF_TX2GI_IDACS 0x039
91 #define R2057_CMOSBUF_TX5GQ_IDACS 0x03a
92 #define R2057_CMOSBUF_TX5GI_IDACS 0x03b
93 #define R2057_CMOSBUF_RX2GQ_IDACS 0x03c
94 #define R2057_CMOSBUF_RX2GI_IDACS 0x03d
95 #define R2057_CMOSBUF_RX5GQ_IDACS 0x03e
96 #define R2057_CMOSBUF_RX5GI_IDACS 0x03f
97 #define R2057_LOGEN_MX2G_IDACS 0x040
98 #define R2057_LOGEN_MX2G_TUNE 0x041
99 #define R2057_LOGEN_MX5G_IDACS 0x042
100 #define R2057_LOGEN_MX5G_TUNE 0x043
101 #define R2057_LOGEN_MX5G_RCCR 0x044
102 #define R2057_LOGEN_INDBUF2G_IDAC 0x045
103 #define R2057_LOGEN_INDBUF2G_IBOOST 0x046
104 #define R2057_LOGEN_INDBUF2G_TUNE 0x047
105 #define R2057_LOGEN_INDBUF5G_IDAC 0x048
106 #define R2057_LOGEN_INDBUF5G_IBOOST 0x049
107 #define R2057_LOGEN_INDBUF5G_TUNE 0x04a
108 #define R2057_CMOSBUF_TX_RCCR 0x04b
109 #define R2057_CMOSBUF_RX_RCCR 0x04c
110 #define R2057_LOGEN_SEL_PKDET 0x04d
111 #define R2057_CMOSBUF_SHAREIQ_PTAT 0x04e
112
113 /* MISC core 0 */
114 #define R2057_RXTXBIAS_CONFIG_CORE0 0x04f
115 #define R2057_TXGM_TXRF_PUS_CORE0 0x050
116 #define R2057_TXGM_IDAC_BLEED_CORE0 0x051
117 #define R2057_TXGM_GAIN_CORE0 0x056
118 #define R2057_TXGM2G_PKDET_PUS_CORE0 0x057
119 #define R2057_PAD2G_PTATS_CORE0 0x058
120 #define R2057_PAD2G_IDACS_CORE0 0x059
121 #define R2057_PAD2G_BOOST_PU_CORE0 0x05a
122 #define R2057_PAD2G_CASCV_GAIN_CORE0 0x05b
123 #define R2057_TXMIX2G_TUNE_BOOST_PU_CORE0 0x05c
124 #define R2057_TXMIX2G_LODC_CORE0 0x05d
125 #define R2057_PAD2G_TUNE_PUS_CORE0 0x05e
126 #define R2057_IPA2G_GAIN_CORE0 0x05f
127 #define R2057_TSSI2G_SPARE1_CORE0 0x060
128 #define R2057_TSSI2G_SPARE2_CORE0 0x061
129 #define R2057_IPA2G_TUNEV_CASCV_PTAT_CORE0 0x062
130 #define R2057_IPA2G_IMAIN_CORE0 0x063
131 #define R2057_IPA2G_CASCONV_CORE0 0x064
132 #define R2057_IPA2G_CASCOFFV_CORE0 0x065
133 #define R2057_IPA2G_BIAS_FILTER_CORE0 0x066
134 #define R2057_TX5G_PKDET_CORE0 0x069
135 #define R2057_PGA_PTAT_TXGM5G_PU_CORE0 0x06a
136 #define R2057_PAD5G_PTATS1_CORE0 0x06b
137 #define R2057_PAD5G_CLASS_PTATS2_CORE0 0x06c
138 #define R2057_PGA_BOOSTPTAT_IMAIN_CORE0 0x06d
139 #define R2057_PAD5G_CASCV_IMAIN_CORE0 0x06e
140 #define R2057_TXMIX5G_IBOOST_PAD_IAUX_CORE0 0x06f
141 #define R2057_PGA_BOOST_TUNE_CORE0 0x070
142 #define R2057_PGA_GAIN_CORE0 0x071
143 #define R2057_PAD5G_CASCOFFV_GAIN_PUS_CORE0 0x072
144 #define R2057_TXMIX5G_BOOST_TUNE_CORE0 0x073
145 #define R2057_PAD5G_TUNE_MISC_PUS_CORE0 0x074
146 #define R2057_IPA5G_IAUX_CORE0 0x075
147 #define R2057_IPA5G_GAIN_CORE0 0x076
148 #define R2057_TSSI5G_SPARE1_CORE0 0x077
149 #define R2057_TSSI5G_SPARE2_CORE0 0x078
150 #define R2057_IPA5G_CASCOFFV_PU_CORE0 0x079
151 #define R2057_IPA5G_PTAT_CORE0 0x07a
152 #define R2057_IPA5G_IMAIN_CORE0 0x07b
153 #define R2057_IPA5G_CASCONV_CORE0 0x07c
154 #define R2057_IPA5G_BIAS_FILTER_CORE0 0x07d
155 #define R2057_PAD_BIAS_FILTER_BWS_CORE0 0x080
156 #define R2057_TR2G_CONFIG1_CORE0_NU 0x081
157 #define R2057_TR2G_CONFIG2_CORE0_NU 0x082
158 #define R2057_LNA5G_RFEN_CORE0 0x083
159 #define R2057_TR5G_CONFIG2_CORE0_NU 0x084
160 #define R2057_RXRFBIAS_IBOOST_PU_CORE0 0x085
161 #define R2057_RXRF_IABAND_RXGM_IMAIN_PTAT_CORE0 0x086
162 #define R2057_RXGM_CMFBITAIL_AUXPTAT_CORE0 0x087
163 #define R2057_RXMIX_ICORE_RXGM_IAUX_CORE0 0x088
164 #define R2057_RXMIX_CMFBITAIL_PU_CORE0 0x089
165 #define R2057_LNA2_IMAIN_PTAT_PU_CORE0 0x08a
166 #define R2057_LNA2_IAUX_PTAT_CORE0 0x08b
167 #define R2057_LNA1_IMAIN_PTAT_PU_CORE0 0x08c
168 #define R2057_LNA15G_INPUT_MATCH_TUNE_CORE0 0x08d
169 #define R2057_RXRFBIAS_BANDSEL_CORE0 0x08e
170 #define R2057_TIA_CONFIG_CORE0 0x08f
171 #define R2057_TIA_IQGAIN_CORE0 0x090
172 #define R2057_TIA_IBIAS2_CORE0 0x091
173 #define R2057_TIA_IBIAS1_CORE0 0x092
174 #define R2057_TIA_SPARE_Q_CORE0 0x093
175 #define R2057_TIA_SPARE_I_CORE0 0x094
176 #define R2057_RXMIX2G_PUS_CORE0 0x095
177 #define R2057_RXMIX2G_VCMREFS_CORE0 0x096
178 #define R2057_RXMIX2G_LODC_QI_CORE0 0x097
179 #define R2057_W12G_BW_LNA2G_PUS_CORE0 0x098
180 #define R2057_LNA2G_GAIN_CORE0 0x099
181 #define R2057_LNA2G_TUNE_CORE0 0x09a
182 #define R2057_RXMIX5G_PUS_CORE0 0x09b
183 #define R2057_RXMIX5G_VCMREFS_CORE0 0x09c
184 #define R2057_RXMIX5G_LODC_QI_CORE0 0x09d
185 #define R2057_W15G_BW_LNA5G_PUS_CORE0 0x09e
186 #define R2057_LNA5G_GAIN_CORE0 0x09f
187 #define R2057_LNA5G_TUNE_CORE0 0x0a0
188 #define R2057_LPFSEL_TXRX_RXBB_PUS_CORE0 0x0a1
189 #define R2057_RXBB_BIAS_MASTER_CORE0 0x0a2
190 #define R2057_RXBB_VGABUF_IDACS_CORE0 0x0a3
191 #define R2057_LPF_VCMREF_TXBUF_VCMREF_CORE0 0x0a4
192 #define R2057_TXBUF_VINCM_CORE0 0x0a5
193 #define R2057_TXBUF_IDACS_CORE0 0x0a6
194 #define R2057_LPF_RESP_RXBUF_BW_CORE0 0x0a7
195 #define R2057_RXBB_CC_CORE0 0x0a8
196 #define R2057_RXBB_SPARE3_CORE0 0x0a9
197 #define R2057_RXBB_RCCAL_HPC_CORE0 0x0aa
198 #define R2057_LPF_IDACS_CORE0 0x0ab
199 #define R2057_LPFBYP_DCLOOP_BYP_IDAC_CORE0 0x0ac
200 #define R2057_TXBUF_GAIN_CORE0 0x0ad
201 #define R2057_AFELOOPBACK_AACI_RESP_CORE0 0x0ae
202 #define R2057_RXBUF_DEGEN_CORE0 0x0af
203 #define R2057_RXBB_SPARE2_CORE0 0x0b0
204 #define R2057_RXBB_SPARE1_CORE0 0x0b1
205 #define R2057_RSSI_MASTER_CORE0 0x0b2
206 #define R2057_W2_MASTER_CORE0 0x0b3
207 #define R2057_NB_MASTER_CORE0 0x0b4
208 #define R2057_W2_IDACS0_Q_CORE0 0x0b5
209 #define R2057_W2_IDACS1_Q_CORE0 0x0b6
210 #define R2057_W2_IDACS0_I_CORE0 0x0b7
211 #define R2057_W2_IDACS1_I_CORE0 0x0b8
212 #define R2057_RSSI_GPAIOSEL_W1_IDACS_CORE0 0x0b9
213 #define R2057_NB_IDACS_Q_CORE0 0x0ba
214 #define R2057_NB_IDACS_I_CORE0 0x0bb
215 #define R2057_BACKUP4_CORE0 0x0c1
216 #define R2057_BACKUP3_CORE0 0x0c2
217 #define R2057_BACKUP2_CORE0 0x0c3
218 #define R2057_BACKUP1_CORE0 0x0c4
219 #define R2057_SPARE16_CORE0 0x0c5
220 #define R2057_SPARE15_CORE0 0x0c6
221 #define R2057_SPARE14_CORE0 0x0c7
222 #define R2057_SPARE13_CORE0 0x0c8
223 #define R2057_SPARE12_CORE0 0x0c9
224 #define R2057_SPARE11_CORE0 0x0ca
225 #define R2057_TX2G_BIAS_RESETS_CORE0 0x0cb
226 #define R2057_TX5G_BIAS_RESETS_CORE0 0x0cc
227 #define R2057_IQTEST_SEL_PU 0x0cd
228 #define R2057_XTAL_CONFIG2 0x0ce
229 #define R2057_BUFS_MISC_LPFBW_CORE0 0x0cf
230 #define R2057_TXLPF_RCCAL_CORE0 0x0d0
231 #define R2057_RXBB_GPAIOSEL_RXLPF_RCCAL_CORE0 0x0d1
232 #define R2057_LPF_GAIN_CORE0 0x0d2
233 #define R2057_DACBUF_IDACS_BW_CORE0 0x0d3
234
235 /* MISC core 1 */
236 #define R2057_RXTXBIAS_CONFIG_CORE1 0x0d4
237 #define R2057_TXGM_TXRF_PUS_CORE1 0x0d5
238 #define R2057_TXGM_IDAC_BLEED_CORE1 0x0d6
239 #define R2057_TXGM_GAIN_CORE1 0x0db
240 #define R2057_TXGM2G_PKDET_PUS_CORE1 0x0dc
241 #define R2057_PAD2G_PTATS_CORE1 0x0dd
242 #define R2057_PAD2G_IDACS_CORE1 0x0de
243 #define R2057_PAD2G_BOOST_PU_CORE1 0x0df
244 #define R2057_PAD2G_CASCV_GAIN_CORE1 0x0e0
245 #define R2057_TXMIX2G_TUNE_BOOST_PU_CORE1 0x0e1
246 #define R2057_TXMIX2G_LODC_CORE1 0x0e2
247 #define R2057_PAD2G_TUNE_PUS_CORE1 0x0e3
248 #define R2057_IPA2G_GAIN_CORE1 0x0e4
249 #define R2057_TSSI2G_SPARE1_CORE1 0x0e5
250 #define R2057_TSSI2G_SPARE2_CORE1 0x0e6
251 #define R2057_IPA2G_TUNEV_CASCV_PTAT_CORE1 0x0e7
252 #define R2057_IPA2G_IMAIN_CORE1 0x0e8
253 #define R2057_IPA2G_CASCONV_CORE1 0x0e9
254 #define R2057_IPA2G_CASCOFFV_CORE1 0x0ea
255 #define R2057_IPA2G_BIAS_FILTER_CORE1 0x0eb
256 #define R2057_TX5G_PKDET_CORE1 0x0ee
257 #define R2057_PGA_PTAT_TXGM5G_PU_CORE1 0x0ef
258 #define R2057_PAD5G_PTATS1_CORE1 0x0f0
259 #define R2057_PAD5G_CLASS_PTATS2_CORE1 0x0f1
260 #define R2057_PGA_BOOSTPTAT_IMAIN_CORE1 0x0f2
261 #define R2057_PAD5G_CASCV_IMAIN_CORE1 0x0f3
262 #define R2057_TXMIX5G_IBOOST_PAD_IAUX_CORE1 0x0f4
263 #define R2057_PGA_BOOST_TUNE_CORE1 0x0f5
264 #define R2057_PGA_GAIN_CORE1 0x0f6
265 #define R2057_PAD5G_CASCOFFV_GAIN_PUS_CORE1 0x0f7
266 #define R2057_TXMIX5G_BOOST_TUNE_CORE1 0x0f8
267 #define R2057_PAD5G_TUNE_MISC_PUS_CORE1 0x0f9
268 #define R2057_IPA5G_IAUX_CORE1 0x0fa
269 #define R2057_IPA5G_GAIN_CORE1 0x0fb
270 #define R2057_TSSI5G_SPARE1_CORE1 0x0fc
271 #define R2057_TSSI5G_SPARE2_CORE1 0x0fd
272 #define R2057_IPA5G_CASCOFFV_PU_CORE1 0x0fe
273 #define R2057_IPA5G_PTAT_CORE1 0x0ff
274 #define R2057_IPA5G_IMAIN_CORE1 0x100
275 #define R2057_IPA5G_CASCONV_CORE1 0x101
276 #define R2057_IPA5G_BIAS_FILTER_CORE1 0x102
277 #define R2057_PAD_BIAS_FILTER_BWS_CORE1 0x105
278 #define R2057_TR2G_CONFIG1_CORE1_NU 0x106
279 #define R2057_TR2G_CONFIG2_CORE1_NU 0x107
280 #define R2057_LNA5G_RFEN_CORE1 0x108
281 #define R2057_TR5G_CONFIG2_CORE1_NU 0x109
282 #define R2057_RXRFBIAS_IBOOST_PU_CORE1 0x10a
283 #define R2057_RXRF_IABAND_RXGM_IMAIN_PTAT_CORE1 0x10b
284 #define R2057_RXGM_CMFBITAIL_AUXPTAT_CORE1 0x10c
285 #define R2057_RXMIX_ICORE_RXGM_IAUX_CORE1 0x10d
286 #define R2057_RXMIX_CMFBITAIL_PU_CORE1 0x10e
287 #define R2057_LNA2_IMAIN_PTAT_PU_CORE1 0x10f
288 #define R2057_LNA2_IAUX_PTAT_CORE1 0x110
289 #define R2057_LNA1_IMAIN_PTAT_PU_CORE1 0x111
290 #define R2057_LNA15G_INPUT_MATCH_TUNE_CORE1 0x112
291 #define R2057_RXRFBIAS_BANDSEL_CORE1 0x113
292 #define R2057_TIA_CONFIG_CORE1 0x114
293 #define R2057_TIA_IQGAIN_CORE1 0x115
294 #define R2057_TIA_IBIAS2_CORE1 0x116
295 #define R2057_TIA_IBIAS1_CORE1 0x117
296 #define R2057_TIA_SPARE_Q_CORE1 0x118
297 #define R2057_TIA_SPARE_I_CORE1 0x119
298 #define R2057_RXMIX2G_PUS_CORE1 0x11a
299 #define R2057_RXMIX2G_VCMREFS_CORE1 0x11b
300 #define R2057_RXMIX2G_LODC_QI_CORE1 0x11c
301 #define R2057_W12G_BW_LNA2G_PUS_CORE1 0x11d
302 #define R2057_LNA2G_GAIN_CORE1 0x11e
303 #define R2057_LNA2G_TUNE_CORE1 0x11f
304 #define R2057_RXMIX5G_PUS_CORE1 0x120
305 #define R2057_RXMIX5G_VCMREFS_CORE1 0x121
306 #define R2057_RXMIX5G_LODC_QI_CORE1 0x122
307 #define R2057_W15G_BW_LNA5G_PUS_CORE1 0x123
308 #define R2057_LNA5G_GAIN_CORE1 0x124
309 #define R2057_LNA5G_TUNE_CORE1 0x125
310 #define R2057_LPFSEL_TXRX_RXBB_PUS_CORE1 0x126
311 #define R2057_RXBB_BIAS_MASTER_CORE1 0x127
312 #define R2057_RXBB_VGABUF_IDACS_CORE1 0x128
313 #define R2057_LPF_VCMREF_TXBUF_VCMREF_CORE1 0x129
314 #define R2057_TXBUF_VINCM_CORE1 0x12a
315 #define R2057_TXBUF_IDACS_CORE1 0x12b
316 #define R2057_LPF_RESP_RXBUF_BW_CORE1 0x12c
317 #define R2057_RXBB_CC_CORE1 0x12d
318 #define R2057_RXBB_SPARE3_CORE1 0x12e
319 #define R2057_RXBB_RCCAL_HPC_CORE1 0x12f
320 #define R2057_LPF_IDACS_CORE1 0x130
321 #define R2057_LPFBYP_DCLOOP_BYP_IDAC_CORE1 0x131
322 #define R2057_TXBUF_GAIN_CORE1 0x132
323 #define R2057_AFELOOPBACK_AACI_RESP_CORE1 0x133
324 #define R2057_RXBUF_DEGEN_CORE1 0x134
325 #define R2057_RXBB_SPARE2_CORE1 0x135
326 #define R2057_RXBB_SPARE1_CORE1 0x136
327 #define R2057_RSSI_MASTER_CORE1 0x137
328 #define R2057_W2_MASTER_CORE1 0x138
329 #define R2057_NB_MASTER_CORE1 0x139
330 #define R2057_W2_IDACS0_Q_CORE1 0x13a
331 #define R2057_W2_IDACS1_Q_CORE1 0x13b
332 #define R2057_W2_IDACS0_I_CORE1 0x13c
333 #define R2057_W2_IDACS1_I_CORE1 0x13d
334 #define R2057_RSSI_GPAIOSEL_W1_IDACS_CORE1 0x13e
335 #define R2057_NB_IDACS_Q_CORE1 0x13f
336 #define R2057_NB_IDACS_I_CORE1 0x140
337 #define R2057_BACKUP4_CORE1 0x146
338 #define R2057_BACKUP3_CORE1 0x147
339 #define R2057_BACKUP2_CORE1 0x148
340 #define R2057_BACKUP1_CORE1 0x149
341 #define R2057_SPARE16_CORE1 0x14a
342 #define R2057_SPARE15_CORE1 0x14b
343 #define R2057_SPARE14_CORE1 0x14c
344 #define R2057_SPARE13_CORE1 0x14d
345 #define R2057_SPARE12_CORE1 0x14e
346 #define R2057_SPARE11_CORE1 0x14f
347 #define R2057_TX2G_BIAS_RESETS_CORE1 0x150
348 #define R2057_TX5G_BIAS_RESETS_CORE1 0x151
349 #define R2057_SPARE8_CORE1 0x152
350 #define R2057_SPARE7_CORE1 0x153
351 #define R2057_BUFS_MISC_LPFBW_CORE1 0x154
352 #define R2057_TXLPF_RCCAL_CORE1 0x155
353 #define R2057_RXBB_GPAIOSEL_RXLPF_RCCAL_CORE1 0x156
354 #define R2057_LPF_GAIN_CORE1 0x157
355 #define R2057_DACBUF_IDACS_BW_CORE1 0x158
356
357 #define R2057_DACBUF_VINCM_CORE1 0x159
358 #define R2057_RCCAL_START_R1_Q1_P1 0x15a
359 #define R2057_RCCAL_X1 0x15b
360 #define R2057_RCCAL_TRC0 0x15c
361 #define R2057_RCCAL_TRC1 0x15d
362 #define R2057_RCCAL_DONE_OSCCAP 0x15e
363 #define R2057_RCCAL_N0_0 0x15f
364 #define R2057_RCCAL_N0_1 0x160
365 #define R2057_RCCAL_N1_0 0x161
366 #define R2057_RCCAL_N1_1 0x162
367 #define R2057_RCAL_STATUS 0x163
368 #define R2057_XTALPUOVR_PINCTRL 0x164
369 #define R2057_OVR_REG0 0x165
370 #define R2057_OVR_REG1 0x166
371 #define R2057_OVR_REG2 0x167
372 #define R2057_OVR_REG3 0x168
373 #define R2057_OVR_REG4 0x169
374 #define R2057_RCCAL_SCAP_VAL 0x16a
375 #define R2057_RCCAL_BCAP_VAL 0x16b
376 #define R2057_RCCAL_HPC_VAL 0x16c
377 #define R2057_RCCAL_OVERRIDES 0x16d
378
379 /* TX core 0 */
380 #define R2057_TX0_IQCAL_GAIN_BW 0x170
381 #define R2057_TX0_LOFT_FINE_I 0x171
382 #define R2057_TX0_LOFT_FINE_Q 0x172
383 #define R2057_TX0_LOFT_COARSE_I 0x173
384 #define R2057_TX0_LOFT_COARSE_Q 0x174
385 #define R2057_TX0_TX_SSI_MASTER 0x175
386 #define R2057_TX0_IQCAL_VCM_HG 0x176
387 #define R2057_TX0_IQCAL_IDAC 0x177
388 #define R2057_TX0_TSSI_VCM 0x178
389 #define R2057_TX0_TX_SSI_MUX 0x179
390 #define R2057_TX0_TSSIA 0x17a
391 #define R2057_TX0_TSSIG 0x17b
392 #define R2057_TX0_TSSI_MISC1 0x17c
393 #define R2057_TX0_TXRXCOUPLE_2G_ATTEN 0x17d
394 #define R2057_TX0_TXRXCOUPLE_2G_PWRUP 0x17e
395 #define R2057_TX0_TXRXCOUPLE_5G_ATTEN 0x17f
396 #define R2057_TX0_TXRXCOUPLE_5G_PWRUP 0x180
397
398 /* TX core 1 */
399 #define R2057_TX1_IQCAL_GAIN_BW 0x190
400 #define R2057_TX1_LOFT_FINE_I 0x191
401 #define R2057_TX1_LOFT_FINE_Q 0x192
402 #define R2057_TX1_LOFT_COARSE_I 0x193
403 #define R2057_TX1_LOFT_COARSE_Q 0x194
404 #define R2057_TX1_TX_SSI_MASTER 0x195
405 #define R2057_TX1_IQCAL_VCM_HG 0x196
406 #define R2057_TX1_IQCAL_IDAC 0x197
407 #define R2057_TX1_TSSI_VCM 0x198
408 #define R2057_TX1_TX_SSI_MUX 0x199
409 #define R2057_TX1_TSSIA 0x19a
410 #define R2057_TX1_TSSIG 0x19b
411 #define R2057_TX1_TSSI_MISC1 0x19c
412 #define R2057_TX1_TXRXCOUPLE_2G_ATTEN 0x19d
413 #define R2057_TX1_TXRXCOUPLE_2G_PWRUP 0x19e
414 #define R2057_TX1_TXRXCOUPLE_5G_ATTEN 0x19f
415 #define R2057_TX1_TXRXCOUPLE_5G_PWRUP 0x1a0
416
417 #define R2057_AFE_VCM_CAL_MASTER_CORE0 0x1a1
418 #define R2057_AFE_SET_VCM_I_CORE0 0x1a2
419 #define R2057_AFE_SET_VCM_Q_CORE0 0x1a3
420 #define R2057_AFE_STATUS_VCM_IQADC_CORE0 0x1a4
421 #define R2057_AFE_STATUS_VCM_I_CORE0 0x1a5
422 #define R2057_AFE_STATUS_VCM_Q_CORE0 0x1a6
423 #define R2057_AFE_VCM_CAL_MASTER_CORE1 0x1a7
424 #define R2057_AFE_SET_VCM_I_CORE1 0x1a8
425 #define R2057_AFE_SET_VCM_Q_CORE1 0x1a9
426 #define R2057_AFE_STATUS_VCM_IQADC_CORE1 0x1aa
427 #define R2057_AFE_STATUS_VCM_I_CORE1 0x1ab
428 #define R2057_AFE_STATUS_VCM_Q_CORE1 0x1ac
429
430 #define R2057v7_DACBUF_VINCM_CORE0 0x1ad
431 #define R2057v7_RCCAL_MASTER 0x1ae
432 #define R2057v7_TR2G_CONFIG3_CORE0_NU 0x1af
433 #define R2057v7_TR2G_CONFIG3_CORE1_NU 0x1b0
434 #define R2057v7_LOGEN_PUS1 0x1b1
435 #define R2057v7_OVR_REG5 0x1b2
436 #define R2057v7_OVR_REG6 0x1b3
437 #define R2057v7_OVR_REG7 0x1b4
438 #define R2057v7_OVR_REG8 0x1b5
439 #define R2057v7_OVR_REG9 0x1b6
440 #define R2057v7_OVR_REG10 0x1b7
441 #define R2057v7_OVR_REG11 0x1b8
442 #define R2057v7_OVR_REG12 0x1b9
443 #define R2057v7_OVR_REG13 0x1ba
444 #define R2057v7_OVR_REG14 0x1bb
445 #define R2057v7_OVR_REG15 0x1bc
446 #define R2057v7_OVR_REG16 0x1bd
447 #define R2057v7_OVR_REG1 0x1be
448 #define R2057v7_OVR_REG18 0x1bf
449 #define R2057v7_OVR_REG19 0x1c0
450 #define R2057v7_OVR_REG20 0x1c1
451 #define R2057v7_OVR_REG21 0x1c2
452 #define R2057v7_OVR_REG2 0x1c3
453 #define R2057v7_OVR_REG23 0x1c4
454 #define R2057v7_OVR_REG24 0x1c5
455 #define R2057v7_OVR_REG25 0x1c6
456 #define R2057v7_OVR_REG26 0x1c7
457 #define R2057v7_OVR_REG27 0x1c8
458 #define R2057v7_OVR_REG28 0x1c9
459 #define R2057v7_IQTEST_SEL_PU2 0x1ca
460
461 #define R2057_VCM_MASK 0x7
462
463 struct bwn_nphy_chantabent_rev7 {
464 /* The channel frequency in MHz */
465 uint16_t freq;
466 /* Radio regs values on channelswitch */
467 uint8_t radio_vcocal_countval0;
468 uint8_t radio_vcocal_countval1;
469 uint8_t radio_rfpll_refmaster_sparextalsize;
470 uint8_t radio_rfpll_loopfilter_r1;
471 uint8_t radio_rfpll_loopfilter_c2;
472 uint8_t radio_rfpll_loopfilter_c1;
473 uint8_t radio_cp_kpd_idac;
474 uint8_t radio_rfpll_mmd0;
475 uint8_t radio_rfpll_mmd1;
476 uint8_t radio_vcobuf_tune;
477 uint8_t radio_logen_mx2g_tune;
478 uint8_t radio_logen_mx5g_tune;
479 uint8_t radio_logen_indbuf2g_tune;
480 uint8_t radio_logen_indbuf5g_tune;
481 uint8_t radio_txmix2g_tune_boost_pu_core0;
482 uint8_t radio_pad2g_tune_pus_core0;
483 uint8_t radio_pga_boost_tune_core0;
484 uint8_t radio_txmix5g_boost_tune_core0;
485 uint8_t radio_pad5g_tune_misc_pus_core0;
486 uint8_t radio_lna2g_tune_core0;
487 uint8_t radio_lna5g_tune_core0;
488 uint8_t radio_txmix2g_tune_boost_pu_core1;
489 uint8_t radio_pad2g_tune_pus_core1;
490 uint8_t radio_pga_boost_tune_core1;
491 uint8_t radio_txmix5g_boost_tune_core1;
492 uint8_t radio_pad5g_tune_misc_pus_core1;
493 uint8_t radio_lna2g_tune_core1;
494 uint8_t radio_lna5g_tune_core1;
495 /* PHY res values on channelswitch */
496 struct bwn_phy_n_sfo_cfg phy_regs;
497 };
498
499 struct bwn_nphy_chantabent_rev7_2g {
500 /* The channel frequency in MHz */
501 uint16_t freq;
502 /* Radio regs values on channelswitch */
503 uint8_t radio_vcocal_countval0;
504 uint8_t radio_vcocal_countval1;
505 uint8_t radio_rfpll_refmaster_sparextalsize;
506 uint8_t radio_rfpll_loopfilter_r1;
507 uint8_t radio_rfpll_loopfilter_c2;
508 uint8_t radio_rfpll_loopfilter_c1;
509 uint8_t radio_cp_kpd_idac;
510 uint8_t radio_rfpll_mmd0;
511 uint8_t radio_rfpll_mmd1;
512 uint8_t radio_vcobuf_tune;
513 uint8_t radio_logen_mx2g_tune;
514 uint8_t radio_logen_indbuf2g_tune;
515 uint8_t radio_txmix2g_tune_boost_pu_core0;
516 uint8_t radio_pad2g_tune_pus_core0;
517 uint8_t radio_lna2g_tune_core0;
518 uint8_t radio_txmix2g_tune_boost_pu_core1;
519 uint8_t radio_pad2g_tune_pus_core1;
520 uint8_t radio_lna2g_tune_core1;
521 /* PHY regs values on channelswitch */
522 struct bwn_phy_n_sfo_cfg phy_regs;
523 };
524
525 void r2057_upload_inittabs(struct bwn_mac *mac);
526
527 void r2057_get_chantabent_rev7(struct bwn_mac *mac, uint16_t freq,
528 const struct bwn_nphy_chantabent_rev7 **tabent_r7,
529 const struct bwn_nphy_chantabent_rev7_2g **tabent_r7_2g);
530
531 #endif /* IF_BWN_RADIO_2057_H_ */
Cache object: 2b0e4597139d645df37e0a90c931c121
|