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