xref: /linux/drivers/net/wireless/broadcom/brcm80211/brcmsmac/phy/phytbl_lcn.c (revision cbecf716ca618fd44feda6bd9a64a8179d031fc5)
1 // SPDX-License-Identifier: ISC
2 /*
3  * Copyright (c) 2010 Broadcom Corporation
4  */
5 
6 #include <types.h>
7 #include "phytbl_lcn.h"
8 
9 static const u32 dot11lcn_gain_tbl_rev0[] = {
10 	0x00000000,
11 	0x00000000,
12 	0x00000000,
13 	0x00000000,
14 	0x00000000,
15 	0x00000000,
16 	0x00000000,
17 	0x00000000,
18 	0x00000004,
19 	0x00000000,
20 	0x00000004,
21 	0x00000008,
22 	0x00000001,
23 	0x00000005,
24 	0x00000009,
25 	0x0000000d,
26 	0x0000004d,
27 	0x0000008d,
28 	0x0000000d,
29 	0x0000004d,
30 	0x0000008d,
31 	0x000000cd,
32 	0x0000004f,
33 	0x0000008f,
34 	0x000000cf,
35 	0x000000d3,
36 	0x00000113,
37 	0x00000513,
38 	0x00000913,
39 	0x00000953,
40 	0x00000d53,
41 	0x00001153,
42 	0x00001193,
43 	0x00005193,
44 	0x00009193,
45 	0x0000d193,
46 	0x00011193,
47 	0x00000000,
48 	0x00000000,
49 	0x00000000,
50 	0x00000000,
51 	0x00000000,
52 	0x00000000,
53 	0x00000004,
54 	0x00000000,
55 	0x00000004,
56 	0x00000008,
57 	0x00000001,
58 	0x00000005,
59 	0x00000009,
60 	0x0000000d,
61 	0x0000004d,
62 	0x0000008d,
63 	0x0000000d,
64 	0x0000004d,
65 	0x0000008d,
66 	0x000000cd,
67 	0x0000004f,
68 	0x0000008f,
69 	0x000000cf,
70 	0x000000d3,
71 	0x00000113,
72 	0x00000513,
73 	0x00000913,
74 	0x00000953,
75 	0x00000d53,
76 	0x00001153,
77 	0x00005153,
78 	0x00009153,
79 	0x0000d153,
80 	0x00011153,
81 	0x00015153,
82 	0x00019153,
83 	0x0001d153,
84 	0x00000000,
85 	0x00000000,
86 	0x00000000,
87 	0x00000000,
88 	0x00000000,
89 	0x00000000,
90 	0x00000000,
91 	0x00000000,
92 	0x00000000,
93 	0x00000000,
94 	0x00000000,
95 	0x00000000,
96 	0x00000000,
97 	0x00000000,
98 	0x00000000,
99 	0x00000000,
100 	0x00000000,
101 	0x00000000,
102 	0x00000000,
103 	0x00000000,
104 	0x00000000,
105 	0x00000000,
106 };
107 
108 static const u16 dot11lcn_aux_gain_idx_tbl_rev0[] = {
109 	0x0401,
110 	0x0402,
111 	0x0403,
112 	0x0404,
113 	0x0405,
114 	0x0406,
115 	0x0407,
116 	0x0408,
117 	0x0409,
118 	0x040a,
119 	0x058b,
120 	0x058c,
121 	0x058d,
122 	0x058e,
123 	0x058f,
124 	0x0090,
125 	0x0091,
126 	0x0092,
127 	0x0193,
128 	0x0194,
129 	0x0195,
130 	0x0196,
131 	0x0197,
132 	0x0198,
133 	0x0199,
134 	0x019a,
135 	0x019b,
136 	0x019c,
137 	0x019d,
138 	0x019e,
139 	0x019f,
140 	0x01a0,
141 	0x01a1,
142 	0x01a2,
143 	0x01a3,
144 	0x01a4,
145 	0x01a5,
146 	0x0000,
147 };
148 
149 static const u32 dot11lcn_gain_idx_tbl_rev0[] = {
150 	0x00000000,
151 	0x00000000,
152 	0x10000000,
153 	0x00000000,
154 	0x20000000,
155 	0x00000000,
156 	0x30000000,
157 	0x00000000,
158 	0x40000000,
159 	0x00000000,
160 	0x50000000,
161 	0x00000000,
162 	0x60000000,
163 	0x00000000,
164 	0x70000000,
165 	0x00000000,
166 	0x80000000,
167 	0x00000000,
168 	0x90000000,
169 	0x00000008,
170 	0xa0000000,
171 	0x00000008,
172 	0xb0000000,
173 	0x00000008,
174 	0xc0000000,
175 	0x00000008,
176 	0xd0000000,
177 	0x00000008,
178 	0xe0000000,
179 	0x00000008,
180 	0xf0000000,
181 	0x00000008,
182 	0x00000000,
183 	0x00000009,
184 	0x10000000,
185 	0x00000009,
186 	0x20000000,
187 	0x00000019,
188 	0x30000000,
189 	0x00000019,
190 	0x40000000,
191 	0x00000019,
192 	0x50000000,
193 	0x00000019,
194 	0x60000000,
195 	0x00000019,
196 	0x70000000,
197 	0x00000019,
198 	0x80000000,
199 	0x00000019,
200 	0x90000000,
201 	0x00000019,
202 	0xa0000000,
203 	0x00000019,
204 	0xb0000000,
205 	0x00000019,
206 	0xc0000000,
207 	0x00000019,
208 	0xd0000000,
209 	0x00000019,
210 	0xe0000000,
211 	0x00000019,
212 	0xf0000000,
213 	0x00000019,
214 	0x00000000,
215 	0x0000001a,
216 	0x10000000,
217 	0x0000001a,
218 	0x20000000,
219 	0x0000001a,
220 	0x30000000,
221 	0x0000001a,
222 	0x40000000,
223 	0x0000001a,
224 	0x50000000,
225 	0x00000002,
226 	0x60000000,
227 	0x00000002,
228 	0x70000000,
229 	0x00000002,
230 	0x80000000,
231 	0x00000002,
232 	0x90000000,
233 	0x00000002,
234 	0xa0000000,
235 	0x00000002,
236 	0xb0000000,
237 	0x00000002,
238 	0xc0000000,
239 	0x0000000a,
240 	0xd0000000,
241 	0x0000000a,
242 	0xe0000000,
243 	0x0000000a,
244 	0xf0000000,
245 	0x0000000a,
246 	0x00000000,
247 	0x0000000b,
248 	0x10000000,
249 	0x0000000b,
250 	0x20000000,
251 	0x0000000b,
252 	0x30000000,
253 	0x0000000b,
254 	0x40000000,
255 	0x0000000b,
256 	0x50000000,
257 	0x0000001b,
258 	0x60000000,
259 	0x0000001b,
260 	0x70000000,
261 	0x0000001b,
262 	0x80000000,
263 	0x0000001b,
264 	0x90000000,
265 	0x0000001b,
266 	0xa0000000,
267 	0x0000001b,
268 	0xb0000000,
269 	0x0000001b,
270 	0xc0000000,
271 	0x0000001b,
272 	0xd0000000,
273 	0x0000001b,
274 	0xe0000000,
275 	0x0000001b,
276 	0xf0000000,
277 	0x0000001b,
278 	0x00000000,
279 	0x0000001c,
280 	0x10000000,
281 	0x0000001c,
282 	0x20000000,
283 	0x0000001c,
284 	0x30000000,
285 	0x0000001c,
286 	0x40000000,
287 	0x0000001c,
288 	0x50000000,
289 	0x0000001c,
290 	0x60000000,
291 	0x0000001c,
292 	0x70000000,
293 	0x0000001c,
294 	0x80000000,
295 	0x0000001c,
296 	0x90000000,
297 	0x0000001c,
298 };
299 
300 static const u16 dot11lcn_aux_gain_idx_tbl_2G[] = {
301 	0x0000,
302 	0x0000,
303 	0x0000,
304 	0x0000,
305 	0x0001,
306 	0x0080,
307 	0x0081,
308 	0x0100,
309 	0x0101,
310 	0x0180,
311 	0x0181,
312 	0x0182,
313 	0x0183,
314 	0x0184,
315 	0x0185,
316 	0x0186,
317 	0x0187,
318 	0x0188,
319 	0x0285,
320 	0x0289,
321 	0x028a,
322 	0x028b,
323 	0x028c,
324 	0x028d,
325 	0x028e,
326 	0x028f,
327 	0x0290,
328 	0x0291,
329 	0x0292,
330 	0x0293,
331 	0x0294,
332 	0x0295,
333 	0x0296,
334 	0x0297,
335 	0x0298,
336 	0x0299,
337 	0x029a,
338 	0x0000
339 };
340 
341 static const u8 dot11lcn_gain_val_tbl_2G[] = {
342 	0xfc,
343 	0x02,
344 	0x08,
345 	0x0e,
346 	0x13,
347 	0x1b,
348 	0xfc,
349 	0x02,
350 	0x08,
351 	0x0e,
352 	0x13,
353 	0x1b,
354 	0xfc,
355 	0x00,
356 	0x0c,
357 	0x03,
358 	0xeb,
359 	0xfe,
360 	0x07,
361 	0x0b,
362 	0x0f,
363 	0xfb,
364 	0xfe,
365 	0x01,
366 	0x05,
367 	0x08,
368 	0x0b,
369 	0x0e,
370 	0x11,
371 	0x14,
372 	0x17,
373 	0x00,
374 	0x00,
375 	0x00,
376 	0x00,
377 	0x00,
378 	0x00,
379 	0x00,
380 	0x03,
381 	0x06,
382 	0x09,
383 	0x0c,
384 	0x0f,
385 	0x12,
386 	0x00,
387 	0x00,
388 	0x00,
389 	0x00,
390 	0x00,
391 	0x00,
392 	0x00,
393 	0x00,
394 	0x00,
395 	0x00,
396 	0x03,
397 	0x06,
398 	0x09,
399 	0x0c,
400 	0x0f,
401 	0x12,
402 	0x15,
403 	0x18,
404 	0x1b,
405 	0x00,
406 	0x00,
407 	0x00,
408 	0x00,
409 	0x00
410 };
411 
412 static const u32 dot11lcn_gain_idx_tbl_2G[] = {
413 	0x00000000,
414 	0x00000000,
415 	0x00000000,
416 	0x00000000,
417 	0x00000000,
418 	0x00000000,
419 	0x00000000,
420 	0x00000000,
421 	0x10000000,
422 	0x00000000,
423 	0x00000000,
424 	0x00000008,
425 	0x10000000,
426 	0x00000008,
427 	0x00000000,
428 	0x00000010,
429 	0x10000000,
430 	0x00000010,
431 	0x00000000,
432 	0x00000018,
433 	0x10000000,
434 	0x00000018,
435 	0x20000000,
436 	0x00000018,
437 	0x30000000,
438 	0x00000018,
439 	0x40000000,
440 	0x00000018,
441 	0x50000000,
442 	0x00000018,
443 	0x60000000,
444 	0x00000018,
445 	0x70000000,
446 	0x00000018,
447 	0x80000000,
448 	0x00000018,
449 	0x50000000,
450 	0x00000028,
451 	0x90000000,
452 	0x00000028,
453 	0xa0000000,
454 	0x00000028,
455 	0xb0000000,
456 	0x00000028,
457 	0xc0000000,
458 	0x00000028,
459 	0xd0000000,
460 	0x00000028,
461 	0xe0000000,
462 	0x00000028,
463 	0xf0000000,
464 	0x00000028,
465 	0x00000000,
466 	0x00000029,
467 	0x10000000,
468 	0x00000029,
469 	0x20000000,
470 	0x00000029,
471 	0x30000000,
472 	0x00000029,
473 	0x40000000,
474 	0x00000029,
475 	0x50000000,
476 	0x00000029,
477 	0x60000000,
478 	0x00000029,
479 	0x70000000,
480 	0x00000029,
481 	0x80000000,
482 	0x00000029,
483 	0x90000000,
484 	0x00000029,
485 	0xa0000000,
486 	0x00000029,
487 	0x00000000,
488 	0x00000000,
489 	0x00000000,
490 	0x00000000,
491 	0x10000000,
492 	0x00000000,
493 	0x00000000,
494 	0x00000008,
495 	0x10000000,
496 	0x00000008,
497 	0x00000000,
498 	0x00000010,
499 	0x10000000,
500 	0x00000010,
501 	0x00000000,
502 	0x00000018,
503 	0x10000000,
504 	0x00000018,
505 	0x20000000,
506 	0x00000018,
507 	0x30000000,
508 	0x00000018,
509 	0x40000000,
510 	0x00000018,
511 	0x50000000,
512 	0x00000018,
513 	0x60000000,
514 	0x00000018,
515 	0x70000000,
516 	0x00000018,
517 	0x80000000,
518 	0x00000018,
519 	0x50000000,
520 	0x00000028,
521 	0x90000000,
522 	0x00000028,
523 	0xa0000000,
524 	0x00000028,
525 	0xb0000000,
526 	0x00000028,
527 	0xc0000000,
528 	0x00000028,
529 	0xd0000000,
530 	0x00000028,
531 	0xe0000000,
532 	0x00000028,
533 	0xf0000000,
534 	0x00000028,
535 	0x00000000,
536 	0x00000029,
537 	0x10000000,
538 	0x00000029,
539 	0x20000000,
540 	0x00000029,
541 	0x30000000,
542 	0x00000029,
543 	0x40000000,
544 	0x00000029,
545 	0x50000000,
546 	0x00000029,
547 	0x60000000,
548 	0x00000029,
549 	0x70000000,
550 	0x00000029,
551 	0x80000000,
552 	0x00000029,
553 	0x90000000,
554 	0x00000029,
555 	0xa0000000,
556 	0x00000029,
557 	0xb0000000,
558 	0x00000029,
559 	0xc0000000,
560 	0x00000029,
561 	0x00000000,
562 	0x00000000,
563 	0x00000000,
564 	0x00000000
565 };
566 
567 static const u32 dot11lcn_gain_tbl_2G[] = {
568 	0x00000000,
569 	0x00000004,
570 	0x00000008,
571 	0x00000001,
572 	0x00000005,
573 	0x00000009,
574 	0x0000000d,
575 	0x0000004d,
576 	0x0000008d,
577 	0x00000049,
578 	0x00000089,
579 	0x000000c9,
580 	0x0000004b,
581 	0x0000008b,
582 	0x000000cb,
583 	0x000000cf,
584 	0x0000010f,
585 	0x0000050f,
586 	0x0000090f,
587 	0x0000094f,
588 	0x00000d4f,
589 	0x0000114f,
590 	0x0000118f,
591 	0x0000518f,
592 	0x0000918f,
593 	0x0000d18f,
594 	0x0001118f,
595 	0x0001518f,
596 	0x0001918f,
597 	0x00000000,
598 	0x00000000,
599 	0x00000000,
600 	0x00000000,
601 	0x00000000,
602 	0x00000000,
603 	0x00000000,
604 	0x00000000,
605 	0x00000000,
606 	0x00000000,
607 	0x00000000,
608 	0x00000000,
609 	0x00000000,
610 	0x00000000,
611 	0x00000000,
612 	0x00000000,
613 	0x00000000,
614 	0x00000000,
615 	0x00000000,
616 	0x00000000,
617 	0x00000000,
618 	0x00000000,
619 	0x00000000,
620 	0x00000000,
621 	0x00000000,
622 	0x00000000,
623 	0x00000000,
624 	0x00000000,
625 	0x00000000,
626 	0x00000000,
627 	0x00000000,
628 	0x00000000,
629 	0x00000000,
630 	0x00000000,
631 	0x00000000,
632 	0x00000000,
633 	0x00000000,
634 	0x00000000,
635 	0x00000000,
636 	0x00000000,
637 	0x00000000,
638 	0x00000000,
639 	0x00000000,
640 	0x00000000,
641 	0x00000000,
642 	0x00000000,
643 	0x00000000,
644 	0x00000000,
645 	0x00000000,
646 	0x00000000,
647 	0x00000000,
648 	0x00000000,
649 	0x00000000,
650 	0x00000000,
651 	0x00000000,
652 	0x00000000,
653 	0x00000000,
654 	0x00000000,
655 	0x00000000,
656 	0x00000000,
657 	0x00000000,
658 	0x00000000,
659 	0x00000000,
660 	0x00000000,
661 	0x00000000,
662 	0x00000000,
663 	0x00000000
664 };
665 
666 static const u32 dot11lcn_gain_tbl_extlna_2G[] = {
667 	0x00000000,
668 	0x00000004,
669 	0x00000008,
670 	0x00000001,
671 	0x00000005,
672 	0x00000009,
673 	0x0000000d,
674 	0x00000003,
675 	0x00000007,
676 	0x0000000b,
677 	0x0000000f,
678 	0x0000004f,
679 	0x0000008f,
680 	0x000000cf,
681 	0x0000010f,
682 	0x0000014f,
683 	0x0000018f,
684 	0x0000058f,
685 	0x0000098f,
686 	0x00000d8f,
687 	0x00008000,
688 	0x00008004,
689 	0x00008008,
690 	0x00008001,
691 	0x00008005,
692 	0x00008009,
693 	0x0000800d,
694 	0x00008003,
695 	0x00008007,
696 	0x0000800b,
697 	0x0000800f,
698 	0x0000804f,
699 	0x0000808f,
700 	0x000080cf,
701 	0x0000810f,
702 	0x0000814f,
703 	0x0000818f,
704 	0x0000858f,
705 	0x0000898f,
706 	0x00008d8f,
707 	0x00000000,
708 	0x00000000,
709 	0x00000000,
710 	0x00000000,
711 	0x00000000,
712 	0x00000000,
713 	0x00000000,
714 	0x00000000,
715 	0x00000000,
716 	0x00000000,
717 	0x00000000,
718 	0x00000000,
719 	0x00000000,
720 	0x00000000,
721 	0x00000000,
722 	0x00000000,
723 	0x00000000,
724 	0x00000000,
725 	0x00000000,
726 	0x00000000,
727 	0x00000000,
728 	0x00000000,
729 	0x00000000,
730 	0x00000000,
731 	0x00000000,
732 	0x00000000,
733 	0x00000000,
734 	0x00000000,
735 	0x00000000,
736 	0x00000000,
737 	0x00000000,
738 	0x00000000,
739 	0x00000000,
740 	0x00000000,
741 	0x00000000,
742 	0x00000000,
743 	0x00000000,
744 	0x00000000,
745 	0x00000000,
746 	0x00000000,
747 	0x00000000,
748 	0x00000000,
749 	0x00000000,
750 	0x00000000,
751 	0x00000000,
752 	0x00000000,
753 	0x00000000,
754 	0x00000000,
755 	0x00000000,
756 	0x00000000,
757 	0x00000000,
758 	0x00000000,
759 	0x00000000,
760 	0x00000000,
761 	0x00000000,
762 	0x00000000
763 };
764 
765 static const u16 dot11lcn_aux_gain_idx_tbl_extlna_2G[] = {
766 	0x0400,
767 	0x0400,
768 	0x0400,
769 	0x0400,
770 	0x0400,
771 	0x0400,
772 	0x0400,
773 	0x0400,
774 	0x0400,
775 	0x0401,
776 	0x0402,
777 	0x0403,
778 	0x0404,
779 	0x0483,
780 	0x0484,
781 	0x0485,
782 	0x0486,
783 	0x0583,
784 	0x0584,
785 	0x0585,
786 	0x0587,
787 	0x0588,
788 	0x0589,
789 	0x058a,
790 	0x0687,
791 	0x0688,
792 	0x0689,
793 	0x068a,
794 	0x068b,
795 	0x068c,
796 	0x068d,
797 	0x068e,
798 	0x068f,
799 	0x0690,
800 	0x0691,
801 	0x0692,
802 	0x0693,
803 	0x0000
804 };
805 
806 static const u8 dot11lcn_gain_val_tbl_extlna_2G[] = {
807 	0xfc,
808 	0x02,
809 	0x08,
810 	0x0e,
811 	0x13,
812 	0x1b,
813 	0xfc,
814 	0x02,
815 	0x08,
816 	0x0e,
817 	0x13,
818 	0x1b,
819 	0xfc,
820 	0x00,
821 	0x0f,
822 	0x03,
823 	0xeb,
824 	0xfe,
825 	0x07,
826 	0x0b,
827 	0x0f,
828 	0xfb,
829 	0xfe,
830 	0x01,
831 	0x05,
832 	0x08,
833 	0x0b,
834 	0x0e,
835 	0x11,
836 	0x14,
837 	0x17,
838 	0x00,
839 	0x00,
840 	0x00,
841 	0x00,
842 	0x00,
843 	0x00,
844 	0x00,
845 	0x03,
846 	0x06,
847 	0x09,
848 	0x0c,
849 	0x0f,
850 	0x12,
851 	0x00,
852 	0x00,
853 	0x00,
854 	0x00,
855 	0x00,
856 	0x00,
857 	0x00,
858 	0x00,
859 	0x00,
860 	0x00,
861 	0x03,
862 	0x06,
863 	0x09,
864 	0x0c,
865 	0x0f,
866 	0x12,
867 	0x15,
868 	0x18,
869 	0x1b,
870 	0x00,
871 	0x00,
872 	0x00,
873 	0x00,
874 	0x00
875 };
876 
877 static const u32 dot11lcn_gain_idx_tbl_extlna_2G[] = {
878 	0x00000000,
879 	0x00000040,
880 	0x00000000,
881 	0x00000040,
882 	0x00000000,
883 	0x00000040,
884 	0x00000000,
885 	0x00000040,
886 	0x00000000,
887 	0x00000040,
888 	0x00000000,
889 	0x00000040,
890 	0x00000000,
891 	0x00000040,
892 	0x00000000,
893 	0x00000040,
894 	0x00000000,
895 	0x00000040,
896 	0x10000000,
897 	0x00000040,
898 	0x20000000,
899 	0x00000040,
900 	0x30000000,
901 	0x00000040,
902 	0x40000000,
903 	0x00000040,
904 	0x30000000,
905 	0x00000048,
906 	0x40000000,
907 	0x00000048,
908 	0x50000000,
909 	0x00000048,
910 	0x60000000,
911 	0x00000048,
912 	0x30000000,
913 	0x00000058,
914 	0x40000000,
915 	0x00000058,
916 	0x50000000,
917 	0x00000058,
918 	0x70000000,
919 	0x00000058,
920 	0x80000000,
921 	0x00000058,
922 	0x90000000,
923 	0x00000058,
924 	0xa0000000,
925 	0x00000058,
926 	0x70000000,
927 	0x00000068,
928 	0x80000000,
929 	0x00000068,
930 	0x90000000,
931 	0x00000068,
932 	0xa0000000,
933 	0x00000068,
934 	0xb0000000,
935 	0x00000068,
936 	0xc0000000,
937 	0x00000068,
938 	0xd0000000,
939 	0x00000068,
940 	0xe0000000,
941 	0x00000068,
942 	0xf0000000,
943 	0x00000068,
944 	0x00000000,
945 	0x00000069,
946 	0x10000000,
947 	0x00000069,
948 	0x20000000,
949 	0x00000069,
950 	0x30000000,
951 	0x00000069,
952 	0x40000000,
953 	0x00000041,
954 	0x40000000,
955 	0x00000041,
956 	0x40000000,
957 	0x00000041,
958 	0x40000000,
959 	0x00000041,
960 	0x40000000,
961 	0x00000041,
962 	0x40000000,
963 	0x00000041,
964 	0x40000000,
965 	0x00000041,
966 	0x40000000,
967 	0x00000041,
968 	0x40000000,
969 	0x00000041,
970 	0x50000000,
971 	0x00000041,
972 	0x60000000,
973 	0x00000041,
974 	0x70000000,
975 	0x00000041,
976 	0x80000000,
977 	0x00000041,
978 	0x70000000,
979 	0x00000049,
980 	0x80000000,
981 	0x00000049,
982 	0x90000000,
983 	0x00000049,
984 	0xa0000000,
985 	0x00000049,
986 	0x70000000,
987 	0x00000059,
988 	0x80000000,
989 	0x00000059,
990 	0x90000000,
991 	0x00000059,
992 	0xb0000000,
993 	0x00000059,
994 	0xc0000000,
995 	0x00000059,
996 	0xd0000000,
997 	0x00000059,
998 	0xe0000000,
999 	0x00000059,
1000 	0xb0000000,
1001 	0x00000069,
1002 	0xc0000000,
1003 	0x00000069,
1004 	0xd0000000,
1005 	0x00000069,
1006 	0xe0000000,
1007 	0x00000069,
1008 	0xf0000000,
1009 	0x00000069,
1010 	0x00000000,
1011 	0x0000006a,
1012 	0x10000000,
1013 	0x0000006a,
1014 	0x20000000,
1015 	0x0000006a,
1016 	0x30000000,
1017 	0x0000006a,
1018 	0x40000000,
1019 	0x0000006a,
1020 	0x50000000,
1021 	0x0000006a,
1022 	0x60000000,
1023 	0x0000006a,
1024 	0x70000000,
1025 	0x0000006a,
1026 	0x00000000,
1027 	0x00000000,
1028 	0x00000000,
1029 	0x00000000
1030 };
1031 
1032 static const u32 dot11lcn_aux_gain_idx_tbl_5G[] = {
1033 	0x0000,
1034 	0x0000,
1035 	0x0000,
1036 	0x0000,
1037 	0x0001,
1038 	0x0002,
1039 	0x0003,
1040 	0x0004,
1041 	0x0083,
1042 	0x0084,
1043 	0x0085,
1044 	0x0086,
1045 	0x0087,
1046 	0x0186,
1047 	0x0187,
1048 	0x0188,
1049 	0x0189,
1050 	0x018a,
1051 	0x018b,
1052 	0x018c,
1053 	0x018d,
1054 	0x018e,
1055 	0x018f,
1056 	0x0190,
1057 	0x0191,
1058 	0x0192,
1059 	0x0193,
1060 	0x0194,
1061 	0x0195,
1062 	0x0196,
1063 	0x0197,
1064 	0x0198,
1065 	0x0199,
1066 	0x019a,
1067 	0x019b,
1068 	0x019c,
1069 	0x019d,
1070 	0x0000
1071 };
1072 
1073 static const u32 dot11lcn_gain_val_tbl_5G[] = {
1074 	0xf7,
1075 	0xfd,
1076 	0x00,
1077 	0x04,
1078 	0x04,
1079 	0x04,
1080 	0xf7,
1081 	0xfd,
1082 	0x00,
1083 	0x04,
1084 	0x04,
1085 	0x04,
1086 	0xf6,
1087 	0x00,
1088 	0x0c,
1089 	0x03,
1090 	0xeb,
1091 	0xfe,
1092 	0x06,
1093 	0x0a,
1094 	0x10,
1095 	0x00,
1096 	0x03,
1097 	0x06,
1098 	0x09,
1099 	0x0c,
1100 	0x0f,
1101 	0x12,
1102 	0x15,
1103 	0x18,
1104 	0x1b,
1105 	0x00,
1106 	0x00,
1107 	0x00,
1108 	0x00,
1109 	0x00,
1110 	0x00,
1111 	0x00,
1112 	0x03,
1113 	0x06,
1114 	0x09,
1115 	0x0c,
1116 	0x0f,
1117 	0x12,
1118 	0x00,
1119 	0x00,
1120 	0x00,
1121 	0x00,
1122 	0x00,
1123 	0x00,
1124 	0x00,
1125 	0x00,
1126 	0x00,
1127 	0x00,
1128 	0x03,
1129 	0x06,
1130 	0x09,
1131 	0x0c,
1132 	0x0f,
1133 	0x12,
1134 	0x15,
1135 	0x18,
1136 	0x1b,
1137 	0x00,
1138 	0x00,
1139 	0x00,
1140 	0x00,
1141 	0x00
1142 };
1143 
1144 static const u32 dot11lcn_gain_idx_tbl_5G[] = {
1145 	0x00000000,
1146 	0x00000000,
1147 	0x00000000,
1148 	0x00000000,
1149 	0x00000000,
1150 	0x00000000,
1151 	0x00000000,
1152 	0x00000000,
1153 	0x10000000,
1154 	0x00000000,
1155 	0x20000000,
1156 	0x00000000,
1157 	0x30000000,
1158 	0x00000000,
1159 	0x40000000,
1160 	0x00000000,
1161 	0x30000000,
1162 	0x00000008,
1163 	0x40000000,
1164 	0x00000008,
1165 	0x50000000,
1166 	0x00000008,
1167 	0x60000000,
1168 	0x00000008,
1169 	0x70000000,
1170 	0x00000008,
1171 	0x60000000,
1172 	0x00000018,
1173 	0x70000000,
1174 	0x00000018,
1175 	0x80000000,
1176 	0x00000018,
1177 	0x90000000,
1178 	0x00000018,
1179 	0xa0000000,
1180 	0x00000018,
1181 	0xb0000000,
1182 	0x00000018,
1183 	0xc0000000,
1184 	0x00000018,
1185 	0xd0000000,
1186 	0x00000018,
1187 	0xe0000000,
1188 	0x00000018,
1189 	0xf0000000,
1190 	0x00000018,
1191 	0x00000000,
1192 	0x00000019,
1193 	0x10000000,
1194 	0x00000019,
1195 	0x20000000,
1196 	0x00000019,
1197 	0x30000000,
1198 	0x00000019,
1199 	0x40000000,
1200 	0x00000019,
1201 	0x50000000,
1202 	0x00000019,
1203 	0x60000000,
1204 	0x00000019,
1205 	0x70000000,
1206 	0x00000019,
1207 	0x80000000,
1208 	0x00000019,
1209 	0x90000000,
1210 	0x00000019,
1211 	0xa0000000,
1212 	0x00000019,
1213 	0xb0000000,
1214 	0x00000019,
1215 	0xc0000000,
1216 	0x00000019,
1217 	0xd0000000,
1218 	0x00000019,
1219 	0x00000000,
1220 	0x00000000,
1221 	0x00000000,
1222 	0x00000000,
1223 	0x00000000,
1224 	0x00000000,
1225 	0x00000000,
1226 	0x00000000,
1227 	0x00000000,
1228 	0x00000000,
1229 	0x00000000,
1230 	0x00000000,
1231 	0x00000000,
1232 	0x00000000,
1233 	0x00000000,
1234 	0x00000000,
1235 	0x00000000,
1236 	0x00000000,
1237 	0x00000000,
1238 	0x00000000,
1239 	0x00000000,
1240 	0x00000000,
1241 	0x00000000,
1242 	0x00000000,
1243 	0x00000000,
1244 	0x00000000,
1245 	0x00000000,
1246 	0x00000000,
1247 	0x00000000,
1248 	0x00000000,
1249 	0x00000000,
1250 	0x00000000,
1251 	0x00000000,
1252 	0x00000000,
1253 	0x00000000,
1254 	0x00000000,
1255 	0x00000000,
1256 	0x00000000,
1257 	0x00000000,
1258 	0x00000000,
1259 	0x00000000,
1260 	0x00000000,
1261 	0x00000000,
1262 	0x00000000,
1263 	0x00000000,
1264 	0x00000000,
1265 	0x00000000,
1266 	0x00000000,
1267 	0x00000000,
1268 	0x00000000,
1269 	0x00000000,
1270 	0x00000000,
1271 	0x00000000,
1272 	0x00000000,
1273 	0x00000000,
1274 	0x00000000,
1275 	0x00000000,
1276 	0x00000000,
1277 	0x00000000,
1278 	0x00000000,
1279 	0x00000000,
1280 	0x00000000,
1281 	0x00000000,
1282 	0x00000000,
1283 	0x00000000,
1284 	0x00000000,
1285 	0x00000000,
1286 	0x00000000,
1287 	0x00000000,
1288 	0x00000000,
1289 	0x00000000,
1290 	0x00000000,
1291 	0x00000000,
1292 	0x00000000,
1293 	0x00000000,
1294 	0x00000000,
1295 	0x00000000,
1296 	0x00000000
1297 };
1298 
1299 static const u32 dot11lcn_gain_tbl_5G[] = {
1300 	0x00000000,
1301 	0x00000040,
1302 	0x00000080,
1303 	0x00000001,
1304 	0x00000005,
1305 	0x00000009,
1306 	0x0000000d,
1307 	0x00000011,
1308 	0x00000015,
1309 	0x00000055,
1310 	0x00000095,
1311 	0x00000017,
1312 	0x0000001b,
1313 	0x0000005b,
1314 	0x0000009b,
1315 	0x000000db,
1316 	0x0000011b,
1317 	0x0000015b,
1318 	0x0000019b,
1319 	0x0000059b,
1320 	0x0000099b,
1321 	0x00000d9b,
1322 	0x0000119b,
1323 	0x0000519b,
1324 	0x0000919b,
1325 	0x0000d19b,
1326 	0x0001119b,
1327 	0x0001519b,
1328 	0x0001919b,
1329 	0x0001d19b,
1330 	0x00000000,
1331 	0x00000000,
1332 	0x00000000,
1333 	0x00000000,
1334 	0x00000000,
1335 	0x00000000,
1336 	0x00000000,
1337 	0x00000000,
1338 	0x00000000,
1339 	0x00000000,
1340 	0x00000000,
1341 	0x00000000,
1342 	0x00000000,
1343 	0x00000000,
1344 	0x00000000,
1345 	0x00000000,
1346 	0x00000000,
1347 	0x00000000,
1348 	0x00000000,
1349 	0x00000000,
1350 	0x00000000,
1351 	0x00000000,
1352 	0x00000000,
1353 	0x00000000,
1354 	0x00000000,
1355 	0x00000000,
1356 	0x00000000,
1357 	0x00000000,
1358 	0x00000000,
1359 	0x00000000,
1360 	0x00000000,
1361 	0x00000000,
1362 	0x00000000,
1363 	0x00000000,
1364 	0x00000000,
1365 	0x00000000,
1366 	0x00000000,
1367 	0x00000000,
1368 	0x00000000,
1369 	0x00000000,
1370 	0x00000000,
1371 	0x00000000,
1372 	0x00000000,
1373 	0x00000000,
1374 	0x00000000,
1375 	0x00000000,
1376 	0x00000000,
1377 	0x00000000,
1378 	0x00000000,
1379 	0x00000000,
1380 	0x00000000,
1381 	0x00000000,
1382 	0x00000000,
1383 	0x00000000,
1384 	0x00000000,
1385 	0x00000000,
1386 	0x00000000,
1387 	0x00000000,
1388 	0x00000000,
1389 	0x00000000,
1390 	0x00000000,
1391 	0x00000000,
1392 	0x00000000,
1393 	0x00000000,
1394 	0x00000000,
1395 	0x00000000
1396 };
1397 
1398 const struct phytbl_info dot11lcnphytbl_rx_gain_info_rev0[] = {
1399 	{&dot11lcn_gain_tbl_rev0,
1400 	 ARRAY_SIZE(dot11lcn_gain_tbl_rev0), 18,
1401 	 0, 32}
1402 	,
1403 	{&dot11lcn_aux_gain_idx_tbl_rev0,
1404 	 ARRAY_SIZE(dot11lcn_aux_gain_idx_tbl_rev0), 14, 0, 16}
1405 	,
1406 	{&dot11lcn_gain_idx_tbl_rev0,
1407 	 ARRAY_SIZE(dot11lcn_gain_idx_tbl_rev0), 13, 0, 32}
1408 	,
1409 };
1410 
1411 const struct phytbl_info dot11lcnphytbl_rx_gain_info_2G_rev2[] = {
1412 	{&dot11lcn_gain_tbl_2G,
1413 	 ARRAY_SIZE(dot11lcn_gain_tbl_2G), 18, 0,
1414 	 32}
1415 	,
1416 	{&dot11lcn_aux_gain_idx_tbl_2G,
1417 	 ARRAY_SIZE(dot11lcn_aux_gain_idx_tbl_2G), 14, 0, 16}
1418 	,
1419 	{&dot11lcn_gain_idx_tbl_2G,
1420 	 ARRAY_SIZE(dot11lcn_gain_idx_tbl_2G),
1421 	 13, 0, 32}
1422 	,
1423 	{&dot11lcn_gain_val_tbl_2G,
1424 	 ARRAY_SIZE(dot11lcn_gain_val_tbl_2G),
1425 	 17, 0, 8}
1426 };
1427 
1428 const struct phytbl_info dot11lcnphytbl_rx_gain_info_5G_rev2[] = {
1429 	{&dot11lcn_gain_tbl_5G,
1430 	 ARRAY_SIZE(dot11lcn_gain_tbl_5G), 18, 0,
1431 	 32}
1432 	,
1433 	{&dot11lcn_aux_gain_idx_tbl_5G,
1434 	 ARRAY_SIZE(dot11lcn_aux_gain_idx_tbl_5G), 14, 0, 16}
1435 	,
1436 	{&dot11lcn_gain_idx_tbl_5G,
1437 	 ARRAY_SIZE(dot11lcn_gain_idx_tbl_5G),
1438 	 13, 0, 32}
1439 	,
1440 	{&dot11lcn_gain_val_tbl_5G,
1441 	 ARRAY_SIZE(dot11lcn_gain_val_tbl_5G),
1442 	 17, 0, 8}
1443 };
1444 
1445 const struct phytbl_info dot11lcnphytbl_rx_gain_info_extlna_2G_rev2[] = {
1446 	{&dot11lcn_gain_tbl_extlna_2G,
1447 	 ARRAY_SIZE(dot11lcn_gain_tbl_extlna_2G), 18, 0, 32}
1448 	,
1449 	{&dot11lcn_aux_gain_idx_tbl_extlna_2G,
1450 	 ARRAY_SIZE(dot11lcn_aux_gain_idx_tbl_extlna_2G), 14, 0, 16}
1451 	,
1452 	{&dot11lcn_gain_idx_tbl_extlna_2G,
1453 	 ARRAY_SIZE(dot11lcn_gain_idx_tbl_extlna_2G), 13, 0, 32}
1454 	,
1455 	{&dot11lcn_gain_val_tbl_extlna_2G,
1456 	 ARRAY_SIZE(dot11lcn_gain_val_tbl_extlna_2G), 17, 0, 8}
1457 };
1458 
1459 const struct phytbl_info dot11lcnphytbl_rx_gain_info_extlna_5G_rev2[] = {
1460 	{&dot11lcn_gain_tbl_5G,
1461 	 ARRAY_SIZE(dot11lcn_gain_tbl_5G), 18, 0,
1462 	 32}
1463 	,
1464 	{&dot11lcn_aux_gain_idx_tbl_5G,
1465 	 ARRAY_SIZE(dot11lcn_aux_gain_idx_tbl_5G), 14, 0, 16}
1466 	,
1467 	{&dot11lcn_gain_idx_tbl_5G,
1468 	 ARRAY_SIZE(dot11lcn_gain_idx_tbl_5G),
1469 	 13, 0, 32}
1470 	,
1471 	{&dot11lcn_gain_val_tbl_5G,
1472 	 ARRAY_SIZE(dot11lcn_gain_val_tbl_5G),
1473 	 17, 0, 8}
1474 };
1475 
1476 const u32 dot11lcnphytbl_rx_gain_info_sz_rev0 =
1477 	ARRAY_SIZE(dot11lcnphytbl_rx_gain_info_rev0);
1478 
1479 const u32 dot11lcnphytbl_rx_gain_info_2G_rev2_sz =
1480 	ARRAY_SIZE(dot11lcnphytbl_rx_gain_info_2G_rev2);
1481 
1482 const u32 dot11lcnphytbl_rx_gain_info_5G_rev2_sz =
1483 	ARRAY_SIZE(dot11lcnphytbl_rx_gain_info_5G_rev2);
1484 
1485 static const u16 dot11lcn_min_sig_sq_tbl_rev0[] = {
1486 	0x014d,
1487 	0x014d,
1488 	0x014d,
1489 	0x014d,
1490 	0x014d,
1491 	0x014d,
1492 	0x014d,
1493 	0x014d,
1494 	0x014d,
1495 	0x014d,
1496 	0x014d,
1497 	0x014d,
1498 	0x014d,
1499 	0x014d,
1500 	0x014d,
1501 	0x014d,
1502 	0x014d,
1503 	0x014d,
1504 	0x014d,
1505 	0x014d,
1506 	0x014d,
1507 	0x014d,
1508 	0x014d,
1509 	0x014d,
1510 	0x014d,
1511 	0x014d,
1512 	0x014d,
1513 	0x014d,
1514 	0x014d,
1515 	0x014d,
1516 	0x014d,
1517 	0x014d,
1518 	0x014d,
1519 	0x014d,
1520 	0x014d,
1521 	0x014d,
1522 	0x014d,
1523 	0x014d,
1524 	0x014d,
1525 	0x014d,
1526 	0x014d,
1527 	0x014d,
1528 	0x014d,
1529 	0x014d,
1530 	0x014d,
1531 	0x014d,
1532 	0x014d,
1533 	0x014d,
1534 	0x014d,
1535 	0x014d,
1536 	0x014d,
1537 	0x014d,
1538 	0x014d,
1539 	0x014d,
1540 	0x014d,
1541 	0x014d,
1542 	0x014d,
1543 	0x014d,
1544 	0x014d,
1545 	0x014d,
1546 	0x014d,
1547 	0x014d,
1548 	0x014d,
1549 	0x014d,
1550 };
1551 
1552 static const u16 dot11lcn_noise_scale_tbl_rev0[] = {
1553 	0x0000,
1554 	0x0000,
1555 	0x0000,
1556 	0x0000,
1557 	0x0000,
1558 	0x0000,
1559 	0x0000,
1560 	0x0000,
1561 	0x0000,
1562 	0x0000,
1563 	0x0000,
1564 	0x0000,
1565 	0x0000,
1566 	0x0000,
1567 	0x0000,
1568 	0x0000,
1569 	0x0000,
1570 	0x0000,
1571 	0x0000,
1572 	0x0000,
1573 	0x0000,
1574 	0x0000,
1575 	0x0000,
1576 	0x0000,
1577 	0x0000,
1578 	0x0000,
1579 	0x0000,
1580 	0x0000,
1581 	0x0000,
1582 	0x0000,
1583 	0x0000,
1584 	0x0000,
1585 	0x0000,
1586 	0x0000,
1587 	0x0000,
1588 	0x0000,
1589 	0x0000,
1590 	0x0000,
1591 	0x0000,
1592 	0x0000,
1593 	0x0000,
1594 	0x0000,
1595 	0x0000,
1596 	0x0000,
1597 	0x0000,
1598 	0x0000,
1599 	0x0000,
1600 	0x0000,
1601 	0x0000,
1602 	0x0000,
1603 	0x0000,
1604 	0x0000,
1605 	0x0000,
1606 	0x0000,
1607 	0x0000,
1608 	0x0000,
1609 	0x0000,
1610 	0x0000,
1611 	0x0000,
1612 	0x0000,
1613 	0x0000,
1614 	0x0000,
1615 	0x0000,
1616 	0x0000,
1617 };
1618 
1619 static const u32 dot11lcn_fltr_ctrl_tbl_rev0[] = {
1620 	0x000141f8,
1621 	0x000021f8,
1622 	0x000021fb,
1623 	0x000041fb,
1624 	0x0001fe4b,
1625 	0x0000217b,
1626 	0x00002133,
1627 	0x000040eb,
1628 	0x0001fea3,
1629 	0x0000024b,
1630 };
1631 
1632 static const u32 dot11lcn_ps_ctrl_tbl_rev0[] = {
1633 	0x00100001,
1634 	0x00200010,
1635 	0x00300001,
1636 	0x00400010,
1637 	0x00500022,
1638 	0x00600122,
1639 	0x00700222,
1640 	0x00800322,
1641 	0x00900422,
1642 	0x00a00522,
1643 	0x00b00622,
1644 	0x00c00722,
1645 	0x00d00822,
1646 	0x00f00922,
1647 	0x00100a22,
1648 	0x00200b22,
1649 	0x00300c22,
1650 	0x00400d22,
1651 	0x00500e22,
1652 	0x00600f22,
1653 };
1654 
1655 static const u16 dot11lcn_sw_ctrl_tbl_4313_epa_rev0_combo[] = {
1656 	0x0007,
1657 	0x0005,
1658 	0x0006,
1659 	0x0004,
1660 	0x0007,
1661 	0x0005,
1662 	0x0006,
1663 	0x0004,
1664 	0x0007,
1665 	0x0005,
1666 	0x0006,
1667 	0x0004,
1668 	0x0007,
1669 	0x0005,
1670 	0x0006,
1671 	0x0004,
1672 	0x000b,
1673 	0x000b,
1674 	0x000a,
1675 	0x000a,
1676 	0x000b,
1677 	0x000b,
1678 	0x000a,
1679 	0x000a,
1680 	0x000b,
1681 	0x000b,
1682 	0x000a,
1683 	0x000a,
1684 	0x000b,
1685 	0x000b,
1686 	0x000a,
1687 	0x000a,
1688 	0x0007,
1689 	0x0005,
1690 	0x0006,
1691 	0x0004,
1692 	0x0007,
1693 	0x0005,
1694 	0x0006,
1695 	0x0004,
1696 	0x0007,
1697 	0x0005,
1698 	0x0006,
1699 	0x0004,
1700 	0x0007,
1701 	0x0005,
1702 	0x0006,
1703 	0x0004,
1704 	0x000b,
1705 	0x000b,
1706 	0x000a,
1707 	0x000a,
1708 	0x000b,
1709 	0x000b,
1710 	0x000a,
1711 	0x000a,
1712 	0x000b,
1713 	0x000b,
1714 	0x000a,
1715 	0x000a,
1716 	0x000b,
1717 	0x000b,
1718 	0x000a,
1719 	0x000a,
1720 
1721 };
1722 
1723 static const u16 dot11lcn_sw_ctrl_tbl_4313_bt_epa_p250_rev0[] = {
1724 	0x0007,
1725 	0x0005,
1726 	0x0002,
1727 	0x0000,
1728 	0x0007,
1729 	0x0005,
1730 	0x0002,
1731 	0x0000,
1732 	0x0007,
1733 	0x0005,
1734 	0x0002,
1735 	0x0000,
1736 	0x0007,
1737 	0x0005,
1738 	0x0002,
1739 	0x0000,
1740 	0x0007,
1741 	0x0007,
1742 	0x0002,
1743 	0x0002,
1744 	0x0007,
1745 	0x0007,
1746 	0x0002,
1747 	0x0002,
1748 	0x0007,
1749 	0x0007,
1750 	0x0002,
1751 	0x0002,
1752 	0x0007,
1753 	0x0007,
1754 	0x0002,
1755 	0x0002,
1756 	0x0007,
1757 	0x0005,
1758 	0x0002,
1759 	0x0000,
1760 	0x0007,
1761 	0x0005,
1762 	0x0002,
1763 	0x0000,
1764 	0x0007,
1765 	0x0005,
1766 	0x0002,
1767 	0x0000,
1768 	0x0007,
1769 	0x0005,
1770 	0x0002,
1771 	0x0000,
1772 	0x0007,
1773 	0x0007,
1774 	0x0002,
1775 	0x0002,
1776 	0x0007,
1777 	0x0007,
1778 	0x0002,
1779 	0x0002,
1780 	0x0007,
1781 	0x0007,
1782 	0x0002,
1783 	0x0002,
1784 	0x0007,
1785 	0x0007,
1786 	0x0002,
1787 	0x0002,
1788 };
1789 
1790 static const u16 dot11lcn_sw_ctrl_tbl_4313_epa_rev0[] = {
1791 	0x0002,
1792 	0x0008,
1793 	0x0004,
1794 	0x0001,
1795 	0x0002,
1796 	0x0008,
1797 	0x0004,
1798 	0x0001,
1799 	0x0002,
1800 	0x0008,
1801 	0x0004,
1802 	0x0001,
1803 	0x0002,
1804 	0x0008,
1805 	0x0004,
1806 	0x0001,
1807 	0x0002,
1808 	0x0008,
1809 	0x0004,
1810 	0x0001,
1811 	0x0002,
1812 	0x0008,
1813 	0x0004,
1814 	0x0001,
1815 	0x0002,
1816 	0x0008,
1817 	0x0004,
1818 	0x0001,
1819 	0x0002,
1820 	0x0008,
1821 	0x0004,
1822 	0x0001,
1823 	0x0002,
1824 	0x0008,
1825 	0x0004,
1826 	0x0001,
1827 	0x0002,
1828 	0x0008,
1829 	0x0004,
1830 	0x0001,
1831 	0x0002,
1832 	0x0008,
1833 	0x0004,
1834 	0x0001,
1835 	0x0002,
1836 	0x0008,
1837 	0x0004,
1838 	0x0001,
1839 	0x0002,
1840 	0x0008,
1841 	0x0004,
1842 	0x0001,
1843 	0x0002,
1844 	0x0008,
1845 	0x0004,
1846 	0x0001,
1847 	0x0002,
1848 	0x0008,
1849 	0x0004,
1850 	0x0001,
1851 	0x0002,
1852 	0x0008,
1853 	0x0004,
1854 	0x0001,
1855 };
1856 
1857 static const u16 dot11lcn_sw_ctrl_tbl_4313_rev0[] = {
1858 	0x000a,
1859 	0x0009,
1860 	0x0006,
1861 	0x0005,
1862 	0x000a,
1863 	0x0009,
1864 	0x0006,
1865 	0x0005,
1866 	0x000a,
1867 	0x0009,
1868 	0x0006,
1869 	0x0005,
1870 	0x000a,
1871 	0x0009,
1872 	0x0006,
1873 	0x0005,
1874 	0x000a,
1875 	0x0009,
1876 	0x0006,
1877 	0x0005,
1878 	0x000a,
1879 	0x0009,
1880 	0x0006,
1881 	0x0005,
1882 	0x000a,
1883 	0x0009,
1884 	0x0006,
1885 	0x0005,
1886 	0x000a,
1887 	0x0009,
1888 	0x0006,
1889 	0x0005,
1890 	0x000a,
1891 	0x0009,
1892 	0x0006,
1893 	0x0005,
1894 	0x000a,
1895 	0x0009,
1896 	0x0006,
1897 	0x0005,
1898 	0x000a,
1899 	0x0009,
1900 	0x0006,
1901 	0x0005,
1902 	0x000a,
1903 	0x0009,
1904 	0x0006,
1905 	0x0005,
1906 	0x000a,
1907 	0x0009,
1908 	0x0006,
1909 	0x0005,
1910 	0x000a,
1911 	0x0009,
1912 	0x0006,
1913 	0x0005,
1914 	0x000a,
1915 	0x0009,
1916 	0x0006,
1917 	0x0005,
1918 	0x000a,
1919 	0x0009,
1920 	0x0006,
1921 	0x0005,
1922 };
1923 
1924 static const u16 dot11lcn_sw_ctrl_tbl_4313_ipa_rev0_combo[] = {
1925 	0x0005,
1926 	0x0006,
1927 	0x0009,
1928 	0x000a,
1929 	0x0005,
1930 	0x0006,
1931 	0x0009,
1932 	0x000a,
1933 	0x0005,
1934 	0x0006,
1935 	0x0009,
1936 	0x000a,
1937 	0x0005,
1938 	0x0006,
1939 	0x0009,
1940 	0x000a,
1941 	0x0005,
1942 	0x0006,
1943 	0x0009,
1944 	0x000a,
1945 	0x0005,
1946 	0x0006,
1947 	0x0009,
1948 	0x000a,
1949 	0x0005,
1950 	0x0006,
1951 	0x0009,
1952 	0x000a,
1953 	0x0005,
1954 	0x0006,
1955 	0x0009,
1956 	0x000a,
1957 	0x0005,
1958 	0x0006,
1959 	0x0009,
1960 	0x000a,
1961 	0x0005,
1962 	0x0006,
1963 	0x0009,
1964 	0x000a,
1965 	0x0005,
1966 	0x0006,
1967 	0x0009,
1968 	0x000a,
1969 	0x0005,
1970 	0x0006,
1971 	0x0009,
1972 	0x000a,
1973 	0x0005,
1974 	0x0006,
1975 	0x0009,
1976 	0x000a,
1977 	0x0005,
1978 	0x0006,
1979 	0x0009,
1980 	0x000a,
1981 	0x0005,
1982 	0x0006,
1983 	0x0009,
1984 	0x000a,
1985 	0x0005,
1986 	0x0006,
1987 	0x0009,
1988 	0x000a,
1989 };
1990 
1991 static const u16 dot11lcn_sw_ctrl_tbl_rev0[] = {
1992 	0x0004,
1993 	0x0004,
1994 	0x0002,
1995 	0x0002,
1996 	0x0004,
1997 	0x0004,
1998 	0x0002,
1999 	0x0002,
2000 	0x0004,
2001 	0x0004,
2002 	0x0002,
2003 	0x0002,
2004 	0x0004,
2005 	0x0004,
2006 	0x0002,
2007 	0x0002,
2008 	0x0004,
2009 	0x0004,
2010 	0x0002,
2011 	0x0002,
2012 	0x0004,
2013 	0x0004,
2014 	0x0002,
2015 	0x0002,
2016 	0x0004,
2017 	0x0004,
2018 	0x0002,
2019 	0x0002,
2020 	0x0004,
2021 	0x0004,
2022 	0x0002,
2023 	0x0002,
2024 	0x0004,
2025 	0x0004,
2026 	0x0002,
2027 	0x0002,
2028 	0x0004,
2029 	0x0004,
2030 	0x0002,
2031 	0x0002,
2032 	0x0004,
2033 	0x0004,
2034 	0x0002,
2035 	0x0002,
2036 	0x0004,
2037 	0x0004,
2038 	0x0002,
2039 	0x0002,
2040 	0x0004,
2041 	0x0004,
2042 	0x0002,
2043 	0x0002,
2044 	0x0004,
2045 	0x0004,
2046 	0x0002,
2047 	0x0002,
2048 	0x0004,
2049 	0x0004,
2050 	0x0002,
2051 	0x0002,
2052 	0x0004,
2053 	0x0004,
2054 	0x0002,
2055 	0x0002,
2056 };
2057 
2058 static const u8 dot11lcn_nf_table_rev0[] = {
2059 	0x5f,
2060 	0x36,
2061 	0x29,
2062 	0x1f,
2063 	0x5f,
2064 	0x36,
2065 	0x29,
2066 	0x1f,
2067 	0x5f,
2068 	0x36,
2069 	0x29,
2070 	0x1f,
2071 	0x5f,
2072 	0x36,
2073 	0x29,
2074 	0x1f,
2075 };
2076 
2077 static const u8 dot11lcn_gain_val_tbl_rev0[] = {
2078 	0x09,
2079 	0x0f,
2080 	0x14,
2081 	0x18,
2082 	0xfe,
2083 	0x07,
2084 	0x0b,
2085 	0x0f,
2086 	0xfb,
2087 	0xfe,
2088 	0x01,
2089 	0x05,
2090 	0x08,
2091 	0x0b,
2092 	0x0e,
2093 	0x11,
2094 	0x14,
2095 	0x17,
2096 	0x00,
2097 	0x00,
2098 	0x00,
2099 	0x00,
2100 	0x00,
2101 	0x00,
2102 	0x00,
2103 	0x03,
2104 	0x06,
2105 	0x09,
2106 	0x0c,
2107 	0x0f,
2108 	0x12,
2109 	0x00,
2110 	0x00,
2111 	0x00,
2112 	0x00,
2113 	0x00,
2114 	0x00,
2115 	0x00,
2116 	0x00,
2117 	0x00,
2118 	0x00,
2119 	0x03,
2120 	0x06,
2121 	0x09,
2122 	0x0c,
2123 	0x0f,
2124 	0x12,
2125 	0x15,
2126 	0x18,
2127 	0x1b,
2128 	0x00,
2129 	0x00,
2130 	0x00,
2131 	0x00,
2132 	0x00,
2133 	0x00,
2134 	0x03,
2135 	0xeb,
2136 	0x00,
2137 	0x00,
2138 };
2139 
2140 static const u8 dot11lcn_spur_tbl_rev0[] = {
2141 	0x01,
2142 	0x01,
2143 	0x01,
2144 	0x01,
2145 	0x01,
2146 	0x01,
2147 	0x01,
2148 	0x01,
2149 	0x01,
2150 	0x01,
2151 	0x01,
2152 	0x01,
2153 	0x01,
2154 	0x01,
2155 	0x01,
2156 	0x01,
2157 	0x01,
2158 	0x01,
2159 	0x01,
2160 	0x01,
2161 	0x01,
2162 	0x01,
2163 	0x01,
2164 	0x01,
2165 	0x01,
2166 	0x01,
2167 	0x01,
2168 	0x01,
2169 	0x01,
2170 	0x01,
2171 	0x02,
2172 	0x03,
2173 	0x01,
2174 	0x03,
2175 	0x02,
2176 	0x01,
2177 	0x01,
2178 	0x01,
2179 	0x01,
2180 	0x01,
2181 	0x01,
2182 	0x01,
2183 	0x01,
2184 	0x01,
2185 	0x01,
2186 	0x01,
2187 	0x01,
2188 	0x01,
2189 	0x01,
2190 	0x01,
2191 	0x01,
2192 	0x01,
2193 	0x01,
2194 	0x01,
2195 	0x01,
2196 	0x01,
2197 	0x01,
2198 	0x01,
2199 	0x01,
2200 	0x01,
2201 	0x01,
2202 	0x01,
2203 	0x01,
2204 	0x01,
2205 	0x01,
2206 	0x01,
2207 	0x01,
2208 	0x01,
2209 	0x01,
2210 	0x01,
2211 	0x01,
2212 	0x01,
2213 	0x01,
2214 	0x01,
2215 	0x01,
2216 	0x01,
2217 	0x01,
2218 	0x01,
2219 	0x01,
2220 	0x01,
2221 	0x01,
2222 	0x01,
2223 	0x01,
2224 	0x01,
2225 	0x01,
2226 	0x01,
2227 	0x01,
2228 	0x01,
2229 	0x01,
2230 	0x01,
2231 	0x01,
2232 	0x01,
2233 	0x01,
2234 	0x01,
2235 	0x02,
2236 	0x03,
2237 	0x01,
2238 	0x03,
2239 	0x02,
2240 	0x01,
2241 	0x01,
2242 	0x01,
2243 	0x01,
2244 	0x01,
2245 	0x01,
2246 	0x01,
2247 	0x01,
2248 	0x01,
2249 	0x01,
2250 	0x01,
2251 	0x01,
2252 	0x01,
2253 	0x01,
2254 	0x01,
2255 	0x01,
2256 	0x01,
2257 	0x01,
2258 	0x01,
2259 	0x01,
2260 	0x01,
2261 	0x01,
2262 	0x01,
2263 	0x01,
2264 	0x01,
2265 	0x01,
2266 	0x01,
2267 	0x01,
2268 	0x01,
2269 };
2270 
2271 static const u16 dot11lcn_unsup_mcs_tbl_rev0[] = {
2272 	0x001a,
2273 	0x0034,
2274 	0x004e,
2275 	0x0068,
2276 	0x009c,
2277 	0x00d0,
2278 	0x00ea,
2279 	0x0104,
2280 	0x0034,
2281 	0x0068,
2282 	0x009c,
2283 	0x00d0,
2284 	0x0138,
2285 	0x01a0,
2286 	0x01d4,
2287 	0x0208,
2288 	0x004e,
2289 	0x009c,
2290 	0x00ea,
2291 	0x0138,
2292 	0x01d4,
2293 	0x0270,
2294 	0x02be,
2295 	0x030c,
2296 	0x0068,
2297 	0x00d0,
2298 	0x0138,
2299 	0x01a0,
2300 	0x0270,
2301 	0x0340,
2302 	0x03a8,
2303 	0x0410,
2304 	0x0018,
2305 	0x009c,
2306 	0x00d0,
2307 	0x0104,
2308 	0x00ea,
2309 	0x0138,
2310 	0x0186,
2311 	0x00d0,
2312 	0x0104,
2313 	0x0104,
2314 	0x0138,
2315 	0x016c,
2316 	0x016c,
2317 	0x01a0,
2318 	0x0138,
2319 	0x0186,
2320 	0x0186,
2321 	0x01d4,
2322 	0x0222,
2323 	0x0222,
2324 	0x0270,
2325 	0x0104,
2326 	0x0138,
2327 	0x016c,
2328 	0x0138,
2329 	0x016c,
2330 	0x01a0,
2331 	0x01d4,
2332 	0x01a0,
2333 	0x01d4,
2334 	0x0208,
2335 	0x0208,
2336 	0x023c,
2337 	0x0186,
2338 	0x01d4,
2339 	0x0222,
2340 	0x01d4,
2341 	0x0222,
2342 	0x0270,
2343 	0x02be,
2344 	0x0270,
2345 	0x02be,
2346 	0x030c,
2347 	0x030c,
2348 	0x035a,
2349 	0x0036,
2350 	0x006c,
2351 	0x00a2,
2352 	0x00d8,
2353 	0x0144,
2354 	0x01b0,
2355 	0x01e6,
2356 	0x021c,
2357 	0x006c,
2358 	0x00d8,
2359 	0x0144,
2360 	0x01b0,
2361 	0x0288,
2362 	0x0360,
2363 	0x03cc,
2364 	0x0438,
2365 	0x00a2,
2366 	0x0144,
2367 	0x01e6,
2368 	0x0288,
2369 	0x03cc,
2370 	0x0510,
2371 	0x05b2,
2372 	0x0654,
2373 	0x00d8,
2374 	0x01b0,
2375 	0x0288,
2376 	0x0360,
2377 	0x0510,
2378 	0x06c0,
2379 	0x0798,
2380 	0x0870,
2381 	0x0018,
2382 	0x0144,
2383 	0x01b0,
2384 	0x021c,
2385 	0x01e6,
2386 	0x0288,
2387 	0x032a,
2388 	0x01b0,
2389 	0x021c,
2390 	0x021c,
2391 	0x0288,
2392 	0x02f4,
2393 	0x02f4,
2394 	0x0360,
2395 	0x0288,
2396 	0x032a,
2397 	0x032a,
2398 	0x03cc,
2399 	0x046e,
2400 	0x046e,
2401 	0x0510,
2402 	0x021c,
2403 	0x0288,
2404 	0x02f4,
2405 	0x0288,
2406 	0x02f4,
2407 	0x0360,
2408 	0x03cc,
2409 	0x0360,
2410 	0x03cc,
2411 	0x0438,
2412 	0x0438,
2413 	0x04a4,
2414 	0x032a,
2415 	0x03cc,
2416 	0x046e,
2417 	0x03cc,
2418 	0x046e,
2419 	0x0510,
2420 	0x05b2,
2421 	0x0510,
2422 	0x05b2,
2423 	0x0654,
2424 	0x0654,
2425 	0x06f6,
2426 };
2427 
2428 static const u16 dot11lcn_iq_local_tbl_rev0[] = {
2429 	0x0200,
2430 	0x0300,
2431 	0x0400,
2432 	0x0600,
2433 	0x0800,
2434 	0x0b00,
2435 	0x1000,
2436 	0x1001,
2437 	0x1002,
2438 	0x1003,
2439 	0x1004,
2440 	0x1005,
2441 	0x1006,
2442 	0x1007,
2443 	0x1707,
2444 	0x2007,
2445 	0x2d07,
2446 	0x4007,
2447 	0x0000,
2448 	0x0000,
2449 	0x0000,
2450 	0x0000,
2451 	0x0000,
2452 	0x0000,
2453 	0x0000,
2454 	0x0000,
2455 	0x0000,
2456 	0x0000,
2457 	0x0000,
2458 	0x0000,
2459 	0x0000,
2460 	0x0000,
2461 	0x0200,
2462 	0x0300,
2463 	0x0400,
2464 	0x0600,
2465 	0x0800,
2466 	0x0b00,
2467 	0x1000,
2468 	0x1001,
2469 	0x1002,
2470 	0x1003,
2471 	0x1004,
2472 	0x1005,
2473 	0x1006,
2474 	0x1007,
2475 	0x1707,
2476 	0x2007,
2477 	0x2d07,
2478 	0x4007,
2479 	0x0000,
2480 	0x0000,
2481 	0x0000,
2482 	0x0000,
2483 	0x0000,
2484 	0x0000,
2485 	0x0000,
2486 	0x0000,
2487 	0x0000,
2488 	0x0000,
2489 	0x0000,
2490 	0x0000,
2491 	0x0000,
2492 	0x0000,
2493 	0x0000,
2494 	0x0000,
2495 	0x0000,
2496 	0x0000,
2497 	0x0000,
2498 	0x0000,
2499 	0x0000,
2500 	0x0000,
2501 	0x0000,
2502 	0x0000,
2503 	0x0000,
2504 	0x0000,
2505 	0x0000,
2506 	0x0000,
2507 	0x0000,
2508 	0x0000,
2509 	0x0000,
2510 	0x0000,
2511 	0x0000,
2512 	0x0000,
2513 	0x0000,
2514 	0x0000,
2515 	0x0000,
2516 	0x4000,
2517 	0x0000,
2518 	0x0000,
2519 	0x0000,
2520 	0x0000,
2521 	0x0000,
2522 	0x0000,
2523 	0x0000,
2524 	0x0000,
2525 	0x0000,
2526 	0x0000,
2527 	0x0000,
2528 	0x0000,
2529 	0x0000,
2530 	0x0000,
2531 	0x0000,
2532 	0x0000,
2533 	0x0000,
2534 	0x0000,
2535 	0x0000,
2536 	0x0000,
2537 };
2538 
2539 static const u32 dot11lcn_papd_compdelta_tbl_rev0[] = {
2540 	0x00080000,
2541 	0x00080000,
2542 	0x00080000,
2543 	0x00080000,
2544 	0x00080000,
2545 	0x00080000,
2546 	0x00080000,
2547 	0x00080000,
2548 	0x00080000,
2549 	0x00080000,
2550 	0x00080000,
2551 	0x00080000,
2552 	0x00080000,
2553 	0x00080000,
2554 	0x00080000,
2555 	0x00080000,
2556 	0x00080000,
2557 	0x00080000,
2558 	0x00080000,
2559 	0x00080000,
2560 	0x00080000,
2561 	0x00080000,
2562 	0x00080000,
2563 	0x00080000,
2564 	0x00080000,
2565 	0x00080000,
2566 	0x00080000,
2567 	0x00080000,
2568 	0x00080000,
2569 	0x00080000,
2570 	0x00080000,
2571 	0x00080000,
2572 	0x00080000,
2573 	0x00080000,
2574 	0x00080000,
2575 	0x00080000,
2576 	0x00080000,
2577 	0x00080000,
2578 	0x00080000,
2579 	0x00080000,
2580 	0x00080000,
2581 	0x00080000,
2582 	0x00080000,
2583 	0x00080000,
2584 	0x00080000,
2585 	0x00080000,
2586 	0x00080000,
2587 	0x00080000,
2588 	0x00080000,
2589 	0x00080000,
2590 	0x00080000,
2591 	0x00080000,
2592 	0x00080000,
2593 	0x00080000,
2594 	0x00080000,
2595 	0x00080000,
2596 	0x00080000,
2597 	0x00080000,
2598 	0x00080000,
2599 	0x00080000,
2600 	0x00080000,
2601 	0x00080000,
2602 	0x00080000,
2603 	0x00080000,
2604 	0x00080000,
2605 	0x00080000,
2606 	0x00080000,
2607 	0x00080000,
2608 	0x00080000,
2609 	0x00080000,
2610 	0x00080000,
2611 	0x00080000,
2612 	0x00080000,
2613 	0x00080000,
2614 	0x00080000,
2615 	0x00080000,
2616 	0x00080000,
2617 	0x00080000,
2618 	0x00080000,
2619 	0x00080000,
2620 	0x00080000,
2621 	0x00080000,
2622 	0x00080000,
2623 	0x00080000,
2624 	0x00080000,
2625 	0x00080000,
2626 	0x00080000,
2627 	0x00080000,
2628 	0x00080000,
2629 	0x00080000,
2630 	0x00080000,
2631 	0x00080000,
2632 	0x00080000,
2633 	0x00080000,
2634 	0x00080000,
2635 	0x00080000,
2636 	0x00080000,
2637 	0x00080000,
2638 	0x00080000,
2639 	0x00080000,
2640 	0x00080000,
2641 	0x00080000,
2642 	0x00080000,
2643 	0x00080000,
2644 	0x00080000,
2645 	0x00080000,
2646 	0x00080000,
2647 	0x00080000,
2648 	0x00080000,
2649 	0x00080000,
2650 	0x00080000,
2651 	0x00080000,
2652 	0x00080000,
2653 	0x00080000,
2654 	0x00080000,
2655 	0x00080000,
2656 	0x00080000,
2657 	0x00080000,
2658 	0x00080000,
2659 	0x00080000,
2660 	0x00080000,
2661 	0x00080000,
2662 	0x00080000,
2663 	0x00080000,
2664 	0x00080000,
2665 	0x00080000,
2666 	0x00080000,
2667 	0x00080000,
2668 	0x00080000,
2669 	0x00080000,
2670 	0x00080000,
2671 	0x00080000,
2672 	0x00080000,
2673 	0x00080000,
2674 	0x00080000,
2675 	0x00080000,
2676 	0x00080000,
2677 	0x00080000,
2678 	0x00080000,
2679 	0x00080000,
2680 	0x00080000,
2681 	0x00080000,
2682 	0x00080000,
2683 	0x00080000,
2684 	0x00080000,
2685 	0x00080000,
2686 	0x00080000,
2687 	0x00080000,
2688 	0x00080000,
2689 	0x00080000,
2690 	0x00080000,
2691 	0x00080000,
2692 	0x00080000,
2693 	0x00080000,
2694 	0x00080000,
2695 	0x00080000,
2696 	0x00080000,
2697 	0x00080000,
2698 	0x00080000,
2699 	0x00080000,
2700 };
2701 
2702 const struct phytbl_info dot11lcnphytbl_info_rev0[] = {
2703 	{&dot11lcn_min_sig_sq_tbl_rev0,
2704 	 ARRAY_SIZE(dot11lcn_min_sig_sq_tbl_rev0), 2, 0, 16}
2705 	,
2706 	{&dot11lcn_noise_scale_tbl_rev0,
2707 	 ARRAY_SIZE(dot11lcn_noise_scale_tbl_rev0), 1, 0, 16}
2708 	,
2709 	{&dot11lcn_fltr_ctrl_tbl_rev0,
2710 	 ARRAY_SIZE(dot11lcn_fltr_ctrl_tbl_rev0), 11, 0, 32}
2711 	,
2712 	{&dot11lcn_ps_ctrl_tbl_rev0,
2713 	 ARRAY_SIZE(dot11lcn_ps_ctrl_tbl_rev0), 12, 0, 32}
2714 	,
2715 	{&dot11lcn_gain_idx_tbl_rev0,
2716 	 ARRAY_SIZE(dot11lcn_gain_idx_tbl_rev0), 13, 0, 32}
2717 	,
2718 	{&dot11lcn_aux_gain_idx_tbl_rev0,
2719 	 ARRAY_SIZE(dot11lcn_aux_gain_idx_tbl_rev0), 14, 0, 16}
2720 	,
2721 	{&dot11lcn_sw_ctrl_tbl_rev0,
2722 	 ARRAY_SIZE(dot11lcn_sw_ctrl_tbl_rev0), 15, 0, 16}
2723 	,
2724 	{&dot11lcn_nf_table_rev0,
2725 	 ARRAY_SIZE(dot11lcn_nf_table_rev0), 16,
2726 	 0, 8}
2727 	,
2728 	{&dot11lcn_gain_val_tbl_rev0,
2729 	 ARRAY_SIZE(dot11lcn_gain_val_tbl_rev0), 17, 0, 8}
2730 	,
2731 	{&dot11lcn_gain_tbl_rev0,
2732 	 ARRAY_SIZE(dot11lcn_gain_tbl_rev0), 18,
2733 	 0, 32}
2734 	,
2735 	{&dot11lcn_spur_tbl_rev0,
2736 	 ARRAY_SIZE(dot11lcn_spur_tbl_rev0), 20,
2737 	 0, 8}
2738 	,
2739 	{&dot11lcn_unsup_mcs_tbl_rev0,
2740 	 ARRAY_SIZE(dot11lcn_unsup_mcs_tbl_rev0), 23, 0, 16}
2741 	,
2742 	{&dot11lcn_iq_local_tbl_rev0,
2743 	 ARRAY_SIZE(dot11lcn_iq_local_tbl_rev0), 0, 0, 16}
2744 	,
2745 	{&dot11lcn_papd_compdelta_tbl_rev0,
2746 	 ARRAY_SIZE(dot11lcn_papd_compdelta_tbl_rev0), 24, 0, 32}
2747 	,
2748 };
2749 
2750 const struct phytbl_info dot11lcn_sw_ctrl_tbl_info_4313 = {
2751 	&dot11lcn_sw_ctrl_tbl_4313_rev0,
2752 	ARRAY_SIZE(dot11lcn_sw_ctrl_tbl_4313_rev0), 15, 0, 16
2753 };
2754 
2755 const struct phytbl_info dot11lcn_sw_ctrl_tbl_info_4313_bt_ipa = {
2756 	&dot11lcn_sw_ctrl_tbl_4313_ipa_rev0_combo,
2757 	ARRAY_SIZE(dot11lcn_sw_ctrl_tbl_4313_ipa_rev0_combo), 15, 0, 16
2758 };
2759 
2760 const struct phytbl_info dot11lcn_sw_ctrl_tbl_info_4313_epa = {
2761 	&dot11lcn_sw_ctrl_tbl_4313_epa_rev0,
2762 	ARRAY_SIZE(dot11lcn_sw_ctrl_tbl_4313_epa_rev0), 15, 0, 16
2763 };
2764 
2765 const struct phytbl_info dot11lcn_sw_ctrl_tbl_info_4313_bt_epa = {
2766 	&dot11lcn_sw_ctrl_tbl_4313_epa_rev0_combo,
2767 	ARRAY_SIZE(dot11lcn_sw_ctrl_tbl_4313_epa_rev0_combo), 15, 0, 16
2768 };
2769 
2770 const struct phytbl_info dot11lcn_sw_ctrl_tbl_info_4313_bt_epa_p250 = {
2771 	&dot11lcn_sw_ctrl_tbl_4313_bt_epa_p250_rev0,
2772 	ARRAY_SIZE(dot11lcn_sw_ctrl_tbl_4313_bt_epa_p250_rev0), 15, 0, 16
2773 };
2774 
2775 const u32 dot11lcnphytbl_info_sz_rev0 =
2776 	ARRAY_SIZE(dot11lcnphytbl_info_rev0);
2777 
2778 const struct lcnphy_tx_gain_tbl_entry
2779 dot11lcnphy_2GHz_extPA_gaintable_rev0[128] = {
2780 	{3, 0, 31, 0, 72},
2781 	{3, 0, 31, 0, 70},
2782 	{3, 0, 31, 0, 68},
2783 	{3, 0, 30, 0, 67},
2784 	{3, 0, 29, 0, 68},
2785 	{3, 0, 28, 0, 68},
2786 	{3, 0, 27, 0, 69},
2787 	{3, 0, 26, 0, 70},
2788 	{3, 0, 25, 0, 70},
2789 	{3, 0, 24, 0, 71},
2790 	{3, 0, 23, 0, 72},
2791 	{3, 0, 23, 0, 70},
2792 	{3, 0, 22, 0, 71},
2793 	{3, 0, 21, 0, 72},
2794 	{3, 0, 21, 0, 70},
2795 	{3, 0, 21, 0, 68},
2796 	{3, 0, 21, 0, 66},
2797 	{3, 0, 21, 0, 64},
2798 	{3, 0, 21, 0, 63},
2799 	{3, 0, 20, 0, 64},
2800 	{3, 0, 19, 0, 65},
2801 	{3, 0, 19, 0, 64},
2802 	{3, 0, 18, 0, 65},
2803 	{3, 0, 18, 0, 64},
2804 	{3, 0, 17, 0, 65},
2805 	{3, 0, 17, 0, 64},
2806 	{3, 0, 16, 0, 65},
2807 	{3, 0, 16, 0, 64},
2808 	{3, 0, 16, 0, 62},
2809 	{3, 0, 16, 0, 60},
2810 	{3, 0, 16, 0, 58},
2811 	{3, 0, 15, 0, 61},
2812 	{3, 0, 15, 0, 59},
2813 	{3, 0, 14, 0, 61},
2814 	{3, 0, 14, 0, 60},
2815 	{3, 0, 14, 0, 58},
2816 	{3, 0, 13, 0, 60},
2817 	{3, 0, 13, 0, 59},
2818 	{3, 0, 12, 0, 62},
2819 	{3, 0, 12, 0, 60},
2820 	{3, 0, 12, 0, 58},
2821 	{3, 0, 11, 0, 62},
2822 	{3, 0, 11, 0, 60},
2823 	{3, 0, 11, 0, 59},
2824 	{3, 0, 11, 0, 57},
2825 	{3, 0, 10, 0, 61},
2826 	{3, 0, 10, 0, 59},
2827 	{3, 0, 10, 0, 57},
2828 	{3, 0, 9, 0, 62},
2829 	{3, 0, 9, 0, 60},
2830 	{3, 0, 9, 0, 58},
2831 	{3, 0, 9, 0, 57},
2832 	{3, 0, 8, 0, 62},
2833 	{3, 0, 8, 0, 60},
2834 	{3, 0, 8, 0, 58},
2835 	{3, 0, 8, 0, 57},
2836 	{3, 0, 8, 0, 55},
2837 	{3, 0, 7, 0, 61},
2838 	{3, 0, 7, 0, 60},
2839 	{3, 0, 7, 0, 58},
2840 	{3, 0, 7, 0, 56},
2841 	{3, 0, 7, 0, 55},
2842 	{3, 0, 6, 0, 62},
2843 	{3, 0, 6, 0, 60},
2844 	{3, 0, 6, 0, 58},
2845 	{3, 0, 6, 0, 57},
2846 	{3, 0, 6, 0, 55},
2847 	{3, 0, 6, 0, 54},
2848 	{3, 0, 6, 0, 52},
2849 	{3, 0, 5, 0, 61},
2850 	{3, 0, 5, 0, 59},
2851 	{3, 0, 5, 0, 57},
2852 	{3, 0, 5, 0, 56},
2853 	{3, 0, 5, 0, 54},
2854 	{3, 0, 5, 0, 53},
2855 	{3, 0, 5, 0, 51},
2856 	{3, 0, 4, 0, 62},
2857 	{3, 0, 4, 0, 60},
2858 	{3, 0, 4, 0, 58},
2859 	{3, 0, 4, 0, 57},
2860 	{3, 0, 4, 0, 55},
2861 	{3, 0, 4, 0, 54},
2862 	{3, 0, 4, 0, 52},
2863 	{3, 0, 4, 0, 51},
2864 	{3, 0, 4, 0, 49},
2865 	{3, 0, 4, 0, 48},
2866 	{3, 0, 4, 0, 46},
2867 	{3, 0, 3, 0, 60},
2868 	{3, 0, 3, 0, 58},
2869 	{3, 0, 3, 0, 57},
2870 	{3, 0, 3, 0, 55},
2871 	{3, 0, 3, 0, 54},
2872 	{3, 0, 3, 0, 52},
2873 	{3, 0, 3, 0, 51},
2874 	{3, 0, 3, 0, 49},
2875 	{3, 0, 3, 0, 48},
2876 	{3, 0, 3, 0, 46},
2877 	{3, 0, 3, 0, 45},
2878 	{3, 0, 3, 0, 44},
2879 	{3, 0, 3, 0, 43},
2880 	{3, 0, 3, 0, 41},
2881 	{3, 0, 2, 0, 61},
2882 	{3, 0, 2, 0, 59},
2883 	{3, 0, 2, 0, 57},
2884 	{3, 0, 2, 0, 56},
2885 	{3, 0, 2, 0, 54},
2886 	{3, 0, 2, 0, 53},
2887 	{3, 0, 2, 0, 51},
2888 	{3, 0, 2, 0, 50},
2889 	{3, 0, 2, 0, 48},
2890 	{3, 0, 2, 0, 47},
2891 	{3, 0, 2, 0, 46},
2892 	{3, 0, 2, 0, 44},
2893 	{3, 0, 2, 0, 43},
2894 	{3, 0, 2, 0, 42},
2895 	{3, 0, 2, 0, 41},
2896 	{3, 0, 2, 0, 39},
2897 	{3, 0, 2, 0, 38},
2898 	{3, 0, 2, 0, 37},
2899 	{3, 0, 2, 0, 36},
2900 	{3, 0, 2, 0, 35},
2901 	{3, 0, 2, 0, 34},
2902 	{3, 0, 2, 0, 33},
2903 	{3, 0, 2, 0, 32},
2904 	{3, 0, 1, 0, 63},
2905 	{3, 0, 1, 0, 61},
2906 	{3, 0, 1, 0, 59},
2907 	{3, 0, 1, 0, 57},
2908 };
2909 
2910 const struct lcnphy_tx_gain_tbl_entry dot11lcnphy_2GHz_gaintable_rev0[128] = {
2911 	{15, 0, 31, 0, 72},
2912 	{15, 0, 31, 0, 70},
2913 	{15, 0, 31, 0, 68},
2914 	{15, 0, 30, 0, 68},
2915 	{15, 0, 29, 0, 69},
2916 	{15, 0, 28, 0, 69},
2917 	{15, 0, 27, 0, 70},
2918 	{15, 0, 26, 0, 70},
2919 	{15, 0, 25, 0, 71},
2920 	{15, 0, 24, 0, 72},
2921 	{15, 0, 23, 0, 73},
2922 	{15, 0, 23, 0, 71},
2923 	{15, 0, 22, 0, 72},
2924 	{15, 0, 21, 0, 73},
2925 	{15, 0, 21, 0, 71},
2926 	{15, 0, 21, 0, 69},
2927 	{15, 0, 21, 0, 67},
2928 	{15, 0, 21, 0, 65},
2929 	{15, 0, 21, 0, 63},
2930 	{15, 0, 20, 0, 65},
2931 	{15, 0, 19, 0, 66},
2932 	{15, 0, 19, 0, 64},
2933 	{15, 0, 18, 0, 66},
2934 	{15, 0, 18, 0, 64},
2935 	{15, 0, 17, 0, 66},
2936 	{15, 0, 17, 0, 64},
2937 	{15, 0, 16, 0, 66},
2938 	{15, 0, 16, 0, 64},
2939 	{15, 0, 16, 0, 62},
2940 	{15, 0, 16, 0, 61},
2941 	{15, 0, 16, 0, 59},
2942 	{15, 0, 15, 0, 61},
2943 	{15, 0, 15, 0, 59},
2944 	{15, 0, 14, 0, 62},
2945 	{15, 0, 14, 0, 60},
2946 	{15, 0, 14, 0, 58},
2947 	{15, 0, 13, 0, 61},
2948 	{15, 0, 13, 0, 59},
2949 	{15, 0, 12, 0, 62},
2950 	{15, 0, 12, 0, 61},
2951 	{15, 0, 12, 0, 59},
2952 	{15, 0, 11, 0, 62},
2953 	{15, 0, 11, 0, 61},
2954 	{15, 0, 11, 0, 59},
2955 	{15, 0, 11, 0, 57},
2956 	{15, 0, 10, 0, 61},
2957 	{15, 0, 10, 0, 59},
2958 	{15, 0, 10, 0, 58},
2959 	{15, 0, 9, 0, 62},
2960 	{15, 0, 9, 0, 61},
2961 	{15, 0, 9, 0, 59},
2962 	{15, 0, 9, 0, 57},
2963 	{15, 0, 8, 0, 62},
2964 	{15, 0, 8, 0, 61},
2965 	{15, 0, 8, 0, 59},
2966 	{15, 0, 8, 0, 57},
2967 	{15, 0, 8, 0, 56},
2968 	{15, 0, 8, 0, 54},
2969 	{15, 0, 8, 0, 53},
2970 	{15, 0, 8, 0, 51},
2971 	{15, 0, 8, 0, 50},
2972 	{7, 0, 7, 0, 69},
2973 	{7, 0, 7, 0, 67},
2974 	{7, 0, 7, 0, 65},
2975 	{7, 0, 7, 0, 64},
2976 	{7, 0, 7, 0, 62},
2977 	{7, 0, 7, 0, 60},
2978 	{7, 0, 7, 0, 58},
2979 	{7, 0, 7, 0, 57},
2980 	{7, 0, 7, 0, 55},
2981 	{7, 0, 6, 0, 62},
2982 	{7, 0, 6, 0, 61},
2983 	{7, 0, 6, 0, 59},
2984 	{7, 0, 6, 0, 57},
2985 	{7, 0, 6, 0, 56},
2986 	{7, 0, 6, 0, 54},
2987 	{7, 0, 6, 0, 53},
2988 	{7, 0, 5, 0, 61},
2989 	{7, 0, 5, 0, 60},
2990 	{7, 0, 5, 0, 58},
2991 	{7, 0, 5, 0, 56},
2992 	{7, 0, 5, 0, 55},
2993 	{7, 0, 5, 0, 53},
2994 	{7, 0, 5, 0, 52},
2995 	{7, 0, 5, 0, 50},
2996 	{7, 0, 5, 0, 49},
2997 	{7, 0, 5, 0, 47},
2998 	{7, 0, 4, 0, 57},
2999 	{7, 0, 4, 0, 56},
3000 	{7, 0, 4, 0, 54},
3001 	{7, 0, 4, 0, 53},
3002 	{7, 0, 4, 0, 51},
3003 	{7, 0, 4, 0, 50},
3004 	{7, 0, 4, 0, 48},
3005 	{7, 0, 4, 0, 47},
3006 	{7, 0, 4, 0, 46},
3007 	{7, 0, 4, 0, 44},
3008 	{7, 0, 4, 0, 43},
3009 	{7, 0, 4, 0, 42},
3010 	{7, 0, 4, 0, 41},
3011 	{7, 0, 4, 0, 40},
3012 	{7, 0, 3, 0, 51},
3013 	{7, 0, 3, 0, 50},
3014 	{7, 0, 3, 0, 48},
3015 	{7, 0, 3, 0, 47},
3016 	{7, 0, 3, 0, 46},
3017 	{7, 0, 3, 0, 44},
3018 	{7, 0, 3, 0, 43},
3019 	{7, 0, 3, 0, 42},
3020 	{7, 0, 3, 0, 41},
3021 	{3, 0, 3, 0, 56},
3022 	{3, 0, 3, 0, 54},
3023 	{3, 0, 3, 0, 53},
3024 	{3, 0, 3, 0, 51},
3025 	{3, 0, 3, 0, 50},
3026 	{3, 0, 3, 0, 48},
3027 	{3, 0, 3, 0, 47},
3028 	{3, 0, 3, 0, 46},
3029 	{3, 0, 3, 0, 44},
3030 	{3, 0, 3, 0, 43},
3031 	{3, 0, 3, 0, 42},
3032 	{3, 0, 3, 0, 41},
3033 	{3, 0, 3, 0, 39},
3034 	{3, 0, 3, 0, 38},
3035 	{3, 0, 3, 0, 37},
3036 	{3, 0, 3, 0, 36},
3037 	{3, 0, 3, 0, 35},
3038 	{3, 0, 3, 0, 34},
3039 };
3040 
3041 const struct lcnphy_tx_gain_tbl_entry dot11lcnphy_5GHz_gaintable_rev0[128] = {
3042 	{255, 255, 0xf0, 0, 152},
3043 	{255, 255, 0xf0, 0, 147},
3044 	{255, 255, 0xf0, 0, 143},
3045 	{255, 255, 0xf0, 0, 139},
3046 	{255, 255, 0xf0, 0, 135},
3047 	{255, 255, 0xf0, 0, 131},
3048 	{255, 255, 0xf0, 0, 128},
3049 	{255, 255, 0xf0, 0, 124},
3050 	{255, 255, 0xf0, 0, 121},
3051 	{255, 255, 0xf0, 0, 117},
3052 	{255, 255, 0xf0, 0, 114},
3053 	{255, 255, 0xf0, 0, 111},
3054 	{255, 255, 0xf0, 0, 107},
3055 	{255, 255, 0xf0, 0, 104},
3056 	{255, 255, 0xf0, 0, 101},
3057 	{255, 255, 0xf0, 0, 99},
3058 	{255, 255, 0xf0, 0, 96},
3059 	{255, 255, 0xf0, 0, 93},
3060 	{255, 255, 0xf0, 0, 90},
3061 	{255, 255, 0xf0, 0, 88},
3062 	{255, 255, 0xf0, 0, 85},
3063 	{255, 255, 0xf0, 0, 83},
3064 	{255, 255, 0xf0, 0, 81},
3065 	{255, 255, 0xf0, 0, 78},
3066 	{255, 255, 0xf0, 0, 76},
3067 	{255, 255, 0xf0, 0, 74},
3068 	{255, 255, 0xf0, 0, 72},
3069 	{255, 255, 0xf0, 0, 70},
3070 	{255, 255, 0xf0, 0, 68},
3071 	{255, 255, 0xf0, 0, 66},
3072 	{255, 255, 0xf0, 0, 64},
3073 	{255, 248, 0xf0, 0, 64},
3074 	{255, 241, 0xf0, 0, 64},
3075 	{255, 251, 0xe0, 0, 64},
3076 	{255, 244, 0xe0, 0, 64},
3077 	{255, 254, 0xd0, 0, 64},
3078 	{255, 246, 0xd0, 0, 64},
3079 	{255, 239, 0xd0, 0, 64},
3080 	{255, 249, 0xc0, 0, 64},
3081 	{255, 242, 0xc0, 0, 64},
3082 	{255, 255, 0xb0, 0, 64},
3083 	{255, 248, 0xb0, 0, 64},
3084 	{255, 241, 0xb0, 0, 64},
3085 	{255, 254, 0xa0, 0, 64},
3086 	{255, 246, 0xa0, 0, 64},
3087 	{255, 239, 0xa0, 0, 64},
3088 	{255, 255, 0x90, 0, 64},
3089 	{255, 248, 0x90, 0, 64},
3090 	{255, 241, 0x90, 0, 64},
3091 	{255, 234, 0x90, 0, 64},
3092 	{255, 255, 0x80, 0, 64},
3093 	{255, 248, 0x80, 0, 64},
3094 	{255, 241, 0x80, 0, 64},
3095 	{255, 234, 0x80, 0, 64},
3096 	{255, 255, 0x70, 0, 64},
3097 	{255, 248, 0x70, 0, 64},
3098 	{255, 241, 0x70, 0, 64},
3099 	{255, 234, 0x70, 0, 64},
3100 	{255, 227, 0x70, 0, 64},
3101 	{255, 221, 0x70, 0, 64},
3102 	{255, 215, 0x70, 0, 64},
3103 	{255, 208, 0x70, 0, 64},
3104 	{255, 203, 0x70, 0, 64},
3105 	{255, 197, 0x70, 0, 64},
3106 	{255, 255, 0x60, 0, 64},
3107 	{255, 248, 0x60, 0, 64},
3108 	{255, 241, 0x60, 0, 64},
3109 	{255, 234, 0x60, 0, 64},
3110 	{255, 227, 0x60, 0, 64},
3111 	{255, 221, 0x60, 0, 64},
3112 	{255, 255, 0x50, 0, 64},
3113 	{255, 248, 0x50, 0, 64},
3114 	{255, 241, 0x50, 0, 64},
3115 	{255, 234, 0x50, 0, 64},
3116 	{255, 227, 0x50, 0, 64},
3117 	{255, 221, 0x50, 0, 64},
3118 	{255, 215, 0x50, 0, 64},
3119 	{255, 208, 0x50, 0, 64},
3120 	{255, 255, 0x40, 0, 64},
3121 	{255, 248, 0x40, 0, 64},
3122 	{255, 241, 0x40, 0, 64},
3123 	{255, 234, 0x40, 0, 64},
3124 	{255, 227, 0x40, 0, 64},
3125 	{255, 221, 0x40, 0, 64},
3126 	{255, 215, 0x40, 0, 64},
3127 	{255, 208, 0x40, 0, 64},
3128 	{255, 203, 0x40, 0, 64},
3129 	{255, 197, 0x40, 0, 64},
3130 	{255, 255, 0x30, 0, 64},
3131 	{255, 248, 0x30, 0, 64},
3132 	{255, 241, 0x30, 0, 64},
3133 	{255, 234, 0x30, 0, 64},
3134 	{255, 227, 0x30, 0, 64},
3135 	{255, 221, 0x30, 0, 64},
3136 	{255, 215, 0x30, 0, 64},
3137 	{255, 208, 0x30, 0, 64},
3138 	{255, 203, 0x30, 0, 64},
3139 	{255, 197, 0x30, 0, 64},
3140 	{255, 191, 0x30, 0, 64},
3141 	{255, 186, 0x30, 0, 64},
3142 	{255, 181, 0x30, 0, 64},
3143 	{255, 175, 0x30, 0, 64},
3144 	{255, 255, 0x20, 0, 64},
3145 	{255, 248, 0x20, 0, 64},
3146 	{255, 241, 0x20, 0, 64},
3147 	{255, 234, 0x20, 0, 64},
3148 	{255, 227, 0x20, 0, 64},
3149 	{255, 221, 0x20, 0, 64},
3150 	{255, 215, 0x20, 0, 64},
3151 	{255, 208, 0x20, 0, 64},
3152 	{255, 203, 0x20, 0, 64},
3153 	{255, 197, 0x20, 0, 64},
3154 	{255, 191, 0x20, 0, 64},
3155 	{255, 186, 0x20, 0, 64},
3156 	{255, 181, 0x20, 0, 64},
3157 	{255, 175, 0x20, 0, 64},
3158 	{255, 170, 0x20, 0, 64},
3159 	{255, 166, 0x20, 0, 64},
3160 	{255, 161, 0x20, 0, 64},
3161 	{255, 156, 0x20, 0, 64},
3162 	{255, 152, 0x20, 0, 64},
3163 	{255, 148, 0x20, 0, 64},
3164 	{255, 143, 0x20, 0, 64},
3165 	{255, 139, 0x20, 0, 64},
3166 	{255, 135, 0x20, 0, 64},
3167 	{255, 132, 0x20, 0, 64},
3168 	{255, 255, 0x10, 0, 64},
3169 	{255, 248, 0x10, 0, 64},
3170 };
3171