staging: rtl8723bs: indicate disconnection when disconnecting

The Realtek RTL8723BS only connects successfully at the very first
time, then it always fails attempting to switch to another AP. No
authentication/association observed from the air capture for each
attempt due to the cfg80211 believes the device is still connected.

Fix this by forcing to indicate the disconnection events during
disconnection so the cfg80211_connect can connect to a different
AP without problem.

Signed-off-by: Chris Chiu <chiu@endlessm.com>
Link: https://lore.kernel.org/r/20190731103517.66903-1-chiu@endlessm.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Chris Chiu
2019-07-31 18:35:17 +08:00
committed by Greg Kroah-Hartman
parent 9a675a13c3
commit f7d120d9e0

View File

@@ -2024,8 +2024,6 @@ static int cfg80211_rtw_leave_ibss(struct wiphy *wiphy, struct net_device *ndev)
DBG_871X(FUNC_NDEV_FMT"\n", FUNC_NDEV_ARG(ndev));
padapter->mlmepriv.not_indic_disco = true;
old_type = rtw_wdev->iftype;
rtw_set_to_roam(padapter, 0);
@@ -2047,8 +2045,6 @@ static int cfg80211_rtw_leave_ibss(struct wiphy *wiphy, struct net_device *ndev)
}
leave_ibss:
padapter->mlmepriv.not_indic_disco = false;
return 0;
}
@@ -2246,8 +2242,6 @@ static int cfg80211_rtw_disconnect(struct wiphy *wiphy, struct net_device *ndev,
DBG_871X(FUNC_NDEV_FMT"\n", FUNC_NDEV_ARG(ndev));
padapter->mlmepriv.not_indic_disco = true;
rtw_set_to_roam(padapter, 0);
rtw_scan_abort(padapter);
@@ -2261,8 +2255,6 @@ static int cfg80211_rtw_disconnect(struct wiphy *wiphy, struct net_device *ndev,
rtw_free_assoc_resources(padapter, 1);
rtw_pwr_wakeup(padapter);
padapter->mlmepriv.not_indic_disco = false;
DBG_871X(FUNC_NDEV_FMT" return 0\n", FUNC_NDEV_ARG(ndev));
return 0;
}