1*6d67aabdSBjoern A. Zeeb // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause 2*6d67aabdSBjoern A. Zeeb /* Copyright(c) 2024 Realtek Corporation 3*6d67aabdSBjoern A. Zeeb */ 4*6d67aabdSBjoern A. Zeeb 5*6d67aabdSBjoern A. Zeeb #include "rtw8852bt_rfk_table.h" 6*6d67aabdSBjoern A. Zeeb 7*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_defs[] = { 8*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x12a8, 0x0000000f, 0x4), 9*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x32a8, 0x0000000f, 0x4), 10*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x12bc, 0x000ffff0, 0x5555), 11*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x32bc, 0x000ffff0, 0x5555), 12*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0300, 0xff000000, 0x16), 13*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0304, 0x000000ff, 0x19), 14*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0314, 0xffff0000, 0x2041), 15*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0318, 0xffffffff, 0x2041), 16*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0318, 0xffffffff, 0x20012041), 17*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0020, 0x00006000, 0x3), 18*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0024, 0x00006000, 0x3), 19*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0704, 0xffff0000, 0x601e), 20*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x2704, 0xffff0000, 0x601e), 21*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0700, 0xf0000000, 0x4), 22*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x2700, 0xf0000000, 0x4), 23*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0650, 0x3c000000, 0x0), 24*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x2650, 0x3c000000, 0x0), 25*6d67aabdSBjoern A. Zeeb }; 26*6d67aabdSBjoern A. Zeeb 27*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_defs); 28*6d67aabdSBjoern A. Zeeb 29*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_a_defs_2g[] = { 30*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x33), 31*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x33), 32*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58f8, 0x40000000, 0x1), 33*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1e), 34*6d67aabdSBjoern A. Zeeb }; 35*6d67aabdSBjoern A. Zeeb 36*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_a_defs_2g); 37*6d67aabdSBjoern A. Zeeb 38*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_a_defs_5g[] = { 39*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x120c, 0x000000ff, 0x44), 40*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x12c0, 0x0ff00000, 0x44), 41*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58f8, 0x40000000, 0x0), 42*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1d), 43*6d67aabdSBjoern A. Zeeb }; 44*6d67aabdSBjoern A. Zeeb 45*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_a_defs_5g); 46*6d67aabdSBjoern A. Zeeb 47*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_b_defs_2g[] = { 48*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x33), 49*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x33), 50*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78f8, 0x40000000, 0x1), 51*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1e), 52*6d67aabdSBjoern A. Zeeb }; 53*6d67aabdSBjoern A. Zeeb 54*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_b_defs_2g); 55*6d67aabdSBjoern A. Zeeb 56*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_sys_b_defs_5g[] = { 57*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x32c0, 0x0ff00000, 0x44), 58*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x320c, 0x000000ff, 0x44), 59*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78f8, 0x40000000, 0x0), 60*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x0304, 0x0000ff00, 0x1d), 61*6d67aabdSBjoern A. Zeeb }; 62*6d67aabdSBjoern A. Zeeb 63*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_sys_b_defs_5g); 64*6d67aabdSBjoern A. Zeeb 65*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_defs_a[] = { 66*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x566c, 0x00001000, 0x0), 67*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5800, 0xffffffff, 0x003f807f), 68*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x580c, 0x0000007f, 0x40), 69*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x580c, 0x0fffff00, 0x00040), 70*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5810, 0xffffffff, 0x59010000), 71*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5814, 0x01ffffff, 0x002d000), 72*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5814, 0xf8000000, 0x00), 73*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5818, 0xffffffff, 0x002c1800), 74*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x581c, 0x3fffffff, 0x1dc80280), 75*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5820, 0xffffffff, 0x00002080), 76*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x580c, 0x10000000, 0x1), 77*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x580c, 0x40000000, 0x1), 78*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5834, 0x3fffffff, 0x000115f2), 79*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5838, 0x7fffffff, 0x0000121), 80*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5854, 0x3fffffff, 0x000115f2), 81*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5858, 0x7fffffff, 0x0000121), 82*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5860, 0x80000000, 0x0), 83*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5864, 0x07ffffff, 0x00801ff), 84*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5898, 0xffffffff, 0x00000000), 85*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x589c, 0xffffffff, 0x00000000), 86*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58a4, 0x000000ff, 0x16), 87*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58b0, 0xffffffff, 0x00000000), 88*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58b4, 0x7fffffff, 0x0a002000), 89*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58b8, 0x7fffffff, 0x00007628), 90*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58bc, 0x07ffffff, 0x7a7807f), 91*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58c0, 0xfffe0000, 0x003f), 92*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58c4, 0xffffffff, 0x0003ffff), 93*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58c8, 0x00ffffff, 0x000000), 94*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58c8, 0xf0000000, 0x0), 95*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58cc, 0xffffffff, 0x00000000), 96*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58d0, 0x07ffffff, 0x2008101), 97*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58d4, 0x000000ff, 0x00), 98*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58d4, 0x0003fe00, 0x0ff), 99*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58d4, 0x07fc0000, 0x100), 100*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58d8, 0xffffffff, 0x8008016c), 101*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58dc, 0x0001ffff, 0x0807f), 102*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58dc, 0xfff00000, 0xc00), 103*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58f0, 0x0003ffff, 0x001ff), 104*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58f4, 0x000fffff, 0x000), 105*6d67aabdSBjoern A. Zeeb }; 106*6d67aabdSBjoern A. Zeeb 107*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_defs_a); 108*6d67aabdSBjoern A. Zeeb 109*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_defs_b[] = { 110*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x566c, 0x00001000, 0x0), 111*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7800, 0xffffffff, 0x003f807f), 112*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x780c, 0x0000007f, 0x40), 113*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x780c, 0x0fffff00, 0x00040), 114*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7810, 0xffffffff, 0x59010000), 115*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7814, 0x01ffffff, 0x002d000), 116*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7814, 0xf8000000, 0x00), 117*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7818, 0xffffffff, 0x002c1800), 118*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x781c, 0x3fffffff, 0x1dc80280), 119*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7820, 0xffffffff, 0x00002080), 120*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x780c, 0x10000000, 0x1), 121*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x780c, 0x40000000, 0x1), 122*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7834, 0x3fffffff, 0x000115f2), 123*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7838, 0x7fffffff, 0x0000121), 124*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7854, 0x3fffffff, 0x000115f2), 125*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7858, 0x7fffffff, 0x0000121), 126*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7860, 0x80000000, 0x0), 127*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7864, 0x07ffffff, 0x00801ff), 128*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7898, 0xffffffff, 0x00000000), 129*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x789c, 0xffffffff, 0x00000000), 130*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78a4, 0x000000ff, 0x16), 131*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78b0, 0xffffffff, 0x00000000), 132*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78b4, 0x7fffffff, 0x0a002000), 133*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78b8, 0x7fffffff, 0x00007628), 134*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78bc, 0x07ffffff, 0x7a7807f), 135*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78c0, 0xfffe0000, 0x003f), 136*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78c4, 0xffffffff, 0x0003ffff), 137*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78c8, 0x00ffffff, 0x000000), 138*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78c8, 0xf0000000, 0x0), 139*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78cc, 0xffffffff, 0x00000000), 140*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78d0, 0x07ffffff, 0x2008101), 141*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78d4, 0x000000ff, 0x00), 142*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78d4, 0x0003fe00, 0x0ff), 143*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78d4, 0x07fc0000, 0x100), 144*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78d8, 0xffffffff, 0x8008016c), 145*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78dc, 0x0001ffff, 0x0807f), 146*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78dc, 0xfff00000, 0xc00), 147*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78f0, 0x0003ffff, 0x001ff), 148*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78f4, 0x000fffff, 0x000), 149*6d67aabdSBjoern A. Zeeb }; 150*6d67aabdSBjoern A. Zeeb 151*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_defs_b); 152*6d67aabdSBjoern A. Zeeb 153*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_he_tb_defs_a[] = { 154*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58a0, 0xffffffff, 0x000000fe), 155*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58e4, 0x0000007f, 0x1f), 156*6d67aabdSBjoern A. Zeeb }; 157*6d67aabdSBjoern A. Zeeb 158*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_he_tb_defs_a); 159*6d67aabdSBjoern A. Zeeb 160*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_init_txpwr_he_tb_defs_b[] = { 161*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78a0, 0xffffffff, 0x000000fe), 162*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78e4, 0x0000007f, 0x1f), 163*6d67aabdSBjoern A. Zeeb }; 164*6d67aabdSBjoern A. Zeeb 165*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_init_txpwr_he_tb_defs_b); 166*6d67aabdSBjoern A. Zeeb 167*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dck_defs_a[] = { 168*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x580c, 0x0fff0000, 0x000), 169*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5814, 0x003ff000, 0x0ef), 170*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5814, 0x18000000, 0x0), 171*6d67aabdSBjoern A. Zeeb }; 172*6d67aabdSBjoern A. Zeeb 173*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dck_defs_a); 174*6d67aabdSBjoern A. Zeeb 175*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dck_defs_b[] = { 176*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x780c, 0x0fff0000, 0x000), 177*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7814, 0x003ff000, 0x0ef), 178*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7814, 0x18000000, 0x0), 179*6d67aabdSBjoern A. Zeeb }; 180*6d67aabdSBjoern A. Zeeb 181*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dck_defs_b); 182*6d67aabdSBjoern A. Zeeb 183*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dac_gain_defs_a[] = { 184*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58b0, 0x00000400, 0x1), 185*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58b0, 0x00000fff, 0x000), 186*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x58b0, 0x00000800, 0x1), 187*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a00, 0xffffffff, 0x00000000), 188*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a04, 0xffffffff, 0x00000000), 189*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a08, 0xffffffff, 0x00000000), 190*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a0c, 0xffffffff, 0x00000000), 191*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a10, 0xffffffff, 0x00000000), 192*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a14, 0xffffffff, 0x00000000), 193*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a18, 0xffffffff, 0x00000000), 194*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a1c, 0xffffffff, 0x00000000), 195*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a20, 0xffffffff, 0x00000000), 196*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a24, 0xffffffff, 0x00000000), 197*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a28, 0xffffffff, 0x00000000), 198*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a2c, 0xffffffff, 0x00000000), 199*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a30, 0xffffffff, 0x00000000), 200*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a34, 0xffffffff, 0x00000000), 201*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a38, 0xffffffff, 0x00000000), 202*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a3c, 0xffffffff, 0x00000000), 203*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a40, 0xffffffff, 0x00000000), 204*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a44, 0xffffffff, 0x00000000), 205*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a48, 0xffffffff, 0x00000000), 206*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a4c, 0xffffffff, 0x00000000), 207*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a50, 0xffffffff, 0x00000000), 208*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a54, 0xffffffff, 0x00000000), 209*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a58, 0xffffffff, 0x00000000), 210*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a5c, 0xffffffff, 0x00000000), 211*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a60, 0xffffffff, 0x00000000), 212*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a64, 0xffffffff, 0x00000000), 213*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a68, 0xffffffff, 0x00000000), 214*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a6c, 0xffffffff, 0x00000000), 215*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a70, 0xffffffff, 0x00000000), 216*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a74, 0xffffffff, 0x00000000), 217*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a78, 0xffffffff, 0x00000000), 218*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a7c, 0xffffffff, 0x00000000), 219*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a80, 0xffffffff, 0x00000000), 220*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a84, 0xffffffff, 0x00000000), 221*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a88, 0xffffffff, 0x00000000), 222*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a8c, 0xffffffff, 0x00000000), 223*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a90, 0xffffffff, 0x00000000), 224*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a94, 0xffffffff, 0x00000000), 225*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a98, 0xffffffff, 0x00000000), 226*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5a9c, 0xffffffff, 0x00000000), 227*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5aa0, 0xffffffff, 0x00000000), 228*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5aa4, 0xffffffff, 0x00000000), 229*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5aa8, 0xffffffff, 0x00000000), 230*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5aac, 0xffffffff, 0x00000000), 231*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5ab0, 0xffffffff, 0x00000000), 232*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5ab4, 0xffffffff, 0x00000000), 233*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5ab8, 0xffffffff, 0x00000000), 234*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5abc, 0xffffffff, 0x00000000), 235*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5ac0, 0xffffffff, 0x00000000), 236*6d67aabdSBjoern A. Zeeb }; 237*6d67aabdSBjoern A. Zeeb 238*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dac_gain_defs_a); 239*6d67aabdSBjoern A. Zeeb 240*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_dac_gain_defs_b[] = { 241*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78b0, 0x00000fff, 0x000), 242*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x78b0, 0x00000800, 0x1), 243*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a00, 0xffffffff, 0x00000000), 244*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a04, 0xffffffff, 0x00000000), 245*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a08, 0xffffffff, 0x00000000), 246*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a0c, 0xffffffff, 0x00000000), 247*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a10, 0xffffffff, 0x00000000), 248*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a14, 0xffffffff, 0x00000000), 249*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a18, 0xffffffff, 0x00000000), 250*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a1c, 0xffffffff, 0x00000000), 251*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a20, 0xffffffff, 0x00000000), 252*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a24, 0xffffffff, 0x00000000), 253*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a28, 0xffffffff, 0x00000000), 254*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a2c, 0xffffffff, 0x00000000), 255*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a30, 0xffffffff, 0x00000000), 256*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a34, 0xffffffff, 0x00000000), 257*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a38, 0xffffffff, 0x00000000), 258*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a3c, 0xffffffff, 0x00000000), 259*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a40, 0xffffffff, 0x00000000), 260*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a44, 0xffffffff, 0x00000000), 261*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a48, 0xffffffff, 0x00000000), 262*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a4c, 0xffffffff, 0x00000000), 263*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a50, 0xffffffff, 0x00000000), 264*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a54, 0xffffffff, 0x00000000), 265*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a58, 0xffffffff, 0x00000000), 266*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a5c, 0xffffffff, 0x00000000), 267*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a60, 0xffffffff, 0x00000000), 268*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a64, 0xffffffff, 0x00000000), 269*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a68, 0xffffffff, 0x00000000), 270*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a6c, 0xffffffff, 0x00000000), 271*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a70, 0xffffffff, 0x00000000), 272*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a74, 0xffffffff, 0x00000000), 273*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a78, 0xffffffff, 0x00000000), 274*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a7c, 0xffffffff, 0x00000000), 275*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a80, 0xffffffff, 0x00000000), 276*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a84, 0xffffffff, 0x00000000), 277*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a88, 0xffffffff, 0x00000000), 278*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a8c, 0xffffffff, 0x00000000), 279*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a90, 0xffffffff, 0x00000000), 280*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a94, 0xffffffff, 0x00000000), 281*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a98, 0xffffffff, 0x00000000), 282*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7a9c, 0xffffffff, 0x00000000), 283*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7aa0, 0xffffffff, 0x00000000), 284*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7aa4, 0xffffffff, 0x00000000), 285*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7aa8, 0xffffffff, 0x00000000), 286*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7aac, 0xffffffff, 0x00000000), 287*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7ab0, 0xffffffff, 0x00000000), 288*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7ab4, 0xffffffff, 0x00000000), 289*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7ab8, 0xffffffff, 0x00000000), 290*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7abc, 0xffffffff, 0x00000000), 291*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7ac0, 0xffffffff, 0x00000000), 292*6d67aabdSBjoern A. Zeeb }; 293*6d67aabdSBjoern A. Zeeb 294*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_dac_gain_defs_b); 295*6d67aabdSBjoern A. Zeeb 296*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_a_defs_2g[] = { 297*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5608, 0x07ffffff, 0x0801008), 298*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x560c, 0x07ffffff, 0x0201020), 299*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5610, 0x07ffffff, 0x0201008), 300*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5614, 0x07ffffff, 0x0804008), 301*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5618, 0x07ffffff, 0x0201008), 302*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x561c, 0x000001ff, 0x008), 303*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x561c, 0xffff0000, 0x0808), 304*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5620, 0xffffffff, 0x08081e28), 305*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5624, 0xffffffff, 0x08080808), 306*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5628, 0xffffffff, 0x08081e28), 307*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x562c, 0x0000ffff, 0x0808), 308*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x581c, 0x00100000, 0x1), 309*6d67aabdSBjoern A. Zeeb }; 310*6d67aabdSBjoern A. Zeeb 311*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_a_defs_2g); 312*6d67aabdSBjoern A. Zeeb 313*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_a_defs_5g[] = { 314*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5608, 0x07ffffff, 0x0201008), 315*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x560c, 0x07ffffff, 0x0201019), 316*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5610, 0x07ffffff, 0x0201008), 317*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5614, 0x07ffffff, 0x0201008), 318*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5618, 0x07ffffff, 0x0201008), 319*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x561c, 0x000001ff, 0x008), 320*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x561c, 0xffff0000, 0x0808), 321*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5620, 0xffffffff, 0x08081808), 322*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5624, 0xffffffff, 0x08080808), 323*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5628, 0xffffffff, 0x08080808), 324*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x562c, 0x0000ffff, 0x0808), 325*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x581c, 0x00100000, 0x1), 326*6d67aabdSBjoern A. Zeeb }; 327*6d67aabdSBjoern A. Zeeb 328*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_a_defs_5g); 329*6d67aabdSBjoern A. Zeeb 330*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_b_defs_2g[] = { 331*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7608, 0x07ffffff, 0x0801008), 332*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x760c, 0x07ffffff, 0x0201020), 333*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7610, 0x07ffffff, 0x0201008), 334*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7614, 0x07ffffff, 0x0804008), 335*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7618, 0x07ffffff, 0x0201008), 336*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x761c, 0x000001ff, 0x008), 337*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x761c, 0xffff0000, 0x0808), 338*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7620, 0xffffffff, 0x08081e28), 339*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7624, 0xffffffff, 0x08080808), 340*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7628, 0xffffffff, 0x08081e28), 341*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x762c, 0x0000ffff, 0x0808), 342*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x781c, 0x00100000, 0x1), 343*6d67aabdSBjoern A. Zeeb }; 344*6d67aabdSBjoern A. Zeeb 345*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_b_defs_2g); 346*6d67aabdSBjoern A. Zeeb 347*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_b_defs_5g[] = { 348*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7608, 0x07ffffff, 0x0201008), 349*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x760c, 0x07ffffff, 0x0201019), 350*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7610, 0x07ffffff, 0x0201008), 351*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7614, 0x07ffffff, 0x0201008), 352*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7618, 0x07ffffff, 0x0201008), 353*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x761c, 0x000001ff, 0x008), 354*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x761c, 0xffff0000, 0x0808), 355*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7620, 0xffffffff, 0x08081808), 356*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7624, 0xffffffff, 0x08080808), 357*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7628, 0xffffffff, 0x08080808), 358*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x762c, 0x0000ffff, 0x0808), 359*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x781c, 0x00100000, 0x1), 360*6d67aabdSBjoern A. Zeeb }; 361*6d67aabdSBjoern A. Zeeb 362*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_b_defs_5g); 363*6d67aabdSBjoern A. Zeeb 364*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_2g_all_defs[] = { 365*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1), 366*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721), 367*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101), 368*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x029f57c0), 369*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000077), 370*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000), 371*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x029f5bc0), 372*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000076), 373*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000), 374*6d67aabdSBjoern A. Zeeb }; 375*6d67aabdSBjoern A. Zeeb 376*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_2g_all_defs); 377*6d67aabdSBjoern A. Zeeb 378*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_5g1_all_defs[] = { 379*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1), 380*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721), 381*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101), 382*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x007ff3d7), 383*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000068), 384*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000), 385*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000), 386*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000), 387*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000), 388*6d67aabdSBjoern A. Zeeb }; 389*6d67aabdSBjoern A. Zeeb 390*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_5g1_all_defs); 391*6d67aabdSBjoern A. Zeeb 392*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_5g2_all_defs[] = { 393*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1), 394*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721), 395*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101), 396*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x00a003db), 397*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000065), 398*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000), 399*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000), 400*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000), 401*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000), 402*6d67aabdSBjoern A. Zeeb }; 403*6d67aabdSBjoern A. Zeeb 404*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_5g2_all_defs); 405*6d67aabdSBjoern A. Zeeb 406*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_a_5g3_all_defs[] = { 407*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x80000000, 0x1), 408*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5600, 0x3fffffff, 0x3f2d2721), 409*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5604, 0x003fffff, 0x010101), 410*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5630, 0x3fffffff, 0x01101be2), 411*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5634, 0x3fffffff, 0x00000065), 412*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5638, 0x000fffff, 0x00000), 413*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x563c, 0x3fffffff, 0x00000000), 414*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5640, 0x3fffffff, 0x00000000), 415*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5644, 0x000fffff, 0x00000), 416*6d67aabdSBjoern A. Zeeb }; 417*6d67aabdSBjoern A. Zeeb 418*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_a_5g3_all_defs); 419*6d67aabdSBjoern A. Zeeb 420*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_2g_all_defs[] = { 421*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1), 422*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721), 423*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101), 424*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x023f3fb9), 425*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000075), 426*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000), 427*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x01df3fb8), 428*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000074), 429*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000), 430*6d67aabdSBjoern A. Zeeb }; 431*6d67aabdSBjoern A. Zeeb 432*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_2g_all_defs); 433*6d67aabdSBjoern A. Zeeb 434*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_5g1_all_defs[] = { 435*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1), 436*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721), 437*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101), 438*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x010017e0), 439*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000069), 440*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000), 441*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000), 442*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000), 443*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000), 444*6d67aabdSBjoern A. Zeeb }; 445*6d67aabdSBjoern A. Zeeb 446*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_5g1_all_defs); 447*6d67aabdSBjoern A. Zeeb 448*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_5g2_all_defs[] = { 449*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1), 450*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721), 451*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101), 452*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x01201fe2), 453*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000066), 454*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000), 455*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000), 456*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000), 457*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000), 458*6d67aabdSBjoern A. Zeeb }; 459*6d67aabdSBjoern A. Zeeb 460*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_5g2_all_defs); 461*6d67aabdSBjoern A. Zeeb 462*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_align_b_5g3_all_defs[] = { 463*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x80000000, 0x1), 464*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7600, 0x3fffffff, 0x3f2d2721), 465*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7604, 0x003fffff, 0x010101), 466*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7630, 0x3fffffff, 0x01602fe5), 467*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7634, 0x3fffffff, 0x00000068), 468*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7638, 0x000fffff, 0x00000), 469*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x763c, 0x3fffffff, 0x00000000), 470*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7640, 0x3fffffff, 0x00000000), 471*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7644, 0x000fffff, 0x00000), 472*6d67aabdSBjoern A. Zeeb }; 473*6d67aabdSBjoern A. Zeeb 474*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_align_b_5g3_all_defs); 475*6d67aabdSBjoern A. Zeeb 476*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_defs_a[] = { 477*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5814, 0x00000800, 0x1), 478*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x581c, 0x20000000, 0x1), 479*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x5814, 0x20000000, 0x1), 480*6d67aabdSBjoern A. Zeeb }; 481*6d67aabdSBjoern A. Zeeb 482*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_defs_a); 483*6d67aabdSBjoern A. Zeeb 484*6d67aabdSBjoern A. Zeeb static const struct rtw89_reg5_def rtw8852bt_tssi_slope_defs_b[] = { 485*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7814, 0x00000800, 0x1), 486*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x781c, 0x20000000, 0x1), 487*6d67aabdSBjoern A. Zeeb RTW89_DECL_RFK_WM(0x7814, 0x20000000, 0x1), 488*6d67aabdSBjoern A. Zeeb }; 489*6d67aabdSBjoern A. Zeeb 490*6d67aabdSBjoern A. Zeeb RTW89_DECLARE_RFK_TBL(rtw8852bt_tssi_slope_defs_b); 491