NetBSD/share/man/man4/pci.4

517 lines
11 KiB
Groff

.\" $NetBSD: pci.4,v 1.91 2009/01/04 16:38:58 christos Exp $
.\"
.\" Copyright (c) 1997 Jason R. Thorpe. All rights reserved.
.\" Copyright (c) 1997 Jonathan Stone
.\" 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.
.\" 3. All advertising materials mentioning features or use of this software
.\" must display the following acknowledgements:
.\" This product includes software developed by Jonathan Stone
.\" 4. The name of the author may not be used to endorse or promote products
.\" derived from this software without specific prior written permission
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
.\"
.Dd January 3, 2009
.Dt PCI 4
.Os
.Sh NAME
.Nm pci
.Nd introduction to machine-independent PCI bus support and drivers
.Sh SYNOPSIS
.Cd "pci* at mainbus? bus ?"
.Cd "pci* at pchb? bus ?"
.Cd "pci* at ppb? bus ?"
.Pp
.Cd options PCIVERBOSE
.Cd options PCI_CONFIG_DUMP
.Cd options PCI_ADDR_FIXUP
.Cd options PCI_BUS_FIXUP
.Cd options PCI_INTR_FIXUP
.Sh DESCRIPTION
Other
.Nm
attachments are machine-dependent and depend on the bus topology and
.Tn PCI
bus interface of your system.
See
.Xr intro 4
for your system for details.
.Pp
.Nx
includes a machine-independent
.Tn PCI
bus subsystem and
several machine-independent
.Tn PCI
device drivers.
.Pp
Your system may support additional
.Tn PCI
devices.
Drivers for
.Tn PCI
devices not listed here are machine-dependent.
Consult your system's
.Xr intro 4
for additional information.
.Sh OPTIONS
.Bl -tag -width PCI_ADDR_FIXUP -offset 3n
.It Dv PCI_ADDR_FIXUP
Fixup PCI I/O and memory addresses.
.Pp
Some i386 and amd64 BIOS implementations don't allocate I/O space and
memory space for some PCI devices -- primarily BIOS in PnP mode, or laptops
that expect devices to be configured via ACPI.
Since necessary space isn't allocated, those devices
will not work without special handling.
.Pp
This option allocates I/O space and memory space
instead of relying upon the BIOS to do so.
.Pp
If necessary space is already correctly assigned to the devices,
this option leaves the space as is.
.Pp
.It Dv PCI_BUS_FIXUP
Fixup PCI bus numbering; needed for many
.Xr cardbus 4
bridges.
.Pp
Each PCI bus and CardBus should have a unique bus number.
But some BIOS implementations don't assign a bus number
for subordinate PCI buses.
And many BIOS implementations
don't assign a bus number for CardBuses.
.Pp
A typical symptom of this is the following boot message:
.D1 Sy cardbus0 at cardslot0: bus 0 device 0...
Please note that this cardbus0 has a bus number
.Sq 0 ,
but normally the bus number 0 is used by the machine's
primary PCI bus.
Thus, this bus number for cardbus is incorrect
.Pq not assigned .
In this situation, a device located in cardbus0 doesn't
show correct device ID,
because its bus number 0 incorrectly refers to the primary
PCI bus, and a device ID in the primary PCI bus is shown
in the boot message instead of the device's ID in the cardbus0.
.Pp
This option assigns bus numbers for all subordinate
PCI buses and CardBuses.
.Pp
Since this option renumbers all PCI buses and CardBuses,
all bus numbers of subordinate buses become different
when this option is enabled.
.It Dv PCI_INTR_FIXUP
Fixup PCI interrupt routing via PCIBIOS or ACPI.
.Pp
Some i386 and amd64 BIOS implementations don't assign an interrupt for
some devices.
.Pp
This option assigns an interrupt for such devices instead
of relying upon the BIOS to do so.
.Pp
If a valid interrupt has already been assigned to a device, this
option leaves the interrupt as is.
.El
.Sh HARDWARE
.Nx
includes machine-independent
.Tn PCI
drivers, sorted by device type and driver name:
.Ss SCSI interfaces
.Bl -tag -width pcdisplay -offset indent
.It ahc
Adaptec 29xx, 39xx, and other AIC-7xxx-based
.Tn SCSI
interfaces.
.It adv
Advansys
.Tn SCSI
interfaces.
.It adw
Advansys Ultra Wide
.Tn SCSI
interfaces.
.It bha
Buslogic BT-9xx
.Tn SCSI
interfaces.
.It dpt
DPT SmartCache/SmartRAID III and IV
.Tn SCSI
interfaces.
.It iha
Initio INIC-940/950
.Tn SCSI
interfaces.
.It isp
QLogic ISP-1020, ISP-1040, and ISP-2100
.Tn SCSI
and
.Tn FibreChannel
interfaces.
.It mfi
LSI Logic \*[Am] Dell MegaRAID SAS RAID controllers.
.It mly
Mylex AcceleRAID and eXtremeRAID controllers with v6 firmware.
.It pcscp
Advanced Micro Devices Am53c974 PCscsi-PCI
.Tn SCSI
interfaces.
.It siop
Symbios Logic/NCR 53c8xx-family
.Tn SCSI
interfaces.
.It trm
Tekram TRM-S1040 ASIC based
.Tn SCSI
interfaces.
.El
.Ss Disk and tape controllers
.Bl -tag -width pcdisplay -offset indent
.It aac
The Adaptec AAC family of RAID controllers.
.It ahcisata
AHCI 1.0 and 1.1 compliant SATA controllers.
.It amr
The AMI and LSI Logic MegaRAID family of RAID controllers.
.It cac
Compaq array controllers.
.It icp
ICP Vortex GDT and Intel Storage RAID controllers.
.It mlx
Mylex DAC960 and DEC SWXCR RAID controllers.
.It pciide
IDE disk controllers.
.It twe
3Ware Escalade RAID controllers.
.El
.Ss Network interfaces
.Bl -tag -width pcdisplay -offset indent
.It an
.Tn Aironet
4500/4800 and
.Tn Cisco
340 series 802.11 interfaces.
.It bnx
Broadcom NetXtreme II 10/100/1000 Ethernet interfaces.
.It de
.Tn DEC
DC21x4x (Tulip) based
.Tn Ethernet
interfaces, including the DE435,
DE450, and DE500, and Znyx, SMC, Cogent/Adaptec, and Asante single- and
multi-port
.Tn Ethernet
interfaces.
.It en
Midway-based Efficient Networks Inc. and Adaptec ATM interfaces.
.It ep
3Com 3c590, 3c595, 3c900, and 3c905
.Tn Ethernet
interfaces.
.It epic
SMC83C170 (EPIC/100)
.Tn Ethernet
interfaces.
.It esh
RoadRunner-based HIPPI interfaces.
.It ex
3Com 3c900, 3c905, and 3c980
.Tn Ethernet
interfaces.
.It fpa
.Tn DEC
DEFPA
.Tn FDDI
interfaces.
.It fxp
Intel EtherExpress PRO 10+/100B
.Tn Ethernet
interfaces.
.It gsip
National Semiconductor DP83820 based Gigabit
.Tn Ethernet
interfaces.
.It hme
Sun Microelectronics STP2002-STQ
.Tn Ethernet
interfaces.
.It le
PCNet-PCI
.Tn Ethernet
interfaces.
Note, the
.Xr pcn 4
driver supersedes this driver.
.It lmc
LAN Media Corp WAN interfaces.
.It msk
Marvell Yukon 2 based Gigabit
.Tn Ethernet
interfaces.
.It ne
NE2000-compatible
.Tn Ethernet
interfaces.
.It nfe
NVIDIA nForce
.Tn Ethernet
interfaces.
.It ntwoc
SDL Communications N2pci and WAN/ic 400 synchronous serial interfaces.
.It pcn
AMD PCnet-PCI family of
.Tn Ethernet
interfaces.
.It ral
Ralink Technology RT2500/RT2600-based 802.11a/b/g wireless network interfaces.
.It rtk
Realtek 8129/8139 based
.Tn Ethernet
interfaces.
.It sf
Adaptec AIC-6915 10/100
.Tn Ethernet
interfaces.
.It sip
Silicon Integrated Systems SiS 900, SiS 7016, and National Semiconductor
DP83815 based
.Tn Ethernet
interfaces.
.It sk
SysKonnect SK-98xx based Gigabit
.Tn Ethernet
interfaces.
.It ste
Sundance ST-201 10/100 based
.Tn Ethernet
interfaces.
.It stge
Sundance/Tamarack TC9021 based Gigabit
.Tn Ethernet
interfaces.
.It ti
Alteon Networks Tigon I and Tigon II Gigabit Ethernet driver.
.It tl
Texas Instruments ThunderLAN-based
.Tn Ethernet
interfaces.
.It tlp
DECchip 21x4x and clone
.Tn Ethernet
interfaces.
.It vge
VIA Networking Technologies VT6122 PCI Gigabit Ethernet adapter driver.
.It vr
VIA VT3043 (Rhine) and VT86C100A (Rhine-II)
.Tn Ethernet
interfaces.
.It wi
WaveLAN/IEEE and PRISM-II 802.11 wireless interfaces.
.It wm
Intel i8254x Gigabit
.Tn Ethernet
driver.
.El
.Ss Serial interfaces
.Bl -tag -width pcdisplay -offset indent
.It cy
Cyclades Cyclom-4Y, -8Y, and -16Y multi-port serial interfaces.
.It cz
Cyclades-Z series multi-port serial interfaces.
.El
.Ss Audio devices
.Bl -tag -width pcdisplay -offset indent
.It auacer
Acer Labs M5455 I/O Controller Hub integrated AC'97 audio device.
.It auich
Intel I/O Controller Hub integrated AC'97 audio device.
.It auvia
VIA VT82C686A integrated AC'97 audio device.
.It autri
Trident 4DWAVE-DX/NX, SiS 7018, ALi M5451 AC'97 audio device.
.It clcs
Cirrus Logic CS4280 audio device.
.It clct
Cirrus Logic CS4281 audio device.
.It cmpci
C-Media CMI8x38 audio device.
.It eap
Ensoniq AudioPCI audio device.
.It emuxki
Creative Labs SBLive! and PCI 512 audio device.
.It esa
ESS Technology Allegro-1 / Maestro-3 audio device.
.It esm
ESS Maestro-1/2/2e PCI AC'97 Audio Accelerator audio device.
.It eso
ESS Solo-1 PCI AudioDrive audio device.
.It fms
Forte Media FM801 audio device.
.It neo
NeoMagic MagicMedia 256 audio device.
.It sv
S3 SonicVibes audio device.
.It yds
Yamaha YMF724/740/744/754-based audio device.
.El
.Ss Bridges
.Bl -tag -width pcdisplay -offset indent
.It cbb
.Tn PCI
Yenta compatible
.Tn CardBus
bridges.
.It ppb
Generic
.Tn PCI Ns \- Ns Tn PCI
bridges, including
.Tn PCI
expansion backplanes.
.El
.Ss Miscellaneous devices
.Bl -tag -width pcdisplay -offset indent
.It bktr
Brooktree 848 compatible TV cards.
.It ehci
USB EHCI host controllers.
.It iop
I2O I/O processors.
.It mr
Guillemot Maxi Radio FM 2000 FM radio device.
.It oboe
Toshiba OBOE IrDA SIR/FIR controller.
.It ohci
USB OHCI host controllers.
.It pcic
.Tn PCI
.Tn PCMCIA
controllers, including the Cirrus Logic GD6729.
.It puc
PCI
.Dq universal
communications cards, containing
.Xr com 4
and
.Xr lpt 4
communications ports.
.It uhci
USB UHCI host controllers.
.It viapm
VIA VT82C686A hardware monitors.
.It vga
VGA graphics boards.
.El
.Sh SEE ALSO
.Xr aac 4 ,
.Xr adv 4 ,
.Xr adw 4 ,
.Xr agp 4 ,
.Xr ahc 4 ,
.Xr ahcisata 4 ,
.Xr amr 4 ,
.Xr an 4 ,
.Xr auich 4 ,
.Xr autri 4 ,
.Xr auvia 4 ,
.Xr bha 4 ,
.Xr bktr 4 ,
.Xr bnx 4 ,
.Xr cac 4 ,
.Xr cbb 4 ,
.Xr clcs 4 ,
.Xr cmpci 4 ,
.Xr cy 4 ,
.Xr cz 4 ,
.Xr de 4 ,
.Xr dpt 4 ,
.Xr eap 4 ,
.Xr ehci 4 ,
.Xr emuxki 4 ,
.Xr en 4 ,
.Xr ep 4 ,
.Xr epic 4 ,
.Xr esa 4 ,
.Xr esh 4 ,
.Xr esm 4 ,
.Xr eso 4 ,
.Xr ex 4 ,
.Xr fms 4 ,
.Xr fpa 4 ,
.Xr fxp 4 ,
.Xr gsip 4 ,
.Xr hme 4 ,
.Xr icp 4 ,
.Xr iha 4 ,
.Xr intro 4 ,
.Xr iop 4 ,
.Xr isp 4 ,
.Xr le 4 ,
.Xr lmc 4 ,
.Xr mfi 4 ,
.Xr mlx 4 ,
.Xr mly 4 ,
.Xr mpt 4 ,
.Xr msk 4 ,
.Xr ne 4 ,
.Xr neo 4 ,
.Xr nfe 4 ,
.Xr ntwoc 4 ,
.Xr oboe 4 ,
.Xr ohci 4 ,
.Xr pcic 4 ,
.Xr pciide 4 ,
.Xr pcn 4 ,
.Xr pcscp 4 ,
.Xr ppb 4 ,
.Xr puc 4 ,
.Xr ral 4 ,
.Xr rtk 4 ,
.Xr sf 4 ,
.Xr siisata 4 ,
.Xr siop 4 ,
.Xr sip 4 ,
.Xr sk 4 ,
.Xr ste 4 ,
.Xr stge 4 ,
.Xr sv 4 ,
.Xr ti 4 ,
.Xr tl 4 ,
.Xr tlp 4 ,
.Xr trm 4 ,
.Xr twe 4 ,
.Xr uhci 4 ,
.Xr vga 4 ,
.Xr vge 4 ,
.Xr viapm 4 ,
.Xr vr 4 ,
.Xr wi 4 ,
.Xr wm 4 ,
.Xr wscons 4 ,
.Xr yds 4
.Sh HISTORY
The machine-independent
.Tn PCI
subsystem appeared in
.Nx 1.2 .