FXP(4) BSD Kernel Interfaces Manual FXP(4)NAMEfxp — Intel EtherExpress PRO/100 Ethernet device driver
To compile this driver into the kernel, place the following lines in your
kernel configuration file:
Alternatively, to load the driver as a module at boot time, place the
following line in loader.conf(5):
The fxp driver provides support for Ethernet adapters based on the Intel
i82557, i82558, i82559, i82550, and i82562 chips. The driver supports
TCP/UDP/IP checksum offload for both transmit and receive on i82550 and
i82551. On i82559 only TCP/UDP checksum offload for receive is sup‐
ported. TCP segmentation offload (TSO) for IPv4 as well as VLAN hardware
tag insertion/stripping is supported on i82550 and i82551. Wake On Lan
(WOL) support is provided on all controllers except i82557, i82259ER and
early i82558 revisions.
The fxp driver supports the following media types:
autoselect Enable autoselection of the media type and options. The
autoselected mode can be overridden by adding the media
options to rc.conf(5).
10baseT/UTP Set 10Mbps operation.
100baseTX Set 100Mbps (Fast Ethernet) operation.
The fxp driver supports the following media options:
full-duplex Force full duplex operation.
half-duplex Force half duplex operation.
Note that 100baseTX media type is not available on the Pro/10. For fur‐
ther information on configuring this device, see ifconfig(8).
The fxp driver supports reception and transmission of extended frames for
vlan(4). This capability of fxp can be controlled by means of the
vlanmtu parameter to ifconfig(8).
The fxp driver also supports a special link option:
link0 Some chip revisions have loadable microcode which can be used to
reduce the interrupt load on the host cpu. Not all boards have
microcode support. Setting the link0 flag with ifconfig(8) will
download the microcode to the chip if it is available.
Adapters supported by the fxp driver include:
· Intel EtherExpress PRO/10
· Intel InBusiness 10/100
· Intel PRO/100B / EtherExpressPRO/100 B PCI Adapter
· Intel PRO/100+ Management Adapter
· Intel PRO/100 VE Desktop Adapter
· Intel PRO/100 VM Network Connection
· Intel PRO/100 M Desktop Adapter
· Intel PRO/100 S Desktop, Server and Dual-Port Server Adapters
· Contec C-NET(PI)-100TX (PC-98)
· NEC PC-9821Ra20, Rv20, Xv13, Xv20 internal 100Base-TX (PC-98)
· NEC PC-9821X-B06 (PC-98)
· Many on-board network interfaces on Intel motherboards
Tunables can be set at the loader(8) prompt before booting the kernel or
stored in loader.conf(5). The following variables are available as both
loader(8) tunables and sysctl(8) variables:
Maximum amount of time, in microseconds, that an interrupt may be
delayed in an attempt to coalesce interrupts. This is only
effective if the Intel microcode is loaded. The accepted range
is 300 to 3000, the default is 1000.
Number of packets that will be bundled, before an interrupt is
generated. This is only effective if the Intel microcode is
loaded. The accepted range is 1 to 65535, the default is 6.
The following variables are available as sysctl(8) variables.
This is a read-only variable and shows the number of events of
RNR (resource not ready).
This is a read-only variable and displays useful MAC counters
maintained in the driver.
fxp%d: couldn't map memory A fatal initialization error has occurred.
fxp%d: couldn't map interrupt A fatal initialization error has occurred.
fxp%d: Failed to malloc memory There are not enough mbuf's available for
fxp%d: device timeout The device has stopped responding to the network,
or there is a problem with the network connection (cable).
fxp%d: Microcode loaded, int_delay: %d usec bundle_max: %d The chip has
successfully downloaded the microcode, and changed the parameterized val‐
ues to the given settings.
SEE ALSOaltq(4), arp(4), miibus(4), netintro(4), ng_ether(4), polling(4),
The fxp device driver first appeared in FreeBSD 2.1.
The fxp device driver was written by David Greenman. It has then been
updated to use the busdma API and made endian-clean by Maxime Henrion.
This manual page was written by David E. O'Brien.
BSD November 26, 2010 BSD