diff options
| author | Ingo Molnar <mingo@elte.hu> | 2010-09-15 10:27:31 +0200 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2010-09-15 10:27:31 +0200 |
| commit | 3aabae7d9dfaed60effe93662f02c19bafc18537 (patch) | |
| tree | af94cdd69add07601d9f3f5988dfc1dc255e3886 /drivers/net/b44.c | |
| parent | tracing: Remove leftover FTRACE_ENABLE/DISABLE_MCOUNT enums (diff) | |
| parent | tracing: Fix reading of set_ftrace_filter across lists (diff) | |
| download | linux-3aabae7d9dfaed60effe93662f02c19bafc18537.tar.gz linux-3aabae7d9dfaed60effe93662f02c19bafc18537.zip | |
Merge branch 'tip/perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/core
Diffstat (limited to 'drivers/net/b44.c')
| -rw-r--r-- | drivers/net/b44.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/b44.c b/drivers/net/b44.c index 37617abc1647..1e620e287ae0 100644 --- a/drivers/net/b44.c +++ b/drivers/net/b44.c @@ -848,6 +848,15 @@ static int b44_poll(struct napi_struct *napi, int budget) b44_tx(bp); /* spin_unlock(&bp->tx_lock); */ } + if (bp->istat & ISTAT_RFO) { /* fast recovery, in ~20msec */ + bp->istat &= ~ISTAT_RFO; + b44_disable_ints(bp); + ssb_device_enable(bp->sdev, 0); /* resets ISTAT_RFO */ + b44_init_rings(bp); + b44_init_hw(bp, B44_FULL_RESET_SKIP_PHY); + netif_wake_queue(bp->dev); + } + spin_unlock_irqrestore(&bp->lock, flags); work_done = 0; |
