lspci(8) The PCI Utilities lspci(8)
lspci - list all PCI devices
lspci is a utility for displaying information about all PCI buses in
the system and all devices connected to them.
If you are going to report bugs in PCI device drivers or in lspci
itself, please include output of "lspci -vvx".
-v Tells lspci to be verbose and display detailed information about
-vv Tells lspci to be very verbose and display even more information
(actually everything the PCI device is able to tell). The exact
meaning of these data is not explained in this manual page, if
you want to know more, consult /usr/include/linux/pci.h or the
-n Show PCI vendor and device codes as numbers instead of looking
them up in the PCI ID database.
-x Show hexadecimal dump of first 64 bytes of the PCI configuration
space (the standard header). Useful for debugging of drivers and
-xxx Show hexadecimal dump of whole PCI configuration space. Avail-
able only for root as several PCI devices crash when you try to
read undefined portions of the config space (this behavior prob-
ably doesn’t violate the PCI standard, but it’s at least very
-xxxx Show hexadecimal dump of the extended PCI configuration space.
-b Bus-centric view. Show all IRQ numbers and addresses as seen by
the cards on the PCI bus instead of as seen by the kernel.
-t Show a tree-like diagram containing all buses, bridges, devices
and connections between them.
Show only devices in the specified domain (in case your machine
has several host bridges, they can either share a common bus
number space or each of them can address a PCI domain of its
own; domains are numbered from 0 to ffff), bus (0 to ff), slot
(0 to 1f) and function (0 to 7). Each component of the device
address can be omitted or set to "*", both meaning "any value".
All numbers are hexadecimal. E.g., "0:" means all devices on
bus 0, "0" means all functions of device 0 on any bus, "0.3"
selects third function of device 0 on all buses and ".4" shows
only the fourth function of each device.
Show only devices with specified vendor and device ID. Both ID’s
are given in hexadecimal and may be omitted or given as "*",
both meaning "any value".
Use <file> as PCI ID database instead of
Use <dir> as directory containing PCI bus information instead of
-m Dump PCI device data in machine readable form (both normal and
verbose format supported) for easy parsing by scripts.
-M Invoke bus mapping mode which performs a thorough scan of all
PCI devices, including those behind misconfigured bridges etc.
This option is available only to root and it gives meaningful
results only if combined with direct hardware access mode (oth-
erwise the results are identical to normal listing modes, modulo
bugs in lspci). Please note that the bus mapper doesn’t support
PCI domains and scans only domain 0.
Shows lspci version. This option should be used stand-alone.
The PCI utilities use PCILIB (a portable library providing platform-
independent functions for PCI configuration space access) to talk to
the PCI cards. The following options control parameters of the library,
especially what access method it uses. By default, PCILIB uses the
first available access method and displays no debugging messages. Each
switch is accompanied by a list of hardware/software configurations
it’s supported in.
Force use of Linux /proc/bus/pci style configuration access,
using <dir> instead of /proc/bus/pci. (Linux 2.1 or newer only)
-H1 Use direct hardware access via Intel configuration mechanism 1.
(i386 and compatible only)
-H2 Use direct hardware access via Intel configuration mechanism 2.
Warning: This method is able to address only first 16 devices on
any bus and it seems to be very unreliable in many cases. (i386
and compatible only)
Extract all information from given file containing output of
lspci -x. This is very useful for analysis of user-supplied bug
reports, because you can display the hardware configuration in
any way you want without disturbing the user with requests for
more dumps. (All systems)
-G Increase debug level of the library. (All systems)
A list of all known PCI ID’s (vendors, devices, classes and sub-
An interface to PCI bus configuration space provided by the
post-2.1.82 Linux kernels. Contains per-bus subdirectories with
per-card config space files and a devices file containing a list
of all PCI devices.
The PCI Utilities are maintained by Martin Mares <email@example.com>.
pciutils-2.1.99-test8 13 August 2004 lspci(8)
Man(1) output converted with