ed(4)
NAME
ed - NE-2000 and WD-80x3 Ethernet driver
SYNOPSIS
To compile this driver into the kernel, place the following lines in your kernel configuration file: device miibus device ed Alternatively, to load the driver as a module at boot time, place the following line in loader.conf(5): if_ed_load="YES"
DESCRIPTION
- The ed driver provides support for 8 and 16bit Ethernet
- cards that are
based on the National Semiconductor DS8390 and similar NICs - manufactured
by other companies. - The ed driver uses a unique multi-buffering mechanism to
- achieve high
transmit performance. When using 16bit ISA cards, as high - as 97% of the
theoretical maximum performance of the IEEE 802.3 CSMA Eth - ernet is possible.
- In addition to the standard port and IRQ specifications, the
- ed driver
also supports a number of flags which can force 8/16bit - mode, enable/disable multi-buffering, and select the default interface type
- (AUI/BNC, and
for cards with twisted pair, AUI/10BaseT). - The flags are a bit field, and are summarized as follows:
- 0x01 Disable transceiver. On those cards which support
- it, this flag
- causes the transceiver to be disabled and the AUI
- connection to
be used by default. - 0x02 Force 8bit mode. This flag forces the card to 8bit
- mode regard
- less of how the card identifies itself. This may be
- needed for
some clones which incorrectly identify themselves as - 16bit, even
though they only have an 8bit interface. This flag - takes precedence over force 16bit mode.
- 0x04 Force 16bit mode. This flag forces the card to
- 16bit mode
- regardless of how the card identifies itself. This
- may be needed
for some clones which incorrectly identify them - selves as 8bit,
even though they have a 16bit ISA interface. - 0x08 Disable transmitter multi-buffering. This flag dis
- ables the use
- of multiple transmit buffers and may be necessary in
- rare cases
where packets are sent out faster than a machine on - the other end
can handle (as evidenced by severe packet lossage). - Some
(non-FreeBSD :-)) machines have terrible Ethernet - performance and
simply cannot cope with 1100K+ data rates. Use of - this flag also
provides one more packet worth of receiver buffer - ing, and on 8bit
cards, this may help reduce receiver lossage. - When using a 3c503 card, the AUI connection may be selected
- by specifying
the link2 option to ifconfig(8) (BNC is the default).
HARDWARE
The ed driver supports the following Ethernet NICs:
- +o 3Com 3c503 Etherlink II (options ED_3C503)
+o AR-P500 Ethernet
+o Accton EN1644 (old model), EN1646 (old model), EN2203 - (old model)
- (110pin) (flags 0xd00000)
- +o Accton EN2212/EN2216/UE2216
+o Allied Telesis CentreCOM LA100-PCM_V2
+o Allied Telesis LA-98 (flags 0x000000) (PC-98)
+o Allied Telesis SIC-98, SIC-98NOTE (110pin), SIU-98 - (flags 0x600000)
- (PC-98)
- +o Allied Telesis SIU-98-D (flags 0x610000) (PC-98)
+o AmbiCom 10BaseT card
+o Bay Networks NETGEAR FA410TXC Fast Ethernet
+o Belkin F5D5020 PC Card Fast Ethernet
+o Billionton LM5LT-10B Ethernet/Modem PC Card
+o Bromax iPort 10/100 Ethernet PC Card
+o Bromax iPort 10 Ethernet PC Card
+o Buffalo LPC2-CLT, LPC3-CLT, LPC3-CLX, LPC4-TX PC Card
+o CNet BC40 adapter
+o Compex Net-A adapter
+o Contec C-NET(98), RT-1007(98), C-NET(9N) (110pin) (flags - 0xa00000)
- (PC-98)
- +o Contec C-NET(98)E-A, C-NET(98)L-A, C-NET(98)P (flags
- 0x300000)
- (PC-98)
- +o Corega Ether98-T (flags 0x000000) (PC-98)
+o Corega Ether PCC-T/EtherII PCC-T/FEther PCC-TXF/PCC-TXD
+o CyQ've ELA-010
+o DEC EtherWorks DE305
+o Danpex EN-6200P2
+o D-Link DE-298, DE-298P (flags 0x500000) (PC-98)
+o D-Link DE-650/660
+o D-Link IC-CARD/IC-CARD+ Ethernet
+o ELECOM LD-98P (flags 0x500000) (PC-98)
+o ELECOM LD-BDN, LD-NW801G (flags 0x200000) (PC-98)
+o ELECOM Laneed LD-CDL/TX, LD-CDF, LD-CDS, LD-10/100CD, - LD-CDWA
- (DP83902A)
- +o HP PC Lan+ 27247B and 27252A (options ED_HPP)
+o IBM Creditcard Ethernet I/II
+o ICM AD-ET2-T, DT-ET-25, DT-ET-T5, IF-2766ET, IF-2771ET, - NB-ET-T
- (110pin) (flags 0x500000) (PC-98)
- +o I-O DATA LA/T-98, LA/T-98SB, LA2/T-98, ET/T-98 (flags
- 0x900000)
- (PC-98)
- +o I-O DATA ET2/T-PCI
+o I-O DATA PCLATE
+o Kansai KLA-98C/T (flags 0x900000) (PC-98)
+o Kingston KNE-PC2, CIO10T, KNE-PCM/x Ethernet
+o Linksys EC2T/PCMPC100/PCM100, PCMLM56
+o Linksys EtherFast 10/100 PC Card, Combo PCMCIA Ethernet - Card
- (PCMPC100 V2)
- +o Logitec LAN-98T (flags 0xb00000) (PC-98)
+o MACNICA Ethernet ME1 for JEIDA
+o MACNICA ME98 (flags 0x900000) (PC-98)
+o MACNICA NE2098 (flags 0x400000) (PC-98)
+o MELCO EGY-98 (flags 0x300000) (PC-98)
+o MELCO LGH-98, LGY-98, LGY-98-N (110pin), IND-SP, IND-SS - (flags
- 0x400000) (PC-98)
- +o MELCO LGY-PCI-TR
+o MELCO LPC-T/LPC2-T/LPC2-CLT/LPC2-TX/LPC3-TX/LPC3-CLX
+o NDC Ethernet Instant-Link
+o NEC PC-9801-77, PC-9801-78 (flags 0x910000) (PC-98)
+o NEC PC-9801-107, PC-9801-108 (flags 0x800000) (PC-98)
+o National Semiconductor InfoMover NE4100
+o NetGear FA-410TX
+o NetVin 5000
+o Network Everywhere Ethernet 10BaseT PC Card
+o Networld 98X3 (flags 0xd00000) (PC-98)
+o Networld EC-98X, EP-98X (flags 0xd10000) (PC-98)
+o New Media LANSurfer 10+56 Ethernet/Modem
+o New Media LANSurfer
+o Novell NE1000/NE2000/NE2100
+o PLANEX ENW-8300-T
+o PLANEX EN-2298-C (flags 0x200000) (PC-98)
+o PLANEX EN-2298P-T, EN-2298-T (flags 0x500000) (PC-98)
+o PLANEX FNW-3600-T
+o Psion 10/100 LANGLOBAL Combine iT
+o RealTek 8029
+o Relia Combo-L/M-56k PC Card
+o SMC Elite 16 WD8013
+o SMC Elite Ultra
+o SMC EtherEZ98 (flags 0x000000) (PC-98)
+o SMC - WD8003E/WD8003EBT/WD8003S/WD8003SBT/WD8003W/WD8013EBT/WD8013W and
- clones
- +o SMC EZCard PC Card, 8040-TX, 8041-TX
+o Socket LP-E, ES-1000 Ethernet/Serial, LP-E CF, LP-FE CF
+o Surecom EtherPerfect EP-427
+o Surecom NE-34
+o TDK 3000/3400/5670 Fast Etherenet/Modem
+o TDK LAK-CD031, Grey Cell GCS2000 Ethernet Card
+o TDK DFL5610WS Ethernet/Modem PC Card
+o Telecom Device SuperSocket RE450T
+o VIA VT86C926
+o Winbond W89C940 - C-Bus, ISA, PCI and PC Card devices are supported.
DIAGNOSTICS
- ed%d: kernel configured irq %d doesn't match board
- configured irq %d.
The IRQ number that was specified in the kernel config file - (and then
compiled into the kernel) differs from the IRQ that has been - set on the
interface card. - ed%d: failed to clear shared memory at %x - check
- configuration. When
the card was probed at system boot time, the ed driver found - that it
could not clear the card's shared memory. This is most com - monly caused
by a BIOS extension ROM being configured in the same address - space as the
Ethernet card's shared memory. Either find the offending - card and change
its BIOS ROM to be at an address that does not conflict, or - change the
iomem option in the kernel config file so that the card's - shared memory
is mapped at a non-conflicting address. - ed%d: Invalid irq configuration (%d) must be 2-5 for 3c503.
- The IRQ number that was specified in the kernel config file is not
- valid for the
3Com 3c503 card. The 3c503 can only be assigned to IRQs 2 - through 5.
- ed%d: Cannot find start of RAM. ed%d: Cannot find any RAM, start : %d, x = %d. The probe of
- a Gateway
card was unsuccessful in configuring the card's packet memo - ry. This
likely indicates that the card was improperly recognized as - a Gateway or
that the card is defective. - ed: packets buffered, but transmitter idle. Indicates a
- logic problem in
the driver. Should never happen. - ed%d: device timeout Indicates that an expected transmitter
- interrupt
did not occur. Usually caused by an interrupt conflict with - another card
on the ISA bus. This condition could also be caused if the - kernel is
configured for a different IRQ channel than the one the card - is actually
using. If that is the case, you will have to either recon - figure the card
using a DOS utility or set the jumpers on the card appropri - ately.
- ed%d: NIC memory corrupt - invalid packet length %d. Indi
- cates that a
packet was received with a packet length that was either - larger than the
maximum size or smaller than the minimum size allowed by the - IEEE 802.3
standard. Usually caused by a conflict with another card on - the ISA bus,
but in some cases may also indicate faulty cabling. - ed%d: remote transmit DMA failed to complete. This indi
- cates that a programmed I/O transfer to an NE1000 or NE2000 style card has
- failed to
properly complete. Usually caused by the ISA bus speed be - ing set too
fast.
CAVEATS
- Early revision DS8390 chips have problems. They lock up
- whenever the
receive ring-buffer overflows. They occasionally switch the - byte order
of the length field in the packet ring header (several dif - ferent causes
of this related to an off-by-one byte alignment) - resulting - in "NIC
memory corrupt - invalid packet length" messages. The card - is reset
whenever these problems occur, but otherwise there is no - problem with
recovering from these conditions. - The NIC memory access to 3Com and Novell cards is much slow
- er than it is
on WD/SMC cards; it is less than 1MB/second on 8bit boards - and less than
2MB/second on the 16bit cards. This can lead to ring-buffer - overruns
resulting in dropped packets during heavy network traffic. - 16bit Compex cards identify themselves as being 8bit. While
- these cards
will work in 8bit mode, much higher performance can be - achieved by specifying flags 0x04 (force 16bit mode) in your kernel config
- file. In addition, you should also specify iosiz 16384 to take advantage
- of the extra
8K of shared memory that 16bit mode provides.
SEE ALSO
arp(4), miibus(4), netintro(4), ng_ether(4), ifconfig(8)
HISTORY
The ed device driver first appeared in FreeBSD 1.0.
AUTHORS
- The ed device driver and this manual page were written by
- David Greenman.
BUGS
- The ed driver is a bit too aggressive about resetting the
- card whenever
any bad packets are received. As a result, it may throw out - some good
packets which have been received but not yet transferred - from the card to
main memory. - The ed PC Card attachment supports the D-Link DMF650TX
- Lan/Modem card's
ethernet port only at this time. - BSD October 5, 2005