qcacld-3.0: Added roam_reason in csr_roam_info

Currently, there is no information for roam reason
in csr

Fix,check 4 LSB of roam_synch_data for roam reason
and send roam_reason to hdd

Change-Id: I4306339eb69db3bfc05fac79b13e3693582ff05d
CRs-Fixed: 2425911
This commit is contained in:
sheenam monga 2019-03-28 16:55:36 +05:30 • committed by nshrivas
commit 8fec61d333
2 changed files with 11 additions and 0 deletions

View file

@ -1181,6 +1181,7 @@ struct csr_roam_info {
struct sir_sae_info *sae_info;
#endif
struct assoc_ind *owe_pending_assoc_ind;
uint8_t roam_reason;
};
typedef struct sSirSmeAssocIndToUpperLayerCnf {

View file

@ -106,6 +106,11 @@
*/
#define NEIGHBOR_REPORT_PARAM_INVALID (0xFFFFFFFFU)
/*
* To get 4 LSB of roam reason of roam_synch_data
* received from firmware
*/
#define ROAM_REASON_MASK 0x0F
/**
* csr_get_ielen_from_bss_description() - to get IE length
* from tSirBssDescription structure
@ -21521,9 +21526,14 @@ static QDF_STATUS csr_process_roam_sync_callback(struct mac_context *mac_ctx,
QDF_TRACE(QDF_MODULE_ID_SME, QDF_TRACE_LEVEL_DEBUG,
FL("LFR3: Copy KCK, KEK(len %d) and Replay Ctr"),
roam_info->kek_len);
/* bit-4 and bit-5 indicate the subnet status */
roam_info->subnet_change_status =
CSR_GET_SUBNET_STATUS(roam_synch_data->roamReason);
/* fetch 4 LSB to get roam reason */
roam_info->roam_reason = roam_synch_data->roamReason &
ROAM_REASON_MASK;
sme_debug("Update roam reason : %d", roam_info->roam_reason);
csr_copy_fils_join_rsp_roam_info(roam_info, roam_synch_data);
csr_roam_call_callback(mac_ctx, session_id, roam_info, 0,