diff options
author | David Woodhouse <dwmw2@infradead.org> | 2008-05-20 17:43:31 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-05-22 03:47:40 +0200 |
commit | edf5dabfa86163d589041cccf607b41a7033e9b0 (patch) | |
tree | eede8c645f726374c512c9cbaadcf36148ae3adf /drivers/net/wireless/libertas/main.c | |
parent | libertas: sysfs interface for accessing non-volatile configuration (diff) | |
download | linux-edf5dabfa86163d589041cccf607b41a7033e9b0.tar.xz linux-edf5dabfa86163d589041cccf607b41a7033e9b0.zip |
libertas: Add reset_card() callback to hardware driver
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/libertas/main.c')
-rw-r--r-- | drivers/net/wireless/libertas/main.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/wireless/libertas/main.c b/drivers/net/wireless/libertas/main.c index db246d0a1eda..804da368416f 100644 --- a/drivers/net/wireless/libertas/main.c +++ b/drivers/net/wireless/libertas/main.c @@ -787,6 +787,11 @@ static int lbs_thread(void *data) le16_to_cpu(cmdnode->cmdbuf->command)); lbs_complete_command(priv, cmdnode, -ETIMEDOUT); priv->nr_retries = 0; + if (priv->reset_card) { + spin_unlock_irq(&priv->driver_lock); + priv->reset_card(priv); + spin_lock_irq(&priv->driver_lock); + } } else { priv->cur_cmd = NULL; lbs_pr_info("requeueing command %x due to timeout (#%d)\n", |