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