brcmfmac: allow scanning to be suppressed in the driver
During the DHCP protocol exchange it is benificial to suppress scan requests which may decrease time to complete DHCP protocol. Reviewed-by: Hante Meuleman <meuleman@broadcom.com> Reviewed-by: Pieter-Paul Giesberts <pieterpg@broadcom.com> Signed-off-by: Arend van Spriel <arend@broadcom.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
176f0e841e
commit
1687eee235
2 changed files with 13 additions and 1 deletions
|
@ -856,6 +856,11 @@ brcmf_cfg80211_escan(struct wiphy *wiphy, struct brcmf_cfg80211_vif *vif,
|
||||||
cfg->scan_status);
|
cfg->scan_status);
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
if (test_bit(BRCMF_SCAN_STATUS_SUPPRESS, &cfg->scan_status)) {
|
||||||
|
brcmf_err("Scanning suppressed: status (%lu)\n",
|
||||||
|
cfg->scan_status);
|
||||||
|
return -EAGAIN;
|
||||||
|
}
|
||||||
if (test_bit(BRCMF_VIF_STATUS_CONNECTING, &ifp->vif->sme_state)) {
|
if (test_bit(BRCMF_VIF_STATUS_CONNECTING, &ifp->vif->sme_state)) {
|
||||||
brcmf_err("Connecting: status (%lu)\n", ifp->vif->sme_state);
|
brcmf_err("Connecting: status (%lu)\n", ifp->vif->sme_state);
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
|
@ -3017,6 +3022,11 @@ brcmf_cfg80211_sched_scan_start(struct wiphy *wiphy,
|
||||||
brcmf_err("Scanning already: status (%lu)\n", cfg->scan_status);
|
brcmf_err("Scanning already: status (%lu)\n", cfg->scan_status);
|
||||||
return -EAGAIN;
|
return -EAGAIN;
|
||||||
}
|
}
|
||||||
|
if (test_bit(BRCMF_SCAN_STATUS_SUPPRESS, &cfg->scan_status)) {
|
||||||
|
brcmf_err("Scanning suppressed: status (%lu)\n",
|
||||||
|
cfg->scan_status);
|
||||||
|
return -EAGAIN;
|
||||||
|
}
|
||||||
|
|
||||||
if (!request->n_ssids || !request->n_match_sets) {
|
if (!request->n_ssids || !request->n_match_sets) {
|
||||||
brcmf_err("Invalid sched scan req!! n_ssids:%d\n",
|
brcmf_err("Invalid sched scan req!! n_ssids:%d\n",
|
||||||
|
|
|
@ -77,14 +77,16 @@
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* enum brcmf_scan_status - dongle scan status
|
* enum brcmf_scan_status - scan engine status
|
||||||
*
|
*
|
||||||
* @BRCMF_SCAN_STATUS_BUSY: scanning in progress on dongle.
|
* @BRCMF_SCAN_STATUS_BUSY: scanning in progress on dongle.
|
||||||
* @BRCMF_SCAN_STATUS_ABORT: scan being aborted on dongle.
|
* @BRCMF_SCAN_STATUS_ABORT: scan being aborted on dongle.
|
||||||
|
* @BRCMF_SCAN_STATUS_SUPPRESS: scanning is suppressed in driver.
|
||||||
*/
|
*/
|
||||||
enum brcmf_scan_status {
|
enum brcmf_scan_status {
|
||||||
BRCMF_SCAN_STATUS_BUSY,
|
BRCMF_SCAN_STATUS_BUSY,
|
||||||
BRCMF_SCAN_STATUS_ABORT,
|
BRCMF_SCAN_STATUS_ABORT,
|
||||||
|
BRCMF_SCAN_STATUS_SUPPRESS,
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Add table
Reference in a new issue