2 .\" Copyright (c) 2006 Sam Leffler, Errno Consulting
4 .\" All rights reserved.
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\" notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\" notice, this list of conditions and the following disclaimer in the
13 .\" documentation and/or other materials provided with the distribution.
15 .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
16 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18 .\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
19 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 .Nd "Intel XScale Network Processing Engine (NPE) Ethernet device driver"
35 To compile this driver into the kernel,
36 place the following lines in your
37 kernel configuration file:
38 .Bd -ragged -offset indent
48 driver provides support for Ethernet adapters based on the Intel
49 XScale Network Processing Engine (NPE).
50 The NPE must be loaded with firmware that is typically distributed
51 with boards that have this part.
52 Otherwise the firmware may be obtained at no cost from the Intel web site.
56 driver supports the following media types:
57 .Bl -tag -width ".Cm full-duplex"
59 Enable autoselection of the media type and options.
63 Set 100Mbps (Fast Ethernet) operation.
68 driver supports the following media options:
69 .Bl -tag -width ".Cm full-duplex"
71 Set full duplex operation.
76 driver supports polled operation when the system is
77 configured with device polling support,
79 Note that for multi-port configurations polling and interrupt-style
80 operation should not be combined as one of the hardware queues
81 is shared by all ports.
83 For further information on configuring this device, see
88 .\"driver supports reception and transmission of extended frames
93 .\"can be controlled by means of the
99 The adapters supported by the
101 driver exist only on boards that have an XScale processor.
104 .It "npe%d: unit %d not supported"
105 The unit is larger than the maximum number built into the driver.
106 This should not happen as
108 devices are not really probed for; they are statically enumerated.
109 .It "npe%d: Cannot find my PHY."
110 The associated PHY did not appear while probing the MII bus.
111 The relationship between PHYs and NPEs is statically defined
112 in the driver and may require alterations to the driver for new boards.
113 .It "npe%d: unable to allocate memory for %s ... buffers"
114 There is not enough memory available for allocation.
115 The driver pre-allocated memory during attach so this should not happen.
116 .It "npe%d: remember to fix rx q setup"
120 .It "npe%d: free mbuf at entry %u"
121 An mbuf was unexpectedly found on the device queue; the index of
122 the queue entry is printed.
123 .It "npe%d: too many fragments %u"
124 A frame was dropped on transmit because it was too fragmented and
125 the logic to de-fragment failed.
126 This should not happen.
127 .It "npe%d: device timeout"
128 The device has stopped responding to the network, or there is a problem with
129 the network connection (cable).
132 Other diagnostics exist and are not listed here;
133 they should be self-explanatory.
146 device driver first appeared in
149 This driver has been tested only with dual-port boards using the IXP425
150 such as the Gateworks Avila 2348.
151 Some changes to the driver may be required for other configurations.
153 The hardware queues are not properly flushed when the interface
156 The assignment of receive traffic classes to hardware queues
157 is presently incomplete.
158 Only the first 4 classes are assigned while there are 8 total.
159 The driver will print
160 .Dq Li "remember to fix rx q setup"
161 on startup as a reminder.
162 For the moment it is not a problem as all traffic arrives classified