1.\" $NetBSD: pci.4,v 1.95 2015/08/28 08:01:15 wiz 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 August 27, 2015 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.It Dv PCI_BUS_FIXUP 92Fixup PCI bus numbering; needed for many 93.Xr cardbus 4 94bridges. 95.Pp 96Each PCI bus and CardBus should have a unique bus number. 97But some BIOS implementations don't assign a bus number 98for subordinate PCI buses. 99And many BIOS implementations 100don't assign a bus number for CardBuses. 101.Pp 102A typical symptom of this is the following boot message: 103.D1 Sy cardbus0 at cardslot0: bus 0 device 0... 104Please note that this cardbus0 has a bus number 105.Sq 0 , 106but normally the bus number 0 is used by the machine's 107primary PCI bus. 108Thus, this bus number for cardbus is incorrect 109.Pq not assigned . 110In this situation, a device located in cardbus0 doesn't 111show correct device ID, 112because its bus number 0 incorrectly refers to the primary 113PCI bus, and a device ID in the primary PCI bus is shown 114in the boot message instead of the device's ID in the cardbus0. 115.Pp 116This option assigns bus numbers for all subordinate 117PCI buses and CardBuses. 118.Pp 119Since this option renumbers all PCI buses and CardBuses, 120all bus numbers of subordinate buses become different 121when this option is enabled. 122.It Dv PCI_INTR_FIXUP 123Fixup PCI interrupt routing via PCIBIOS or ACPI. 124.Pp 125Some i386 and amd64 BIOS implementations don't assign an interrupt for 126some devices. 127.Pp 128This option assigns an interrupt for such devices instead 129of relying upon the BIOS to do so. 130.Pp 131If a valid interrupt has already been assigned to a device, this 132option leaves the interrupt as is. 133.El 134.Sh HARDWARE 135.Nx 136includes machine-independent 137.Tn PCI 138drivers, sorted by device type and driver name: 139.Ss SCSI interfaces 140.Bl -tag -width pcdisplay -offset indent 141.It ahc 142Adaptec 29xx, 39xx, and other AIC-7xxx-based 143.Tn SCSI 144interfaces. 145.It adv 146Advansys 147.Tn SCSI 148interfaces. 149.It adw 150Advansys Ultra Wide 151.Tn SCSI 152interfaces. 153.It bha 154Buslogic BT-9xx 155.Tn SCSI 156interfaces. 157.It dpt 158DPT SmartCache/SmartRAID III and IV 159.Tn SCSI 160interfaces. 161.It iha 162Initio INIC-940/950 163.Tn SCSI 164interfaces. 165.It isp 166QLogic ISP-1020, ISP-1040, and ISP-2100 167.Tn SCSI 168and 169.Tn FibreChannel 170interfaces. 171.It mfi 172LSI Logic \*[Am] Dell MegaRAID SAS RAID controllers. 173.It mly 174Mylex AcceleRAID and eXtremeRAID controllers with v6 firmware. 175.It nca 176Domex 536 177.Tn SCSI 178interfaces. 179.It pcscp 180Advanced Micro Devices Am53c974 PCscsi-PCI 181.Tn SCSI 182interfaces. 183.It siop 184Symbios Logic/NCR 53c8xx-family 185.Tn SCSI 186interfaces. 187.It trm 188Tekram TRM-S1040 ASIC based 189.Tn SCSI 190interfaces. 191.El 192.Ss Disk and tape controllers 193.Bl -tag -width pcdisplay -offset indent 194.It aac 195The Adaptec AAC family of RAID controllers. 196.It ahcisata 197AHCI 1.0 and 1.1 compliant SATA controllers. 198.It amr 199The AMI and LSI Logic MegaRAID family of RAID controllers. 200.It cac 201Compaq array controllers. 202.It icp 203ICP Vortex GDT and Intel Storage RAID controllers. 204.It mlx 205Mylex DAC960 and DEC SWXCR RAID controllers. 206.It pciide 207IDE disk controllers. 208.It twe 2093Ware Escalade RAID controllers. 210.El 211.Ss Network interfaces 212.Bl -tag -width pcdisplay -offset indent 213.It an 214.Tn Aironet 2154500/4800 and 216.Tn Cisco 217340 series 802.11 interfaces. 218.It bnx 219Broadcom NetXtreme II 10/100/1000 Ethernet interfaces. 220.It de 221.Tn DEC 222DC21x4x (Tulip) based 223.Tn Ethernet 224interfaces, including the DE435, 225DE450, and DE500, and Znyx, SMC, Cogent/Adaptec, and Asante single- and 226multi-port 227.Tn Ethernet 228interfaces. 229.It en 230Midway-based Efficient Networks Inc. and Adaptec ATM interfaces. 231.It ep 2323Com 3c590, 3c595, 3c900, and 3c905 233.Tn Ethernet 234interfaces. 235.It epic 236SMC83C170 (EPIC/100) 237.Tn Ethernet 238interfaces. 239.It esh 240RoadRunner-based HIPPI interfaces. 241.It ex 2423Com 3c900, 3c905, and 3c980 243.Tn Ethernet 244interfaces. 245.It fpa 246.Tn DEC 247DEFPA 248.Tn FDDI 249interfaces. 250.It fxp 251Intel EtherExpress PRO 10+/100B 252.Tn Ethernet 253interfaces. 254.It gsip 255National Semiconductor DP83820 based Gigabit 256.Tn Ethernet 257interfaces. 258.It hme 259Sun Microelectronics STP2002-STQ 260.Tn Ethernet 261interfaces. 262.It le 263PCNet-PCI 264.Tn Ethernet 265interfaces. 266Note, the 267.Xr pcn 4 268driver supersedes this driver. 269.It lmc 270LAN Media Corp WAN interfaces. 271.It msk 272Marvell Yukon 2 based Gigabit 273.Tn Ethernet 274interfaces. 275.It ne 276NE2000-compatible 277.Tn Ethernet 278interfaces. 279.It nfe 280NVIDIA nForce 281.Tn Ethernet 282interfaces. 283.It ntwoc 284SDL Communications N2pci and WAN/ic 400 synchronous serial interfaces. 285.It pcn 286AMD PCnet-PCI family of 287.Tn Ethernet 288interfaces. 289.It ral 290Ralink Technology RT2500/RT2600-based 802.11a/b/g wireless network interfaces. 291.It rtk 292Realtek 8129/8139 based 293.Tn Ethernet 294interfaces. 295.It rtwn 296Realtek RTL8188CE/RTL8192CE 802.11b/g/n wireless network interfaces. 297.It sf 298Adaptec AIC-6915 10/100 299.Tn Ethernet 300interfaces. 301.It sip 302Silicon Integrated Systems SiS 900, SiS 7016, and National Semiconductor 303DP83815 based 304.Tn Ethernet 305interfaces. 306.It sk 307SysKonnect SK-98xx based Gigabit 308.Tn Ethernet 309interfaces. 310.It ste 311Sundance ST-201 10/100 based 312.Tn Ethernet 313interfaces. 314.It stge 315Sundance/Tamarack TC9021 based Gigabit 316.Tn Ethernet 317interfaces. 318.It ti 319Alteon Networks Tigon I and Tigon II Gigabit Ethernet driver. 320.It tl 321Texas Instruments ThunderLAN-based 322.Tn Ethernet 323interfaces. 324.It tlp 325DECchip 21x4x and clone 326.Tn Ethernet 327interfaces. 328.It vge 329VIA Networking Technologies VT6122 PCI Gigabit Ethernet adapter driver. 330.It vr 331VIA VT3043 (Rhine) and VT86C100A (Rhine-II) 332.Tn Ethernet 333interfaces. 334.It wi 335WaveLAN/IEEE and PRISM-II 802.11 wireless interfaces. 336.It wm 337Intel i8254x Gigabit 338.Tn Ethernet 339driver. 340.El 341.Ss Serial interfaces 342.Bl -tag -width pcdisplay -offset indent 343.It cy 344Cyclades Cyclom-4Y, -8Y, and -16Y multi-port serial interfaces. 345.It cz 346Cyclades-Z series multi-port serial interfaces. 347.El 348.Ss Audio devices 349.Bl -tag -width pcdisplay -offset indent 350.It auacer 351Acer Labs M5455 I/O Controller Hub integrated AC'97 audio device. 352.It auich 353Intel I/O Controller Hub integrated AC'97 audio device. 354.It auvia 355VIA VT82C686A integrated AC'97 audio device. 356.It autri 357Trident 4DWAVE-DX/NX, SiS 7018, ALi M5451 AC'97 audio device. 358.It clcs 359Cirrus Logic CS4280 audio device. 360.It clct 361Cirrus Logic CS4281 audio device. 362.It cmpci 363C-Media CMI8x38 audio device. 364.It eap 365Ensoniq AudioPCI audio device. 366.It emuxki 367Creative Labs SBLive! and PCI 512 audio device. 368.It esa 369ESS Technology Allegro-1 / Maestro-3 audio device. 370.It esm 371ESS Maestro-1/2/2e PCI AC'97 Audio Accelerator audio device. 372.It eso 373ESS Solo-1 PCI AudioDrive audio device. 374.It fms 375Forte Media FM801 audio device. 376.It neo 377NeoMagic MagicMedia 256 audio device. 378.It sv 379S3 SonicVibes audio device. 380.It yds 381Yamaha YMF724/740/744/754-based audio device. 382.El 383.Ss Bridges 384.Bl -tag -width pcdisplay -offset indent 385.It cbb 386.Tn PCI 387Yenta compatible 388.Tn CardBus 389bridges. 390.It ppb 391Generic 392.Tn PCI Ns \- Ns Tn PCI 393bridges, including 394.Tn PCI 395expansion backplanes. 396.El 397.Ss Miscellaneous devices 398.Bl -tag -width pcdisplay -offset indent 399.It bktr 400Brooktree 848 compatible TV cards. 401.It ehci 402USB EHCI host controllers. 403.It iop 404I2O I/O processors. 405.It mr 406Guillemot Maxi Radio FM 2000 FM radio device. 407.It oboe 408Toshiba OBOE IrDA SIR/FIR controller. 409.It ohci 410USB OHCI host controllers. 411.It pcic 412.Tn PCI 413.Tn PCMCIA 414controllers, including the Cirrus Logic GD6729. 415.It puc 416PCI 417.Dq universal 418communications cards, containing 419.Xr com 4 420and 421.Xr lpt 4 422communications ports. 423.It uhci 424USB UHCI host controllers. 425.It viapm 426VIA VT82C686A hardware monitors. 427.It vga 428VGA graphics boards. 429.El 430.Sh SEE ALSO 431.Xr aac 4 , 432.Xr adv 4 , 433.Xr adw 4 , 434.Xr agp 4 , 435.Xr ahc 4 , 436.Xr ahcisata 4 , 437.Xr amr 4 , 438.Xr an 4 , 439.Xr auich 4 , 440.Xr autri 4 , 441.Xr auvia 4 , 442.Xr bha 4 , 443.Xr bktr 4 , 444.Xr bnx 4 , 445.Xr cac 4 , 446.Xr cbb 4 , 447.Xr clcs 4 , 448.Xr cmpci 4 , 449.Xr cy 4 , 450.Xr cz 4 , 451.Xr de 4 , 452.Xr dpt 4 , 453.Xr eap 4 , 454.Xr ehci 4 , 455.Xr emuxki 4 , 456.Xr en 4 , 457.Xr ep 4 , 458.Xr epic 4 , 459.Xr esa 4 , 460.Xr esh 4 , 461.Xr esm 4 , 462.Xr eso 4 , 463.Xr ex 4 , 464.Xr fms 4 , 465.Xr fpa 4 , 466.Xr fxp 4 , 467.Xr gsip 4 , 468.Xr hme 4 , 469.Xr icp 4 , 470.Xr iha 4 , 471.Xr intro 4 , 472.Xr iop 4 , 473.Xr isp 4 , 474.Xr le 4 , 475.Xr lmc 4 , 476.Xr mfi 4 , 477.Xr mlx 4 , 478.Xr mly 4 , 479.Xr mpt 4 , 480.Xr msk 4 , 481.Xr nca 4 , 482.Xr ne 4 , 483.Xr neo 4 , 484.Xr nfe 4 , 485.Xr ntwoc 4 , 486.Xr oboe 4 , 487.Xr ohci 4 , 488.Xr pcic 4 , 489.Xr pciide 4 , 490.Xr pcn 4 , 491.Xr pcscp 4 , 492.Xr ppb 4 , 493.Xr puc 4 , 494.Xr ral 4 , 495.Xr rtk 4 , 496.Xr rtwn 4 , 497.Xr sf 4 , 498.Xr siisata 4 , 499.Xr siop 4 , 500.Xr sip 4 , 501.Xr sk 4 , 502.Xr ste 4 , 503.Xr stge 4 , 504.Xr sv 4 , 505.Xr ti 4 , 506.Xr tl 4 , 507.Xr tlp 4 , 508.Xr trm 4 , 509.Xr twe 4 , 510.Xr uhci 4 , 511.Xr vga 4 , 512.Xr vge 4 , 513.Xr viapm 4 , 514.Xr vr 4 , 515.Xr wi 4 , 516.Xr wm 4 , 517.Xr wscons 4 , 518.Xr yds 4 519.Sh HISTORY 520The machine-independent 521.Tn PCI 522subsystem appeared in 523.Nx 1.2 . 524