Commit | Line | Data |
---|---|---|
af01c04e | 1 | /* |
2e1f2566 | 2 | * Copyright (c) 2010 Atheros Communications Inc. |
af01c04e LR |
3 | * |
4 | * Permission to use, copy, modify, and/or distribute this software for any | |
5 | * purpose with or without fee is hereby granted, provided that the above | |
6 | * copyright notice and this permission notice appear in all copies. | |
7 | * | |
8 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
9 | * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
10 | * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
11 | * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
12 | * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
13 | * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
14 | * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
15 | */ | |
16 | ||
af01c04e | 17 | static const u32 ar5416Modes[][6] = { |
2e1f2566 FF |
18 | {0x00001030, 0x00000230, 0x00000460, 0x000002c0, 0x00000160, 0x000001e0}, |
19 | {0x00001070, 0x00000168, 0x000002d0, 0x00000318, 0x0000018c, 0x000001e0}, | |
20 | {0x000010b0, 0x00000e60, 0x00001cc0, 0x00007c70, 0x00003e38, 0x00001180}, | |
21 | {0x000010f0, 0x0000a000, 0x00014000, 0x00016000, 0x0000b000, 0x00014008}, | |
22 | {0x00008014, 0x03e803e8, 0x07d007d0, 0x10801600, 0x08400b00, 0x06e006e0}, | |
23 | {0x0000801c, 0x128d93a7, 0x128d93cf, 0x12e013d7, 0x12e013ab, 0x098813cf}, | |
24 | {0x00008120, 0x08f04800, 0x08f04800, 0x08f04810, 0x08f04810, 0x08f04810}, | |
25 | {0x000081d0, 0x00003210, 0x00003210, 0x0000320a, 0x0000320a, 0x0000320a}, | |
26 | {0x00009804, 0x00000300, 0x000003c4, 0x000003c4, 0x00000300, 0x00000303}, | |
27 | {0x00009820, 0x02020200, 0x02020200, 0x02020200, 0x02020200, 0x02020200}, | |
28 | {0x00009824, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e}, | |
29 | {0x00009828, 0x0a020001, 0x0a020001, 0x0a020001, 0x0a020001, 0x0a020001}, | |
30 | {0x00009834, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e, 0x00000e0e}, | |
31 | {0x00009838, 0x00000007, 0x00000007, 0x00000007, 0x00000007, 0x00000007}, | |
32 | {0x00009844, 0x1372161e, 0x1372161e, 0x137216a0, 0x137216a0, 0x137216a0}, | |
33 | {0x00009848, 0x001a6a65, 0x001a6a65, 0x00197a68, 0x00197a68, 0x00197a68}, | |
34 | {0x0000a848, 0x001a6a65, 0x001a6a65, 0x00197a68, 0x00197a68, 0x00197a68}, | |
35 | {0x0000b848, 0x001a6a65, 0x001a6a65, 0x00197a68, 0x00197a68, 0x00197a68}, | |
36 | {0x00009850, 0x6c48b4e0, 0x6d48b4e0, 0x6d48b0de, 0x6c48b0de, 0x6c48b0de}, | |
37 | {0x00009858, 0x7ec82d2e, 0x7ec82d2e, 0x7ec82d2e, 0x7ec82d2e, 0x7ec82d2e}, | |
38 | {0x0000985c, 0x31395d5e, 0x3139605e, 0x3139605e, 0x31395d5e, 0x31395d5e}, | |
39 | {0x00009860, 0x00049d18, 0x00049d18, 0x00049d18, 0x00049d18, 0x00049d18}, | |
40 | {0x00009864, 0x0001ce00, 0x0001ce00, 0x0001ce00, 0x0001ce00, 0x0001ce00}, | |
41 | {0x00009868, 0x409a4190, 0x409a4190, 0x409a4190, 0x409a4190, 0x409a4190}, | |
42 | {0x0000986c, 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081, 0x050cb081}, | |
43 | {0x00009914, 0x000007d0, 0x00000fa0, 0x00001130, 0x00000898, 0x000007d0}, | |
44 | {0x00009918, 0x000001b8, 0x00000370, 0x00000268, 0x00000134, 0x00000134}, | |
45 | {0x00009924, 0xd0058a0b, 0xd0058a0b, 0xd0058a0b, 0xd0058a0b, 0xd0058a0b}, | |
46 | {0x00009944, 0xffb81020, 0xffb81020, 0xffb81020, 0xffb81020, 0xffb81020}, | |
47 | {0x00009960, 0x00000900, 0x00000900, 0x00012d80, 0x00012d80, 0x00012d80}, | |
48 | {0x0000a960, 0x00000900, 0x00000900, 0x00012d80, 0x00012d80, 0x00012d80}, | |
49 | {0x0000b960, 0x00000900, 0x00000900, 0x00012d80, 0x00012d80, 0x00012d80}, | |
50 | {0x00009964, 0x00000000, 0x00000000, 0x00001120, 0x00001120, 0x00001120}, | |
51 | {0x000099bc, 0x001a0a00, 0x001a0a00, 0x001a0a00, 0x001a0a00, 0x001a0a00}, | |
52 | {0x000099c0, 0x038919be, 0x038919be, 0x038919be, 0x038919be, 0x038919be}, | |
53 | {0x000099c4, 0x06336f77, 0x06336f77, 0x06336f77, 0x06336f77, 0x06336f77}, | |
54 | {0x000099c8, 0x6af6532c, 0x6af6532c, 0x6af6532c, 0x6af6532c, 0x6af6532c}, | |
55 | {0x000099cc, 0x08f186c8, 0x08f186c8, 0x08f186c8, 0x08f186c8, 0x08f186c8}, | |
56 | {0x000099d0, 0x00046384, 0x00046384, 0x00046384, 0x00046384, 0x00046384}, | |
57 | {0x000099d4, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, | |
58 | {0x000099d8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, | |
59 | {0x0000a204, 0x00000880, 0x00000880, 0x00000880, 0x00000880, 0x00000880}, | |
60 | {0x0000a208, 0xd6be4788, 0xd6be4788, 0xd03e4788, 0xd03e4788, 0xd03e4788}, | |
61 | {0x0000a20c, 0x002ec1e0, 0x002ec1e0, 0x002ac120, 0x002ac120, 0x002ac120}, | |
62 | {0x0000b20c, 0x002ec1e0, 0x002ec1e0, 0x002ac120, 0x002ac120, 0x002ac120}, | |
63 | {0x0000c20c, 0x002ec1e0, 0x002ec1e0, 0x002ac120, 0x002ac120, 0x002ac120}, | |
64 | {0x0000a21c, 0x1883800a, 0x1883800a, 0x1883800a, 0x1883800a, 0x1883800a}, | |
65 | {0x0000a230, 0x00000000, 0x00000000, 0x00000210, 0x00000108, 0x00000000}, | |
66 | {0x0000a274, 0x0a1a9caa, 0x0a1a9caa, 0x0a1a7caa, 0x0a1a7caa, 0x0a1a7caa}, | |
67 | {0x0000a300, 0x18010000, 0x18010000, 0x18010000, 0x18010000, 0x18010000}, | |
68 | {0x0000a304, 0x30032602, 0x30032602, 0x2e032402, 0x2e032402, 0x2e032402}, | |
69 | {0x0000a308, 0x48073e06, 0x48073e06, 0x4a0a3c06, 0x4a0a3c06, 0x4a0a3c06}, | |
70 | {0x0000a30c, 0x560b4c0a, 0x560b4c0a, 0x621a540b, 0x621a540b, 0x621a540b}, | |
71 | {0x0000a310, 0x641a600f, 0x641a600f, 0x764f6c1b, 0x764f6c1b, 0x764f6c1b}, | |
72 | {0x0000a314, 0x7a4f6e1b, 0x7a4f6e1b, 0x845b7a5a, 0x845b7a5a, 0x845b7a5a}, | |
73 | {0x0000a318, 0x8c5b7e5a, 0x8c5b7e5a, 0x950f8ccf, 0x950f8ccf, 0x950f8ccf}, | |
74 | {0x0000a31c, 0x9d0f96cf, 0x9d0f96cf, 0xa5cf9b4f, 0xa5cf9b4f, 0xa5cf9b4f}, | |
75 | {0x0000a320, 0xb51fa69f, 0xb51fa69f, 0xbddfaf1f, 0xbddfaf1f, 0xbddfaf1f}, | |
76 | {0x0000a324, 0xcb3fbd07, 0xcb3fbcbf, 0xd1ffc93f, 0xd1ffc93f, 0xd1ffc93f}, | |
77 | {0x0000a328, 0x0000d7bf, 0x0000d7bf, 0x00000000, 0x00000000, 0x00000000}, | |
78 | {0x0000a32c, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, | |
79 | {0x0000a330, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, | |
80 | {0x0000a334, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000}, | |
af01c04e LR |
81 | }; |
82 | ||
83 | static const u32 ar5416Common[][2] = { | |
2e1f2566 FF |
84 | /* Addr allmodes */ |
85 | {0x0000000c, 0x00000000}, | |
86 | {0x00000030, 0x00020015}, | |
87 | {0x00000034, 0x00000005}, | |
88 | {0x00000040, 0x00000000}, | |
89 | {0x00000044, 0x00000008}, | |
90 | {0x00000048, 0x00000008}, | |
91 | {0x0000004c, 0x00000010}, | |
92 | {0x00000050, 0x00000000}, | |
93 | {0x00000054, 0x0000001f}, | |
94 | {0x00000800, 0x00000000}, | |
95 | {0x00000804, 0x00000000}, | |
96 | {0x00000808, 0x00000000}, | |
97 | {0x0000080c, 0x00000000}, | |
98 | {0x00000810, 0x00000000}, | |
99 | {0x00000814, 0x00000000}, | |
100 | {0x00000818, 0x00000000}, | |
101 | {0x0000081c, 0x00000000}, | |
102 | {0x00000820, 0x00000000}, | |
103 | {0x00000824, 0x00000000}, | |
104 | {0x00001040, 0x002ffc0f}, | |
105 | {0x00001044, 0x002ffc0f}, | |
106 | {0x00001048, 0x002ffc0f}, | |
107 | {0x0000104c, 0x002ffc0f}, | |
108 | {0x00001050, 0x002ffc0f}, | |
109 | {0x00001054, 0x002ffc0f}, | |
110 | {0x00001058, 0x002ffc0f}, | |
111 | {0x0000105c, 0x002ffc0f}, | |
112 | {0x00001060, 0x002ffc0f}, | |
113 | {0x00001064, 0x002ffc0f}, | |
114 | {0x00001230, 0x00000000}, | |
115 | {0x00001270, 0x00000000}, | |
116 | {0x00001038, 0x00000000}, | |
117 | {0x00001078, 0x00000000}, | |
118 | {0x000010b8, 0x00000000}, | |
119 | {0x000010f8, 0x00000000}, | |
120 | {0x00001138, 0x00000000}, | |
121 | {0x00001178, 0x00000000}, | |
122 | {0x000011b8, 0x00000000}, | |
123 | {0x000011f8, 0x00000000}, | |
124 | {0x00001238, 0x00000000}, | |
125 | {0x00001278, 0x00000000}, | |
126 | {0x000012b8, 0x00000000}, | |
127 | {0x000012f8, 0x00000000}, | |
128 | {0x00001338, 0x00000000}, | |
129 | {0x00001378, 0x00000000}, | |
130 | {0x000013b8, 0x00000000}, | |
131 | {0x000013f8, 0x00000000}, | |
132 | {0x00001438, 0x00000000}, | |
133 | {0x00001478, 0x00000000}, | |
134 | {0x000014b8, 0x00000000}, | |
135 | {0x000014f8, 0x00000000}, | |
136 | {0x00001538, 0x00000000}, | |
137 | {0x00001578, 0x00000000}, | |
138 | {0x000015b8, 0x00000000}, | |
139 | {0x000015f8, 0x00000000}, | |
140 | {0x00001638, 0x00000000}, | |
141 | {0x00001678, 0x00000000}, | |
142 | {0x000016b8, 0x00000000}, | |
143 | {0x000016f8, 0x00000000}, | |
144 | {0x00001738, 0x00000000}, | |
145 | {0x00001778, 0x00000000}, | |
146 | {0x000017b8, 0x00000000}, | |
147 | {0x000017f8, 0x00000000}, | |
148 | {0x0000103c, 0x00000000}, | |
149 | {0x0000107c, 0x00000000}, | |
150 | {0x000010bc, 0x00000000}, | |
151 | {0x000010fc, 0x00000000}, | |
152 | {0x0000113c, 0x00000000}, | |
153 | {0x0000117c, 0x00000000}, | |
154 | {0x000011bc, 0x00000000}, | |
155 | {0x000011fc, 0x00000000}, | |
156 | {0x0000123c, 0x00000000}, | |
157 | {0x0000127c, 0x00000000}, | |
158 | {0x000012bc, 0x00000000}, | |
159 | {0x000012fc, 0x00000000}, | |
160 | {0x0000133c, 0x00000000}, | |
161 | {0x0000137c, 0x00000000}, | |
162 | {0x000013bc, 0x00000000}, | |
163 | {0x000013fc, 0x00000000}, | |
164 | {0x0000143c, 0x00000000}, | |
165 | {0x0000147c, 0x00000000}, | |
166 | {0x00004030, 0x00000002}, | |
167 | {0x0000403c, 0x00000002}, | |
168 | {0x00007010, 0x00000000}, | |
169 | {0x00007038, 0x000004c2}, | |
170 | {0x00008004, 0x00000000}, | |
171 | {0x00008008, 0x00000000}, | |
172 | {0x0000800c, 0x00000000}, | |
173 | {0x00008018, 0x00000700}, | |
174 | {0x00008020, 0x00000000}, | |
175 | {0x00008038, 0x00000000}, | |
176 | {0x0000803c, 0x00000000}, | |
177 | {0x00008048, 0x40000000}, | |
178 | {0x00008054, 0x00000000}, | |
179 | {0x00008058, 0x00000000}, | |
180 | {0x0000805c, 0x000fc78f}, | |
181 | {0x00008060, 0x0000000f}, | |
182 | {0x00008064, 0x00000000}, | |
183 | {0x000080c0, 0x2a82301a}, | |
184 | {0x000080c4, 0x05dc01e0}, | |
185 | {0x000080c8, 0x1f402710}, | |
186 | {0x000080cc, 0x01f40000}, | |
187 | {0x000080d0, 0x00001e00}, | |
188 | {0x000080d4, 0x00000000}, | |
189 | {0x000080d8, 0x00400000}, | |
190 | {0x000080e0, 0xffffffff}, | |
191 | {0x000080e4, 0x0000ffff}, | |
192 | {0x000080e8, 0x003f3f3f}, | |
193 | {0x000080ec, 0x00000000}, | |
194 | {0x000080f0, 0x00000000}, | |
195 | {0x000080f4, 0x00000000}, | |
196 | {0x000080f8, 0x00000000}, | |
197 | {0x000080fc, 0x00020000}, | |
198 | {0x00008100, 0x00020000}, | |
199 | {0x00008104, 0x00000001}, | |
200 | {0x00008108, 0x00000052}, | |
201 | {0x0000810c, 0x00000000}, | |
202 | {0x00008110, 0x00000168}, | |
203 | {0x00008118, 0x000100aa}, | |
204 | {0x0000811c, 0x00003210}, | |
205 | {0x00008124, 0x00000000}, | |
206 | {0x00008128, 0x00000000}, | |
207 | {0x0000812c, 0x00000000}, | |
208 | {0x00008130, 0x00000000}, | |
209 | {0x00008134, 0x00000000}, | |
210 | {0x00008138, 0x00000000}, | |
211 | {0x0000813c, 0x00000000}, | |
212 | {0x00008144, 0xffffffff}, | |
213 | {0x00008168, 0x00000000}, | |
214 | {0x0000816c, 0x00000000}, | |
215 | {0x00008170, 0x32143320}, | |
216 | {0x00008174, 0xfaa4fa50}, | |
217 | {0x00008178, 0x00000100}, | |
218 | {0x0000817c, 0x00000000}, | |
219 | {0x000081c4, 0x00000000}, | |
220 | {0x000081ec, 0x00000000}, | |
221 | {0x000081f0, 0x00000000}, | |
222 | {0x000081f4, 0x00000000}, | |
223 | {0x000081f8, 0x00000000}, | |
224 | {0x000081fc, 0x00000000}, | |
225 | {0x00008200, 0x00000000}, | |
226 | {0x00008204, 0x00000000}, | |
227 | {0x00008208, 0x00000000}, | |
228 | {0x0000820c, 0x00000000}, | |
229 | {0x00008210, 0x00000000}, | |
230 | {0x00008214, 0x00000000}, | |
231 | {0x00008218, 0x00000000}, | |
232 | {0x0000821c, 0x00000000}, | |
233 | {0x00008220, 0x00000000}, | |
234 | {0x00008224, 0x00000000}, | |
235 | {0x00008228, 0x00000000}, | |
236 | {0x0000822c, 0x00000000}, | |
237 | {0x00008230, 0x00000000}, | |
238 | {0x00008234, 0x00000000}, | |
239 | {0x00008238, 0x00000000}, | |
240 | {0x0000823c, 0x00000000}, | |
241 | {0x00008240, 0x00100000}, | |
242 | {0x00008244, 0x0010f400}, | |
243 | {0x00008248, 0x00000100}, | |
244 | {0x0000824c, 0x0001e800}, | |
245 | {0x00008250, 0x00000000}, | |
246 | {0x00008254, 0x00000000}, | |
247 | {0x00008258, 0x00000000}, | |
248 | {0x0000825c, 0x400000ff}, | |
249 | {0x00008260, 0x00080922}, | |
250 | {0x00008264, 0x88000010}, | |
251 | {0x00008270, 0x00000000}, | |
252 | {0x00008274, 0x40000000}, | |
253 | {0x00008278, 0x003e4180}, | |
254 | {0x0000827c, 0x00000000}, | |
255 | {0x00008284, 0x0000002c}, | |
256 | {0x00008288, 0x0000002c}, | |
257 | {0x0000828c, 0x00000000}, | |
258 | {0x00008294, 0x00000000}, | |
259 | {0x00008298, 0x00000000}, | |
260 | {0x00008300, 0x00000000}, | |
261 | {0x00008304, 0x00000000}, | |
262 | {0x00008308, 0x00000000}, | |
263 | {0x0000830c, 0x00000000}, | |
264 | {0x00008310, 0x00000000}, | |
265 | {0x00008314, 0x00000000}, | |
266 | {0x00008318, 0x00000000}, | |
267 | {0x00008328, 0x00000000}, | |
268 | {0x0000832c, 0x00000007}, | |
269 | {0x00008330, 0x00000302}, | |
270 | {0x00008334, 0x00000e00}, | |
271 | {0x00008338, 0x00070000}, | |
272 | {0x0000833c, 0x00000000}, | |
273 | {0x00008340, 0x000107ff}, | |
274 | {0x00009808, 0x00000000}, | |
275 | {0x0000980c, 0xad848e19}, | |
276 | {0x00009810, 0x7d14e000}, | |
277 | {0x00009814, 0x9c0a9f6b}, | |
278 | {0x0000981c, 0x00000000}, | |
279 | {0x0000982c, 0x0000a000}, | |
280 | {0x00009830, 0x00000000}, | |
281 | {0x0000983c, 0x00200400}, | |
282 | {0x00009840, 0x206a002e}, | |
283 | {0x0000984c, 0x1284233c}, | |
284 | {0x00009854, 0x00000859}, | |
285 | {0x00009900, 0x00000000}, | |
286 | {0x00009904, 0x00000000}, | |
287 | {0x00009908, 0x00000000}, | |
288 | {0x0000990c, 0x00000000}, | |
289 | {0x0000991c, 0x10000fff}, | |
290 | {0x00009920, 0x05100000}, | |
291 | {0x0000a920, 0x05100000}, | |
292 | {0x0000b920, 0x05100000}, | |
293 | {0x00009928, 0x00000001}, | |
294 | {0x0000992c, 0x00000004}, | |
295 | {0x00009934, 0x1e1f2022}, | |
296 | {0x00009938, 0x0a0b0c0d}, | |
297 | {0x0000993c, 0x00000000}, | |
298 | {0x00009948, 0x9280b212}, | |
299 | {0x0000994c, 0x00020028}, | |
300 | {0x00009954, 0x5d50e188}, | |
301 | {0x00009958, 0x00081fff}, | |
302 | {0x0000c95c, 0x004b6a8e}, | |
303 | {0x0000c968, 0x000003ce}, | |
304 | {0x00009970, 0x190fb515}, | |
305 | {0x00009974, 0x00000000}, | |
306 | {0x00009978, 0x00000001}, | |
307 | {0x0000997c, 0x00000000}, | |
308 | {0x00009980, 0x00000000}, | |
309 | {0x00009984, 0x00000000}, | |
310 | {0x00009988, 0x00000000}, | |
311 | {0x0000998c, 0x00000000}, | |
312 | {0x00009990, 0x00000000}, | |
313 | {0x00009994, 0x00000000}, | |
314 | {0x00009998, 0x00000000}, | |
315 | {0x0000999c, 0x00000000}, | |
316 | {0x000099a0, 0x00000000}, | |
317 | {0x000099a4, 0x00000001}, | |
318 | {0x000099a8, 0x001fff00}, | |
319 | {0x000099ac, 0x00000000}, | |
320 | {0x000099b0, 0x03051000}, | |
321 | {0x000099dc, 0x00000000}, | |
322 | {0x000099e0, 0x00000200}, | |
323 | {0x000099e4, 0xaaaaaaaa}, | |
324 | {0x000099e8, 0x3c466478}, | |
325 | {0x000099ec, 0x000000aa}, | |
326 | {0x000099fc, 0x00001042}, | |
327 | {0x00009b00, 0x00000000}, | |
328 | {0x00009b04, 0x00000001}, | |
329 | {0x00009b08, 0x00000002}, | |
330 | {0x00009b0c, 0x00000003}, | |
331 | {0x00009b10, 0x00000004}, | |
332 | {0x00009b14, 0x00000005}, | |
333 | {0x00009b18, 0x00000008}, | |
334 | {0x00009b1c, 0x00000009}, | |
335 | {0x00009b20, 0x0000000a}, | |
336 | {0x00009b24, 0x0000000b}, | |
337 | {0x00009b28, 0x0000000c}, | |
338 | {0x00009b2c, 0x0000000d}, | |
339 | {0x00009b30, 0x00000010}, | |
340 | {0x00009b34, 0x00000011}, | |
341 | {0x00009b38, 0x00000012}, | |
342 | {0x00009b3c, 0x00000013}, | |
343 | {0x00009b40, 0x00000014}, | |
344 | {0x00009b44, 0x00000015}, | |
345 | {0x00009b48, 0x00000018}, | |
346 | {0x00009b4c, 0x00000019}, | |
347 | {0x00009b50, 0x0000001a}, | |
348 | {0x00009b54, 0x0000001b}, | |
349 | {0x00009b58, 0x0000001c}, | |
350 | {0x00009b5c, 0x0000001d}, | |
351 | {0x00009b60, 0x00000020}, | |
352 | {0x00009b64, 0x00000021}, | |
353 | {0x00009b68, 0x00000022}, | |
354 | {0x00009b6c, 0x00000023}, | |
355 | {0x00009b70, 0x00000024}, | |
356 | {0x00009b74, 0x00000025}, | |
357 | {0x00009b78, 0x00000028}, | |
358 | {0x00009b7c, 0x00000029}, | |
359 | {0x00009b80, 0x0000002a}, | |
360 | {0x00009b84, 0x0000002b}, | |
361 | {0x00009b88, 0x0000002c}, | |
362 | {0x00009b8c, 0x0000002d}, | |
363 | {0x00009b90, 0x00000030}, | |
364 | {0x00009b94, 0x00000031}, | |
365 | {0x00009b98, 0x00000032}, | |
366 | {0x00009b9c, 0x00000033}, | |
367 | {0x00009ba0, 0x00000034}, | |
368 | {0x00009ba4, 0x00000035}, | |
369 | {0x00009ba8, 0x00000035}, | |
370 | {0x00009bac, 0x00000035}, | |
371 | {0x00009bb0, 0x00000035}, | |
372 | {0x00009bb4, 0x00000035}, | |
373 | {0x00009bb8, 0x00000035}, | |
374 | {0x00009bbc, 0x00000035}, | |
375 | {0x00009bc0, 0x00000035}, | |
376 | {0x00009bc4, 0x00000035}, | |
377 | {0x00009bc8, 0x00000035}, | |
378 | {0x00009bcc, 0x00000035}, | |
379 | {0x00009bd0, 0x00000035}, | |
380 | {0x00009bd4, 0x00000035}, | |
381 | {0x00009bd8, 0x00000035}, | |
382 | {0x00009bdc, 0x00000035}, | |
383 | {0x00009be0, 0x00000035}, | |
384 | {0x00009be4, 0x00000035}, | |
385 | {0x00009be8, 0x00000035}, | |
386 | {0x00009bec, 0x00000035}, | |
387 | {0x00009bf0, 0x00000035}, | |
388 | {0x00009bf4, 0x00000035}, | |
389 | {0x00009bf8, 0x00000010}, | |
390 | {0x00009bfc, 0x0000001a}, | |
391 | {0x0000a210, 0x40806333}, | |
392 | {0x0000a214, 0x00106c10}, | |
393 | {0x0000a218, 0x009c4060}, | |
394 | {0x0000a220, 0x018830c6}, | |
395 | {0x0000a224, 0x00000400}, | |
396 | {0x0000a228, 0x00000bb5}, | |
397 | {0x0000a22c, 0x00000011}, | |
398 | {0x0000a234, 0x20202020}, | |
399 | {0x0000a238, 0x20202020}, | |
400 | {0x0000a23c, 0x13c889af}, | |
401 | {0x0000a240, 0x38490a20}, | |
402 | {0x0000a244, 0x00007bb6}, | |
403 | {0x0000a248, 0x0fff3ffc}, | |
404 | {0x0000a24c, 0x00000001}, | |
405 | {0x0000a250, 0x0000a000}, | |
406 | {0x0000a254, 0x00000000}, | |
407 | {0x0000a258, 0x0cc75380}, | |
408 | {0x0000a25c, 0x0f0f0f01}, | |
409 | {0x0000a260, 0xdfa91f01}, | |
410 | {0x0000a268, 0x00000000}, | |
411 | {0x0000a26c, 0x0e79e5c6}, | |
412 | {0x0000b26c, 0x0e79e5c6}, | |
413 | {0x0000c26c, 0x0e79e5c6}, | |
414 | {0x0000d270, 0x00820820}, | |
415 | {0x0000a278, 0x1ce739ce}, | |
416 | {0x0000a27c, 0x051701ce}, | |
417 | {0x0000a338, 0x00000000}, | |
418 | {0x0000a33c, 0x00000000}, | |
419 | {0x0000a340, 0x00000000}, | |
420 | {0x0000a344, 0x00000000}, | |
421 | {0x0000a348, 0x3fffffff}, | |
422 | {0x0000a34c, 0x3fffffff}, | |
423 | {0x0000a350, 0x3fffffff}, | |
424 | {0x0000a354, 0x0003ffff}, | |
425 | {0x0000a358, 0x79a8aa1f}, | |
426 | {0x0000d35c, 0x07ffffef}, | |
427 | {0x0000d360, 0x0fffffe7}, | |
428 | {0x0000d364, 0x17ffffe5}, | |
429 | {0x0000d368, 0x1fffffe4}, | |
430 | {0x0000d36c, 0x37ffffe3}, | |
431 | {0x0000d370, 0x3fffffe3}, | |
432 | {0x0000d374, 0x57ffffe3}, | |
433 | {0x0000d378, 0x5fffffe2}, | |
434 | {0x0000d37c, 0x7fffffe2}, | |
435 | {0x0000d380, 0x7f3c7bba}, | |
436 | {0x0000d384, 0xf3307ff0}, | |
437 | {0x0000a388, 0x08000000}, | |
438 | {0x0000a38c, 0x20202020}, | |
439 | {0x0000a390, 0x20202020}, | |
440 | {0x0000a394, 0x1ce739ce}, | |
441 | {0x0000a398, 0x000001ce}, | |
442 | {0x0000a39c, 0x00000001}, | |
443 | {0x0000a3a0, 0x00000000}, | |
444 | {0x0000a3a4, 0x00000000}, | |
445 | {0x0000a3a8, 0x00000000}, | |
446 | {0x0000a3ac, 0x00000000}, | |
447 | {0x0000a3b0, 0x00000000}, | |
448 | {0x0000a3b4, 0x00000000}, | |
449 | {0x0000a3b8, 0x00000000}, | |
450 | {0x0000a3bc, 0x00000000}, | |
451 | {0x0000a3c0, 0x00000000}, | |
452 | {0x0000a3c4, 0x00000000}, | |
453 | {0x0000a3c8, 0x00000246}, | |
454 | {0x0000a3cc, 0x20202020}, | |
455 | {0x0000a3d0, 0x20202020}, | |
456 | {0x0000a3d4, 0x20202020}, | |
457 | {0x0000a3dc, 0x1ce739ce}, | |
458 | {0x0000a3e0, 0x000001ce}, | |
af01c04e LR |
459 | }; |
460 | ||
461 | static const u32 ar5416Bank0[][2] = { | |
2e1f2566 FF |
462 | /* Addr allmodes */ |
463 | {0x000098b0, 0x1e5795e5}, | |
464 | {0x000098e0, 0x02008020}, | |
af01c04e LR |
465 | }; |
466 | ||
467 | static const u32 ar5416BB_RfGain[][3] = { | |
2e1f2566 FF |
468 | /* Addr 5G_HT20 5G_HT40 */ |
469 | {0x00009a00, 0x00000000, 0x00000000}, | |
470 | {0x00009a04, 0x00000040, 0x00000040}, | |
471 | {0x00009a08, 0x00000080, 0x00000080}, | |
472 | {0x00009a0c, 0x000001a1, 0x00000141}, | |
473 | {0x00009a10, 0x000001e1, 0x00000181}, | |
474 | {0x00009a14, 0x00000021, 0x000001c1}, | |
475 | {0x00009a18, 0x00000061, 0x00000001}, | |
476 | {0x00009a1c, 0x00000168, 0x00000041}, | |
477 | {0x00009a20, 0x000001a8, 0x000001a8}, | |
478 | {0x00009a24, 0x000001e8, 0x000001e8}, | |
479 | {0x00009a28, 0x00000028, 0x00000028}, | |
480 | {0x00009a2c, 0x00000068, 0x00000068}, | |
481 | {0x00009a30, 0x00000189, 0x000000a8}, | |
482 | {0x00009a34, 0x000001c9, 0x00000169}, | |
483 | {0x00009a38, 0x00000009, 0x000001a9}, | |
484 | {0x00009a3c, 0x00000049, 0x000001e9}, | |
485 | {0x00009a40, 0x00000089, 0x00000029}, | |
486 | {0x00009a44, 0x00000170, 0x00000069}, | |
487 | {0x00009a48, 0x000001b0, 0x00000190}, | |
488 | {0x00009a4c, 0x000001f0, 0x000001d0}, | |
489 | {0x00009a50, 0x00000030, 0x00000010}, | |
490 | {0x00009a54, 0x00000070, 0x00000050}, | |
491 | {0x00009a58, 0x00000191, 0x00000090}, | |
492 | {0x00009a5c, 0x000001d1, 0x00000151}, | |
493 | {0x00009a60, 0x00000011, 0x00000191}, | |
494 | {0x00009a64, 0x00000051, 0x000001d1}, | |
495 | {0x00009a68, 0x00000091, 0x00000011}, | |
496 | {0x00009a6c, 0x000001b8, 0x00000051}, | |
497 | {0x00009a70, 0x000001f8, 0x00000198}, | |
498 | {0x00009a74, 0x00000038, 0x000001d8}, | |
499 | {0x00009a78, 0x00000078, 0x00000018}, | |
500 | {0x00009a7c, 0x00000199, 0x00000058}, | |
501 | {0x00009a80, 0x000001d9, 0x00000098}, | |
502 | {0x00009a84, 0x00000019, 0x00000159}, | |
503 | {0x00009a88, 0x00000059, 0x00000199}, | |
504 | {0x00009a8c, 0x00000099, 0x000001d9}, | |
505 | {0x00009a90, 0x000000d9, 0x00000019}, | |
506 | {0x00009a94, 0x000000f9, 0x00000059}, | |
507 | {0x00009a98, 0x000000f9, 0x00000099}, | |
508 | {0x00009a9c, 0x000000f9, 0x000000d9}, | |
509 | {0x00009aa0, 0x000000f9, 0x000000f9}, | |
510 | {0x00009aa4, 0x000000f9, 0x000000f9}, | |
511 | {0x00009aa8, 0x000000f9, 0x000000f9}, | |
512 | {0x00009aac, 0x000000f9, 0x000000f9}, | |
513 | {0x00009ab0, 0x000000f9, 0x000000f9}, | |
514 | {0x00009ab4, 0x000000f9, 0x000000f9}, | |
515 | {0x00009ab8, 0x000000f9, 0x000000f9}, | |
516 | {0x00009abc, 0x000000f9, 0x000000f9}, | |
517 | {0x00009ac0, 0x000000f9, 0x000000f9}, | |
518 | {0x00009ac4, 0x000000f9, 0x000000f9}, | |
519 | {0x00009ac8, 0x000000f9, 0x000000f9}, | |
520 | {0x00009acc, 0x000000f9, 0x000000f9}, | |
521 | {0x00009ad0, 0x000000f9, 0x000000f9}, | |
522 | {0x00009ad4, 0x000000f9, 0x000000f9}, | |
523 | {0x00009ad8, 0x000000f9, 0x000000f9}, | |
524 | {0x00009adc, 0x000000f9, 0x000000f9}, | |
525 | {0x00009ae0, 0x000000f9, 0x000000f9}, | |
526 | {0x00009ae4, 0x000000f9, 0x000000f9}, | |
527 | {0x00009ae8, 0x000000f9, 0x000000f9}, | |
528 | {0x00009aec, 0x000000f9, 0x000000f9}, | |
529 | {0x00009af0, 0x000000f9, 0x000000f9}, | |
530 | {0x00009af4, 0x000000f9, 0x000000f9}, | |
531 | {0x00009af8, 0x000000f9, 0x000000f9}, | |
532 | {0x00009afc, 0x000000f9, 0x000000f9}, | |
af01c04e LR |
533 | }; |
534 | ||
535 | static const u32 ar5416Bank1[][2] = { | |
2e1f2566 FF |
536 | /* Addr allmodes */ |
537 | {0x000098b0, 0x02108421}, | |
538 | {0x000098ec, 0x00000008}, | |
af01c04e LR |
539 | }; |
540 | ||
541 | static const u32 ar5416Bank2[][2] = { | |
2e1f2566 FF |
542 | /* Addr allmodes */ |
543 | {0x000098b0, 0x0e73ff17}, | |
544 | {0x000098e0, 0x00000420}, | |
af01c04e LR |
545 | }; |
546 | ||
547 | static const u32 ar5416Bank3[][3] = { | |
2e1f2566 FF |
548 | /* Addr 5G_HT20 5G_HT40 */ |
549 | {0x000098f0, 0x01400018, 0x01c00018}, | |
af01c04e LR |
550 | }; |
551 | ||
552 | static const u32 ar5416Bank6[][3] = { | |
2e1f2566 FF |
553 | /* Addr 5G_HT20 5G_HT40 */ |
554 | {0x0000989c, 0x00000000, 0x00000000}, | |
555 | {0x0000989c, 0x00000000, 0x00000000}, | |
556 | {0x0000989c, 0x00000000, 0x00000000}, | |
557 | {0x0000989c, 0x00e00000, 0x00e00000}, | |
558 | {0x0000989c, 0x005e0000, 0x005e0000}, | |
559 | {0x0000989c, 0x00120000, 0x00120000}, | |
560 | {0x0000989c, 0x00620000, 0x00620000}, | |
561 | {0x0000989c, 0x00020000, 0x00020000}, | |
562 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
563 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
564 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
565 | {0x0000989c, 0x40ff0000, 0x40ff0000}, | |
566 | {0x0000989c, 0x005f0000, 0x005f0000}, | |
567 | {0x0000989c, 0x00870000, 0x00870000}, | |
568 | {0x0000989c, 0x00f90000, 0x00f90000}, | |
569 | {0x0000989c, 0x007b0000, 0x007b0000}, | |
570 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
571 | {0x0000989c, 0x00f50000, 0x00f50000}, | |
572 | {0x0000989c, 0x00dc0000, 0x00dc0000}, | |
573 | {0x0000989c, 0x00110000, 0x00110000}, | |
574 | {0x0000989c, 0x006100a8, 0x006100a8}, | |
575 | {0x0000989c, 0x004210a2, 0x004210a2}, | |
576 | {0x0000989c, 0x0014008f, 0x0014008f}, | |
577 | {0x0000989c, 0x00c40003, 0x00c40003}, | |
578 | {0x0000989c, 0x003000f2, 0x003000f2}, | |
579 | {0x0000989c, 0x00440016, 0x00440016}, | |
580 | {0x0000989c, 0x00410040, 0x00410040}, | |
581 | {0x0000989c, 0x0001805e, 0x0001805e}, | |
582 | {0x0000989c, 0x0000c0ab, 0x0000c0ab}, | |
583 | {0x0000989c, 0x000000f1, 0x000000f1}, | |
584 | {0x0000989c, 0x00002081, 0x00002081}, | |
585 | {0x0000989c, 0x000000d4, 0x000000d4}, | |
586 | {0x000098d0, 0x0000000f, 0x0010000f}, | |
af01c04e LR |
587 | }; |
588 | ||
589 | static const u32 ar5416Bank6TPC[][3] = { | |
2e1f2566 FF |
590 | /* Addr 5G_HT20 5G_HT40 */ |
591 | {0x0000989c, 0x00000000, 0x00000000}, | |
592 | {0x0000989c, 0x00000000, 0x00000000}, | |
593 | {0x0000989c, 0x00000000, 0x00000000}, | |
594 | {0x0000989c, 0x00e00000, 0x00e00000}, | |
595 | {0x0000989c, 0x005e0000, 0x005e0000}, | |
596 | {0x0000989c, 0x00120000, 0x00120000}, | |
597 | {0x0000989c, 0x00620000, 0x00620000}, | |
598 | {0x0000989c, 0x00020000, 0x00020000}, | |
599 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
600 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
601 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
602 | {0x0000989c, 0x40ff0000, 0x40ff0000}, | |
603 | {0x0000989c, 0x005f0000, 0x005f0000}, | |
604 | {0x0000989c, 0x00870000, 0x00870000}, | |
605 | {0x0000989c, 0x00f90000, 0x00f90000}, | |
606 | {0x0000989c, 0x007b0000, 0x007b0000}, | |
607 | {0x0000989c, 0x00ff0000, 0x00ff0000}, | |
608 | {0x0000989c, 0x00f50000, 0x00f50000}, | |
609 | {0x0000989c, 0x00dc0000, 0x00dc0000}, | |
610 | {0x0000989c, 0x00110000, 0x00110000}, | |
611 | {0x0000989c, 0x006100a8, 0x006100a8}, | |
612 | {0x0000989c, 0x00423022, 0x00423022}, | |
613 | {0x0000989c, 0x201400df, 0x201400df}, | |
614 | {0x0000989c, 0x00c40002, 0x00c40002}, | |
615 | {0x0000989c, 0x003000f2, 0x003000f2}, | |
616 | {0x0000989c, 0x00440016, 0x00440016}, | |
617 | {0x0000989c, 0x00410040, 0x00410040}, | |
618 | {0x0000989c, 0x0001805e, 0x0001805e}, | |
619 | {0x0000989c, 0x0000c0ab, 0x0000c0ab}, | |
620 | {0x0000989c, 0x000000e1, 0x000000e1}, | |
621 | {0x0000989c, 0x00007081, 0x00007081}, | |
622 | {0x0000989c, 0x000000d4, 0x000000d4}, | |
623 | {0x000098d0, 0x0000000f, 0x0010000f}, | |
af01c04e LR |
624 | }; |
625 | ||
626 | static const u32 ar5416Bank7[][2] = { | |
2e1f2566 FF |
627 | /* Addr allmodes */ |
628 | {0x0000989c, 0x00000500}, | |
629 | {0x0000989c, 0x00000800}, | |
630 | {0x000098cc, 0x0000000e}, | |
af01c04e LR |
631 | }; |
632 | ||
633 | static const u32 ar5416Addac[][2] = { | |
2e1f2566 FF |
634 | /* Addr allmodes */ |
635 | {0x0000989c, 0x00000000}, | |
636 | {0x0000989c, 0x00000003}, | |
637 | {0x0000989c, 0x00000000}, | |
638 | {0x0000989c, 0x0000000c}, | |
639 | {0x0000989c, 0x00000000}, | |
640 | {0x0000989c, 0x00000030}, | |
641 | {0x0000989c, 0x00000000}, | |
642 | {0x0000989c, 0x00000000}, | |
643 | {0x0000989c, 0x00000000}, | |
644 | {0x0000989c, 0x00000000}, | |
645 | {0x0000989c, 0x00000000}, | |
646 | {0x0000989c, 0x00000000}, | |
647 | {0x0000989c, 0x00000000}, | |
648 | {0x0000989c, 0x00000000}, | |
649 | {0x0000989c, 0x00000000}, | |
650 | {0x0000989c, 0x00000000}, | |
651 | {0x0000989c, 0x00000000}, | |
652 | {0x0000989c, 0x00000000}, | |
653 | {0x0000989c, 0x00000060}, | |
654 | {0x0000989c, 0x00000000}, | |
655 | {0x0000989c, 0x00000000}, | |
656 | {0x0000989c, 0x00000000}, | |
657 | {0x0000989c, 0x00000000}, | |
658 | {0x0000989c, 0x00000000}, | |
659 | {0x0000989c, 0x00000000}, | |
660 | {0x0000989c, 0x00000000}, | |
661 | {0x0000989c, 0x00000000}, | |
662 | {0x0000989c, 0x00000000}, | |
663 | {0x0000989c, 0x00000000}, | |
664 | {0x0000989c, 0x00000000}, | |
665 | {0x0000989c, 0x00000000}, | |
666 | {0x0000989c, 0x00000058}, | |
667 | {0x0000989c, 0x00000000}, | |
668 | {0x0000989c, 0x00000000}, | |
669 | {0x0000989c, 0x00000000}, | |
670 | {0x0000989c, 0x00000000}, | |
671 | {0x000098cc, 0x00000000}, | |
af01c04e LR |
672 | }; |
673 |