Commit f7d120d9 authored by Chris Chiu's avatar Chris Chiu Committed by Greg Kroah-Hartman

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: default avatarChris Chiu <chiu@endlessm.com>
Link: https://lore.kernel.org/r/20190731103517.66903-1-chiu@endlessm.comSigned-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 9a675a13
...@@ -2024,8 +2024,6 @@ static int cfg80211_rtw_leave_ibss(struct wiphy *wiphy, struct net_device *ndev) ...@@ -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)); DBG_871X(FUNC_NDEV_FMT"\n", FUNC_NDEV_ARG(ndev));
padapter->mlmepriv.not_indic_disco = true;
old_type = rtw_wdev->iftype; old_type = rtw_wdev->iftype;
rtw_set_to_roam(padapter, 0); rtw_set_to_roam(padapter, 0);
...@@ -2047,8 +2045,6 @@ static int cfg80211_rtw_leave_ibss(struct wiphy *wiphy, struct net_device *ndev) ...@@ -2047,8 +2045,6 @@ static int cfg80211_rtw_leave_ibss(struct wiphy *wiphy, struct net_device *ndev)
} }
leave_ibss: leave_ibss:
padapter->mlmepriv.not_indic_disco = false;
return 0; return 0;
} }
...@@ -2246,8 +2242,6 @@ static int cfg80211_rtw_disconnect(struct wiphy *wiphy, struct net_device *ndev, ...@@ -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)); DBG_871X(FUNC_NDEV_FMT"\n", FUNC_NDEV_ARG(ndev));
padapter->mlmepriv.not_indic_disco = true;
rtw_set_to_roam(padapter, 0); rtw_set_to_roam(padapter, 0);
rtw_scan_abort(padapter); rtw_scan_abort(padapter);
...@@ -2261,8 +2255,6 @@ static int cfg80211_rtw_disconnect(struct wiphy *wiphy, struct net_device *ndev, ...@@ -2261,8 +2255,6 @@ static int cfg80211_rtw_disconnect(struct wiphy *wiphy, struct net_device *ndev,
rtw_free_assoc_resources(padapter, 1); rtw_free_assoc_resources(padapter, 1);
rtw_pwr_wakeup(padapter); rtw_pwr_wakeup(padapter);
padapter->mlmepriv.not_indic_disco = false;
DBG_871X(FUNC_NDEV_FMT" return 0\n", FUNC_NDEV_ARG(ndev)); DBG_871X(FUNC_NDEV_FMT" return 0\n", FUNC_NDEV_ARG(ndev));
return 0; return 0;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment