Commit 1e71be6a authored by Zong-Zhe Yang's avatar Zong-Zhe Yang Committed by Ping-Ke Shih

wifi: rtw89: mac: parse MRC C2H failure report

MRC (multi-role concurrency) has a C2H event for status report. Newer
FW will report some kinds of failures. We parse them now and show by
debug log.
Signed-off-by: default avatarZong-Zhe Yang <kevin_yang@realtek.com>
Signed-off-by: default avatarPing-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20240702124452.18747-1-pkshih@realtek.com
parent 52bc83ad
......@@ -5202,6 +5202,46 @@ rtw89_mac_c2h_mrc_status_rpt(struct rtw89_dev *rtwdev, struct sk_buff *c2h, u32
case RTW89_MAC_MRC_DEL_SCH_OK:
func = H2C_FUNC_DEL_MRC;
break;
case RTW89_MAC_MRC_EMPTY_SCH_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: empty sch fail\n");
return;
case RTW89_MAC_MRC_ROLE_NOT_EXIST_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: role not exist fail\n");
return;
case RTW89_MAC_MRC_DATA_NOT_FOUND_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: data not found fail\n");
return;
case RTW89_MAC_MRC_GET_NEXT_SLOT_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: get next slot fail\n");
return;
case RTW89_MAC_MRC_ALT_ROLE_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: alt role fail\n");
return;
case RTW89_MAC_MRC_ADD_PSTIMER_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: add ps timer fail\n");
return;
case RTW89_MAC_MRC_MALLOC_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: malloc fail\n");
return;
case RTW89_MAC_MRC_SWITCH_CH_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: switch ch fail\n");
return;
case RTW89_MAC_MRC_TXNULL0_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: tx null-0 fail\n");
return;
case RTW89_MAC_MRC_PORT_FUNC_EN_FAIL:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"MRC C2H STS RPT: port func en fail\n");
return;
default:
rtw89_debug(rtwdev, RTW89_DBG_CHAN,
"invalid MRC C2H STS RPT: status %d\n", status);
......
......@@ -466,6 +466,16 @@ enum rtw89_mac_mrc_status {
RTW89_MAC_MRC_START_SCH_OK = 0,
RTW89_MAC_MRC_STOP_SCH_OK = 1,
RTW89_MAC_MRC_DEL_SCH_OK = 2,
RTW89_MAC_MRC_EMPTY_SCH_FAIL = 16,
RTW89_MAC_MRC_ROLE_NOT_EXIST_FAIL = 17,
RTW89_MAC_MRC_DATA_NOT_FOUND_FAIL = 18,
RTW89_MAC_MRC_GET_NEXT_SLOT_FAIL = 19,
RTW89_MAC_MRC_ALT_ROLE_FAIL = 20,
RTW89_MAC_MRC_ADD_PSTIMER_FAIL = 21,
RTW89_MAC_MRC_MALLOC_FAIL = 22,
RTW89_MAC_MRC_SWITCH_CH_FAIL = 23,
RTW89_MAC_MRC_TXNULL0_FAIL = 24,
RTW89_MAC_MRC_PORT_FUNC_EN_FAIL = 25,
};
struct rtw89_mac_ax_coex {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment