Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 279318
b: refs/heads/master
c: 3fb1d8d
h: refs/heads/master
v: v3
  • Loading branch information
Franky Lin authored and John W. Linville committed Dec 19, 2011
1 parent 8f41489 commit 469a0e9
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 13 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: b01a6b3ca714e2bb86ee387aee487c7360363c93
refs/heads/master: 3fb1d8d2dad35f5094350c175b778b78df894284
2 changes: 1 addition & 1 deletion trunk/drivers/net/wireless/brcm80211/brcmfmac/dhd.h
Original file line number Diff line number Diff line change
Expand Up @@ -577,6 +577,7 @@ struct brcmf_bus {
void *drvr; /* pointer to driver pub structure brcmf_pub */
enum brcmf_bus_state state;
uint maxctl; /* Max size rxctl request from proto to bus */
bool drvr_up; /* Status flag of driver up/down */
};

/* Forward decls for struct brcmf_pub (see below) */
Expand All @@ -594,7 +595,6 @@ struct brcmf_pub {
struct device *dev; /* fullmac dongle device pointer */

/* Internal brcmf items */
bool up; /* Driver up/down (to OS) */
bool txoff; /* Transmit flow-controlled */
uint hdrlen; /* Total BRCMF header length (proto + bus) */
uint rxsz; /* Rx buffer size bus module should use */
Expand Down
18 changes: 9 additions & 9 deletions trunk/drivers/net/wireless/brcm80211/brcmfmac/dhd_linux.c
Original file line number Diff line number Diff line change
Expand Up @@ -273,7 +273,7 @@ static void brcmf_netdev_set_multicast_list(struct net_device *ndev)
int brcmf_sendpkt(struct brcmf_pub *drvr, int ifidx, struct sk_buff *pktbuf)
{
/* Reject if down */
if (!drvr->up || (drvr->bus_if->state == BRCMF_BUS_DOWN))
if (!drvr->bus_if->drvr_up || (drvr->bus_if->state == BRCMF_BUS_DOWN))
return -ENODEV;

/* Update multicast statistic */
Expand Down Expand Up @@ -303,10 +303,10 @@ static int brcmf_netdev_start_xmit(struct sk_buff *skb, struct net_device *ndev)
brcmf_dbg(TRACE, "Enter\n");

/* Reject if down */
if (!drvr->up ||
if (!drvr->bus_if->drvr_up ||
(drvr->bus_if->state == BRCMF_BUS_DOWN)) {
brcmf_dbg(ERROR, "xmit rejected pub.up=%d state=%d\n",
drvr->up,
brcmf_dbg(ERROR, "xmit rejected drvup=%d state=%d\n",
drvr->bus_if->drvr_up,
drvr->bus_if->state);
netif_stop_queue(ndev);
return -ENODEV;
Expand Down Expand Up @@ -487,7 +487,7 @@ static struct net_device_stats *brcmf_netdev_get_stats(struct net_device *ndev)

brcmf_dbg(TRACE, "Enter\n");

if (drvr->up)
if (drvr->bus_if->drvr_up)
/* Use the protocol to get dongle stats */
brcmf_proto_dstats(drvr);

Expand Down Expand Up @@ -633,7 +633,7 @@ static int brcmf_ethtool(struct brcmf_pub *drvr, void __user *uaddr)
}

/* otherwise, require dongle to be up */
else if (!drvr->up) {
else if (!drvr->bus_if->drvr_up) {
brcmf_dbg(ERROR, "dongle is not up\n");
return -ENODEV;
}
Expand Down Expand Up @@ -785,11 +785,11 @@ static int brcmf_netdev_stop(struct net_device *ndev)

brcmf_dbg(TRACE, "Enter\n");
brcmf_cfg80211_down(drvr->config);
if (drvr->up == 0)
if (drvr->bus_if->drvr_up == 0)
return 0;

/* Set state and stop OS transmissions */
drvr->up = 0;
drvr->bus_if->drvr_up = 0;
netif_stop_queue(ndev);

return 0;
Expand Down Expand Up @@ -826,7 +826,7 @@ static int brcmf_netdev_open(struct net_device *ndev)
}
/* Allow transmit calls */
netif_start_queue(ndev);
drvr->up = 1;
drvr->bus_if->drvr_up = 1;
if (brcmf_cfg80211_up(drvr->config)) {
brcmf_dbg(ERROR, "failed to bring up cfg80211\n");
return -1;
Expand Down
5 changes: 3 additions & 2 deletions trunk/drivers/net/wireless/brcm80211/brcmfmac/dhd_sdio.c
Original file line number Diff line number Diff line change
Expand Up @@ -2295,7 +2295,8 @@ static uint brcmf_sdbrcm_sendfromq(struct brcmf_sdio *bus, uint maxframes)
}

/* Deflow-control stack if needed */
if (drvr->up && (drvr->bus_if->state == BRCMF_BUS_DATA) &&
if (drvr->bus_if->drvr_up &&
(drvr->bus_if->state == BRCMF_BUS_DATA) &&
drvr->txoff && (pktq_len(&bus->txq) < TXLOW))
brcmf_txflowcontrol(bus->sdiodev->dev, 0, OFF);

Expand Down Expand Up @@ -2974,7 +2975,7 @@ static int brcmf_sdbrcm_downloadvars(struct brcmf_sdio *bus, void *arg, int len)
brcmf_dbg(TRACE, "Enter\n");

/* Basic sanity checks */
if (bus->drvr->up) {
if (bus->sdiodev->bus_if->drvr_up) {
bcmerror = -EISCONN;
goto err;
}
Expand Down

0 comments on commit 469a0e9

Please sign in to comment.