Loading dp/inc/cdp_txrx_cmn_struct.h +6 −1 Original line number Diff line number Diff line Loading @@ -2139,7 +2139,8 @@ struct cdp_rx_indication_msdu { * @lro_enable: Enable/Disable LRO * @gro_enable: Enable/Disable GRO * @flow_steering_enable: Enable/Disable Rx Hash based flow steering * @tcp_Udp_ChecksumOffload: Enable/Disable tcp-Udp checksum Offload * @nan_tcp_udp_checksumoffload: Enable/Disable TCP/UDP Checksum Offload for NAN * @tcp_udp_checksumoffload: Enable/Disable TCP/UDP Checksum Offload * @napi_enable: Enable/Disable Napi * @ipa_enable: Flag indicating if IPA is enabled or not * @tx_flow_stop_queue_threshold: Value to Pause tx queues Loading @@ -2154,6 +2155,7 @@ struct cdp_config_params { unsigned int lro_enable:1; unsigned int gro_enable:1; unsigned int flow_steering_enable:1; unsigned int nan_tcp_udp_checksumoffload:1; unsigned int tcp_udp_checksumoffload:1; unsigned int napi_enable:1; unsigned int ipa_enable:1; Loading Loading @@ -2213,6 +2215,9 @@ struct cdp_monitor_filter { */ enum cdp_dp_cfg { cfg_dp_enable_data_stall, /* checksum offload for NAN interface */ cfg_dp_enable_nan_ip_tcp_udp_checksum_offload, /* generic checksum offload for other interfaces */ cfg_dp_enable_ip_tcp_udp_checksum_offload, cfg_dp_tso_enable, cfg_dp_lro_enable, Loading dp/inc/cdp_txrx_mob_def.h +2 −0 Original line number Diff line number Diff line Loading @@ -284,6 +284,8 @@ struct txrx_pdev_cfg_param_t { uint32_t uc_tx_partition_base; /* IP, TCP and UDP checksum offload */ bool ip_tcp_udp_checksum_offload; /* IP, TCP and UDP checksum offload for NAN Mode*/ bool nan_ip_tcp_udp_checksum_offload; /* Rx processing in thread from TXRX */ bool enable_rxthread; /* CE classification enabled through INI */ Loading dp/inc/cdp_txrx_stats_struct.h +2 −0 Original line number Diff line number Diff line Loading @@ -922,6 +922,7 @@ struct cdp_tx_stats { * @rssi: RSSI of received signal * @last_rssi: Previous rssi * @multipass_rx_pkt_drop: Dropped multipass rx pkt * @rx_mpdu_cnt: rx mpdu count per MCS rate */ struct cdp_rx_stats { struct cdp_pkt_info to_stack; Loading Loading @@ -989,6 +990,7 @@ struct cdp_rx_stats { uint8_t rssi; uint8_t last_rssi; uint32_t multipass_rx_pkt_drop; uint32_t rx_mpdu_cnt[MAX_MCS]; }; /* struct cdp_tx_ingress_stats - Tx ingress Stats Loading dp/wifi3.0/dp_main.c +7 −0 Original line number Diff line number Diff line Loading @@ -9220,6 +9220,8 @@ QDF_STATUS dp_update_config_parameters(struct cdp_soc *psoc, soc->wlan_cfg_ctx->tso_enabled = params->tso_enable; soc->wlan_cfg_ctx->lro_enabled = params->lro_enable; soc->wlan_cfg_ctx->rx_hash = params->flow_steering_enable; soc->wlan_cfg_ctx->nan_tcp_udp_checksumoffload = params->nan_tcp_udp_checksumoffload; soc->wlan_cfg_ctx->tcp_udp_checksumoffload = params->tcp_udp_checksumoffload; soc->wlan_cfg_ctx->napi_enabled = params->napi_enable; Loading Loading @@ -9850,6 +9852,9 @@ static uint32_t dp_get_cfg(struct cdp_soc_t *soc, enum cdp_dp_cfg cfg) case cfg_dp_enable_data_stall: value = dpsoc->wlan_cfg_ctx->enable_data_stall_detection; break; case cfg_dp_enable_nan_ip_tcp_udp_checksum_offload: value = dpsoc->wlan_cfg_ctx->nan_tcp_udp_checksumoffload; break; case cfg_dp_enable_ip_tcp_udp_checksum_offload: value = dpsoc->wlan_cfg_ctx->tcp_udp_checksumoffload; break; Loading Loading @@ -10580,6 +10585,7 @@ dp_request_rx_hw_stats(struct cdp_soc_t *soc_hdl, uint8_t vdev_id) if (!rx_hw_stats) { dp_err("malloc failed for hw stats structure"); dp_peer_unref_delete(peer); return QDF_STATUS_E_NOMEM; } Loading @@ -10591,6 +10597,7 @@ dp_request_rx_hw_stats(struct cdp_soc_t *soc_hdl, uint8_t vdev_id) dp_err("no tid stats sent successfully"); qdf_mem_free(rx_hw_stats); qdf_spin_unlock_bh(&soc->rx_hw_stats_lock); dp_peer_unref_delete(peer); return QDF_STATUS_E_INVAL; } qdf_atomic_set(&rx_hw_stats->pending_tid_stats_cnt, Loading dp/wifi3.0/dp_rx.c +4 −0 Original line number Diff line number Diff line Loading @@ -1581,6 +1581,10 @@ static void dp_rx_msdu_stats_update(struct dp_soc *soc, nss = hal_rx_msdu_start_nss_get(soc->hal_soc, rx_tlv_hdr); pkt_type = hal_rx_msdu_start_get_pkt_type(rx_tlv_hdr); DP_STATS_INCC(peer, rx.rx_mpdu_cnt[mcs], 1, ((mcs < MAX_MCS) && QDF_NBUF_CB_RX_CHFRAG_START(nbuf))); DP_STATS_INCC(peer, rx.rx_mpdu_cnt[MAX_MCS - 1], 1, ((mcs >= MAX_MCS) && QDF_NBUF_CB_RX_CHFRAG_START(nbuf))); DP_STATS_INC(peer, rx.bw[bw], 1); /* * only if nss > 0 and pkt_type is 11N/AC/AX, Loading Loading
dp/inc/cdp_txrx_cmn_struct.h +6 −1 Original line number Diff line number Diff line Loading @@ -2139,7 +2139,8 @@ struct cdp_rx_indication_msdu { * @lro_enable: Enable/Disable LRO * @gro_enable: Enable/Disable GRO * @flow_steering_enable: Enable/Disable Rx Hash based flow steering * @tcp_Udp_ChecksumOffload: Enable/Disable tcp-Udp checksum Offload * @nan_tcp_udp_checksumoffload: Enable/Disable TCP/UDP Checksum Offload for NAN * @tcp_udp_checksumoffload: Enable/Disable TCP/UDP Checksum Offload * @napi_enable: Enable/Disable Napi * @ipa_enable: Flag indicating if IPA is enabled or not * @tx_flow_stop_queue_threshold: Value to Pause tx queues Loading @@ -2154,6 +2155,7 @@ struct cdp_config_params { unsigned int lro_enable:1; unsigned int gro_enable:1; unsigned int flow_steering_enable:1; unsigned int nan_tcp_udp_checksumoffload:1; unsigned int tcp_udp_checksumoffload:1; unsigned int napi_enable:1; unsigned int ipa_enable:1; Loading Loading @@ -2213,6 +2215,9 @@ struct cdp_monitor_filter { */ enum cdp_dp_cfg { cfg_dp_enable_data_stall, /* checksum offload for NAN interface */ cfg_dp_enable_nan_ip_tcp_udp_checksum_offload, /* generic checksum offload for other interfaces */ cfg_dp_enable_ip_tcp_udp_checksum_offload, cfg_dp_tso_enable, cfg_dp_lro_enable, Loading
dp/inc/cdp_txrx_mob_def.h +2 −0 Original line number Diff line number Diff line Loading @@ -284,6 +284,8 @@ struct txrx_pdev_cfg_param_t { uint32_t uc_tx_partition_base; /* IP, TCP and UDP checksum offload */ bool ip_tcp_udp_checksum_offload; /* IP, TCP and UDP checksum offload for NAN Mode*/ bool nan_ip_tcp_udp_checksum_offload; /* Rx processing in thread from TXRX */ bool enable_rxthread; /* CE classification enabled through INI */ Loading
dp/inc/cdp_txrx_stats_struct.h +2 −0 Original line number Diff line number Diff line Loading @@ -922,6 +922,7 @@ struct cdp_tx_stats { * @rssi: RSSI of received signal * @last_rssi: Previous rssi * @multipass_rx_pkt_drop: Dropped multipass rx pkt * @rx_mpdu_cnt: rx mpdu count per MCS rate */ struct cdp_rx_stats { struct cdp_pkt_info to_stack; Loading Loading @@ -989,6 +990,7 @@ struct cdp_rx_stats { uint8_t rssi; uint8_t last_rssi; uint32_t multipass_rx_pkt_drop; uint32_t rx_mpdu_cnt[MAX_MCS]; }; /* struct cdp_tx_ingress_stats - Tx ingress Stats Loading
dp/wifi3.0/dp_main.c +7 −0 Original line number Diff line number Diff line Loading @@ -9220,6 +9220,8 @@ QDF_STATUS dp_update_config_parameters(struct cdp_soc *psoc, soc->wlan_cfg_ctx->tso_enabled = params->tso_enable; soc->wlan_cfg_ctx->lro_enabled = params->lro_enable; soc->wlan_cfg_ctx->rx_hash = params->flow_steering_enable; soc->wlan_cfg_ctx->nan_tcp_udp_checksumoffload = params->nan_tcp_udp_checksumoffload; soc->wlan_cfg_ctx->tcp_udp_checksumoffload = params->tcp_udp_checksumoffload; soc->wlan_cfg_ctx->napi_enabled = params->napi_enable; Loading Loading @@ -9850,6 +9852,9 @@ static uint32_t dp_get_cfg(struct cdp_soc_t *soc, enum cdp_dp_cfg cfg) case cfg_dp_enable_data_stall: value = dpsoc->wlan_cfg_ctx->enable_data_stall_detection; break; case cfg_dp_enable_nan_ip_tcp_udp_checksum_offload: value = dpsoc->wlan_cfg_ctx->nan_tcp_udp_checksumoffload; break; case cfg_dp_enable_ip_tcp_udp_checksum_offload: value = dpsoc->wlan_cfg_ctx->tcp_udp_checksumoffload; break; Loading Loading @@ -10580,6 +10585,7 @@ dp_request_rx_hw_stats(struct cdp_soc_t *soc_hdl, uint8_t vdev_id) if (!rx_hw_stats) { dp_err("malloc failed for hw stats structure"); dp_peer_unref_delete(peer); return QDF_STATUS_E_NOMEM; } Loading @@ -10591,6 +10597,7 @@ dp_request_rx_hw_stats(struct cdp_soc_t *soc_hdl, uint8_t vdev_id) dp_err("no tid stats sent successfully"); qdf_mem_free(rx_hw_stats); qdf_spin_unlock_bh(&soc->rx_hw_stats_lock); dp_peer_unref_delete(peer); return QDF_STATUS_E_INVAL; } qdf_atomic_set(&rx_hw_stats->pending_tid_stats_cnt, Loading
dp/wifi3.0/dp_rx.c +4 −0 Original line number Diff line number Diff line Loading @@ -1581,6 +1581,10 @@ static void dp_rx_msdu_stats_update(struct dp_soc *soc, nss = hal_rx_msdu_start_nss_get(soc->hal_soc, rx_tlv_hdr); pkt_type = hal_rx_msdu_start_get_pkt_type(rx_tlv_hdr); DP_STATS_INCC(peer, rx.rx_mpdu_cnt[mcs], 1, ((mcs < MAX_MCS) && QDF_NBUF_CB_RX_CHFRAG_START(nbuf))); DP_STATS_INCC(peer, rx.rx_mpdu_cnt[MAX_MCS - 1], 1, ((mcs >= MAX_MCS) && QDF_NBUF_CB_RX_CHFRAG_START(nbuf))); DP_STATS_INC(peer, rx.bw[bw], 1); /* * only if nss > 0 and pkt_type is 11N/AC/AX, Loading