[driver-announce] Fall 2002 driver set update -- all PCI drivers
Donald Becker
becker@scyld.com
Mon Nov 18 11:55:02 2002
This is to announce the fall 2002 update to the PCI Ethernet driver set.
Almost every PCI Ethernet driver that I maintain has been updated to the
current interface described in pci-skeleton.c v2.12.
The updated drivers are available at
ftp://www.scyld.com/pub/network/test/*
and will be moved into the release directory in approximately one week
ftp://www.scyld.com/pub/network/*
The combined set is
ftp://www.scyld.com/pub/network/test/netdrivers-3.tgz
The major changes for 2.12 are
Almost all drivers now have PCI hot-swap support.
Previously NICs with CardBus implementations had the support, but
others had that capability disabled.
The ability to selectively enable driver messages:
Per-interface copies and consistent SIOC{S,G}PARAMS settings for
variables the that used to be configurable only as global module options:
msg_level, rx_copybreak, max_interrupt_work, multicast_filter_limit
Many other minor fixes and changes are included in this update.
A significant amount of work went into rewriting previous changes
to keep the drivers structurally consistent where possible. This
consistency is vital to making possible efficient implementation of
planned structural changes.
The version number and release dates are
3c59x.c:v0.99Xf 11/17/2002
eepro100.c:v1.26 11/17/2002
epic100.c:v1.17 11/17/2002
hamachi.c:v1.04 11/17/2002
intel-gige.c:v0.14 11/14/2002
myson803.c:v1.04 11/17/2002
natsemi.c:v1.15 11/17/2002
ns820.c:v1.02 11/17/2002
rtl8139.c:v1.22 11/17/2002
starfire.c:v1.08 11/17/2002
sundance.c:v1.10 11/17/2002
tulip.c:v0.95f 11/17/2002
via-rhine.c:v1.13 11/17/2002
winbond-840.c:v1.08 11/16/2002
yellowfin.c:v1.09 11/17/2002
________________________________________________________________
3c59x.c:v0.99Xf 11/17/2002
Change to the setting VLAN detection register, use defined(CONFIG_VLAN).
Use PKT_BUF_SZ as the suggested size for allocating receive buffers over
a broader range of MTU settings.
Added a variable to track the current receive setting and minimize
register writes.
Use numeric constants for all ioctl() values, since the symbolic names
change value (grrrr).
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
max_interrupt_work, multicast_filter_limit
Cleaned up harmless warnings from inl() type change.
________________________________________________________________
eepro100.c:v1.26 11/17/2002
Added PCI bus:devfn to the detection message.
Updated to remaining 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Changed full_duplex[] documentation to note that it is deprecated.
Use symbolic names for Rx mode state, including methods to enable run
and error packet reception.
Allocate Rx buffers with sp->rx_buf_sz instead of PKT_BUF_SZ.
Explicit Hammer/__x86_64 architecture check, and cleaned up harmless
warnings from inl() type change.
________________________________________________________________
epic100.c:v1.17 11/17/2002
Added PCI bus:devfn to the detection message.
Added multicast_filter_limit to the module parameter set.
Updated to remaining 2.12 pci-skeleton recommendations.
TX_TIMEOUT change from 2 to 6 seconds.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Do eeprom dump with NETIF_MSG_MISC.
Track the Rx mode state to minimize register writes with rapid interface
state changes.
Set -DPWRDWN_AFTER_IOCTL if the chip should be returned to power down
mode after ioctl() calls.
Clean up harmless warnings with Hammer/__x86_64 include files.
________________________________________________________________
hamachi.c:v1.04 11/17/2002
Added module option 'multicast_filter_limit'.
Removed the 'mtu' module parameter.
Added a variable to track the current receive setting and minimize
register writes.
Use PKT_BUF_SZ, now 1536 from the earlier 1544, as the suggested size
for allocating receive buffers when possible.
Updated to 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
Added module parameter descriptions
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Removed SIOC.MII* symbolic name in favor of constants.
Report link status change on LinkChange interrupt with
netif_link_up()/netif_link_down()
Allocate Rx buffers with sp->rx_buf_sz instead of PKT_BUF_SZ.
________________________________________________________________
intel-gige.c:v0.14 11/14/2002
Cleaned up harmless warnings from Hammer/__x86_64 and inl() type change.
Report link status change on LinkChange interrupt with
netif_link_up()/netif_link_down()
Updated to 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
Added module parameter descriptions
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Added PCI_HOTSWAP flag.
Removed the 'mtu' module parameter, added change_mtu() method.
________________________________________________________________
myson803.c:v1.04 11/17/2002
Updated to remaining 2.12 pci-skeleton recommendations.
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Cleaned up harmless warnings on Hammer/__x86_64.
________________________________________________________________
natsemi.c:v1.15 11/17/2002
Cleaned up harmless warnings on Hammer/__x86_64.
Updated to remaining 2.12 pci-skeleton recommendations.
Standard compile-command uses the Makefile.
________________________________________________________________
ns820.c:v1.02 11/17/2002
Added "D-Link DGE-500T (DP83820)" subsystem ID, 0x1186 0x4900.
Added FDXActiveLow flag, added in the PCI table for some specific boards.
Symbolic name for the FDX bit, and changed code to detect full duplex on
various boards.
Symbolic names for transceiver reset/power control bits.
Clean up harmless warnings with Hammer/__x86_64 include files.
________________________________________________________________
rtl8139.c:v1.22 11/17/2002
Added PCI table entry for
0x13d1 0xab06 "Edimax EP-4103DL"
Used PKT_BUF_SZ as a suggested size for allocating receive buffers.
Added variables to track the multicast filter settings.
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
max_interrupt_work, multicast_filter_limit
Cleaned up harmless warnings from inl() type change.
________________________________________________________________
starfire.c:v1.08 11/17/2002
Check for corrupted or null Tx skbuffs in the Tx done handler. This is
triggered by kernels hacked with proprietary firewall code.
Report link status change on LinkChange interrupt with
netif_link_up()/netif_link_down()
Added PCI hotswap power management code.
Check for various failures in the monitor timer: missing chip, failed
interrupt line, polling mode, Tx clogged.
Set the timer to re-enable interrupts on work overload.
Removed the 'mtu' module parameter, added change_mtu() method up to
17268 bytes.
Use PKT_BUF_SZ for a broader range of MTU values.
Added symbolic names for more register bits.
Added cache alignment attributes.
Changed media selection and locking code to be more like pci-skeleton.
Updated to 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
Added module parameter descriptions
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Added PCI_HOTSWAP flag.
Explicit Hammer/__x86_64 architecture check, and cleaned up harmless
warnings from inl() type change.
________________________________________________________________
sundance.c:v1.10 11/17/2002
Check for chip rev. 0x14 which has the packet drop bug.
Report link status with KERN_NOTICE not ERR.
Updated to remaining 2.12 pci-skeleton recommendations.
TX_TIMEOUT change from 5 to 6 seconds.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Clean up harmless warnings with Hammer/__x86_64 include files.
________________________________________________________________
tulip.c:v0.95f 11/17/2002
Corrected 95e check-in:
The board name was actually "D-Link DFE-680TXD v1.0 (ADMtek Centaur-C)"
The ID was 0x1541...., not 0x1514....
Changes for Hammer:
Architecture check for CSR0 setting.
Added 'unsigned' to two lock flags declarations that were not
previously updated.
________________________________________________________________
via-rhine.c:v1.13 11/17/2002
Added PCI hotswap power management code and PCI_HOTSWAP flag.
Increased RX_RING_SIZE to 32.
Removed SIOC.MII* constants.
Report link status change on LinkChange interrupt with
netif_link_up()/netif_link_down()
Changed media selection and locking code to be more like pci-skeleton.
Updated to 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
Added module parameter descriptions
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
________________________________________________________________
winbond-840.c:v1.08 11/16/2002
Report link status change on LinkChange interrupt with
netif_link_up()/netif_link_down()
Updated to 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
Added module parameter descriptions
TX_TIMEOUT change from 2 to 6 seconds.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Added power event handling.
Moved the CSR0 bus parameter register definitions to a global variable,
and add an architecture check for __x86_64.
A new TX_DESC_SIZE to allow additional space between descriptors for
cache line alignment.
Initial code for variable size Tx and Rx rings .
________________________________________________________________
yellowfin.c:v1.09 11/17/2002
Cleaned up harmless warnings with Hammer/__x86_64.
Added module option 'multicast_filter_limit'.
Removed the 'mtu' module parameter.
Updated to remaining 2.12 pci-skeleton recommendations.
Default debug (message level) value changed to '2'
Added module parameter descriptions
TX_TIMEOUT change from 2 to 6 seconds.
Standard compile-command uses the Makefile.
Used PKT_BUF_SZ as a consistent size for allocating receive buffers.
Per-interface settings and SIOC{S,G}PARAMS settings for
rx_copybreak, max_interrupt_work, multicast_filter_limit
Added a variables to track the current receive and multicast filter
setting to minimize register writes.
--
Donald Becker becker@scyld.com
Scyld Computing Corporation http://www.scyld.com
410 Severn Ave. Suite 210 Scyld Beowulf cluster system
Annapolis MD 21403 410-990-9993