]> mj.ucw.cz Git - pciutils.git/blob - lspci.man
6021d9278f1b17dd5cbd45fe044268dddf021d38
[pciutils.git] / lspci.man
1 .TH lspci 8 "@TODAY@" "@VERSION@" "Linux PCI Utilities"
2 .IX lspci
3 .SH NAME
4 lspci \- list all PCI devices
5 .SH SYNOPSIS
6 .B lspci
7 .RB [ options ]
8 .SH DESCRIPTION
9 .B lspci
10 is a utility for displaying information about all PCI buses in the system and
11 all devices connected to them.
12
13 To make use of all the features of this program, you need to have Linux kernel
14 2.1.82 or newer which supports the /proc/bus/pci interface. With older kernels,
15 the PCI utilities have to use direct hardware access which is available
16 only to root and it suffers from numerous race conditions and other problems.
17
18 If you are going to report bugs in PCI device drivers or in
19 .I lspci
20 itself, please include output of "lspci -vvx".
21
22 .SH OPTIONS
23 .TP
24 .B -v
25 Tells
26 .I lspci
27 to be verbose and display detailed information about all devices.
28 .TP
29 .B -vv
30 Tells
31 .I lspci
32 to be very verbose and display even more information (actually everything the
33 PCI device is able to tell). The exact meaning of these data is not explained
34 in this manual page, if you want to know more, consult
35 .B /usr/include/linux/pci.h
36 or the PCI specs.
37 .TP
38 .B -n
39 Show PCI vendor and device codes as numbers instead of looking them up in the
40 PCI ID database.
41 .TP
42 .B -x
43 Show hexadecimal dump of first 64 bytes of the PCI configuration space (the standard
44 header). Useful for debugging of drivers and
45 .I lspci
46 itself.
47 .TP
48 .B -xxx
49 Show hexadecimal dump of whole PCI configuration space. Available only for root
50 as several PCI devices
51 .B crash
52 when you try to read undefined portions of the config space (this behaviour probably
53 doesn't violate the PCI standard, but it's at least very stupid).
54 .TP
55 .B -b
56 Bus-centric view. Show all IRQ numbers and addresses as seen by the cards on the
57 PCI bus instead of as seen by the kernel.
58 .TP
59 .B -t
60 Show a tree-like diagram containing all buses, bridges, devices and connections
61 between them.
62 .TP
63 .B -s [[<bus>]:][<slot>][.[<func>]]
64 Show only devices in specified bus, slot and function. Each component of the device
65 address can be omitted or set as "*" meaning "any value". All numbers are
66 hexadecimal.  E.g., "0:" means all devices on bus 0, "0" means all functions of device 0
67 on any bus, "0.3" selects third function of device 0 on all buses and ".4" shows only
68 fourth function of each device.
69 .TP
70 .B -d [<vendor>]:[<device>]
71 Show only devices with specified vendor and device ID. Both ID's are given in
72 hexadecimal and may be omitted or given as "*" meaning "any value".
73 .TP
74 .B -i <file>
75 Use
76 .B
77 <file>
78 as PCI ID database instead of /usr/share/pci.ids.
79 .TP
80 .B -p <dir>
81 Use
82 .B <dir>
83 as directory containing PCI bus information instead of /proc/bus/pci.
84 .TP
85 .B -m
86 Dump PCI device data in machine readable form (both normal and verbose format supported)
87 for easy parsing by scripts.
88
89 .SH PCILIB OPTIONS
90 The PCI utilities use PCILIB (a portable library providing platform-independent
91 functions for PCI configuration space access) to talk to the PCI cards. The following
92 options control parameters of the library, especially what access method it uses.
93 By default, PCILIB uses the first available access method and displays no debugging
94 messages. Each switch is accompanied by a list of hardware/software configurations
95 it's supported in.
96
97 .TP
98 .B -P <dir>
99 Use Linux 2.1 style configuration access to directory
100 .B <dir>
101 instead of /proc/bus/pci. (Linux 2.1 or newer only)
102 .TP
103 .B -H1
104 Use direct hardware access via Intel configuration mechanism 1. (i386 and compatible only)
105 .TP
106 .B -H2
107 Use direct hardware access via Intel configuration mechanism 2. Warning: This method
108 is able to address only first 16 devices on any bus and it seems to be very
109 unrealiable in many cases. (i386 and compatible only)
110 .TP
111 .B -S
112 Use PCI access syscalls. (Linux on Alpha and UltraSparc only)
113 .TP
114 .B -F <file>
115 Extract all information from given file containing output of lspci -x. This is very
116 useful for analysis of user-supplied bug reports, because you can display the
117 hardware configuration in any way you want without disturbing the user with
118 requests for more dumps. (All systems)
119 .TP
120 .B -G
121 Increase debug level of the library. (All systems)
122
123 .SH FILES
124 .TP
125 .B /usr/share/pci.ids
126 A list of all known PCI ID's (vendors, devices, classes and subclasses).
127 .TP
128 .B /proc/bus/pci
129 An interface to PCI bus configuration space provided by the post-2.1.82 Linux
130 kernels. Contains per-bus subdirectories with per-card config space files and a
131 .I devices
132 file containing a list of all PCI devices.
133
134 .SH SEE ALSO
135 .BR setpci (8)
136
137 .SH AUTHOR
138 The Linux PCI Utilities are maintained by Martin Mares <mj@atrey.karlin.mff.cuni.cz>.