diff --git a/os_if/linux/scan/inc/wlan_cfg80211_scan.h b/os_if/linux/scan/inc/wlan_cfg80211_scan.h index 54b402f8a5..97d0b706d0 100644 --- a/os_if/linux/scan/inc/wlan_cfg80211_scan.h +++ b/os_if/linux/scan/inc/wlan_cfg80211_scan.h @@ -124,6 +124,7 @@ struct scan_req { * @source: scan request source * @default_ie: default scan ie * @vendor_ie: vendor ie + * @priority: scan priority * @half_rate: Half rate flag * @quarter_rate: Quarter rate flag * @strict_pscan: strict passive scan flag @@ -132,6 +133,7 @@ struct scan_params { uint8_t source; struct element_info default_ie; struct element_info vendor_ie; + enum scan_priority priority; bool half_rate; bool quarter_rate; bool strict_pscan; diff --git a/os_if/linux/scan/src/wlan_cfg80211_scan.c b/os_if/linux/scan/src/wlan_cfg80211_scan.c index 3363a3917e..26928ded05 100644 --- a/os_if/linux/scan/src/wlan_cfg80211_scan.c +++ b/os_if/linux/scan/src/wlan_cfg80211_scan.c @@ -1491,6 +1491,9 @@ int wlan_cfg80211_scan(struct wlan_objmgr_vdev *vdev, if (is_p2p_scan) req->scan_req.scan_priority = SCAN_PRIORITY_HIGH; + if (params->priority != SCAN_PRIORITY_COUNT) + req->scan_req.scan_priority = params->priority; + if (request->ie_len) extra_ie_len = request->ie_len; else if (params->default_ie.ptr && params->default_ie.len) diff --git a/umac/scan/core/src/wlan_scan_manager.c b/umac/scan/core/src/wlan_scan_manager.c index 4d8e1a807d..c71a45e20f 100644 --- a/umac/scan/core/src/wlan_scan_manager.c +++ b/umac/scan/core/src/wlan_scan_manager.c @@ -956,12 +956,13 @@ scm_scan_req_update_params(struct wlan_objmgr_vdev *vdev, ucfg_scan_init_chanlist_params(req, 0, NULL, NULL); scm_update_channel_list(req, scan_obj); - scm_debug("dwell time: active %d, passive %d, repeat_probe_time %d n_probes %d flags_ext %x, wide_bw_scan: %d", + scm_debug("dwell time: active %d, passive %d, repeat_probe_time %d n_probes %d flags_ext %x, wide_bw_scan: %d priority: %d", req->scan_req.dwell_time_active, req->scan_req.dwell_time_passive, req->scan_req.repeat_probe_time, req->scan_req.n_probes, req->scan_req.scan_ctrl_flags_ext, - req->scan_req.scan_f_wide_band); + req->scan_req.scan_f_wide_band, + req->scan_req.scan_priority); } QDF_STATUS