]> git.ipfire.org Git - thirdparty/pciutils.git/blame - lspci.man
Support for PCI domains finished
[thirdparty/pciutils.git] / lspci.man
CommitLineData
4284af58 1.TH lspci 8 "@TODAY@" "@VERSION@" "The PCI Utilities"
2f48f637
MM
2.IX lspci
3.SH NAME
4lspci \- list all PCI devices
5.SH SYNOPSIS
6.B lspci
7.RB [ options ]
8.SH DESCRIPTION
9.B lspci
727ce158
MM
10is a utility for displaying information about all PCI buses in the system and
11all devices connected to them.
12
2f48f637
MM
13If you are going to report bugs in PCI device drivers or in
14.I lspci
15itself, please include output of "lspci -vvx".
16
17.SH OPTIONS
18.TP
19.B -v
20Tells
21.I lspci
22to be verbose and display detailed information about all devices.
23.TP
24.B -vv
25Tells
26.I lspci
27to be very verbose and display even more information (actually everything the
28PCI device is able to tell). The exact meaning of these data is not explained
29in this manual page, if you want to know more, consult
30.B /usr/include/linux/pci.h
31or the PCI specs.
32.TP
33.B -n
34Show PCI vendor and device codes as numbers instead of looking them up in the
35PCI ID database.
36.TP
37.B -x
38Show hexadecimal dump of first 64 bytes of the PCI configuration space (the standard
39header). Useful for debugging of drivers and
40.I lspci
41itself.
42.TP
472bd340 43.B -xxx
2f48f637 44Show hexadecimal dump of whole PCI configuration space. Available only for root
472bd340
MM
45as several PCI devices
46.B crash
1f7c91cc 47when you try to read undefined portions of the config space (this behavior probably
472bd340 48doesn't violate the PCI standard, but it's at least very stupid).
2f48f637
MM
49.TP
50.B -b
51Bus-centric view. Show all IRQ numbers and addresses as seen by the cards on the
52PCI bus instead of as seen by the kernel.
53.TP
54.B -t
727ce158 55Show a tree-like diagram containing all buses, bridges, devices and connections
2f48f637
MM
56between them.
57.TP
1f7c91cc
MM
58.B -s [[[[<domain>]:]<bus>]:][<slot>][.[<func>]]
59Show only devices in the specified domain (in case your machine has several host bridges,
60they can either share a common bus number space or each of them can address a PCI domain
61of its own; domains are numbered from 0 to ffff), bus (0 to ff), slot (0 to 1f) and function (0 to 7).
62Each component of the device address can be omitted or set to "*", both meaning "any value". All numbers are
e4842ff3 63hexadecimal. E.g., "0:" means all devices on bus 0, "0" means all functions of device 0
727ce158 64on any bus, "0.3" selects third function of device 0 on all buses and ".4" shows only
1f7c91cc 65the fourth function of each device.
e4842ff3
MM
66.TP
67.B -d [<vendor>]:[<device>]
68Show only devices with specified vendor and device ID. Both ID's are given in
1f7c91cc 69hexadecimal and may be omitted or given as "*", both meaning "any value".
2f48f637
MM
70.TP
71.B -i <file>
72Use
73.B
74<file>
4063c31c 75as PCI ID database instead of @SHAREDIR@/pci.ids.
2f48f637
MM
76.TP
77.B -p <dir>
78Use
79.B <dir>
80as directory containing PCI bus information instead of /proc/bus/pci.
0a33d0ec
MM
81.TP
82.B -m
83Dump PCI device data in machine readable form (both normal and verbose format supported)
84for easy parsing by scripts.
1812a795
MM
85.TP
86.B -M
1f7c91cc
MM
87Invoke bus mapping mode which performs a thorough scan of all PCI devices, including
88those behind misconfigured bridges etc. This option is available only to root and it
89gives meaningful results only if combined with direct hardware access mode (otherwise
90the results are identical to normal listing modes, modulo bugs in lspci). Please note
91that the bus mapper doesn't support PCI domains and scans only domain 0.
89984232
MM
92.TP
93.B --version
94Shows
95.I lspci
1f7c91cc 96version. This option should be used stand-alone.
2f48f637 97
727ce158
MM
98.SH PCILIB OPTIONS
99The PCI utilities use PCILIB (a portable library providing platform-independent
100functions for PCI configuration space access) to talk to the PCI cards. The following
101options control parameters of the library, especially what access method it uses.
102By default, PCILIB uses the first available access method and displays no debugging
103messages. Each switch is accompanied by a list of hardware/software configurations
104it's supported in.
105
106.TP
107.B -P <dir>
9f3d182f 108Force use of Linux /proc/bus/pci style configuration access, using
727ce158
MM
109.B <dir>
110instead of /proc/bus/pci. (Linux 2.1 or newer only)
111.TP
112.B -H1
113Use direct hardware access via Intel configuration mechanism 1. (i386 and compatible only)
114.TP
115.B -H2
116Use direct hardware access via Intel configuration mechanism 2. Warning: This method
117is able to address only first 16 devices on any bus and it seems to be very
1f7c91cc 118unreliable in many cases. (i386 and compatible only)
727ce158 119.TP
727ce158
MM
120.B -F <file>
121Extract all information from given file containing output of lspci -x. This is very
122useful for analysis of user-supplied bug reports, because you can display the
123hardware configuration in any way you want without disturbing the user with
124requests for more dumps. (All systems)
125.TP
126.B -G
127Increase debug level of the library. (All systems)
128
2f48f637
MM
129.SH FILES
130.TP
e2875dcd 131.B @SHAREDIR@/pci.ids
2f48f637
MM
132A list of all known PCI ID's (vendors, devices, classes and subclasses).
133.TP
134.B /proc/bus/pci
727ce158
MM
135An interface to PCI bus configuration space provided by the post-2.1.82 Linux
136kernels. Contains per-bus subdirectories with per-card config space files and a
137.I devices
2f48f637
MM
138file containing a list of all PCI devices.
139
727ce158 140.SH SEE ALSO
1f7c91cc
MM
141.BR setpci (8),
142.BR update-pciids (8)
727ce158 143
2f48f637 144.SH AUTHOR
4284af58 145The PCI Utilities are maintained by Martin Mares <mj@ucw.cz>.