diff options
| -rw-r--r-- | core/hdd/src/wlan_hdd_main.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/core/hdd/src/wlan_hdd_main.c b/core/hdd/src/wlan_hdd_main.c index 36777e9e7bb5..3c989d4f9ffb 100644 --- a/core/hdd/src/wlan_hdd_main.c +++ b/core/hdd/src/wlan_hdd_main.c @@ -7416,6 +7416,7 @@ static void hdd_bus_bw_compute_cbk(void *priv) { hdd_context_t *hdd_ctx = (hdd_context_t *)priv; hdd_adapter_t *adapter = NULL; + hdd_adapter_t *sap_adapter = NULL; uint64_t tx_packets = 0, rx_packets = 0; uint64_t fwd_tx_packets = 0, fwd_rx_packets = 0; uint64_t fwd_tx_packets_diff = 0, fwd_rx_packets_diff = 0; @@ -7459,6 +7460,9 @@ static void hdd_bus_bw_compute_cbk(void *priv) continue; } + if (adapter->device_mode == QDF_SAP_MODE) + sap_adapter = adapter; + tx_packets += HDD_BW_GET_DIFF(adapter->stats.tx_packets, adapter->prev_tx_packets); rx_packets += HDD_BW_GET_DIFF(adapter->stats.rx_packets, @@ -7508,8 +7512,10 @@ static void hdd_bus_bw_compute_cbk(void *priv) tx_packets += (uint64_t)ipa_tx_packets; rx_packets += (uint64_t)ipa_rx_packets; - adapter->stats.tx_packets += ipa_tx_packets; - adapter->stats.rx_packets += ipa_rx_packets; + if (sap_adapter) { + sap_adapter->stats.tx_packets += ipa_tx_packets; + sap_adapter->stats.rx_packets += ipa_rx_packets; + } hdd_ipa_set_perf_level(hdd_ctx, tx_packets, rx_packets); hdd_ipa_uc_stat_request(hdd_ctx, 2); |
