stge
—
Sundance/Tamarack TC9021 Gigabit Ethernet adapter driver
To compile this driver into the kernel, place the following lines in your kernel
configuration file:
device miibus
device stge
Alternatively, to load the driver as a module at boot time, place
the following line in
loader.conf(5):
The stge
device driver provides support for various NICs
based on the Sundance/Tamarack TC9021 Gigabit Ethernet controller chip.
The Sundance/Tamarack TC9021 is found on the D-Link DGE-550T and
the Antares Microsystems Gigabit Ethernet board. It uses an external PHY or
an external 10-bit interface.
All NICs supported by the stge
driver have
TCP/UDP/IP checksum offload for both receive and transmit, hardware VLAN tag
stripping/insertion features, and receive interrupt moderation mechanism as
well as a 64-bit multicast hash filter. The Sundance/Tamarack TC9021
supports TBI (ten bit interface) and GMII transceivers, which means it can
be used with either copper or 1000baseX fiber applications.
The Sundance/Tamarack TC9021 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.
The stge
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 either
full-duplex
or half-duplex
modes.
100baseTX
- Set 100Mbps (Fast Ethernet) operation. The
ifconfig(8)
mediaopt
option can also be used to select either
full-duplex
or half-duplex
modes.
1000baseTX
- Set 1000baseTX operation over twisted pair. The Sundance/Tamarack supports
1000Mbps in
autoselect
mode only.
The stge
driver supports the following
media options:
full-duplex
- Force full duplex operation.
half-duplex
- Force half duplex operation.
For more information on configuring this device, see
ifconfig(8).
The stge
driver provides support for various NICs based
on the Sundance/Tamarack TC9021 based Gigabit Ethernet controller chips,
including:
- Antares Microsystems Gigabit Ethernet
- ASUS NX1101 Gigabit Ethernet
- D-Link DL-4000 Gigabit Ethernet
- IC Plus IP1000A Gigabit Ethernet
- Sundance ST-2021 Gigabit Ethernet
- Sundance ST-2023 Gigabit Ethernet
- Sundance TC9021 Gigabit Ethernet
- Tamarack TC9021 Gigabit Ethernet
The following variables are available as both
sysctl(8)
variables and
loader(8)
tunables:
- dev.stge.%d.rxint_nframe
- Number of frames between RxDMAComplete interrupts. The accepted range is 1
to 255, default value is 8 frames. The interface has to be brought down
and up again before a change takes effect.
- dev.stge.%d.rxint_dmawait
- Maximum amount of time to wait in 1us increments before issuing an Rx
interrupt if the number of frames received is less than
rxint_nframe. The accepted range is 0 to 4194,
default value is 30 microseconds. The interface has to be brought down and
up again before a change takes effect.
The stge
driver was ported from
NetBSD and first appeared in FreeBSD
6.2. The NetBSD version was written by
Jason R. Thorpe
<thorpej@NetBSD.org>.