qcacmn: Remove packet bandwidth offset from snr
Remove packet bandwidth offset from SNR. So that SNR derived from TLV path and SNR derived from periodic stats looks same. Change-Id: Iaed3e3321768bef16ac1ea164920dc35eea8f002 CRs-Fixed: 3585817
This commit is contained in:
@@ -748,65 +748,6 @@ static inline void dp_rx_rate_stats_update(struct dp_peer *peer,
|
|||||||
peer->vdev->stats.rx.last_rx_rate = ratekbps;
|
peer->vdev->stats.rx.last_rx_rate = ratekbps;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef WLAN_FEATURE_11BE
|
|
||||||
static inline uint8_t dp_get_bw_offset_frm_bw(struct dp_soc *soc,
|
|
||||||
enum CMN_BW_TYPES bw)
|
|
||||||
{
|
|
||||||
uint8_t pkt_bw_offset;
|
|
||||||
|
|
||||||
switch (bw) {
|
|
||||||
case CMN_BW_20MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_20MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_40MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_40MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_80MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_80MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_160MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_160MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_320MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_320MHZ;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
pkt_bw_offset = 0;
|
|
||||||
dp_rx_mon_status_debug("%pK: Invalid BW index = %d",
|
|
||||||
soc, bw);
|
|
||||||
}
|
|
||||||
|
|
||||||
return pkt_bw_offset;
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
static inline uint8_t dp_get_bw_offset_frm_bw(struct dp_soc *soc,
|
|
||||||
enum CMN_BW_TYPES bw)
|
|
||||||
{
|
|
||||||
uint8_t pkt_bw_offset;
|
|
||||||
|
|
||||||
switch (bw) {
|
|
||||||
case CMN_BW_20MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_20MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_40MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_40MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_80MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_80MHZ;
|
|
||||||
break;
|
|
||||||
case CMN_BW_160MHZ:
|
|
||||||
pkt_bw_offset = PKT_BW_GAIN_160MHZ;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
pkt_bw_offset = 0;
|
|
||||||
dp_rx_mon_status_debug("%pK: Invalid BW index = %d",
|
|
||||||
soc, bw);
|
|
||||||
}
|
|
||||||
|
|
||||||
return pkt_bw_offset;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef WLAN_CONFIG_TELEMETRY_AGENT
|
#ifdef WLAN_CONFIG_TELEMETRY_AGENT
|
||||||
static void
|
static void
|
||||||
dp_ppdu_desc_user_rx_time_update(struct dp_pdev *pdev,
|
dp_ppdu_desc_user_rx_time_update(struct dp_pdev *pdev,
|
||||||
@@ -931,7 +872,6 @@ static void dp_rx_stats_update(struct dp_pdev *pdev,
|
|||||||
struct dp_soc *soc = NULL;
|
struct dp_soc *soc = NULL;
|
||||||
uint8_t mcs, preamble, ac = 0, nss, ppdu_type, res_mcs = 0;
|
uint8_t mcs, preamble, ac = 0, nss, ppdu_type, res_mcs = 0;
|
||||||
uint32_t num_msdu;
|
uint32_t num_msdu;
|
||||||
uint8_t pkt_bw_offset;
|
|
||||||
struct dp_peer *peer;
|
struct dp_peer *peer;
|
||||||
struct dp_mon_peer *mon_peer;
|
struct dp_mon_peer *mon_peer;
|
||||||
struct cdp_rx_stats_ppdu_user *ppdu_user;
|
struct cdp_rx_stats_ppdu_user *ppdu_user;
|
||||||
@@ -989,8 +929,7 @@ static void dp_rx_stats_update(struct dp_pdev *pdev,
|
|||||||
byte_count = ppdu_user->mpdu_ok_byte_count +
|
byte_count = ppdu_user->mpdu_ok_byte_count +
|
||||||
ppdu_user->mpdu_err_byte_count;
|
ppdu_user->mpdu_err_byte_count;
|
||||||
|
|
||||||
pkt_bw_offset = dp_get_bw_offset_frm_bw(soc, ppdu->u.bw);
|
DP_STATS_UPD(mon_peer, rx.snr, ppdu->rssi);
|
||||||
DP_STATS_UPD(mon_peer, rx.snr, (ppdu->rssi + pkt_bw_offset));
|
|
||||||
|
|
||||||
if (qdf_unlikely(mon_peer->stats.rx.avg_snr == CDP_INVALID_SNR))
|
if (qdf_unlikely(mon_peer->stats.rx.avg_snr == CDP_INVALID_SNR))
|
||||||
mon_peer->stats.rx.avg_snr =
|
mon_peer->stats.rx.avg_snr =
|
||||||
@@ -1104,8 +1043,7 @@ static void dp_rx_stats_update(struct dp_pdev *pdev,
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
dp_peer_stats_notify(pdev, peer);
|
dp_peer_stats_notify(pdev, peer);
|
||||||
DP_STATS_UPD(mon_peer, rx.last_snr,
|
DP_STATS_UPD(mon_peer, rx.last_snr, ppdu->rssi);
|
||||||
(ppdu->rssi + pkt_bw_offset));
|
|
||||||
|
|
||||||
dp_peer_qos_stats_notify(pdev, ppdu_user);
|
dp_peer_qos_stats_notify(pdev, ppdu_user);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user