Lines Matching refs:phy_ppdu

1418 					  struct rtw89_rx_phy_ppdu *phy_ppdu)
1462 phy_ppdu->mac_id =
1479 phy_ppdu->buf = phy_sts;
1480 phy_ppdu->len = skb->data + skb->len - phy_sts;
1489 struct rtw89_rx_phy_ppdu *phy_ppdu = (struct rtw89_rx_phy_ppdu *)data;
1497 if (rtwsta->mac_id != phy_ppdu->mac_id || !phy_ppdu->to_self)
1505 ewma_rssi_add(&rtwsta->avg_rssi, phy_ppdu->rssi_avg);
1508 ewma_rssi_add(&rtwsta->rssi[ant_pos], phy_ppdu->rssi[0]);
1511 ewma_rssi_add(&rtwsta->rssi[i], phy_ppdu->rssi[i]);
1514 if (phy_ppdu->ofdm.has) {
1515 ewma_snr_add(&rtwsta->avg_snr, phy_ppdu->ofdm.avg_snr);
1516 ewma_evm_add(&rtwsta->evm_min[evm_pos], phy_ppdu->ofdm.evm_min);
1517 ewma_evm_add(&rtwsta->evm_max[evm_pos], phy_ppdu->ofdm.evm_max);
1555 struct rtw89_rx_phy_ppdu *phy_ppdu)
1561 phy_ppdu->chan_idx = le32_get_bits(ie->w0, RTW89_PHY_STS_IE01_W0_CH_IDX);
1562 if (phy_ppdu->rate < RTW89_HW_RATE_OFDM6)
1565 if (!phy_ppdu->to_self)
1568 phy_ppdu->ofdm.avg_snr = le32_get_bits(ie->w2, RTW89_PHY_STS_IE01_W2_AVG_SNR);
1569 phy_ppdu->ofdm.evm_max = le32_get_bits(ie->w2, RTW89_PHY_STS_IE01_W2_EVM_MAX);
1570 phy_ppdu->ofdm.evm_min = le32_get_bits(ie->w2, RTW89_PHY_STS_IE01_W2_EVM_MIN);
1571 phy_ppdu->ofdm.has = true;
1582 rtw89_phy_cfo_parse(rtwdev, cfo, phy_ppdu);
1587 struct rtw89_rx_phy_ppdu *phy_ppdu)
1595 rtw89_core_parse_phy_status_ie01(rtwdev, iehdr, phy_ppdu);
1604 static void rtw89_core_update_phy_ppdu(struct rtw89_rx_phy_ppdu *phy_ppdu)
1606 const struct rtw89_phy_sts_hdr *hdr = phy_ppdu->buf;
1607 u8 *rssi = phy_ppdu->rssi;
1609 phy_ppdu->ie = le32_get_bits(hdr->w0, RTW89_PHY_STS_HDR_W0_IE_MAP);
1610 phy_ppdu->rssi_avg = le32_get_bits(hdr->w0, RTW89_PHY_STS_HDR_W0_RSSI_AVG);
1618 struct rtw89_rx_phy_ppdu *phy_ppdu)
1620 const struct rtw89_phy_sts_hdr *hdr = phy_ppdu->buf;
1633 if (len_from_header != phy_ppdu->len) {
1637 rtw89_core_update_phy_ppdu(phy_ppdu);
1643 struct rtw89_rx_phy_ppdu *phy_ppdu)
1649 if (phy_ppdu->ie < RTW89_CCK_PKT)
1652 pos = phy_ppdu->buf + PHY_STS_HDR_LEN;
1653 end = phy_ppdu->buf + phy_ppdu->len;
1658 rtw89_core_process_phy_status_ie(rtwdev, iehdr, phy_ppdu);
1667 rtw89_phy_antdiv_parse(rtwdev, phy_ppdu);
1673 struct rtw89_rx_phy_ppdu *phy_ppdu)
1677 ret = rtw89_core_rx_parse_phy_sts(rtwdev, phy_ppdu);
1681 phy_ppdu->valid = true;
1685 phy_ppdu);
1762 struct rtw89_rx_phy_ppdu *phy_ppdu;
1900 struct rtw89_rx_phy_ppdu *phy_ppdu = iter_data->phy_ppdu;
1922 rtw89_fw_h2c_rssi_offload(rtwdev, phy_ppdu);
1937 struct rtw89_rx_phy_ppdu *phy_ppdu,
1946 iter_data.phy_ppdu = phy_ppdu;
2077 struct rtw89_rx_phy_ppdu *phy_ppdu,
2089 rtw89_core_rx_stats(rtwdev, phy_ppdu, desc_info, skb_ppdu);
2099 struct rtw89_rx_phy_ppdu *phy_ppdu,
2115 rtw89_chip_query_ppdu(rtwdev, phy_ppdu, rx_status);
2117 rtw89_core_rx_to_mac80211(rtwdev, phy_ppdu, desc_info, skb_ppdu, rx_status);
2125 struct rtw89_rx_phy_ppdu phy_ppdu = {.buf = skb->data, .valid = false,
2133 ret = rtw89_core_rx_process_mac_ppdu(rtwdev, skb, &phy_ppdu);
2138 ret = rtw89_core_rx_process_phy_ppdu(rtwdev, &phy_ppdu);
2142 rtw89_core_rx_process_phy_sts(rtwdev, &phy_ppdu);
2145 rtw89_core_rx_pending_skb(rtwdev, &phy_ppdu, desc_info, skb);