// SPDX-License-Identifier: GPL-2.0-or-later /* Broadcom B43 wireless driver IEEE 802.11n 2057 radio device data tables Copyright (c) 2010 Rafał Miłecki <[email protected]> */ #include "b43.h" #include "radio_2057.h" #include "phy_common.h" static u16 r2057_rev4_init[][2] = …; static u16 r2057_rev5_init[][2] = …; static u16 r2057_rev5a_init[][2] = …; static u16 r2057_rev7_init[][2] = …; /* TODO: Which devices should use it? static u16 r2057_rev8_init[][2] = { { 0x00, 0x08 }, { 0x01, 0x57 }, { 0x02, 0x20 }, { 0x31, 0x00 }, { 0x32, 0x00 }, { 0x33, 0x00 }, { 0x51, 0x70 }, { 0x59, 0x88 }, { 0x5C, 0x20 }, { 0x62, 0x33 }, { 0x63, 0x0f }, { 0x64, 0x0f }, { 0x6E, 0x58 }, { 0x75, 0x13 }, { 0x7B, 0x13 }, { 0x7C, 0x0f }, { 0x7D, 0xee }, { 0x81, 0x01 }, { 0x91, 0x3f }, { 0x92, 0x36 }, { 0xA1, 0x20 }, { 0xC9, 0x01 }, { 0xD6, 0x70 }, { 0xDE, 0x88 }, { 0xE1, 0x20 }, { 0xE8, 0x0f }, { 0xE9, 0x0f }, { 0xF3, 0x58 }, { 0xFA, 0x13 }, { 0x100, 0x13 }, { 0x101, 0x0f }, { 0x102, 0xee }, { 0x106, 0x01 }, { 0x116, 0x3f }, { 0x117, 0x36 }, { 0x126, 0x20 }, { 0x14E, 0x01 }, { 0x15E, 0x00 }, { 0x15F, 0x00 }, { 0x160, 0x00 }, { 0x161, 0x00 }, { 0x162, 0x00 }, { 0x163, 0x00 }, { 0x16A, 0x00 }, { 0x16B, 0x00 }, { 0x16C, 0x00 }, { 0x1A4, 0x00 }, { 0x1A5, 0x00 }, { 0x1A6, 0x00 }, { 0x1AA, 0x00 }, { 0x1AB, 0x00 }, { 0x1AC, 0x00 }, { 0x1B7, 0x05 }, { 0x1C2, 0xa0 }, }; */ /* Extracted from MMIO dump of 6.30.223.141 */ static u16 r2057_rev9_init[][2] = …; /* Extracted from MMIO dump of 6.30.223.248 */ static u16 r2057_rev14_init[][2] = …; #define RADIOREGS7(r00, r01, r02, r03, r04, r05, r06, r07, r08, r09, \ r10, r11, r12, r13, r14, r15, r16, r17, r18, r19, \ r20, r21, r22, r23, r24, r25, r26, r27) … #define RADIOREGS7_2G(r00, r01, r02, r03, r04, r05, r06, r07, r08, r09, \ r10, r11, r12, r13, r14, r15, r16, r17) … #define PHYREGS(r0, r1, r2, r3, r4, r5) … /* Copied from brcmsmac (5.75.11): chan_info_nphyrev8_2057_rev5 */ static const struct b43_nphy_chantabent_rev7_2g b43_nphy_chantab_phy_rev8_radio_rev5[] = …; /* Extracted from MMIO dump of 6.30.223.248 */ static const struct b43_nphy_chantabent_rev7_2g b43_nphy_chantab_phy_rev17_radio_rev14[] = …; /* Extracted from MMIO dump of 6.30.223.141 */ static const struct b43_nphy_chantabent_rev7 b43_nphy_chantab_phy_rev16_radio_rev9[] = …; void r2057_upload_inittabs(struct b43_wldev *dev) { … } void r2057_get_chantabent_rev7(struct b43_wldev *dev, u16 freq, const struct b43_nphy_chantabent_rev7 **tabent_r7, const struct b43_nphy_chantabent_rev7_2g **tabent_r7_2g) { … }