164 lines
5.0 KiB
Groff
164 lines
5.0 KiB
Groff
.\"
|
|
.\" Copyright (c) 2006 Sam Leffler, Errno Consulting
|
|
.\"
|
|
.\" All rights reserved.
|
|
.\"
|
|
.\" Redistribution and use in source and binary forms, with or without
|
|
.\" modification, are permitted provided that the following conditions
|
|
.\" are met:
|
|
.\" 1. Redistributions of source code must retain the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer.
|
|
.\" 2. Redistributions in binary form must reproduce the above copyright
|
|
.\" notice, this list of conditions and the following disclaimer in the
|
|
.\" documentation and/or other materials provided with the distribution.
|
|
.\"
|
|
.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
|
|
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
.\"
|
|
.\" $FreeBSD$
|
|
.\"
|
|
.Dd December 4, 2006
|
|
.Dt NPE 4 arm
|
|
.Os
|
|
.Sh NAME
|
|
.Nm npe
|
|
.Nd "Intel XScale Network Processing Engine (NPE) Ethernet device driver"
|
|
.Sh SYNOPSIS
|
|
To compile this driver into the kernel,
|
|
place the following lines in your
|
|
kernel configuration file:
|
|
.Bd -ragged -offset indent
|
|
.Cd "device npe"
|
|
.Cd "device npe_fw"
|
|
.Cd "device firmware"
|
|
.Cd "device qmgr"
|
|
.Cd "device miibus"
|
|
.Ed
|
|
.Sh DESCRIPTION
|
|
The
|
|
.Nm
|
|
driver provides support for Ethernet adapters based on the Intel
|
|
XScale Network Processing Engine (NPE).
|
|
The NPE must be loaded with firmware that is typically distributed
|
|
with boards that have this part.
|
|
Otherwise the firmware may be obtained at no cost from the Intel web site.
|
|
.Pp
|
|
The
|
|
.Nm
|
|
driver supports the following media types:
|
|
.Bl -tag -width ".Cm full-duplex"
|
|
.It Cm autoselect
|
|
Enable autoselection of the media type and options.
|
|
.It Cm 10baseT/UTP
|
|
Set 10Mbps operation.
|
|
.It Cm 100baseTX
|
|
Set 100Mbps (Fast Ethernet) operation.
|
|
.El
|
|
.Pp
|
|
The
|
|
.Nm
|
|
driver supports the following media options:
|
|
.Bl -tag -width ".Cm full-duplex"
|
|
.It Cm full-duplex
|
|
Set full duplex operation.
|
|
.El
|
|
.Pp
|
|
The
|
|
.Nm
|
|
driver supports polled operation when the system is
|
|
configured with device polling support,
|
|
.Xr polling 4 .
|
|
Note that for multi-port configurations polling and interrupt-style
|
|
operation should not be combined as one of the hardware queues
|
|
is shared by all ports.
|
|
.Pp
|
|
For further information on configuring this device, see
|
|
.Xr ifconfig 8 .
|
|
.\".Pp
|
|
.\"The
|
|
.\".Nm
|
|
.\"driver supports reception and transmission of extended frames
|
|
.\"for
|
|
.\".Xr vlan 4 .
|
|
.\"This capability of
|
|
.\".Nm
|
|
.\"can be controlled by means of the
|
|
.\".Cm vlanmtu
|
|
.\"parameter
|
|
.\"to
|
|
.\".Xr ifconfig 8 .
|
|
.Sh HARDWARE
|
|
The adapters supported by the
|
|
.Nm
|
|
driver exist only on boards that have an XScale processor.
|
|
.Sh DIAGNOSTICS
|
|
.Bl -diag
|
|
.It "npe%d: unit %d not supported"
|
|
The unit is larger than the maximum number built into the driver.
|
|
This should not happen as
|
|
.Nm
|
|
devices are not really probed for; they are statically enumerated.
|
|
.It "npe%d: Cannot find my PHY."
|
|
The associated PHY did not appear while probing the MII bus.
|
|
The relationship between PHYs and NPEs is statically defined
|
|
in the driver and may require alterations to the driver for new boards.
|
|
.It "npe%d: unable to allocate memory for %s ... buffers"
|
|
There is not enough memory available for allocation.
|
|
The driver pre-allocated memory during attach so this should not happen.
|
|
.It "npe%d: remember to fix rx q setup"
|
|
See
|
|
.Sx BUGS
|
|
below.
|
|
.It "npe%d: free mbuf at entry %u"
|
|
An mbuf was unexpectedly found on the device queue; the index of
|
|
the queue entry is printed.
|
|
.It "npe%d: too many fragments %u"
|
|
A frame was dropped on transmit because it was too fragmented and
|
|
the logic to de-fragment failed.
|
|
This should not happen.
|
|
.It "npe%d: device timeout"
|
|
The device has stopped responding to the network, or there is a problem with
|
|
the network connection (cable).
|
|
.El
|
|
.Pp
|
|
Other diagnostics exist and are not listed here;
|
|
they should be self-explanatory.
|
|
.Sh SEE ALSO
|
|
.Xr altq 4 ,
|
|
.Xr arp 4 ,
|
|
.Xr miibus 4 ,
|
|
.Xr netintro 4 ,
|
|
.Xr polling 4 ,
|
|
.Xr qmgr 4 ,
|
|
.\".Xr vlan 4 ,
|
|
.Xr ifconfig 8
|
|
.Sh HISTORY
|
|
The
|
|
.Nm
|
|
device driver first appeared in
|
|
.Fx 6.3 .
|
|
.Sh CAVEATS
|
|
This driver has been tested only with dual-port boards using the IXP425
|
|
such as the Gateworks Avila 2348.
|
|
Some changes to the driver may be required for other configurations.
|
|
.Sh BUGS
|
|
The hardware queues are not properly flushed when the interface
|
|
is marked down.
|
|
.Pp
|
|
The assignment of receive traffic classes to hardware queues
|
|
is presently incomplete.
|
|
Only the first 4 classes are assigned while there are 8 total.
|
|
The driver will print
|
|
.Dq Li "remember to fix rx q setup"
|
|
on startup as a reminder.
|
|
For the moment it is not a problem as all traffic arrives classified
|
|
with class 0.
|