patch-2.1.7 linux/drivers/net/tulip.c
Next file: linux/drivers/scsi/aha1740.c
Previous file: linux/drivers/net/soundmodem.c
Back to the patch index
Back to the overall index
-  Lines: 26
-  Date:
Fri Nov  1 13:58:44 1996
-  Orig file: 
v2.1.6/linux/drivers/net/tulip.c
-  Orig date: 
Thu Oct 10 19:10:56 1996
diff -u --recursive --new-file v2.1.6/linux/drivers/net/tulip.c linux/drivers/net/tulip.c
@@ -1133,6 +1133,25 @@
 		} while (++i < 15);
 
 		/* Now add this frame to the Tx list. */
+		{
+			unsigned long flags;
+			unsigned int entry;
+			
+			save_flags(flags); cli();
+			entry = tp->cur_tx++ % TX_RING_SIZE;
+			tp->dirty_tx++;
+			restore_flags(flags);
+
+			tp->tx_skbuff[entry] = 0;
+			/* Put the setup frame on the Tx list. */
+			tp->tx_ring[entry].length = 192 |
+			      (entry == TX_RING_SIZE-1 ? 0x0a000000 : 0x08000000);
+			tp->tx_ring[entry].buffer1 = virt_to_bus((char *)tp->setup_frame);
+			tp->tx_ring[entry].buffer2 = 0;
+			tp->tx_ring[entry].status = TRING_OWN;
+			/* Trigger an immediate transmit demand. */
+			tio_write(TPOLL_TRIGGER, CSR1);
+		}
 	}
 }
 
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov