|
@@ -281,21 +281,12 @@ void scm_add_all_valid_6g_channels(struct wlan_objmgr_pdev *pdev,
|
|
|
uint8_t i, j;
|
|
|
enum channel_enum freq_idx;
|
|
|
struct regulatory_channel *cur_chan_list;
|
|
|
- bool is_6g_ch_present = false, found;
|
|
|
+ bool found;
|
|
|
QDF_STATUS status;
|
|
|
uint8_t temp_num_chan = 0;
|
|
|
|
|
|
- for (i = 0; i < chan_list->num_chan; i++) {
|
|
|
- if (wlan_reg_is_6ghz_chan_freq(chan_list->chan[i].freq)) {
|
|
|
- scm_debug("At least one 6G chan present in scan req:%d",
|
|
|
- chan_list->chan[i].freq);
|
|
|
- is_6g_ch_present = true;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (!is_6g_ch_present && !is_colocated_6ghz_scan_enabled) {
|
|
|
- scm_debug("Neither 6G chan present nor flag set in scan req");
|
|
|
+ if (!is_colocated_6ghz_scan_enabled) {
|
|
|
+ scm_debug("flag is not set in scan req");
|
|
|
return;
|
|
|
}
|
|
|
|
|
@@ -493,7 +484,16 @@ void scm_add_channel_flags(struct wlan_objmgr_vdev *vdev,
|
|
|
scm_set_rnr_flag_non_psc_6g_ch(&chan_list->chan[0],
|
|
|
num_scan_chan);
|
|
|
}
|
|
|
- break;
|
|
|
+ fallthrough;
|
|
|
+ /* Even when the scan mode is SCAN_MODE_6G_PSC_DUTY_CYCLE or
|
|
|
+ * SCAN_MODE_6G_ALL_DUTY_CYCLE, it is better to add other 6 GHz
|
|
|
+ * channels to the channel list and set the bit
|
|
|
+ * FLAG_SCAN_ONLY_IF_RNR_FOUND for these new channels.
|
|
|
+ * This can help to find the APs which have co-located APs in
|
|
|
+ * given 2 GHz/5 GHz channels.
|
|
|
+ * Let it fallthrough as this is already addressed through the
|
|
|
+ * scan mode SCAN_MODE_6G_ALL_CHANNEL.
|
|
|
+ */
|
|
|
case SCAN_MODE_6G_ALL_CHANNEL:
|
|
|
/*
|
|
|
* When the ini is set to SCAN_MODE_6G_ALL_CHANNEL,
|