161 lines
5.0 KiB
Groff
161 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
|
||
|
.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:
|
||
|
.Pp
|
||
|
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||
|
.It autoselect
|
||
|
Enable autoselection of the media type and options
|
||
|
.It 10baseT/UTP
|
||
|
Set 10Mbps operation
|
||
|
.It 100baseTX
|
||
|
Set 100Mbps (Fast Ethernet) operation
|
||
|
.El
|
||
|
.Pp
|
||
|
The
|
||
|
.Nm
|
||
|
driver supports the following media options:
|
||
|
.Pp
|
||
|
.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
|
||
|
.It 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
|
||
|
.Nm
|
||
|
adapters 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 didn't appear while probing the MII bus.
|
||
|
The relationship between PHY's and NPE's is statically defined
|
||
|
in the driver and may require alteratoins 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 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 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 "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.
|