.\" $NetBSD: ex.4,v 1.19 2012/03/13 19:25:40 njoly Exp $
.\"
.\" Copyright (c) 1999 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.Dd October 30, 2007
.Dt EX 4
.Os
.Sh NAME
.Nm ex
.Nd driver for
.Tn 3Com
Fast EtherLink XL (3c900, 3c905, 3c980) and similar
.Tn PCI
bus and
.Tn cardbus
.Tn Ethernet
interfaces
.Sh SYNOPSIS
.Cd "ex* at cardbus? function ?"
.Cd "ex* at pci? dev ? function ?"
.Sh DESCRIPTION
.Tn 3Com
.Tn Ethernet
and
.Tn Fast Ethernet
cards supported by the
.Nm
driver include:
.Pp
.Bl -tag -width "3c900B-COMBO" -compact
.It 3c450-TX
10/100 Ethernet
.It 3c555
MiniPCI 10/100 Ethernet
.It 3c575-TX
Ethernet
.It 3c575B-TX
Ethernet
.It 3c575CT
Ethernet
.It 3c656
MiniPCI 10/100 Ethernet
.It 3c656B
MiniPCI 10/100 Ethernet
.It 3c656C
MiniPCI 10/100 Ethernet
.It 3c900-TPO
Ethernet
.It 3c900-COMBO
Ethernet
.It 3c900B-TPC
Ethernet
.It 3c900B-TPO
Ethernet
.It 3c900B-COMBO
Ethernet
.It 3c905-T4
10/100 Ethernet
.It 3c905-TX
10/100 Ethernet
.It 3c905B-COMBO
10/100 Ethernet
.It 3c905B-FX
10/100 Ethernet
.It 3c905B-T4
10/100 Ethernet
.It 3c905B-TX
10/100 Ethernet
.It 3c905CX-TX
10/100 Ethernet
.It 3c980
Server Adapter 10/100 Ethernet
.It 3c980C-TXM
10/100 Ethernet
.It 3cSOHO100-TX
10/100 Ethernet
.El
.Pp
All versions of the
.Tn EtherLink XL
.Pq except the older 3c900 and 3c905
support IPv4/TCP/UDP checksumming in hardware.
The
.Nm
driver supports this feature of the chip.
See
.Xr ifconfig 8
for information on how to enable this feature.
.Sh MEDIA SELECTION
Some of these network interfaces support the Media Independent Interface
.Pq Tn MII ,
a bus which can have at least one arbitrary Physical interface
.Pq Tn PHY
chip on it.
.Nx
supports
.Tn MII
and has separate drivers for many different
.Tn PHY
chips, including
.Xr ukphy 4 ,
a generic
.Tn PHY
driver that can support many
.Tn PHY
chips that
.Nx
does not yet have a specific driver for.
.Pp
Support for the
.Tn PHY
found on a given
.Tn NIC
must be configured into a
.Nx
kernel
.Xr config 1
for this driver to work properly in those cases.
.Pp
See
.Xr ifmedia 4 ,
and
.Xr mii 4 .
.Sh DIAGNOSTICS
.Bl -diag
.It "%s: adapter failure (%x)"
.It "%s: can't allocate download descriptors, error = %d"
.It "%s: can't allocate or map rx buffers"
.It "%s: can't allocate upload descriptors, error = %d"
.It "%s: can't create download desc. DMA map, error = %d"
.It "%s: can't create rx DMA map %d, error = %d"
.It "%s: can't create tx DMA map %d, error = %d"
.It "%s: can't create upload desc. DMA map, error = %d"
.It "%s: can't load download desc. DMA map, error = %d"
.It "%s: can't load mbuf chain, error = %d"
.It "%s: can't load rx buffer, error = %d"
.It "%s: can't load upload desc. DMA map, error = %d"
.It "%s: can't map download descriptors, error = %d"
.It "%s: can't map upload descriptors, error = %d"
.It "%s: fifo underrun (%x) @%d"
.It "%s: jabber (%x)"
.It "%s: receive stalled"
.It "%s: too many segments, "
.It "%s: uplistptr was 0"
host too slow to serve incoming packets
.El
.Sh SEE ALSO
.Xr cardbus 4 ,
.Xr exphy 4 ,
.Xr ifmedia 4 ,
.Xr intro 4 ,
.Xr mii 4 ,
.Xr pci 4 ,
.Xr ifconfig 8