lspci(8)                       The PCI Utilities                      lspci(8)


       lspci - list all PCI devices


       lspci [options]


       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
              all devices.

       -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
              PCI specs.

       -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
              lspci itself.

       -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.

       -s [[[[<domain>]:]<bus>]:][<slot>][.[<func>]]
              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.

       -d [<vendor>]:[<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".

       -i <file>
              Use    <file>    as    PCI    ID     database     instead     of

       -p <dir>
              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.

       -P <dir>
              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)

       -F <file>
              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.


       setpci(8), update-pciids(8)


       The PCI Utilities are maintained by Martin Mares <>.

pciutils-2.1.99-test8           13 August 2004                        lspci(8)

Man(1) output converted with man2html