1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3
4  Broadcom B43 wireless driver
5  IEEE 802.11n PHY and radio device data tables
6
7  Copyright (c) 2008 Michael Buesch <m@bues.ch>
8  Copyright (c) 2010 Rafa�� Mi��ecki <zajec5@gmail.com>
9
10
11*/
12
13#include "b43.h"
14#include "radio_2055.h"
15#include "phy_common.h"
16
17struct b2055_inittab_entry {
18	/* Value to write if we use the 5GHz band. */
19	u16 ghz5;
20	/* Value to write if we use the 2.4GHz band. */
21	u16 ghz2;
22	/* Flags */
23	u8 flags;
24#define B2055_INITTAB_ENTRY_OK	0x01
25#define B2055_INITTAB_UPLOAD	0x02
26};
27#define UPLOAD		.flags = B2055_INITTAB_ENTRY_OK | B2055_INITTAB_UPLOAD
28#define NOUPLOAD	.flags = B2055_INITTAB_ENTRY_OK
29
30static const struct b2055_inittab_entry b2055_inittab [] = {
31  [B2055_SP_PINPD]		= { .ghz5 = 0x0080, .ghz2 = 0x0080, NOUPLOAD, },
32  [B2055_C1_SP_RSSI]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
33  [B2055_C1_SP_PDMISC]		= { .ghz5 = 0x0027, .ghz2 = 0x0027, NOUPLOAD, },
34  [B2055_C2_SP_RSSI]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
35  [B2055_C2_SP_PDMISC]		= { .ghz5 = 0x0027, .ghz2 = 0x0027, NOUPLOAD, },
36  [B2055_C1_SP_RXGC1]		= { .ghz5 = 0x007F, .ghz2 = 0x007F, UPLOAD, },
37  [B2055_C1_SP_RXGC2]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, UPLOAD, },
38  [B2055_C2_SP_RXGC1]		= { .ghz5 = 0x007F, .ghz2 = 0x007F, UPLOAD, },
39  [B2055_C2_SP_RXGC2]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, UPLOAD, },
40  [B2055_C1_SP_LPFBWSEL]	= { .ghz5 = 0x0015, .ghz2 = 0x0015, NOUPLOAD, },
41  [B2055_C2_SP_LPFBWSEL]	= { .ghz5 = 0x0015, .ghz2 = 0x0015, NOUPLOAD, },
42  [B2055_C1_SP_TXGC1]		= { .ghz5 = 0x004F, .ghz2 = 0x004F, UPLOAD, },
43  [B2055_C1_SP_TXGC2]		= { .ghz5 = 0x0005, .ghz2 = 0x0005, UPLOAD, },
44  [B2055_C2_SP_TXGC1]		= { .ghz5 = 0x004F, .ghz2 = 0x004F, UPLOAD, },
45  [B2055_C2_SP_TXGC2]		= { .ghz5 = 0x0005, .ghz2 = 0x0005, UPLOAD, },
46  [B2055_MASTER1]		= { .ghz5 = 0x00D0, .ghz2 = 0x00D0, NOUPLOAD, },
47  [B2055_MASTER2]		= { .ghz5 = 0x0002, .ghz2 = 0x0002, NOUPLOAD, },
48  [B2055_PD_LGEN]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
49  [B2055_PD_PLLTS]		= { .ghz5 = 0x0040, .ghz2 = 0x0040, NOUPLOAD, },
50  [B2055_C1_PD_LGBUF]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
51  [B2055_C1_PD_TX]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
52  [B2055_C1_PD_RXTX]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
53  [B2055_C1_PD_RSSIMISC]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
54  [B2055_C2_PD_LGBUF]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
55  [B2055_C2_PD_TX]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
56  [B2055_C2_PD_RXTX]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
57  [B2055_C2_PD_RSSIMISC]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
58  [B2055_PWRDET_LGEN]		= { .ghz5 = 0x00C0, .ghz2 = 0x00C0, NOUPLOAD, },
59  [B2055_C1_PWRDET_LGBUF]	= { .ghz5 = 0x00FF, .ghz2 = 0x00FF, NOUPLOAD, },
60  [B2055_C1_PWRDET_RXTX]	= { .ghz5 = 0x00C0, .ghz2 = 0x00C0, NOUPLOAD, },
61  [B2055_C2_PWRDET_LGBUF]	= { .ghz5 = 0x00FF, .ghz2 = 0x00FF, NOUPLOAD, },
62  [B2055_C2_PWRDET_RXTX]	= { .ghz5 = 0x00C0, .ghz2 = 0x00C0, NOUPLOAD, },
63  [B2055_RRCCAL_CS]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
64  [B2055_RRCCAL_NOPTSEL]	= { .ghz5 = 0x002C, .ghz2 = 0x002C, NOUPLOAD, },
65  [B2055_CAL_MISC]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
66  [B2055_CAL_COUT]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
67  [B2055_CAL_COUT2]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
68  [B2055_CAL_CVARCTL]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
69  [B2055_CAL_RVARCTL]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
70  [B2055_CAL_LPOCTL]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
71  [B2055_CAL_TS]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
72  [B2055_CAL_RCCALRTS]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
73  [B2055_CAL_RCALRTS]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
74  [B2055_PADDRV]		= { .ghz5 = 0x00A4, .ghz2 = 0x00A4, NOUPLOAD, },
75  [B2055_XOCTL1]		= { .ghz5 = 0x0038, .ghz2 = 0x0038, NOUPLOAD, },
76  [B2055_XOCTL2]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
77  [B2055_XOREGUL]		= { .ghz5 = 0x0004, .ghz2 = 0x0004, UPLOAD, },
78  [B2055_XOMISC]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
79  [B2055_PLL_LFC1]		= { .ghz5 = 0x000A, .ghz2 = 0x000A, NOUPLOAD, },
80  [B2055_PLL_CALVTH]		= { .ghz5 = 0x0087, .ghz2 = 0x0087, NOUPLOAD, },
81  [B2055_PLL_LFC2]		= { .ghz5 = 0x0009, .ghz2 = 0x0009, NOUPLOAD, },
82  [B2055_PLL_REF]		= { .ghz5 = 0x0070, .ghz2 = 0x0070, NOUPLOAD, },
83  [B2055_PLL_LFR1]		= { .ghz5 = 0x0011, .ghz2 = 0x0011, NOUPLOAD, },
84  [B2055_PLL_PFDCP]		= { .ghz5 = 0x0018, .ghz2 = 0x0018, UPLOAD, },
85  [B2055_PLL_IDAC_CPOPAMP]	= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
86  [B2055_PLL_CPREG]		= { .ghz5 = 0x0004, .ghz2 = 0x0004, UPLOAD, },
87  [B2055_PLL_RCAL]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
88  [B2055_RF_PLLMOD0]		= { .ghz5 = 0x009E, .ghz2 = 0x009E, NOUPLOAD, },
89  [B2055_RF_PLLMOD1]		= { .ghz5 = 0x0009, .ghz2 = 0x0009, NOUPLOAD, },
90  [B2055_RF_MMDIDAC1]		= { .ghz5 = 0x00C8, .ghz2 = 0x00C8, UPLOAD, },
91  [B2055_RF_MMDIDAC0]		= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
92  [B2055_RF_MMDSP]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
93  [B2055_VCO_CAL1]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
94  [B2055_VCO_CAL2]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
95  [B2055_VCO_CAL3]		= { .ghz5 = 0x0001, .ghz2 = 0x0001, NOUPLOAD, },
96  [B2055_VCO_CAL4]		= { .ghz5 = 0x0002, .ghz2 = 0x0002, NOUPLOAD, },
97  [B2055_VCO_CAL5]		= { .ghz5 = 0x0096, .ghz2 = 0x0096, NOUPLOAD, },
98  [B2055_VCO_CAL6]		= { .ghz5 = 0x003E, .ghz2 = 0x003E, NOUPLOAD, },
99  [B2055_VCO_CAL7]		= { .ghz5 = 0x003E, .ghz2 = 0x003E, NOUPLOAD, },
100  [B2055_VCO_CAL8]		= { .ghz5 = 0x0013, .ghz2 = 0x0013, NOUPLOAD, },
101  [B2055_VCO_CAL9]		= { .ghz5 = 0x0002, .ghz2 = 0x0002, NOUPLOAD, },
102  [B2055_VCO_CAL10]		= { .ghz5 = 0x0015, .ghz2 = 0x0015, NOUPLOAD, },
103  [B2055_VCO_CAL11]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, NOUPLOAD, },
104  [B2055_VCO_CAL12]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
105  [B2055_VCO_CAL13]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
106  [B2055_VCO_CAL14]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
107  [B2055_VCO_CAL15]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
108  [B2055_VCO_CAL16]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
109  [B2055_VCO_KVCO]		= { .ghz5 = 0x0008, .ghz2 = 0x0008, NOUPLOAD, },
110  [B2055_VCO_CAPTAIL]		= { .ghz5 = 0x0008, .ghz2 = 0x0008, NOUPLOAD, },
111  [B2055_VCO_IDACVCO]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
112  [B2055_VCO_REG]		= { .ghz5 = 0x0084, .ghz2 = 0x0084, UPLOAD, },
113  [B2055_PLL_RFVTH]		= { .ghz5 = 0x00C3, .ghz2 = 0x00C3, NOUPLOAD, },
114  [B2055_LGBUF_CENBUF]		= { .ghz5 = 0x008F, .ghz2 = 0x008F, NOUPLOAD, },
115  [B2055_LGEN_TUNE1]		= { .ghz5 = 0x00FF, .ghz2 = 0x00FF, NOUPLOAD, },
116  [B2055_LGEN_TUNE2]		= { .ghz5 = 0x00FF, .ghz2 = 0x00FF, NOUPLOAD, },
117  [B2055_LGEN_IDAC1]		= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
118  [B2055_LGEN_IDAC2]		= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
119  [B2055_LGEN_BIASC]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
120  [B2055_LGEN_BIASIDAC]		= { .ghz5 = 0x00CC, .ghz2 = 0x00CC, NOUPLOAD, },
121  [B2055_LGEN_RCAL]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
122  [B2055_LGEN_DIV]		= { .ghz5 = 0x0080, .ghz2 = 0x0080, NOUPLOAD, },
123  [B2055_LGEN_SPARE2]		= { .ghz5 = 0x0080, .ghz2 = 0x0080, NOUPLOAD, },
124  [B2055_C1_LGBUF_ATUNE]	= { .ghz5 = 0x00F8, .ghz2 = 0x00F8, NOUPLOAD, },
125  [B2055_C1_LGBUF_GTUNE]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
126  [B2055_C1_LGBUF_DIV]		= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
127  [B2055_C1_LGBUF_AIDAC]	= { .ghz5 = 0x0088, .ghz2 = 0x0008, UPLOAD, },
128  [B2055_C1_LGBUF_GIDAC]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
129  [B2055_C1_LGBUF_IDACFO]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
130  [B2055_C1_LGBUF_SPARE]	= { .ghz5 = 0x0001, .ghz2 = 0x0001, UPLOAD, },
131  [B2055_C1_RX_RFSPC1]		= { .ghz5 = 0x008A, .ghz2 = 0x008A, NOUPLOAD, },
132  [B2055_C1_RX_RFR1]		= { .ghz5 = 0x0008, .ghz2 = 0x0008, NOUPLOAD, },
133  [B2055_C1_RX_RFR2]		= { .ghz5 = 0x0083, .ghz2 = 0x0083, NOUPLOAD, },
134  [B2055_C1_RX_RFRCAL]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
135  [B2055_C1_RX_BB_BLCMP]	= { .ghz5 = 0x00A0, .ghz2 = 0x00A0, NOUPLOAD, },
136  [B2055_C1_RX_BB_LPF]		= { .ghz5 = 0x000A, .ghz2 = 0x000A, NOUPLOAD, },
137  [B2055_C1_RX_BB_MIDACHP]	= { .ghz5 = 0x0087, .ghz2 = 0x0087, UPLOAD, },
138  [B2055_C1_RX_BB_VGA1IDAC]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
139  [B2055_C1_RX_BB_VGA2IDAC]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
140  [B2055_C1_RX_BB_VGA3IDAC]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
141  [B2055_C1_RX_BB_BUFOCTL]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
142  [B2055_C1_RX_BB_RCCALCTL]	= { .ghz5 = 0x0018, .ghz2 = 0x0018, NOUPLOAD, },
143  [B2055_C1_RX_BB_RSSICTL1]	= { .ghz5 = 0x006A, .ghz2 = 0x006A, UPLOAD, },
144  [B2055_C1_RX_BB_RSSICTL2]	= { .ghz5 = 0x00AB, .ghz2 = 0x00AB, UPLOAD, },
145  [B2055_C1_RX_BB_RSSICTL3]	= { .ghz5 = 0x0013, .ghz2 = 0x0013, UPLOAD, },
146  [B2055_C1_RX_BB_RSSICTL4]	= { .ghz5 = 0x00C1, .ghz2 = 0x00C1, UPLOAD, },
147  [B2055_C1_RX_BB_RSSICTL5]	= { .ghz5 = 0x00AA, .ghz2 = 0x00AA, UPLOAD, },
148  [B2055_C1_RX_BB_REG]		= { .ghz5 = 0x0087, .ghz2 = 0x0087, UPLOAD, },
149  [B2055_C1_RX_BB_SPARE1]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
150  [B2055_C1_RX_TXBBRCAL]	= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
151  [B2055_C1_TX_RF_SPGA]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, NOUPLOAD, },
152  [B2055_C1_TX_RF_SPAD]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, NOUPLOAD, },
153  [B2055_C1_TX_RF_CNTPGA1]	= { .ghz5 = 0x0015, .ghz2 = 0x0015, NOUPLOAD, },
154  [B2055_C1_TX_RF_CNTPAD1]	= { .ghz5 = 0x0055, .ghz2 = 0x0055, NOUPLOAD, },
155  [B2055_C1_TX_RF_PGAIDAC]	= { .ghz5 = 0x0097, .ghz2 = 0x0097, UPLOAD, },
156  [B2055_C1_TX_PGAPADTN]	= { .ghz5 = 0x0008, .ghz2 = 0x0008, NOUPLOAD, },
157  [B2055_C1_TX_PADIDAC1]	= { .ghz5 = 0x0014, .ghz2 = 0x0014, UPLOAD, },
158  [B2055_C1_TX_PADIDAC2]	= { .ghz5 = 0x0033, .ghz2 = 0x0033, NOUPLOAD, },
159  [B2055_C1_TX_MXBGTRIM]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
160  [B2055_C1_TX_RF_RCAL]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
161  [B2055_C1_TX_RF_PADTSSI1]	= { .ghz5 = 0x0003, .ghz2 = 0x0003, UPLOAD, },
162  [B2055_C1_TX_RF_PADTSSI2]	= { .ghz5 = 0x000A, .ghz2 = 0x000A, NOUPLOAD, },
163  [B2055_C1_TX_RF_SPARE]	= { .ghz5 = 0x0003, .ghz2 = 0x0003, UPLOAD, },
164  [B2055_C1_TX_RF_IQCAL1]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
165  [B2055_C1_TX_RF_IQCAL2]	= { .ghz5 = 0x00A4, .ghz2 = 0x00A4, NOUPLOAD, },
166  [B2055_C1_TXBB_RCCAL]		= { .ghz5 = 0x0018, .ghz2 = 0x0018, NOUPLOAD, },
167  [B2055_C1_TXBB_LPF1]		= { .ghz5 = 0x0028, .ghz2 = 0x0028, NOUPLOAD, },
168  [B2055_C1_TX_VOSCNCL]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
169  [B2055_C1_TX_LPF_MXGMIDAC]	= { .ghz5 = 0x004A, .ghz2 = 0x004A, NOUPLOAD, },
170  [B2055_C1_TX_BB_MXGM]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
171  [B2055_C2_LGBUF_ATUNE]	= { .ghz5 = 0x00F8, .ghz2 = 0x00F8, NOUPLOAD, },
172  [B2055_C2_LGBUF_GTUNE]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
173  [B2055_C2_LGBUF_DIV]		= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
174  [B2055_C2_LGBUF_AIDAC]	= { .ghz5 = 0x0088, .ghz2 = 0x0008, UPLOAD, },
175  [B2055_C2_LGBUF_GIDAC]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
176  [B2055_C2_LGBUF_IDACFO]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
177  [B2055_C2_LGBUF_SPARE]	= { .ghz5 = 0x0001, .ghz2 = 0x0001, UPLOAD, },
178  [B2055_C2_RX_RFSPC1]		= { .ghz5 = 0x008A, .ghz2 = 0x008A, NOUPLOAD, },
179  [B2055_C2_RX_RFR1]		= { .ghz5 = 0x0008, .ghz2 = 0x0008, NOUPLOAD, },
180  [B2055_C2_RX_RFR2]		= { .ghz5 = 0x0083, .ghz2 = 0x0083, NOUPLOAD, },
181  [B2055_C2_RX_RFRCAL]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
182  [B2055_C2_RX_BB_BLCMP]	= { .ghz5 = 0x00A0, .ghz2 = 0x00A0, NOUPLOAD, },
183  [B2055_C2_RX_BB_LPF]		= { .ghz5 = 0x000A, .ghz2 = 0x000A, NOUPLOAD, },
184  [B2055_C2_RX_BB_MIDACHP]	= { .ghz5 = 0x0087, .ghz2 = 0x0087, UPLOAD, },
185  [B2055_C2_RX_BB_VGA1IDAC]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
186  [B2055_C2_RX_BB_VGA2IDAC]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
187  [B2055_C2_RX_BB_VGA3IDAC]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
188  [B2055_C2_RX_BB_BUFOCTL]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
189  [B2055_C2_RX_BB_RCCALCTL]	= { .ghz5 = 0x0018, .ghz2 = 0x0018, NOUPLOAD, },
190  [B2055_C2_RX_BB_RSSICTL1]	= { .ghz5 = 0x006A, .ghz2 = 0x006A, UPLOAD, },
191  [B2055_C2_RX_BB_RSSICTL2]	= { .ghz5 = 0x00AB, .ghz2 = 0x00AB, UPLOAD, },
192  [B2055_C2_RX_BB_RSSICTL3]	= { .ghz5 = 0x0013, .ghz2 = 0x0013, UPLOAD, },
193  [B2055_C2_RX_BB_RSSICTL4]	= { .ghz5 = 0x00C1, .ghz2 = 0x00C1, UPLOAD, },
194  [B2055_C2_RX_BB_RSSICTL5]	= { .ghz5 = 0x00AA, .ghz2 = 0x00AA, UPLOAD, },
195  [B2055_C2_RX_BB_REG]		= { .ghz5 = 0x0087, .ghz2 = 0x0087, UPLOAD, },
196  [B2055_C2_RX_BB_SPARE1]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
197  [B2055_C2_RX_TXBBRCAL]	= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
198  [B2055_C2_TX_RF_SPGA]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, NOUPLOAD, },
199  [B2055_C2_TX_RF_SPAD]		= { .ghz5 = 0x0007, .ghz2 = 0x0007, NOUPLOAD, },
200  [B2055_C2_TX_RF_CNTPGA1]	= { .ghz5 = 0x0015, .ghz2 = 0x0015, NOUPLOAD, },
201  [B2055_C2_TX_RF_CNTPAD1]	= { .ghz5 = 0x0055, .ghz2 = 0x0055, NOUPLOAD, },
202  [B2055_C2_TX_RF_PGAIDAC]	= { .ghz5 = 0x0097, .ghz2 = 0x0097, UPLOAD, },
203  [B2055_C2_TX_PGAPADTN]	= { .ghz5 = 0x0008, .ghz2 = 0x0008, NOUPLOAD, },
204  [B2055_C2_TX_PADIDAC1]	= { .ghz5 = 0x0014, .ghz2 = 0x0014, UPLOAD, },
205  [B2055_C2_TX_PADIDAC2]	= { .ghz5 = 0x0033, .ghz2 = 0x0033, NOUPLOAD, },
206  [B2055_C2_TX_MXBGTRIM]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
207  [B2055_C2_TX_RF_RCAL]		= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
208  [B2055_C2_TX_RF_PADTSSI1]	= { .ghz5 = 0x0003, .ghz2 = 0x0003, UPLOAD, },
209  [B2055_C2_TX_RF_PADTSSI2]	= { .ghz5 = 0x000A, .ghz2 = 0x000A, NOUPLOAD, },
210  [B2055_C2_TX_RF_SPARE]	= { .ghz5 = 0x0003, .ghz2 = 0x0003, UPLOAD, },
211  [B2055_C2_TX_RF_IQCAL1]	= { .ghz5 = 0x002A, .ghz2 = 0x002A, NOUPLOAD, },
212  [B2055_C2_TX_RF_IQCAL2]	= { .ghz5 = 0x00A4, .ghz2 = 0x00A4, NOUPLOAD, },
213  [B2055_C2_TXBB_RCCAL]		= { .ghz5 = 0x0018, .ghz2 = 0x0018, NOUPLOAD, },
214  [B2055_C2_TXBB_LPF1]		= { .ghz5 = 0x0028, .ghz2 = 0x0028, NOUPLOAD, },
215  [B2055_C2_TX_VOSCNCL]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
216  [B2055_C2_TX_LPF_MXGMIDAC]	= { .ghz5 = 0x004A, .ghz2 = 0x004A, NOUPLOAD, },
217  [B2055_C2_TX_BB_MXGM]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
218  [B2055_PRG_GCHP21]		= { .ghz5 = 0x0071, .ghz2 = 0x0071, NOUPLOAD, },
219  [B2055_PRG_GCHP22]		= { .ghz5 = 0x0072, .ghz2 = 0x0072, NOUPLOAD, },
220  [B2055_PRG_GCHP23]		= { .ghz5 = 0x0073, .ghz2 = 0x0073, NOUPLOAD, },
221  [B2055_PRG_GCHP24]		= { .ghz5 = 0x0074, .ghz2 = 0x0074, NOUPLOAD, },
222  [B2055_PRG_GCHP25]		= { .ghz5 = 0x0075, .ghz2 = 0x0075, NOUPLOAD, },
223  [B2055_PRG_GCHP26]		= { .ghz5 = 0x0076, .ghz2 = 0x0076, NOUPLOAD, },
224  [B2055_PRG_GCHP27]		= { .ghz5 = 0x0077, .ghz2 = 0x0077, NOUPLOAD, },
225  [B2055_PRG_GCHP28]		= { .ghz5 = 0x0078, .ghz2 = 0x0078, NOUPLOAD, },
226  [B2055_PRG_GCHP29]		= { .ghz5 = 0x0079, .ghz2 = 0x0079, NOUPLOAD, },
227  [B2055_PRG_GCHP30]		= { .ghz5 = 0x007A, .ghz2 = 0x007A, NOUPLOAD, },
228  [0xC7]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
229  [0xC8]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
230  [0xC9]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
231  [0xCA]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
232  [0xCB]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
233  [0xCC]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
234  [B2055_C1_LNA_GAINBST]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
235  [0xCE]			= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
236  [0xCF]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
237  [0xD0]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
238  [0xD1]			= { .ghz5 = 0x0018, .ghz2 = 0x0018, NOUPLOAD, },
239  [B2055_C1_B0NB_RSSIVCM]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
240  [0xD3]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
241  [0xD4]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
242  [0xD5]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
243  [B2055_C1_GENSPARE2]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
244  [0xD7]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
245  [0xD8]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
246  [B2055_C2_LNA_GAINBST]	= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
247  [0xDA]			= { .ghz5 = 0x0006, .ghz2 = 0x0006, NOUPLOAD, },
248  [0xDB]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
249  [0xDC]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
250  [0xDD]			= { .ghz5 = 0x0018, .ghz2 = 0x0018, NOUPLOAD, },
251  [B2055_C2_B0NB_RSSIVCM]	= { .ghz5 = 0x0088, .ghz2 = 0x0088, NOUPLOAD, },
252  [0xDF]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
253  [0xE0]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
254  [0xE1]			= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
255  [B2055_C2_GENSPARE2]		= { .ghz5 = 0x0000, .ghz2 = 0x0000, NOUPLOAD, },
256};
257
258#define RADIOREGS(r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, r10, r11, \
259		  r12, r13, r14, r15, r16, r17, r18, r19, r20, r21) \
260	.radio_pll_ref		= r0,	\
261	.radio_rf_pllmod0	= r1,	\
262	.radio_rf_pllmod1	= r2,	\
263	.radio_vco_captail	= r3,	\
264	.radio_vco_cal1		= r4,	\
265	.radio_vco_cal2		= r5,	\
266	.radio_pll_lfc1		= r6,	\
267	.radio_pll_lfr1		= r7,	\
268	.radio_pll_lfc2		= r8,	\
269	.radio_lgbuf_cenbuf	= r9,	\
270	.radio_lgen_tune1	= r10,	\
271	.radio_lgen_tune2	= r11,	\
272	.radio_c1_lgbuf_atune	= r12,	\
273	.radio_c1_lgbuf_gtune	= r13,	\
274	.radio_c1_rx_rfr1	= r14,	\
275	.radio_c1_tx_pgapadtn	= r15,	\
276	.radio_c1_tx_mxbgtrim	= r16,	\
277	.radio_c2_lgbuf_atune	= r17,	\
278	.radio_c2_lgbuf_gtune	= r18,	\
279	.radio_c2_rx_rfr1	= r19,	\
280	.radio_c2_tx_pgapadtn	= r20,	\
281	.radio_c2_tx_mxbgtrim	= r21
282
283#define PHYREGS(r0, r1, r2, r3, r4, r5)	\
284	.phy_regs.phy_bw1a	= r0,	\
285	.phy_regs.phy_bw2	= r1,	\
286	.phy_regs.phy_bw3	= r2,	\
287	.phy_regs.phy_bw4	= r3,	\
288	.phy_regs.phy_bw5	= r4,	\
289	.phy_regs.phy_bw6	= r5
290
291static const struct b43_nphy_channeltab_entry_rev2 b43_nphy_channeltab_rev2[] = {
292  {	.channel		= 184,
293	.freq			= 4920, /* MHz */
294	.unk2			= 3280,
295	RADIOREGS(0x71, 0xEC, 0x01, 0x0F, 0xFF, 0x01, 0x04, 0x0A,
296		  0x00, 0x8F, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0x0F,
297		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
298	PHYREGS(0x07B4, 0x07B0, 0x07AC, 0x0214, 0x0215, 0x0216),
299  },
300  {	.channel		= 186,
301	.freq			= 4930, /* MHz */
302	.unk2			= 3287,
303	RADIOREGS(0x71, 0xED, 0x01, 0x0F, 0xFF, 0x01, 0x04, 0x0A,
304		  0x00, 0x8F, 0xFF, 0xFF, 0xFF, 0x00, 0x0F, 0x0F,
305		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
306	PHYREGS(0x07B8, 0x07B4, 0x07B0, 0x0213, 0x0214, 0x0215),
307  },
308  {	.channel		= 188,
309	.freq			= 4940, /* MHz */
310	.unk2			= 3293,
311	RADIOREGS(0x71, 0xEE, 0x01, 0x0F, 0xFF, 0x01, 0x04, 0x0A,
312		  0x00, 0x8F, 0xEE, 0xEE, 0xFF, 0x00, 0x0F, 0x0F,
313		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
314	PHYREGS(0x07BC, 0x07B8, 0x07B4, 0x0212, 0x0213, 0x0214),
315  },
316  {	.channel		= 190,
317	.freq			= 4950, /* MHz */
318	.unk2			= 3300,
319	RADIOREGS(0x71, 0xEF, 0x01, 0x0F, 0xFF, 0x01, 0x04, 0x0A,
320		  0x00, 0x8F, 0xEE, 0xEE, 0xFF, 0x00, 0x0F, 0x0F,
321		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
322	PHYREGS(0x07C0, 0x07BC, 0x07B8, 0x0211, 0x0212, 0x0213),
323  },
324  {	.channel		= 192,
325	.freq			= 4960, /* MHz */
326	.unk2			= 3307,
327	RADIOREGS(0x71, 0xF0, 0x01, 0x0F, 0xFF, 0x01, 0x04, 0x0A,
328		  0x00, 0x8F, 0xEE, 0xEE, 0xFF, 0x00, 0x0F, 0x0F,
329		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
330	PHYREGS(0x07C4, 0x07C0, 0x07BC, 0x020F, 0x0211, 0x0212),
331  },
332  {	.channel		= 194,
333	.freq			= 4970, /* MHz */
334	.unk2			= 3313,
335	RADIOREGS(0x71, 0xF1, 0x01, 0x0F, 0xFF, 0x01, 0x04, 0x0A,
336		  0x00, 0x8F, 0xEE, 0xEE, 0xFF, 0x00, 0x0F, 0x0F,
337		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
338	PHYREGS(0x07C8, 0x07C4, 0x07C0, 0x020E, 0x020F, 0x0211),
339  },
340  {	.channel		= 196,
341	.freq			= 4980, /* MHz */
342	.unk2			= 3320,
343	RADIOREGS(0x71, 0xF2, 0x01, 0x0E, 0xFF, 0x01, 0x04, 0x0A,
344		  0x00, 0x8F, 0xDD, 0xDD, 0xFF, 0x00, 0x0F, 0x0F,
345		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
346	PHYREGS(0x07CC, 0x07C8, 0x07C4, 0x020D, 0x020E, 0x020F),
347  },
348  {	.channel		= 198,
349	.freq			= 4990, /* MHz */
350	.unk2			= 3327,
351	RADIOREGS(0x71, 0xF3, 0x01, 0x0E, 0xFF, 0x01, 0x04, 0x0A,
352		  0x00, 0x8F, 0xDD, 0xDD, 0xFF, 0x00, 0x0F, 0x0F,
353		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
354	PHYREGS(0x07D0, 0x07CC, 0x07C8, 0x020C, 0x020D, 0x020E),
355  },
356  {	.channel		= 200,
357	.freq			= 5000, /* MHz */
358	.unk2			= 3333,
359	RADIOREGS(0x71, 0xF4, 0x01, 0x0E, 0xFF, 0x01, 0x04, 0x0A,
360		  0x00, 0x8F, 0xDD, 0xDD, 0xFF, 0x00, 0x0F, 0x0F,
361		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
362	PHYREGS(0x07D4, 0x07D0, 0x07CC, 0x020B, 0x020C, 0x020D),
363  },
364  {	.channel		= 202,
365	.freq			= 5010, /* MHz */
366	.unk2			= 3340,
367	RADIOREGS(0x71, 0xF5, 0x01, 0x0E, 0xFF, 0x01, 0x04, 0x0A,
368		  0x00, 0x8F, 0xDD, 0xDD, 0xFF, 0x00, 0x0F, 0x0F,
369		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
370	PHYREGS(0x07D8, 0x07D4, 0x07D0, 0x020A, 0x020B, 0x020C),
371  },
372  {	.channel		= 204,
373	.freq			= 5020, /* MHz */
374	.unk2			= 3347,
375	RADIOREGS(0x71, 0xF6, 0x01, 0x0E, 0xF7, 0x01, 0x04, 0x0A,
376		  0x00, 0x8F, 0xCC, 0xCC, 0xFF, 0x00, 0x0F, 0x0F,
377		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
378	PHYREGS(0x07DC, 0x07D8, 0x07D4, 0x0209, 0x020A, 0x020B),
379  },
380  {	.channel		= 206,
381	.freq			= 5030, /* MHz */
382	.unk2			= 3353,
383	RADIOREGS(0x71, 0xF7, 0x01, 0x0E, 0xF7, 0x01, 0x04, 0x0A,
384		  0x00, 0x8F, 0xCC, 0xCC, 0xFF, 0x00, 0x0F, 0x0F,
385		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
386	PHYREGS(0x07E0, 0x07DC, 0x07D8, 0x0208, 0x0209, 0x020A),
387  },
388  {	.channel		= 208,
389	.freq			= 5040, /* MHz */
390	.unk2			= 3360,
391	RADIOREGS(0x71, 0xF8, 0x01, 0x0D, 0xEF, 0x01, 0x04, 0x0A,
392		  0x00, 0x8F, 0xCC, 0xCC, 0xFF, 0x00, 0x0F, 0x0F,
393		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
394	PHYREGS(0x07E4, 0x07E0, 0x07DC, 0x0207, 0x0208, 0x0209),
395  },
396  {	.channel		= 210,
397	.freq			= 5050, /* MHz */
398	.unk2			= 3367,
399	RADIOREGS(0x71, 0xF9, 0x01, 0x0D, 0xEF, 0x01, 0x04, 0x0A,
400		  0x00, 0x8F, 0xCC, 0xCC, 0xFF, 0x00, 0x0F, 0x0F,
401		  0x8F, 0xFF, 0x00, 0x0F, 0x0F, 0x8F),
402	PHYREGS(0x07E8, 0x07E4, 0x07E0, 0x0206, 0x0207, 0x0208),
403  },
404  {	.channel		= 212,
405	.freq			= 5060, /* MHz */
406	.unk2			= 3373,
407	RADIOREGS(0x71, 0xFA, 0x01, 0x0D, 0xE6, 0x01, 0x04, 0x0A,
408		  0x00, 0x8F, 0xBB, 0xBB, 0xFF, 0x00, 0x0E, 0x0F,
409		  0x8E, 0xFF, 0x00, 0x0E, 0x0F, 0x8E),
410	PHYREGS(0x07EC, 0x07E8, 0x07E4, 0x0205, 0x0206, 0x0207),
411  },
412  {	.channel		= 214,
413	.freq			= 5070, /* MHz */
414	.unk2			= 3380,
415	RADIOREGS(0x71, 0xFB, 0x01, 0x0D, 0xE6, 0x01, 0x04, 0x0A,
416		  0x00, 0x8F, 0xBB, 0xBB, 0xFF, 0x00, 0x0E, 0x0F,
417		  0x8E, 0xFF, 0x00, 0x0E, 0x0F, 0x8E),
418	PHYREGS(0x07F0, 0x07EC, 0x07E8, 0x0204, 0x0205, 0x0206),
419  },
420  {	.channel		= 216,
421	.freq			= 5080, /* MHz */
422	.unk2			= 3387,
423	RADIOREGS(0x71, 0xFC, 0x01, 0x0D, 0xDE, 0x01, 0x04, 0x0A,
424		  0x00, 0x8E, 0xBB, 0xBB, 0xEE, 0x00, 0x0E, 0x0F,
425		  0x8D, 0xEE, 0x00, 0x0E, 0x0F, 0x8D),
426	PHYREGS(0x07F4, 0x07F0, 0x07EC, 0x0203, 0x0204, 0x0205),
427  },
428  {	.channel		= 218,
429	.freq			= 5090, /* MHz */
430	.unk2			= 3393,
431	RADIOREGS(0x71, 0xFD, 0x01, 0x0D, 0xDE, 0x01, 0x04, 0x0A,
432		  0x00, 0x8E, 0xBB, 0xBB, 0xEE, 0x00, 0x0E, 0x0F,
433		  0x8D, 0xEE, 0x00, 0x0E, 0x0F, 0x8D),
434	PHYREGS(0x07F8, 0x07F4, 0x07F0, 0x0202, 0x0203, 0x0204),
435  },
436  {	.channel		= 220,
437	.freq			= 5100, /* MHz */
438	.unk2			= 3400,
439	RADIOREGS(0x71, 0xFE, 0x01, 0x0C, 0xD6, 0x01, 0x04, 0x0A,
440		  0x00, 0x8E, 0xAA, 0xAA, 0xEE, 0x00, 0x0D, 0x0F,
441		  0x8D, 0xEE, 0x00, 0x0D, 0x0F, 0x8D),
442	PHYREGS(0x07FC, 0x07F8, 0x07F4, 0x0201, 0x0202, 0x0203),
443  },
444  {	.channel		= 222,
445	.freq			= 5110, /* MHz */
446	.unk2			= 3407,
447	RADIOREGS(0x71, 0xFF, 0x01, 0x0C, 0xD6, 0x01, 0x04, 0x0A,
448		  0x00, 0x8E, 0xAA, 0xAA, 0xEE, 0x00, 0x0D, 0x0F,
449		  0x8D, 0xEE, 0x00, 0x0D, 0x0F, 0x8D),
450	PHYREGS(0x0800, 0x07FC, 0x07F8, 0x0200, 0x0201, 0x0202),
451  },
452  {	.channel		= 224,
453	.freq			= 5120, /* MHz */
454	.unk2			= 3413,
455	RADIOREGS(0x71, 0x00, 0x02, 0x0C, 0xCE, 0x01, 0x04, 0x0A,
456		  0x00, 0x8D, 0xAA, 0xAA, 0xDD, 0x00, 0x0D, 0x0F,
457		  0x8C, 0xDD, 0x00, 0x0D, 0x0F, 0x8C),
458	PHYREGS(0x0804, 0x0800, 0x07FC, 0x01FF, 0x0200, 0x0201),
459  },
460  {	.channel		= 226,
461	.freq			= 5130, /* MHz */
462	.unk2			= 3420,
463	RADIOREGS(0x71, 0x01, 0x02, 0x0C, 0xCE, 0x01, 0x04, 0x0A,
464		  0x00, 0x8D, 0xAA, 0xAA, 0xDD, 0x00, 0x0D, 0x0F,
465		  0x8C, 0xDD, 0x00, 0x0D, 0x0F, 0x8C),
466	PHYREGS(0x0808, 0x0804, 0x0800, 0x01FE, 0x01FF, 0x0200),
467  },
468  {	.channel		= 228,
469	.freq			= 5140, /* MHz */
470	.unk2			= 3427,
471	RADIOREGS(0x71, 0x02, 0x02, 0x0C, 0xC6, 0x01, 0x04, 0x0A,
472		  0x00, 0x8D, 0x99, 0x99, 0xDD, 0x00, 0x0C, 0x0E,
473		  0x8B, 0xDD, 0x00, 0x0C, 0x0E, 0x8B),
474	PHYREGS(0x080C, 0x0808, 0x0804, 0x01FD, 0x01FE, 0x01FF),
475  },
476  {	.channel		= 32,
477	.freq			= 5160, /* MHz */
478	.unk2			= 3440,
479	RADIOREGS(0x71, 0x04, 0x02, 0x0B, 0xBE, 0x01, 0x04, 0x0A,
480		  0x00, 0x8C, 0x99, 0x99, 0xCC, 0x00, 0x0B, 0x0D,
481		  0x8A, 0xCC, 0x00, 0x0B, 0x0D, 0x8A),
482	PHYREGS(0x0814, 0x0810, 0x080C, 0x01FB, 0x01FC, 0x01FD),
483  },
484  {	.channel		= 34,
485	.freq			= 5170, /* MHz */
486	.unk2			= 3447,
487	RADIOREGS(0x71, 0x05, 0x02, 0x0B, 0xBE, 0x01, 0x04, 0x0A,
488		  0x00, 0x8C, 0x99, 0x99, 0xCC, 0x00, 0x0B, 0x0D,
489		  0x8A, 0xCC, 0x00, 0x0B, 0x0D, 0x8A),
490	PHYREGS(0x0818, 0x0814, 0x0810, 0x01FA, 0x01FB, 0x01FC),
491  },
492  {	.channel		= 36,
493	.freq			= 5180, /* MHz */
494	.unk2			= 3453,
495	RADIOREGS(0x71, 0x06, 0x02, 0x0B, 0xB6, 0x01, 0x04, 0x0A,
496		  0x00, 0x8C, 0x88, 0x88, 0xCC, 0x00, 0x0B, 0x0C,
497		  0x89, 0xCC, 0x00, 0x0B, 0x0C, 0x89),
498	PHYREGS(0x081C, 0x0818, 0x0814, 0x01F9, 0x01FA, 0x01FB),
499  },
500  {	.channel		= 38,
501	.freq			= 5190, /* MHz */
502	.unk2			= 3460,
503	RADIOREGS(0x71, 0x07, 0x02, 0x0B, 0xB6, 0x01, 0x04, 0x0A,
504		  0x00, 0x8C, 0x88, 0x88, 0xCC, 0x00, 0x0B, 0x0C,
505		  0x89, 0xCC, 0x00, 0x0B, 0x0C, 0x89),
506	PHYREGS(0x0820, 0x081C, 0x0818, 0x01F8, 0x01F9, 0x01FA),
507  },
508  {	.channel		= 40,
509	.freq			= 5200, /* MHz */
510	.unk2			= 3467,
511	RADIOREGS(0x71, 0x08, 0x02, 0x0B, 0xAF, 0x01, 0x04, 0x0A,
512		  0x00, 0x8B, 0x88, 0x88, 0xBB, 0x00, 0x0A, 0x0B,
513		  0x89, 0xBB, 0x00, 0x0A, 0x0B, 0x89),
514	PHYREGS(0x0824, 0x0820, 0x081C, 0x01F7, 0x01F8, 0x01F9),
515  },
516  {	.channel		= 42,
517	.freq			= 5210, /* MHz */
518	.unk2			= 3473,
519	RADIOREGS(0x71, 0x09, 0x02, 0x0B, 0xAF, 0x01, 0x04, 0x0A,
520		  0x00, 0x8B, 0x88, 0x88, 0xBB, 0x00, 0x0A, 0x0B,
521		  0x89, 0xBB, 0x00, 0x0A, 0x0B, 0x89),
522	PHYREGS(0x0828, 0x0824, 0x0820, 0x01F6, 0x01F7, 0x01F8),
523  },
524  {	.channel		= 44,
525	.freq			= 5220, /* MHz */
526	.unk2			= 3480,
527	RADIOREGS(0x71, 0x0A, 0x02, 0x0A, 0xA7, 0x01, 0x04, 0x0A,
528		  0x00, 0x8B, 0x77, 0x77, 0xBB, 0x00, 0x09, 0x0A,
529		  0x88, 0xBB, 0x00, 0x09, 0x0A, 0x88),
530	PHYREGS(0x082C, 0x0828, 0x0824, 0x01F5, 0x01F6, 0x01F7),
531  },
532  {	.channel		= 46,
533	.freq			= 5230, /* MHz */
534	.unk2			= 3487,
535	RADIOREGS(0x71, 0x0B, 0x02, 0x0A, 0xA7, 0x01, 0x04, 0x0A,
536		  0x00, 0x8B, 0x77, 0x77, 0xBB, 0x00, 0x09, 0x0A,
537		  0x88, 0xBB, 0x00, 0x09, 0x0A, 0x88),
538	PHYREGS(0x0830, 0x082C, 0x0828, 0x01F4, 0x01F5, 0x01F6),
539  },
540  {	.channel		= 48,
541	.freq			= 5240, /* MHz */
542	.unk2			= 3493,
543	RADIOREGS(0x71, 0x0C, 0x02, 0x0A, 0xA0, 0x01, 0x04, 0x0A,
544		  0x00, 0x8A, 0x77, 0x77, 0xAA, 0x00, 0x09, 0x0A,
545		  0x87, 0xAA, 0x00, 0x09, 0x0A, 0x87),
546	PHYREGS(0x0834, 0x0830, 0x082C, 0x01F3, 0x01F4, 0x01F5),
547  },
548  {	.channel		= 50,
549	.freq			= 5250, /* MHz */
550	.unk2			= 3500,
551	RADIOREGS(0x71, 0x0D, 0x02, 0x0A, 0xA0, 0x01, 0x04, 0x0A,
552		  0x00, 0x8A, 0x77, 0x77, 0xAA, 0x00, 0x09, 0x0A,
553		  0x87, 0xAA, 0x00, 0x09, 0x0A, 0x87),
554	PHYREGS(0x0838, 0x0834, 0x0830, 0x01F2, 0x01F3, 0x01F4),
555  },
556  {	.channel		= 52,
557	.freq			= 5260, /* MHz */
558	.unk2			= 3507,
559	RADIOREGS(0x71, 0x0E, 0x02, 0x0A, 0x98, 0x01, 0x04, 0x0A,
560		  0x00, 0x8A, 0x66, 0x66, 0xAA, 0x00, 0x08, 0x09,
561		  0x87, 0xAA, 0x00, 0x08, 0x09, 0x87),
562	PHYREGS(0x083C, 0x0838, 0x0834, 0x01F1, 0x01F2, 0x01F3),
563  },
564  {	.channel		= 54,
565	.freq			= 5270, /* MHz */
566	.unk2			= 3513,
567	RADIOREGS(0x71, 0x0F, 0x02, 0x0A, 0x98, 0x01, 0x04, 0x0A,
568		  0x00, 0x8A, 0x66, 0x66, 0xAA, 0x00, 0x08, 0x09,
569		  0x87, 0xAA, 0x00, 0x08, 0x09, 0x87),
570	PHYREGS(0x0840, 0x083C, 0x0838, 0x01F0, 0x01F1, 0x01F2),
571  },
572  {	.channel		= 56,
573	.freq			= 5280, /* MHz */
574	.unk2			= 3520,
575	RADIOREGS(0x71, 0x10, 0x02, 0x09, 0x91, 0x01, 0x04, 0x0A,
576		  0x00, 0x89, 0x66, 0x66, 0x99, 0x00, 0x08, 0x08,
577		  0x86, 0x99, 0x00, 0x08, 0x08, 0x86),
578	PHYREGS(0x0844, 0x0840, 0x083C, 0x01F0, 0x01F0, 0x01F1),
579  },
580  {	.channel		= 58,
581	.freq			= 5290, /* MHz */
582	.unk2			= 3527,
583	RADIOREGS(0x71, 0x11, 0x02, 0x09, 0x91, 0x01, 0x04, 0x0A,
584		  0x00, 0x89, 0x66, 0x66, 0x99, 0x00, 0x08, 0x08,
585		  0x86, 0x99, 0x00, 0x08, 0x08, 0x86),
586	PHYREGS(0x0848, 0x0844, 0x0840, 0x01EF, 0x01F0, 0x01F0),
587  },
588  {	.channel		= 60,
589	.freq			= 5300, /* MHz */
590	.unk2			= 3533,
591	RADIOREGS(0x71, 0x12, 0x02, 0x09, 0x8A, 0x01, 0x04, 0x0A,
592		  0x00, 0x89, 0x55, 0x55, 0x99, 0x00, 0x08, 0x07,
593		  0x85, 0x99, 0x00, 0x08, 0x07, 0x85),
594	PHYREGS(0x084C, 0x0848, 0x0844, 0x01EE, 0x01EF, 0x01F0),
595  },
596  {	.channel		= 62,
597	.freq			= 5310, /* MHz */
598	.unk2			= 3540,
599	RADIOREGS(0x71, 0x13, 0x02, 0x09, 0x8A, 0x01, 0x04, 0x0A,
600		  0x00, 0x89, 0x55, 0x55, 0x99, 0x00, 0x08, 0x07,
601		  0x85, 0x99, 0x00, 0x08, 0x07, 0x85),
602	PHYREGS(0x0850, 0x084C, 0x0848, 0x01ED, 0x01EE, 0x01EF),
603  },
604  {	.channel		= 64,
605	.freq			= 5320, /* MHz */
606	.unk2			= 3547,
607	RADIOREGS(0x71, 0x14, 0x02, 0x09, 0x83, 0x01, 0x04, 0x0A,
608		  0x00, 0x88, 0x55, 0x55, 0x88, 0x00, 0x07, 0x07,
609		  0x84, 0x88, 0x00, 0x07, 0x07, 0x84),
610	PHYREGS(0x0854, 0x0850, 0x084C, 0x01EC, 0x01ED, 0x01EE),
611  },
612  {	.channel		= 66,
613	.freq			= 5330, /* MHz */
614	.unk2			= 3553,
615	RADIOREGS(0x71, 0x15, 0x02, 0x09, 0x83, 0x01, 0x04, 0x0A,
616		  0x00, 0x88, 0x55, 0x55, 0x88, 0x00, 0x07, 0x07,
617		  0x84, 0x88, 0x00, 0x07, 0x07, 0x84),
618	PHYREGS(0x0858, 0x0854, 0x0850, 0x01EB, 0x01EC, 0x01ED),
619  },
620  {	.channel		= 68,
621	.freq			= 5340, /* MHz */
622	.unk2			= 3560,
623	RADIOREGS(0x71, 0x16, 0x02, 0x08, 0x7C, 0x01, 0x04, 0x0A,
624		  0x00, 0x88, 0x44, 0x44, 0x88, 0x00, 0x07, 0x06,
625		  0x84, 0x88, 0x00, 0x07, 0x06, 0x84),
626	PHYREGS(0x085C, 0x0858, 0x0854, 0x01EA, 0x01EB, 0x01EC),
627  },
628  {	.channel		= 70,
629	.freq			= 5350, /* MHz */
630	.unk2			= 3567,
631	RADIOREGS(0x71, 0x17, 0x02, 0x08, 0x7C, 0x01, 0x04, 0x0A,
632		  0x00, 0x88, 0x44, 0x44, 0x88, 0x00, 0x07, 0x06,
633		  0x84, 0x88, 0x00, 0x07, 0x06, 0x84),
634	PHYREGS(0x0860, 0x085C, 0x0858, 0x01E9, 0x01EA, 0x01EB),
635  },
636  {	.channel		= 72,
637	.freq			= 5360, /* MHz */
638	.unk2			= 3573,
639	RADIOREGS(0x71, 0x18, 0x02, 0x08, 0x75, 0x01, 0x04, 0x0A,
640		  0x00, 0x87, 0x44, 0x44, 0x77, 0x00, 0x06, 0x05,
641		  0x83, 0x77, 0x00, 0x06, 0x05, 0x83),
642	PHYREGS(0x0864, 0x0860, 0x085C, 0x01E8, 0x01E9, 0x01EA),
643  },
644  {	.channel		= 74,
645	.freq			= 5370, /* MHz */
646	.unk2			= 3580,
647	RADIOREGS(0x71, 0x19, 0x02, 0x08, 0x75, 0x01, 0x04, 0x0A,
648		  0x00, 0x87, 0x44, 0x44, 0x77, 0x00, 0x06, 0x05,
649		  0x83, 0x77, 0x00, 0x06, 0x05, 0x83),
650	PHYREGS(0x0868, 0x0864, 0x0860, 0x01E7, 0x01E8, 0x01E9),
651  },
652  {	.channel		= 76,
653	.freq			= 5380, /* MHz */
654	.unk2			= 3587,
655	RADIOREGS(0x71, 0x1A, 0x02, 0x08, 0x6E, 0x01, 0x04, 0x0A,
656		  0x00, 0x87, 0x33, 0x33, 0x77, 0x00, 0x06, 0x04,
657		  0x82, 0x77, 0x00, 0x06, 0x04, 0x82),
658	PHYREGS(0x086C, 0x0868, 0x0864, 0x01E6, 0x01E7, 0x01E8),
659  },
660  {	.channel		= 78,
661	.freq			= 5390, /* MHz */
662	.unk2			= 3593,
663	RADIOREGS(0x71, 0x1B, 0x02, 0x08, 0x6E, 0x01, 0x04, 0x0A,
664		  0x00, 0x87, 0x33, 0x33, 0x77, 0x00, 0x06, 0x04,
665		  0x82, 0x77, 0x00, 0x06, 0x04, 0x82),
666	PHYREGS(0x0870, 0x086C, 0x0868, 0x01E5, 0x01E6, 0x01E7),
667  },
668  {	.channel		= 80,
669	.freq			= 5400, /* MHz */
670	.unk2			= 3600,
671	RADIOREGS(0x71, 0x1C, 0x02, 0x07, 0x67, 0x01, 0x04, 0x0A,
672		  0x00, 0x86, 0x33, 0x33, 0x66, 0x00, 0x05, 0x04,
673		  0x81, 0x66, 0x00, 0x05, 0x04, 0x81),
674	PHYREGS(0x0874, 0x0870, 0x086C, 0x01E5, 0x01E5, 0x01E6),
675  },
676  {	.channel		= 82,
677	.freq			= 5410, /* MHz */
678	.unk2			= 3607,
679	RADIOREGS(0x71, 0x1D, 0x02, 0x07, 0x67, 0x01, 0x04, 0x0A,
680		  0x00, 0x86, 0x33, 0x33, 0x66, 0x00, 0x05, 0x04,
681		  0x81, 0x66, 0x00, 0x05, 0x04, 0x81),
682	PHYREGS(0x0878, 0x0874, 0x0870, 0x01E4, 0x01E5, 0x01E5),
683  },
684  {	.channel		= 84,
685	.freq			= 5420, /* MHz */
686	.unk2			= 3613,
687	RADIOREGS(0x71, 0x1E, 0x02, 0x07, 0x61, 0x01, 0x04, 0x0A,
688		  0x00, 0x86, 0x22, 0x22, 0x66, 0x00, 0x05, 0x03,
689		  0x80, 0x66, 0x00, 0x05, 0x03, 0x80),
690	PHYREGS(0x087C, 0x0878, 0x0874, 0x01E3, 0x01E4, 0x01E5),
691  },
692  {	.channel		= 86,
693	.freq			= 5430, /* MHz */
694	.unk2			= 3620,
695	RADIOREGS(0x71, 0x1F, 0x02, 0x07, 0x61, 0x01, 0x04, 0x0A,
696		  0x00, 0x86, 0x22, 0x22, 0x66, 0x00, 0x05, 0x03,
697		  0x80, 0x66, 0x00, 0x05, 0x03, 0x80),
698	PHYREGS(0x0880, 0x087C, 0x0878, 0x01E2, 0x01E3, 0x01E4),
699  },
700  {	.channel		= 88,
701	.freq			= 5440, /* MHz */
702	.unk2			= 3627,
703	RADIOREGS(0x71, 0x20, 0x02, 0x07, 0x5A, 0x01, 0x04, 0x0A,
704		  0x00, 0x85, 0x22, 0x22, 0x55, 0x00, 0x04, 0x02,
705		  0x80, 0x55, 0x00, 0x04, 0x02, 0x80),
706	PHYREGS(0x0884, 0x0880, 0x087C, 0x01E1, 0x01E2, 0x01E3),
707  },
708  {	.channel		= 90,
709	.freq			= 5450, /* MHz */
710	.unk2			= 3633,
711	RADIOREGS(0x71, 0x21, 0x02, 0x07, 0x5A, 0x01, 0x04, 0x0A,
712		  0x00, 0x85, 0x22, 0x22, 0x55, 0x00, 0x04, 0x02,
713		  0x80, 0x55, 0x00, 0x04, 0x02, 0x80),
714	PHYREGS(0x0888, 0x0884, 0x0880, 0x01E0, 0x01E1, 0x01E2),
715  },
716  {	.channel		= 92,
717	.freq			= 5460, /* MHz */
718	.unk2			= 3640,
719	RADIOREGS(0x71, 0x22, 0x02, 0x06, 0x53, 0x01, 0x04, 0x0A,
720		  0x00, 0x85, 0x11, 0x11, 0x55, 0x00, 0x04, 0x01,
721		  0x80, 0x55, 0x00, 0x04, 0x01, 0x80),
722	PHYREGS(0x088C, 0x0888, 0x0884, 0x01DF, 0x01E0, 0x01E1),
723  },
724  {	.channel		= 94,
725	.freq			= 5470, /* MHz */
726	.unk2			= 3647,
727	RADIOREGS(0x71, 0x23, 0x02, 0x06, 0x53, 0x01, 0x04, 0x0A,
728		  0x00, 0x85, 0x11, 0x11, 0x55, 0x00, 0x04, 0x01,
729		  0x80, 0x55, 0x00, 0x04, 0x01, 0x80),
730	PHYREGS(0x0890, 0x088C, 0x0888, 0x01DE, 0x01DF, 0x01E0),
731  },
732  {	.channel		= 96,
733	.freq			= 5480, /* MHz */
734	.unk2			= 3653,
735	RADIOREGS(0x71, 0x24, 0x02, 0x06, 0x4D, 0x01, 0x04, 0x0A,
736		  0x00, 0x84, 0x11, 0x11, 0x44, 0x00, 0x03, 0x00,
737		  0x80, 0x44, 0x00, 0x03, 0x00, 0x80),
738	PHYREGS(0x0894, 0x0890, 0x088C, 0x01DD, 0x01DE, 0x01DF),
739  },
740  {	.channel		= 98,
741	.freq			= 5490, /* MHz */
742	.unk2			= 3660,
743	RADIOREGS(0x71, 0x25, 0x02, 0x06, 0x4D, 0x01, 0x04, 0x0A,
744		  0x00, 0x84, 0x11, 0x11, 0x44, 0x00, 0x03, 0x00,
745		  0x80, 0x44, 0x00, 0x03, 0x00, 0x80),
746	PHYREGS(0x0898, 0x0894, 0x0890, 0x01DD, 0x01DD, 0x01DE),
747  },
748  {	.channel		= 100,
749	.freq			= 5500, /* MHz */
750	.unk2			= 3667,
751	RADIOREGS(0x71, 0x26, 0x02, 0x06, 0x47, 0x01, 0x04, 0x0A,
752		  0x00, 0x84, 0x00, 0x00, 0x44, 0x00, 0x03, 0x00,
753		  0x80, 0x44, 0x00, 0x03, 0x00, 0x80),
754	PHYREGS(0x089C, 0x0898, 0x0894, 0x01DC, 0x01DD, 0x01DD),
755  },
756  {	.channel		= 102,
757	.freq			= 5510, /* MHz */
758	.unk2			= 3673,
759	RADIOREGS(0x71, 0x27, 0x02, 0x06, 0x47, 0x01, 0x04, 0x0A,
760		  0x00, 0x84, 0x00, 0x00, 0x44, 0x00, 0x03, 0x00,
761		  0x80, 0x44, 0x00, 0x03, 0x00, 0x80),
762	PHYREGS(0x08A0, 0x089C, 0x0898, 0x01DB, 0x01DC, 0x01DD),
763  },
764  {	.channel		= 104,
765	.freq			= 5520, /* MHz */
766	.unk2			= 3680,
767	RADIOREGS(0x71, 0x28, 0x02, 0x05, 0x40, 0x01, 0x04, 0x0A,
768		  0x00, 0x83, 0x00, 0x00, 0x33, 0x00, 0x02, 0x00,
769		  0x80, 0x33, 0x00, 0x02, 0x00, 0x80),
770	PHYREGS(0x08A4, 0x08A0, 0x089C, 0x01DA, 0x01DB, 0x01DC),
771  },
772  {	.channel		= 106,
773	.freq			= 5530, /* MHz */
774	.unk2			= 3687,
775	RADIOREGS(0x71, 0x29, 0x02, 0x05, 0x40, 0x01, 0x04, 0x0A,
776		  0x00, 0x83, 0x00, 0x00, 0x33, 0x00, 0x02, 0x00,
777		  0x80, 0x33, 0x00, 0x02, 0x00, 0x80),
778	PHYREGS(0x08A8, 0x08A4, 0x08A0, 0x01D9, 0x01DA, 0x01DB),
779  },
780  {	.channel		= 108,
781	.freq			= 5540, /* MHz */
782	.unk2			= 3693,
783	RADIOREGS(0x71, 0x2A, 0x02, 0x05, 0x3A, 0x01, 0x04, 0x0A,
784		  0x00, 0x83, 0x00, 0x00, 0x33, 0x00, 0x02, 0x00,
785		  0x80, 0x33, 0x00, 0x02, 0x00, 0x80),
786	PHYREGS(0x08AC, 0x08A8, 0x08A4, 0x01D8, 0x01D9, 0x01DA),
787  },
788  {	.channel		= 110,
789	.freq			= 5550, /* MHz */
790	.unk2			= 3700,
791	RADIOREGS(0x71, 0x2B, 0x02, 0x05, 0x3A, 0x01, 0x04, 0x0A,
792		  0x00, 0x83, 0x00, 0x00, 0x33, 0x00, 0x02, 0x00,
793		  0x80, 0x33, 0x00, 0x02, 0x00, 0x80),
794	PHYREGS(0x08B0, 0x08AC, 0x08A8, 0x01D7, 0x01D8, 0x01D9),
795  },
796  {	.channel		= 112,
797	.freq			= 5560, /* MHz */
798	.unk2			= 3707,
799	RADIOREGS(0x71, 0x2C, 0x02, 0x05, 0x34, 0x01, 0x04, 0x0A,
800		  0x00, 0x82, 0x00, 0x00, 0x22, 0x00, 0x01, 0x00,
801		  0x80, 0x22, 0x00, 0x01, 0x00, 0x80),
802	PHYREGS(0x08B4, 0x08B0, 0x08AC, 0x01D7, 0x01D7, 0x01D8),
803  },
804  {	.channel		= 114,
805	.freq			= 5570, /* MHz */
806	.unk2			= 3713,
807	RADIOREGS(0x71, 0x2D, 0x02, 0x05, 0x34, 0x01, 0x04, 0x0A,
808		  0x00, 0x82, 0x00, 0x00, 0x22, 0x00, 0x01, 0x00,
809		  0x80, 0x22, 0x00, 0x01, 0x00, 0x80),
810	PHYREGS(0x08B8, 0x08B4, 0x08B0, 0x01D6, 0x01D7, 0x01D7),
811  },
812  {	.channel		= 116,
813	.freq			= 5580, /* MHz */
814	.unk2			= 3720,
815	RADIOREGS(0x71, 0x2E, 0x02, 0x04, 0x2E, 0x01, 0x04, 0x0A,
816		  0x00, 0x82, 0x00, 0x00, 0x22, 0x00, 0x01, 0x00,
817		  0x80, 0x22, 0x00, 0x01, 0x00, 0x80),
818	PHYREGS(0x08BC, 0x08B8, 0x08B4, 0x01D5, 0x01D6, 0x01D7),
819  },
820  {	.channel		= 118,
821	.freq			= 5590, /* MHz */
822	.unk2			= 3727,
823	RADIOREGS(0x71, 0x2F, 0x02, 0x04, 0x2E, 0x01, 0x04, 0x0A,
824		  0x00, 0x82, 0x00, 0x00, 0x22, 0x00, 0x01, 0x00,
825		  0x80, 0x22, 0x00, 0x01, 0x00, 0x80),
826	PHYREGS(0x08C0, 0x08BC, 0x08B8, 0x01D4, 0x01D5, 0x01D6),
827  },
828  {	.channel		= 120,
829	.freq			= 5600, /* MHz */
830	.unk2			= 3733,
831	RADIOREGS(0x71, 0x30, 0x02, 0x04, 0x28, 0x01, 0x04, 0x0A,
832		  0x00, 0x81, 0x00, 0x00, 0x11, 0x00, 0x01, 0x00,
833		  0x80, 0x11, 0x00, 0x01, 0x00, 0x80),
834	PHYREGS(0x08C4, 0x08C0, 0x08BC, 0x01D3, 0x01D4, 0x01D5),
835  },
836  {	.channel		= 122,
837	.freq			= 5610, /* MHz */
838	.unk2			= 3740,
839	RADIOREGS(0x71, 0x31, 0x02, 0x04, 0x28, 0x01, 0x04, 0x0A,
840		  0x00, 0x81, 0x00, 0x00, 0x11, 0x00, 0x01, 0x00,
841		  0x80, 0x11, 0x00, 0x01, 0x00, 0x80),
842	PHYREGS(0x08C8, 0x08C4, 0x08C0, 0x01D2, 0x01D3, 0x01D4),
843  },
844  {	.channel		= 124,
845	.freq			= 5620, /* MHz */
846	.unk2			= 3747,
847	RADIOREGS(0x71, 0x32, 0x02, 0x04, 0x21, 0x01, 0x04, 0x0A,
848		  0x00, 0x81, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
849		  0x80, 0x11, 0x00, 0x00, 0x00, 0x80),
850	PHYREGS(0x08CC, 0x08C8, 0x08C4, 0x01D2, 0x01D2, 0x01D3),
851  },
852  {	.channel		= 126,
853	.freq			= 5630, /* MHz */
854	.unk2			= 3753,
855	RADIOREGS(0x71, 0x33, 0x02, 0x04, 0x21, 0x01, 0x04, 0x0A,
856		  0x00, 0x81, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00,
857		  0x80, 0x11, 0x00, 0x00, 0x00, 0x80),
858	PHYREGS(0x08D0, 0x08CC, 0x08C8, 0x01D1, 0x01D2, 0x01D2),
859  },
860  {	.channel		= 128,
861	.freq			= 5640, /* MHz */
862	.unk2			= 3760,
863	RADIOREGS(0x71, 0x34, 0x02, 0x03, 0x1C, 0x01, 0x04, 0x0A,
864		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
865		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
866	PHYREGS(0x08D4, 0x08D0, 0x08CC, 0x01D0, 0x01D1, 0x01D2),
867  },
868  {	.channel		= 130,
869	.freq			= 5650, /* MHz */
870	.unk2			= 3767,
871	RADIOREGS(0x71, 0x35, 0x02, 0x03, 0x1C, 0x01, 0x04, 0x0A,
872		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
873		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
874	PHYREGS(0x08D8, 0x08D4, 0x08D0, 0x01CF, 0x01D0, 0x01D1),
875  },
876  {	.channel		= 132,
877	.freq			= 5660, /* MHz */
878	.unk2			= 3773,
879	RADIOREGS(0x71, 0x36, 0x02, 0x03, 0x16, 0x01, 0x04, 0x0A,
880		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
881		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
882	PHYREGS(0x08DC, 0x08D8, 0x08D4, 0x01CE, 0x01CF, 0x01D0),
883  },
884  {	.channel		= 134,
885	.freq			= 5670, /* MHz */
886	.unk2			= 3780,
887	RADIOREGS(0x71, 0x37, 0x02, 0x03, 0x16, 0x01, 0x04, 0x0A,
888		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
889		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
890	PHYREGS(0x08E0, 0x08DC, 0x08D8, 0x01CE, 0x01CE, 0x01CF),
891  },
892  {	.channel		= 136,
893	.freq			= 5680, /* MHz */
894	.unk2			= 3787,
895	RADIOREGS(0x71, 0x38, 0x02, 0x03, 0x10, 0x01, 0x04, 0x0A,
896		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
897		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
898	PHYREGS(0x08E4, 0x08E0, 0x08DC, 0x01CD, 0x01CE, 0x01CE),
899  },
900  {	.channel		= 138,
901	.freq			= 5690, /* MHz */
902	.unk2			= 3793,
903	RADIOREGS(0x71, 0x39, 0x02, 0x03, 0x10, 0x01, 0x04, 0x0A,
904		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
905		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
906	PHYREGS(0x08E8, 0x08E4, 0x08E0, 0x01CC, 0x01CD, 0x01CE),
907  },
908  {	.channel		= 140,
909	.freq			= 5700, /* MHz */
910	.unk2			= 3800,
911	RADIOREGS(0x71, 0x3A, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
912		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
913		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
914	PHYREGS(0x08EC, 0x08E8, 0x08E4, 0x01CB, 0x01CC, 0x01CD),
915  },
916  {	.channel		= 142,
917	.freq			= 5710, /* MHz */
918	.unk2			= 3807,
919	RADIOREGS(0x71, 0x3B, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
920		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
921		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
922	PHYREGS(0x08F0, 0x08EC, 0x08E8, 0x01CA, 0x01CB, 0x01CC),
923  },
924  {	.channel		= 144,
925	.freq			= 5720, /* MHz */
926	.unk2			= 3813,
927	RADIOREGS(0x71, 0x3C, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
928		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
929		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
930	PHYREGS(0x08F4, 0x08F0, 0x08EC, 0x01C9, 0x01CA, 0x01CB),
931  },
932  {	.channel		= 145,
933	.freq			= 5725, /* MHz */
934	.unk2			= 3817,
935	RADIOREGS(0x72, 0x79, 0x04, 0x02, 0x03, 0x01, 0x03, 0x14,
936		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
937		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
938	PHYREGS(0x08F6, 0x08F2, 0x08EE, 0x01C9, 0x01CA, 0x01CB),
939  },
940  {	.channel		= 146,
941	.freq			= 5730, /* MHz */
942	.unk2			= 3820,
943	RADIOREGS(0x71, 0x3D, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
944		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
945		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
946	PHYREGS(0x08F8, 0x08F4, 0x08F0, 0x01C9, 0x01C9, 0x01CA),
947  },
948  {	.channel		= 147,
949	.freq			= 5735, /* MHz */
950	.unk2			= 3823,
951	RADIOREGS(0x72, 0x7B, 0x04, 0x02, 0x03, 0x01, 0x03, 0x14,
952		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
953		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
954	PHYREGS(0x08FA, 0x08F6, 0x08F2, 0x01C8, 0x01C9, 0x01CA),
955  },
956  {	.channel		= 148,
957	.freq			= 5740, /* MHz */
958	.unk2			= 3827,
959	RADIOREGS(0x71, 0x3E, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
960		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
961		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
962	PHYREGS(0x08FC, 0x08F8, 0x08F4, 0x01C8, 0x01C9, 0x01C9),
963  },
964  {	.channel		= 149,
965	.freq			= 5745, /* MHz */
966	.unk2			= 3830,
967	RADIOREGS(0x72, 0x7D, 0x04, 0x02, 0xFE, 0x00, 0x03, 0x14,
968		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
969		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
970	PHYREGS(0x08FE, 0x08FA, 0x08F6, 0x01C8, 0x01C8, 0x01C9),
971  },
972  {	.channel		= 150,
973	.freq			= 5750, /* MHz */
974	.unk2			= 3833,
975	RADIOREGS(0x71, 0x3F, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
976		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
977		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
978	PHYREGS(0x0900, 0x08FC, 0x08F8, 0x01C7, 0x01C8, 0x01C9),
979  },
980  {	.channel		= 151,
981	.freq			= 5755, /* MHz */
982	.unk2			= 3837,
983	RADIOREGS(0x72, 0x7F, 0x04, 0x02, 0xFE, 0x00, 0x03, 0x14,
984		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
985		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
986	PHYREGS(0x0902, 0x08FE, 0x08FA, 0x01C7, 0x01C8, 0x01C8),
987  },
988  {	.channel		= 152,
989	.freq			= 5760, /* MHz */
990	.unk2			= 3840,
991	RADIOREGS(0x71, 0x40, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
992		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
993		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
994	PHYREGS(0x0904, 0x0900, 0x08FC, 0x01C6, 0x01C7, 0x01C8),
995  },
996  {	.channel		= 153,
997	.freq			= 5765, /* MHz */
998	.unk2			= 3843,
999	RADIOREGS(0x72, 0x81, 0x04, 0x02, 0xF8, 0x00, 0x03, 0x14,
1000		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1001		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1002	PHYREGS(0x0906, 0x0902, 0x08FE, 0x01C6, 0x01C7, 0x01C8),
1003  },
1004  {	.channel		= 154,
1005	.freq			= 5770, /* MHz */
1006	.unk2			= 3847,
1007	RADIOREGS(0x71, 0x41, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
1008		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1009		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1010	PHYREGS(0x0908, 0x0904, 0x0900, 0x01C6, 0x01C6, 0x01C7),
1011  },
1012  {	.channel		= 155,
1013	.freq			= 5775, /* MHz */
1014	.unk2			= 3850,
1015	RADIOREGS(0x72, 0x83, 0x04, 0x02, 0xF8, 0x00, 0x03, 0x14,
1016		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1017		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1018	PHYREGS(0x090A, 0x0906, 0x0902, 0x01C5, 0x01C6, 0x01C7),
1019  },
1020  {	.channel		= 156,
1021	.freq			= 5780, /* MHz */
1022	.unk2			= 3853,
1023	RADIOREGS(0x71, 0x42, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
1024		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1025		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1026	PHYREGS(0x090C, 0x0908, 0x0904, 0x01C5, 0x01C6, 0x01C6),
1027  },
1028  {	.channel		= 157,
1029	.freq			= 5785, /* MHz */
1030	.unk2			= 3857,
1031	RADIOREGS(0x72, 0x85, 0x04, 0x02, 0xF2, 0x00, 0x03, 0x14,
1032		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1033		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1034	PHYREGS(0x090E, 0x090A, 0x0906, 0x01C4, 0x01C5, 0x01C6),
1035  },
1036  {	.channel		= 158,
1037	.freq			= 5790, /* MHz */
1038	.unk2			= 3860,
1039	RADIOREGS(0x71, 0x43, 0x02, 0x02, 0x0A, 0x01, 0x04, 0x0A,
1040		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1041		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1042	PHYREGS(0x0910, 0x090C, 0x0908, 0x01C4, 0x01C5, 0x01C6),
1043  },
1044  {	.channel		= 159,
1045	.freq			= 5795, /* MHz */
1046	.unk2			= 3863,
1047	RADIOREGS(0x72, 0x87, 0x04, 0x02, 0xF2, 0x00, 0x03, 0x14,
1048		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1049		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1050	PHYREGS(0x0912, 0x090E, 0x090A, 0x01C4, 0x01C4, 0x01C5),
1051  },
1052  {	.channel		= 160,
1053	.freq			= 5800, /* MHz */
1054	.unk2			= 3867,
1055	RADIOREGS(0x71, 0x44, 0x02, 0x01, 0x0A, 0x01, 0x04, 0x0A,
1056		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1057		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1058	PHYREGS(0x0914, 0x0910, 0x090C, 0x01C3, 0x01C4, 0x01C5),
1059  },
1060  {	.channel		= 161,
1061	.freq			= 5805, /* MHz */
1062	.unk2			= 3870,
1063	RADIOREGS(0x72, 0x89, 0x04, 0x01, 0xED, 0x00, 0x03, 0x14,
1064		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1065		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1066	PHYREGS(0x0916, 0x0912, 0x090E, 0x01C3, 0x01C4, 0x01C4),
1067  },
1068  {	.channel		= 162,
1069	.freq			= 5810, /* MHz */
1070	.unk2			= 3873,
1071	RADIOREGS(0x71, 0x45, 0x02, 0x01, 0x0A, 0x01, 0x04, 0x0A,
1072		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1073		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1074	PHYREGS(0x0918, 0x0914, 0x0910, 0x01C2, 0x01C3, 0x01C4),
1075  },
1076  {	.channel		= 163,
1077	.freq			= 5815, /* MHz */
1078	.unk2			= 3877,
1079	RADIOREGS(0x72, 0x8B, 0x04, 0x01, 0xED, 0x00, 0x03, 0x14,
1080		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1081		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1082	PHYREGS(0x091A, 0x0916, 0x0912, 0x01C2, 0x01C3, 0x01C4),
1083  },
1084  {	.channel		= 164,
1085	.freq			= 5820, /* MHz */
1086	.unk2			= 3880,
1087	RADIOREGS(0x71, 0x46, 0x02, 0x01, 0x0A, 0x01, 0x04, 0x0A,
1088		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1089		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1090	PHYREGS(0x091C, 0x0918, 0x0914, 0x01C2, 0x01C2, 0x01C3),
1091  },
1092  {	.channel		= 165,
1093	.freq			= 5825, /* MHz */
1094	.unk2			= 3883,
1095	RADIOREGS(0x72, 0x8D, 0x04, 0x01, 0xED, 0x00, 0x03, 0x14,
1096		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1097		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1098	PHYREGS(0x091E, 0x091A, 0x0916, 0x01C1, 0x01C2, 0x01C3),
1099  },
1100  {	.channel		= 166,
1101	.freq			= 5830, /* MHz */
1102	.unk2			= 3887,
1103	RADIOREGS(0x71, 0x47, 0x02, 0x01, 0x0A, 0x01, 0x04, 0x0A,
1104		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1105		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1106	PHYREGS(0x0920, 0x091C, 0x0918, 0x01C1, 0x01C2, 0x01C2),
1107  },
1108  {	.channel		= 168,
1109	.freq			= 5840, /* MHz */
1110	.unk2			= 3893,
1111	RADIOREGS(0x71, 0x48, 0x02, 0x01, 0x0A, 0x01, 0x04, 0x0A,
1112		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1113		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1114	PHYREGS(0x0924, 0x0920, 0x091C, 0x01C0, 0x01C1, 0x01C2),
1115  },
1116  {	.channel		= 170,
1117	.freq			= 5850, /* MHz */
1118	.unk2			= 3900,
1119	RADIOREGS(0x71, 0x49, 0x02, 0x01, 0xE0, 0x00, 0x04, 0x0A,
1120		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1121		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1122	PHYREGS(0x0928, 0x0924, 0x0920, 0x01BF, 0x01C0, 0x01C1),
1123  },
1124  {	.channel		= 172,
1125	.freq			= 5860, /* MHz */
1126	.unk2			= 3907,
1127	RADIOREGS(0x71, 0x4A, 0x02, 0x01, 0xDE, 0x00, 0x04, 0x0A,
1128		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1129		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1130	PHYREGS(0x092C, 0x0928, 0x0924, 0x01BF, 0x01BF, 0x01C0),
1131  },
1132  {	.channel		= 174,
1133	.freq			= 5870, /* MHz */
1134	.unk2			= 3913,
1135	RADIOREGS(0x71, 0x4B, 0x02, 0x00, 0xDB, 0x00, 0x04, 0x0A,
1136		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1137		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1138	PHYREGS(0x0930, 0x092C, 0x0928, 0x01BE, 0x01BF, 0x01BF),
1139  },
1140  {	.channel		= 176,
1141	.freq			= 5880, /* MHz */
1142	.unk2			= 3920,
1143	RADIOREGS(0x71, 0x4C, 0x02, 0x00, 0xD8, 0x00, 0x04, 0x0A,
1144		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1145		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1146	PHYREGS(0x0934, 0x0930, 0x092C, 0x01BD, 0x01BE, 0x01BF),
1147  },
1148  {	.channel		= 178,
1149	.freq			= 5890, /* MHz */
1150	.unk2			= 3927,
1151	RADIOREGS(0x71, 0x4D, 0x02, 0x00, 0xD6, 0x00, 0x04, 0x0A,
1152		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1153		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1154	PHYREGS(0x0938, 0x0934, 0x0930, 0x01BC, 0x01BD, 0x01BE),
1155  },
1156  {	.channel		= 180,
1157	.freq			= 5900, /* MHz */
1158	.unk2			= 3933,
1159	RADIOREGS(0x71, 0x4E, 0x02, 0x00, 0xD3, 0x00, 0x04, 0x0A,
1160		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1161		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1162	PHYREGS(0x093C, 0x0938, 0x0934, 0x01BC, 0x01BC, 0x01BD),
1163  },
1164  {	.channel		= 182,
1165	.freq			= 5910, /* MHz */
1166	.unk2			= 3940,
1167	RADIOREGS(0x71, 0x4F, 0x02, 0x00, 0xD6, 0x00, 0x04, 0x0A,
1168		  0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
1169		  0x80, 0x00, 0x00, 0x00, 0x00, 0x80),
1170	PHYREGS(0x0940, 0x093C, 0x0938, 0x01BB, 0x01BC, 0x01BC),
1171  },
1172  {	.channel		= 1,
1173	.freq			= 2412, /* MHz */
1174	.unk2			= 3216,
1175	RADIOREGS(0x73, 0x6C, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1176		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0D, 0x0C,
1177		  0x80, 0xFF, 0x88, 0x0D, 0x0C, 0x80),
1178	PHYREGS(0x03C9, 0x03C5, 0x03C1, 0x043A, 0x043F, 0x0443),
1179  },
1180  {	.channel		= 2,
1181	.freq			= 2417, /* MHz */
1182	.unk2			= 3223,
1183	RADIOREGS(0x73, 0x71, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1184		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0C, 0x0B,
1185		  0x80, 0xFF, 0x88, 0x0C, 0x0B, 0x80),
1186	PHYREGS(0x03CB, 0x03C7, 0x03C3, 0x0438, 0x043D, 0x0441),
1187  },
1188  {	.channel		= 3,
1189	.freq			= 2422, /* MHz */
1190	.unk2			= 3229,
1191	RADIOREGS(0x73, 0x76, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1192		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0C, 0x0A,
1193		  0x80, 0xFF, 0x88, 0x0C, 0x0A, 0x80),
1194	PHYREGS(0x03CD, 0x03C9, 0x03C5, 0x0436, 0x043A, 0x043F),
1195  },
1196  {	.channel		= 4,
1197	.freq			= 2427, /* MHz */
1198	.unk2			= 3236,
1199	RADIOREGS(0x73, 0x7B, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1200		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0C, 0x0A,
1201		  0x80, 0xFF, 0x88, 0x0C, 0x0A, 0x80),
1202	PHYREGS(0x03CF, 0x03CB, 0x03C7, 0x0434, 0x0438, 0x043D),
1203  },
1204  {	.channel		= 5,
1205	.freq			= 2432, /* MHz */
1206	.unk2			= 3243,
1207	RADIOREGS(0x73, 0x80, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1208		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0C, 0x09,
1209		  0x80, 0xFF, 0x88, 0x0C, 0x09, 0x80),
1210	PHYREGS(0x03D1, 0x03CD, 0x03C9, 0x0431, 0x0436, 0x043A),
1211  },
1212  {	.channel		= 6,
1213	.freq			= 2437, /* MHz */
1214	.unk2			= 3249,
1215	RADIOREGS(0x73, 0x85, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1216		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0B, 0x08,
1217		  0x80, 0xFF, 0x88, 0x0B, 0x08, 0x80),
1218	PHYREGS(0x03D3, 0x03CF, 0x03CB, 0x042F, 0x0434, 0x0438),
1219  },
1220  {	.channel		= 7,
1221	.freq			= 2442, /* MHz */
1222	.unk2			= 3256,
1223	RADIOREGS(0x73, 0x8A, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1224		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0A, 0x07,
1225		  0x80, 0xFF, 0x88, 0x0A, 0x07, 0x80),
1226	PHYREGS(0x03D5, 0x03D1, 0x03CD, 0x042D, 0x0431, 0x0436),
1227  },
1228  {	.channel		= 8,
1229	.freq			= 2447, /* MHz */
1230	.unk2			= 3263,
1231	RADIOREGS(0x73, 0x8F, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1232		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x0A, 0x06,
1233		  0x80, 0xFF, 0x88, 0x0A, 0x06, 0x80),
1234	PHYREGS(0x03D7, 0x03D3, 0x03CF, 0x042B, 0x042F, 0x0434),
1235  },
1236  {	.channel		= 9,
1237	.freq			= 2452, /* MHz */
1238	.unk2			= 3269,
1239	RADIOREGS(0x73, 0x94, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1240		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x09, 0x06,
1241		  0x80, 0xFF, 0x88, 0x09, 0x06, 0x80),
1242	PHYREGS(0x03D9, 0x03D5, 0x03D1, 0x0429, 0x042D, 0x0431),
1243  },
1244  {	.channel		= 10,
1245	.freq			= 2457, /* MHz */
1246	.unk2			= 3276,
1247	RADIOREGS(0x73, 0x99, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1248		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x08, 0x05,
1249		  0x80, 0xFF, 0x88, 0x08, 0x05, 0x80),
1250	PHYREGS(0x03DB, 0x03D7, 0x03D3, 0x0427, 0x042B, 0x042F),
1251  },
1252  {	.channel		= 11,
1253	.freq			= 2462, /* MHz */
1254	.unk2			= 3283,
1255	RADIOREGS(0x73, 0x9E, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1256		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x08, 0x04,
1257		  0x80, 0xFF, 0x88, 0x08, 0x04, 0x80),
1258	PHYREGS(0x03DD, 0x03D9, 0x03D5, 0x0424, 0x0429, 0x042D),
1259  },
1260  {	.channel		= 12,
1261	.freq			= 2467, /* MHz */
1262	.unk2			= 3289,
1263	RADIOREGS(0x73, 0xA3, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1264		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x08, 0x03,
1265		  0x80, 0xFF, 0x88, 0x08, 0x03, 0x80),
1266	PHYREGS(0x03DF, 0x03DB, 0x03D7, 0x0422, 0x0427, 0x042B),
1267  },
1268  {	.channel		= 13,
1269	.freq			= 2472, /* MHz */
1270	.unk2			= 3296,
1271	RADIOREGS(0x73, 0xA8, 0x09, 0x0F, 0x00, 0x01, 0x07, 0x15,
1272		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x07, 0x03,
1273		  0x80, 0xFF, 0x88, 0x07, 0x03, 0x80),
1274	PHYREGS(0x03E1, 0x03DD, 0x03D9, 0x0420, 0x0424, 0x0429),
1275  },
1276  {	.channel		= 14,
1277	.freq			= 2484, /* MHz */
1278	.unk2			= 3312,
1279	RADIOREGS(0x73, 0xB4, 0x09, 0x0F, 0xFF, 0x01, 0x07, 0x15,
1280		  0x01, 0x8F, 0xFF, 0xFF, 0xFF, 0x88, 0x07, 0x01,
1281		  0x80, 0xFF, 0x88, 0x07, 0x01, 0x80),
1282	PHYREGS(0x03E6, 0x03E2, 0x03DE, 0x041B, 0x041F, 0x0424),
1283  },
1284};
1285
1286void b2055_upload_inittab(struct b43_wldev *dev,
1287			  bool ghz5, bool ignore_uploadflag)
1288{
1289	const struct b2055_inittab_entry *e;
1290	unsigned int i, writes = 0;
1291	u16 value;
1292
1293	for (i = 0; i < ARRAY_SIZE(b2055_inittab); i++) {
1294		e = &(b2055_inittab[i]);
1295		if (!(e->flags & B2055_INITTAB_ENTRY_OK))
1296			continue;
1297		if ((e->flags & B2055_INITTAB_UPLOAD) || ignore_uploadflag) {
1298			if (ghz5)
1299				value = e->ghz5;
1300			else
1301				value = e->ghz2;
1302			b43_radio_write16(dev, i, value);
1303			if (++writes % 4 == 0)
1304				b43_read32(dev, B43_MMIO_MACCTL); /* flush */
1305		}
1306	}
1307}
1308
1309const struct b43_nphy_channeltab_entry_rev2 *
1310b43_nphy_get_chantabent_rev2(struct b43_wldev *dev, u8 channel)
1311{
1312	const struct b43_nphy_channeltab_entry_rev2 *e;
1313	unsigned int i;
1314
1315	for (i = 0; i < ARRAY_SIZE(b43_nphy_channeltab_rev2); i++) {
1316		e = &(b43_nphy_channeltab_rev2[i]);
1317		if (e->channel == channel)
1318			return e;
1319	}
1320
1321	return NULL;
1322}
1323