|
@@ -476,6 +476,13 @@ static void lbs_tx_timeout(struct net_device *dev)
|
|
to kick it somehow? */
|
|
to kick it somehow? */
|
|
lbs_host_to_card_done(priv);
|
|
lbs_host_to_card_done(priv);
|
|
|
|
|
|
|
|
+ /* More often than not, this actually happens because the
|
|
|
|
+ firmware has crapped itself -- rather than just a very
|
|
|
|
+ busy medium. So send a harmless command, and if/when
|
|
|
|
+ _that_ times out, we'll kick it in the head. */
|
|
|
|
+ lbs_prepare_and_send_command(priv, CMD_802_11_RSSI, 0,
|
|
|
|
+ 0, 0, NULL);
|
|
|
|
+
|
|
lbs_deb_leave(LBS_DEB_TX);
|
|
lbs_deb_leave(LBS_DEB_TX);
|
|
}
|
|
}
|
|
|
|
|