The PCI Utilities
What's that?
The PCI Utilities are a collection of programs for inspecting and manipulating configuration of PCI devices, all based on a common portable library libpci which offers access to the PCI configuration space on a variety of operating systems.
Documentation
Thanks to man7.org, there are online versions of man pages of the utilities available. Please note that they take some time to update after new pciutils are released.
- lspci – a utility for displaying information about PCI buses in the system and devices connected to them.
- setpci – a utility for querying and poking configuration registers of PCI devices.
- pcilib – manual on the libpci library and options common to all tools using it.
- pci.ids – the list of known identifiers related to PCI devices..
- update-pciids – a utility for downloading a new version of the PCI ID list.
- pcilmr – a utility for margining PCIe links.
Supported systems
The library (and therefore all the utilities) works on the following operating systems:
- Linux
- FreeBSD
- NetBSD
- OpenBSD
- GNU/kFreeBSD
- Solaris/i386
- AIX
- GNU Hurd
- Windows (pre-built binaries)
- CYGWIN
- BeOS
- Haiku
- Darwin
- DOS/DJGPP
- SylixOS
- AmigaOS/PPC
However, not everything is supported on all systems. Some back-ends are read-only, some access the I/O ports directly, which need not work reliably. The only back-end which has all the features is Linux with a recent kernel.
Download
The latest release of pciutils is version 3.12.0 (2024-04-05).
You can download it from the following servers. Please note that we provide only sources not compiled binaries for any system (with an occasional exception of Windows).
- mj.ucw.cz (the master site)
- www.kernel.org (expect a few hours delay)
Releases are signed with the PGP key of Martin Mareš.
Git repositories
Development of the pciutils happens in the following Git repositories:
- The primary repository with the current development code lives at git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git is the primary repository You can also view it via the web interface.
- The development repository is mirrored at GitHub. Feel free to create issues and pull requests there. Although our workflow is not based on GitHub, we will process these.
PCI IDs
The PCI Utilities also contain a list of known vendors and devices. It is used for displaying vendor/device names instead of the ID numbers reported by the devices themselves. The list is maintained separately by the PCI ID Database project. Daily snapshots are available there and also mirrored at GitHub.
If lspci doesn't recognize some device in your machine and you know what the device is, please submit an update to the database.
Feedback
You can ask questions and report bugs on the linux-pci
mailing list running on Vger, but
please Cc the author (mj@ucw.cz
).
Announcements about new versions are also sent to the list.