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