Provided by: pciutils_2.1.11-15.3ubuntu1_i386 bug


       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.
              Available only for root as several PCI devices  crash  when  you
              try  to  read  undefined  portions  of  the  config  space (this
              behaviour probably doesn’t violate the PCI standard, but it’s at
              least very stupid).

       -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 [[<bus>]:][<slot>][.[<func>]]
              Show  only  devices  in  specified  bus, slot and function. Each
              component of the device address can be omitted  or  set  as  "*"
              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 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 "*"
              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 scans the bus extensively to find
              all devices including those behind  misconfigured  bridges  etc.
              Please  note  that this is intended only for debugging and as it
              can crash the machine  (only  in  case  of  buggy  devices,  but
              unfortunately  these  happen  to  exist), it’s available only to
              root. Also using -M on PCI access methods which  don’t  directly
              touch  the  hardware  has no sense since the results are (modulo
              bugs in lspci) identical to normal listing modes.

              Shows lspci version. This option should be used standalone.


       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 unrealiable in many cases. (i386
              and compatible only)

       -S     Use PCI access syscalls. (Linux on Alpha and UltraSparc 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

              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 Linux PCI Utilities are maintained by Martin Mares <>.