qcacmn: Fix SME callback for policy manager component

Fix SME callback for policy manager component

Change-Id: If5c7256fb689e4cdb053aa5012deacac221261f9
CRs-Fixed: 2019994
This commit is contained in:
Archana Ramachandran 2017-03-23 23:30:23 -07:00 • committed by Sandeep Puligilla
commit 3dcc6ff112
3 changed files with 21 additions and 18 deletions

View file

@ -758,7 +758,7 @@ struct policy_mgr_sme_cbacks {
uint8_t next_action, struct wlan_objmgr_psoc *psoc,
enum policy_mgr_conn_update_reason reason);
QDF_STATUS (*sme_change_mcc_beacon_interval) (uint8_t session_id);
QDF_STATUS (*sme_get_ap_channel_from_scan_cache) (
QDF_STATUS (*sme_get_ap_channel_from_scan) (
void *roam_profile,
void **scan_cache,
uint8_t *channel);

View file

@ -1674,15 +1674,16 @@ QDF_STATUS policy_mgr_get_channel_from_scan_result(
return QDF_STATUS_E_INVAL;
}
if (pm_ctx->sme_cbacks.sme_get_ap_channel_from_scan_cache) {
status = pm_ctx->sme_cbacks.sme_get_ap_channel_from_scan_cache
if (pm_ctx->sme_cbacks.sme_get_ap_channel_from_scan) {
status = pm_ctx->sme_cbacks.sme_get_ap_channel_from_scan
(roam_profile, &scan_cache, channel);
if (status != QDF_STATUS_SUCCESS) {
policy_mgr_err("Get AP channel failed");
return status;
}
} else
} else {
policy_mgr_err("sme_get_ap_channel_from_scan_cache NULL");
}
if (pm_ctx->sme_cbacks.sme_scan_result_purge)
status = pm_ctx->sme_cbacks.sme_scan_result_purge(scan_cache);
@ -1907,17 +1908,18 @@ QDF_STATUS policy_mgr_change_mcc_go_beacon_interval(
policy_mgr_info("UPDATE Beacon Params");
if (QDF_SAP_MODE == dev_mode) {
if (!pm_ctx->
sme_cbacks.sme_change_mcc_beacon_interval) {
if (pm_ctx->sme_cbacks.sme_change_mcc_beacon_interval
) {
status = pm_ctx->sme_cbacks.
sme_change_mcc_beacon_interval(vdev_id);
if (status == QDF_STATUS_E_FAILURE) {
policy_mgr_err("Failed to update Beacon Params");
return QDF_STATUS_E_FAILURE;
}
} else {
policy_mgr_err("sme_change_mcc_beacon_interval callback is NULL");
return QDF_STATUS_E_FAILURE;
}
status = pm_ctx->sme_cbacks.
sme_change_mcc_beacon_interval(vdev_id);
if (status == QDF_STATUS_E_FAILURE) {
policy_mgr_err("Failed to update Beacon Params");
return QDF_STATUS_E_FAILURE;
}
}
return QDF_STATUS_SUCCESS;
@ -2137,14 +2139,15 @@ QDF_STATUS policy_mgr_get_nss_for_vdev(struct wlan_objmgr_psoc *psoc,
return QDF_STATUS_E_FAILURE;
}
if (!pm_ctx->sme_cbacks.sme_get_nss_for_vdev) {
if (pm_ctx->sme_cbacks.sme_get_nss_for_vdev) {
pm_ctx->sme_cbacks.sme_get_nss_for_vdev(
dev_mode, nss_2g, nss_5g);
} else {
policy_mgr_err("sme_get_nss_for_vdev callback is NULL");
return QDF_STATUS_E_FAILURE;
}
pm_ctx->sme_cbacks.sme_get_nss_for_vdev(
dev_mode, nss_2g, nss_5g);
return QDF_STATUS_SUCCESS;
}

View file

@ -420,8 +420,8 @@ QDF_STATUS policy_mgr_register_sme_cb(struct wlan_objmgr_psoc *psoc,
sme_cbacks->sme_soc_set_dual_mac_config;
pm_ctx->sme_cbacks.sme_change_mcc_beacon_interval =
sme_cbacks->sme_change_mcc_beacon_interval;
pm_ctx->sme_cbacks.sme_get_ap_channel_from_scan_cache =
sme_cbacks->sme_get_ap_channel_from_scan_cache;
pm_ctx->sme_cbacks.sme_get_ap_channel_from_scan =
sme_cbacks->sme_get_ap_channel_from_scan;
pm_ctx->sme_cbacks.sme_scan_result_purge =
sme_cbacks->sme_scan_result_purge;