wifi: no need to trigger WiFi disconnection event repeatedly [1/1]
authorlibo <bo.li@amlogic.com>
Wed, 6 Jul 2022 03:06:47 +0000 (11:06 +0800)
committerBruno Martins <bgcngm@gmail.com>
Thu, 25 Apr 2024 17:39:34 +0000 (18:39 +0100)
PD#SWPL-87270

Problem:
Trigger WiFi disconnection event repeatedly

Solution:
When the upper layer triggers the disconnection of WiFi,
do not send WiFi disconnection to the upper layer.

Verify:
ohm

Signed-off-by: libo <bo.li@amlogic.com>
Change-Id: I6f1a46036c34d725fc2efaab5744114918129a11

bcmdhd.101.10.361.x/include/epivers.h
bcmdhd.101.10.361.x/wl_cfg80211.c

index 231cfeb3355e48ac071183c7ab0522df66ca9e7b..2bd2901ad304009e27aafea681cedf619b0d5624 100755 (executable)
@@ -45,7 +45,7 @@
 #elif (defined (BCMDBG_ASSERT) && !defined (BCMDBG_ASSERT_DISABLED))
 #define EPI_VERSION_STR                "101.10.361 (wlan=r892223 ASSRT)"
 #else
-#define EPI_VERSION_STR                "101.10.361.17 (wlan=r892223-20220415-1)(20220426-1)"
+#define EPI_VERSION_STR                "101.10.361.17 (wlan=r892223-20220415-1)(20220705-1)"
 #endif /* BCMINTERNAL */
 
 #endif /* _epivers_h_ */
index 2739b3e5e382a95f49376f571f9d371f22cff7f8..d64605328dab8cc8f158ea1c4ad7aa34f3b916df 100755 (executable)
@@ -12416,6 +12416,11 @@ wl_handle_link_down(struct bcm_cfg80211 *cfg, wl_assoc_status_t *as)
        }
 #endif
 
+       if (wl_get_drv_status(cfg, DISCONNECTING, ndev)) {
+               /* If DISCONNECTING bit is set, mark locally generated */
+               loc_gen = 1;
+       }
+
        CFG80211_DISCONNECTED(ndev, reason, ie_ptr, ie_len,
                loc_gen, GFP_KERNEL);
        WL_MSG(ndev->name, "Disconnect event sent to upper layer"