freebsd-dev/sys/dev
Bill Paul 22606b2001 Squelch spurious "gigabit link up" messages generated on some fiber NICs
(mainly the 3Com 3c996B/BCM5701).

For some reason that I don't fully understand, the 5701 signals PCS
encoding errors as though they were link change events, i.e. the 'link
state changed' bit in the status word of the status block is updated
and an interrupt is generated. This would cause the bge_tick() function
to be invoked and a "gigabit link up" message to be printed on the console.

To avoid this, the interrupt handler now checks the MAC status register
when a link change interrupt is triggered, and it will only call the
bge_tick() function if the 'PCS encoding error detected' bit is clear.
(This change should have no effect on copper NICs since this bit can
only ever be set in TBI mode. I do not know how it affects 5704 NICs
with a BCM8002 SERDES PHY.)

Special thanks to: Sherry Rogers at UCB for allowing me access to one
of their traffic monitor boxes so I could diagnose this problem.
2003-07-11 08:19:52 +00:00
..
aac Handle the EINPROGRESS case of bus_dmamap_load() for data buffers. 2003-07-09 21:16:23 +00:00
acpica Rewrite much of the embedded controller driver. 2003-07-10 17:22:46 +00:00
adlink Almost the finished article. 2003-04-08 19:12:48 +00:00
advansys Mega busdma API commit. 2003-07-01 15:52:06 +00:00
agp Sort the list of PCI ID's in numerical order and fix a whitespace bogon. 2003-06-27 18:17:06 +00:00
aha Mega busdma API commit. 2003-07-01 15:52:06 +00:00
ahb Mega busdma API commit. 2003-07-01 15:52:06 +00:00
aic Merge common XPT_CALC_GEOMETRY functions into a single convenience function. 2003-06-14 22:17:41 +00:00
aic7xxx Mega busdma API commit. 2003-07-01 15:52:06 +00:00
amd Mega busdma API commit. 2003-07-01 15:52:06 +00:00
amr Mega busdma API commit. 2003-07-01 15:52:06 +00:00
an Mega busdma API commit. 2003-07-01 15:52:06 +00:00
ar Get rid of kvtop(). 2003-04-23 15:40:11 +00:00
asr Include <sys/ioccom.h> instead of <sys/disklabel.h> 2003-04-16 20:46:30 +00:00
ata Update the SATA support code to work more correctly with 2003-07-02 10:50:44 +00:00
ath Mega busdma API commit. 2003-07-01 15:52:06 +00:00
atkbdc Reset the PSM aux device twice to help pierce through some KVM's to 2003-07-07 05:40:13 +00:00
awi update for new 802.11 support 2003-06-28 06:17:26 +00:00
bge Squelch spurious "gigabit link up" messages generated on some fiber NICs 2003-07-11 08:19:52 +00:00
bktr Merge NetBSD bktr_core.c rev. 1.26: 2003-06-09 19:13:38 +00:00
buslogic Mega busdma API commit. 2003-07-01 15:52:06 +00:00
cardbus Add a new PCI interface method, assign_interrupt, to determine the 2003-07-01 14:08:33 +00:00
ciss Mega busdma API commit. 2003-07-01 15:52:06 +00:00
cm - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
cnw - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
cs - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
ct Mega busdma API commit. 2003-07-01 15:52:06 +00:00
cy Use __FBSDID(). 2003-06-11 06:34:30 +00:00
dc Add support for a bunch of Microsoft networking products: 2003-07-10 18:43:17 +00:00
de Fix alignment requirements of tulip_rombuf by further increasing 2003-06-13 22:34:03 +00:00
dec
dgb Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
digi Make nokqfilter() return the correct return value. 2003-03-03 16:24:47 +00:00
dpt Mega busdma API commit. 2003-07-01 15:52:06 +00:00
drm Do not define memset() to bzero(). We have a memset(). 2003-05-31 19:31:46 +00:00
ed - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
eisa Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
em The em(4) driver has been converted to busdma and doesn't use 2003-07-04 10:15:16 +00:00
en Delete a superfluous semi-colon. 2003-07-04 13:41:03 +00:00
ep Other minor style nits I missed in ep_if_start() in my previous 2003-06-26 17:02:52 +00:00
ex - Declare ex_devclass in if_ex.c 2003-03-29 15:38:53 +00:00
exca MFP4: 2003-06-07 20:46:39 +00:00
fatm Make the bus_dma_tag_create use NULL for the lock arguments. We are 2003-07-02 13:53:41 +00:00
fb Low risk amd64 fix. Use a vm_offset_t for the virtual location of the 2003-05-23 05:10:49 +00:00
fdc - Use the new resource_disabled() helper function to see if devices are 2003-07-02 16:09:02 +00:00
fe Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
firewire Configuraiton ROM fix: 2003-07-09 13:07:35 +00:00
fxp All current uses of pci_set_powerstate are bogus, at least in theory. 2003-07-03 14:00:57 +00:00
gem Mega busdma API commit. 2003-07-01 15:52:06 +00:00
gfb - Add vm_paddr_t, a physical address type. This is required for systems 2003-03-25 00:07:06 +00:00
gx - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
hatm Use the default arguments for lockfunc and lockfuncarg in 2003-07-10 13:55:09 +00:00
hea Explicitly declare 'int' parameters. 2003-04-21 16:27:46 +00:00
hfa - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
hifn Mega busdma API commit. 2003-07-01 15:52:06 +00:00
hme Mega busdma API commit. 2003-07-01 15:52:06 +00:00
ic - Clean up function calling conventions. 2003-03-28 06:27:08 +00:00
ichsmb
ida Mega busdma API commit. 2003-07-01 15:52:06 +00:00
idt - Deal with netisr changes. 2003-03-29 15:55:04 +00:00
ie - Move driver to newbus. 2003-03-29 13:36:41 +00:00
iicbus make iicbb_devclass and iicbb_driver globally visible. This will let 2003-06-19 02:50:08 +00:00
iir Mega busdma API commit. 2003-07-01 15:52:06 +00:00
ips - Use the new resource_disabled() helper function to see if devices are 2003-07-02 16:09:02 +00:00
isp Mega busdma API commit. 2003-07-01 15:52:06 +00:00
ispfw Roll to latest level. 2003-02-16 01:30:31 +00:00
joy Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
kbd - Use the new resource_disabled() helper function to see if devices are 2003-07-02 16:09:02 +00:00
lge All current uses of pci_set_powerstate are bogus, at least in theory. 2003-07-03 14:00:57 +00:00
lmc Back out M_* changes, per decision of the TRB. 2003-02-19 05:47:46 +00:00
lnc Mega busdma API commit. 2003-07-01 15:52:06 +00:00
matcd Re-introduction of the matcd CD driver. 2003-06-17 01:20:03 +00:00
mc146818
mca Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
mcd Fix \ alignment in macro. 2003-05-31 18:21:40 +00:00
md Remove 256 unit limit, there is no evil minor number encoding to 2003-06-22 11:31:38 +00:00
mii Fix bge at 10Mbit. The defines for 10-Half and 10-Full were swapped. 2003-06-17 15:02:28 +00:00
mk48txx
mlx Mega busdma API commit. 2003-07-01 15:52:06 +00:00
mly Mega busdma API commit. 2003-07-01 15:52:06 +00:00
mpt Mega busdma API commit. 2003-07-01 15:52:06 +00:00
mse Use __FBSDID(). 2003-06-02 16:32:55 +00:00
musycc Remove unused variable(s). 2003-05-31 20:39:28 +00:00
my - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
ncv Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
nge All current uses of pci_set_powerstate are bogus, at least in theory. 2003-07-03 14:00:57 +00:00
nmdm Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
nsp
null /dev/null and /dev/zero does not need Giant 2003-06-24 19:50:48 +00:00
ofw Add a solaris compatible ofw interface for third party software that 2003-06-19 01:40:11 +00:00
pccard Sync to 1.53 2003-06-17 12:29:49 +00:00
pccbb All current uses of pci_set_powerstate are bogus, at least in theory. 2003-07-03 14:00:57 +00:00
pcf fix another LP64 problem. READ_IVAR takes a pointer to an uintptr_t, not 2003-06-20 07:22:54 +00:00
pci - Make the isab devclass global to allow for multiple ISA bridge drivers. 2003-07-08 18:56:58 +00:00
pcic More low-hanging fruit: kill caddr_t in calls to wakeup(9) / [mt]sleep(9). 2003-03-02 16:54:40 +00:00
pdq - Don't call pci_enable_io() in drivers (unless needed for resume). 2003-04-16 03:16:57 +00:00
ppbus Fix a printf warning from the recent CAM changes. 2003-05-01 19:46:21 +00:00
ppc Use __FBSDID(). 2003-06-11 00:34:37 +00:00
pst Pull the pst driver out from under GAINT. 2003-04-28 08:10:27 +00:00
puc add support for NetMos 4S0P PCI: 4S, 0P 2003-05-14 09:37:46 +00:00
raidframe Deprecate machine/limits.h in favor of new sys/limits.h. 2003-04-29 13:36:06 +00:00
random Change the sleep identifier to "-" where random normally sleeps. 2003-07-02 08:04:57 +00:00
ray update to new 802.11 support 2003-06-28 17:57:30 +00:00
rc Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
rndtest o correct mib spelling: reset -> retest 2003-06-25 14:46:01 +00:00
rp Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sab Match "serial" as well as "se". 2003-03-31 18:21:52 +00:00
sbni Fix i386 assembly constraints. The same register cannot be 2003-07-11 07:49:40 +00:00
sbsh cosmetic style fixes 2003-04-15 17:26:28 +00:00
scd Don't include <sys/disklabel.h> 2003-04-16 20:57:35 +00:00
sf Due to extreme bogusness in the pci bus layer, these drivers were 2003-07-03 21:39:53 +00:00
si Make TTYHOG tunable. 2003-03-05 08:16:29 +00:00
sio - Use the new resource_disabled() helper function to see if devices are 2003-07-02 16:09:02 +00:00
sk Due to extreme bogusness in the pci bus layer, these drivers were 2003-07-03 21:39:53 +00:00
smbus Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sn - Express hard dependencies on bus (pci, isa, pccard) and 2003-04-15 06:37:30 +00:00
snc Remove unused #ifdef BRIDGE. 2003-06-02 08:36:18 +00:00
snp Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
sound * add a function to display a complete feeder chain on the console, for 2003-07-07 17:40:02 +00:00
speaker Use __FBSDID(). 2003-06-02 16:32:55 +00:00
sr Use bus_space*() instead of in*() and out*(). 2003-04-23 20:22:32 +00:00
stg Make sure that pp_name is non-null before setting the device 2003-04-10 04:36:02 +00:00
streams Initialize struct fileops with C99 sparse initialization. 2003-06-18 18:16:40 +00:00
sym Mega busdma API commit. 2003-07-01 15:52:06 +00:00
syscons Use SC_NO_CUTPASTE to protect cutpaste variables correctly, fixing the 2003-06-01 04:42:14 +00:00
tdfx Remove extra ';' 2003-05-31 18:57:41 +00:00
tga Gigacommit to improve device-driver source compatibility between 2003-03-03 12:15:54 +00:00
ti Remove code that tries to detect if the MCLSHIFT and MSIZE macros 2003-06-13 20:46:34 +00:00
trm Mega busdma API commit. 2003-07-01 15:52:06 +00:00
twe Mega busdma API commit. 2003-07-01 15:52:06 +00:00
tx Mega busdma API commit. 2003-07-01 15:52:06 +00:00
txp All current uses of pci_set_powerstate are bogus, at least in theory. 2003-07-03 14:00:57 +00:00
ubsec Mega busdma API commit. 2003-07-01 15:52:06 +00:00
usb Regenerate. 2003-07-10 18:43:39 +00:00
utopia This is a driver for the physical layer chips used in ATM interfaces. 2003-06-12 14:28:32 +00:00
vinum free_drive: Free the drive even if it's referenced. I don't know what 2003-07-01 07:53:54 +00:00
vr Due to extreme bogusness in the pci bus layer, these drivers were 2003-07-03 21:39:53 +00:00
vx Revert part of rev 1.43. We want to fail gracefully if there is no packet 2003-06-08 18:35:25 +00:00
wds Mega busdma API commit. 2003-07-01 15:52:06 +00:00
wi Add corega PCCL-11 to match entry added to pccarddevs a while ago. 2003-07-07 07:57:35 +00:00
wl Get wlread() closer to working. Use m->m_len as the initial value for 2003-04-17 17:51:24 +00:00
xe Remove unused variable(s). 2003-05-31 20:27:42 +00:00
zs Fix a signedness problem in zstty_cncheckc(): when no character is ready, 2003-07-05 01:31:30 +00:00