1.\" $NetBSD: pci.4,v 1.91 2009/01/04 16:38:58 christos 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 January 3, 2009 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 twe 2063Ware Escalade RAID controllers. 207.El 208.Ss Network interfaces 209.Bl -tag -width pcdisplay -offset indent 210.It an 211.Tn Aironet 2124500/4800 and 213.Tn Cisco 214340 series 802.11 interfaces. 215.It bnx 216Broadcom NetXtreme II 10/100/1000 Ethernet interfaces. 217.It de 218.Tn DEC 219DC21x4x (Tulip) based 220.Tn Ethernet 221interfaces, including the DE435, 222DE450, and DE500, and Znyx, SMC, Cogent/Adaptec, and Asante single- and 223multi-port 224.Tn Ethernet 225interfaces. 226.It en 227Midway-based Efficient Networks Inc. and Adaptec ATM interfaces. 228.It ep 2293Com 3c590, 3c595, 3c900, and 3c905 230.Tn Ethernet 231interfaces. 232.It epic 233SMC83C170 (EPIC/100) 234.Tn Ethernet 235interfaces. 236.It esh 237RoadRunner-based HIPPI interfaces. 238.It ex 2393Com 3c900, 3c905, and 3c980 240.Tn Ethernet 241interfaces. 242.It fpa 243.Tn DEC 244DEFPA 245.Tn FDDI 246interfaces. 247.It fxp 248Intel EtherExpress PRO 10+/100B 249.Tn Ethernet 250interfaces. 251.It gsip 252National Semiconductor DP83820 based Gigabit 253.Tn Ethernet 254interfaces. 255.It hme 256Sun Microelectronics STP2002-STQ 257.Tn Ethernet 258interfaces. 259.It le 260PCNet-PCI 261.Tn Ethernet 262interfaces. 263Note, the 264.Xr pcn 4 265driver supersedes this driver. 266.It lmc 267LAN Media Corp WAN interfaces. 268.It msk 269Marvell Yukon 2 based Gigabit 270.Tn Ethernet 271interfaces. 272.It ne 273NE2000-compatible 274.Tn Ethernet 275interfaces. 276.It nfe 277NVIDIA nForce 278.Tn Ethernet 279interfaces. 280.It ntwoc 281SDL Communications N2pci and WAN/ic 400 synchronous serial interfaces. 282.It pcn 283AMD PCnet-PCI family of 284.Tn Ethernet 285interfaces. 286.It ral 287Ralink Technology RT2500/RT2600-based 802.11a/b/g wireless network interfaces. 288.It rtk 289Realtek 8129/8139 based 290.Tn Ethernet 291interfaces. 292.It sf 293Adaptec AIC-6915 10/100 294.Tn Ethernet 295interfaces. 296.It sip 297Silicon Integrated Systems SiS 900, SiS 7016, and National Semiconductor 298DP83815 based 299.Tn Ethernet 300interfaces. 301.It sk 302SysKonnect SK-98xx based Gigabit 303.Tn Ethernet 304interfaces. 305.It ste 306Sundance ST-201 10/100 based 307.Tn Ethernet 308interfaces. 309.It stge 310Sundance/Tamarack TC9021 based Gigabit 311.Tn Ethernet 312interfaces. 313.It ti 314Alteon Networks Tigon I and Tigon II Gigabit Ethernet driver. 315.It tl 316Texas Instruments ThunderLAN-based 317.Tn Ethernet 318interfaces. 319.It tlp 320DECchip 21x4x and clone 321.Tn Ethernet 322interfaces. 323.It vge 324VIA Networking Technologies VT6122 PCI Gigabit Ethernet adapter driver. 325.It vr 326VIA VT3043 (Rhine) and VT86C100A (Rhine-II) 327.Tn Ethernet 328interfaces. 329.It wi 330WaveLAN/IEEE and PRISM-II 802.11 wireless interfaces. 331.It wm 332Intel i8254x Gigabit 333.Tn Ethernet 334driver. 335.El 336.Ss Serial interfaces 337.Bl -tag -width pcdisplay -offset indent 338.It cy 339Cyclades Cyclom-4Y, -8Y, and -16Y multi-port serial interfaces. 340.It cz 341Cyclades-Z series multi-port serial interfaces. 342.El 343.Ss Audio devices 344.Bl -tag -width pcdisplay -offset indent 345.It auacer 346Acer Labs M5455 I/O Controller Hub integrated AC'97 audio device. 347.It auich 348Intel I/O Controller Hub integrated AC'97 audio device. 349.It auvia 350VIA VT82C686A integrated AC'97 audio device. 351.It autri 352Trident 4DWAVE-DX/NX, SiS 7018, ALi M5451 AC'97 audio device. 353.It clcs 354Cirrus Logic CS4280 audio device. 355.It clct 356Cirrus Logic CS4281 audio device. 357.It cmpci 358C-Media CMI8x38 audio device. 359.It eap 360Ensoniq AudioPCI audio device. 361.It emuxki 362Creative Labs SBLive! and PCI 512 audio device. 363.It esa 364ESS Technology Allegro-1 / Maestro-3 audio device. 365.It esm 366ESS Maestro-1/2/2e PCI AC'97 Audio Accelerator audio device. 367.It eso 368ESS Solo-1 PCI AudioDrive audio device. 369.It fms 370Forte Media FM801 audio device. 371.It neo 372NeoMagic MagicMedia 256 audio device. 373.It sv 374S3 SonicVibes audio device. 375.It yds 376Yamaha YMF724/740/744/754-based audio device. 377.El 378.Ss Bridges 379.Bl -tag -width pcdisplay -offset indent 380.It cbb 381.Tn PCI 382Yenta compatible 383.Tn CardBus 384bridges. 385.It ppb 386Generic 387.Tn PCI Ns \- Ns Tn PCI 388bridges, including 389.Tn PCI 390expansion backplanes. 391.El 392.Ss Miscellaneous devices 393.Bl -tag -width pcdisplay -offset indent 394.It bktr 395Brooktree 848 compatible TV cards. 396.It ehci 397USB EHCI host controllers. 398.It iop 399I2O I/O processors. 400.It mr 401Guillemot Maxi Radio FM 2000 FM radio device. 402.It oboe 403Toshiba OBOE IrDA SIR/FIR controller. 404.It ohci 405USB OHCI host controllers. 406.It pcic 407.Tn PCI 408.Tn PCMCIA 409controllers, including the Cirrus Logic GD6729. 410.It puc 411PCI 412.Dq universal 413communications cards, containing 414.Xr com 4 415and 416.Xr lpt 4 417communications ports. 418.It uhci 419USB UHCI host controllers. 420.It viapm 421VIA VT82C686A hardware monitors. 422.It vga 423VGA graphics boards. 424.El 425.Sh SEE ALSO 426.Xr aac 4 , 427.Xr adv 4 , 428.Xr adw 4 , 429.Xr agp 4 , 430.Xr ahc 4 , 431.Xr ahcisata 4 , 432.Xr amr 4 , 433.Xr an 4 , 434.Xr auich 4 , 435.Xr autri 4 , 436.Xr auvia 4 , 437.Xr bha 4 , 438.Xr bktr 4 , 439.Xr bnx 4 , 440.Xr cac 4 , 441.Xr cbb 4 , 442.Xr clcs 4 , 443.Xr cmpci 4 , 444.Xr cy 4 , 445.Xr cz 4 , 446.Xr de 4 , 447.Xr dpt 4 , 448.Xr eap 4 , 449.Xr ehci 4 , 450.Xr emuxki 4 , 451.Xr en 4 , 452.Xr ep 4 , 453.Xr epic 4 , 454.Xr esa 4 , 455.Xr esh 4 , 456.Xr esm 4 , 457.Xr eso 4 , 458.Xr ex 4 , 459.Xr fms 4 , 460.Xr fpa 4 , 461.Xr fxp 4 , 462.Xr gsip 4 , 463.Xr hme 4 , 464.Xr icp 4 , 465.Xr iha 4 , 466.Xr intro 4 , 467.Xr iop 4 , 468.Xr isp 4 , 469.Xr le 4 , 470.Xr lmc 4 , 471.Xr mfi 4 , 472.Xr mlx 4 , 473.Xr mly 4 , 474.Xr mpt 4 , 475.Xr msk 4 , 476.Xr ne 4 , 477.Xr neo 4 , 478.Xr nfe 4 , 479.Xr ntwoc 4 , 480.Xr oboe 4 , 481.Xr ohci 4 , 482.Xr pcic 4 , 483.Xr pciide 4 , 484.Xr pcn 4 , 485.Xr pcscp 4 , 486.Xr ppb 4 , 487.Xr puc 4 , 488.Xr ral 4 , 489.Xr rtk 4 , 490.Xr sf 4 , 491.Xr siisata 4 , 492.Xr siop 4 , 493.Xr sip 4 , 494.Xr sk 4 , 495.Xr ste 4 , 496.Xr stge 4 , 497.Xr sv 4 , 498.Xr ti 4 , 499.Xr tl 4 , 500.Xr tlp 4 , 501.Xr trm 4 , 502.Xr twe 4 , 503.Xr uhci 4 , 504.Xr vga 4 , 505.Xr vge 4 , 506.Xr viapm 4 , 507.Xr vr 4 , 508.Xr wi 4 , 509.Xr wm 4 , 510.Xr wscons 4 , 511.Xr yds 4 512.Sh HISTORY 513The machine-independent 514.Tn PCI 515subsystem appeared in 516.Nx 1.2 . 517