patch-2.2.11 linux/drivers/net/cs89x0.c
Next file: linux/drivers/net/cs89x0.h
Previous file: linux/drivers/net/cosa.c
Back to the patch index
Back to the overall index
- Lines: 32
- Date:
Mon Aug 9 12:05:05 1999
- Orig file:
v2.2.10/linux/drivers/net/cs89x0.c
- Orig date:
Mon Jun 7 16:19:58 1999
diff -u --recursive --new-file v2.2.10/linux/drivers/net/cs89x0.c linux/drivers/net/cs89x0.c
@@ -30,7 +30,7 @@
*/
static char *version =
-"cs89x0.c:v1.02 11/26/96 Russell Nelson <nelson@crynwr.com>\n";
+"cs89x0.c:v1.03 11/26/96 Russell Nelson <nelson@crynwr.com>\n";
/* ======================= configure the driver here ======================= */
@@ -306,7 +306,7 @@
else if (get_eeprom_data(dev, START_EEPROM_DATA,CHKSUM_LEN,eeprom_buff) < 0) {
printk("\ncs89x0: EEPROM read failed, relying on command line.\n");
} else if (get_eeprom_cksum(START_EEPROM_DATA,CHKSUM_LEN,eeprom_buff) < 0) {
- printk("\ncs89x0: EEPROM checksum bad, relyong on command line\n");
+ printk("\ncs89x0: EEPROM checksum bad, relying on command line\n");
} else {
/* get transmission control word but keep the autonegotiation bits */
if (!lp->auto_neg_cnf) lp->auto_neg_cnf = eeprom_buff[AUTO_NEG_CNF_OFFSET/2];
@@ -843,6 +843,13 @@
lp->send_underrun++;
if (lp->send_underrun == 3) lp->send_cmd = TX_AFTER_381;
else if (lp->send_underrun == 6) lp->send_cmd = TX_AFTER_ALL;
+ /* transmit cycle is done, although
+ frame wasn't transmitted - this
+ avoids having to wait for the upper
+ layers to timeout on us, in the
+ event of a tx underrun */
+ dev->tbusy = 0;
+ mark_bh(NET_BH); /* Inform upper layers. */
}
break;
case ISQ_RX_MISS_EVENT:
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)