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.
The utilities include: (See their manual pages for more details)
- lspci
- displays detailed information about all PCI buses and devices in the system
- setpci
- allows reading from and writing to PCI device configuration registers. For example, you can adjust the latency timers with it.
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
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.
In particular, the port to Windows is obsolete and it currently lacks a maintainer. If you are willing to step up and fix the issues, please let us know.
Download
The latest release of pciutils is version 3.10.0 (2023-05-01).
You can download it from the following servers. Please note that we provide only sources, not compiled binaries for any system.
- mj.ucw.cz (the master site)
- www.kernel.org (expect a few hours delay)
Sometimes, development versions are also avaiable for testing. If you feel brave,
download them from the alpha
directory of the FTP servers.
There is also a public Git tree at git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git containing the current development code. You can also view the shortlog of the development tree. The Git tree is mirrorred at GitHub.
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.