1.\" $OpenBSD: pci.4,v 1.410 2024/11/26 21:59:30 stsp Exp $ 2.\" $NetBSD: pci.4,v 1.29 2000/04/01 00:32:23 tsarna Exp $ 3.\" 4.\" Copyright (c) 2000 Theo de Raadt. All rights reserved. 5.\" Copyright (c) 1997 Jason R. Thorpe. All rights reserved. 6.\" Copyright (c) 1997 Jonathan Stone 7.\" All rights reserved. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 3. All advertising materials mentioning features or use of this software 18.\" must display the following acknowledgements: 19.\" This product includes software developed by Jonathan Stone 20.\" 4. The name of the author may not be used to endorse or promote products 21.\" derived from this software without specific prior written permission 22.\" 23.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR 24.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 25.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 26.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 27.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 28.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 29.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 30.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 32.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33.\" 34.Dd $Mdocdate: November 26 2024 $ 35.Dt PCI 4 36.Os 37.Sh NAME 38.Nm pci 39.Nd introduction to PCI bus support 40.Sh SYNOPSIS 41.Cd "# alpha" 42.Cd "pci* at apecs?" 43.Cd "pci* at cia?" 44.Cd "pci* at irongate?" 45.Cd "pci* at lca?" 46.Cd "pci* at tsp?" 47.Cd "pci* at mcpcia?" 48.Pp 49.Cd "# amd64, i386" 50.Cd "pci* at mainbus0" 51.Pp 52.Cd "# arm64" 53.Cd "pci* at acpipci?" 54.Cd "pci* at bcmpcie?" 55.Cd "pci* at dwpcie?" 56.Cd "pci* at mvkpcie?" 57.Cd "pci* at pciecam?" 58.Cd "pci* at rkpcie?" 59.Pp 60.Cd "# armv7" 61.Cd "pci* at mvpcie?" 62.Cd "pci* at pciecam?" 63.Pp 64.Cd "# hppa" 65.Cd "pci* at dino?" 66.Cd "pci* at elroy?" 67.Pp 68.Cd "# landisk" 69.Cd "pci* at shpcic?" 70.Pp 71.Cd "# loongson" 72.Cd "pci* at bonito?" 73.Cd "pci* at htb?" 74.Pp 75.Cd "# macppc" 76.Cd "pci* at mpcpcibr?" 77.Cd "pci* at ht?" 78.Cd "pci* at hpb?" 79.Pp 80.Cd "# octeon" 81.Cd "pci* at octpcie?" 82.Pp 83.Cd "# riscv64" 84.Cd "pci* at dwpcie?" 85.Cd "pci* at pciecam?" 86.Pp 87.Cd "# sparc64" 88.Cd "pci* at psycho?" 89.Cd "pci* at schizo?" 90.Cd "pci* at pyro?" 91.Cd "pci* at vpci?" 92.Pp 93.Cd "# all architectures" 94.Cd "pci* at pchb?" 95.Cd "pci* at ppb?" 96.Sh DESCRIPTION 97The system includes a machine-independent PCI bus subsystem and 98several machine-independent PCI device drivers. 99.Pp 100Note that interrupt mappings on the i386 may require that you configure 101your BIOS to reserve sufficient interrupts as "PCI/ISAPnP" so that there 102are sufficient interrupts remaining to configure the discovered PCI 103devices. 104For more information, see 105.Xr pcibios 4 . 106.Pp 107.Ox 108provides support for the following devices. 109Note that not all architectures support all devices. 110.Ss SCSI host adapters 111.Bl -tag -width 10n -offset ind -compact 112.It Xr adv 4 , Xr adw 4 113AdvanSys PCI SCSI interface 114.It Xr ahc 4 115Adaptec VL/EISA/PCI SCSI interface 116.It Xr ahd 4 117Adaptec PCI/PCI-X AIC79xx-based Ultra320 SCSI interface 118.It Xr iha 4 119Initio INIC-940/950 based PCI SCSI interface 120.It Xr mpi 4 121LSI Logic Fusion-MPT Message Passing Interface 122.It Xr mpii 4 123LSI Logic Fusion-MPT Message Passing Interface II 124.It Xr nvme 4 125Non-Volatile Memory Host Controller Interface 126.It Xr pcscp 4 127Advanced Micro Devices Am53c974 PCscsi-PCI SCSI interface 128.It Xr qla 4 129QLogic ISP2100/2200/2300 Fibre Channel controller 130.It Xr qle 4 131QLogic ISP2400/2500 Fibre Channel controller 132.It Xr qlw 4 133QLogic ISP1000/1020/1x40/1x80/1x160 SCSI controller 134.It Xr siop 4 135LSI/Symbios Logic/NCR 53c8xx SCSI interface 136.It Xr trm 4 137TRM-S1040 based PCI SCSI interface 138.It Xr ufshci 4 139Universal Flash Storage Host Controller Interface 140.It Xr vmwpvs 4 141VMware Paravirtual SCSI 142.El 143.Ss IDE disk controllers 144.Bl -tag -width "kauaiata(4)" -offset ind -compact 145.It Xr ahci 4 146Advanced Host Controller Interface for Serial ATA 147.It Xr jmb 4 148JMicron JMB36x SATA II and PATA Host Controller 149.It Xr kauaiata 4 150ATA100 HD controller on PCI bus 151.It Xr pciide 4 152PCI IDE controller driver 153.It Xr sili 4 154Silicon Image 3124/3132/3531 SATA controller 155.El 156.Ss RAID and cache controllers 157.Bl -tag -width 10n -offset ind -compact 158.It Xr aac 4 159Adaptec SAS/SATA/SCSI RAID controller 160.It Xr ami 4 161American Megatrends Inc. MegaRAID PATA/SATA/SCSI RAID controller 162.It Xr arc 4 163Areca Technology Corporation SAS/SATA RAID controller 164.It Xr cac 4 165Compaq Smart Array 2/3/4 SCSI RAID controller 166.It Xr ciss 4 167Compaq Smart Array SAS/SATA/SCSI RAID controller 168.It Xr gdt 4 169ICP-Vortex and Intel GDT SATA/SCSI RAID controller 170.It Xr ips 4 171IBM SATA/SCSI ServeRAID controller 172.It Xr mfi 4 173LSI Logic & Dell MegaRAID SAS RAID controller 174.It Xr mfii 4 175LSI Logic MegaRAID SAS Fusion RAID controller 176.It Xr twe 4 1773ware 5000/6000/7000/8000 series PATA/SATA RAID controller 178.El 179.Ss Wired network interfaces 180.Bl -tag -width 10n -offset ind -compact 181.It Xr age 4 182Attansic L1 10/100/1Gb Ethernet device 183.It Xr alc 4 184Atheros AR813x/AR815x/AR816x/AR817x 10/100/1Gb Ethernet device 185.It Xr ale 4 186Atheros AR8121/AR8113/AR8114 10/100/1Gb Ethernet device 187.It Xr aq 4 188Aquantia AQC1xx 1Gb/2.5Gb/5Gb/10Gb PCIe Ethernet device 189.It Xr bce 4 190Broadcom BCM4401 10/100 Ethernet device 191.It Xr bge 4 192Broadcom BCM57xx/BCM590x 10/100/1Gb Ethernet device 193.It Xr bnx 4 194Broadcom NetXtreme II 10/100/1Gb Ethernet device 195.It Xr bnxt 4 196Broadcom NetXtreme-C/E 10Gb/25Gb/40Gb/50Gb Ethernet device 197.It Xr cas 4 198Sun Cassini 10/100/1Gb Ethernet device 199.It Xr dc 4 200DEC/Intel 21140/21142/21143/21145 and clones 10/100 Ethernet device 201.It Xr de 4 202DEC DC21x4x (Tulip) 10/100 Ethernet device 203.It Xr dwqe 4 204Synopsys DesignWare Ethernet Quality-of-Service Controller 205.It Xr em 4 206Intel PRO/1000 10/100/1Gb Ethernet device 207.It Xr ep 4 2083Com EtherLink III and Fast EtherLink III 10/100 Ethernet device 209.It Xr epic 4 210SMC 83C170 (EPIC/100) 10/100 Ethernet device 211.It Xr et 4 212Agere/LSI ET1310 10/100/1Gb Ethernet device 213.It Xr fxp 4 214Intel EtherExpress PRO/100 10/100 Ethernet device 215.It Xr gem 4 216GEM 10/100/1Gb Ethernet device 217.It Xr hme 4 218Sun Happy Meal 10/100 Ethernet device 219.It Xr iavf 4 220Intel Ethernet adaptive virtual function device 221.It Xr ice 4 222Intel Ethernet 800 series Ethernet device 223.It Xr igc 4 224Intel I225/I226 1Gb/2.5Gb Ethernet device 225.It Xr ix 4 226Intel 82598/82599/X540/X550 PCI Express 100/1Gb/10Gb Ethernet device 227.It Xr ixgb 4 228Intel PRO/10GbE 10Gb Ethernet device 229.It Xr ixl 4 230Intel Ethernet 700 series Ethernet device 231.It Xr ixv 4 232Intel 10Gb Ethernet virtual function device 233.It Xr jme 4 234JMicron JMC25x/JMC26x 10/100/1Gb Ethernet device 235.It Xr lge 4 236Level 1 LXT1001 NetCellerator PCI 1Gb Ethernet device 237.It Xr lii 4 238Attansic L2 10/100 Ethernet device 239.It Xr mcx 4 240Mellanox 5th generation Ethernet device 241.It Xr msk 4 242Marvell Yukon-2 10/100/1Gb Ethernet device 243.It Xr mtd 4 244Myson Technology MTD800/MTD803/MTD891 10/100/1Gb Ethernet device 245.It Xr myx 4 246Myricom Myri-10G PCI Express 10Gb Ethernet device 247.It Xr ne 4 248NE2000 and compatible 10/100 Ethernet device 249.It Xr nep 4 250Sun Neptune 10Gb Ethernet device 251.It Xr nfe 4 252NVIDIA nForce MCP 10/100/1Gb Ethernet device 253.It Xr ngbe 4 254WangXun WX1860 PCI Express 10/100/1Gb Ethernet device 255.It Xr nge 4 256National Semiconductor PCI 10/100/1Gb Ethernet device 257.It Xr oce 4 258Emulex OneConnect 10Gb Ethernet device 259.It Xr pcn 4 260AMD PCnet-PCI 10/100 Ethernet device 261.It Xr re 4 262Realtek 8139C+/8169/816xS/811xS/8168/810xE 10/100/1Gb Ethernet device 263.It Xr rge 4 264Realtek 8125/8125B/8126 PCI Express 10/100/1Gb/2.5Gb/5Gb Ethernet device 265.It Xr rl 4 266Realtek 8129/8139 10/100 Ethernet device 267.It Xr se 4 268SiS 190/191 10/100/1Gb Ethernet device 269.It Xr sf 4 270Adaptec AIC-6915 "Starfire" PCI 10/100 Ethernet device 271.It Xr sis 4 272SiS 900, SiS 7016, and NS DP83815/6 10/100 Ethernet device 273.It Xr sk 4 274SysKonnect XMAC II and Marvell Yukon 10/100/1Gb Ethernet device 275.It Xr ste 4 276Sundance Technologies ST201 10/100 Ethernet device 277.It Xr stge 4 278Sundance/Tamarack TC9021 1Gb Ethernet device 279.It Xr tht 4 280Tehuti Networks 10Gb Ethernet device 281.It Xr ti 4 282Alteon Networks Tigon I and II 1Gb Ethernet device 283.It Xr tl 4 284Texas Instruments ThunderLAN 10/100 Ethernet device 285.It Xr txp 4 2863Com 3XP Typhoon/Sidewinder (3CR990) 10/100 Ethernet device 287.It Xr vge 4 288VIA Velocity 10/100/1Gb Ethernet device 289.It Xr vic 4 290VMware VMXnet Virtual Interface Controller device 291.It Xr vmx 4 292VMware VMXNET3 Virtual Interface Controller device 293.It Xr vr 4 294VIA Rhine I/II/III 10/100 Ethernet device 295.It Xr vte 4 296RDC R6040 10/100 Ethernet device 297.It Xr wb 4 298Winbond W89C840F 10/100 Ethernet device 299.It Xr xge 4 300Neterion Xframe/Xframe II 10Gb Ethernet device 301.It Xr xl 4 3023Com EtherLink XL and Fast EtherLink XL 10/100 Ethernet device 303.El 304.Ss Wireless network interfaces 305.Bl -tag -width 10n -offset ind -compact 306.It Xr acx 4 307TI ACX100/ACX111 IEEE 802.11a/b/g wireless network device 308.It Xr an 4 309Aironet Communications 4500/4800 IEEE 802.11FH/b wireless network device 310.It Xr ath 4 311Atheros IEEE 802.11a/b/g wireless network device with GPIO 312.It Xr athn 4 313Atheros IEEE 802.11a/b/g/n wireless network device 314.It Xr atw 4 315ADMtek ADM8211 IEEE 802.11b wireless network device 316.It Xr bwfm 4 317Broadcom and Cypress IEEE 802.11a/ac/ax/b/g/n wireless network device 318.It Xr bwi 4 319Broadcom AirForce IEEE 802.11b/g wireless network device 320.It Xr ipw 4 321Intel PRO/Wireless 2100 IEEE 802.11b wireless network device 322.It Xr iwi 4 323Intel 324PRO/Wireless 2200BG/2225BG/2915ABG IEEE 802.11a/b/g wireless network device 325.It Xr iwn 4 326Intel WiFi Link and Centrino IEEE 802.11a/b/g/n wireless network device 327.It Xr iwm 4 328Intel 7000/8000/9000 IEEE 802.11a/ac/b/g/n wireless network device 329.It Xr iwx 4 330Intel AX200/AX201/AX210/AX211 IEEE 802.11a/ac/ax/b/g/n wireless network device 331.It Xr malo 4 332Marvell Libertas IEEE 802.11b/g wireless network device 333.It Xr pgt 4 334Conexant/Intersil Prism GT Full-MAC IEEE 802.11a/b/g wireless network device 335.It Xr qwx 4 336Qualcomm IEEE 802.11a/ac/ax/b/g/n wireless network device 337.It Xr ral 4 338Ralink Technology/MediaTek IEEE 802.11a/b/g/n wireless network device 339.It Xr rtw 4 340Realtek RTL8180L IEEE 802.11b wireless network device 341.It Xr rtwn 4 342Realtek RTL8188CE/RTL8188EE/RTL8192CE/RTL8723AE PCIe IEEE 802.11b/g/n wireless 343network device 344.It Xr wi 4 345WaveLAN/IEEE, PRISM 2-3, and Spectrum24 IEEE 802.11b wireless network 346device 347.It Xr wpi 4 348Intel PRO/Wireless 3945ABG IEEE 802.11a/b/g wireless network device 349.El 350.Ss Cryptography accelerators 351.Bl -tag -width 10n -offset ind -compact 352.It Xr ccp 4 353AMD cryptographic co-processor 354.It Xr glxsb 4 355Geode LX Security Block crypto accelerator 356.El 357.Ss Serial interfaces 358.Bl -tag -width 10n -offset ind -compact 359.It Xr cy 4 360Cyclades Cyclom-4Y, -8Y, and -16Y asynchronous serial communications devices 361.It Xr cz 4 362Cyclades-Z series multi-port serial adapter device 363.It Xr puc 4 364PCI 365.Dq universal 366communications card driver 367.El 368.Ss Display adapters 369.Bl -tag -width 10n -offset ind -compact 370.It Xr astfb 4 371Aspeed BMC frame buffer 372.It Xr gfxp 4 373accelerated color frame buffer 374.It Xr ifb 4 375inextricable frame buffer 376.It Xr machfb 4 377accelerated color frame buffer 378.It radeonfb 4 379accelerated color frame buffer 380.It Xr raptor 4 381accelerated color frame buffer 382.It Xr sisfb 4 383SiS 315 Pro frame buffer 384.It Xr smfb 4 385Silicon Motion frame buffer 386.It Xr sti 4 387HP Standard Text Interface 388.It Xr tga 4 389DECchip 21030 (TGA) graphics driver 390.It Xr vga 4 391VGA graphics cards 392.It Xr vgafb 4 393VGA frame buffer 394.El 395.Ss Audio devices 396.Bl -tag -width 10n -offset ind -compact 397.It Xr auacer 4 398Acer Labs I/O Controller Hub integrated AC'97 audio device 399.It Xr auglx 4 400AMD Geode LX CS5536 integrated AC'97 audio device 401.It Xr auich 4 402Intel ICH integrated AC'97 audio device 403.It Xr auixp 4 404ATI SB200/SB300/SB400/SB600 integrated AC'97 audio device 405.It Xr autri 4 406Trident 4DWAVE-DX/NX, SiS 7018, ALi M5451 audio device 407.It Xr auvia 4 408VIA VT82C686A/VT8233/VT8235/VT8237 integrated AC'97 audio device 409.It Xr azalia 4 410generic High Definition Audio device 411.It Xr clcs 4 412Cirrus Logic CS4280/CS4610/CS4615 audio device 413.It Xr clct 4 414Cirrus Logic CS4281 audio device 415.It Xr cmpci 4 416C-Media CMI8338/CMI8738/CMI8768 PCI audio device 417.It Xr eap 4 418Ensoniq AudioPCI audio device 419.It Xr emu 4 420Creative Labs SBLive!, PCI 512, and Audigy audio device 421.It Xr envy 4 422VIA Envy24 audio device 423.It Xr esa 4 424ESS Technology Allegro-1/Maestro-3 family audio device 425.It Xr eso 4 426ESS Technology Solo-1 PCI AudioDrive audio device 427.It Xr fms 4 428Forte Media FM801 audio device 429.It Xr maestro 4 430ESS Maestro 1 and 2 audio device 431.It Xr neo 4 432NeoMagic 256AV/ZX audio device 433.It Xr sv 4 434S3 SonicVibes audio device 435.It Xr yds 4 436Yamaha DS-XG audio device 437.El 438.Ss Time receiver devices 439.Bl -tag -width 10n -offset ind -compact 440.It Xr mbg 4 441Meinberg Funkuhren timedelta sensor 442.El 443.Ss Radio receiver devices 444.Bl -tag -width 10n -offset ind -compact 445.It Xr fms 4 446Forte Media FM801 audio device 447.El 448.Ss Hardware Sensors 449.Bl -tag -width 10n -offset ind -compact 450.It Xr berkwdt 4 451Berkshire Products watchdog timer device 452.It Xr geodesc 4 453Geode SC1100/SCx200 IAOC watchdog timer device 454.It Xr ichwdt 4 455Intel 6300ESB ICH watchdog timer device 456.It Xr itherm 4 457Intel 3400 temperature sensor 458.It Xr kate 4 459AMD K8 temperature sensor 460.It Xr km 4 461AMD K10 temperature sensor 462.It Xr ksmn 4 463AMD K17 temperature sensor over SMN 464.It Xr pchtemp 4 465Intel PCH temperature sensor 466.It Xr pwdog 4 467Quancom PWDOG1 watchdog timer device 468.It Xr viapm 4 469VIA SMBus controller and VIA VT82C686A/VT8231 hardware monitor 470.It Xr wdt 4 471ICS PCI-WDT500/501 watchdog timer device 472.El 473.Ss Miscellaneous devices 474.Bl -tag -width "amdpcib(4)" -offset ind -compact 475.It Xr alipm 4 476Acer Labs M7101 SMBus controller 477.It Xr amas 4 478AMD memory address map 479.It Xr amdiic 4 480AMD-8111 SMBus controller 481.It Xr amdpcib 4 482AMD-8111 series LPC bridge and timecounter 483.It Xr amdpm 4 484AMD-756/766/768/8111 Power Management and SMBus controller 485.It Xr bktr 4 486Brooktree Bt848/849/878/879 PCI TV tuners and video capture boards 487.It Xr cbb 4 488PCI Yenta compatible CardBus bridges 489.It Xr drm 4 490Direct Rendering Manager device 491.It Xr dwiic 4 492Synopsys DesignWare I2C controller 493.It Xr ehci 4 494USB Enhanced Host Controller Interface 495.It Xr gcu 4 496Intel EP80579 Global Configuration Unit 497.It Xr glxpcib 4 498CS5536 PCI-ISA Bridge with timecounter, watchdog timer, and GPIO 499.It Xr gscpcib 4 500National Semiconductor Geode SC1100 PCI-ISA bridge with GPIO 501.It Xr gscpm 4 502National Semiconductor Geode SC1100 SMI/ACPI module 503.It Xr hpb 4 504HyperTransport-PCI bridge 505.It Xr ichiic 4 506Intel ICH SMBus controller 507.It Xr ichpcib 4 508Intel ICHx/ICHx-M LPC bridges 509.It Xr iosf 4 510Intel OnChip System Fabric device 511.It Xr nviic 4 512NVIDIA nForce2/3/4 SMBus controller 513.It Xr ohci 4 514USB Open Host Controller Interface 515.It Xr pcib 4 516PCI-ISA bridge 517.It Xr pcic 4 518PCI PCMCIA controllers, including the Cirrus Logic GD6729 519.It Xr piixpm 4 520Intel PIIX SMBus controller 521.It Xr ppb 4 522PCI-PCI bridge 523.It Xr rtsx 4 524Realtek SD card reader 525.It Xr sbbc 4 526PCI BootBus Controller 527.It Xr sdhc 4 528SD Host Controller 529.It Xr ssio 4 530National Semiconductor PC87560 Legacy IO 531.It Xr tcpcib 4 532Intel Atom E600 series LPC bridge and watchdog timer 533.It Xr uhci 4 534USB Universal Host Controller Interface 535.It Xr viapm 4 536VIA SMBus controller 537.It Xr virtio 4 538VirtIO support driver 539.It Xr voyager 4 540Silicon Motion Mobile Multimedia Companion Chip 541.It Xr xspd 4 542XenSource Platform Device driver 543.El 544.Sh IOCTLS 545If the kernel is compiled with the 546.Va USER_PCICONF 547kernel option, the following 548.Xr ioctl 2 549calls are supported by the 550.Nm 551driver. 552They are defined in the header file 553.In sys/pciio.h . 554.Bl -tag -width Ds 555.It PCIOCREAD Fa "struct pci_io *" 556This 557.Xr ioctl 2 558reads the PCI configuration registers specified by the passed-in 559.Va pci_io 560structure. 561The 562.Va pci_io 563structure consists of the following fields: 564.Bl -tag -width pi_width 565.It pi_sel 566A 567.Va pcisel 568structure which specifies the bus, slot and function the user would like to 569query. 570.It pi_reg 571The PCI configuration register the user would like to access. 572.It pi_width 573The width, in bytes, of the data the user would like to read. 574This value can be only 4. 575.It pi_data 576The data returned by the kernel. 577.El 578.It PCIOCWRITE Fa "struct pci_io *" 579This 580.Xr ioctl 2 581allows users to write to the PCI device specified in the passed-in 582.Va pci_io 583structure. 584The 585.Va pci_io 586structure is described above. 587The limitations on data width described for 588reading registers, above, also apply to writing PCI configuration registers. 589.It PCIOCGETROM Fa "struct pci_rom *" 590This 591.Xr ioctl 2 592allows users to read the contents of the PCI ROM specified in the passed-in 593.Va pci_rom 594structure. 595The 596.Va pci_rom 597structure consists of the following fields: 598.Bl -tag -width pr_romlen 599.It pr_sel 600A 601.Va pcisel 602structure which specifies the bus, slot and function the user would like to 603query. 604.It pr_romlen 605Size of the buffer to store the contents of the ROM. 606Upon return, this field will contain the size of the ROM 607.It pr_rom 608The address of the buffer to store the contents of the ROM. 609.El 610.Pp 611If the ROM is larger than the specified buffer size, 612.Dv ENOMEM 613will be returned. 614.El 615.Sh FILES 616.Bl -tag -width /dev/pci* -compact 617.It Pa /dev/pci* 618Character device for the 619.Nm 620driver. 621.El 622.Sh SEE ALSO 623.Xr intro 4 , 624.Xr pcidump 8 625.Sh HISTORY 626The machine-independent PCI subsystem appeared in 627.Ox 1.2 . 628