| // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause |
| /* Copyright(c) 2024 Realtek Corporation |
| */ |
| |
| #include "main.h" |
| #include "phy.h" |
| #include "rtw8821a_table.h" |
| |
| static const u32 rtw8821a_mac[] = { |
| 0x421, 0x0000000F, |
| 0x428, 0x0000000A, |
| 0x429, 0x00000010, |
| 0x430, 0x00000000, |
| 0x431, 0x00000000, |
| 0x432, 0x00000000, |
| 0x433, 0x00000001, |
| 0x434, 0x00000004, |
| 0x435, 0x00000005, |
| 0x436, 0x00000007, |
| 0x437, 0x00000008, |
| 0x43C, 0x00000004, |
| 0x43D, 0x00000005, |
| 0x43E, 0x00000007, |
| 0x43F, 0x00000008, |
| 0x440, 0x0000005D, |
| 0x441, 0x00000001, |
| 0x442, 0x00000000, |
| 0x444, 0x00000010, |
| 0x445, 0x00000000, |
| 0x446, 0x00000000, |
| 0x447, 0x00000000, |
| 0x448, 0x00000000, |
| 0x449, 0x000000F0, |
| 0x44A, 0x0000000F, |
| 0x44B, 0x0000003E, |
| 0x44C, 0x00000010, |
| 0x44D, 0x00000000, |
| 0x44E, 0x00000000, |
| 0x44F, 0x00000000, |
| 0x450, 0x00000000, |
| 0x451, 0x000000F0, |
| 0x452, 0x0000000F, |
| 0x453, 0x00000000, |
| 0x456, 0x0000005E, |
| 0x460, 0x00000066, |
| 0x461, 0x00000066, |
| 0x4C8, 0x0000003F, |
| 0x4C9, 0x000000FF, |
| 0x4CC, 0x000000FF, |
| 0x4CD, 0x000000FF, |
| 0x4CE, 0x00000001, |
| 0x500, 0x00000026, |
| 0x501, 0x000000A2, |
| 0x502, 0x0000002F, |
| 0x503, 0x00000000, |
| 0x504, 0x00000028, |
| 0x505, 0x000000A3, |
| 0x506, 0x0000005E, |
| 0x507, 0x00000000, |
| 0x508, 0x0000002B, |
| 0x509, 0x000000A4, |
| 0x50A, 0x0000005E, |
| 0x50B, 0x00000000, |
| 0x50C, 0x0000004F, |
| 0x50D, 0x000000A4, |
| 0x50E, 0x00000000, |
| 0x50F, 0x00000000, |
| 0x512, 0x0000001C, |
| 0x514, 0x0000000A, |
| 0x516, 0x0000000A, |
| 0x525, 0x0000004F, |
| 0x550, 0x00000010, |
| 0x551, 0x00000010, |
| 0x559, 0x00000002, |
| 0x55C, 0x00000050, |
| 0x55D, 0x000000FF, |
| 0x605, 0x00000030, |
| 0x607, 0x00000007, |
| 0x608, 0x0000000E, |
| 0x609, 0x0000002A, |
| 0x620, 0x000000FF, |
| 0x621, 0x000000FF, |
| 0x622, 0x000000FF, |
| 0x623, 0x000000FF, |
| 0x624, 0x000000FF, |
| 0x625, 0x000000FF, |
| 0x626, 0x000000FF, |
| 0x627, 0x000000FF, |
| 0x638, 0x00000050, |
| 0x63C, 0x0000000A, |
| 0x63D, 0x0000000A, |
| 0x63E, 0x0000000E, |
| 0x63F, 0x0000000E, |
| 0x640, 0x00000040, |
| 0x642, 0x00000040, |
| 0x643, 0x00000000, |
| 0x652, 0x000000C8, |
| 0x66E, 0x00000005, |
| 0x700, 0x00000021, |
| 0x701, 0x00000043, |
| 0x702, 0x00000065, |
| 0x703, 0x00000087, |
| 0x708, 0x00000021, |
| 0x709, 0x00000043, |
| 0x70A, 0x00000065, |
| 0x70B, 0x00000087, |
| 0x718, 0x00000040, |
| }; |
| |
| RTW_DECL_TABLE_PHY_COND(rtw8821a_mac, rtw_phy_cfg_mac); |
| |
| static const u32 rtw8821a_agc[] = { |
| 0x81C, 0xBF000001, |
| 0x81C, 0xBF020001, |
| 0x81C, 0xBF040001, |
| 0x81C, 0xBF060001, |
| 0x81C, 0xBE080001, |
| 0x81C, 0xBD0A0001, |
| 0x81C, 0xBC0C0001, |
| 0x81C, 0xBA0E0001, |
| 0x81C, 0xB9100001, |
| 0x81C, 0xB8120001, |
| 0x81C, 0xB7140001, |
| 0x81C, 0xB6160001, |
| 0x81C, 0xB5180001, |
| 0x81C, 0xB41A0001, |
| 0x81C, 0xB31C0001, |
| 0x81C, 0xB21E0001, |
| 0x81C, 0xB1200001, |
| 0x81C, 0xB0220001, |
| 0x81C, 0xAF240001, |
| 0x81C, 0xAE260001, |
| 0x81C, 0xAD280001, |
| 0x81C, 0xAC2A0001, |
| 0x81C, 0xAB2C0001, |
| 0x81C, 0xAA2E0001, |
| 0x81C, 0xA9300001, |
| 0x81C, 0xA8320001, |
| 0x81C, 0xA7340001, |
| 0x81C, 0xA6360001, |
| 0x81C, 0xA5380001, |
| 0x81C, 0xA43A0001, |
| 0x81C, 0x683C0001, |
| 0x81C, 0x673E0001, |
| 0x81C, 0x66400001, |
| 0x81C, 0x65420001, |
| 0x81C, 0x64440001, |
| 0x81C, 0x63460001, |
| 0x81C, 0x62480001, |
| 0x81C, 0x614A0001, |
| 0x81C, 0x474C0001, |
| 0x81C, 0x464E0001, |
| 0x81C, 0x45500001, |
| 0x81C, 0x44520001, |
| 0x81C, 0x43540001, |
| 0x81C, 0x42560001, |
| 0x81C, 0x41580001, |
| 0x81C, 0x285A0001, |
| 0x81C, 0x275C0001, |
| 0x81C, 0x265E0001, |
| 0x81C, 0x25600001, |
| 0x81C, 0x24620001, |
| 0x81C, 0x0A640001, |
| 0x81C, 0x09660001, |
| 0x81C, 0x08680001, |
| 0x81C, 0x076A0001, |
| 0x81C, 0x066C0001, |
| 0x81C, 0x056E0001, |
| 0x81C, 0x04700001, |
| 0x81C, 0x03720001, |
| 0x81C, 0x02740001, |
| 0x81C, 0x01760001, |
| 0x81C, 0x01780001, |
| 0x81C, 0x017A0001, |
| 0x81C, 0x017C0001, |
| 0x81C, 0x017E0001, |
| 0x8000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x81C, 0xFB000101, |
| 0x81C, 0xFA020101, |
| 0x81C, 0xF9040101, |
| 0x81C, 0xF8060101, |
| 0x81C, 0xF7080101, |
| 0x81C, 0xF60A0101, |
| 0x81C, 0xF50C0101, |
| 0x81C, 0xF40E0101, |
| 0x81C, 0xF3100101, |
| 0x81C, 0xF2120101, |
| 0x81C, 0xF1140101, |
| 0x81C, 0xF0160101, |
| 0x81C, 0xEF180101, |
| 0x81C, 0xEE1A0101, |
| 0x81C, 0xED1C0101, |
| 0x81C, 0xEC1E0101, |
| 0x81C, 0xEB200101, |
| 0x81C, 0xEA220101, |
| 0x81C, 0xE9240101, |
| 0x81C, 0xE8260101, |
| 0x81C, 0xE7280101, |
| 0x81C, 0xE62A0101, |
| 0x81C, 0xE52C0101, |
| 0x81C, 0xE42E0101, |
| 0x81C, 0xE3300101, |
| 0x81C, 0xA5320101, |
| 0x81C, 0xA4340101, |
| 0x81C, 0xA3360101, |
| 0x81C, 0x87380101, |
| 0x81C, 0x863A0101, |
| 0x81C, 0x853C0101, |
| 0x81C, 0x843E0101, |
| 0x81C, 0x69400101, |
| 0x81C, 0x68420101, |
| 0x81C, 0x67440101, |
| 0x81C, 0x66460101, |
| 0x81C, 0x49480101, |
| 0x81C, 0x484A0101, |
| 0x81C, 0x474C0101, |
| 0x81C, 0x2A4E0101, |
| 0x81C, 0x29500101, |
| 0x81C, 0x28520101, |
| 0x81C, 0x27540101, |
| 0x81C, 0x26560101, |
| 0x81C, 0x25580101, |
| 0x81C, 0x245A0101, |
| 0x81C, 0x235C0101, |
| 0x81C, 0x055E0101, |
| 0x81C, 0x04600101, |
| 0x81C, 0x03620101, |
| 0x81C, 0x02640101, |
| 0x81C, 0x01660101, |
| 0x81C, 0x01680101, |
| 0x81C, 0x016A0101, |
| 0x81C, 0x016C0101, |
| 0x81C, 0x016E0101, |
| 0x81C, 0x01700101, |
| 0x81C, 0x01720101, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x81C, 0xFB000101, |
| 0x81C, 0xFA020101, |
| 0x81C, 0xF9040101, |
| 0x81C, 0xF8060101, |
| 0x81C, 0xF7080101, |
| 0x81C, 0xF60A0101, |
| 0x81C, 0xF50C0101, |
| 0x81C, 0xF40E0101, |
| 0x81C, 0xF3100101, |
| 0x81C, 0xF2120101, |
| 0x81C, 0xF1140101, |
| 0x81C, 0xF0160101, |
| 0x81C, 0xEF180101, |
| 0x81C, 0xEE1A0101, |
| 0x81C, 0xED1C0101, |
| 0x81C, 0xEC1E0101, |
| 0x81C, 0xEB200101, |
| 0x81C, 0xEA220101, |
| 0x81C, 0xE9240101, |
| 0x81C, 0xE8260101, |
| 0x81C, 0xE7280101, |
| 0x81C, 0xE62A0101, |
| 0x81C, 0xE52C0101, |
| 0x81C, 0xE42E0101, |
| 0x81C, 0xE3300101, |
| 0x81C, 0xA5320101, |
| 0x81C, 0xA4340101, |
| 0x81C, 0xA3360101, |
| 0x81C, 0x87380101, |
| 0x81C, 0x863A0101, |
| 0x81C, 0x853C0101, |
| 0x81C, 0x843E0101, |
| 0x81C, 0x69400101, |
| 0x81C, 0x68420101, |
| 0x81C, 0x67440101, |
| 0x81C, 0x66460101, |
| 0x81C, 0x49480101, |
| 0x81C, 0x484A0101, |
| 0x81C, 0x474C0101, |
| 0x81C, 0x2A4E0101, |
| 0x81C, 0x29500101, |
| 0x81C, 0x28520101, |
| 0x81C, 0x27540101, |
| 0x81C, 0x26560101, |
| 0x81C, 0x25580101, |
| 0x81C, 0x245A0101, |
| 0x81C, 0x235C0101, |
| 0x81C, 0x055E0101, |
| 0x81C, 0x04600101, |
| 0x81C, 0x03620101, |
| 0x81C, 0x02640101, |
| 0x81C, 0x01660101, |
| 0x81C, 0x01680101, |
| 0x81C, 0x016A0101, |
| 0x81C, 0x016C0101, |
| 0x81C, 0x016E0101, |
| 0x81C, 0x01700101, |
| 0x81C, 0x01720101, |
| 0xA0000000, 0x00000000, |
| 0x81C, 0xFF000101, |
| 0x81C, 0xFF020101, |
| 0x81C, 0xFE040101, |
| 0x81C, 0xFD060101, |
| 0x81C, 0xFC080101, |
| 0x81C, 0xFD0A0101, |
| 0x81C, 0xFC0C0101, |
| 0x81C, 0xFB0E0101, |
| 0x81C, 0xFA100101, |
| 0x81C, 0xF9120101, |
| 0x81C, 0xF8140101, |
| 0x81C, 0xF7160101, |
| 0x81C, 0xF6180101, |
| 0x81C, 0xF51A0101, |
| 0x81C, 0xF41C0101, |
| 0x81C, 0xF31E0101, |
| 0x81C, 0xF2200101, |
| 0x81C, 0xF1220101, |
| 0x81C, 0xF0240101, |
| 0x81C, 0xEF260101, |
| 0x81C, 0xEE280101, |
| 0x81C, 0xED2A0101, |
| 0x81C, 0xEC2C0101, |
| 0x81C, 0xEB2E0101, |
| 0x81C, 0xEA300101, |
| 0x81C, 0xE9320101, |
| 0x81C, 0xE8340101, |
| 0x81C, 0xE7360101, |
| 0x81C, 0xE6380101, |
| 0x81C, 0xE53A0101, |
| 0x81C, 0xE43C0101, |
| 0x81C, 0xE33E0101, |
| 0x81C, 0xA5400101, |
| 0x81C, 0xA4420101, |
| 0x81C, 0xA3440101, |
| 0x81C, 0x87460101, |
| 0x81C, 0x86480101, |
| 0x81C, 0x854A0101, |
| 0x81C, 0x844C0101, |
| 0x81C, 0x694E0101, |
| 0x81C, 0x68500101, |
| 0x81C, 0x67520101, |
| 0x81C, 0x66540101, |
| 0x81C, 0x49560101, |
| 0x81C, 0x48580101, |
| 0x81C, 0x475A0101, |
| 0x81C, 0x2A5C0101, |
| 0x81C, 0x295E0101, |
| 0x81C, 0x28600101, |
| 0x81C, 0x27620101, |
| 0x81C, 0x26640101, |
| 0x81C, 0x25660101, |
| 0x81C, 0x24680101, |
| 0x81C, 0x236A0101, |
| 0x81C, 0x056C0101, |
| 0x81C, 0x046E0101, |
| 0x81C, 0x03700101, |
| 0x81C, 0x02720101, |
| 0xB0000000, 0x00000000, |
| 0x81C, 0x01740101, |
| 0x81C, 0x01760101, |
| 0x81C, 0x01780101, |
| 0x81C, 0x017A0101, |
| 0x81C, 0x017C0101, |
| 0x81C, 0x017E0101, |
| 0xC50, 0x00000022, |
| 0xC50, 0x00000020, |
| }; |
| |
| RTW_DECL_TABLE_PHY_COND(rtw8821a_agc, rtw_phy_cfg_agc); |
| |
| static const u32 rtw8821a_bb[] = { |
| 0x800, 0x0020D090, |
| 0x804, 0x080112E0, |
| 0x808, 0x0E028211, |
| 0x80C, 0x92131111, |
| 0x810, 0x20101261, |
| 0x814, 0x020C3D10, |
| 0x818, 0x03A00385, |
| 0x820, 0x00000000, |
| 0x824, 0x00030FE0, |
| 0x828, 0x00000000, |
| 0x82C, 0x002081DD, |
| 0x830, 0x2AAAEEC8, |
| 0x834, 0x0037A706, |
| 0x838, 0x06489B44, |
| 0x83C, 0x0000095B, |
| 0x840, 0xC0000001, |
| 0x844, 0x40003CDE, |
| 0x848, 0x62103F8B, |
| 0x84C, 0x6CFDFFB8, |
| 0x850, 0x28874706, |
| 0x854, 0x0001520C, |
| 0x858, 0x8060E000, |
| 0x85C, 0x74210168, |
| 0x860, 0x6929C321, |
| 0x864, 0x79727432, |
| 0x868, 0x8CA7A314, |
| 0x86C, 0x888C2878, |
| 0x870, 0x08888888, |
| 0x874, 0x31612C2E, |
| 0x878, 0x00000152, |
| 0x87C, 0x000FD000, |
| 0x8A0, 0x00000013, |
| 0x8A4, 0x7F7F7F7F, |
| 0x8A8, 0xA2000338, |
| 0x8AC, 0x0FF0FA0A, |
| 0x8B4, 0x000FC080, |
| 0x8B8, 0x6C10D7FF, |
| 0x8BC, 0x0CA52090, |
| 0x8C0, 0x1BF00020, |
| 0x8C4, 0x00000000, |
| 0x8C8, 0x00013169, |
| 0x8CC, 0x08248492, |
| 0x8D4, 0x940008A0, |
| 0x8D8, 0x290B5612, |
| 0x8F8, 0x400002C0, |
| 0x8FC, 0x00000000, |
| 0x900, 0x00000700, |
| 0x90C, 0x00000000, |
| 0x910, 0x0000FC00, |
| 0x914, 0x00000404, |
| 0x918, 0x1C1028C0, |
| 0x91C, 0x64B11A1C, |
| 0x920, 0xE0767233, |
| 0x924, 0x055AA500, |
| 0x928, 0x00000004, |
| 0x92C, 0xFFFE0000, |
| 0x930, 0xFFFFFFFE, |
| 0x934, 0x001FFFFF, |
| 0x960, 0x00000000, |
| 0x964, 0x00000000, |
| 0x968, 0x00000000, |
| 0x96C, 0x00000000, |
| 0x970, 0x801FFFFF, |
| 0x974, 0x000003FF, |
| 0x978, 0x00000000, |
| 0x97C, 0x00000000, |
| 0x980, 0x00000000, |
| 0x984, 0x00000000, |
| 0x988, 0x00000000, |
| 0x990, 0x27100000, |
| 0x994, 0xFFFF0100, |
| 0x998, 0xFFFFFF5C, |
| 0x99C, 0xFFFFFFFF, |
| 0x9A0, 0x000000FF, |
| 0x9A4, 0x00480080, |
| 0x9A8, 0x00000000, |
| 0x9AC, 0x00000000, |
| 0x9B0, 0x81081008, |
| 0x9B4, 0x01081008, |
| 0x9B8, 0x01081008, |
| 0x9BC, 0x01081008, |
| 0x9D0, 0x00000000, |
| 0x9D4, 0x00000000, |
| 0x9D8, 0x00000000, |
| 0x9DC, 0x00000000, |
| 0x9E0, 0x00005D00, |
| 0x9E4, 0x00000003, |
| 0x9E8, 0x00000001, |
| 0xA00, 0x00D047C8, |
| 0xA04, 0x01FF800C, |
| 0xA08, 0x8C8A8300, |
| 0xA0C, 0x2E68000F, |
| 0xA10, 0x9500BB78, |
| 0xA14, 0x11144028, |
| 0xA18, 0x00881117, |
| 0xA1C, 0x89140F00, |
| 0xA20, 0x1A1B0000, |
| 0xA24, 0x090E1317, |
| 0xA28, 0x00000204, |
| 0xA2C, 0x00900000, |
| 0xA70, 0x101FFF00, |
| 0xA74, 0x00000008, |
| 0xA78, 0x00000900, |
| 0xA7C, 0x225B0606, |
| 0xA80, 0x21805490, |
| 0xA84, 0x001F0000, |
| 0XB00, 0x03100040, |
| 0XB04, 0x0000B000, |
| 0XB08, 0xAE0201EB, |
| 0XB0C, 0x01003207, |
| 0XB10, 0x00009807, |
| 0XB14, 0x01000000, |
| 0XB18, 0x00000002, |
| 0XB1C, 0x00000002, |
| 0XB20, 0x0000001F, |
| 0XB24, 0x03020100, |
| 0XB28, 0x07060504, |
| 0XB2C, 0x0B0A0908, |
| 0XB30, 0x0F0E0D0C, |
| 0XB34, 0x13121110, |
| 0XB38, 0x17161514, |
| 0XB3C, 0x0000003A, |
| 0XB40, 0x00000000, |
| 0XB44, 0x00000000, |
| 0XB48, 0x13000032, |
| 0XB4C, 0x48080000, |
| 0XB50, 0x00000000, |
| 0XB54, 0x00000000, |
| 0XB58, 0x00000000, |
| 0XB5C, 0x00000000, |
| 0xC00, 0x00000007, |
| 0xC04, 0x00042020, |
| 0xC08, 0x80410231, |
| 0xC0C, 0x00000000, |
| 0xC10, 0x00000100, |
| 0xC14, 0x01000000, |
| 0xC1C, 0x40000003, |
| 0xC20, 0x2C2C2C2C, |
| 0xC24, 0x30303030, |
| 0xC28, 0x30303030, |
| 0xC2C, 0x2C2C2C2C, |
| 0xC30, 0x2C2C2C2C, |
| 0xC34, 0x2C2C2C2C, |
| 0xC38, 0x2C2C2C2C, |
| 0xC3C, 0x2A2A2A2A, |
| 0xC40, 0x2A2A2A2A, |
| 0xC44, 0x2A2A2A2A, |
| 0xC48, 0x2A2A2A2A, |
| 0xC4C, 0x2A2A2A2A, |
| 0xC50, 0x00000020, |
| 0xC54, 0x001C1208, |
| 0xC58, 0x30000C1C, |
| 0xC5C, 0x00000058, |
| 0xC60, 0x34344443, |
| 0xC64, 0x07003333, |
| 0xC68, 0x19791979, |
| 0xC6C, 0x19791979, |
| 0xC70, 0x19791979, |
| 0xC74, 0x19791979, |
| 0xC78, 0x19791979, |
| 0xC7C, 0x19791979, |
| 0xC80, 0x19791979, |
| 0xC84, 0x19791979, |
| 0xC94, 0x0100005C, |
| 0xC98, 0x00000000, |
| 0xC9C, 0x00000000, |
| 0xCA0, 0x00000029, |
| 0xCA4, 0x08040201, |
| 0xCA8, 0x80402010, |
| 0xCB0, 0x77775747, |
| 0xCB4, 0x10000077, |
| 0xCB8, 0x00508240, |
| }; |
| |
| RTW_DECL_TABLE_PHY_COND(rtw8821a_bb, rtw_phy_cfg_bb); |
| |
| static const struct rtw_phy_pg_cfg_pair rtw8821a_bb_pg[] = { |
| { 0, 0, 0, 0x00000c20, 0xffffffff, 0x32343638, }, |
| { 0, 0, 0, 0x00000c24, 0xffffffff, 0x36363838, }, |
| { 0, 0, 0, 0x00000c28, 0xffffffff, 0x28303234, }, |
| { 0, 0, 0, 0x00000c2c, 0xffffffff, 0x34363838, }, |
| { 0, 0, 0, 0x00000c30, 0xffffffff, 0x26283032, }, |
| { 0, 0, 0, 0x00000c3c, 0xffffffff, 0x32343636, }, |
| { 0, 0, 0, 0x00000c40, 0xffffffff, 0x24262830, }, |
| { 0, 0, 0, 0x00000c44, 0x0000ffff, 0x00002022, }, |
| { 1, 0, 0, 0x00000c24, 0xffffffff, 0x34343636, }, |
| { 1, 0, 0, 0x00000c28, 0xffffffff, 0x26283032, }, |
| { 1, 0, 0, 0x00000c2c, 0xffffffff, 0x32343636, }, |
| { 1, 0, 0, 0x00000c30, 0xffffffff, 0x24262830, }, |
| { 1, 0, 0, 0x00000c3c, 0xffffffff, 0x32343636, }, |
| { 1, 0, 0, 0x00000c40, 0xffffffff, 0x24262830, }, |
| { 1, 0, 0, 0x00000c44, 0x0000ffff, 0x00002022, }, |
| }; |
| |
| RTW_DECL_TABLE_BB_PG(rtw8821a_bb_pg); |
| |
| static const u32 rtw8821a_rf_a[] = { |
| 0x018, 0x0001712A, |
| 0x056, 0x00051CF2, |
| 0x066, 0x00040000, |
| 0x000, 0x00010000, |
| 0x01E, 0x00080000, |
| 0x082, 0x00000830, |
| 0x083, 0x00021800, |
| 0x084, 0x00028000, |
| 0x085, 0x00048000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x086, 0x0009483A, |
| 0xA0000000, 0x00000000, |
| 0x086, 0x00094838, |
| 0xB0000000, 0x00000000, |
| 0x087, 0x00044980, |
| 0x088, 0x00048000, |
| 0x089, 0x0000D480, |
| 0x08A, 0x00042240, |
| 0x08B, 0x000F0380, |
| 0x08C, 0x00090000, |
| 0x08D, 0x00022852, |
| 0x08E, 0x00065540, |
| 0x08F, 0x00088001, |
| 0x0EF, 0x00020000, |
| 0x03E, 0x00000380, |
| 0x03F, 0x00090018, |
| 0x03E, 0x00020380, |
| 0x03F, 0x000A0018, |
| 0x03E, 0x00040308, |
| 0x03F, 0x000A0018, |
| 0x03E, 0x00060018, |
| 0x03F, 0x000A0018, |
| 0x0EF, 0x00000000, |
| 0x018, 0x0001712A, |
| 0x089, 0x00000080, |
| 0x08B, 0x00080180, |
| 0x0EF, 0x00001000, |
| 0x03A, 0x00000244, |
| 0x03B, 0x00038027, |
| 0x03C, 0x00082000, |
| 0x03A, 0x00000244, |
| 0x03B, 0x00030113, |
| 0x03C, 0x00082000, |
| 0x03A, 0x0000014C, |
| 0x03B, 0x00028027, |
| 0x03C, 0x00082000, |
| 0x03A, 0x000000CC, |
| 0x03B, 0x00027027, |
| 0x03C, 0x00042000, |
| 0x03A, 0x0000014C, |
| 0x03B, 0x0001F913, |
| 0x03C, 0x00042000, |
| 0x03A, 0x0000010C, |
| 0x03B, 0x00017F10, |
| 0x03C, 0x00012000, |
| 0x03A, 0x000000D0, |
| 0x03B, 0x00008027, |
| 0x03C, 0x000CA000, |
| 0x03A, 0x00000244, |
| 0x03B, 0x00078027, |
| 0x03C, 0x00082000, |
| 0x03A, 0x00000244, |
| 0x03B, 0x00070113, |
| 0x03C, 0x00082000, |
| 0x03A, 0x0000014C, |
| 0x03B, 0x00068027, |
| 0x03C, 0x00082000, |
| 0x03A, 0x000000CC, |
| 0x03B, 0x00067027, |
| 0x03C, 0x00042000, |
| 0x03A, 0x0000014C, |
| 0x03B, 0x0005F913, |
| 0x03C, 0x00042000, |
| 0x03A, 0x0000010C, |
| 0x03B, 0x00057F10, |
| 0x03C, 0x00012000, |
| 0x03A, 0x000000D0, |
| 0x03B, 0x00048027, |
| 0x03C, 0x000CA000, |
| 0x03A, 0x00000244, |
| 0x03B, 0x000B8027, |
| 0x03C, 0x00082000, |
| 0x03A, 0x00000244, |
| 0x03B, 0x000B0113, |
| 0x03C, 0x00082000, |
| 0x03A, 0x0000014C, |
| 0x03B, 0x000A8027, |
| 0x03C, 0x00082000, |
| 0x03A, 0x000000CC, |
| 0x03B, 0x000A7027, |
| 0x03C, 0x00042000, |
| 0x03A, 0x0000014C, |
| 0x03B, 0x0009F913, |
| 0x03C, 0x00042000, |
| 0x03A, 0x0000010C, |
| 0x03B, 0x00097F10, |
| 0x03C, 0x00012000, |
| 0x03A, 0x000000D0, |
| 0x03B, 0x00088027, |
| 0x03C, 0x000CA000, |
| 0x0EF, 0x00000000, |
| 0x0EF, 0x00001100, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004ADF3, |
| 0x034, 0x00049DF0, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004ADF3, |
| 0x034, 0x00049DF0, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004ADF5, |
| 0x034, 0x00049DF2, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004A0F3, |
| 0x034, 0x000490B1, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004A0F3, |
| 0x034, 0x000490B1, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004ADF5, |
| 0x034, 0x00049DF2, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0004ADF3, |
| 0x034, 0x00049DF0, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x0004ADF7, |
| 0x034, 0x00049DF3, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00048DED, |
| 0x034, 0x00047DEA, |
| 0x034, 0x00046DE7, |
| 0x034, 0x00045CE9, |
| 0x034, 0x00044CE6, |
| 0x034, 0x000438C6, |
| 0x034, 0x00042886, |
| 0x034, 0x00041486, |
| 0x034, 0x00040447, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00048DED, |
| 0x034, 0x00047DEA, |
| 0x034, 0x00046DE7, |
| 0x034, 0x00045CE9, |
| 0x034, 0x00044CE6, |
| 0x034, 0x000438C6, |
| 0x034, 0x00042886, |
| 0x034, 0x00041486, |
| 0x034, 0x00040447, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x000480AE, |
| 0x034, 0x000470AB, |
| 0x034, 0x0004608B, |
| 0x034, 0x00045069, |
| 0x034, 0x00044048, |
| 0x034, 0x00043045, |
| 0x034, 0x00042026, |
| 0x034, 0x00041023, |
| 0x034, 0x00040002, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x000480AE, |
| 0x034, 0x000470AB, |
| 0x034, 0x0004608B, |
| 0x034, 0x00045069, |
| 0x034, 0x00044048, |
| 0x034, 0x00043045, |
| 0x034, 0x00042026, |
| 0x034, 0x00041023, |
| 0x034, 0x00040002, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00048DED, |
| 0x034, 0x00047DEA, |
| 0x034, 0x00046DE7, |
| 0x034, 0x00045CE9, |
| 0x034, 0x00044CE6, |
| 0x034, 0x000438C6, |
| 0x034, 0x00042886, |
| 0x034, 0x00041486, |
| 0x034, 0x00040447, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x00048DEF, |
| 0x034, 0x00047DEC, |
| 0x034, 0x00046DE9, |
| 0x034, 0x00045CCB, |
| 0x034, 0x0004488D, |
| 0x034, 0x0004348D, |
| 0x034, 0x0004248A, |
| 0x034, 0x0004108D, |
| 0x034, 0x0004008A, |
| 0xB0000000, 0x00000000, |
| 0x80000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0002ADF4, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0002A0F3, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0002A0F3, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0002ADF4, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x0002ADF7, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00029DF4, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00029DF4, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00029DF1, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x000290F0, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x000290F0, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00029DF1, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00029DF4, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x00029DF2, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00028DF1, |
| 0x034, 0x00027DEE, |
| 0x034, 0x00026DEB, |
| 0x034, 0x00025CEC, |
| 0x034, 0x00024CE9, |
| 0x034, 0x000238CA, |
| 0x034, 0x00022889, |
| 0x034, 0x00021489, |
| 0x034, 0x0002044A, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00028DF1, |
| 0x034, 0x00027DEE, |
| 0x034, 0x00026DEB, |
| 0x034, 0x00025CEC, |
| 0x034, 0x00024CE9, |
| 0x034, 0x000238CA, |
| 0x034, 0x00022889, |
| 0x034, 0x00021489, |
| 0x034, 0x0002044A, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x000280AF, |
| 0x034, 0x000270AC, |
| 0x034, 0x0002608B, |
| 0x034, 0x00025069, |
| 0x034, 0x00024048, |
| 0x034, 0x00023045, |
| 0x034, 0x00022026, |
| 0x034, 0x00021023, |
| 0x034, 0x00020002, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x000280AF, |
| 0x034, 0x000270AC, |
| 0x034, 0x0002608B, |
| 0x034, 0x00025069, |
| 0x034, 0x00024048, |
| 0x034, 0x00023045, |
| 0x034, 0x00022026, |
| 0x034, 0x00021023, |
| 0x034, 0x00020002, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00028DF1, |
| 0x034, 0x00027DEE, |
| 0x034, 0x00026DEB, |
| 0x034, 0x00025CEC, |
| 0x034, 0x00024CE9, |
| 0x034, 0x000238CA, |
| 0x034, 0x00022889, |
| 0x034, 0x00021489, |
| 0x034, 0x0002044A, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x00028DEE, |
| 0x034, 0x00027DEB, |
| 0x034, 0x00026CCD, |
| 0x034, 0x00025CCA, |
| 0x034, 0x0002488C, |
| 0x034, 0x0002384C, |
| 0x034, 0x00022849, |
| 0x034, 0x00021449, |
| 0x034, 0x0002004D, |
| 0xB0000000, 0x00000000, |
| 0x8000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0000A0D7, |
| 0x034, 0x000090D3, |
| 0x034, 0x000080B1, |
| 0x034, 0x000070AE, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0000A0D7, |
| 0x034, 0x000090D3, |
| 0x034, 0x000080B1, |
| 0x034, 0x000070AE, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x0000ADF7, |
| 0x034, 0x00009DF4, |
| 0x034, 0x00008DF1, |
| 0x034, 0x00007DEE, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00006DEB, |
| 0x034, 0x00005CEC, |
| 0x034, 0x00004CE9, |
| 0x034, 0x000038CA, |
| 0x034, 0x00002889, |
| 0x034, 0x00001489, |
| 0x034, 0x0000044A, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00006DEB, |
| 0x034, 0x00005CEC, |
| 0x034, 0x00004CE9, |
| 0x034, 0x000038CA, |
| 0x034, 0x00002889, |
| 0x034, 0x00001489, |
| 0x034, 0x0000044A, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0000608D, |
| 0x034, 0x0000506B, |
| 0x034, 0x0000404A, |
| 0x034, 0x00003047, |
| 0x034, 0x00002044, |
| 0x034, 0x00001025, |
| 0x034, 0x00000004, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x0000608D, |
| 0x034, 0x0000506B, |
| 0x034, 0x0000404A, |
| 0x034, 0x00003047, |
| 0x034, 0x00002044, |
| 0x034, 0x00001025, |
| 0x034, 0x00000004, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x034, 0x00006DEB, |
| 0x034, 0x00005CEC, |
| 0x034, 0x00004CE9, |
| 0x034, 0x000038CA, |
| 0x034, 0x00002889, |
| 0x034, 0x00001489, |
| 0x034, 0x0000044A, |
| 0xA0000000, 0x00000000, |
| 0x034, 0x00006DCD, |
| 0x034, 0x00005CCD, |
| 0x034, 0x00004CCA, |
| 0x034, 0x0000388C, |
| 0x034, 0x00002888, |
| 0x034, 0x00001488, |
| 0x034, 0x00000486, |
| 0xB0000000, 0x00000000, |
| 0x0EF, 0x00000000, |
| 0x018, 0x0001712A, |
| 0x0EF, 0x00000040, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x035, 0x00000187, |
| 0x035, 0x00008187, |
| 0x035, 0x00010187, |
| 0x035, 0x00020188, |
| 0x035, 0x00028188, |
| 0x035, 0x00030188, |
| 0x035, 0x00040188, |
| 0x035, 0x00048188, |
| 0x035, 0x00050188, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x035, 0x00000187, |
| 0x035, 0x00008187, |
| 0x035, 0x00010187, |
| 0x035, 0x00020188, |
| 0x035, 0x00028188, |
| 0x035, 0x00030188, |
| 0x035, 0x00040188, |
| 0x035, 0x00048188, |
| 0x035, 0x00050188, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x035, 0x00000128, |
| 0x035, 0x00008128, |
| 0x035, 0x00010128, |
| 0x035, 0x000201C8, |
| 0x035, 0x000281C8, |
| 0x035, 0x000301C8, |
| 0x035, 0x000401C8, |
| 0x035, 0x000481C8, |
| 0x035, 0x000501C8, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x035, 0x00000145, |
| 0x035, 0x00008145, |
| 0x035, 0x00010145, |
| 0x035, 0x00020196, |
| 0x035, 0x00028196, |
| 0x035, 0x00030196, |
| 0x035, 0x000401C7, |
| 0x035, 0x000481C7, |
| 0x035, 0x000501C7, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x035, 0x00000128, |
| 0x035, 0x00008128, |
| 0x035, 0x00010128, |
| 0x035, 0x000201C8, |
| 0x035, 0x000281C8, |
| 0x035, 0x000301C8, |
| 0x035, 0x000401C8, |
| 0x035, 0x000481C8, |
| 0x035, 0x000501C8, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x035, 0x00000187, |
| 0x035, 0x00008187, |
| 0x035, 0x00010187, |
| 0x035, 0x00020188, |
| 0x035, 0x00028188, |
| 0x035, 0x00030188, |
| 0x035, 0x00040188, |
| 0x035, 0x00048188, |
| 0x035, 0x00050188, |
| 0xA0000000, 0x00000000, |
| 0x035, 0x00000145, |
| 0x035, 0x00008145, |
| 0x035, 0x00010145, |
| 0x035, 0x00020196, |
| 0x035, 0x00028196, |
| 0x035, 0x00030196, |
| 0x035, 0x000401C7, |
| 0x035, 0x000481C7, |
| 0x035, 0x000501C7, |
| 0xB0000000, 0x00000000, |
| 0x0EF, 0x00000000, |
| 0x018, 0x0001712A, |
| 0x0EF, 0x00000010, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x036, 0x00085733, |
| 0x036, 0x0008D733, |
| 0x036, 0x00095733, |
| 0x036, 0x0009D733, |
| 0x036, 0x000A64B4, |
| 0x036, 0x000AE4B4, |
| 0x036, 0x000B64B4, |
| 0x036, 0x000BE4B4, |
| 0x036, 0x000C64B4, |
| 0x036, 0x000CE4B4, |
| 0x036, 0x000D64B4, |
| 0x036, 0x000DE4B4, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x036, 0x00085733, |
| 0x036, 0x0008D733, |
| 0x036, 0x00095733, |
| 0x036, 0x0009D733, |
| 0x036, 0x000A64B4, |
| 0x036, 0x000AE4B4, |
| 0x036, 0x000B64B4, |
| 0x036, 0x000BE4B4, |
| 0x036, 0x000C64B4, |
| 0x036, 0x000CE4B4, |
| 0x036, 0x000D64B4, |
| 0x036, 0x000DE4B4, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x036, 0x000063B5, |
| 0x036, 0x0000E3B5, |
| 0x036, 0x000163B5, |
| 0x036, 0x0001E3B5, |
| 0x036, 0x000263B5, |
| 0x036, 0x0002E3B5, |
| 0x036, 0x000363B5, |
| 0x036, 0x0003E3B5, |
| 0x036, 0x000463B5, |
| 0x036, 0x0004E3B5, |
| 0x036, 0x000563B5, |
| 0x036, 0x0005E3B5, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x036, 0x000056B3, |
| 0x036, 0x0000D6B3, |
| 0x036, 0x000156B3, |
| 0x036, 0x0001D6B3, |
| 0x036, 0x00026634, |
| 0x036, 0x0002E634, |
| 0x036, 0x00036634, |
| 0x036, 0x0003E634, |
| 0x036, 0x000467B4, |
| 0x036, 0x0004E7B4, |
| 0x036, 0x000567B4, |
| 0x036, 0x0005E7B4, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x036, 0x000063B5, |
| 0x036, 0x0000E3B5, |
| 0x036, 0x000163B5, |
| 0x036, 0x0001E3B5, |
| 0x036, 0x000263B5, |
| 0x036, 0x0002E3B5, |
| 0x036, 0x000363B5, |
| 0x036, 0x0003E3B5, |
| 0x036, 0x000463B5, |
| 0x036, 0x0004E3B5, |
| 0x036, 0x000563B5, |
| 0x036, 0x0005E3B5, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x036, 0x00085733, |
| 0x036, 0x0008D733, |
| 0x036, 0x00095733, |
| 0x036, 0x0009D733, |
| 0x036, 0x000A64B4, |
| 0x036, 0x000AE4B4, |
| 0x036, 0x000B64B4, |
| 0x036, 0x000BE4B4, |
| 0x036, 0x000C64B4, |
| 0x036, 0x000CE4B4, |
| 0x036, 0x000D64B4, |
| 0x036, 0x000DE4B4, |
| 0xA0000000, 0x00000000, |
| 0x036, 0x000056B3, |
| 0x036, 0x0000D6B3, |
| 0x036, 0x000156B3, |
| 0x036, 0x0001D6B3, |
| 0x036, 0x00026634, |
| 0x036, 0x0002E634, |
| 0x036, 0x00036634, |
| 0x036, 0x0003E634, |
| 0x036, 0x000467B4, |
| 0x036, 0x0004E7B4, |
| 0x036, 0x000567B4, |
| 0x036, 0x0005E7B4, |
| 0xB0000000, 0x00000000, |
| 0x0EF, 0x00000000, |
| 0x0EF, 0x00000008, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x000001C8, |
| 0x03C, 0x00000492, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x000001C8, |
| 0x03C, 0x00000492, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x000001B6, |
| 0x03C, 0x00000492, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x0000022A, |
| 0x03C, 0x00000594, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x000001B6, |
| 0x03C, 0x00000492, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x000001C8, |
| 0x03C, 0x00000492, |
| 0xA0000000, 0x00000000, |
| 0x03C, 0x0000022A, |
| 0x03C, 0x00000594, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000800, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000800, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000800, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000820, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000820, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000800, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x03C, 0x00000800, |
| 0xA0000000, 0x00000000, |
| 0x03C, 0x00000900, |
| 0xB0000000, 0x00000000, |
| 0x0EF, 0x00000000, |
| 0x018, 0x0001712A, |
| 0x0EF, 0x00000002, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x0004E400, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x0004E400, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x00002000, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x00002000, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x00002000, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x00002000, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x008, 0x0004E400, |
| 0xA0000000, 0x00000000, |
| 0x008, 0x00002000, |
| 0xB0000000, 0x00000000, |
| 0x0EF, 0x00000000, |
| 0x0DF, 0x000000C0, |
| 0x01F, 0x00000064, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x058, 0x000A7284, |
| 0x059, 0x000600EC, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x058, 0x000A7284, |
| 0x059, 0x000600EC, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x058, 0x00081184, |
| 0x059, 0x0006016C, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x058, 0x00081184, |
| 0x059, 0x0006016C, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x058, 0x00081184, |
| 0x059, 0x0006016C, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x058, 0x000A7284, |
| 0x059, 0x000600EC, |
| 0xA0000000, 0x00000000, |
| 0x058, 0x00081184, |
| 0x059, 0x0006016C, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x061, 0x000E8D73, |
| 0x062, 0x00093FC5, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x061, 0x000E8D73, |
| 0x062, 0x00093FC5, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x061, 0x000EFD83, |
| 0x062, 0x00093FCC, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x061, 0x000EAD53, |
| 0x062, 0x00093BC4, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x061, 0x000EFD83, |
| 0x062, 0x00093FCC, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x061, 0x000E8D73, |
| 0x062, 0x00093FC5, |
| 0xA0000000, 0x00000000, |
| 0x061, 0x000EAD53, |
| 0x062, 0x00093BC4, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110E9, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110E9, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110EB, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110E9, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110E9, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110EB, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x063, 0x000110E9, |
| 0xA0000000, 0x00000000, |
| 0x063, 0x000714E9, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x064, 0x0001C27C, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x064, 0x0001C27C, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x064, 0x0001C27C, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x064, 0x0001C67C, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x064, 0x0001C27C, |
| 0x90000410, 0x00000000, 0x40000000, 0x00000000, |
| 0x064, 0x0001C27C, |
| 0xA0000000, 0x00000000, |
| 0x064, 0x0001C67C, |
| 0xB0000000, 0x00000000, |
| 0x80000111, 0x00000000, 0x40000000, 0x00000000, |
| 0x065, 0x00091016, |
| 0x90000110, 0x00000000, 0x40000000, 0x00000000, |
| 0x065, 0x00091016, |
| 0x90000210, 0x00000000, 0x40000000, 0x00000000, |
| 0x065, 0x00093016, |
| 0x9000020c, 0x00000000, 0x40000000, 0x00000000, |
| 0x065, 0x00093015, |
| 0x9000040c, 0x00000000, 0x40000000, 0x00000000, |
| 0x065, 0x00093015, |
| 0x90000200, 0x00000000, 0x40000000, 0x00000000, |
| 0x065, 0x00093016, |
| 0xA0000000, 0x00000000, |
| 0x065, 0x00091016, |
| 0xB0000000, 0x00000000, |
| 0x018, 0x00000006, |
| 0x0EF, 0x00002000, |
| 0x03B, 0x0003824B, |
| 0x03B, 0x0003024B, |
| 0x03B, 0x0002844B, |
| 0x03B, 0x00020F4B, |
| 0x03B, 0x00018F4B, |
| 0x03B, 0x000104B2, |
| 0x03B, 0x00008049, |
| 0x03B, 0x00000148, |
| 0x03B, 0x0007824B, |
| 0x03B, 0x0007024B, |
| 0x03B, 0x0006824B, |
| 0x03B, 0x00060F4B, |
| 0x03B, 0x00058F4B, |
| 0x03B, 0x000504B2, |
| 0x03B, 0x00048049, |
| 0x03B, 0x00040148, |
| 0x0EF, 0x00000000, |
| 0x0EF, 0x00000100, |
| 0x034, 0x0000ADF3, |
| 0x034, 0x00009DF0, |
| 0x034, 0x00008D70, |
| 0x034, 0x00007D6D, |
| 0x034, 0x00006CEE, |
| 0x034, 0x00005CCC, |
| 0x034, 0x000044EC, |
| 0x034, 0x000034AC, |
| 0x034, 0x0000246D, |
| 0x034, 0x0000106F, |
| 0x034, 0x0000006C, |
| 0x0EF, 0x00000000, |
| 0x0ED, 0x00000010, |
| 0x044, 0x0000ADF2, |
| 0x044, 0x00009DEF, |
| 0x044, 0x00008DEC, |
| 0x044, 0x00007DE9, |
| 0x044, 0x00006CEC, |
| 0x044, 0x00005CE9, |
| 0x044, 0x000044EC, |
| 0x044, 0x000034E9, |
| 0x044, 0x0000246C, |
| 0x044, 0x00001469, |
| 0x044, 0x0000006C, |
| 0x0ED, 0x00000000, |
| 0x0ED, 0x00000001, |
| 0x040, 0x00038DA7, |
| 0x040, 0x000300C2, |
| 0x040, 0x000288E2, |
| 0x040, 0x000200B8, |
| 0x040, 0x000188A5, |
| 0x040, 0x00010FBC, |
| 0x040, 0x00008F71, |
| 0x040, 0x00000240, |
| 0x0ED, 0x00000000, |
| 0x0EF, 0x000020A2, |
| 0x0DF, 0x00000080, |
| 0x035, 0x00000120, |
| 0x035, 0x00008120, |
| 0x035, 0x00010120, |
| 0x036, 0x00000085, |
| 0x036, 0x00008085, |
| 0x036, 0x00010085, |
| 0x036, 0x00018085, |
| 0x0EF, 0x00000000, |
| 0x051, 0x00000C31, |
| 0x052, 0x00000622, |
| 0x053, 0x000FC70B, |
| 0x054, 0x0000017E, |
| 0x056, 0x00051DF3, |
| 0x051, 0x00000C01, |
| 0x052, 0x000006D6, |
| 0x053, 0x000FC649, |
| 0x070, 0x00049661, |
| 0x071, 0x0007843E, |
| 0x072, 0x00000382, |
| 0x074, 0x00051400, |
| 0x035, 0x00000160, |
| 0x035, 0x00008160, |
| 0x035, 0x00010160, |
| 0x036, 0x00000124, |
| 0x036, 0x00008124, |
| 0x036, 0x00010124, |
| 0x036, 0x00018124, |
| 0x0ED, 0x0000000C, |
| 0x045, 0x00000140, |
| 0x045, 0x00008140, |
| 0x045, 0x00010140, |
| 0x046, 0x00000124, |
| 0x046, 0x00008124, |
| 0x046, 0x00010124, |
| 0x046, 0x00018124, |
| 0x0DF, 0x00000088, |
| 0x0B3, 0x000F0E18, |
| 0x0B4, 0x0001214C, |
| 0x0B7, 0x0003000C, |
| 0x01C, 0x000539D2, |
| 0x0C4, 0x000AFE00, |
| 0x018, 0x0001F12A, |
| 0xFFE, 0x00000000, |
| 0xFFE, 0x00000000, |
| 0x018, 0x0001712A, |
| }; |
| |
| RTW_DECL_TABLE_RF_RADIO(rtw8821a_rf_a, A); |
| |
| static const struct rtw_txpwr_lmt_cfg_pair rtw8821a_txpwr_lmt[] = { |
| { 0, 0, 0, 0, 1, 32, }, |
| { 2, 0, 0, 0, 1, 28, }, |
| { 1, 0, 0, 0, 1, 32, }, |
| { 0, 0, 0, 0, 2, 32, }, |
| { 2, 0, 0, 0, 2, 28, }, |
| { 1, 0, 0, 0, 2, 32, }, |
| { 0, 0, 0, 0, 3, 36, }, |
| { 2, 0, 0, 0, 3, 28, }, |
| { 1, 0, 0, 0, 3, 32, }, |
| { 0, 0, 0, 0, 4, 36, }, |
| { 2, 0, 0, 0, 4, 28, }, |
| { 1, 0, 0, 0, 4, 32, }, |
| { 0, 0, 0, 0, 5, 36, }, |
| { 2, 0, 0, 0, 5, 28, }, |
| { 1, 0, 0, 0, 5, 32, }, |
| { 0, 0, 0, 0, 6, 36, }, |
| { 2, 0, 0, 0, 6, 28, }, |
| { 1, 0, 0, 0, 6, 32, }, |
| { 0, 0, 0, 0, 7, 36, }, |
| { 2, 0, 0, 0, 7, 28, }, |
| { 1, 0, 0, 0, 7, 32, }, |
| { 0, 0, 0, 0, 8, 36, }, |
| { 2, 0, 0, 0, 8, 28, }, |
| { 1, 0, 0, 0, 8, 32, }, |
| { 0, 0, 0, 0, 9, 32, }, |
| { 2, 0, 0, 0, 9, 28, }, |
| { 1, 0, 0, 0, 9, 32, }, |
| { 0, 0, 0, 0, 10, 32, }, |
| { 2, 0, 0, 0, 10, 28, }, |
| { 1, 0, 0, 0, 10, 32, }, |
| { 0, 0, 0, 0, 11, 32, }, |
| { 2, 0, 0, 0, 11, 28, }, |
| { 1, 0, 0, 0, 11, 32, }, |
| { 0, 0, 0, 0, 12, 28, }, |
| { 2, 0, 0, 0, 12, 28, }, |
| { 1, 0, 0, 0, 12, 32, }, |
| { 0, 0, 0, 0, 13, 26, }, |
| { 2, 0, 0, 0, 13, 28, }, |
| { 1, 0, 0, 0, 13, 32, }, |
| { 0, 0, 0, 0, 14, 63, }, |
| { 2, 0, 0, 0, 14, 63, }, |
| { 1, 0, 0, 0, 14, 32, }, |
| { 0, 0, 0, 1, 1, 30, }, |
| { 2, 0, 0, 1, 1, 30, }, |
| { 1, 0, 0, 1, 1, 32, }, |
| { 0, 0, 0, 1, 2, 30, }, |
| { 2, 0, 0, 1, 2, 32, }, |
| { 1, 0, 0, 1, 2, 32, }, |
| { 0, 0, 0, 1, 3, 32, }, |
| { 2, 0, 0, 1, 3, 32, }, |
| { 1, 0, 0, 1, 3, 32, }, |
| { 0, 0, 0, 1, 4, 32, }, |
| { 2, 0, 0, 1, 4, 32, }, |
| { 1, 0, 0, 1, 4, 32, }, |
| { 0, 0, 0, 1, 5, 32, }, |
| { 2, 0, 0, 1, 5, 32, }, |
| { 1, 0, 0, 1, 5, 32, }, |
| { 0, 0, 0, 1, 6, 32, }, |
| { 2, 0, 0, 1, 6, 32, }, |
| { 1, 0, 0, 1, 6, 32, }, |
| { 0, 0, 0, 1, 7, 32, }, |
| { 2, 0, 0, 1, 7, 32, }, |
| { 1, 0, 0, 1, 7, 32, }, |
| { 0, 0, 0, 1, 8, 32, }, |
| { 2, 0, 0, 1, 8, 32, }, |
| { 1, 0, 0, 1, 8, 32, }, |
| { 0, 0, 0, 1, 9, 30, }, |
| { 2, 0, 0, 1, 9, 32, }, |
| { 1, 0, 0, 1, 9, 32, }, |
| { 0, 0, 0, 1, 10, 30, }, |
| { 2, 0, 0, 1, 10, 32, }, |
| { 1, 0, 0, 1, 10, 32, }, |
| { 0, 0, 0, 1, 11, 30, }, |
| { 2, 0, 0, 1, 11, 32, }, |
| { 1, 0, 0, 1, 11, 32, }, |
| { 0, 0, 0, 1, 12, 26, }, |
| { 2, 0, 0, 1, 12, 32, }, |
| { 1, 0, 0, 1, 12, 32, }, |
| { 0, 0, 0, 1, 13, 24, }, |
| { 2, 0, 0, 1, 13, 30, }, |
| { 1, 0, 0, 1, 13, 32, }, |
| { 0, 0, 0, 1, 14, 63, }, |
| { 2, 0, 0, 1, 14, 63, }, |
| { 1, 0, 0, 1, 14, 63, }, |
| { 0, 0, 0, 2, 1, 26, }, |
| { 2, 0, 0, 2, 1, 26, }, |
| { 1, 0, 0, 2, 1, 32, }, |
| { 0, 0, 0, 2, 2, 26, }, |
| { 2, 0, 0, 2, 2, 32, }, |
| { 1, 0, 0, 2, 2, 32, }, |
| { 0, 0, 0, 2, 3, 32, }, |
| { 2, 0, 0, 2, 3, 32, }, |
| { 1, 0, 0, 2, 3, 32, }, |
| { 0, 0, 0, 2, 4, 32, }, |
| { 2, 0, 0, 2, 4, 32, }, |
| { 1, 0, 0, 2, 4, 32, }, |
| { 0, 0, 0, 2, 5, 32, }, |
| { 2, 0, 0, 2, 5, 32, }, |
| { 1, 0, 0, 2, 5, 32, }, |
| { 0, 0, 0, 2, 6, 32, }, |
| { 2, 0, 0, 2, 6, 32, }, |
| { 1, 0, 0, 2, 6, 32, }, |
| { 0, 0, 0, 2, 7, 32, }, |
| { 2, 0, 0, 2, 7, 32, }, |
| { 1, 0, 0, 2, 7, 32, }, |
| { 0, 0, 0, 2, 8, 32, }, |
| { 2, 0, 0, 2, 8, 32, }, |
| { 1, 0, 0, 2, 8, 32, }, |
| { 0, 0, 0, 2, 9, 26, }, |
| { 2, 0, 0, 2, 9, 32, }, |
| { 1, 0, 0, 2, 9, 32, }, |
| { 0, 0, 0, 2, 10, 26, }, |
| { 2, 0, 0, 2, 10, 32, }, |
| { 1, 0, 0, 2, 10, 32, }, |
| { 0, 0, 0, 2, 11, 26, }, |
| { 2, 0, 0, 2, 11, 32, }, |
| { 1, 0, 0, 2, 11, 32, }, |
| { 0, 0, 0, 2, 12, 26, }, |
| { 2, 0, 0, 2, 12, 32, }, |
| { 1, 0, 0, 2, 12, 32, }, |
| { 0, 0, 0, 2, 13, 24, }, |
| { 2, 0, 0, 2, 13, 26, }, |
| { 1, 0, 0, 2, 13, 32, }, |
| { 0, 0, 0, 2, 14, 63, }, |
| { 2, 0, 0, 2, 14, 63, }, |
| { 1, 0, 0, 2, 14, 63, }, |
| { 0, 0, 0, 3, 1, 30, }, |
| { 2, 0, 0, 3, 1, 32, }, |
| { 1, 0, 0, 3, 1, 32, }, |
| { 0, 0, 0, 3, 2, 32, }, |
| { 2, 0, 0, 3, 2, 32, }, |
| { 1, 0, 0, 3, 2, 32, }, |
| { 0, 0, 0, 3, 3, 32, }, |
| { 2, 0, 0, 3, 3, 32, }, |
| { 1, 0, 0, 3, 3, 32, }, |
| { 0, 0, 0, 3, 4, 32, }, |
| { 2, 0, 0, 3, 4, 32, }, |
| { 1, 0, 0, 3, 4, 32, }, |
| { 0, 0, 0, 3, 5, 32, }, |
| { 2, 0, 0, 3, 5, 32, }, |
| { 1, 0, 0, 3, 5, 32, }, |
| { 0, 0, 0, 3, 6, 32, }, |
| { 2, 0, 0, 3, 6, 32, }, |
| { 1, 0, 0, 3, 6, 32, }, |
| { 0, 0, 0, 3, 7, 32, }, |
| { 2, 0, 0, 3, 7, 32, }, |
| { 1, 0, 0, 3, 7, 32, }, |
| { 0, 0, 0, 3, 8, 32, }, |
| { 2, 0, 0, 3, 8, 32, }, |
| { 1, 0, 0, 3, 8, 32, }, |
| { 0, 0, 0, 3, 9, 32, }, |
| { 2, 0, 0, 3, 9, 32, }, |
| { 1, 0, 0, 3, 9, 32, }, |
| { 0, 0, 0, 3, 10, 32, }, |
| { 2, 0, 0, 3, 10, 32, }, |
| { 1, 0, 0, 3, 10, 32, }, |
| { 0, 0, 0, 3, 11, 30, }, |
| { 2, 0, 0, 3, 11, 32, }, |
| { 1, 0, 0, 3, 11, 32, }, |
| { 0, 0, 0, 3, 12, 63, }, |
| { 2, 0, 0, 3, 12, 32, }, |
| { 1, 0, 0, 3, 12, 32, }, |
| { 0, 0, 0, 3, 13, 63, }, |
| { 2, 0, 0, 3, 13, 32, }, |
| { 1, 0, 0, 3, 13, 32, }, |
| { 0, 0, 0, 3, 14, 63, }, |
| { 2, 0, 0, 3, 14, 63, }, |
| { 1, 0, 0, 3, 14, 63, }, |
| { 0, 0, 1, 2, 1, 63, }, |
| { 2, 0, 1, 2, 1, 63, }, |
| { 1, 0, 1, 2, 1, 63, }, |
| { 0, 0, 1, 2, 2, 63, }, |
| { 2, 0, 1, 2, 2, 63, }, |
| { 1, 0, 1, 2, 2, 63, }, |
| { 0, 0, 1, 2, 3, 26, }, |
| { 2, 0, 1, 2, 3, 26, }, |
| { 1, 0, 1, 2, 3, 32, }, |
| { 0, 0, 1, 2, 4, 26, }, |
| { 2, 0, 1, 2, 4, 32, }, |
| { 1, 0, 1, 2, 4, 32, }, |
| { 0, 0, 1, 2, 5, 26, }, |
| { 2, 0, 1, 2, 5, 32, }, |
| { 1, 0, 1, 2, 5, 32, }, |
| { 0, 0, 1, 2, 6, 32, }, |
| { 2, 0, 1, 2, 6, 32, }, |
| { 1, 0, 1, 2, 6, 32, }, |
| { 0, 0, 1, 2, 7, 32, }, |
| { 2, 0, 1, 2, 7, 32, }, |
| { 1, 0, 1, 2, 7, 32, }, |
| { 0, 0, 1, 2, 8, 32, }, |
| { 2, 0, 1, 2, 8, 32, }, |
| { 1, 0, 1, 2, 8, 32, }, |
| { 0, 0, 1, 2, 9, 26, }, |
| { 2, 0, 1, 2, 9, 32, }, |
| { 1, 0, 1, 2, 9, 32, }, |
| { 0, 0, 1, 2, 10, 24, }, |
| { 2, 0, 1, 2, 10, 32, }, |
| { 1, 0, 1, 2, 10, 32, }, |
| { 0, 0, 1, 2, 11, 22, }, |
| { 2, 0, 1, 2, 11, 26, }, |
| { 1, 0, 1, 2, 11, 32, }, |
| { 0, 0, 1, 2, 12, 63, }, |
| { 2, 0, 1, 2, 12, 63, }, |
| { 1, 0, 1, 2, 12, 63, }, |
| { 0, 0, 1, 2, 13, 63, }, |
| { 2, 0, 1, 2, 13, 63, }, |
| { 1, 0, 1, 2, 13, 63, }, |
| { 0, 0, 1, 2, 14, 63, }, |
| { 2, 0, 1, 2, 14, 63, }, |
| { 1, 0, 1, 2, 14, 63, }, |
| { 0, 0, 1, 3, 1, 63, }, |
| { 2, 0, 1, 3, 1, 63, }, |
| { 1, 0, 1, 3, 1, 63, }, |
| { 0, 0, 1, 3, 2, 63, }, |
| { 2, 0, 1, 3, 2, 63, }, |
| { 1, 0, 1, 3, 2, 63, }, |
| { 0, 0, 1, 3, 3, 30, }, |
| { 2, 0, 1, 3, 3, 30, }, |
| { 1, 0, 1, 3, 3, 30, }, |
| { 0, 0, 1, 3, 4, 32, }, |
| { 2, 0, 1, 3, 4, 30, }, |
| { 1, 0, 1, 3, 4, 30, }, |
| { 0, 0, 1, 3, 5, 32, }, |
| { 2, 0, 1, 3, 5, 30, }, |
| { 1, 0, 1, 3, 5, 30, }, |
| { 0, 0, 1, 3, 6, 32, }, |
| { 2, 0, 1, 3, 6, 30, }, |
| { 1, 0, 1, 3, 6, 30, }, |
| { 0, 0, 1, 3, 7, 32, }, |
| { 2, 0, 1, 3, 7, 30, }, |
| { 1, 0, 1, 3, 7, 30, }, |
| { 0, 0, 1, 3, 8, 32, }, |
| { 2, 0, 1, 3, 8, 30, }, |
| { 1, 0, 1, 3, 8, 30, }, |
| { 0, 0, 1, 3, 9, 32, }, |
| { 2, 0, 1, 3, 9, 30, }, |
| { 1, 0, 1, 3, 9, 30, }, |
| { 0, 0, 1, 3, 10, 32, }, |
| { 2, 0, 1, 3, 10, 30, }, |
| { 1, 0, 1, 3, 10, 30, }, |
| { 0, 0, 1, 3, 11, 30, }, |
| { 2, 0, 1, 3, 11, 30, }, |
| { 1, 0, 1, 3, 11, 30, }, |
| { 0, 0, 1, 3, 12, 63, }, |
| { 2, 0, 1, 3, 12, 32, }, |
| { 1, 0, 1, 3, 12, 32, }, |
| { 0, 0, 1, 3, 13, 63, }, |
| { 2, 0, 1, 3, 13, 32, }, |
| { 1, 0, 1, 3, 13, 32, }, |
| { 0, 0, 1, 3, 14, 63, }, |
| { 2, 0, 1, 3, 14, 63, }, |
| { 1, 0, 1, 3, 14, 63, }, |
| { 0, 1, 0, 1, 36, 32, }, |
| { 2, 1, 0, 1, 36, 30, }, |
| { 1, 1, 0, 1, 36, 30, }, |
| { 0, 1, 0, 1, 40, 32, }, |
| { 2, 1, 0, 1, 40, 30, }, |
| { 1, 1, 0, 1, 40, 30, }, |
| { 0, 1, 0, 1, 44, 32, }, |
| { 2, 1, 0, 1, 44, 30, }, |
| { 1, 1, 0, 1, 44, 30, }, |
| { 0, 1, 0, 1, 48, 32, }, |
| { 2, 1, 0, 1, 48, 30, }, |
| { 1, 1, 0, 1, 48, 30, }, |
| { 0, 1, 0, 1, 52, 32, }, |
| { 2, 1, 0, 1, 52, 30, }, |
| { 1, 1, 0, 1, 52, 30, }, |
| { 0, 1, 0, 1, 56, 32, }, |
| { 2, 1, 0, 1, 56, 30, }, |
| { 1, 1, 0, 1, 56, 30, }, |
| { 0, 1, 0, 1, 60, 32, }, |
| { 2, 1, 0, 1, 60, 30, }, |
| { 1, 1, 0, 1, 60, 30, }, |
| { 0, 1, 0, 1, 64, 32, }, |
| { 2, 1, 0, 1, 64, 30, }, |
| { 1, 1, 0, 1, 64, 30, }, |
| { 0, 1, 0, 1, 100, 32, }, |
| { 2, 1, 0, 1, 100, 30, }, |
| { 1, 1, 0, 1, 100, 30, }, |
| { 0, 1, 0, 1, 104, 32, }, |
| { 2, 1, 0, 1, 104, 30, }, |
| { 1, 1, 0, 1, 104, 30, }, |
| { 0, 1, 0, 1, 108, 32, }, |
| { 2, 1, 0, 1, 108, 30, }, |
| { 1, 1, 0, 1, 108, 30, }, |
| { 0, 1, 0, 1, 112, 32, }, |
| { 2, 1, 0, 1, 112, 30, }, |
| { 1, 1, 0, 1, 112, 30, }, |
| { 0, 1, 0, 1, 116, 32, }, |
| { 2, 1, 0, 1, 116, 30, }, |
| { 1, 1, 0, 1, 116, 30, }, |
| { 0, 1, 0, 1, 120, 32, }, |
| { 2, 1, 0, 1, 120, 30, }, |
| { 1, 1, 0, 1, 120, 30, }, |
| { 0, 1, 0, 1, 124, 32, }, |
| { 2, 1, 0, 1, 124, 30, }, |
| { 1, 1, 0, 1, 124, 30, }, |
| { 0, 1, 0, 1, 128, 32, }, |
| { 2, 1, 0, 1, 128, 30, }, |
| { 1, 1, 0, 1, 128, 30, }, |
| { 0, 1, 0, 1, 132, 32, }, |
| { 2, 1, 0, 1, 132, 30, }, |
| { 1, 1, 0, 1, 132, 30, }, |
| { 0, 1, 0, 1, 136, 32, }, |
| { 2, 1, 0, 1, 136, 30, }, |
| { 1, 1, 0, 1, 136, 30, }, |
| { 0, 1, 0, 1, 140, 32, }, |
| { 2, 1, 0, 1, 140, 30, }, |
| { 1, 1, 0, 1, 140, 30, }, |
| { 0, 1, 0, 1, 149, 32, }, |
| { 2, 1, 0, 1, 149, 30, }, |
| { 1, 1, 0, 1, 149, 63, }, |
| { 0, 1, 0, 1, 153, 32, }, |
| { 2, 1, 0, 1, 153, 30, }, |
| { 1, 1, 0, 1, 153, 63, }, |
| { 0, 1, 0, 1, 157, 32, }, |
| { 2, 1, 0, 1, 157, 30, }, |
| { 1, 1, 0, 1, 157, 63, }, |
| { 0, 1, 0, 1, 161, 32, }, |
| { 2, 1, 0, 1, 161, 30, }, |
| { 1, 1, 0, 1, 161, 63, }, |
| { 0, 1, 0, 1, 165, 32, }, |
| { 2, 1, 0, 1, 165, 30, }, |
| { 1, 1, 0, 1, 165, 63, }, |
| { 0, 1, 0, 2, 36, 32, }, |
| { 2, 1, 0, 2, 36, 30, }, |
| { 1, 1, 0, 2, 36, 30, }, |
| { 0, 1, 0, 2, 40, 32, }, |
| { 2, 1, 0, 2, 40, 30, }, |
| { 1, 1, 0, 2, 40, 30, }, |
| { 0, 1, 0, 2, 44, 32, }, |
| { 2, 1, 0, 2, 44, 30, }, |
| { 1, 1, 0, 2, 44, 30, }, |
| { 0, 1, 0, 2, 48, 32, }, |
| { 2, 1, 0, 2, 48, 30, }, |
| { 1, 1, 0, 2, 48, 30, }, |
| { 0, 1, 0, 2, 52, 32, }, |
| { 2, 1, 0, 2, 52, 30, }, |
| { 1, 1, 0, 2, 52, 30, }, |
| { 0, 1, 0, 2, 56, 32, }, |
| { 2, 1, 0, 2, 56, 30, }, |
| { 1, 1, 0, 2, 56, 30, }, |
| { 0, 1, 0, 2, 60, 32, }, |
| { 2, 1, 0, 2, 60, 30, }, |
| { 1, 1, 0, 2, 60, 30, }, |
| { 0, 1, 0, 2, 64, 32, }, |
| { 2, 1, 0, 2, 64, 30, }, |
| { 1, 1, 0, 2, 64, 30, }, |
| { 0, 1, 0, 2, 100, 32, }, |
| { 2, 1, 0, 2, 100, 30, }, |
| { 1, 1, 0, 2, 100, 30, }, |
| { 0, 1, 0, 2, 104, 32, }, |
| { 2, 1, 0, 2, 104, 30, }, |
| { 1, 1, 0, 2, 104, 30, }, |
| { 0, 1, 0, 2, 108, 32, }, |
| { 2, 1, 0, 2, 108, 30, }, |
| { 1, 1, 0, 2, 108, 30, }, |
| { 0, 1, 0, 2, 112, 32, }, |
| { 2, 1, 0, 2, 112, 30, }, |
| { 1, 1, 0, 2, 112, 30, }, |
| { 0, 1, 0, 2, 116, 32, }, |
| { 2, 1, 0, 2, 116, 30, }, |
| { 1, 1, 0, 2, 116, 30, }, |
| { 0, 1, 0, 2, 120, 32, }, |
| { 2, 1, 0, 2, 120, 30, }, |
| { 1, 1, 0, 2, 120, 30, }, |
| { 0, 1, 0, 2, 124, 32, }, |
| { 2, 1, 0, 2, 124, 30, }, |
| { 1, 1, 0, 2, 124, 30, }, |
| { 0, 1, 0, 2, 128, 32, }, |
| { 2, 1, 0, 2, 128, 30, }, |
| { 1, 1, 0, 2, 128, 30, }, |
| { 0, 1, 0, 2, 132, 32, }, |
| { 2, 1, 0, 2, 132, 30, }, |
| { 1, 1, 0, 2, 132, 30, }, |
| { 0, 1, 0, 2, 136, 32, }, |
| { 2, 1, 0, 2, 136, 30, }, |
| { 1, 1, 0, 2, 136, 30, }, |
| { 0, 1, 0, 2, 140, 32, }, |
| { 2, 1, 0, 2, 140, 30, }, |
| { 1, 1, 0, 2, 140, 30, }, |
| { 0, 1, 0, 2, 149, 32, }, |
| { 2, 1, 0, 2, 149, 30, }, |
| { 1, 1, 0, 2, 149, 63, }, |
| { 0, 1, 0, 2, 153, 32, }, |
| { 2, 1, 0, 2, 153, 30, }, |
| { 1, 1, 0, 2, 153, 63, }, |
| { 0, 1, 0, 2, 157, 32, }, |
| { 2, 1, 0, 2, 157, 30, }, |
| { 1, 1, 0, 2, 157, 63, }, |
| { 0, 1, 0, 2, 161, 32, }, |
| { 2, 1, 0, 2, 161, 30, }, |
| { 1, 1, 0, 2, 161, 63, }, |
| { 0, 1, 0, 2, 165, 32, }, |
| { 2, 1, 0, 2, 165, 30, }, |
| { 1, 1, 0, 2, 165, 63, }, |
| { 0, 1, 0, 3, 36, 28, }, |
| { 2, 1, 0, 3, 36, 30, }, |
| { 1, 1, 0, 3, 36, 30, }, |
| { 0, 1, 0, 3, 40, 28, }, |
| { 2, 1, 0, 3, 40, 30, }, |
| { 1, 1, 0, 3, 40, 30, }, |
| { 0, 1, 0, 3, 44, 28, }, |
| { 2, 1, 0, 3, 44, 30, }, |
| { 1, 1, 0, 3, 44, 30, }, |
| { 0, 1, 0, 3, 48, 28, }, |
| { 2, 1, 0, 3, 48, 30, }, |
| { 1, 1, 0, 3, 48, 30, }, |
| { 0, 1, 0, 3, 52, 34, }, |
| { 2, 1, 0, 3, 52, 30, }, |
| { 1, 1, 0, 3, 52, 30, }, |
| { 0, 1, 0, 3, 56, 32, }, |
| { 2, 1, 0, 3, 56, 30, }, |
| { 1, 1, 0, 3, 56, 30, }, |
| { 0, 1, 0, 3, 60, 30, }, |
| { 2, 1, 0, 3, 60, 30, }, |
| { 1, 1, 0, 3, 60, 30, }, |
| { 0, 1, 0, 3, 64, 26, }, |
| { 2, 1, 0, 3, 64, 30, }, |
| { 1, 1, 0, 3, 64, 30, }, |
| { 0, 1, 0, 3, 100, 28, }, |
| { 2, 1, 0, 3, 100, 30, }, |
| { 1, 1, 0, 3, 100, 30, }, |
| { 0, 1, 0, 3, 104, 28, }, |
| { 2, 1, 0, 3, 104, 30, }, |
| { 1, 1, 0, 3, 104, 30, }, |
| { 0, 1, 0, 3, 108, 30, }, |
| { 2, 1, 0, 3, 108, 30, }, |
| { 1, 1, 0, 3, 108, 30, }, |
| { 0, 1, 0, 3, 112, 32, }, |
| { 2, 1, 0, 3, 112, 30, }, |
| { 1, 1, 0, 3, 112, 30, }, |
| { 0, 1, 0, 3, 116, 32, }, |
| { 2, 1, 0, 3, 116, 30, }, |
| { 1, 1, 0, 3, 116, 30, }, |
| { 0, 1, 0, 3, 120, 34, }, |
| { 2, 1, 0, 3, 120, 30, }, |
| { 1, 1, 0, 3, 120, 30, }, |
| { 0, 1, 0, 3, 124, 32, }, |
| { 2, 1, 0, 3, 124, 30, }, |
| { 1, 1, 0, 3, 124, 30, }, |
| { 0, 1, 0, 3, 128, 30, }, |
| { 2, 1, 0, 3, 128, 30, }, |
| { 1, 1, 0, 3, 128, 30, }, |
| { 0, 1, 0, 3, 132, 28, }, |
| { 2, 1, 0, 3, 132, 30, }, |
| { 1, 1, 0, 3, 132, 30, }, |
| { 0, 1, 0, 3, 136, 28, }, |
| { 2, 1, 0, 3, 136, 30, }, |
| { 1, 1, 0, 3, 136, 30, }, |
| { 0, 1, 0, 3, 140, 26, }, |
| { 2, 1, 0, 3, 140, 30, }, |
| { 1, 1, 0, 3, 140, 30, }, |
| { 0, 1, 0, 3, 149, 34, }, |
| { 2, 1, 0, 3, 149, 30, }, |
| { 1, 1, 0, 3, 149, 63, }, |
| { 0, 1, 0, 3, 153, 34, }, |
| { 2, 1, 0, 3, 153, 30, }, |
| { 1, 1, 0, 3, 153, 63, }, |
| { 0, 1, 0, 3, 157, 34, }, |
| { 2, 1, 0, 3, 157, 30, }, |
| { 1, 1, 0, 3, 157, 63, }, |
| { 0, 1, 0, 3, 161, 34, }, |
| { 2, 1, 0, 3, 161, 30, }, |
| { 1, 1, 0, 3, 161, 63, }, |
| { 0, 1, 0, 3, 165, 34, }, |
| { 2, 1, 0, 3, 165, 30, }, |
| { 1, 1, 0, 3, 165, 63, }, |
| { 0, 1, 1, 2, 38, 26, }, |
| { 2, 1, 1, 2, 38, 30, }, |
| { 1, 1, 1, 2, 38, 30, }, |
| { 0, 1, 1, 2, 46, 32, }, |
| { 2, 1, 1, 2, 46, 30, }, |
| { 1, 1, 1, 2, 46, 30, }, |
| { 0, 1, 1, 2, 54, 32, }, |
| { 2, 1, 1, 2, 54, 30, }, |
| { 1, 1, 1, 2, 54, 30, }, |
| { 0, 1, 1, 2, 62, 24, }, |
| { 2, 1, 1, 2, 62, 30, }, |
| { 1, 1, 1, 2, 62, 30, }, |
| { 0, 1, 1, 2, 102, 24, }, |
| { 2, 1, 1, 2, 102, 30, }, |
| { 1, 1, 1, 2, 102, 30, }, |
| { 0, 1, 1, 2, 110, 32, }, |
| { 2, 1, 1, 2, 110, 30, }, |
| { 1, 1, 1, 2, 110, 30, }, |
| { 0, 1, 1, 2, 118, 32, }, |
| { 2, 1, 1, 2, 118, 30, }, |
| { 1, 1, 1, 2, 118, 30, }, |
| { 0, 1, 1, 2, 126, 32, }, |
| { 2, 1, 1, 2, 126, 30, }, |
| { 1, 1, 1, 2, 126, 30, }, |
| { 0, 1, 1, 2, 134, 32, }, |
| { 2, 1, 1, 2, 134, 30, }, |
| { 1, 1, 1, 2, 134, 30, }, |
| { 0, 1, 1, 2, 151, 30, }, |
| { 2, 1, 1, 2, 151, 30, }, |
| { 1, 1, 1, 2, 151, 63, }, |
| { 0, 1, 1, 2, 159, 32, }, |
| { 2, 1, 1, 2, 159, 30, }, |
| { 1, 1, 1, 2, 159, 63, }, |
| { 0, 1, 1, 3, 38, 28, }, |
| { 2, 1, 1, 3, 38, 30, }, |
| { 1, 1, 1, 3, 38, 30, }, |
| { 0, 1, 1, 3, 46, 28, }, |
| { 2, 1, 1, 3, 46, 30, }, |
| { 1, 1, 1, 3, 46, 30, }, |
| { 0, 1, 1, 3, 54, 30, }, |
| { 2, 1, 1, 3, 54, 30, }, |
| { 1, 1, 1, 3, 54, 30, }, |
| { 0, 1, 1, 3, 62, 30, }, |
| { 2, 1, 1, 3, 62, 30, }, |
| { 1, 1, 1, 3, 62, 30, }, |
| { 0, 1, 1, 3, 102, 26, }, |
| { 2, 1, 1, 3, 102, 30, }, |
| { 1, 1, 1, 3, 102, 30, }, |
| { 0, 1, 1, 3, 110, 30, }, |
| { 2, 1, 1, 3, 110, 30, }, |
| { 1, 1, 1, 3, 110, 30, }, |
| { 0, 1, 1, 3, 118, 34, }, |
| { 2, 1, 1, 3, 118, 30, }, |
| { 1, 1, 1, 3, 118, 30, }, |
| { 0, 1, 1, 3, 126, 32, }, |
| { 2, 1, 1, 3, 126, 30, }, |
| { 1, 1, 1, 3, 126, 30, }, |
| { 0, 1, 1, 3, 134, 30, }, |
| { 2, 1, 1, 3, 134, 30, }, |
| { 1, 1, 1, 3, 134, 30, }, |
| { 0, 1, 1, 3, 151, 34, }, |
| { 2, 1, 1, 3, 151, 30, }, |
| { 1, 1, 1, 3, 151, 63, }, |
| { 0, 1, 1, 3, 159, 34, }, |
| { 2, 1, 1, 3, 159, 30, }, |
| { 1, 1, 1, 3, 159, 63, }, |
| { 0, 1, 2, 4, 42, 22, }, |
| { 2, 1, 2, 4, 42, 30, }, |
| { 1, 1, 2, 4, 42, 30, }, |
| { 0, 1, 2, 4, 58, 20, }, |
| { 2, 1, 2, 4, 58, 30, }, |
| { 1, 1, 2, 4, 58, 30, }, |
| { 0, 1, 2, 4, 106, 20, }, |
| { 2, 1, 2, 4, 106, 30, }, |
| { 1, 1, 2, 4, 106, 30, }, |
| { 0, 1, 2, 4, 122, 20, }, |
| { 2, 1, 2, 4, 122, 30, }, |
| { 1, 1, 2, 4, 122, 30, }, |
| { 0, 1, 2, 4, 155, 28, }, |
| { 2, 1, 2, 4, 155, 30, }, |
| { 1, 1, 2, 4, 155, 63, }, |
| { 0, 1, 2, 5, 42, 28, }, |
| { 2, 1, 2, 5, 42, 30, }, |
| { 1, 1, 2, 5, 42, 30, }, |
| { 0, 1, 2, 5, 58, 26, }, |
| { 2, 1, 2, 5, 58, 30, }, |
| { 1, 1, 2, 5, 58, 30, }, |
| { 0, 1, 2, 5, 106, 28, }, |
| { 2, 1, 2, 5, 106, 30, }, |
| { 1, 1, 2, 5, 106, 30, }, |
| { 0, 1, 2, 5, 122, 32, }, |
| { 2, 1, 2, 5, 122, 30, }, |
| { 1, 1, 2, 5, 122, 30, }, |
| { 0, 1, 2, 5, 155, 34, }, |
| { 2, 1, 2, 5, 155, 30, }, |
| { 1, 1, 2, 5, 155, 63, }, |
| }; |
| |
| RTW_DECL_TABLE_TXPWR_LMT(rtw8821a_txpwr_lmt); |
| |
| static const struct rtw_pwr_seq_cmd trans_carddis_to_cardemu_8821a[] = { |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(3) | BIT(7), 0}, |
| {0x0086, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_SDIO, |
| RTW_PWR_CMD_WRITE, BIT(0), 0}, |
| {0x0086, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_SDIO, |
| RTW_PWR_CMD_POLLING, BIT(1), BIT(1)}, |
| {0x004A, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), 0}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(3) | BIT(4), 0}, |
| {0x0023, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(4), 0}, |
| {0x0301, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_PCI_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0}, |
| {0xFFFF, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| 0, |
| RTW_PWR_CMD_END, 0, 0}, |
| }; |
| |
| static const struct rtw_pwr_seq_cmd trans_cardemu_to_act_8821a[] = { |
| {0x0020, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0067, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(4), 0}, |
| {0x0001, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_DELAY, 1, RTW_PWR_DELAY_MS}, |
| {0x0000, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(5), 0}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(4) | BIT(3) | BIT(2), 0}, |
| {0x0075, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_PCI_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0006, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, BIT(1), BIT(1)}, |
| {0x0075, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_PCI_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), 0}, |
| {0x0006, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(7), 0}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(4) | BIT(3), 0}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, BIT(0), 0}, |
| {0x004F, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0067, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(5) | BIT(4), BIT(5) | BIT(4)}, |
| {0x0025, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(6), 0}, |
| {0x0049, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), BIT(1)}, |
| {0x0063, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), BIT(1)}, |
| {0x0062, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), 0}, |
| {0x0058, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x005A, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), BIT(1)}, |
| {0x002E, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0x82}, |
| {0x0010, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(6), BIT(6)}, |
| {0xFFFF, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| 0, |
| RTW_PWR_CMD_END, 0, 0}, |
| }; |
| |
| static const struct rtw_pwr_seq_cmd trans_act_to_lps_8821a[] = { |
| {0x0301, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_PCI_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0xFF}, |
| {0x0522, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0xFF}, |
| {0x05F8, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, 0xFF, 0}, |
| {0x05F9, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, 0xFF, 0}, |
| {0x05FA, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, 0xFF, 0}, |
| {0x05FB, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, 0xFF, 0}, |
| {0x0002, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), 0}, |
| {0x0002, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_DELAY, 0, RTW_PWR_DELAY_US}, |
| {0x0002, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), 0}, |
| {0x0100, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0x03}, |
| {0x0101, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), 0}, |
| {0x0093, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0x00}, |
| {0x0553, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(5), BIT(5)}, |
| {0xFFFF, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| 0, |
| RTW_PWR_CMD_END, 0, 0}, |
| }; |
| |
| static const struct rtw_pwr_seq_cmd trans_act_to_cardemu_8821a[] = { |
| {0x001F, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0}, |
| {0x004F, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), 0}, |
| {0x0049, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), 0}, |
| {0x0006, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(1), BIT(1)}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_POLLING, BIT(1), 0}, |
| {0x0000, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(5), BIT(5)}, |
| {0x0020, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), 0}, |
| {0xFFFF, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| 0, |
| RTW_PWR_CMD_END, 0, 0}, |
| }; |
| |
| static const struct rtw_pwr_seq_cmd trans_cardemu_to_carddis_8821a[] = { |
| {0x0007, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, 0xFF, 0x20}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK | RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(3) | BIT(4), BIT(3)}, |
| {0x0005, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_PCI_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(2), BIT(2)}, |
| {0x004A, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_USB_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(0), 1}, |
| {0x0023, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_MAC, |
| RTW_PWR_CMD_WRITE, BIT(4), BIT(4)}, |
| {0x0086, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_SDIO, |
| RTW_PWR_CMD_WRITE, BIT(0), BIT(0)}, |
| {0x0086, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_SDIO_MSK, |
| RTW_PWR_ADDR_SDIO, |
| RTW_PWR_CMD_POLLING, BIT(1), 0}, |
| {0xFFFF, |
| RTW_PWR_CUT_ALL_MSK, |
| RTW_PWR_INTF_ALL_MSK, |
| 0, |
| RTW_PWR_CMD_END, 0, 0}, |
| }; |
| |
| const struct rtw_pwr_seq_cmd * const card_enable_flow_8821a[] = { |
| trans_carddis_to_cardemu_8821a, |
| trans_cardemu_to_act_8821a, |
| NULL |
| }; |
| |
| const struct rtw_pwr_seq_cmd * const enter_lps_flow_8821a[] = { |
| trans_act_to_lps_8821a, |
| NULL |
| }; |
| |
| const struct rtw_pwr_seq_cmd * const card_disable_flow_8821a[] = { |
| trans_act_to_cardemu_8821a, |
| trans_cardemu_to_carddis_8821a, |
| NULL |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_5gb_n[][RTW_PWR_TRK_TBL_SZ] = { |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_5gb_p[][RTW_PWR_TRK_TBL_SZ] = { |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_5ga_n[][RTW_PWR_TRK_TBL_SZ] = { |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_5ga_p[][RTW_PWR_TRK_TBL_SZ] = { |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| {0, 0, 1, 2, 3, 3, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 14, 15, |
| 15, 16, 16, 16, 16, 16, 16, 16, 16}, |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2gb_n[] = { |
| 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, |
| 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2gb_p[] = { |
| 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, |
| 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2ga_n[] = { |
| 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, |
| 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2ga_p[] = { |
| 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, |
| 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2g_cck_b_n[] = { |
| 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, |
| 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2g_cck_b_p[] = { |
| 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, |
| 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2g_cck_a_n[] = { |
| 0, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, |
| 6, 6, 7, 7, 7, 8, 8, 8, 9, 9, 9, 10, 10, 10 |
| }; |
| |
| static const u8 rtw8821a_pwrtrk_2g_cck_a_p[] = { |
| 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, |
| 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 12, 12, 12, 12 |
| }; |
| |
| const struct rtw_pwr_track_tbl rtw8821a_rtw_pwr_track_tbl = { |
| .pwrtrk_5gb_n[0] = rtw8821a_pwrtrk_5gb_n[0], |
| .pwrtrk_5gb_n[1] = rtw8821a_pwrtrk_5gb_n[1], |
| .pwrtrk_5gb_n[2] = rtw8821a_pwrtrk_5gb_n[2], |
| .pwrtrk_5gb_p[0] = rtw8821a_pwrtrk_5gb_p[0], |
| .pwrtrk_5gb_p[1] = rtw8821a_pwrtrk_5gb_p[1], |
| .pwrtrk_5gb_p[2] = rtw8821a_pwrtrk_5gb_p[2], |
| .pwrtrk_5ga_n[0] = rtw8821a_pwrtrk_5ga_n[0], |
| .pwrtrk_5ga_n[1] = rtw8821a_pwrtrk_5ga_n[1], |
| .pwrtrk_5ga_n[2] = rtw8821a_pwrtrk_5ga_n[2], |
| .pwrtrk_5ga_p[0] = rtw8821a_pwrtrk_5ga_p[0], |
| .pwrtrk_5ga_p[1] = rtw8821a_pwrtrk_5ga_p[1], |
| .pwrtrk_5ga_p[2] = rtw8821a_pwrtrk_5ga_p[2], |
| .pwrtrk_2gb_n = rtw8821a_pwrtrk_2gb_n, |
| .pwrtrk_2gb_p = rtw8821a_pwrtrk_2gb_p, |
| .pwrtrk_2ga_n = rtw8821a_pwrtrk_2ga_n, |
| .pwrtrk_2ga_p = rtw8821a_pwrtrk_2ga_p, |
| .pwrtrk_2g_cckb_n = rtw8821a_pwrtrk_2g_cck_b_n, |
| .pwrtrk_2g_cckb_p = rtw8821a_pwrtrk_2g_cck_b_p, |
| .pwrtrk_2g_ccka_n = rtw8821a_pwrtrk_2g_cck_a_n, |
| .pwrtrk_2g_ccka_p = rtw8821a_pwrtrk_2g_cck_a_p, |
| }; |