summaryrefslogtreecommitdiffstats
path: root/NetworkPkg
diff options
context:
space:
mode:
authorHeng Luo <heng.luo@intel.com>2024-01-03 10:35:41 +0800
committermergify[bot] <37929162+mergify[bot]@users.noreply.github.com>2024-01-15 03:49:30 +0000
commitc15a899d835ce9d06177be6db95ee8e8aeda5891 (patch)
tree1ec801a67edeb2bf9c1d23e0383e049dd12649b0 /NetworkPkg
parentf5b91c60ef24eecf5702e061dd7fd700943405b2 (diff)
downloadedk2-c15a899d835ce9d06177be6db95ee8e8aeda5891.tar.gz
edk2-c15a899d835ce9d06177be6db95ee8e8aeda5891.tar.bz2
edk2-c15a899d835ce9d06177be6db95ee8e8aeda5891.zip
NetworkPkg: Triger regularly scan only if not connect to AP
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4605 When UEFI Wi-Fi is in BSS connected state, the platform is considered as a static and Wi-Fi roaming support is not needed. Wifi connection manager should not initiate Scan requests in this state affect BSS client connectivity and must be avoided. Triger regularly scan only if not connect to AP. Signed-off-by: Heng Luo <heng.luo@intel.com> Cc: Saloni Kasbekar <saloni.kasbekar@intel.com> Cc: Zachary Clark-williams <zachary.clark-williams@intel.com> Reviewed-by: Saloni Kasbekar <saloni.kasbekar@intel.com>
Diffstat (limited to 'NetworkPkg')
-rw-r--r--NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrImpl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrImpl.c b/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrImpl.c
index d1182e52bd..4c5460b65c 100644
--- a/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrImpl.c
+++ b/NetworkPkg/WifiConnectionManagerDxe/WifiConnectionMgrImpl.c
@@ -1506,8 +1506,8 @@ WifiMgrOnTimerTick (
}
Nic->ScanTickTime++;
- if (((Nic->ScanTickTime > WIFI_SCAN_FREQUENCY) || Nic->OneTimeScanRequest) &&
- (Nic->ScanState == WifiMgrScanFinished))
+ if ((((Nic->ScanTickTime > WIFI_SCAN_FREQUENCY) && (Nic->ConnectState != WifiMgrConnectedToAp)) ||
+ Nic->OneTimeScanRequest) && (Nic->ScanState == WifiMgrScanFinished))
{
Nic->OneTimeScanRequest = FALSE;
Nic->ScanTickTime = 0;