xref: /openbmc/qemu/include/hw/pci/pci_ids.h (revision 3161f9f4)
1 /*
2  *      PCI Class, Vendor and Device IDs
3  *
4  *      Please keep sorted.
5  *
6  *      Abbreviated version of linux/pci_ids.h
7  *
8  *      QEMU-specific definitions belong in pci.h
9  */
10 
11 #ifndef HW_PCI_IDS_H
12 #define HW_PCI_IDS_H
13 
14 /* Device classes and subclasses */
15 
16 #define PCI_CLASS_NOT_DEFINED            0x0000
17 #define PCI_CLASS_NOT_DEFINED_VGA        0x0001
18 
19 #define PCI_BASE_CLASS_STORAGE           0x01
20 #define PCI_CLASS_STORAGE_SCSI           0x0100
21 #define PCI_CLASS_STORAGE_IDE            0x0101
22 #define PCI_CLASS_STORAGE_FLOPPY         0x0102
23 #define PCI_CLASS_STORAGE_IPI            0x0103
24 #define PCI_CLASS_STORAGE_RAID           0x0104
25 #define PCI_CLASS_STORAGE_ATA            0x0105
26 #define PCI_CLASS_STORAGE_SATA           0x0106
27 #define PCI_CLASS_STORAGE_SAS            0x0107
28 #define PCI_CLASS_STORAGE_EXPRESS        0x0108
29 #define PCI_CLASS_STORAGE_UFS            0x0109
30 #define PCI_CLASS_STORAGE_OTHER          0x0180
31 
32 #define PCI_BASE_CLASS_NETWORK           0x02
33 #define PCI_CLASS_NETWORK_ETHERNET       0x0200
34 #define PCI_CLASS_NETWORK_TOKEN_RING     0x0201
35 #define PCI_CLASS_NETWORK_FDDI           0x0202
36 #define PCI_CLASS_NETWORK_ATM            0x0203
37 #define PCI_CLASS_NETWORK_ISDN           0x0204
38 #define PCI_CLASS_NETWORK_WORLDFIP       0x0205
39 #define PCI_CLASS_NETWORK_PICMG214       0x0206
40 #define PCI_CLASS_NETWORK_OTHER          0x0280
41 
42 #define PCI_BASE_CLASS_DISPLAY           0x03
43 #define PCI_CLASS_DISPLAY_VGA            0x0300
44 #define PCI_CLASS_DISPLAY_XGA            0x0301
45 #define PCI_CLASS_DISPLAY_3D             0x0302
46 #define PCI_CLASS_DISPLAY_OTHER          0x0380
47 
48 #define PCI_BASE_CLASS_MULTIMEDIA        0x04
49 #define PCI_CLASS_MULTIMEDIA_VIDEO       0x0400
50 #define PCI_CLASS_MULTIMEDIA_AUDIO       0x0401
51 #define PCI_CLASS_MULTIMEDIA_PHONE       0x0402
52 #define PCI_CLASS_MULTIMEDIA_OTHER       0x0480
53 
54 #define PCI_BASE_CLASS_MEMORY            0x05
55 #define PCI_CLASS_MEMORY_RAM             0x0500
56 #define PCI_CLASS_MEMORY_FLASH           0x0501
57 #define PCI_CLASS_MEMORY_CXL             0x0502
58 #define PCI_CLASS_MEMORY_OTHER           0x0580
59 
60 #define PCI_BASE_CLASS_BRIDGE            0x06
61 #define PCI_CLASS_BRIDGE_HOST            0x0600
62 #define PCI_CLASS_BRIDGE_ISA             0x0601
63 #define PCI_CLASS_BRIDGE_EISA            0x0602
64 #define PCI_CLASS_BRIDGE_MC              0x0603
65 #define PCI_CLASS_BRIDGE_PCI             0x0604
66 #define PCI_CLASS_BRIDGE_PCI_INF_SUB     0x01
67 #define PCI_CLASS_BRIDGE_PCMCIA          0x0605
68 #define PCI_CLASS_BRIDGE_NUBUS           0x0606
69 #define PCI_CLASS_BRIDGE_CARDBUS         0x0607
70 #define PCI_CLASS_BRIDGE_RACEWAY         0x0608
71 #define PCI_CLASS_BRIDGE_PCI_SEMITP      0x0609
72 #define PCI_CLASS_BRIDGE_IB_PCI          0x060a
73 #define PCI_CLASS_BRIDGE_OTHER           0x0680
74 
75 #define PCI_BASE_CLASS_COMMUNICATION     0x07
76 #define PCI_CLASS_COMMUNICATION_SERIAL   0x0700
77 #define PCI_CLASS_COMMUNICATION_PARALLEL 0x0701
78 #define PCI_CLASS_COMMUNICATION_MULTISERIAL 0x0702
79 #define PCI_CLASS_COMMUNICATION_MODEM    0x0703
80 #define PCI_CLASS_COMMUNICATION_GPIB     0x0704
81 #define PCI_CLASS_COMMUNICATION_SC       0x0705
82 #define PCI_CLASS_COMMUNICATION_OTHER    0x0780
83 
84 #define PCI_BASE_CLASS_SYSTEM            0x08
85 #define PCI_CLASS_SYSTEM_PIC             0x0800
86 #define PCI_CLASS_SYSTEM_PIC_IOAPIC      0x080010
87 #define PCI_CLASS_SYSTEM_PIC_IOXAPIC     0x080020
88 #define PCI_CLASS_SYSTEM_DMA             0x0801
89 #define PCI_CLASS_SYSTEM_TIMER           0x0802
90 #define PCI_CLASS_SYSTEM_RTC             0x0803
91 #define PCI_CLASS_SYSTEM_PCI_HOTPLUG     0x0804
92 #define PCI_CLASS_SYSTEM_SDHCI           0x0805
93 #define PCI_CLASS_SYSTEM_OTHER           0x0880
94 
95 #define PCI_BASE_CLASS_INPUT             0x09
96 #define PCI_CLASS_INPUT_KEYBOARD         0x0900
97 #define PCI_CLASS_INPUT_PEN              0x0901
98 #define PCI_CLASS_INPUT_MOUSE            0x0902
99 #define PCI_CLASS_INPUT_SCANNER          0x0903
100 #define PCI_CLASS_INPUT_GAMEPORT         0x0904
101 #define PCI_CLASS_INPUT_OTHER            0x0980
102 
103 #define PCI_BASE_CLASS_DOCKING           0x0a
104 #define PCI_CLASS_DOCKING_GENERIC        0x0a00
105 #define PCI_CLASS_DOCKING_OTHER          0x0a80
106 
107 #define PCI_BASE_CLASS_PROCESSOR         0x0b
108 #define PCI_CLASS_PROCESSOR_PENTIUM      0x0b02
109 #define PCI_CLASS_PROCESSOR_POWERPC      0x0b20
110 #define PCI_CLASS_PROCESSOR_MIPS         0x0b30
111 #define PCI_CLASS_PROCESSOR_CO           0x0b40
112 
113 #define PCI_BASE_CLASS_SERIAL            0x0c
114 #define PCI_CLASS_SERIAL_FIREWIRE        0x0c00
115 #define PCI_CLASS_SERIAL_ACCESS          0x0c01
116 #define PCI_CLASS_SERIAL_SSA             0x0c02
117 #define PCI_CLASS_SERIAL_USB             0x0c03
118 #define PCI_CLASS_SERIAL_USB_UHCI        0x0c0300
119 #define PCI_CLASS_SERIAL_USB_OHCI        0x0c0310
120 #define PCI_CLASS_SERIAL_USB_EHCI        0x0c0320
121 #define PCI_CLASS_SERIAL_USB_XHCI        0x0c0330
122 #define PCI_CLASS_SERIAL_USB_UNKNOWN     0x0c0380
123 #define PCI_CLASS_SERIAL_USB_DEVICE      0x0c03fe
124 #define PCI_CLASS_SERIAL_FIBER           0x0c04
125 #define PCI_CLASS_SERIAL_SMBUS           0x0c05
126 #define PCI_CLASS_SERIAL_IB              0x0c06
127 #define PCI_CLASS_SERIAL_IPMI            0x0c07
128 #define PCI_CLASS_SERIAL_SERCOS          0x0c08
129 #define PCI_CLASS_SERIAL_CANBUS          0x0c09
130 
131 #define PCI_BASE_CLASS_WIRELESS          0x0d
132 #define PCI_CLASS_WIRELESS_IRDA          0x0d00
133 #define PCI_CLASS_WIRELESS_CIR           0x0d01
134 #define PCI_CLASS_WIRELESS_RF_CONTROLLER 0x0d10
135 #define PCI_CLASS_WIRELESS_BLUETOOTH     0x0d11
136 #define PCI_CLASS_WIRELESS_BROADBAND     0x0d12
137 #define PCI_CLASS_WIRELESS_OTHER         0x0d80
138 
139 #define PCI_BASE_CLASS_SATELLITE         0x0f
140 #define PCI_CLASS_SATELLITE_TV           0x0f00
141 #define PCI_CLASS_SATELLITE_AUDIO        0x0f01
142 #define PCI_CLASS_SATELLITE_VOICE        0x0f03
143 #define PCI_CLASS_SATELLITE_DATA         0x0f04
144 
145 #define PCI_BASE_CLASS_CRYPT             0x10
146 #define PCI_CLASS_CRYPT_NETWORK          0x1000
147 #define PCI_CLASS_CRYPT_ENTERTAINMENT    0x1001
148 #define PCI_CLASS_CRYPT_OTHER            0x1080
149 
150 #define PCI_BASE_CLASS_SIGNAL_PROCESSING 0x11
151 #define PCI_CLASS_SP_DPIO                0x1100
152 #define PCI_CLASS_SP_PERF                0x1101
153 #define PCI_CLASS_SP_SYNCH               0x1110
154 #define PCI_CLASS_SP_MANAGEMENT          0x1120
155 #define PCI_CLASS_SP_OTHER               0x1180
156 
157 #define PCI_CLASS_OTHERS                 0xff
158 
159 /* Vendors and devices.  Sort key: vendor first, device next. */
160 
161 /* Ref: PCIe r6.0 Table 6-32 */
162 #define PCI_VENDOR_ID_PCI_SIG            0x0001
163 
164 #define PCI_VENDOR_ID_LSI_LOGIC          0x1000
165 #define PCI_DEVICE_ID_LSI_53C810         0x0001
166 #define PCI_DEVICE_ID_LSI_53C895A        0x0012
167 #define PCI_DEVICE_ID_LSI_SAS1068        0x0054
168 #define PCI_DEVICE_ID_LSI_SAS1078        0x0060
169 #define PCI_DEVICE_ID_LSI_SAS0079        0x0079
170 
171 #define PCI_VENDOR_ID_DEC                0x1011
172 #define PCI_DEVICE_ID_DEC_21143          0x0019
173 
174 #define PCI_VENDOR_ID_CIRRUS             0x1013
175 
176 #define PCI_VENDOR_ID_IBM                0x1014
177 
178 #define PCI_VENDOR_ID_AMD                0x1022
179 #define PCI_DEVICE_ID_AMD_LANCE          0x2000
180 #define PCI_DEVICE_ID_AMD_SCSI           0x2020
181 
182 #define PCI_VENDOR_ID_HP                 0x103c
183 
184 #define PCI_VENDOR_ID_TI                 0x104c
185 
186 #define PCI_VENDOR_ID_MOTOROLA           0x1057
187 #define PCI_DEVICE_ID_MOTOROLA_MPC106    0x0002
188 #define PCI_DEVICE_ID_MOTOROLA_RAVEN     0x4801
189 
190 #define PCI_VENDOR_ID_APPLE              0x106b
191 #define PCI_DEVICE_ID_APPLE_UNI_N_AGP    0x0020
192 #define PCI_DEVICE_ID_APPLE_U3_AGP       0x004b
193 #define PCI_DEVICE_ID_APPLE_UNI_N_GMAC   0x0021
194 
195 #define PCI_VENDOR_ID_SUN                0x108e
196 #define PCI_DEVICE_ID_SUN_EBUS           0x1000
197 #define PCI_DEVICE_ID_SUN_HME            0x1001
198 #define PCI_DEVICE_ID_SUN_SIMBA          0x5000
199 #define PCI_DEVICE_ID_SUN_SABRE          0xa000
200 
201 #define PCI_VENDOR_ID_ORACLE             0x108e
202 #define PCI_DEVICE_ID_REMOTE_IOHUB       0xb000
203 
204 #define PCI_VENDOR_ID_CMD                0x1095
205 #define PCI_DEVICE_ID_CMD_646            0x0646
206 
207 #define PCI_VENDOR_ID_REALTEK            0x10ec
208 #define PCI_DEVICE_ID_REALTEK_8139       0x8139
209 
210 #define PCI_VENDOR_ID_XILINX             0x10ee
211 
212 #define PCI_VENDOR_ID_VIA                0x1106
213 #define PCI_DEVICE_ID_VIA_82C686B_ISA    0x0686
214 #define PCI_DEVICE_ID_VIA_IDE            0x0571
215 #define PCI_DEVICE_ID_VIA_UHCI           0x3038
216 #define PCI_DEVICE_ID_VIA_82C686B_PM     0x3057
217 #define PCI_DEVICE_ID_VIA_AC97           0x3058
218 #define PCI_DEVICE_ID_VIA_MC97           0x3068
219 #define PCI_DEVICE_ID_VIA_8231_ISA       0x8231
220 #define PCI_DEVICE_ID_VIA_8231_PM        0x8235
221 
222 #define PCI_VENDOR_ID_MARVELL            0x11ab
223 #define PCI_DEVICE_ID_MARVELL_MV6436X    0x6460
224 
225 #define PCI_VENDOR_ID_SILICON_MOTION     0x126f
226 #define PCI_DEVICE_ID_SM501              0x0501
227 
228 #define PCI_VENDOR_ID_ENSONIQ            0x1274
229 #define PCI_DEVICE_ID_ENSONIQ_ES1370     0x5000
230 
231 #define PCI_VENDOR_ID_CHELSIO            0x1425
232 
233 #define PCI_VENDOR_ID_FREESCALE          0x1957
234 #define PCI_DEVICE_ID_MPC8533E           0x0030
235 
236 #define PCI_VENDOR_ID_BAIDU              0x1d22
237 #define PCI_DEVICE_ID_KUNLUN_VF          0x3685
238 
239 #define PCI_VENDOR_ID_INTEL              0x8086
240 #define PCI_DEVICE_ID_INTEL_82378        0x0484
241 #define PCI_DEVICE_ID_INTEL_82441        0x1237
242 #define PCI_DEVICE_ID_INTEL_82801AA_5    0x2415
243 #define PCI_DEVICE_ID_INTEL_82801BA_11   0x244e
244 #define PCI_DEVICE_ID_INTEL_82801D       0x24CD
245 #define PCI_DEVICE_ID_INTEL_ESB_9        0x25ab
246 #define PCI_DEVICE_ID_INTEL_NVME         0x5845
247 #define PCI_DEVICE_ID_INTEL_82371SB_0    0x7000
248 #define PCI_DEVICE_ID_INTEL_82371SB_1    0x7010
249 #define PCI_DEVICE_ID_INTEL_82371SB_2    0x7020
250 #define PCI_DEVICE_ID_INTEL_82371AB_0    0x7110
251 #define PCI_DEVICE_ID_INTEL_82371AB      0x7111
252 #define PCI_DEVICE_ID_INTEL_82371AB_2    0x7112
253 #define PCI_DEVICE_ID_INTEL_82371AB_3    0x7113
254 
255 #define PCI_DEVICE_ID_INTEL_ICH9_0       0x2910
256 #define PCI_DEVICE_ID_INTEL_ICH9_1       0x2917
257 #define PCI_DEVICE_ID_INTEL_ICH9_2       0x2912
258 #define PCI_DEVICE_ID_INTEL_ICH9_3       0x2913
259 #define PCI_DEVICE_ID_INTEL_ICH9_4       0x2914
260 #define PCI_DEVICE_ID_INTEL_ICH9_5       0x2919
261 #define PCI_DEVICE_ID_INTEL_ICH9_6       0x2930
262 #define PCI_DEVICE_ID_INTEL_ICH9_7       0x2916
263 #define PCI_DEVICE_ID_INTEL_ICH9_8       0x2918
264 
265 #define PCI_DEVICE_ID_INTEL_82801I_UHCI1 0x2934
266 #define PCI_DEVICE_ID_INTEL_82801I_UHCI2 0x2935
267 #define PCI_DEVICE_ID_INTEL_82801I_UHCI3 0x2936
268 #define PCI_DEVICE_ID_INTEL_82801I_UHCI4 0x2937
269 #define PCI_DEVICE_ID_INTEL_82801I_UHCI5 0x2938
270 #define PCI_DEVICE_ID_INTEL_82801I_UHCI6 0x2939
271 #define PCI_DEVICE_ID_INTEL_82801I_EHCI1 0x293a
272 #define PCI_DEVICE_ID_INTEL_82801I_EHCI2 0x293c
273 #define PCI_DEVICE_ID_INTEL_82599_SFP_VF 0x10ed
274 
275 #define PCI_DEVICE_ID_INTEL_P35_MCH      0x29c0
276 
277 #define PCI_VENDOR_ID_XEN                0x5853
278 #define PCI_DEVICE_ID_XEN_PLATFORM       0x0001
279 
280 #define PCI_VENDOR_ID_NEC                0x1033
281 #define PCI_DEVICE_ID_NEC_UPD720200      0x0194
282 
283 #define PCI_VENDOR_ID_TEWS               0x1498
284 #define PCI_DEVICE_ID_TEWS_TPCI200       0x30C8
285 
286 #define PCI_VENDOR_ID_VMWARE             0x15ad
287 #define PCI_DEVICE_ID_VMWARE_PVRDMA      0x0820
288 
289 #define PCI_VENDOR_ID_SYNOPSYS           0x16C3
290 
291 #define PCI_VENDOR_ID_NVIDIA             0x10de
292 
293 #endif
294