1.\"
2.\" Copyright (c) 1994 Herb Peyerl
3.\" All rights reserved.
4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\"    notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\"    notice, this list of conditions and the following disclaimer in the
12.\"    documentation and/or other materials provided with the distribution.
13.\" 3. All advertising materials mentioning features or use of this software
14.\"    must display the following acknowledgement:
15.\"      This product includes software developed by Herb Peyerl
16.\" 3. The name of the author may not be used to endorse or promote products
17.\"    derived from this software without specific prior written permission
18.\"
19.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
20.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
21.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
22.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
23.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
24.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
28.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29.\"
30.\" $FreeBSD: stable/10/share/man/man4/man4.i386/ep.4 220240 2011-04-01 11:39:13Z imp $
31.\"
32.Dd April 1, 2011
33.Dt EP 4 i386
34.Os
35.Sh NAME
36.Nm ep
37.Nd "Ethernet driver for 3Com Etherlink III (3c5x9) interfaces"
38.Sh SYNOPSIS
39To compile this driver into the kernel,
40place the following line in your
41kernel configuration file:
42.Bd -ragged -offset indent
43.Cd "device ep"
44.Ed
45.Pp
46Alternatively, to load the driver as a
47module at boot time, place the following line in
48.Xr loader.conf 5 :
49.Bd -literal -offset indent
50if_ep_load="YES"
51.Ed
52.Sh DESCRIPTION
53The
54.Nm
55device driver supports network adapters based on the 3Com 3C5x9 Etherlink III
56Parallel Tasking chipset.
57.Pp
58Various models of these cards come with a different assortment of
59connectors:
60.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
61.It AUI/DIX
62Standard 15 pin connector, also known as 10base5 (thick-net)
63.It 10Base2
64BNC, also known as thin-net
65.It 10BaseT
66UTP, also known as twisted pair
67.El
68.Pp
69The default port to use is the port that has been selected with the
70setup utility.
71To override this, use the following media options with
72.Xr ifconfig 8
73or in your
74.Pa /etc/rc.conf
75file.
76.Bl -tag -width xxxxxxxxxxxxxxxxxxxx
77.It 10base5/AUI
78Use the AUI port.
79.It 10base2/BNC
80Use the BNC port.
81.It 10baseT/UTP
82Use the UTP port.
83.El
84.Sh HARDWARE
85The
86.Nm
87driver supports Ethernet adapters based on the
883Com 3C5x9 Etherlink III Parallel Tasking chipset, including:
89.Pp
90.Bl -bullet -compact
91.It
923Com 3C1 CF
93.It
943Com 3C509-TP, 3C509-BNC, 3C509-Combo, 3C509-TPO, 3C509-TPC ISA
95.It
963Com 3C509B-TP, 3C509B-BNC, 3C509B-Combo, 3C509B-TPO, 3C509B-TPC ISA
97.It
983Com 3C529, 3C529-TP MCA
99.It
1003Com 3C562/3C563 PCMCIA
101.It
1023Com 3C569B-J-TPO, 3C569B-J-COMBO CBUS
103.It
1043Com 3C574, 3C574TX, 3C574-TX, 3CCFE574BT, 3CXFE574BT, 3C3FE574BT PCMCIA
105.It
1063Com 3C579-TP, 3C579-BNC EISA
107.It
1083Com 3C589, 3C589B, 3C589C, 3C589D, 3CXE589DT PCMCIA
109.It
1103Com 3CCFEM556B, 3CCFEM556BI PCMCIA
111.It
1123Com 3CXE589EC, 3CCE589EC, 3CXE589ET, 3CCE589ET PCMCIA
113.It
1143Com Megahertz 3CCEM556, 3CXEM556, 3CCEM556B, 3CXEM556B, 3C3FEM556C PCMCIA
115.It
1163Com OfficeConnect 3CXSH572BT, 3CCSH572BT PCMCIA
117.It
118Farallon EtherWave and EtherMac PC Card (P/n 595/895 with BLUE arrow)
119.El
120.Sh NOTES
121The 3c509 card has no jumpers to set the address.
1223Com supplies software to set the address of the card in software.
123To find the card on the ISA bus, the kernel performs a complex
124scan operation at IO address 0x110.
125Beware!
126Avoid placing other cards at that address!
127.Pp
128Furthermore, the 3c509 should only be configured in EISA mode
129when installed in a computer that has actual EISA slots
130(and an EISA-aware BIOS).
131The normal driver auto-detection support is sufficient for non-EISA systems.
132.Pp
133Cards in PnP mode may conflict with other resources in the system.
134Ensure your BIOS is configured correctly to exclude resources used by
135the 3c509, especially IRQs, to avoid unpredictable behavior.
136.Pp
137Many different companies sold the 3Com PC Cards under their own private
138label.
139These cards also work.
140.Pp
141The Farallon EtherWave and EtherMac card came in two varieties.
142The
143.Nm
144driver supports the 595 and 895 cards.
145These cards have the blue arrow on the front along with a 3Com logo.
146The Farallon 595a cards, which have a red arrow on the front,
147are also called EtherWave and EtherMac.
148They are supported by the
149.Xr sn 4
150driver.
151.Sh DIAGNOSTICS
152.Bl -diag
153.It "ep0: reset (status: %x)"
154The driver has encountered a FIFO underrun or overrun.
155The driver will reset the card and the packet will be lost.
156This is not fatal.
157.It "ep0: eeprom failed to come ready"
158The eeprom failed to come ready.
159This probably means the card is wedged.
160.It "ep0: 3c509 in test mode. Erase pencil mark!"
161This means that someone has scribbled with pencil
162in the test area on the card.
163Erase the pencil mark and reboot.
164(This is not a joke).
165.It "ep0: No I/O space?!"
166The driver was unable to allocate the I/O space that it thinks
167should be there.
168Look for conflicts with other devices.
169.It "ep0: No irq?!"
170The driver could not allocate the interrupt it wanted.
171Look for conflicts, although sharing interrupts for PC Card is normal.
172.It "ep0: No connectors!"
173The driver queried the hardware for what ethernet attachment were
174present, but the hardware reported none that the driver recognized.
175.It "ep0: Unable to get Ethernet address!"
176The driver was unable to read the ethernet address from the EEPROM.
177This is likely the result of the card being wedged.
178.It "ep0: if_alloc() failed"
179The driver was unable to allocate a ifnet structure.
180This may happen in extremely low memory conditions.
181.It "ep0: strange connector type in EEPROM: assuming AUI"
182The driver does not know what to do with the information the EEPROM
183has about connectors, so it is assuming the worst.
184.It "ep0: unknown ID 0xXXXXXXXX"
185The driver has found an ID that it believes it supports, but does not
186have a specific identification string to present to the user.
187.It "ep0: <%s> at port 0x%03x in EISA mode"
188The 3C509 ISA card is in EISA mode.
189This message appears to be purely informational.
190.It "ep0: <%s> at x0%03x in PnP mode"
191This card appears to be in Plug and Play mode.
192It should be probed as part of the plug and play phase of the ISA
193probes.
194.It "ep0: Invalid EEPROM checksum!"
195The EEPROM has a bad checksum, so the driver is ignoring the card.
196.It "ep0: bus_setup_intr() failed!"
197The driver was unable to setup the interrupt handler.
198This should never happen.
199.El
200.Sh SEE ALSO
201.Xr altq 4 ,
202.Xr ed 4 ,
203.Xr el 4 ,
204.Xr ie 4 ,
205.Xr intro 4 ,
206.Xr ng_ether 4 ,
207.Xr sn 4 ,
208.Xr vx 4 ,
209.Xr ifconfig 8
210.Sh STANDARDS
211are great.
212There is so many to choose from.
213