1.\" $NetBSD: pci.4,v 1.89 2008/12/16 02:14:24 jakllsch Exp $ 2.\" 3.\" Copyright (c) 1997 Jason R. Thorpe. All rights reserved. 4.\" Copyright (c) 1997 Jonathan Stone 5.\" All rights reserved. 6.\" 7.\" Redistribution and use in source and binary forms, with or without 8.\" modification, are permitted provided that the following conditions 9.\" are met: 10.\" 1. Redistributions of source code must retain the above copyright 11.\" notice, this list of conditions and the following disclaimer. 12.\" 2. Redistributions in binary form must reproduce the above copyright 13.\" notice, this list of conditions and the following disclaimer in the 14.\" documentation and/or other materials provided with the distribution. 15.\" 3. All advertising materials mentioning features or use of this software 16.\" must display the following acknowledgements: 17.\" This product includes software developed by Jonathan Stone 18.\" 4. The name of the author may not be used to endorse or promote products 19.\" derived from this software without specific prior written permission 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 22.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 23.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 24.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 25.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 26.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 30.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31.\" 32.Dd December 16, 2008 33.Dt PCI 4 34.Os 35.Sh NAME 36.Nm pci 37.Nd introduction to machine-independent PCI bus support and drivers 38.Sh SYNOPSIS 39.Cd "pci* at mainbus? bus ?" 40.Cd "pci* at pchb? bus ?" 41.Cd "pci* at ppb? bus ?" 42.Pp 43.Cd options PCIVERBOSE 44.Cd options PCI_CONFIG_DUMP 45.Cd options PCI_ADDR_FIXUP 46.Cd options PCI_BUS_FIXUP 47.Cd options PCI_INTR_FIXUP 48.Sh DESCRIPTION 49Other 50.Nm 51attachments are machine-dependent and depend on the bus topology and 52.Tn PCI 53bus interface of your system. 54See 55.Xr intro 4 56for your system for details. 57.Pp 58.Nx 59includes a machine-independent 60.Tn PCI 61bus subsystem and 62several machine-independent 63.Tn PCI 64device drivers. 65.Pp 66Your system may support additional 67.Tn PCI 68devices. 69Drivers for 70.Tn PCI 71devices not listed here are machine-dependent. 72Consult your system's 73.Xr intro 4 74for additional information. 75.Sh OPTIONS 76.Bl -tag -width PCI_ADDR_FIXUP -offset 3n 77.It Dv PCI_ADDR_FIXUP 78Fixup PCI I/O and memory addresses. 79.Pp 80Some i386 and amd64 BIOS implementations don't allocate I/O space and 81memory space for some PCI devices -- primarily BIOS in PnP mode, or laptops 82that expect devices to be configured via ACPI. 83Since necessary space isn't allocated, those devices 84will not work without special handling. 85.Pp 86This option allocates I/O space and memory space 87instead of relying upon the BIOS to do so. 88.Pp 89If necessary space is already correctly assigned to the devices, 90this option leaves the space as is. 91.Pp 92.It Dv PCI_BUS_FIXUP 93Fixup PCI bus numbering; needed for many 94.Xr cardbus 4 95bridges. 96.Pp 97Each PCI bus and CardBus should have a unique bus number. 98But some BIOS implementations don't assign a bus number 99for subordinate PCI buses. 100And many BIOS implementations 101don't assign a bus number for CardBuses. 102.Pp 103A typical symptom of this is the following boot message: 104.D1 Sy cardbus0 at cardslot0: bus 0 device 0... 105Please note that this cardbus0 has a bus number 106.Sq 0 , 107but normally the bus number 0 is used by the machine's 108primary PCI bus. 109Thus, this bus number for cardbus is incorrect 110.Pq not assigned . 111In this situation, a device located in cardbus0 doesn't 112show correct device ID, 113because its bus number 0 incorrectly refers to the primary 114PCI bus, and a device ID in the primary PCI bus is shown 115in the boot message instead of the device's ID in the cardbus0. 116.Pp 117This option assigns bus numbers for all subordinate 118PCI buses and CardBuses. 119.Pp 120Since this option renumbers all PCI buses and CardBuses, 121all bus numbers of subordinate buses become different 122when this option is enabled. 123.It Dv PCI_INTR_FIXUP 124Fixup PCI interrupt routing via PCIBIOS or ACPI. 125.Pp 126Some i386 and amd64 BIOS implementations don't assign an interrupt for 127some devices. 128.Pp 129This option assigns an interrupt for such devices instead 130of relying upon the BIOS to do so. 131.Pp 132If a valid interrupt has already been assigned to a device, this 133option leaves the interrupt as is. 134.El 135.Sh HARDWARE 136.Nx 137includes machine-independent 138.Tn PCI 139drivers, sorted by device type and driver name: 140.Ss SCSI interfaces 141.Bl -tag -width pcdisplay -offset indent 142.It ahc 143Adaptec 29xx, 39xx, and other AIC-7xxx-based 144.Tn SCSI 145interfaces. 146.It adv 147Advansys 148.Tn SCSI 149interfaces. 150.It adw 151Advansys Ultra Wide 152.Tn SCSI 153interfaces. 154.It bha 155Buslogic BT-9xx 156.Tn SCSI 157interfaces. 158.It dpt 159DPT SmartCache/SmartRAID III and IV 160.Tn SCSI 161interfaces. 162.It iha 163Initio INIC-940/950 164.Tn SCSI 165interfaces. 166.It isp 167QLogic ISP-1020, ISP-1040, and ISP-2100 168.Tn SCSI 169and 170.Tn FibreChannel 171interfaces. 172.It mfi 173LSI Logic \*[Am] Dell MegaRAID SAS RAID controllers. 174.It mly 175Mylex AcceleRAID and eXtremeRAID controllers with v6 firmware. 176.It pcscp 177Advanced Micro Devices Am53c974 PCscsi-PCI 178.Tn SCSI 179interfaces. 180.It siop 181Symbios Logic/NCR 53c8xx-family 182.Tn SCSI 183interfaces. 184.It trm 185Tekram TRM-S1040 ASIC based 186.Tn SCSI 187interfaces. 188.El 189.Ss Disk and tape controllers 190.Bl -tag -width pcdisplay -offset indent 191.It aac 192The Adaptec AAC family of RAID controllers. 193.It ahcisata 194AHCI 1.0 and 1.1 compliant SATA controllers. 195.It amr 196The AMI and LSI Logic MegaRAID family of RAID controllers. 197.It cac 198Compaq array controllers. 199.It icp 200ICP Vortex GDT and Intel Storage RAID controllers. 201.It mlx 202Mylex DAC960 and DEC SWXCR RAID controllers. 203.It pciide 204IDE disk controllers. 205.It siisata 206Silicon Image SATA-II controllers. 207.It twe 2083Ware Escalade RAID controllers. 209.El 210.Ss Network interfaces 211.Bl -tag -width pcdisplay -offset indent 212.It an 213.Tn Aironet 2144500/4800 and 215.Tn Cisco 216340 series 802.11 interfaces. 217.It bnx 218Broadcom NetXtreme II 10/100/1000 Ethernet interfaces. 219.It de 220.Tn DEC 221DC21x4x (Tulip) based 222.Tn Ethernet 223interfaces, including the DE435, 224DE450, and DE500, and Znyx, SMC, Cogent/Adaptec, and Asante single- and 225multi-port 226.Tn Ethernet 227interfaces. 228.It en 229Midway-based Efficient Networks Inc. and Adaptec ATM interfaces. 230.It ep 2313Com 3c590, 3c595, 3c900, and 3c905 232.Tn Ethernet 233interfaces. 234.It epic 235SMC83C170 (EPIC/100) 236.Tn Ethernet 237interfaces. 238.It esh 239RoadRunner-based HIPPI interfaces. 240.It ex 2413Com 3c900, 3c905, and 3c980 242.Tn Ethernet 243interfaces. 244.It fpa 245.Tn DEC 246DEFPA 247.Tn FDDI 248interfaces. 249.It fxp 250Intel EtherExpress PRO 10+/100B 251.Tn Ethernet 252interfaces. 253.It gsip 254National Semiconductor DP83820 based Gigabit 255.Tn Ethernet 256interfaces. 257.It hme 258Sun Microelectronics STP2002-STQ 259.Tn Ethernet 260interfaces. 261.It le 262PCNet-PCI 263.Tn Ethernet 264interfaces. 265Note, the 266.Xr pcn 4 267driver supersedes this driver. 268.It lmc 269LAN Media Corp WAN interfaces. 270.It msk 271Marvell Yukon 2 based Gigabit 272.Tn Ethernet 273interfaces. 274.It ne 275NE2000-compatible 276.Tn Ethernet 277interfaces. 278.It nfe 279NVIDIA nForce 280.Tn Ethernet 281interfaces. 282.It ntwoc 283SDL Communications N2pci and WAN/ic 400 synchronous serial interfaces. 284.It pcn 285AMD PCnet-PCI family of 286.Tn Ethernet 287interfaces. 288.It ral 289Ralink Technology RT2500/RT2600-based 802.11a/b/g wireless network interfaces. 290.It rtk 291Realtek 8129/8139 based 292.Tn Ethernet 293interfaces. 294.It sf 295Adaptec AIC-6915 10/100 296.Tn Ethernet 297interfaces. 298.It sip 299Silicon Integrated Systems SiS 900, SiS 7016, and National Semiconductor 300DP83815 based 301.Tn Ethernet 302interfaces. 303.It sk 304SysKonnect SK-98xx based Gigabit 305.Tn Ethernet 306interfaces. 307.It ste 308Sundance ST-201 10/100 based 309.Tn Ethernet 310interfaces. 311.It stge 312Sundance/Tamarack TC9021 based Gigabit 313.Tn Ethernet 314interfaces. 315.It ti 316Alteon Networks Tigon I and Tigon II Gigabit Ethernet driver. 317.It tl 318Texas Instruments ThunderLAN-based 319.Tn Ethernet 320interfaces. 321.It tlp 322DECchip 21x4x and clone 323.Tn Ethernet 324interfaces. 325.It vge 326VIA Networking Technologies VT6122 PCI Gigabit Ethernet adapter driver. 327.It vr 328VIA VT3043 (Rhine) and VT86C100A (Rhine-II) 329.Tn Ethernet 330interfaces. 331.It wi 332WaveLAN/IEEE and PRISM-II 802.11 wireless interfaces. 333.It wm 334Intel i8254x Gigabit 335.Tn Ethernet 336driver. 337.El 338.Ss Serial interfaces 339.Bl -tag -width pcdisplay -offset indent 340.It cy 341Cyclades Cyclom-4Y, -8Y, and -16Y multi-port serial interfaces. 342.It cz 343Cyclades-Z series multi-port serial interfaces. 344.El 345.Ss Audio devices 346.Bl -tag -width pcdisplay -offset indent 347.It auacer 348Acer Labs M5455 I/O Controller Hub integrated AC'97 audio device. 349.It auich 350Intel I/O Controller Hub integrated AC'97 audio device. 351.It auvia 352VIA VT82C686A integrated AC'97 audio device. 353.It autri 354Trident 4DWAVE-DX/NX, SiS 7018, ALi M5451 AC'97 audio device. 355.It clcs 356Cirrus Logic CS4280 audio device. 357.It clct 358Cirrus Logic CS4281 audio device. 359.It cmpci 360C-Media CMI8x38 audio device. 361.It eap 362Ensoniq AudioPCI audio device. 363.It emuxki 364Creative Labs SBLive! and PCI 512 audio device. 365.It esa 366ESS Technology Allegro-1 / Maestro-3 audio device. 367.It esm 368ESS Maestro-1/2/2e PCI AC'97 Audio Accelerator audio device. 369.It eso 370ESS Solo-1 PCI AudioDrive audio device. 371.It fms 372Forte Media FM801 audio device. 373.It neo 374NeoMagic MagicMedia 256 audio device. 375.It sv 376S3 SonicVibes audio device. 377.It yds 378Yamaha YMF724/740/744/754-based audio device. 379.El 380.Ss Bridges 381.Bl -tag -width pcdisplay -offset indent 382.It cbb 383.Tn PCI 384Yenta compatible 385.Tn CardBus 386bridges. 387.It ppb 388Generic 389.Tn PCI Ns \- Ns Tn PCI 390bridges, including 391.Tn PCI 392expansion backplanes. 393.El 394.Ss Miscellaneous devices 395.Bl -tag -width pcdisplay -offset indent 396.It bktr 397Brooktree 848 compatible TV cards. 398.It ehci 399USB EHCI host controllers. 400.It iop 401I2O I/O processors. 402.It mr 403Guillemot Maxi Radio FM 2000 FM radio device. 404.It oboe 405Toshiba OBOE IrDA SIR/FIR controller. 406.It ohci 407USB OHCI host controllers. 408.It pcic 409.Tn PCI 410.Tn PCMCIA 411controllers, including the Cirrus Logic GD6729. 412.It puc 413PCI 414.Dq universal 415communications cards, containing 416.Xr com 4 417and 418.Xr lpt 4 419communications ports. 420.It uhci 421USB UHCI host controllers. 422.It viapm 423VIA VT82C686A hardware monitors. 424.It vga 425VGA graphics boards. 426.El 427.Sh SEE ALSO 428.Xr aac 4 , 429.Xr adv 4 , 430.Xr adw 4 , 431.Xr agp 4 , 432.Xr ahc 4 , 433.Xr ahcisata 4 , 434.Xr amr 4 , 435.Xr an 4 , 436.Xr auich 4 , 437.Xr autri 4 , 438.Xr auvia 4 , 439.Xr bha 4 , 440.Xr bktr 4 , 441.Xr bnx 4 , 442.Xr cac 4 , 443.Xr cbb 4 , 444.Xr clcs 4 , 445.Xr cmpci 4 , 446.Xr cy 4 , 447.Xr cz 4 , 448.Xr de 4 , 449.Xr dpt 4 , 450.Xr eap 4 , 451.Xr ehci 4 , 452.Xr emuxki 4 , 453.Xr en 4 , 454.Xr ep 4 , 455.Xr epic 4 , 456.Xr esa 4 , 457.Xr esh 4 , 458.Xr esm 4 , 459.Xr eso 4 , 460.Xr ex 4 , 461.Xr fms 4 , 462.Xr fpa 4 , 463.Xr fxp 4 , 464.Xr gsip 4 , 465.Xr hme 4 , 466.Xr icp 4 , 467.Xr iha 4 , 468.Xr intro 4 , 469.Xr iop 4 , 470.Xr isp 4 , 471.Xr le 4 , 472.Xr lmc 4 , 473.Xr mfi 4 , 474.Xr mlx 4 , 475.Xr mly 4 , 476.Xr mpt 4 , 477.Xr msk 4 , 478.Xr ne 4 , 479.Xr neo 4 , 480.Xr nfe 4 , 481.Xr ntwoc 4 , 482.Xr oboe 4 , 483.Xr ohci 4 , 484.Xr pcic 4 , 485.Xr pciide 4 , 486.Xr pcn 4 , 487.Xr pcscp 4 , 488.Xr ppb 4 , 489.Xr puc 4 , 490.Xr ral 4 , 491.Xr rtk 4 , 492.Xr sf 4 , 493.Xr siop 4 , 494.Xr sip 4 , 495.Xr sk 4 , 496.Xr ste 4 , 497.Xr stge 4 , 498.Xr sv 4 , 499.Xr ti 4 , 500.Xr tl 4 , 501.Xr tlp 4 , 502.Xr trm 4 , 503.Xr twe 4 , 504.Xr uhci 4 , 505.Xr vga 4 , 506.Xr vge 4 , 507.Xr viapm 4 , 508.Xr vr 4 , 509.Xr wi 4 , 510.Xr wm 4 , 511.Xr wscons 4 , 512.Xr yds 4 513.Sh HISTORY 514The machine-independent 515.Tn PCI 516subsystem appeared in 517.Nx 1.2 . 518