From e07402f57718be1eb391ff333174f17697ac106d Mon Sep 17 00:00:00 2001 From: Tushnim Bhattacharyya Date: Fri, 24 Mar 2017 14:13:52 -0700 Subject: [PATCH] qcacmn: Add a legacy callback to get the type of non connected vdev Add a legacy callback to get the type of a non connected vdev needed by policy manager. Change-Id: Id3622d5c808c8e0f3b24b257b5899f925dc36b1f CRs-Fixed: 2009818 --- .../src/wlan_policy_mgr_get_set_utils.c | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/umac/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c b/umac/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c index cd9be988d695..b048579ee4e5 100644 --- a/umac/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c +++ b/umac/cmn_services/policy_mgr/src/wlan_policy_mgr_get_set_utils.c @@ -1722,13 +1722,24 @@ uint8_t policy_mgr_search_and_check_for_session_conc( QDF_STATUS status; enum policy_mgr_con_mode mode; bool ret; + struct policy_mgr_psoc_priv_obj *pm_ctx; - mode = policy_mgr_get_mode_by_vdev_id(psoc, session_id); - if (PM_MAX_NUM_OF_MODE == mode) { - policy_mgr_err("Invalid mode"); + pm_ctx = policy_mgr_get_context(psoc); + if (!pm_ctx) { + policy_mgr_err("Invalid Context"); return channel; } + if (pm_ctx->hdd_cbacks.get_mode_for_non_connected_vdev) { + mode = pm_ctx->hdd_cbacks.get_mode_for_non_connected_vdev( + psoc, session_id); + if (PM_MAX_NUM_OF_MODE == mode) { + policy_mgr_err("Invalid mode"); + return channel; + } + } else + return channel; + status = policy_mgr_get_channel_from_scan_result(psoc, roam_profile, &channel); if ((QDF_STATUS_SUCCESS != status) || (channel == 0)) {