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