qcacmn: Add umac support for CFR
Add UMAC support for CFR module.
CRs-Fixed: 2372061
Change-Id: Idf5991d2cb43e8165ae4eed12d675f1039f4bc77
diff --git a/umac/cmn_services/inc/wlan_cmn.h b/umac/cmn_services/inc/wlan_cmn.h
index 60f0740..f0a6d83 100644
--- a/umac/cmn_services/inc/wlan_cmn.h
+++ b/umac/cmn_services/inc/wlan_cmn.h
@@ -306,6 +306,7 @@
WLAN_UMAC_COMP_CP_STATS = 27,
WLAN_UMAC_COMP_ACTION_OUI = 28,
WLAN_UMAC_COMP_FWOL = 29,
+ WLAN_UMAC_COMP_CFR = 30,
WLAN_UMAC_COMP_ID_MAX,
};
diff --git a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_cmn.h b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_cmn.h
index 8f15a57..fcc16dd 100644
--- a/umac/cmn_services/obj_mgr/inc/wlan_objmgr_cmn.h
+++ b/umac/cmn_services/obj_mgr/inc/wlan_objmgr_cmn.h
@@ -286,6 +286,7 @@
WLAN_TGT_IF_DP_PEER_REF_ID = 45,
WLAN_MLME_SER_IF_ID = 46,
WLAN_SCHEDULER_ID = 47,
+ WLAN_CFR_ID = 48,
WLAN_REF_ID_MAX,
} wlan_objmgr_ref_dbgid;
@@ -347,6 +348,7 @@
"WLAN_TGT_IF_DP_PEER_REF_ID",
"WLAN_MLME_SER_IF_ID",
"WLAN_SCHEDULER_ID",
+ "WLAN_CFR_ID",
"WLAN_REF_ID_MAX"};
return (char *)strings[id];
diff --git a/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h b/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h
index 7462940..a7d32c8 100644
--- a/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h
+++ b/umac/global_umac_dispatcher/lmac_if/inc/wlan_lmac_if_def.h
@@ -47,6 +47,10 @@
#include "wlan_crypto_global_def.h"
#endif
+#ifdef WLAN_CFR_ENABLE
+#include "wlan_cfr_utils_api.h"
+#endif
+
#include <wlan_dfs_tgt_api.h>
#include <wlan_dfs_ioctl.h>
@@ -456,6 +460,30 @@
#endif
+#ifdef WLAN_CFR_ENABLE
+/**
+ * struct wlan_lmac_if_cfr_tx_ops - CFR specific tx function pointers
+ * @cfr_init_pdev: Initialize CFR
+ * @cfr_deinit_pdev: De-initialize CFR
+ * @cfr_enable_cfr_timer: Function to enable CFR timer
+ * @cfr_start_capture: Function to start CFR capture
+ * @cfr_stop_capture: Function to stop CFR capture
+ */
+struct wlan_lmac_if_cfr_tx_ops {
+ int (*cfr_init_pdev)(struct wlan_objmgr_psoc *psoc,
+ struct wlan_objmgr_pdev *pdev);
+ int (*cfr_deinit_pdev)(struct wlan_objmgr_psoc *psoc,
+ struct wlan_objmgr_pdev *pdev);
+ int (*cfr_enable_cfr_timer)(struct wlan_objmgr_pdev *pdev,
+ uint32_t cfr_timer);
+ int (*cfr_start_capture)(struct wlan_objmgr_pdev *pdev,
+ struct wlan_objmgr_peer *peer,
+ struct cfr_capture_params *params);
+ int (*cfr_stop_capture)(struct wlan_objmgr_pdev *pdev,
+ struct wlan_objmgr_peer *peer);
+};
+#endif /* WLAN_CFR_ENABLE */
+
#ifdef WLAN_CONV_SPECTRAL_ENABLE
struct wmi_spectral_cmd_ops;
/**
@@ -819,6 +847,10 @@
struct wlan_lmac_if_sa_api_tx_ops sa_api_tx_ops;
#endif
+#ifdef WLAN_CFR_ENABLE
+ struct wlan_lmac_if_cfr_tx_ops cfr_tx_ops;
+#endif
+
#ifdef WLAN_CONV_SPECTRAL_ENABLE
struct wlan_lmac_if_sptrl_tx_ops sptrl_tx_ops;
#endif