qcacmn: update TX ILP capability to DP and target

After receiving WMI service ready ext2 event and htt msdu index to
qtype map is derived, call CDP API to evaluate whether TX ILP can be
supported or not, update the TX ILP capability to DP, also send WMI
INIT CMD to FW to notify if host has enabled the TX ILP support or
not.

Change-Id: I472ebc5c7fa4b2996b790b58274fa3c048f6d7f9
CRs-Fixed: 3447519
Tento commit je obsažen v:
Jinwei Chen
2023-03-28 04:26:15 -07:00
odevzdal Madan Koyyalamudi
rodič ebdd12b6a9
revize 499696eab5
3 změnil soubory, kde provedl 48 přidání a 0 odebrání

Zobrazit soubor

@@ -33,6 +33,9 @@
#include <service_ready_param.h>
#include <init_cmd_api.h>
#include <cdp_txrx_cmn.h>
#ifdef DP_TX_PACKET_INSPECT_FOR_ILP
#include <cdp_txrx_misc.h>
#endif
#include <wlan_reg_ucfg_api.h>
#if defined(WLAN_FEATURE_11BE_MLO) && defined(WLAN_MLO_MULTI_CHIP)
#include <wlan_mlo_mgr_cmn.h>
@@ -136,6 +139,27 @@ init_deinit_update_roam_stats_cap(struct wmi_unified *wmi_handle,
{}
#endif
#ifdef DP_TX_PACKET_INSPECT_FOR_ILP
static void
init_deinit_update_tx_ilp_cap(struct wlan_objmgr_psoc *psoc,
struct tgt_info *info)
{
ol_txrx_soc_handle soc;
soc = wlan_psoc_get_dp_handle(psoc);
info->wlan_res_cfg.tx_ilp_enable =
cdp_evaluate_update_tx_ilp_cfg(
soc, info->service_ext2_param.num_msdu_idx_qtype_map,
info->msdu_idx_qtype_map);
}
#else
static void
init_deinit_update_tx_ilp_cap(struct wlan_objmgr_psoc *psoc,
struct tgt_info *info)
{
}
#endif
#ifdef MULTI_CLIENT_LL_SUPPORT
/**
* init_deinit_update_multi_client_ll_caps() - Update multi client service
@@ -536,6 +560,8 @@ static int init_deinit_service_ext2_ready_event_handler(ol_scn_t scn_handle,
goto exit;
}
init_deinit_update_tx_ilp_cap(psoc, info);
err_code = init_deinit_populate_twt_cap_ext2(psoc, wmi_handle, event,
info);