Explorar el Código

qcacmn: Add build flag for MSCS procedures (Data path)

This change will add a build flag support to MSCS wherein
the functions will be called based on the status of the flag
created. This flag will be enabled by default.

Change-Id: I1c234c710d3b37f534ed2df7b37343cbd65ab930
CRs-Fixed: 2757257
Ramanathan Choodamani hace 4 años
padre
commit
dae503e5a1

+ 2 - 0
dp/inc/cdp_txrx_cmn_struct.h

@@ -484,6 +484,7 @@ struct cdp_rx_mic_err_info {
 	uint16_t vdev_id;
 };
 
+#ifdef WLAN_SUPPORT_MSCS
 /**
  * struct cdp_mscs_params - MSCS parameters obtained
  * from handshake
@@ -498,6 +499,7 @@ struct cdp_mscs_params {
 	uint8_t classifier_type;
 	uint8_t classifier_mask;
 };
+#endif
 
 /**
  * struct cdp_sec_type - security type information

+ 2 - 0
dp/inc/cdp_txrx_ctrl.h

@@ -99,6 +99,7 @@ cdp_update_filter_neighbour_peers(ol_txrx_soc_handle soc,
 }
 #endif /* ATH_SUPPORT_NAC || ATH_SUPPORT_NAC_RSSI*/
 
+#ifdef WLAN_SUPPORT_MSCS
 /**
  * @brief record the MSCS data and send it to the Data path
  * @details
@@ -131,6 +132,7 @@ cdp_record_vdev_mscs_params(ol_txrx_soc_handle soc, uint8_t
 	return soc->ops->ctrl_ops->txrx_record_mscs_params
 			(soc, macaddr, vdev_id, mscs_params, active);
 }
+#endif
 
 /**
  * @brief set the Reo Destination ring for the pdev

+ 2 - 0
dp/inc/cdp_txrx_ops.h

@@ -681,12 +681,14 @@ struct cdp_ctrl_ops {
 						   uint8_t *rssi);
 #endif
 
+#ifdef WLAN_SUPPORT_MSCS
 	QDF_STATUS
 		(*txrx_record_mscs_params) (
 				struct cdp_soc_t *soc, uint8_t *macaddr,
 				uint8_t vdev_id,
 				struct cdp_mscs_params *mscs_params,
 				bool active);
+#endif
 
 	QDF_STATUS
 	(*set_key)(struct cdp_soc_t *soc, uint8_t vdev_id, uint8_t *mac,

+ 4 - 0
dp/wifi3.0/dp_main.c

@@ -6224,6 +6224,7 @@ fail0:
 }
 #endif /* ATH_SUPPORT_NAC_RSSI || ATH_SUPPORT_NAC */
 
+#ifdef WLAN_SUPPORT_MSCS
 /*
  * dp_record_mscs_params - MSCS parameters sent by the STA in
  * the MSCS Request to the AP. The AP makes a note of these
@@ -6292,6 +6293,7 @@ fail:
 		dp_peer_unref_delete(peer, DP_MOD_ID_CDP);
 	return status;
 }
+#endif
 
 /*
  * dp_get_sec_type() - Get the security type
@@ -10458,7 +10460,9 @@ static struct cdp_ctrl_ops dp_ops_ctrl = {
 	.txrx_vdev_config_for_nac_rssi = dp_config_for_nac_rssi,
 	.txrx_vdev_get_neighbour_rssi = dp_vdev_get_neighbour_rssi,
 #endif
+#ifdef WLAN_SUPPORT_MSCS
 	.txrx_record_mscs_params = dp_record_mscs_params,
+#endif
 	.set_key = dp_set_michael_key,
 	.txrx_get_vdev_param = dp_get_vdev_param,
 	.enable_peer_based_pktlog = dp_enable_peer_based_pktlog,

+ 6 - 1
dp/wifi3.0/dp_types.h

@@ -2409,10 +2409,12 @@ struct dp_peer_ast_params {
 	uint8_t flowQ;
 };
 
+#ifdef WLAN_SUPPORT_MSCS
+/*MSCS Procedure based macros */
 #define IEEE80211_MSCS_MAX_ELEM_SIZE    5
 #define IEEE80211_TCLAS_MASK_CLA_TYPE_4  4
 /*
- * struct dp_peer_mscs_node_stats - MSCS database obtained from
+ * struct dp_peer_mscs_parameter - MSCS database obtained from
  * MSCS Request and Response in the control path. This data is used
  * by the AP to find out what priority to set based on the tuple
  * classification during packet processing.
@@ -2427,6 +2429,7 @@ struct dp_peer_mscs_parameter {
 	uint8_t user_priority_limit;
 	uint8_t classifier_mask;
 };
+#endif
 
 /* Peer structure for data path state */
 struct dp_peer {
@@ -2544,8 +2547,10 @@ struct dp_peer {
 	qdf_atomic_t mod_refs[DP_MOD_ID_MAX];
 
 	uint8_t peer_state;
+#ifdef WLAN_SUPPORT_MSCS
 	struct dp_peer_mscs_parameter mscs_ipv4_parameter, mscs_ipv6_parameter;
 	bool mscs_active;
+#endif
 };
 
 /*