diff --git a/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c b/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c index 8ac96d092f..1db0716809 100644 --- a/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c +++ b/cmn_services/policy_mgr/src/wlan_policy_mgr_action.c @@ -1503,7 +1503,7 @@ bool policy_mgr_nan_sap_scc_on_unsafe_ch_chk(struct wlan_objmgr_psoc *psoc, policy_mgr_debug("No NAN+SAP SCC"); return false; } - nan_5g_freq = wlan_chan_to_freq(wlan_nan_get_disc_5g_ch(psoc)); + nan_5g_freq = wlan_nan_get_disc_5g_ch_freq(psoc); policy_mgr_debug("Freq SAP: %d NAN: %d %d", sap_freq, nan_2g_freq, nan_5g_freq); @@ -1588,8 +1588,7 @@ policy_mgr_nan_sap_pre_enable_conc_check(struct wlan_objmgr_psoc *psoc, nan_2g_freq = policy_mgr_mode_specific_get_channel(pm_ctx->psoc, PM_NAN_DISC_MODE); - nan_5g_freq = wlan_chan_to_freq(wlan_nan_get_disc_5g_ch( - pm_ctx->psoc)); + nan_5g_freq = wlan_nan_get_disc_5g_ch_freq(pm_ctx->psoc); policy_mgr_debug("SAP CH: %d NAN Ch: %d %d", ch_freq, nan_2g_freq, nan_5g_freq); if (WLAN_REG_IS_SAME_BAND_FREQS(nan_2g_freq, ch_freq) || @@ -1644,7 +1643,7 @@ void policy_mgr_nan_sap_post_enable_conc_check(struct wlan_objmgr_psoc *psoc) return; nan_freq_2g = policy_mgr_mode_specific_get_channel(psoc, PM_NAN_DISC_MODE); - nan_freq_5g = wlan_chan_to_freq(wlan_nan_get_disc_5g_ch(psoc)); + nan_freq_5g = wlan_nan_get_disc_5g_ch_freq(psoc); if (sap_info->freq == nan_freq_2g || sap_info->freq == nan_freq_5g) { policy_mgr_debug("NAN and SAP already in SCC"); return; diff --git a/nan/core/inc/nan_public_structs.h b/nan/core/inc/nan_public_structs.h index c507beaa9c..04ccfe88ac 100644 --- a/nan/core/inc/nan_public_structs.h +++ b/nan/core/inc/nan_public_structs.h @@ -568,14 +568,14 @@ struct nan_disable_req { /** * struct nan_enable_req - NAN request to enable NAN Discovery * @psoc: Pointer to the psoc object - * @social_chan_2g: Social channel in 2G band for the NAN Discovery - * @social_chan_5g: Social channel in 5G band for the NAN Discovery + * @social_chan_2g_freq: Social channel in 2G band for the NAN Discovery + * @social_chan_5g_freq: Social channel in 5G band for the NAN Discovery * @params: NAN request structure containing message for the target */ struct nan_enable_req { struct wlan_objmgr_psoc *psoc; - uint8_t social_chan_2g; - uint8_t social_chan_5g; + uint32_t social_chan_2g_freq; + uint32_t social_chan_5g_freq; /* Variable length, do not add anything after this */ struct nan_msg_params params; }; diff --git a/nan/core/inc/wlan_nan_api.h b/nan/core/inc/wlan_nan_api.h index d87b938b36..ab79fe7411 100644 --- a/nan/core/inc/wlan_nan_api.h +++ b/nan/core/inc/wlan_nan_api.h @@ -185,12 +185,12 @@ wlan_nan_get_connection_info(struct wlan_objmgr_psoc *psoc, struct policy_mgr_vdev_entry_info *conn_info); /** - * wlan_nan_get_disc_5g_ch: Get NAN Disc 5G channel + * wlan_nan_get_disc_5g_ch_freq: Get NAN Disc 5G channel frequency * @psoc: pointer to psoc object * - * Return: NAN Disc 5G channel + * Return: NAN Disc 5G channel frequency */ -uint8_t wlan_nan_get_disc_5g_ch(struct wlan_objmgr_psoc *psoc); +uint32_t wlan_nan_get_disc_5g_ch_freq(struct wlan_objmgr_psoc *psoc); /** * wlan_nan_get_sap_conc_support: Get NAN+SAP conc support @@ -228,7 +228,8 @@ wlan_nan_get_connection_info(struct wlan_objmgr_psoc *psoc, return QDF_STATUS_E_FAILURE; } -static inline uint8_t wlan_nan_get_disc_5g_ch(struct wlan_objmgr_psoc *psoc) +static inline uint32_t +wlan_nan_get_disc_5g_ch_freq(struct wlan_objmgr_psoc *psoc) { return 0; } diff --git a/nan/core/src/nan_main.c b/nan/core/src/nan_main.c index 9c24c8460c..9f1e2ac369 100644 --- a/nan/core/src/nan_main.c +++ b/nan/core/src/nan_main.c @@ -838,14 +838,14 @@ static QDF_STATUS nan_handle_enable_rsp(struct nan_event_params *nan_event) * State set to DISABLED OR DISABLE_IN_PROGRESS, try to * restore the single MAC mode. */ - psoc_nan_obj->nan_social_ch_2g = 0; - psoc_nan_obj->nan_social_ch_5g = 0; + psoc_nan_obj->nan_social_ch_2g_freq = 0; + psoc_nan_obj->nan_social_ch_5g_freq = 0; policy_mgr_check_n_start_opportunistic_timer(psoc); } } else { /* NAN Enable has failed, restore changes */ - psoc_nan_obj->nan_social_ch_2g = 0; - psoc_nan_obj->nan_social_ch_5g = 0; + psoc_nan_obj->nan_social_ch_2g_freq = 0; + psoc_nan_obj->nan_social_ch_5g_freq = 0; nan_set_discovery_state(nan_event->psoc, NAN_DISC_DISABLED); policy_mgr_check_n_start_opportunistic_timer(psoc); } @@ -1046,7 +1046,7 @@ QDF_STATUS nan_datapath_event_handler(struct scheduler_msg *pe_msg) return status; } -bool nan_is_enable_allowed(struct wlan_objmgr_psoc *psoc, uint8_t nan_chan) +bool nan_is_enable_allowed(struct wlan_objmgr_psoc *psoc, uint32_t nan_ch_freq) { if (!psoc) { nan_err("psoc object object is NULL"); @@ -1055,8 +1055,7 @@ bool nan_is_enable_allowed(struct wlan_objmgr_psoc *psoc, uint8_t nan_chan) return (NAN_DISC_DISABLED == nan_get_discovery_state(psoc) && policy_mgr_allow_concurrency(psoc, PM_NAN_DISC_MODE, - wlan_chan_to_freq(nan_chan), - HW_MODE_20_MHZ)); + nan_ch_freq, HW_MODE_20_MHZ)); } bool nan_is_disc_active(struct wlan_objmgr_psoc *psoc) @@ -1071,7 +1070,7 @@ bool nan_is_disc_active(struct wlan_objmgr_psoc *psoc) } QDF_STATUS nan_discovery_pre_enable(struct wlan_objmgr_psoc *psoc, - uint8_t nan_social_channel) + uint32_t nan_ch_freq) { QDF_STATUS status = QDF_STATUS_E_INVAL; struct wlan_objmgr_pdev *pdev = NULL; @@ -1102,8 +1101,8 @@ QDF_STATUS nan_discovery_pre_enable(struct wlan_objmgr_psoc *psoc, goto pre_enable_failure; } - if (!policy_mgr_nan_sap_pre_enable_conc_check( - psoc, PM_NAN_DISC_MODE, wlan_chan_to_freq(nan_social_channel))) { + if (!policy_mgr_nan_sap_pre_enable_conc_check(psoc, PM_NAN_DISC_MODE, + nan_ch_freq)) { nan_debug("NAN not enabled due to concurrency constraints"); status = QDF_STATUS_E_INVAL; goto pre_enable_failure; @@ -1119,9 +1118,9 @@ QDF_STATUS nan_discovery_pre_enable(struct wlan_objmgr_psoc *psoc, vdev_id = wlan_vdev_get_id(vdev); wlan_objmgr_vdev_release_ref(vdev, WLAN_NAN_ID); - status = policy_mgr_update_and_wait_for_connection_update( - psoc, vdev_id, wlan_chan_to_freq(nan_social_channel), - POLICY_MGR_UPDATE_REASON_NAN_DISCOVERY); + status = policy_mgr_update_and_wait_for_connection_update(psoc, vdev_id, + nan_ch_freq, + POLICY_MGR_UPDATE_REASON_NAN_DISCOVERY); if (QDF_IS_STATUS_ERROR(status)) { nan_err("Failed to set or wait for HW mode change"); goto pre_enable_failure; @@ -1192,8 +1191,8 @@ static QDF_STATUS nan_discovery_enable_req(struct nan_enable_req *req) return QDF_STATUS_E_NULL_VALUE; } - psoc_nan_obj->nan_social_ch_2g = req->social_chan_2g; - psoc_nan_obj->nan_social_ch_5g = req->social_chan_5g; + psoc_nan_obj->nan_social_ch_2g_freq = req->social_chan_2g_freq; + psoc_nan_obj->nan_social_ch_5g_freq = req->social_chan_5g_freq; tx_ops = &psoc_nan_obj->tx_ops; if (!tx_ops->nan_discovery_req_tx) { @@ -1305,7 +1304,7 @@ wlan_nan_get_connection_info(struct wlan_objmgr_psoc *psoc, } /* For policy_mgr use NAN mandatory Social ch 6 */ - conn_info->mhz = wlan_chan_to_freq(psoc_nan_obj->nan_social_ch_2g); + conn_info->mhz = psoc_nan_obj->nan_social_ch_2g_freq; conn_info->mac_id = psoc_nan_obj->nan_disc_mac_id; conn_info->chan_width = CH_WIDTH_20MHZ; conn_info->type = WMI_VDEV_TYPE_NAN; @@ -1313,7 +1312,7 @@ wlan_nan_get_connection_info(struct wlan_objmgr_psoc *psoc, return QDF_STATUS_SUCCESS; } -uint8_t wlan_nan_get_disc_5g_ch(struct wlan_objmgr_psoc *psoc) +uint32_t wlan_nan_get_disc_5g_ch_freq(struct wlan_objmgr_psoc *psoc) { struct nan_psoc_priv_obj *psoc_nan_obj; @@ -1326,7 +1325,7 @@ uint8_t wlan_nan_get_disc_5g_ch(struct wlan_objmgr_psoc *psoc) if (nan_get_discovery_state(psoc) != NAN_DISC_ENABLED) return 0; - return psoc_nan_obj->nan_social_ch_5g; + return psoc_nan_obj->nan_social_ch_5g_freq; } bool wlan_nan_get_sap_conc_support(struct wlan_objmgr_psoc *psoc) diff --git a/nan/core/src/nan_main_i.h b/nan/core/src/nan_main_i.h index ff494b7dac..6b6f779ffc 100644 --- a/nan/core/src/nan_main_i.h +++ b/nan/core/src/nan_main_i.h @@ -98,8 +98,8 @@ struct nan_cfg_params { * @tx_ops: Tx ops registered with Target IF interface * @rx_ops: Rx ops registered with Target IF interface * @disc_state: Present NAN Discovery state - * @nan_social_ch_2g: NAN 2G Social channel for discovery - * @nan_social_ch_5g: NAN 5G Social channel for discovery + * @nan_social_ch_2g_freq: NAN 2G Social channel for discovery + * @nan_social_ch_5g_freq: NAN 5G Social channel for discovery * @nan_disc_mac_id: MAC id used for NAN Discovery * @is_explicit_disable: Flag to indicate that NAN is being explicitly * disabled by driver or user-space @@ -113,8 +113,8 @@ struct nan_psoc_priv_obj { struct wlan_nan_tx_ops tx_ops; struct wlan_nan_rx_ops rx_ops; enum nan_disc_state disc_state; - uint8_t nan_social_ch_2g; - uint8_t nan_social_ch_5g; + uint32_t nan_social_ch_2g_freq; + uint32_t nan_social_ch_5g_freq; uint8_t nan_disc_mac_id; bool is_explicit_disable; void *request_context; @@ -220,12 +220,12 @@ QDF_STATUS nan_set_discovery_state(struct wlan_objmgr_psoc *psoc, /* * nan_discovery_pre_enable: Takes steps before sending NAN Enable to Firmware * @psoc: PSOC object - * @nan_social_channel: Primary social channel for NAN Discovery + * @nan_ch_freq: Primary social channel for NAN Discovery * * Return: status of operation */ QDF_STATUS nan_discovery_pre_enable(struct wlan_objmgr_psoc *psoc, - uint8_t nan_social_channel); + uint32_t nan_ch_freq); /* * nan_get_discovery_state: Returns the current NAN Discovery state @@ -238,11 +238,11 @@ enum nan_disc_state nan_get_discovery_state(struct wlan_objmgr_psoc *psoc); /* * nan_is_enable_allowed: Queries whether NAN Discovery is allowed * @psoc: PSOC object - * @nan_chan: Possible primary social channel for NAN Discovery + * @nan_ch_freq: Possible primary social channel for NAN Discovery * * Return: True if NAN Enable is allowed on given channel, False otherwise */ -bool nan_is_enable_allowed(struct wlan_objmgr_psoc *psoc, uint8_t nan_chan); +bool nan_is_enable_allowed(struct wlan_objmgr_psoc *psoc, uint32_t nan_ch_freq); /* * nan_is_disc_active: Queries whether NAN Discovery is active diff --git a/nan/dispatcher/inc/nan_ucfg_api.h b/nan/dispatcher/inc/nan_ucfg_api.h index 6bacb6272c..06674f3b73 100644 --- a/nan/dispatcher/inc/nan_ucfg_api.h +++ b/nan/dispatcher/inc/nan_ucfg_api.h @@ -276,12 +276,12 @@ bool ucfg_is_nan_sap_supported(struct wlan_objmgr_psoc *psoc); * ucfg_is_nan_enable_allowed() - ucfg API to query if NAN Discovery is * allowed * @psoc: pointer to psoc object - * @nan_chan: NAN Discovery primary social channel + * @nan_ch_freq: NAN Discovery primary social channel * * Return: True if NAN Discovery enable is allowed, False otherwise */ bool ucfg_is_nan_enable_allowed(struct wlan_objmgr_psoc *psoc, - uint8_t nan_chan); + uint32_t nan_ch_freq); /** * ucfg_is_nan_disc_active() - ucfg API to query if NAN Discovery is diff --git a/nan/dispatcher/src/nan_ucfg_api.c b/nan/dispatcher/src/nan_ucfg_api.c index 70321a46a1..7023a01dac 100644 --- a/nan/dispatcher/src/nan_ucfg_api.c +++ b/nan/dispatcher/src/nan_ucfg_api.c @@ -548,9 +548,10 @@ bool ucfg_is_ndi_dbs_supported(struct wlan_objmgr_psoc *psoc) return (psoc_priv->nan_caps.ndi_dbs_supported == 1); } -bool ucfg_is_nan_enable_allowed(struct wlan_objmgr_psoc *psoc, uint8_t nan_chan) +bool ucfg_is_nan_enable_allowed(struct wlan_objmgr_psoc *psoc, + uint32_t nan_ch_freq) { - return nan_is_enable_allowed(psoc, nan_chan); + return nan_is_enable_allowed(psoc, nan_ch_freq); } bool ucfg_is_nan_disc_active(struct wlan_objmgr_psoc *psoc) @@ -600,7 +601,7 @@ QDF_STATUS ucfg_nan_discovery_req(void *in_req, uint32_t req_type) } status = nan_discovery_pre_enable(psoc, - req->social_chan_2g); + req->social_chan_2g_freq); if (QDF_IS_STATUS_SUCCESS(status)) { len = sizeof(struct nan_enable_req) + req->params.request_data_len;