qcacld-3.0: Refactor LFR3 code to use cm api
Refactor csr_roam_pmkid_req_callback to use mlme_cm_osif_pmksa_candidate_notify and move other unused API under CM flag. Change-Id: I835d54804f733eddff48de38e4c545a87f34bb30 CRs-Fixed: 2965602
This commit is contained in:

کامیت شده توسط
Madan Koyyalamudi

والد
77f42260f1
کامیت
d6a03bf7e0
@@ -1073,4 +1073,42 @@ void cm_fw_ho_fail_req(struct wlan_objmgr_psoc *psoc,
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef WLAN_FEATURE_FIPS
|
||||
QDF_STATUS cm_roam_pmkid_req_ind(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id,
|
||||
struct roam_pmkid_req_event *src_lst)
|
||||
{
|
||||
QDF_STATUS status = QDF_STATUS_SUCCESS;
|
||||
struct wlan_objmgr_vdev *vdev;
|
||||
struct qdf_mac_addr *dst_list;
|
||||
uint32_t num_entries, i;
|
||||
|
||||
vdev = wlan_objmgr_get_vdev_by_id_from_psoc(psoc, vdev_id,
|
||||
WLAN_MLME_SB_ID);
|
||||
if (!vdev) {
|
||||
mlme_err("vdev object is NULL");
|
||||
return QDF_STATUS_E_NULL_VALUE;
|
||||
}
|
||||
|
||||
num_entries = src_lst->num_entries;
|
||||
mlme_debug("Num entries %d", num_entries);
|
||||
for (i = 0; i < num_entries; i++) {
|
||||
dst_list = &src_lst->ap_bssid[i];
|
||||
status = mlme_cm_osif_pmksa_candidate_notify(vdev, dst_list,
|
||||
1, false);
|
||||
if (QDF_IS_STATUS_ERROR(status)) {
|
||||
mlme_err("Number %d Notify failed for " QDF_MAC_ADDR_FMT,
|
||||
i, QDF_MAC_ADDR_REF(dst_list->bytes));
|
||||
goto rel_ref;
|
||||
}
|
||||
}
|
||||
|
||||
rel_ref:
|
||||
wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_SB_ID);
|
||||
|
||||
return status;
|
||||
}
|
||||
#endif /* WLAN_FEATURE_FIPS */
|
||||
|
||||
#endif // FEATURE_CM_ENABLE
|
||||
|
@@ -167,7 +167,26 @@ void cm_fw_ho_fail_req(struct wlan_objmgr_psoc *psoc,
|
||||
*/
|
||||
QDF_STATUS cm_fw_roam_invoke_fail(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id);
|
||||
#else
|
||||
#ifdef WLAN_FEATURE_FIPS
|
||||
/**
|
||||
* cm_roam_pmkid_req_ind() - Function to handle
|
||||
* roam event from firmware for pmkid generation.
|
||||
* @psoc: psoc pointer
|
||||
* @vdev_id: Vdev id
|
||||
* @bss_list: candidate AP bssid list
|
||||
*/
|
||||
QDF_STATUS
|
||||
cm_roam_pmkid_req_ind(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id, struct roam_pmkid_req_event *bss_list);
|
||||
#else /* WLAN_FEATURE_FIPS */
|
||||
static inline QDF_STATUS
|
||||
cm_roam_pmkid_req_ind(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id, struct roam_pmkid_req_event *bss_list)
|
||||
{
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
#endif /* WLAN_FEATURE_FIPS */
|
||||
#else /*WLAN_FEATURE_ROAM_OFFLOAD */
|
||||
static inline
|
||||
QDF_STATUS cm_fw_roam_invoke_fail(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id)
|
||||
|
@@ -3019,6 +3019,7 @@ cm_roam_switch_to_rso_stop(struct wlan_objmgr_pdev *pdev,
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
#ifndef FEATURE_CM_ENABLE
|
||||
static void cm_roam_roam_invoke_in_progress(struct wlan_objmgr_psoc *psoc,
|
||||
uint8_t vdev_id, bool set)
|
||||
{
|
||||
@@ -3034,6 +3035,8 @@ static void cm_roam_roam_invoke_in_progress(struct wlan_objmgr_psoc *psoc,
|
||||
vdev_roam_params->roam_invoke_in_progress = set;
|
||||
wlan_objmgr_vdev_release_ref(vdev, WLAN_MLME_NB_ID);
|
||||
}
|
||||
#endif
|
||||
|
||||
/**
|
||||
* cm_roam_switch_to_deinit() - roam state handling for roam deinit
|
||||
* @pdev: pdev pointer
|
||||
@@ -3054,8 +3057,9 @@ cm_roam_switch_to_deinit(struct wlan_objmgr_pdev *pdev,
|
||||
enum roam_offload_state cur_state = mlme_get_roam_state(psoc, vdev_id);
|
||||
bool sup_disabled_roam;
|
||||
|
||||
#ifndef FEATURE_CM_ENABLE
|
||||
cm_roam_roam_invoke_in_progress(psoc, vdev_id, false);
|
||||
|
||||
#endif
|
||||
switch (cur_state) {
|
||||
/*
|
||||
* If RSO stop is not done already, send RSO stop first and
|
||||
@@ -3157,7 +3161,9 @@ cm_roam_switch_to_init(struct wlan_objmgr_pdev *pdev,
|
||||
|
||||
dual_sta_policy = &mlme_obj->cfg.gen.dual_sta_policy;
|
||||
|
||||
#ifndef FEATURE_CM_ENABLE
|
||||
cm_roam_roam_invoke_in_progress(psoc, vdev_id, false);
|
||||
#endif
|
||||
|
||||
dual_sta_roam_active =
|
||||
wlan_mlme_get_dual_sta_roaming_enabled(psoc);
|
||||
@@ -3419,7 +3425,12 @@ cm_roam_switch_to_roam_start(struct wlan_objmgr_pdev *pdev,
|
||||
* notification. Allow roam start in this condition.
|
||||
*/
|
||||
if (mlme_get_supplicant_disabled_roaming(psoc, vdev_id) &&
|
||||
mlme_is_roam_invoke_in_progress(psoc, vdev_id)) {
|
||||
#ifdef FEATURE_CM_ENABLE
|
||||
wlan_cm_roaming_in_progress(pdev, vdev_id)
|
||||
#else
|
||||
mlme_is_roam_invoke_in_progress(psoc, vdev_id)
|
||||
#endif
|
||||
) {
|
||||
mlme_set_roam_state(psoc, vdev_id,
|
||||
WLAN_ROAMING_IN_PROG);
|
||||
break;
|
||||
@@ -3482,7 +3493,12 @@ cm_roam_switch_to_roam_sync(struct wlan_objmgr_pdev *pdev,
|
||||
* this state transition
|
||||
*/
|
||||
if (mlme_get_supplicant_disabled_roaming(psoc, vdev_id) &&
|
||||
mlme_is_roam_invoke_in_progress(psoc, vdev_id)) {
|
||||
#ifdef FEATURE_CM_ENABLE
|
||||
wlan_cm_roaming_in_progress(pdev, vdev_id)
|
||||
#else
|
||||
mlme_is_roam_invoke_in_progress(psoc, vdev_id)
|
||||
#endif
|
||||
) {
|
||||
mlme_set_roam_state(psoc, vdev_id,
|
||||
WLAN_ROAM_SYNCH_IN_PROG);
|
||||
break;
|
||||
|
@@ -1832,6 +1832,16 @@ struct cm_hw_mode_trans_ind {
|
||||
struct policy_mgr_vdev_mac_map vdev_mac_map[MAX_VDEV_SUPPORTED];
|
||||
};
|
||||
|
||||
/*
|
||||
* struct roam_pmkid_req_event - Pmkid event with entries destination structure
|
||||
* @num_entries: total entries sent over the event
|
||||
* @ap_bssid: bssid list
|
||||
*/
|
||||
struct roam_pmkid_req_event {
|
||||
uint32_t num_entries;
|
||||
struct qdf_mac_addr ap_bssid[];
|
||||
};
|
||||
|
||||
struct roam_offload_synch_ind {
|
||||
uint16_t beaconProbeRespOffset;
|
||||
uint16_t beaconProbeRespLength;
|
||||
|
مرجع در شماره جدید
Block a user