qcacmn: scan all channels in A/G if 0 channels provided
When wide band scan is enabled, host configures all possible channels with all possible phy modes. In his case if a scan is invoked with 0 channels, target will end up scanning each channel with all possible phy modes which increases scan time exponentially. If wide band scan is enabled and scan is issues with 0 channels, configure target to scan all available channels only in 11A/11G mode. Change-Id: I7c678ccf43c3238aacbfc59cc7e7bd19763453cc CRs-Fixed: 2165025
Šī revīzija ir iekļauta:

revīziju iesūtīja
snandini

vecāks
1b5e807809
revīzija
7dd49fec17
@@ -1119,6 +1119,7 @@ int wlan_cfg80211_scan(struct wlan_objmgr_pdev *pdev,
|
||||
struct wlan_objmgr_psoc *psoc;
|
||||
wlan_scan_id scan_id;
|
||||
bool is_p2p_scan = false;
|
||||
enum wlan_band band;
|
||||
struct net_device *netdev = NULL;
|
||||
|
||||
/* Get the vdev object */
|
||||
@@ -1277,6 +1278,13 @@ int wlan_cfg80211_scan(struct wlan_objmgr_pdev *pdev,
|
||||
len += snprintf(chl + len, 5, "%d ", channel);
|
||||
req->scan_req.chan_list.chan[num_chan].freq =
|
||||
wlan_chan_to_freq(channel);
|
||||
band = util_scan_scm_chan_to_band(channel);
|
||||
if (band == WLAN_BAND_2_4_GHZ)
|
||||
req->scan_req.chan_list.chan[num_chan].phymode =
|
||||
SCAN_PHY_MODE_11G;
|
||||
else
|
||||
req->scan_req.chan_list.chan[num_chan].phymode =
|
||||
SCAN_PHY_MODE_11A;
|
||||
num_chan++;
|
||||
}
|
||||
cfg80211_notice("Channel-List: %s", chl);
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user