ThunderLAN is noisy and impolite when sharing an interrupt with another
device.
Apply by doing:
cd /usr/src
patch -p0 < 016_tl.patch
And then rebuild your kernel.
Index: sys/dev/pci/if_tl.c
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_tl.c,v
retrieving revision 1.13
diff -u -r1.13 if_tl.c
--- if_tl.c 2000/09/21 04:03:52 1.13
+++ if_tl.c 2000/12/23 06:16:34
@@ -1773,10 +1773,6 @@
switch(ints) {
case (TL_INTR_INVALID):
-#ifdef DIAGNOSTIC
- if (sc->tl_empty_intr == 0)
- printf("tl%d: got an invalid interrupt!\n", sc->tl_unit);
-#endif
/* Re-enable interrupts but don't ack this one. */
CMD_PUT(sc, type);
r = 0;
@@ -2648,9 +2644,7 @@
/*
* Attempt to clear stray interrupts
*/
- sc->tl_empty_intr = 1;
tl_intr((void *)sc);
- sc->tl_empty_intr = 0;
/*
* Attach us everywhere.
Index: sys/dev/pci/if_tlreg.h
===================================================================
RCS file: /cvs/src/sys/dev/pci/if_tlreg.h,v
retrieving revision 1.4
diff -u -r1.4 if_tlreg.h
--- if_tlreg.h 1999/09/13 20:45:26 1.4
+++ if_tlreg.h 2000/12/23 06:16:39
@@ -122,7 +122,6 @@
u_int8_t tl_ctlr; /* chip number */
u_int8_t tl_unit; /* interface number */
u_int8_t tl_eeaddr;
- u_int8_t tl_empty_intr; /* expecting empty interrupt */
u_int8_t tl_phy_addr; /* PHY address */
u_int8_t tl_tx_pend; /* TX pending */
u_int8_t tl_want_auto; /* autoneg scheduled */