EP(4)
๐ EP(4) ๐ โ the 3Com Etherlink III tea โโจ
okay bestie, sit down, grab a strawberry ๐, because we're talking about ep โ the Ethernet driver for 3Com Etherlink III (3c5x9) interfaces. this is from the i386 Kernel Interfaces Manual btw, so it's giving vintage ๐. it's also, um, kind of a ghost ๐ป โ more on that in a sec. iykyk.
๐ SYNOPSIS ๐
so you wanna get this driver living in your kernel? no cap, here's the move. drop this line into your kernel configuration file:
device ep
or, if you'd rather slide it in as a module at boot time instead (so valid, so slay), put this in loader.conf(5):
if_ep_load="YES"
pick your fighter, both work ๐
๐ DEPRECATION NOTICE ๐
bestie. i need you to hear me. the ep driver is not present in FreeBSD 13.0 and later. she's gone. she left the group chat. ๐ญ
if you want the full lore, go read https://github.com/freebsd/fcp/blob/master/fcp-0101.md. that's the whole story right there.
โจ DESCRIPTION โจ
the ep device driver supports network adapters based on the 3Com 3C5x9 Etherlink III Parallel Tasking chipset. iconic chipset, honestly.
so these cards come in a bunch of different models and they each have a different lil assortment of connectors, which is very "choose your own adventure" of them ๐:
- AUI/DIX โ standard 15 pin connector, also known as
10base5(thick-net). thicc. - 10Base2 โ BNC, also known as thin-net ๐ฆ
- 10BaseT โ UTP, also known as twisted pair. twisted, like this whole situation fr fr.
the default port to use is the port that has been selected with the setup utility. that's the vibe by default. but if you wanna override it (main character energy ๐
), use these media options with ifconfig(8) or pop them in your /etc/rc.conf file:
10base5/AUIโ use the AUI port.10base2/BNCโ use the BNC port.10baseT/UTPโ use the UTP port.
๐ HARDWARE ๐
the ep driver supports Ethernet adapters based on the 3Com 3C5x9 Etherlink III Parallel Tasking chipset, including โ and omg the list is long, we love a thorough queen:
- 3Com 3C1 CF
- 3Com 3C509-TP, 3C509-BNC, 3C509-Combo, 3C509-TPO, 3C509-TPC ISA
- 3Com 3C509B-TP, 3C509B-BNC, 3C509B-Combo, 3C509B-TPO, 3C509B-TPC ISA
- 3Com 3C562/3C563 PCMCIA
- 3Com 3C574, 3C574TX, 3C574-TX, 3CCFE574BT, 3CXFE574BT, 3C3FE574BT PCMCIA
- 3Com 3C589, 3C589B, 3C589C, 3C589D, 3CXE589DT PCMCIA
- 3Com 3CCFEM556B, 3CCFEM556BI PCMCIA
- 3Com 3CXE589EC, 3CCE589EC, 3CXE589ET, 3CCE589ET PCMCIA
- 3Com Megahertz 3CCEM556, 3CXEM556, 3CCEM556B, 3CXEM556B, 3C3FEM556C PCMCIA
- 3Com OfficeConnect 3CXSH572BT, 3CCSH572BT PCMCIA
- Farallon EtherWave and EtherMac PC Card (P/n 595/895 with BLUE arrow)
๐ธ NOTES ๐ธ
okay this is the part where i hold your hand ๐ซถ because some of this is lowkey spicy.
the 3c509 card has no jumpers to set the address. instead, 3Com supplies software to set the address of the card in software. to find the card on the ISA bus, the kernel performs a complex scan operation at IO address 0x110.
โ ๏ธ BEWARE! avoid placing other cards at that address! i'm not being dramatic, this is literally what it says. ๐
also โ and this is important โ the 3c509 should not be configured in EISA mode.
cards in PnP mode may conflict with other resources in the system. so make sure your BIOS is configured correctly to exclude resources used by the 3c509, especially IRQs, to avoid unpredictable behavior. unpredictable behavior is not the slay we're going for ๐.
many different companies sold the 3Com PC Cards under their own private label. and good news bestie: these cards also work. ๐
now, the Farallon EtherWave and EtherMac card came in two varieties. the ep driver supports the 595 and 895 cards. these ones have the blue arrow on the front along with a 3Com logo. the Farallon 595a cards โ which have a red arrow on the front โ are also called EtherWave and EtherMac, but those are supported by the sn(4) driver instead. so like, blue arrow = us, red arrow = not us. got it? ๐โค๏ธ
๐ฅ DIAGNOSTICS ๐ฅ
here's the group chat of error messages this driver can send you. read them, love them, know them.
ep0: reset (status: %x)โ the driver has encountered a FIFO underrun or overrun. it will reset the card and the packet will be lost. ngl it's not fatal, so breathe. ๐ฎ๐จep0: eeprom failed to come readyโ the eeprom failed to come ready. this probably means the card is wedged. she's stuck. ๐ญep0: 3c509 in test mode. Erase pencil mark!โ this means that someone has scribbled with pencil in the test area on the card. erase the pencil mark and reboot. (this is not a joke). i repeat: NOT a joke. actual pencil. actual erasing. โ๏ธep0: No I/O space?!โ the driver was unable to allocate the I/O space that it thinks should be there. look for conflicts with other devices.ep0: No irq?!โ the driver could not allocate the interrupt it wanted. look for conflicts, although sharing interrupts for PC Card is normal.ep0: No connectors!โ the driver queried the hardware for what ethernet attachment were present, but the hardware reported none that the driver recognized.ep0: Unable to get Ethernet address!โ the driver was unable to read the ethernet address from the EEPROM. this is likely the result of the card being wedged.ep0: if_alloc() failedโ the driver was unable to allocate a ifnet structure. this may happen in extremely low memory conditions.ep0: strange connector type in EEPROM: assuming AUIโ the driver does not know what to do with the information the EEPROM has about connectors, so it is assuming the worst. pessimistic queen ๐ep0: unknown ID 0xXXXXXXXXโ the driver has found an ID that it believes it supports, but does not have a specific identification string to present to the user.ep0: <%s> at port 0x%03x in EISA mode, ignored.โ the 3C509 ISA card is in EISA mode. the card will be ignored until it is taken out of EISA mode.ep0: <%s> at x0%03x in PnP modeโ this card appears to be in Plug and Play mode. it should be probed as part of the plug and play phase of the ISA probes.ep0: Invalid EEPROM checksum!โ the EEPROM has a bad checksum, so the driver is ignoring the card.ep0: bus_setup_intr() failed!โ the driver was unable to setup the interrupt handler. this should never happen. (famous last words fr fr ๐ซ )
๐ฆ SEE ALSO ๐ฆ
go read these when you're done here, they're all part of the family:
altq(4), ed(4), intro(4), ng_ether(4), sn(4), vx(4), ifconfig(8)
๐ STANDARDS ๐
are great. there is so many to choose from. ๐โจ
and that's the whole page, bestie. this one came to you from Debian, dated October 24, 2018, and it's EP(4) โ now go forth and be iconic with your very old network cards. mwah ๐๐๐ซถ
๐ฆ where this page comes from
- debian bookworm: freebsd-manpages 12.2-1 ยท BSD-2-Clause-FreeBSD AND BSD-4-Clause
- debian trixie: freebsd-manpages 12.2-2 ยท BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu jammy: freebsd-manpages 12.2-1 ยท BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu noble: freebsd-manpages 12.2-1 ยท BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu questing: freebsd-manpages 12.2-2
- ubuntu resolute: freebsd-manpages 12.2-2build1 ยท BSD-2-Clause-FreeBSD AND BSD-4-Clause
- ubuntu stonking: freebsd-manpages 12.2-2build1 ยท BSD-2-Clause-FreeBSD AND BSD-4-Clause
- Copyright (c) 1994 Herb Peyerl
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms