mirror of
https://github.com/lwfinger/rtl8188eu.git
synced 2025-05-08 14:33:05 +00:00
rtl8188eu: Fix problem where device is not up on module load
Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
This commit is contained in:
parent
bc8ca96401
commit
0b659bd591
3 changed files with 43 additions and 59 deletions
|
@ -5059,7 +5059,7 @@ int rtw_wdev_alloc(struct adapter *padapter, struct device *dev)
|
|||
wdev->wiphy = wiphy;
|
||||
wdev->netdev = pnetdev;
|
||||
/* wdev->iftype = NL80211_IFTYPE_STATION; */
|
||||
wdev->iftype = NL80211_IFTYPE_MONITOR; /* for rtw_setopmode_cmd() in cfg80211_rtw_change_iface() */
|
||||
wdev->iftype = NL80211_IFTYPE_STATION; /* for rtw_setopmode_cmd() in cfg80211_rtw_change_iface() */
|
||||
padapter->rtw_wdev = wdev;
|
||||
pnetdev->ieee80211_ptr = wdev;
|
||||
|
||||
|
|
|
@ -603,25 +603,32 @@ void rtw_unregister_netdevs(struct dvobj_priv *dvobj)
|
|||
{
|
||||
int i;
|
||||
struct adapter *padapter = NULL;
|
||||
struct net_device *pnetdev = NULL;
|
||||
|
||||
for (i=0;i<dvobj->iface_nums;i++)
|
||||
{
|
||||
struct net_device *pnetdev = NULL;
|
||||
if (!dvobj || dvobj->iface_nums == 0)
|
||||
return;
|
||||
|
||||
for (i=0;i<dvobj->iface_nums;i++) {
|
||||
padapter = dvobj->padapters[i];
|
||||
|
||||
if (padapter == NULL)
|
||||
continue;
|
||||
|
||||
pnetdev = padapter->pnetdev;
|
||||
if (!pnetdev)
|
||||
continue;
|
||||
|
||||
if ((padapter->DriverState != DRIVER_DISAPPEAR) && pnetdev) {
|
||||
if (padapter->DriverState != DRIVER_DISAPPEAR) {
|
||||
struct wireless_dev *wdev = padapter->rtw_wdev;
|
||||
|
||||
wdev->current_bss = NULL;
|
||||
pnetdev->reg_state = NETREG_REGISTERED;
|
||||
unregister_netdev(pnetdev); /* will call netdev_close() */
|
||||
rtw_proc_remove_one(pnetdev);
|
||||
}
|
||||
|
||||
rtw_wdev_unregister(padapter->rtw_wdev);
|
||||
if (padapter->rtw_wdev)
|
||||
rtw_wdev_unregister(padapter->rtw_wdev);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue