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
This commit is contained in:
Ramanathan Choodamani
2020-08-11 15:35:28 -07:00
committed by snandini
parent d5a6680a6f
commit dae503e5a1
5 changed files with 16 additions and 1 deletions

View File

@@ -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

View File

@@ -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

View File

@@ -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,

View File

@@ -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,

View File

@@ -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
};
/*