mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 01:55:51 +02:00
wifi: rtw89: phy: skip trailing 8-byte zeros of PHY status IE for RTL8922D
Hardware reports a list of PHY status IE. In monitor mode, IE-09 of PHY status is enabled, and the report contains trailing 8-byte zeros, causing failed to parse and drop all IE information. The 8 zeros are recognize as IE type 0, but length of type 0 must be not 8 (reference to rtw89_phy_gen_def::physt_ie_len[0]). Check and skip them. Signed-off-by: Ping-Ke Shih <pkshih@realtek.com> Link: https://patch.msgid.link/20260506131000.1706298-13-pkshih@realtek.com
This commit is contained in:
parent
884495c39d
commit
48402f736f
|
|
@ -2275,6 +2275,13 @@ static int rtw89_core_rx_parse_phy_sts(struct rtw89_dev *rtwdev,
|
|||
while (pos < end) {
|
||||
const struct rtw89_phy_sts_iehdr *iehdr = pos;
|
||||
|
||||
/*
|
||||
* RTL8922D might reports 8 bytes zeros at end if IE09 presents.
|
||||
* Check and ignore the zeros.
|
||||
*/
|
||||
if (unlikely(phy_ppdu->ie09 && end - pos == 8 && iehdr->w0 == 0))
|
||||
break;
|
||||
|
||||
ie_len = rtw89_core_get_phy_status_ie_len(rtwdev, iehdr);
|
||||
pos += ie_len;
|
||||
if (pos > end || ie_len == 0) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user