Changes to try to fix stalling.

This commit is contained in:
mark 2000-01-28 08:37:44 +00:00
parent 9631bc8b62
commit 570becebdd
2 changed files with 6 additions and 3 deletions

View File

@ -241,6 +241,7 @@ int p80211knetdev_stop( netdevice_t *netdev )
/* To make sure noone tries to send us something, just force */
/* tbusy to true */
netdev->tbusy = 1;
netdev->start = 0;
DBFEXIT;
return result;
@ -326,7 +327,6 @@ int p80211knetdev_hard_start_xmit( struct sk_buff *skb, netdevice_t *netdev)
if ( test_and_set_bit(0, (void*)&(netdev->tbusy)) != 0 ) {
/* We've been called w/ tbusy set, has the tx */
/* path stalled? */
netdev->tbusy = 0;
WLAN_LOG_DEBUG0(1, "called when tbusy set\n");
result = 1;
} else {
@ -374,14 +374,14 @@ int p80211knetdev_hard_start_xmit( struct sk_buff *skb, netdevice_t *netdev)
} else if ( txresult == 2 ) {
/* alloc failure, drop frame */
WLAN_LOG_DEBUG0(3, "txframe returned alloc_fail\n");
result = 0;
netdev->tbusy = 0;
result = 1;
/* p80211pb_free(pb); driver's responsibility */
} else {
/* buffer full or queue busy */
WLAN_LOG_DEBUG0(3, "txframe returned full or busy\n");
result = 1;
netdev->tbusy = 0;
result = 1;
/* p80211pb_free(pb); driver's responsibility */
}
}

View File

@ -1037,6 +1037,9 @@ int hfa384x_cmd_aux_disable(hfa384x_t *hw)
DBFENTER;
/* Set the aux enable in the Control register */
outw(0, HFA384x_PARAM0(hw->iobase));
outw(0, HFA384x_PARAM1(hw->iobase));
outw(0, HFA384x_PARAM2(hw->iobase));
outw(host2hfa384x_16(HFA384x_CONTROL_AUX_DODISABLE),
HFA384x_CONTROL(hw->iobase));