diff options
author | Jussi Kivilinna <jussi.kivilinna@mbnet.fi> | 2011-01-31 21:49:52 +0300 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-02-05 00:29:51 +0300 |
commit | a0fd751f0924e0eefa36592f1d358c4ab18b44c5 (patch) | |
tree | 35505bb17a07f66dc18b0c456bd5086efe01918c /drivers/net/wireless/zd1211rw/zd_mac.h | |
parent | 212e1a5b9df0a51d54d7841467f3f01baa1b82f1 (diff) | |
download | linux-a0fd751f0924e0eefa36592f1d358c4ab18b44c5.tar.xz |
zd1211rw: add TX watchdog and device resetting
When doing transfers at high speed for long time, tx queue can freeze. So add
tx watchdog. TX-watchdog checks for locked tx-urbs and reset hardware when
such is detected. Merely unlinking urb was not enough, device have to be
reseted. Hw settings are restored so that any open link will stay on after
reset.
Signed-off-by: Jussi Kivilinna <jussi.kivilinna@mbnet.fi>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/zd1211rw/zd_mac.h')
-rw-r--r-- | drivers/net/wireless/zd1211rw/zd_mac.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/wireless/zd1211rw/zd_mac.h b/drivers/net/wireless/zd1211rw/zd_mac.h index c0f239e40bcd..f8c93c3fe755 100644 --- a/drivers/net/wireless/zd1211rw/zd_mac.h +++ b/drivers/net/wireless/zd1211rw/zd_mac.h @@ -314,6 +314,8 @@ int zd_mac_rx(struct ieee80211_hw *hw, const u8 *buffer, unsigned int length); void zd_mac_tx_failed(struct urb *urb); void zd_mac_tx_to_dev(struct sk_buff *skb, int error); +int zd_op_start(struct ieee80211_hw *hw); +void zd_op_stop(struct ieee80211_hw *hw); int zd_restore_settings(struct zd_mac *mac); #ifdef DEBUG |