qcacmn: Fix params passed in vdev connect req

Fix params passed in vdev connect req and fix compilation issues.

Change-Id: I8d19c92f6768d1b2c0cdfd7997ba509a8ab87794
CRs-Fixed: 2806867
Bu işleme şunda yer alıyor:
gaurank kathpalia
2020-10-27 21:41:14 +05:30
işlemeyi yapan: snandini
ebeveyn 55929f5239
işleme abb7d72f97
6 değiştirilmiş dosya ile 39 ekleme ve 19 silme

Dosyayı Görüntüle

@@ -403,6 +403,18 @@ void cm_delete_pmksa_for_single_pmk_bssid(struct cnx_mgr *cm_ctx,
}
#endif /* WLAN_SAE_SINGLE_PMK && WLAN_FEATURE_ROAM_OFFLOAD */
static inline void
cm_set_pmf_caps(struct wlan_cm_connect_req *req, struct scan_filter *filter)
{
if (req->crypto.rsn_caps & WLAN_CRYPTO_RSN_CAP_MFP_REQUIRED)
filter->pmf_cap = WLAN_PMF_REQUIRED;
else if (req->crypto.rsn_caps & WLAN_CRYPTO_RSN_CAP_MFP_ENABLED)
filter->pmf_cap = WLAN_PMF_CAPABLE;
else
filter->pmf_cap = WLAN_PMF_DISABLED;
}
#ifdef CONN_MGR_ADV_FEATURE
#ifdef WLAN_FEATURE_FILS_SK
/*
* cm_create_fils_realm_hash: API to create hash using realm
@@ -511,18 +523,6 @@ static inline QDF_STATUS cm_set_fils_key(struct cnx_mgr *cm_ctx,
}
#endif /* WLAN_FEATURE_FILS_SK */
static inline void
cm_set_pmf_caps(struct wlan_cm_connect_req *req, struct scan_filter *filter)
{
if (req->crypto.rsn_caps & WLAN_CRYPTO_RSN_CAP_MFP_REQUIRED)
filter->pmf_cap = WLAN_PMF_REQUIRED;
else if (req->crypto.rsn_caps & WLAN_CRYPTO_RSN_CAP_MFP_ENABLED)
filter->pmf_cap = WLAN_PMF_CAPABLE;
else
filter->pmf_cap = WLAN_PMF_DISABLED;
}
#ifdef CONN_MGR_ADV_FEATURE
static QDF_STATUS
cm_inform_blm_connect_complete(struct wlan_objmgr_vdev *vdev,
struct wlan_cm_connect_rsp *resp)
@@ -1340,6 +1340,11 @@ cm_resume_connect_after_peer_create(struct cnx_mgr *cm_ctx, wlan_cm_id *cm_id)
req.assoc_ie = cm_req->connect_req.req.assoc_ie;
req.scan_ie = cm_req->connect_req.req.scan_ie;
req.bss = cm_req->connect_req.cur_candidate;
req.fils_info = &cm_req->connect_req.req.fils_info;
req.ht_caps = cm_req->connect_req.req.ht_caps;
req.ht_caps_mask = cm_req->connect_req.req.ht_caps_mask;
req.vht_caps = cm_req->connect_req.req.vht_caps;
req.vht_caps_mask = cm_req->connect_req.req.vht_caps_mask;
wlan_reg_get_cc_and_src(psoc, country_code);
mlme_nofl_info(CM_PREFIX_FMT "Connecting to %.*s " QDF_MAC_ADDR_FMT " rssi: %d freq: %d akm 0x%x cipher: uc 0x%x mc 0x%x, CC: %c%c",

Dosyayı Görüntüle

@@ -29,9 +29,10 @@
void cm_send_disconnect_resp(struct cnx_mgr *cm_ctx, wlan_cm_id cm_id)
{
struct wlan_cm_discon_rsp resp = {0};
struct wlan_cm_discon_rsp resp;
QDF_STATUS status;
qdf_mem_zero(&resp, sizeof(resp));
status = cm_fill_disconnect_resp_from_cm_id(cm_ctx, cm_id, &resp);
if (QDF_IS_STATUS_SUCCESS(status))
cm_disconnect_complete(cm_ctx, &resp);

Dosyayı Görüntüle

@@ -100,7 +100,6 @@ struct cm_state_sm {
* @cm_id: Connect manager id
* @scan_id: scan id for scan for ssid
* @req: connect req from osif
* @rsn_ie: rsn_ie in connect req
* @candidate_list: candidate list
* @cur_candidate: current candidate
* @cur_candidate_retries: attempts for current candidate
@@ -110,7 +109,6 @@ struct cm_connect_req {
wlan_cm_id cm_id;
wlan_scan_id scan_id;
struct wlan_cm_connect_req req;
struct element_info rsn_ie;
qdf_list_t *candidate_list;
struct scan_cache_node *cur_candidate;
uint8_t cur_candidate_retries;

Dosyayı Görüntüle

@@ -421,8 +421,9 @@ cm_handle_connect_flush(struct cnx_mgr *cm_ctx, struct cm_req *cm_req)
static void
cm_handle_disconnect_flush(struct cnx_mgr *cm_ctx, struct cm_req *cm_req)
{
struct wlan_cm_discon_rsp resp = {0};
struct wlan_cm_discon_rsp resp;
qdf_mem_zero(&resp, sizeof(resp));
resp.req.cm_id = cm_req->cm_id;
resp.req.req = cm_req->discon_req.req;

Dosyayı Görüntüle

@@ -191,17 +191,29 @@ struct wlan_cm_connect_req {
* used with out validation, used for the scenarios where the device is used
* as a testbed device with special functionality and not recommended
* for production.
* @ht_caps: ht capability
* @ht_caps_mask: mask of valid ht caps
* @vht_caps: vht capability
* @vht_caps_mask: mask of valid vht caps
* @assoc_ie: assoc ie to be used in assoc req
* @scan_ie: Default scan ie to be used in the uncast probe req
* @bss: scan entry for the candidate
* @fils_info: Fills related connect info
*/
struct wlan_cm_vdev_connect_req {
uint8_t vdev_id;
wlan_cm_id cm_id;
bool force_rsne_override;
uint16_t ht_caps;
uint16_t ht_caps_mask;
uint32_t vht_caps;
uint32_t vht_caps_mask;
struct element_info assoc_ie;
struct element_info scan_ie;
struct scan_cache_node *bss;
#ifdef WLAN_FEATURE_FILS_SK
struct wlan_fils_con_info *fils_info;
#endif
};
/**
@@ -311,9 +323,9 @@ struct fils_connect_rsp_params {
/**
* struct connect_rsp_ies - connect rsp ies stored in vdev filled during connect
* @bcn_probe_rsp: beacon or probe rsp of connected AP
* @assoc_req: assoc req send during conenct
* @assoc_rsq: assoc rsp received during connection
* @bcn_probe_rsp: Raw beacon or probe rsp of connected AP
* @assoc_req: assoc req IE pointer send during conenct
* @assoc_rsq: assoc rsp IE received during connection
* @ric_resp_ie: ric ie from assoc resp received during connection
* @fills_ie: fills connection ie received during connection
*/

Dosyayı Görüntüle

@@ -411,6 +411,9 @@ QDF_STATUS mlme_cm_bss_peer_create_req(struct wlan_objmgr_vdev *vdev,
* @vdev: VDEV object
* @req: Vdev connect request
*
* Context: The req is on stack, so the API need to make a copy, if it want to
* use the req after return.
*
* Return: QDF_STATUS
*/
QDF_STATUS mlme_cm_connect_req(struct wlan_objmgr_vdev *vdev,