freebsd-dev/sys/dev
Bill Paul a1d52896af Try to sort out the correct way to generate async link state change
interrupts. This is a bit harder than it needs to be because there's
more than one way to generate link attentions, at least one of which
does not work on the BCM5700, but does on the 5701.

For the 5701, we can safely use the 'link changed' bit in the status
block, and we enable link change attentions in the mac event register.
For the 5700, we have to use MII interrupts, which require checking
the MAC status register rather than the status block. This requires
doing an extra register access on each interrupt which I'd prefer to
avoid, but them's the breaks. Testing with both a 3c996-T and 3c996B-T
shows that we do in fact detect the link going up and down properly
on cable insertions/disconnections.

Also, avoid twiddling the autopoll enable bit in the MI mode register
when doing a PHY read. I think this coupled with the other changes
will stop the interrupt storms Paul Saab has been harassing me about.
Manually setting the link to 100baseTX full duplex seems to work ok
for me. (I'm typing over the 3c996B-T right now.)

Lastly, teach the driver how to recognize a 3c996B-SX by checking
the hardware config word in the EEPROM in order to detect the media.
We attach 5701 fiber cards correctly now, but I haven't verified that
they send/receive packets yet since I don't have a second fiber
interface at home. (I know that fiber 5700 cards work, so I'm
keeping my fingers crossed.)
2002-04-04 06:01:31 +00:00
..
aac Add support for the PERC3/Di found in the Dell 1650 2002-04-02 21:49:26 +00:00
acpica Hide the ACPI counter probing printf behind bootverbose. 2002-03-24 11:33:52 +00:00
advansys Restore I/O port resources to the condition before adv_isa_probe() is 2001-05-06 09:28:18 +00:00
agp Correctly identify the Intel 82830 AGP bridge. 2002-02-05 23:13:25 +00:00
aha
ahb
aic Remove __P. 2002-03-20 02:08:01 +00:00
aic7xxx Remove __P. 2002-03-20 08:56:31 +00:00
amd Move unused functions into #if 0 ... #endif. 2001-05-06 08:07:10 +00:00
amr Fixed printf format errors in previous commit. %llu is no more suitable 2002-03-18 23:24:00 +00:00
an Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
ar Move the isa parts to a separate file. 2001-04-16 13:20:39 +00:00
asr Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
ata Correct the Northbridge test on the new ATA133 VIA's 2002-04-02 16:45:06 +00:00
atkbdc Fix spelling and grammar bogons in a comment. 2002-03-27 13:16:11 +00:00
awi Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
bge Try to sort out the correct way to generate async link state change 2002-04-04 06:01:31 +00:00
bktr Fix bktr and pcf compilation with LINT 2002-03-25 21:22:35 +00:00
buslogic Use ANSI C string contatenation instead of a multi-line string literal. 2001-12-13 11:14:28 +00:00
cardbus Revert most of the recent PCI merge. This has proven to be too 2002-03-15 06:41:01 +00:00
ccd Retire the bogus ioctl DIOCGPART in toto. 2002-04-02 11:52:13 +00:00
ciss Fix warning; line 1640: ciss_abort_request defined but not used. 2001-12-18 08:01:48 +00:00
cm Remove __P. 2002-03-20 02:08:01 +00:00
cnw Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
cs Migrate to PCMCIA_CARD() macros 2001-11-15 07:52:49 +00:00
ct Remove __P. 2002-03-20 02:08:01 +00:00
cy Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
dc Remove __P. 2002-03-20 02:08:01 +00:00
de No FreeBSD/vax here either. 2001-11-03 08:32:28 +00:00
dec Introduce a boot environment variable (clock_compat_osf1) which can 2001-11-03 17:22:50 +00:00
dgb Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
digi Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
dpt Fix a couple of bogus enums. 2002-01-08 06:47:55 +00:00
ed More newcard devices: 2002-04-02 05:52:52 +00:00
eisa Remove __P. 2002-03-20 02:08:01 +00:00
em Remove __P. 2002-03-20 02:08:01 +00:00
en Remove __P. 2002-03-20 02:08:01 +00:00
ep Remove __P. 2002-03-20 02:08:01 +00:00
ex Remove __P. 2002-03-20 02:08:01 +00:00
exca Default debugging to OFF now. 2002-02-04 15:55:21 +00:00
fb Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
fdc When reading a UFS-style label from a floppy, don't attempt to use a 2002-04-02 18:29:43 +00:00
fe Supported C-NET(98)P2 PnP mode. 2002-02-04 14:01:27 +00:00
fxp Remove mbuf exhaustion warning messages; these are handled by the 2002-02-04 03:15:27 +00:00
gem In some cases, RX descriptors that are signalled to have been completed 2002-03-23 19:43:15 +00:00
gfb We need to operate on struct thread now, not struct proc. 2001-11-08 01:49:06 +00:00
gx Don't pass an interface pointer to VLAN_INPUT{,_TAG}. Get it from the 2001-12-03 17:28:27 +00:00
hea Remove __P. 2002-03-20 02:08:01 +00:00
hfa Remove __P. 2002-03-20 02:08:01 +00:00
hme Assorted fixes: 2002-03-23 19:37:11 +00:00
ic Oops, forgot to commit one file in the fd driver mega update. Here it 2001-12-16 07:52:13 +00:00
ichsmb Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
ida Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
ie Repo copy i82586.h to dev/ic/i82586.h. 2001-07-02 05:29:58 +00:00
iicbus Major rework of the iicbus/smbus framework: 2002-03-23 15:49:15 +00:00
iir Remove __P. 2002-03-20 02:08:01 +00:00
isp Redo stuff for sparc64- primarily fix bus dma implementation. The endian 2002-04-02 23:36:14 +00:00
ispfw Remove __P. 2002-03-20 02:08:01 +00:00
joy Revert change that breaks the joy module. joydevclass must not be static. 2002-01-08 18:27:49 +00:00
kbd Fix spelling and grammar bogons in a comment. 2002-03-27 13:16:11 +00:00
lge Remove __P. 2002-03-20 02:08:01 +00:00
lmc
lnc Remove __P. 2002-03-20 02:08:01 +00:00
mc146818
mca
mcd Retire the bogus ioctl DIOCGPART in toto. 2002-04-02 11:52:13 +00:00
md Remove unused include. 2002-03-20 09:55:07 +00:00
mii regenerate 2002-03-22 06:39:13 +00:00
mlx Fixed printf format errors in previous commit. %llu is no more suitable 2002-03-18 23:38:16 +00:00
mly Fix warnings (comment out unused tables that are taking space in the 2002-02-27 23:57:18 +00:00
mse Fixed some style bugs in the removal of __P(()). The main ones were 2002-03-23 16:01:49 +00:00
musycc Fix warnings: 2001-06-15 00:19:43 +00:00
my Add the driver for "myson" ethernet cards. 2002-04-04 05:22:13 +00:00
ncv Remove __P. 2002-03-20 02:08:01 +00:00
nge Remove __P. 2002-03-20 02:08:01 +00:00
nmdm Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
nsp Remove __P. 2002-03-20 02:08:01 +00:00
null Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
ofw Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
pccard Regen for 1.30 pccarddevs 2002-04-02 05:47:08 +00:00
pccbb Check the status of the card bridge first thing, rather than last in 2002-02-20 16:20:27 +00:00
pcf Fix bktr and pcf compilation with LINT 2002-03-25 21:22:35 +00:00
pci Add 5th parameter to pci_read_device specifying the size of the object 2002-03-13 16:32:11 +00:00
pcic Fix missing comma in previous commit. 2001-12-28 23:51:48 +00:00
pdq - Merge the pdq driver (if_fpa and if_fea) from NetBSD. 2002-03-29 11:22:22 +00:00
ppbus Major rework of the iicbus/smbus framework: 2002-03-23 15:49:15 +00:00
ppc Restore the original copyright 2002-03-23 15:36:13 +00:00
puc Add an entry for "PCCOM dual port RS232/422/485". 2002-04-01 13:33:43 +00:00
random Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
ray Update to C99, s/__FUNCTION__/__func__/, 2001-12-10 08:09:49 +00:00
rc Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
rp Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
sbni Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
scd Retire the bogus ioctl DIOCGPART in toto. 2002-04-02 11:52:13 +00:00
sf Remove __P. 2002-03-20 02:08:01 +00:00
si Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
sio Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
sk Remove __P. 2002-03-20 02:08:01 +00:00
smbus Major rework of the iicbus/smbus framework: 2002-03-23 15:49:15 +00:00
sn Migrate to PCMCIA_CARD() macros 2001-11-15 07:52:49 +00:00
snc Remove __P. 2002-03-20 02:08:01 +00:00
snp Remove __P. 2002-03-20 02:08:01 +00:00
sound Include <machine/limits.h> for definition of ULONG_MAX. Remove a 2002-03-25 09:23:41 +00:00
speaker Remove __P. 2002-03-20 07:51:46 +00:00
sr
stg Remove __P. 2002-03-20 02:08:01 +00:00
streams Remove __P. 2002-03-20 02:08:01 +00:00
sym Fix some gcc-3.1+ warnings: 2002-03-19 23:20:21 +00:00
syscons Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
tdfx Replace ffind_* with fget calls. 2002-01-14 00:13:45 +00:00
tga Add the TGA video driver. This is a great accomplishtment and will help 2001-11-01 08:26:30 +00:00
ti Remove __P. 2002-03-20 02:08:01 +00:00
twe Here follows the new kernel dumping infrastructure. 2002-03-31 22:37:00 +00:00
tx Remove __P. 2002-03-20 02:08:01 +00:00
txp Remove __P. 2002-03-20 02:08:01 +00:00
usb Back the last commit out. The network drivers need reworking first. :( 2002-04-02 14:54:52 +00:00
vinum Retire the bogus ioctl DIOCGPART in toto. 2002-04-02 11:52:13 +00:00
vr Remove __P. 2002-03-20 02:08:01 +00:00
vx Remove __P. 2002-03-20 02:08:01 +00:00
wds
wi It would appear, from preliminary indications, that No Wires Necessary 2002-04-03 20:39:07 +00:00
wl Change the suser() API to take advantage of td_ucred as well as do a 2002-04-01 21:31:13 +00:00
xe Remove an unused variable. 2002-02-26 03:37:35 +00:00