Loading components/cp_stats/dispatcher/src/wlan_cp_stats_mc_tgt_api.c +2 −2 Original line number Diff line number Diff line /* * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the Loading Loading @@ -299,7 +300,6 @@ tgt_mc_cp_stats_prepare_raw_peer_rssi(struct wlan_objmgr_psoc *psoc, } end: if (ev.peer_stats) get_peer_rssi_cb(&ev, last_req->cookie); ucfg_mc_cp_stats_free_stats_resources(&ev); Loading components/mlme/dispatcher/inc/wlan_mlme_api.h +13 −1 Original line number Diff line number Diff line /* * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the Loading Loading @@ -3221,4 +3221,16 @@ QDF_STATUS wlan_mlme_get_tx_retry_multiplier(struct wlan_objmgr_psoc *psoc, uint32_t *tx_retry_multiplier); /** * wlan_mlme_get_channel_bonding_5ghz - Get the channel bonding * val for 5ghz freq * @psoc: pointer to psoc object * @value: pointer to the value which will be filled for the caller * * Return: QDF Status */ QDF_STATUS wlan_mlme_get_channel_bonding_5ghz(struct wlan_objmgr_psoc *psoc, uint32_t *value); #endif /* _WLAN_MLME_API_H_ */ components/mlme/dispatcher/src/wlan_mlme_api.c +16 −0 Original line number Diff line number Diff line Loading @@ -4990,3 +4990,19 @@ wlan_mlme_get_tx_retry_multiplier(struct wlan_objmgr_psoc *psoc, *tx_retry_multiplier = mlme_obj->cfg.gen.tx_retry_multiplier; return QDF_STATUS_SUCCESS; } QDF_STATUS wlan_mlme_get_channel_bonding_5ghz(struct wlan_objmgr_psoc *psoc, uint32_t *value) { struct wlan_mlme_psoc_ext_obj *mlme_obj; mlme_obj = mlme_get_psoc_ext_obj(psoc); if (!mlme_obj) { *value = cfg_default(CFG_CHANNEL_BONDING_MODE_5GHZ); return QDF_STATUS_E_INVAL; } *value = mlme_obj->cfg.feature_flags.channel_bonding_mode_5ghz; return QDF_STATUS_SUCCESS; } components/mlme/dispatcher/src/wlan_mlme_ucfg_api.c +1 −10 Original line number Diff line number Diff line Loading @@ -1642,16 +1642,7 @@ QDF_STATUS ucfg_mlme_get_channel_bonding_5ghz(struct wlan_objmgr_psoc *psoc, uint32_t *value) { struct wlan_mlme_psoc_ext_obj *mlme_obj; mlme_obj = mlme_get_psoc_ext_obj(psoc); if (!mlme_obj) { *value = cfg_default(CFG_CHANNEL_BONDING_MODE_5GHZ); return QDF_STATUS_E_INVAL; } *value = mlme_obj->cfg.feature_flags.channel_bonding_mode_5ghz; return QDF_STATUS_SUCCESS; return wlan_mlme_get_channel_bonding_5ghz(psoc, value); } QDF_STATUS Loading core/dp/txrx3.0/dp_fisa_rx.c +10 −8 Original line number Diff line number Diff line /* * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above Loading Loading @@ -737,10 +738,10 @@ dp_fisa_rx_delete_flow(struct dp_rx_fst *fisa_hdl, sw_ft_entry->is_flow_tcp = elem->is_tcp_flow; sw_ft_entry->is_flow_udp = elem->is_udp_flow; dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); fisa_hdl->add_flow_count++; fisa_hdl->del_flow_count++; dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); } /** Loading Loading @@ -1645,7 +1646,6 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, hal_soc_handle_t hal_soc_hdl = fisa_hdl->soc_hdl->hal_soc; uint32_t hal_aggr_count; uint8_t napi_id = QDF_NBUF_CB_RX_CTX_ID(nbuf); uint8_t reo_id = fisa_flow->napi_id; uint32_t fse_metadata; dump_tlvs(hal_soc_hdl, rx_tlv_hdr, QDF_TRACE_LEVEL_INFO_HIGH); Loading @@ -1653,6 +1653,7 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, nbuf, qdf_nbuf_next(nbuf), qdf_nbuf_data(nbuf), nbuf->len, nbuf->data_len); dp_rx_fisa_acquire_ft_lock(fisa_hdl, napi_id); /* Packets of the flow are arriving on a different REO than * the one configured. */ Loading @@ -1660,13 +1661,16 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, fse_metadata = hal_rx_msdu_fse_metadata_get(hal_soc_hdl, rx_tlv_hdr); if (fisa_hdl->del_flow_count && fse_metadata != fisa_flow->metadata) fse_metadata != fisa_flow->metadata) { dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); return FISA_AGGR_NOT_ELIGIBLE; } dp_err("REO id mismatch flow: %pK napi_id: %u nbuf: %pK reo_id: %u", fisa_flow, fisa_flow->napi_id, nbuf, napi_id); DP_STATS_INC(fisa_hdl, reo_mismatch, 1); QDF_BUG(0); dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); return FISA_AGGR_NOT_ELIGIBLE; } Loading @@ -1678,8 +1682,6 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, hal_aggr_count = hal_rx_get_fisa_flow_agg_count(hal_soc_hdl, rx_tlv_hdr); dp_rx_fisa_acquire_ft_lock(fisa_hdl, reo_id); if (!flow_aggr_cont) { /* Start of new aggregation for the flow * Flush previous aggregates for this flow Loading Loading @@ -1785,14 +1787,14 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, dp_rx_fisa_aggr_tcp(fisa_hdl, fisa_flow, nbuf); } dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); fisa_flow->last_accessed_ts = qdf_get_log_timestamp(); return FISA_AGGR_DONE; invalid_fisa_assist: /* Not eligible aggregation deliver frame without FISA */ dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); return FISA_AGGR_NOT_ELIGIBLE; } Loading Loading
components/cp_stats/dispatcher/src/wlan_cp_stats_mc_tgt_api.c +2 −2 Original line number Diff line number Diff line /* * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the Loading Loading @@ -299,7 +300,6 @@ tgt_mc_cp_stats_prepare_raw_peer_rssi(struct wlan_objmgr_psoc *psoc, } end: if (ev.peer_stats) get_peer_rssi_cb(&ev, last_req->cookie); ucfg_mc_cp_stats_free_stats_resources(&ev); Loading
components/mlme/dispatcher/inc/wlan_mlme_api.h +13 −1 Original line number Diff line number Diff line /* * Copyright (c) 2018-2021 The Linux Foundation. All rights reserved. * Copyright (c) 2021 Qualcomm Innovation Center, Inc. All rights reserved. * Copyright (c) 2021-2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for * any purpose with or without fee is hereby granted, provided that the Loading Loading @@ -3221,4 +3221,16 @@ QDF_STATUS wlan_mlme_get_tx_retry_multiplier(struct wlan_objmgr_psoc *psoc, uint32_t *tx_retry_multiplier); /** * wlan_mlme_get_channel_bonding_5ghz - Get the channel bonding * val for 5ghz freq * @psoc: pointer to psoc object * @value: pointer to the value which will be filled for the caller * * Return: QDF Status */ QDF_STATUS wlan_mlme_get_channel_bonding_5ghz(struct wlan_objmgr_psoc *psoc, uint32_t *value); #endif /* _WLAN_MLME_API_H_ */
components/mlme/dispatcher/src/wlan_mlme_api.c +16 −0 Original line number Diff line number Diff line Loading @@ -4990,3 +4990,19 @@ wlan_mlme_get_tx_retry_multiplier(struct wlan_objmgr_psoc *psoc, *tx_retry_multiplier = mlme_obj->cfg.gen.tx_retry_multiplier; return QDF_STATUS_SUCCESS; } QDF_STATUS wlan_mlme_get_channel_bonding_5ghz(struct wlan_objmgr_psoc *psoc, uint32_t *value) { struct wlan_mlme_psoc_ext_obj *mlme_obj; mlme_obj = mlme_get_psoc_ext_obj(psoc); if (!mlme_obj) { *value = cfg_default(CFG_CHANNEL_BONDING_MODE_5GHZ); return QDF_STATUS_E_INVAL; } *value = mlme_obj->cfg.feature_flags.channel_bonding_mode_5ghz; return QDF_STATUS_SUCCESS; }
components/mlme/dispatcher/src/wlan_mlme_ucfg_api.c +1 −10 Original line number Diff line number Diff line Loading @@ -1642,16 +1642,7 @@ QDF_STATUS ucfg_mlme_get_channel_bonding_5ghz(struct wlan_objmgr_psoc *psoc, uint32_t *value) { struct wlan_mlme_psoc_ext_obj *mlme_obj; mlme_obj = mlme_get_psoc_ext_obj(psoc); if (!mlme_obj) { *value = cfg_default(CFG_CHANNEL_BONDING_MODE_5GHZ); return QDF_STATUS_E_INVAL; } *value = mlme_obj->cfg.feature_flags.channel_bonding_mode_5ghz; return QDF_STATUS_SUCCESS; return wlan_mlme_get_channel_bonding_5ghz(psoc, value); } QDF_STATUS Loading
core/dp/txrx3.0/dp_fisa_rx.c +10 −8 Original line number Diff line number Diff line /* * Copyright (c) 2020-2021, The Linux Foundation. All rights reserved. * Copyright (c) 2022 Qualcomm Innovation Center, Inc. All rights reserved. * * Permission to use, copy, modify, and/or distribute this software for any * purpose with or without fee is hereby granted, provided that the above Loading Loading @@ -737,10 +738,10 @@ dp_fisa_rx_delete_flow(struct dp_rx_fst *fisa_hdl, sw_ft_entry->is_flow_tcp = elem->is_tcp_flow; sw_ft_entry->is_flow_udp = elem->is_udp_flow; dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); fisa_hdl->add_flow_count++; fisa_hdl->del_flow_count++; dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); } /** Loading Loading @@ -1645,7 +1646,6 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, hal_soc_handle_t hal_soc_hdl = fisa_hdl->soc_hdl->hal_soc; uint32_t hal_aggr_count; uint8_t napi_id = QDF_NBUF_CB_RX_CTX_ID(nbuf); uint8_t reo_id = fisa_flow->napi_id; uint32_t fse_metadata; dump_tlvs(hal_soc_hdl, rx_tlv_hdr, QDF_TRACE_LEVEL_INFO_HIGH); Loading @@ -1653,6 +1653,7 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, nbuf, qdf_nbuf_next(nbuf), qdf_nbuf_data(nbuf), nbuf->len, nbuf->data_len); dp_rx_fisa_acquire_ft_lock(fisa_hdl, napi_id); /* Packets of the flow are arriving on a different REO than * the one configured. */ Loading @@ -1660,13 +1661,16 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, fse_metadata = hal_rx_msdu_fse_metadata_get(hal_soc_hdl, rx_tlv_hdr); if (fisa_hdl->del_flow_count && fse_metadata != fisa_flow->metadata) fse_metadata != fisa_flow->metadata) { dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); return FISA_AGGR_NOT_ELIGIBLE; } dp_err("REO id mismatch flow: %pK napi_id: %u nbuf: %pK reo_id: %u", fisa_flow, fisa_flow->napi_id, nbuf, napi_id); DP_STATS_INC(fisa_hdl, reo_mismatch, 1); QDF_BUG(0); dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); return FISA_AGGR_NOT_ELIGIBLE; } Loading @@ -1678,8 +1682,6 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, hal_aggr_count = hal_rx_get_fisa_flow_agg_count(hal_soc_hdl, rx_tlv_hdr); dp_rx_fisa_acquire_ft_lock(fisa_hdl, reo_id); if (!flow_aggr_cont) { /* Start of new aggregation for the flow * Flush previous aggregates for this flow Loading Loading @@ -1785,14 +1787,14 @@ static int dp_add_nbuf_to_fisa_flow(struct dp_rx_fst *fisa_hdl, dp_rx_fisa_aggr_tcp(fisa_hdl, fisa_flow, nbuf); } dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); fisa_flow->last_accessed_ts = qdf_get_log_timestamp(); return FISA_AGGR_DONE; invalid_fisa_assist: /* Not eligible aggregation deliver frame without FISA */ dp_rx_fisa_release_ft_lock(fisa_hdl, reo_id); dp_rx_fisa_release_ft_lock(fisa_hdl, napi_id); return FISA_AGGR_NOT_ELIGIBLE; } Loading