mirror of
https://github.com/torvalds/linux.git
synced 2026-06-02 03:24:19 +02:00
wifi: rtw89: rfk: add firmware debug log of IQK
Print out IQ signal calibration log from firmware C2H events. Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Link: https://patch.msgid.link/20240913071340.41822-5-pkshih@realtek.com
This commit is contained in:
parent
8d445310ba
commit
6f54067045
|
|
@ -4318,6 +4318,42 @@ struct rtw89_c2h_rf_run_log {
|
|||
__le32 arg[4];
|
||||
} __packed;
|
||||
|
||||
struct rtw89_c2h_rf_iqk_rpt_log {
|
||||
bool iqk_tx_fail[2];
|
||||
bool iqk_rx_fail[2];
|
||||
bool is_iqk_init;
|
||||
bool is_reload;
|
||||
bool is_wb_txiqk[2];
|
||||
bool is_wb_rxiqk[2];
|
||||
bool is_nbiqk;
|
||||
bool txiqk_en;
|
||||
bool rxiqk_en;
|
||||
bool lok_en;
|
||||
bool iqk_xym_en;
|
||||
bool iqk_sram_en;
|
||||
bool iqk_fft_en;
|
||||
bool is_fw_iqk;
|
||||
bool is_iqk_enable;
|
||||
bool iqk_cfir_en;
|
||||
bool thermal_rek_en;
|
||||
u8 iqk_band[2];
|
||||
u8 iqk_ch[2];
|
||||
u8 iqk_bw[2];
|
||||
u8 iqk_times;
|
||||
u8 version;
|
||||
u8 phy;
|
||||
u8 fwk_status;
|
||||
u8 rsvd;
|
||||
__le32 reload_cnt;
|
||||
__le32 iqk_fail_cnt;
|
||||
__le32 lok_idac[2];
|
||||
__le32 lok_vbuf[2];
|
||||
__le32 rftxgain[2][4];
|
||||
__le32 rfrxgain[2][4];
|
||||
__le32 tx_xym[2][4];
|
||||
__le32 rx_xym[2][4];
|
||||
} __packed;
|
||||
|
||||
struct rtw89_c2h_rf_dpk_rpt_log {
|
||||
u8 ver;
|
||||
u8 idx[2];
|
||||
|
|
|
|||
|
|
@ -2694,9 +2694,83 @@ static void rtw89_phy_c2h_rfk_rpt_log(struct rtw89_dev *rtwdev,
|
|||
struct rtw89_c2h_rf_dack_rpt_log *dack;
|
||||
struct rtw89_c2h_rf_tssi_rpt_log *tssi;
|
||||
struct rtw89_c2h_rf_dpk_rpt_log *dpk;
|
||||
struct rtw89_c2h_rf_iqk_rpt_log *iqk;
|
||||
int i, j, k;
|
||||
|
||||
switch (func) {
|
||||
case RTW89_PHY_C2H_RFK_LOG_FUNC_IQK:
|
||||
if (len != sizeof(*iqk))
|
||||
goto out;
|
||||
|
||||
iqk = content;
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->is_iqk_init = %x\n", iqk->is_iqk_init);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->is_reload = %x\n", iqk->is_reload);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->is_nbiqk = %x\n", iqk->is_nbiqk);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->txiqk_en = %x\n", iqk->txiqk_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->rxiqk_en = %x\n", iqk->rxiqk_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->lok_en = %x\n", iqk->lok_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->iqk_xym_en = %x\n", iqk->iqk_xym_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->iqk_sram_en = %x\n", iqk->iqk_sram_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->iqk_fft_en = %x\n", iqk->iqk_fft_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->is_fw_iqk = %x\n", iqk->is_fw_iqk);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->is_iqk_enable = %x\n", iqk->is_iqk_enable);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->iqk_cfir_en = %x\n", iqk->iqk_cfir_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->thermal_rek_en = %x\n", iqk->thermal_rek_en);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->version = %x\n", iqk->version);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->phy = %x\n", iqk->phy);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->fwk_status = %x\n", iqk->fwk_status);
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] ======== Path %x ========\n", i);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->iqk_band[%d] = %x\n",
|
||||
i, iqk->iqk_band[i]);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->iqk_ch[%d] = %x\n",
|
||||
i, iqk->iqk_ch[i]);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->iqk_bw[%d] = %x\n",
|
||||
i, iqk->iqk_bw[i]);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->lok_idac[%d] = %x\n",
|
||||
i, le32_to_cpu(iqk->lok_idac[i]));
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->lok_vbuf[%d] = %x\n",
|
||||
i, le32_to_cpu(iqk->lok_vbuf[i]));
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->iqk_tx_fail[%d] = %x\n",
|
||||
i, iqk->iqk_tx_fail[i]);
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK, "[IQK] iqk->iqk_rx_fail[%d] = %x\n",
|
||||
i, iqk->iqk_rx_fail[i]);
|
||||
for (j = 0; j < 4; j++)
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->rftxgain[%d][%d] = %x\n",
|
||||
i, j, le32_to_cpu(iqk->rftxgain[i][j]));
|
||||
for (j = 0; j < 4; j++)
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->tx_xym[%d][%d] = %x\n",
|
||||
i, j, le32_to_cpu(iqk->tx_xym[i][j]));
|
||||
for (j = 0; j < 4; j++)
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->rfrxgain[%d][%d] = %x\n",
|
||||
i, j, le32_to_cpu(iqk->rfrxgain[i][j]));
|
||||
for (j = 0; j < 4; j++)
|
||||
rtw89_debug(rtwdev, RTW89_DBG_RFK,
|
||||
"[IQK] iqk->rx_xym[%d][%d] = %x\n",
|
||||
i, j, le32_to_cpu(iqk->rx_xym[i][j]));
|
||||
}
|
||||
return;
|
||||
case RTW89_PHY_C2H_RFK_LOG_FUNC_DPK:
|
||||
if (len != sizeof(*dpk))
|
||||
goto out;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user