]> git.ipfire.org Git - thirdparty/pciutils.git/blame - pci.ids.man
Avoid adding multiple version tags to the same symbol
[thirdparty/pciutils.git] / pci.ids.man
CommitLineData
ef5b622f
MM
1.TH pci.ids 5 "@TODAY@" "@VERSION@" "The PCI Utilities"
2
3.SH NAME
4pci.ids \- list of known identifiers related to PCI devices
5
6.SH INTRODUCTION
7Devices on the PCI bus are identified by a combination
8of a vendor ID (assigned by the PCI SIG) and device ID
9(assigned by the vendor). Both IDs are 16-bit integers
10and the device itself provides no translation to a human-readable
11string.
12
13In addition to the vendor and device, devices also report several
14other identifiers:
15
16.IP \(bu 3
17Device class and subclass (two 8-bit numbers)
18
19.IP \(bu 3
20Programming interface (8-bit number, meaning specific for the subclass)
21
22.IP \(bu 3
23Subsystem, which identifies the assembly in which the device is contained.
24A typical example is an Ethernet add-in card: the device is the Ethernet
25controller chip, while the card plays the role of the subsystem. Subsystems
26have their vendor ID (from the same namespace as device vendors) and subsystem
27ID. Generally, the meaning of the subsystem ID depends on the device, but there
28are cases in which a single subsystem ID is used for many devices - e.g.,
29laptop motherboards.
30
31The PCI utilities use the
32.B pci.ids
33file to translate all these numeric IDs to strings.
34
35.SH KEEPING THE LIST UP-TO-DATE
36The
37.B pci.ids
38file is generated from the PCI ID database, which is maintained at
39.UR https://pci-ids.ucw.cz/
40.UE .
41If you find any IDs missing from the list, please contribute them
42to the database.
43
44You can use the
45.B update-pciids
46command to download the current version of the list.
47
48Alternatively, you can use
49.B lspci -q
50to query the database online.
51
52.SH FILE FORMAT
53The pci.ids file is a text file in plain ASCII, interpreted line by line.
54Lines starting with the hash sign are treated as comments are ignored.
55Comments regarding a specific entry are written immediately before the entry.
56
57Vendor entries start with a 4-digit hexadecimal vendor ID, followed by one
58or more spaces, and the name of the vendor extending to the end of the line.
59
60Device entries are placed below the vendor entry. Each device entry consists
61of a single TAB character, a 4-digit hexadecimal device ID, followed by one or more
62spaces, and the name of the device extending to the end of the line.
63
64Subsystem entries are placed below the device entry. They start with two TAB
65characters, a 4-digit hexadecimal vendor ID (which must be defined elsewhere in
66the list), a single space, a 4-digit hexadecimal subsystem ID, one or more
67spaces, and the name of the subsystem extending to the end of the line.
68
69Class entries consist of "C", one space, 2-digit hexadecimal class ID, one or
70more spaces, and the name of the class. Subclasses are placed below the
71corresponding class, indented by a single TAB, followed by a 2-digit
72hexadecimal subclass ID, one or more spaces, and the name of the subclass.
73Programming interfaces are below the subclass, indented by two TABs, followed
74by a 2-digit hexadecimal prog-if ID, one or more spaces, and the name.
75
76There can be device-independent subsystem IDs, although the web interface of
77the database does not support them yet. They start with a subsystem vendor line
78consisting of "S", one space, and a 4-digit hexadecimal vendor ID (which must
79correspond to an already listed vendor). Subsystems follow on subsequent lines,
80each indented by one TAB, followed by a 4-digit hexadecimal subsystem ID, one
81or more spaces, and the name of the subsystem.
82
83To ensure extensibility of the format, lines starting with an unrecognized letter
84followed by a single space are ignored and so are all following TAB-indented lines.
85
fe4074e5
RE
86.SH FILES
87.TP
88.B @IDSDIR@/@PCI_IDS@
89Location of the list.
90
ef5b622f
MM
91.SH SEE ALSO
92.BR lspci (8),
93.BR update-pciids (8),
94.BR pcilib (7)
95
96.SH AUTHOR
97The PCI Utilities are maintained by Martin Mares <mj@ucw.cz>.