Commit dcede4b8 authored by Arend van Spriel's avatar Arend van Spriel Committed by John W. Linville

brcmfmac: start netif queues only when setup is completed successful

Moving the call to netif_start_queue() after brcmf_cfg80211_up() is
completed successful. If not return -EIO instead of -1 as that results
in 'Operation not permitted' which can put user on wrong track.
Reviewed-by: default avatarHante Meuleman <meuleman@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent cf458287
...@@ -769,7 +769,6 @@ static int brcmf_netdev_open(struct net_device *ndev) ...@@ -769,7 +769,6 @@ static int brcmf_netdev_open(struct net_device *ndev)
struct brcmf_pub *drvr = ifp->drvr; struct brcmf_pub *drvr = ifp->drvr;
struct brcmf_bus *bus_if = drvr->bus_if; struct brcmf_bus *bus_if = drvr->bus_if;
u32 toe_ol; u32 toe_ol;
s32 ret = 0;
brcmf_dbg(TRACE, "Enter, idx=%d\n", ifp->bssidx); brcmf_dbg(TRACE, "Enter, idx=%d\n", ifp->bssidx);
...@@ -788,14 +787,14 @@ static int brcmf_netdev_open(struct net_device *ndev) ...@@ -788,14 +787,14 @@ static int brcmf_netdev_open(struct net_device *ndev)
else else
ndev->features &= ~NETIF_F_IP_CSUM; ndev->features &= ~NETIF_F_IP_CSUM;
/* Allow transmit calls */
netif_start_queue(ndev);
if (brcmf_cfg80211_up(ndev)) { if (brcmf_cfg80211_up(ndev)) {
brcmf_err("failed to bring up cfg80211\n"); brcmf_err("failed to bring up cfg80211\n");
return -1; return -EIO;
} }
return ret; /* Allow transmit calls */
netif_start_queue(ndev);
return 0;
} }
static const struct net_device_ops brcmf_netdev_ops_pri = { static const struct net_device_ops brcmf_netdev_ops_pri = {
......
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