NAME
nge
—
National Semiconductor PCI gigabit
ethernet adapter driver
SYNOPSIS
device miibus
device nge
DESCRIPTION
Thenge
driver provides support for various NICs based
on the National Semiconductor DP83820 and DP83821 gigabit ethernet controller
chips, including the following:
- SMC EZ Card 1000 (SMC9462TX)
- D-Link DGE-500T
- Asante FriendlyNet GigaNIX 1000TA and 1000TPC
- Addtron AEG320T
- LinkSys EG1032 (32-bit PCI) and EG1064 (64-bit PCI)
- Surecom Technology EP-320G-TX
- Netgear GA621
- Netgear GA622T
All of these NICs are capable of 10, 100 and 1000mbps speeds over CAT5 copper cable. The DP83820 supports TBI (ten bit interface) and GMII transceivers, which means it can be used with either copper or 1000baseX fiber applications. The DP83820 supports TCP/IP checksum offload and VLAN tagging/insertion as well as a 2048-bit multicast hash filter and up to 4 pattern match buffers.
Most cards also use the DP83861 10/100/1000 copper gigabit transceiver chip, which supports autonegotiation of 10, 100 and 1000mbps modes in full or half duplex.
The DP83820 also supports jumbo frames, which can be configured via the interface MTU setting. Selecting an MTU larger than 1500 bytes with the ifconfig(8) utility configures the adapter to receive and transmit jumbo frames. Using jumbo frames can greatly improve performance for certain tasks, such as file transfers and data streaming.
The nge
driver supports the following
media types:
autoselect
- Enable autoselection of the media type and options. The user can manually override the autoselected mode by adding media options to rc.conf(5).
10baseT/UTP
- Set 10Mbps operation. The
ifconfig(8)
mediaopt
option can also be used to select eitherfull-duplex
orhalf-duplex
modes. 100baseTX
- Set 100Mbps (fast ethernet) operation. The
ifconfig(8)
mediaopt
option can also be used to select eitherfull-duplex
orhalf-duplex
modes. 1000baseT
- Set 1000baseT operation over twisted pair.
full-duplex
andhalf-duplex
modes are supported. 1000baseSX
- Set 1000Mbps (gigabit ethernet) operation. Both
full-duplex
andhalf-duplex
modes are supported.
The nge
driver supports the following
media options:
full-duplex
- Force full duplex operation.
half-duplex
- Force half duplex operation.
The nge
driver also supports one special
link option for 1000baseT cards:
link0
- With 1000baseT cards, establishing a link between two ports requires that
one port be configured as a master and the other a slave. With
autonegotiation, the master/slave settings will be chosen automatically.
However when manually selecting the link state, it is necessary to force
one side of the link to be a master and the other a slave. The
nge
driver configures the ports as slaves by default. Setting thelink0
flag with ifconfig(8) will set a port as a master instead.
For more information on configuring this device, see
ifconfig(8). The nge
driver supports
polling(4).
DIAGNOSTICS
- nge%d: couldn't map memory
- A fatal initialization error has occurred.
- nge%d: couldn't map ports
- A fatal initialization error has occurred.
- nge%d: couldn't map interrupt
- A fatal initialization error has occurred.
- nge%d: no memory for softc struct!
- The driver failed to allocate memory for per-device instance information during initialization.
- nge%d: failed to enable memory mapping!
- The driver failed to initialize PCI shared memory mapping. This might happen if the card is not in a bus-master slot.
- nge%d: no memory for jumbo buffers!
- The driver failed to allocate memory for jumbo frames during initialization.
- nge%d: watchdog timeout
- The device has stopped responding to the network, or there is a problem with the network connection (cable).
SEE ALSO
arp(4), ifmedia(4), miibus(4), netintro(4), ng_ether(4), polling(4), vlan(4), ifconfig(8)
National Semiconductor DP83820 datasheet, http://www.national.com.
National Semiconductor DP83861 datasheet, http://www.national.com.
HISTORY
The nge
device driver first appeared in
FreeBSD 4.4.
AUTHORS
The nge
driver was written by
Bill Paul
<wpaul@bsdi.com>.