Commit e77d3f8b authored by Zong-Zhe Yang's avatar Zong-Zhe Yang Committed by Kalle Valo
Browse files

wifi: rtw89: 8852c: support fw crash simulation



With FW >= v0.27.40.0, 8852C FW has feature to handle crash simulation.
Besides, use RTW89_WCPU_BASE_MASK to replace use of RTW89_WCPU_BASE_ADDR
and work for both 8852A and 8852C.

Signed-off-by: default avatarZong-Zhe Yang <kevin_yang@realtek.com>
Signed-off-by: default avatarPing-Ke Shih <pkshih@realtek.com>
Signed-off-by: default avatarKalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220914035034.14521-4-pkshih@realtek.com
parent 9a785583
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -230,6 +230,7 @@ static const struct __fw_feat_cfg fw_feat_tbl[] = {
	__CFG_FW_FEAT(RTL8852C, le, 0, 27, 33, 0, NO_DEEP_PS),
	__CFG_FW_FEAT(RTL8852C, ge, 0, 27, 34, 0, TX_WAKE),
	__CFG_FW_FEAT(RTL8852C, ge, 0, 27, 36, 0, SCAN_OFFLOAD),
	__CFG_FW_FEAT(RTL8852C, ge, 0, 27, 40, 0, CRASH_TRIGGER),
};

static void rtw89_fw_recognize_features(struct rtw89_dev *rtwdev)
+1 −1
Original line number Diff line number Diff line
@@ -2652,7 +2652,7 @@ struct rtw89_fw_h2c_rf_get_mccch {

#define RTW89_FW_RSVD_PLE_SIZE 0x800

#define RTW89_WCPU_BASE_ADDR 0xA0000000
#define RTW89_WCPU_BASE_MASK GENMASK(27, 0)

#define RTW89_FW_BACKTRACE_INFO_SIZE 8
#define RTW89_VALID_FW_BACKTRACE_SIZE(_size) \
+1 −1
Original line number Diff line number Diff line
@@ -539,7 +539,7 @@ static int rtw89_ser_fw_backtrace_dump(struct rtw89_dev *rtwdev, u8 *buf,
				       const struct __fw_backtrace_entry *ent)
{
	struct __fw_backtrace_info *ptr = (struct __fw_backtrace_info *)buf;
	u32 fwbt_addr = ent->wcpu_addr - RTW89_WCPU_BASE_ADDR;
	u32 fwbt_addr = ent->wcpu_addr & RTW89_WCPU_BASE_MASK;
	u32 fwbt_size = ent->size;
	u32 fwbt_key = ent->key;
	u32 i;