Lines Matching defs:pkt_stat
157 struct rtw_rx_pkt_stat *pkt_stat)
163 pkt_stat->rx_power[RF_PATH_A] = pwdb - 97;
164 pkt_stat->rssi = rtw_phy_rf_power_2_rssi(pkt_stat->rx_power, 1);
165 pkt_stat->bw = RTW_CHANNEL_WIDTH_20;
166 pkt_stat->signal_power = max(pkt_stat->rx_power[RF_PATH_A],
168 dm_info->rssi[RF_PATH_A] = pkt_stat->rssi;
172 struct rtw_rx_pkt_stat *pkt_stat)
179 if (pkt_stat->rate > DESC_RATE11M && pkt_stat->rate < DESC_RATEMCS0)
191 pkt_stat->rx_power[RF_PATH_A] = GET_PHY_STAT_P1_PWDB_A(phy_status) - 110;
192 pkt_stat->rssi = rtw_phy_rf_power_2_rssi(pkt_stat->rx_power, 1);
193 pkt_stat->bw = bw;
194 pkt_stat->signal_power = max(pkt_stat->rx_power[RF_PATH_A],
196 pkt_stat->rx_evm[RF_PATH_A] = GET_PHY_STAT_P1_RXEVM_A(phy_status);
197 pkt_stat->rx_snr[RF_PATH_A] = GET_PHY_STAT_P1_RXSNR_A(phy_status);
198 pkt_stat->cfo_tail[RF_PATH_A] = GET_PHY_STAT_P1_CFO_TAIL_A(phy_status);
200 dm_info->curr_rx_rate = pkt_stat->rate;
201 dm_info->rssi[RF_PATH_A] = pkt_stat->rssi;
202 dm_info->rx_snr[RF_PATH_A] = pkt_stat->rx_snr[RF_PATH_A] >> 1;
203 dm_info->cfo_tail[RF_PATH_A] = (pkt_stat->cfo_tail[RF_PATH_A] * 5) >> 1;
205 rx_evm = clamp_t(s8, -pkt_stat->rx_evm[RF_PATH_A] >> 1, 0, 64);
211 struct rtw_rx_pkt_stat *pkt_stat)
219 query_phy_status_page0(rtwdev, phy_status, pkt_stat);
222 query_phy_status_page1(rtwdev, phy_status, pkt_stat);
231 struct rtw_rx_pkt_stat *pkt_stat,
238 memset(pkt_stat, 0, sizeof(*pkt_stat));
240 pkt_stat->phy_status = GET_RX_DESC_PHYST(rx_desc);
241 pkt_stat->icv_err = GET_RX_DESC_ICV_ERR(rx_desc);
242 pkt_stat->crc_err = GET_RX_DESC_CRC32(rx_desc);
243 pkt_stat->decrypted = !GET_RX_DESC_SWDEC(rx_desc) &&
245 pkt_stat->is_c2h = GET_RX_DESC_C2H(rx_desc);
246 pkt_stat->pkt_len = GET_RX_DESC_PKT_LEN(rx_desc);
247 pkt_stat->drv_info_sz = GET_RX_DESC_DRV_INFO_SIZE(rx_desc);
248 pkt_stat->shift = GET_RX_DESC_SHIFT(rx_desc);
249 pkt_stat->rate = GET_RX_DESC_RX_RATE(rx_desc);
250 pkt_stat->cam_id = GET_RX_DESC_MACID(rx_desc);
251 pkt_stat->ppdu_cnt = 0;
252 pkt_stat->tsf_low = GET_RX_DESC_TSFL(rx_desc);
255 pkt_stat->drv_info_sz *= 8;
258 if (pkt_stat->is_c2h)
261 hdr = (struct ieee80211_hdr *)(rx_desc + desc_sz + pkt_stat->shift +
262 pkt_stat->drv_info_sz);
263 if (pkt_stat->phy_status) {
264 phy_status = rx_desc + desc_sz + pkt_stat->shift;
265 query_phy_status(rtwdev, phy_status, pkt_stat);
268 rtw_rx_fill_rx_status(rtwdev, pkt_stat, hdr, rx_status, phy_status);