Lines Matching +full:test +full:- +full:part1

1 // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause
2 /* Copyright(c) 2019-2022 Realtek Corporation
282 rtwdev->dbcc_en, phy_idx); in _kpath()
284 if (!rtwdev->dbcc_en) { in _kpath()
311 RTW8852B_RXDCK_VER, rtwdev->hal.cv); in _rx_dck()
317 if (rtwdev->is_tssi_mode[path]) in _rx_dck()
329 if (rtwdev->is_tssi_mode[path]) in _rx_dck()
406 struct rtw89_dack_info *dack = &rtwdev->dack; in _addck_backup()
409 dack->addck_d[0][0] = rtw89_phy_read32_mask(rtwdev, R_ADDCKR0, B_ADDCKR0_A0); in _addck_backup()
410 dack->addck_d[0][1] = rtw89_phy_read32_mask(rtwdev, R_ADDCKR0, B_ADDCKR0_A1); in _addck_backup()
413 dack->addck_d[1][0] = rtw89_phy_read32_mask(rtwdev, R_ADDCKR1, B_ADDCKR1_A0); in _addck_backup()
414 dack->addck_d[1][1] = rtw89_phy_read32_mask(rtwdev, R_ADDCKR1, B_ADDCKR1_A1); in _addck_backup()
419 struct rtw89_dack_info *dack = &rtwdev->dack; in _addck_reload()
422 rtw89_phy_write32_mask(rtwdev, R_ADDCK0D, B_ADDCK0D_VAL, dack->addck_d[0][0]); in _addck_reload()
423 rtw89_phy_write32_mask(rtwdev, R_ADDCK0, B_ADDCK0_VAL, dack->addck_d[0][1] >> 6); in _addck_reload()
424 rtw89_phy_write32_mask(rtwdev, R_ADDCK0D, B_ADDCK0D_VAL2, dack->addck_d[0][1] & 0x3f); in _addck_reload()
428 rtw89_phy_write32_mask(rtwdev, R_ADDCK1D, B_ADDCK1D_VAL, dack->addck_d[1][0]); in _addck_reload()
429 rtw89_phy_write32_mask(rtwdev, R_ADDCK1, B_ADDCK0_VAL, dack->addck_d[1][1] >> 6); in _addck_reload()
430 rtw89_phy_write32_mask(rtwdev, R_ADDCK1D, B_ADDCK1D_VAL2, dack->addck_d[1][1] & 0x3f); in _addck_reload()
436 struct rtw89_dack_info *dack = &rtwdev->dack; in _dack_backup_s0()
443 dack->msbk_d[0][0][i] = in _dack_backup_s0()
446 dack->msbk_d[0][1][i] = in _dack_backup_s0()
450 dack->biask_d[0][0] = in _dack_backup_s0()
452 dack->biask_d[0][1] = in _dack_backup_s0()
455 dack->dadck_d[0][0] = in _dack_backup_s0()
457 dack->dadck_d[0][1] = in _dack_backup_s0()
463 struct rtw89_dack_info *dack = &rtwdev->dack; in _dack_backup_s1()
470 dack->msbk_d[1][0][i] = in _dack_backup_s1()
473 dack->msbk_d[1][1][i] = in _dack_backup_s1()
477 dack->biask_d[1][0] = in _dack_backup_s1()
479 dack->biask_d[1][1] = in _dack_backup_s1()
482 dack->dadck_d[1][0] = in _dack_backup_s1()
484 dack->dadck_d[1][1] = in _dack_backup_s1()
513 struct rtw89_dack_info *dack = &rtwdev->dack; in _addck()
541 dack->addck_timeout[0] = true; in _addck()
575 dack->addck_timeout[1] = true; in _addck()
601 static bool _dack_s0_check_done(struct rtw89_dev *rtwdev, bool part1) in _dack_s0_check_done() argument
603 if (part1) { in _dack_s0_check_done()
618 struct rtw89_dack_info *dack = &rtwdev->dack; in _dack_s0()
628 dack->msbk_timeout[0] = true; in _dack_s0()
638 dack->dadck_timeout[0] = true; in _dack_s0()
650 static bool _dack_s1_check_done(struct rtw89_dev *rtwdev, bool part1) in _dack_s1_check_done() argument
652 if (part1) { in _dack_s1_check_done()
667 struct rtw89_dack_info *dack = &rtwdev->dack; in _dack_s1()
677 dack->msbk_timeout[1] = true; in _dack_s1()
687 dack->dadck_timeout[1] = true; in _dack_s1()
708 struct rtw89_dack_info *dack = &rtwdev->dack; in _dack_dump()
714 dack->addck_d[0][0], dack->addck_d[0][1]); in _dack_dump()
717 dack->addck_d[1][0], dack->addck_d[1][1]); in _dack_dump()
720 dack->dadck_d[0][0], dack->dadck_d[0][1]); in _dack_dump()
723 dack->dadck_d[1][0], dack->dadck_d[1][1]); in _dack_dump()
726 dack->biask_d[0][0], dack->biask_d[0][1]); in _dack_dump()
729 dack->biask_d[1][0], dack->biask_d[1][1]); in _dack_dump()
733 t = dack->msbk_d[0][0][i]; in _dack_dump()
739 t = dack->msbk_d[0][1][i]; in _dack_dump()
745 t = dack->msbk_d[1][0][i]; in _dack_dump()
751 t = dack->msbk_d[1][1][i]; in _dack_dump()
758 struct rtw89_dack_info *dack = &rtwdev->dack; in _dac_cal()
761 dack->dack_done = false; in _dac_cal()
782 dack->dack_done = true; in _dac_cal()
788 dack->dack_cnt++; in _dac_cal()
794 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_rxk_setting()
797 switch (iqk_info->iqk_band[path]) { in _iqk_rxk_setting()
818 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_one_shot()
838 (((0x8 + iqk_info->iqk_bw[path]) & 0xf) << 8); in _iqk_one_shot()
846 (((0xb + iqk_info->iqk_bw[path]) & 0xf) << 8); in _iqk_one_shot()
873 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _rxk_group_sel()
879 switch (iqk_info->iqk_band[path]) { in _rxk_group_sel()
914 iqk_info->nb_rxcfir[path] = 0x40000002; in _rxk_group_sel()
917 iqk_info->is_wb_rxiqk[path] = false; in _rxk_group_sel()
919 iqk_info->nb_rxcfir[path] = 0x40000000; in _rxk_group_sel()
922 iqk_info->is_wb_rxiqk[path] = true; in _rxk_group_sel()
931 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_nbrxk()
936 switch (iqk_info->iqk_band[path]) { in _iqk_nbrxk()
969 iqk_info->nb_rxcfir[path] = in _iqk_nbrxk()
972 iqk_info->nb_rxcfir[path] = 0x40000002; in _iqk_nbrxk()
979 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_rxclk_setting()
981 if (iqk_info->iqk_bw[path] == RTW89_CHANNEL_WIDTH_80) { in _iqk_rxclk_setting()
1018 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _txk_group_sel()
1024 switch (iqk_info->iqk_band[path]) { in _txk_group_sel()
1065 iqk_info->nb_txcfir[path] = 0x40000002; in _txk_group_sel()
1068 iqk_info->is_wb_txiqk[path] = false; in _txk_group_sel()
1070 iqk_info->nb_txcfir[path] = 0x40000000; in _txk_group_sel()
1073 iqk_info->is_wb_txiqk[path] = true; in _txk_group_sel()
1081 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_nbtxk()
1085 switch (iqk_info->iqk_band[path]) { in _iqk_nbtxk()
1118 iqk_info->nb_txcfir[path] = in _iqk_nbtxk()
1122 iqk_info->nb_txcfir[path] = 0x40000002; in _iqk_nbtxk()
1129 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _lok_res_table()
1135 if (iqk_info->iqk_band[path] == RTW89_BAND_2G) in _lok_res_table()
1149 struct rtw89_rfk_mcc_info_data *rfk_mcc = rtwdev->rfk_mcc.data; in _lok_finetune_check()
1150 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _lok_finetune_check()
1151 u8 ch = rfk_mcc->table_idx; in _lok_finetune_check()
1168 iqk_info->lok_idac[ch][path] = tmp; in _lok_finetune_check()
1179 iqk_info->lok_vbuf[ch][path] = tmp; in _lok_finetune_check()
1183 iqk_info->lok_idac[ch][path]); in _lok_finetune_check()
1186 iqk_info->lok_vbuf[ch][path]); in _lok_finetune_check()
1193 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_lok()
1198 switch (iqk_info->iqk_band[path]) { in _iqk_lok()
1211 switch (iqk_info->iqk_band[path]) { in _iqk_lok()
1224 iqk_info->lok_cor_fail[0][path] = tmp; in _iqk_lok()
1226 switch (iqk_info->iqk_band[path]) { in _iqk_lok()
1240 switch (iqk_info->iqk_band[path]) { in _iqk_lok()
1254 iqk_info->lok_fin_fail[0][path] = tmp; in _iqk_lok()
1256 switch (iqk_info->iqk_band[path]) { in _iqk_lok()
1275 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_txk_setting()
1277 switch (iqk_info->iqk_band[path]) { in _iqk_txk_setting()
1318 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_info_iqk()
1322 flag = iqk_info->lok_cor_fail[0][path]; in _iqk_info_iqk()
1324 flag = iqk_info->lok_fin_fail[0][path]; in _iqk_info_iqk()
1326 flag = iqk_info->iqk_tx_fail[0][path]; in _iqk_info_iqk()
1328 flag = iqk_info->iqk_rx_fail[0][path]; in _iqk_info_iqk()
1332 iqk_info->bp_iqkenable[path] = tmp; in _iqk_info_iqk()
1334 iqk_info->bp_txkresult[path] = tmp; in _iqk_info_iqk()
1336 iqk_info->bp_rxkresult[path] = tmp; in _iqk_info_iqk()
1338 rtw89_phy_write32_mask(rtwdev, R_IQKINF2, B_IQKINF2_KCNT, iqk_info->iqk_times); in _iqk_info_iqk()
1342 iqk_info->iqk_fail_cnt++; in _iqk_info_iqk()
1344 iqk_info->iqk_fail_cnt); in _iqk_info_iqk()
1349 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_by_path()
1370 if (iqk_info->is_nbiqk) in _iqk_by_path()
1371 iqk_info->iqk_tx_fail[0][path] = _iqk_nbtxk(rtwdev, phy_idx, path); in _iqk_by_path()
1373 iqk_info->iqk_tx_fail[0][path] = _txk_group_sel(rtwdev, phy_idx, path); in _iqk_by_path()
1378 if (iqk_info->is_nbiqk) in _iqk_by_path()
1379 iqk_info->iqk_rx_fail[0][path] = _iqk_nbrxk(rtwdev, phy_idx, path); in _iqk_by_path()
1381 iqk_info->iqk_rx_fail[0][path] = _rxk_group_sel(rtwdev, phy_idx, path); in _iqk_by_path()
1390 struct rtw89_rfk_mcc_info_data *rfk_mcc = rtwdev->rfk_mcc.data; in _iqk_get_ch_info()
1391 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_get_ch_info()
1392 u8 idx = rfk_mcc->table_idx; in _iqk_get_ch_info()
1399 iqk_info->iqk_band[path] = chan->band_type; in _iqk_get_ch_info()
1400 iqk_info->iqk_bw[path] = chan->band_width; in _iqk_get_ch_info()
1401 iqk_info->iqk_ch[path] = chan->channel; in _iqk_get_ch_info()
1402 iqk_info->iqk_mcc_ch[idx][path] = chan->channel; in _iqk_get_ch_info()
1403 iqk_info->iqk_table_idx[path] = idx; in _iqk_get_ch_info()
1410 iqk_info->iqk_times, idx); in _iqk_get_ch_info()
1412 idx, path, iqk_info->iqk_mcc_ch[idx][path]); in _iqk_get_ch_info()
1415 iqk_info->syn1to2 = 0x1; in _iqk_get_ch_info()
1417 iqk_info->syn1to2 = 0x0; in _iqk_get_ch_info()
1420 "[IQK]S%x, iqk_info->syn1to2= 0x%x\n", path, in _iqk_get_ch_info()
1421 iqk_info->syn1to2); in _iqk_get_ch_info()
1426 iqk_info->iqk_band[path]); in _iqk_get_ch_info()
1429 iqk_info->iqk_bw[path]); in _iqk_get_ch_info()
1431 iqk_info->iqk_ch[path]); in _iqk_get_ch_info()
1441 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_restore()
1445 iqk_info->nb_txcfir[path]); in _iqk_restore()
1447 iqk_info->nb_rxcfir[path]); in _iqk_restore()
1490 rtw89_phy_write32_mask(rtwdev, def->addr, def->mask, def->data); in _iqk_afebb_restore()
1495 struct rtw89_rfk_mcc_info_data *rfk_mcc = rtwdev->rfk_mcc.data; in _iqk_preset()
1496 u8 idx = rfk_mcc->table_idx; in _iqk_preset()
1535 rtw89_phy_write32_mask(rtwdev, def->addr, def->mask, def->data); in _iqk_macbb_setting()
1540 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _iqk_init()
1544 if (iqk_info->is_iqk_init) in _iqk_init()
1548 iqk_info->is_iqk_init = true; in _iqk_init()
1549 iqk_info->is_nbiqk = false; in _iqk_init()
1550 iqk_info->iqk_fft_en = false; in _iqk_init()
1551 iqk_info->iqk_sram_en = false; in _iqk_init()
1552 iqk_info->iqk_cfir_en = false; in _iqk_init()
1553 iqk_info->iqk_xym_en = false; in _iqk_init()
1554 iqk_info->iqk_times = 0x0; in _iqk_init()
1557 iqk_info->iqk_channel[idx] = 0x0; in _iqk_init()
1559 iqk_info->lok_cor_fail[idx][path] = false; in _iqk_init()
1560 iqk_info->lok_fin_fail[idx][path] = false; in _iqk_init()
1561 iqk_info->iqk_tx_fail[idx][path] = false; in _iqk_init()
1562 iqk_info->iqk_rx_fail[idx][path] = false; in _iqk_init()
1563 iqk_info->iqk_mcc_ch[idx][path] = 0x0; in _iqk_init()
1564 iqk_info->iqk_table_idx[path] = 0x0; in _iqk_init()
1600 struct rtw89_iqk_info *iqk_info = &rtwdev->iqk; in _doiqk()
1609 iqk_info->iqk_times++; in _doiqk()
1610 iqk_info->version = RTW8852B_IQK_VER; in _doiqk()
1612 rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK]Test Ver 0x%x\n", iqk_info->version); in _doiqk()
1690 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_onoff()
1691 u8 val, kidx = dpk->cur_idx[path]; in _dpk_onoff()
1693 val = dpk->is_dpk_enable && !off && dpk->bp[path][kidx].path_ok; in _dpk_onoff()
1699 kidx, dpk->is_dpk_enable && !off ? "enable" : "disable"); in _dpk_onoff()
1716 rtw89_debug(rtwdev, RTW89_DBG_RFK, "[DPK] one-shot over 20ms!!!!\n"); in _dpk_one_shot()
1726 rtw89_debug(rtwdev, RTW89_DBG_RFK, "[DPK] one-shot over 20ms!!!!\n"); in _dpk_one_shot()
1731 "[DPK] one-shot for %s = 0x%x\n", in _dpk_one_shot()
1755 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_information()
1757 u8 kidx = dpk->cur_idx[path]; in _dpk_information()
1759 dpk->bp[path][kidx].band = chan->band_type; in _dpk_information()
1760 dpk->bp[path][kidx].ch = chan->channel; in _dpk_information()
1761 dpk->bp[path][kidx].bw = chan->band_width; in _dpk_information()
1765 path, dpk->cur_idx[path], phy, in _dpk_information()
1766 rtwdev->is_tssi_mode[path] ? "on" : "off", in _dpk_information()
1767 rtwdev->dbcc_en ? "on" : "off", in _dpk_information()
1768 dpk->bp[path][kidx].band == 0 ? "2G" : in _dpk_information()
1769 dpk->bp[path][kidx].band == 1 ? "5G" : "6G", in _dpk_information()
1770 dpk->bp[path][kidx].ch, in _dpk_information()
1771 dpk->bp[path][kidx].bw == 0 ? "20M" : in _dpk_information()
1772 dpk->bp[path][kidx].bw == 1 ? "40M" : "80M"); in _dpk_information()
1784 if (chan->band_width == RTW89_CHANNEL_WIDTH_80) { in _dpk_bb_afe_setting()
1805 if (chan->band_width == RTW89_CHANNEL_WIDTH_80) { in _dpk_bb_afe_restore()
1826 if (rtwdev->hal.cv > CHIP_CAV) in _dpk_kip_restore()
1878 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_get_thermal()
1886 dpk->bp[path][kidx].ther_dpk = rtw89_read_rf(rtwdev, path, RR_TM, RR_TM_VAL); in _dpk_get_thermal()
1889 dpk->bp[path][kidx].ther_dpk); in _dpk_get_thermal()
1895 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_rf_setting()
1897 if (dpk->bp[path][kidx].band == RTW89_BAND_2G) { in _dpk_rf_setting()
1913 rtw89_write_rf(rtwdev, path, RR_BTC, RR_BTC_TXBB, dpk->bp[path][kidx].bw + 1); in _dpk_rf_setting()
1948 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_tpg_sel()
1950 if (dpk->bp[path][kidx].bw == RTW89_CHANNEL_WIDTH_80) in _dpk_tpg_sel()
1952 else if (dpk->bp[path][kidx].bw == RTW89_CHANNEL_WIDTH_40) in _dpk_tpg_sel()
1958 dpk->bp[path][kidx].bw == RTW89_CHANNEL_WIDTH_80 ? "80M" : in _dpk_tpg_sel()
1959 dpk->bp[path][kidx].bw == RTW89_CHANNEL_WIDTH_40 ? "40M" : "20M"); in _dpk_tpg_sel()
1979 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_sync_check()
1992 dpk->corr_idx[path][kidx] = corr_idx; in _dpk_sync_check()
1993 dpk->corr_val[path][kidx] = corr_val; in _dpk_sync_check()
2006 dpk->dc_i[path][kidx] = dc_i; in _dpk_sync_check()
2007 dpk->dc_q[path][kidx] = dc_q; in _dpk_sync_check()
2153 if (txagc - gain_offset < DPK_TXAGC_LOWER) in _dpk_set_offset()
2155 else if (txagc - gain_offset > DPK_TXAGC_UPPER) in _dpk_set_offset()
2158 txagc = txagc - gain_offset; in _dpk_set_offset()
2259 if (chan->band_width < RTW89_CHANNEL_WIDTH_80) in _dpk_agc()
2318 } while (!goout && agc_cnt < 6 && limit-- > 0); in _dpk_agc()
2358 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_idl_mpa()
2360 if (dpk->bp[path][kidx].bw < RTW89_CHANNEL_WIDTH_80 && in _dpk_idl_mpa()
2361 dpk->bp[path][kidx].band == RTW89_BAND_5G) in _dpk_idl_mpa()
2372 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_fill_result()
2374 u8 gs = dpk->dpk_gs[phy]; in _dpk_fill_result()
2383 dpk->bp[path][kidx].txagc_dpk = txagc; in _dpk_fill_result()
2387 dpk->bp[path][kidx].pwsf = pwsf; in _dpk_fill_result()
2394 dpk->bp[path][kidx].gs = gs; in _dpk_fill_result()
2395 if (dpk->dpk_gs[phy] == 0x7f) in _dpk_fill_result()
2412 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_reload_check()
2416 cur_band = chan->band_type; in _dpk_reload_check()
2417 cur_ch = chan->channel; in _dpk_reload_check()
2420 if (cur_band != dpk->bp[path][idx].band || in _dpk_reload_check()
2421 cur_ch != dpk->bp[path][idx].ch) in _dpk_reload_check()
2426 dpk->cur_idx[path] = idx; in _dpk_reload_check()
2439 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_main()
2440 u8 txagc = 0x38, kidx = dpk->cur_idx[path]; in _dpk_main()
2474 dpk->bp[path][kidx].path_ok = true; in _dpk_main()
2476 dpk->bp[path][kidx].path_ok = false; in _dpk_main()
2488 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_cal_select()
2496 if (dpk->is_dpk_reload_en) { in _dpk_cal_select()
2500 if (!reloaded[path] && dpk->bp[path][0].ch) in _dpk_cal_select()
2501 dpk->cur_idx[path] = !dpk->cur_idx[path]; in _dpk_cal_select()
2507 dpk->cur_idx[path] = 0; in _dpk_cal_select()
2516 if (rtwdev->is_tssi_mode[path]) in _dpk_cal_select()
2534 if (rtwdev->is_tssi_mode[path]) in _dpk_cal_select()
2543 struct rtw89_fem_info *fem = &rtwdev->fem; in _dpk_bypass_check()
2545 if (fem->epa_2g && chan->band_type == RTW89_BAND_2G) { in _dpk_bypass_check()
2549 } else if (fem->epa_5g && chan->band_type == RTW89_BAND_5G) { in _dpk_bypass_check()
2553 } else if (fem->epa_6g && chan->band_type == RTW89_BAND_6G) { in _dpk_bypass_check()
2579 RTW8852B_DPK_VER, rtwdev->hal.cv, in _dpk()
2590 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _dpk_track()
2600 kidx = dpk->cur_idx[path]; in _dpk_track()
2604 path, kidx, dpk->bp[path][kidx].ch); in _dpk_track()
2606 cur_ther = ewma_thermal_read(&rtwdev->phystat.avg_thermal[path]); in _dpk_track()
2611 if (dpk->bp[path][kidx].ch && cur_ther) in _dpk_track()
2612 delta_ther[path] = dpk->bp[path][kidx].ther_dpk - cur_ther; in _dpk_track()
2614 if (dpk->bp[path][kidx].band == RTW89_BAND_2G) in _dpk_track()
2622 if (rtwdev->is_tssi_mode[path]) { in _dpk_track()
2662 pwsf[0] = dpk->bp[path][kidx].pwsf + in _dpk_track()
2663 txagc_bb_tp - txagc_bb + ini_diff; in _dpk_track()
2664 pwsf[1] = dpk->bp[path][kidx].pwsf + in _dpk_track()
2665 txagc_bb_tp - txagc_bb + ini_diff; in _dpk_track()
2667 pwsf[0] = dpk->bp[path][kidx].pwsf + ini_diff; in _dpk_track()
2668 pwsf[1] = dpk->bp[path][kidx].pwsf + ini_diff; in _dpk_track()
2672 pwsf[0] = (dpk->bp[path][kidx].pwsf + delta_ther[path]) & 0x1ff; in _dpk_track()
2673 pwsf[1] = (dpk->bp[path][kidx].pwsf + delta_ther[path]) & 0x1ff; in _dpk_track()
2694 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in _set_dpd_backoff()
2704 dpk->dpk_gs[phy] = 0x7f; in _set_dpd_backoff()
2715 dpk->dpk_gs[phy] = 0x5b; in _set_dpd_backoff()
2722 enum rtw89_band band = chan->band_type; in _tssi_rf_setting()
2733 enum rtw89_band band = chan->band_type; in _tssi_set_sys()
2787 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in _tssi_set_tmeter_tbl()
2788 u8 ch = chan->channel; in _tssi_set_tmeter_tbl()
2789 u8 subband = chan->subband_type; in _tssi_set_tmeter_tbl()
2828 thermal = tssi_info->thermal[RF_PATH_A]; in _tssi_set_tmeter_tbl()
2856 -thm_down_a[i++] : in _tssi_set_tmeter_tbl()
2857 -thm_down_a[DELTA_SWINGIDX_SIZE - 1]; in _tssi_set_tmeter_tbl()
2860 for (j = 63; j >= 32; j--) in _tssi_set_tmeter_tbl()
2863 thm_up_a[DELTA_SWINGIDX_SIZE - 1]; in _tssi_set_tmeter_tbl()
2878 thermal = tssi_info->thermal[RF_PATH_B]; in _tssi_set_tmeter_tbl()
2906 -thm_down_b[i++] : in _tssi_set_tmeter_tbl()
2907 -thm_down_b[DELTA_SWINGIDX_SIZE - 1]; in _tssi_set_tmeter_tbl()
2910 for (j = 63; j >= 32; j--) in _tssi_set_tmeter_tbl()
2913 thm_up_b[DELTA_SWINGIDX_SIZE - 1]; in _tssi_set_tmeter_tbl()
2941 enum rtw89_band band = chan->band_type; in _tssi_slope_cal_org()
2957 enum rtw89_band band = chan->band_type; in _tssi_alignment_default()
2959 u8 ch = chan->channel; in _tssi_alignment_default()
3068 rtwdev->is_tssi_mode[RF_PATH_A] = true; in _tssi_enable()
3088 rtwdev->is_tssi_mode[RF_PATH_B] = true; in _tssi_enable()
3102 rtwdev->is_tssi_mode[RF_PATH_A] = false; in _tssi_disable()
3103 rtwdev->is_tssi_mode[RF_PATH_B] = false; in _tssi_disable()
3227 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in _tssi_get_ofdm_de()
3228 u8 ch = chan->channel; in _tssi_get_ofdm_de()
3242 de_1st = tssi_info->tssi_mcs[path][gidx_1st]; in _tssi_get_ofdm_de()
3243 de_2nd = tssi_info->tssi_mcs[path][gidx_2nd]; in _tssi_get_ofdm_de()
3250 val = tssi_info->tssi_mcs[path][gidx]; in _tssi_get_ofdm_de()
3262 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in _tssi_get_ofdm_trim_de()
3263 u8 ch = chan->channel; in _tssi_get_ofdm_trim_de()
3278 tde_1st = tssi_info->tssi_trim[path][tgidx_1st]; in _tssi_get_ofdm_trim_de()
3279 tde_2nd = tssi_info->tssi_trim[path][tgidx_2nd]; in _tssi_get_ofdm_trim_de()
3286 val = tssi_info->tssi_trim[path][tgidx]; in _tssi_get_ofdm_trim_de()
3299 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in _tssi_set_efuse_to_de()
3300 u8 ch = chan->channel; in _tssi_set_efuse_to_de()
3313 val = tssi_info->tssi_cck[i][gidx] + trim_de; in _tssi_set_efuse_to_de()
3317 i, gidx, tssi_info->tssi_cck[i][gidx], trim_de); in _tssi_set_efuse_to_de()
3378 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in _tssi_alimentk_done()
3379 u8 channel = chan->channel; in _tssi_alimentk_done()
3396 if (tssi_info->alignment_done[path][band]) { in _tssi_alimentk_done()
3398 tssi_info->alignment_value[path][band][0]); in _tssi_alimentk_done()
3400 tssi_info->alignment_value[path][band][1]); in _tssi_alimentk_done()
3402 tssi_info->alignment_value[path][band][2]); in _tssi_alimentk_done()
3404 tssi_info->alignment_value[path][band][3]); in _tssi_alimentk_done()
3471 channel_index = channel - 1; in _tssi_ch_to_idx()
3473 channel_index = (channel - 36) / 2 + 14; in _tssi_ch_to_idx()
3475 channel_index = ((channel - 100) / 2) + 15 + 14; in _tssi_ch_to_idx()
3477 channel_index = ((channel - 149) / 2) + 38 + 14; in _tssi_ch_to_idx()
3511 tx_counter_tmp -= tx_counter; in _tssi_get_cw_report()
3527 tx_counter_tmp -= tx_counter; in _tssi_get_cw_report()
3549 tx_counter_tmp -= tx_counter; in _tssi_get_cw_report()
3566 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in _tssi_alimentk()
3569 u8 channel = chan->channel; in _tssi_alimentk()
3586 if (tssi_info->check_backup_aligmk[path][ch_idx]) { in _tssi_alimentk()
3588 tssi_info->alignment_backup_by_ch[path][ch_idx][0]); in _tssi_alimentk()
3590 tssi_info->alignment_backup_by_ch[path][ch_idx][1]); in _tssi_alimentk()
3592 tssi_info->alignment_backup_by_ch[path][ch_idx][2]); in _tssi_alimentk()
3594 tssi_info->alignment_backup_by_ch[path][ch_idx][3]); in _tssi_alimentk()
3604 if (chan->band_type == RTW89_BAND_2G) in _tssi_alimentk()
3641 tssi_alim_offset_1 = tssi_cw_rpt[0] - ((power[0] - power[1]) * 2) - in _tssi_alimentk()
3643 aliment_diff = tssi_alim_offset_1 - tssi_cw_default; in _tssi_alimentk()
3685 tssi_info->alignment_done[path][band] = true; in _tssi_alimentk()
3686 tssi_info->alignment_value[path][band][0] = in _tssi_alimentk()
3688 tssi_info->alignment_value[path][band][1] = in _tssi_alimentk()
3690 tssi_info->alignment_value[path][band][2] = in _tssi_alimentk()
3692 tssi_info->alignment_value[path][band][3] = in _tssi_alimentk()
3695 tssi_info->check_backup_aligmk[path][ch_idx] = true; in _tssi_alimentk()
3696 tssi_info->alignment_backup_by_ch[path][ch_idx][0] = in _tssi_alimentk()
3698 tssi_info->alignment_backup_by_ch[path][ch_idx][1] = in _tssi_alimentk()
3700 tssi_info->alignment_backup_by_ch[path][ch_idx][2] = in _tssi_alimentk()
3702 tssi_info->alignment_backup_by_ch[path][ch_idx][3] = in _tssi_alimentk()
3706 "[TSSI PA K] tssi_info->alignment_value[path=%d][band=%d][0], 0x%x = 0x%08x\n", in _tssi_alimentk()
3708 tssi_info->alignment_value[path][band][0]); in _tssi_alimentk()
3710 "[TSSI PA K] tssi_info->alignment_value[path=%d][band=%d][1], 0x%x = 0x%08x\n", in _tssi_alimentk()
3712 tssi_info->alignment_value[path][band][1]); in _tssi_alimentk()
3714 "[TSSI PA K] tssi_info->alignment_value[path=%d][band=%d][2], 0x%x = 0x%08x\n", in _tssi_alimentk()
3716 tssi_info->alignment_value[path][band][2]); in _tssi_alimentk()
3718 "[TSSI PA K] tssi_info->alignment_value[path=%d][band=%d][3], 0x%x = 0x%08x\n", in _tssi_alimentk()
3720 tssi_info->alignment_value[path][band][3]); in _tssi_alimentk()
3728 tssi_info->tssi_alimk_time += this_time; in _tssi_alimentk()
3732 __func__, this_time, tssi_info->tssi_alimk_time); in _tssi_alimentk()
3800 rtwdev->dpk.is_dpk_enable = true; in rtw8852b_dpk()
3801 rtwdev->dpk.is_dpk_reload_en = false; in rtw8852b_dpk()
3855 struct rtw89_tssi_info *tssi_info = &rtwdev->tssi; in rtw8852b_tssi_scan()
3856 u8 channel = chan->channel; in rtw8852b_tssi_scan()
3881 if (tssi_info->alignment_done[i][band]) in rtw8852b_tssi_scan()
3896 u8 channel = chan->channel; in rtw8852b_tssi_default_txagc()
3902 if (!rtwdev->is_tssi_mode[RF_PATH_A] && !rtwdev->is_tssi_mode[RF_PATH_B]) in rtw8852b_tssi_default_txagc()
3954 "[RFK]Invalid RF_0x18 for Path-%d\n", path); in _bw_setting()
4030 rtw89_debug(rtwdev, RTW89_DBG_RFK, "[LCK]re-set RF 0x18\n"); in _lck_check()
4102 "[RFK]CH: %d for Path-%d, reg0x%x = 0x%x\n", in _ch_setting()
4164 rtw8852b_ctrl_bw_ch(rtwdev, phy_idx, chan->channel, chan->band_type, in rtw8852b_set_channel_rf()
4165 chan->band_width); in rtw8852b_set_channel_rf()
4171 struct rtw89_rfk_mcc_info_data *rfk_mcc = rtwdev->rfk_mcc.data; in rtw8852b_mcc_get_ch_info()
4178 p->ch = rfk_mcc->ch[idx]; in rtw8852b_mcc_get_ch_info()
4180 p->has_band = true; in rtw8852b_mcc_get_ch_info()
4181 p->band = rfk_mcc->band[idx]; in rtw8852b_mcc_get_ch_info()
4186 rfk_mcc->ch[idx] = chan->channel; in rtw8852b_mcc_get_ch_info()
4187 rfk_mcc->band[idx] = chan->band_type; in rtw8852b_mcc_get_ch_info()
4188 rfk_mcc->table_idx = idx; in rtw8852b_mcc_get_ch_info()
4194 struct rtw89_dpk_info *dpk = &rtwdev->dpk; in rtw8852b_rfk_chanctx_cb()
4199 dpk->is_dpk_enable = false; in rtw8852b_rfk_chanctx_cb()
4204 dpk->is_dpk_enable = true; in rtw8852b_rfk_chanctx_cb()