1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 200-2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: MIT
4  *
5  * Permission is hereby granted, free of charge, to any person obtaining a
6  * copy of this software and associated documentation files (the "Software"),
7  * to deal in the Software without restriction, including without limitation
8  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
9  * and/or sell copies of the Software, and to permit persons to whom the
10  * Software is furnished to do so, subject to the following conditions:
11  *
12  * The above copyright notice and this permission notice shall be included in
13  * all copies or substantial portions of the Software.
14  *
15  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
21  * DEALINGS IN THE SOFTWARE.
22  */
23 
24 #ifndef NVDEVID_H
25 #define NVDEVID_H
26 
27 
28 
29 /**************** Resource Manager Defines and Structures ******************\
30 *                                                                           *
31 *       Private device ids defines  - only       defines !                  *
32 *                                                                           *
33 \***************************************************************************/
34 
35 ///////////////////////////////////////////////////////////////////////////////////////////
36 //
37 // VENDOR/SUBVENDOR IDS
38 // XXX Cleanup to do: change PCI_VENDOR_* to NV_PCI_SUBID_VENDOR_*
39 //
40 ///////////////////////////////////////////////////////////////////////////////////////////
41 #define NV_PCI_SUBID_VENDOR         15:0  /* RW--F */
42 #define NV_PCI_SUBID_VENDOR_AMD           0x1022
43 #define NV_PCI_SUBID_VENDOR_ALI           0x10B9
44 #define NV_PCI_SUBID_VENDOR_NVIDIA        0x10DE
45 #define NV_PCI_SUBID_VENDOR_INTEL         0x8086
46 #define NV_PCI_SUBID_VENDOR_VIA           0x1106
47 #define NV_PCI_SUBID_VENDOR_RCC           0x1166
48 #define NV_PCI_SUBID_VENDOR_MICRON_1      0x1042
49 #define NV_PCI_SUBID_VENDOR_MICRON_2      0x1344
50 #define NV_PCI_SUBID_VENDOR_APPLE         0x106B
51 #define NV_PCI_SUBID_VENDOR_SIS           0x1039
52 #define NV_PCI_SUBID_VENDOR_ATI           0x1002
53 #define NV_PCI_SUBID_VENDOR_TRANSMETA     0x1279
54 #define NV_PCI_SUBID_VENDOR_HP            0x103C
55 #define NV_PCI_SUBID_VENDOR_DELL          0x1028
56 #define NV_PCI_SUBID_VENDOR_FUJITSU       0x10cf
57 #define NV_PCI_SUBID_VENDOR_ASUS          0x1043
58 #define NV_PCI_SUBID_VENDOR_MSI           0x1462
59 #define NV_PCI_SUBID_VENDOR_FOXCONN       0x105B
60 #define NV_PCI_SUBID_VENDOR_ECS           0x1019
61 #define NV_PCI_SUBID_VENDOR_DFI_1         0x106E
62 #define NV_PCI_SUBID_VENDOR_TOSHIBA       0x1179
63 #define NV_PCI_SUBID_VENDOR_DFI_2         0x15BD
64 #define NV_PCI_SUBID_VENDOR_ACER          0x1025
65 #define NV_PCI_SUBID_VENDOR_GIGABYTE      0x1458
66 #define NV_PCI_SUBID_VENDOR_EVGA          0x3842
67 #define NV_PCI_SUBID_VENDOR_BROADCOM      0x1166
68 #define NV_PCI_SUBID_VENDOR_SUPERMICRO    0x15D9
69 #define NV_PCI_SUBID_VENDOR_BIOSTAR       0x1565
70 #define NV_PCI_SUBID_VENDOR_XFX           0x1682
71 #define NV_PCI_SUBID_VENDOR_PCPARTNER     0x19DA
72 #define NV_PCI_SUBID_VENDOR_LENOVO        0x17AA
73 #define NV_PCI_SUBID_VENDOR_FSC           0x1734
74 #define NV_PCI_SUBID_VENDOR_FTS           0x1734
75 #define NV_PCI_SUBID_VENDOR_COLORFUL      0x7377
76 #define NV_PCI_SUBID_VENDOR_ASROCK        0x1849
77 #define NV_PCI_SUBID_VENDOR_SHUTTLE       0x1297
78 #define NV_PCI_SUBID_VENDOR_CLEVO         0x1558
79 #define NV_PCI_SUBID_VENDOR_PEGATRON      0x1B0A
80 #define NV_PCI_SUBID_VENDOR_JETWAY        0x16F3
81 #define NV_PCI_SUBID_VENDOR_HIGHGRADE     0x1C6C
82 #define NV_PCI_SUBID_VENDOR_GALAXY        0x1B4C
83 #define NV_PCI_SUBID_VENDOR_ZOTAC         0x19DA
84 #define NV_PCI_SUBID_VENDOR_ARIMA         0x161F
85 #define NV_PCI_SUBID_VENDOR_BFG           0x19F1
86 #define NV_PCI_SUBID_VENDOR_SONY          0x104D
87 #define NV_PCI_SUBID_VENDOR_BITLAND       0x1642
88 #define NV_PCI_SUBID_VENDOR_PC_PARTNER    0x174B
89 #define NV_PCI_SUBID_VENDOR_CAVIUM        0x177D
90 #define NV_PCI_SUBID_VENDOR_NZXT          0x1D96
91 
92 // XXX CKEANUP TO REMOVE IN FAVOR OF NV_PCI_SUBID_VENDOR_*
93 #define PCI_VENDOR_ID_AMD           0x1022
94 #define PCI_VENDOR_ID_ALI           0x10B9
95 #define PCI_VENDOR_ID_NVIDIA        0x10DE
96 #define PCI_VENDOR_ID_INTEL         0x8086
97 #define PCI_VENDOR_ID_VIA           0x1106
98 #define PCI_VENDOR_ID_RCC           0x1166
99 #define PCI_VENDOR_ID_MICRON_1      0x1042
100 #define PCI_VENDOR_ID_MICRON_2      0x1344
101 #define PCI_VENDOR_ID_APPLE         0x106B
102 #define PCI_VENDOR_ID_SIS           0x1039
103 #define PCI_VENDOR_ID_ATI           0x1002
104 #define PCI_VENDOR_ID_TRANSMETA     0x1279
105 #define PCI_VENDOR_ID_HP            0x103C
106 #define PCI_VENDOR_ID_DELL          0x1028
107 #define PCI_VENDOR_ID_FUJITSU       0x10cf
108 #define PCI_VENDOR_ID_ASUS          0x1043
109 #define PCI_VENDOR_ID_MSI           0x1462
110 #define PCI_VENDOR_ID_FOXCONN       0x105B
111 #define PCI_VENDOR_ID_ECS           0x1019
112 #define PCI_VENDOR_ID_DFI_1         0x106E
113 #define PCI_VENDOR_ID_TOSHIBA       0x1179
114 #define PCI_VENDOR_ID_DFI_2         0x15BD
115 #define PCI_VENDOR_ID_ACER          0x1025
116 #define PCI_VENDOR_ID_GIGABYTE      0x1458
117 #define PCI_VENDOR_ID_EVGA          0x3842
118 #define PCI_VENDOR_ID_BROADCOM      0x1166
119 #define PCI_VENDOR_ID_SUPERMICRO    0x15D9
120 #define PCI_VENDOR_ID_BIOSTAR       0x1565
121 #define PCI_VENDOR_ID_XFX           0x1682
122 #define PCI_VENDOR_ID_PCPARTNER     0x19DA
123 #define PCI_VENDOR_ID_LENOVO        0x17AA
124 #define PCI_VENDOR_ID_FSC           0x1734
125 #define PCI_VENDOR_ID_FTS           0x1734
126 #define PCI_VENDOR_ID_COLORFUL      0x7377
127 #define PCI_VENDOR_ID_ASROCK        0x1849
128 #define PCI_VENDOR_ID_SHUTTLE       0x1297
129 #define PCI_VENDOR_ID_CLEVO         0x1558
130 #define PCI_VENDOR_ID_PEGATRON      0x1B0A
131 #define PCI_VENDOR_ID_JETWAY        0x16F3
132 #define PCI_VENDOR_ID_HIGHGRADE     0x1C6C
133 #define PCI_VENDOR_ID_GALAXY        0x1B4C
134 #define PCI_VENDOR_ID_ZOTAC         0x19DA
135 #define PCI_VENDOR_ID_ARIMA         0x161F
136 #define PCI_VENDOR_ID_PC_PARTNER    0x174B
137 #define PCI_VENDOR_ID_APM           0x10E8
138 #define PCI_VENDOR_ID_IBM           0x1014
139 #define PCI_VENDOR_ID_NZXT          0x1D96
140 #define PCI_VENDOR_ID_MARVELL       0x177D
141 #define PCI_VENDOR_ID_REDHAT        0x1B36
142 #define PCI_VENDOR_ID_AMPERE        0x1DEF
143 #define PCI_VENDOR_ID_HUAWEI        0x19E5
144 #define PCI_VENDOR_ID_MELLANOX      0x15B3
145 #define PCI_VENDOR_ID_AMAZON        0x1D0F
146 #define PCI_VENDOR_ID_CADENCE       0x17CD
147 #define PCI_VENDOR_ID_ARM           0x13B5
148 #define PCI_VENDOR_ID_HYGON         0x1D94
149 #define PCI_VENDOR_ID_ALIBABA       0x1DED
150 #define PCI_VENDOR_ID_SIFIVE        0xF15E
151 #define PCI_VENDOR_ID_PLDA          0x1556
152 
153 #define NV_PCI_DEVID_DEVICE                    31:16  /* RW--F */
154 #define NV_PCI_SUBID_DEVICE                    31:16  /* RW--F */
155 
156 ///////////////////////////////////////////////////////////////////////////////////////////
157 //
158 // GPU DEVICE IDS
159 //
160 ///////////////////////////////////////////////////////////////////////////////////////////
161 
162 #define NV_PCI_DEVID_DEVICE_PG171_SKU200_PG179_SKU220 0x25B6 /* NVIDIA A16 / NVIDIA A2 */
163 #define NV_PCI_DEVID_DEVICE_PG189_SKU600              0x1EBA
164 
165 ///////////////////////////////////////////////////////////////////////////////////////////
166 //
167 // SUBDEVICE IDs
168 //
169 ///////////////////////////////////////////////////////////////////////////////////////////
170 
171 // A16
172 #define NV_PCI_SUBID_DEVICE_PG171_SKU200             0x14A9
173 
174 ///////////////////////////////////////////////////////////////////////////////////////////
175 //
176 // CHIPSET IDs
177 //
178 ///////////////////////////////////////////////////////////////////////////////////////////
179 // Desktop flavor of X58
180 #define X58_DESKTOP_DEVIDS                  0x3400, 0x3405
181 // Mobile version of X58
182 #define X58_MOBILE_DEVID                    0x3405
183 #define X58_MOBILE_CLEVO_7200_SSDEVID       0x7200
184 
185 // Sandy bridge CLEVO platform
186 #define SANDYBRIDGE_P180HM_SSDEVID          0x8000
187 #define SandyBridge_E_X79_P270WM_SSDEVID    0x270
188 #define IvyBridge_Z75_P370EM_SSDEVID        0x371
189 
190 // Device ID's of Devices present on Patsburg's PCIE bus.
191 #define PATSBURG_PCIE_DEVICE_MIN_DEVID      0x1D10
192 #define PATSBURG_PCIE_DEVICE_MAX_DEVID      0x1D1F
193 #define PATSBURG_PCIE_DEVICE_DEVID          0x244E
194 
195 //Tylersburg Congurations
196 #define TYLERSBURG_DEVID                    0x3406
197 
198 // Intel Grantsdale definitions
199 #define DEVICE_ID_INTEL_2580_HOST_BRIDGE    0x2580
200 #define DEVICE_ID_INTEL_2581_ROOT_PORT      0x2581
201 
202 // Intel Alderwood definitions
203 #define DEVICE_ID_INTEL_2584_HOST_BRIDGE    0x2584
204 #define DEVICE_ID_INTEL_2585_ROOT_PORT      0x2585
205 
206 // Intel Alviso definitions
207 #define DEVICE_ID_INTEL_2590_HOST_BRIDGE    0x2590
208 #define DEVICE_ID_INTEL_2591_ROOT_PORT      0x2591
209 
210 // Intel Tumwater definitions
211 #define DEVICE_ID_INTEL_359E_HOST_BRIDGE    0x359E
212 #define DEVICE_ID_INTEL_3597_ROOT_PORT      0x3597
213 
214 // Intel Stoakley definitions
215 #define INTEL_4000_SUBDEVICE_ID             0x021D
216 
217 // Intel SkullTrail definitions
218 #define INTEL_4003_SUBDEVICE_ID             0x5358
219 
220 // Intel Core I7 CPU
221 #define INTEL_QUICKPATH_SYSTEM_ADDRESS_DECODER_I7   0x2C01
222 
223 // Intel Core I5 CPU Lynnfield
224 #define INTEL_QUICKPATH_SYSTEM_ADDRESS_DECODER_I5_L 0x2C81
225 #define INTEL_LYNNFIELD_ROOTPORT_CPU1               0xD138
226 #define INTEL_LYNNFIELD_ROOTPORT_CPU2               0xD13A
227 
228 // Intel Core I5 CPU Auburndale
229 #define INTEL_QUICKPATH_SYSTEM_ADDRESS_DECODER_I5_A 0x2D41
230 
231 // Intel Core I5 CPU 650
232 #define INTEL_QUICKPATH_SYSTEM_ADDRESS_DECODER_I5_6 0x2D01
233 
234 // Intel Poulsbo definitions
235 #define DEVICE_ID_INTEL_8100_HOST_BRIDGE    0x8100
236 #define DEVICE_ID_INTEL_8110_ROOT_PORT      0x8110
237 #define DEVICE_ID_INTEL_8112_ROOT_PORT      0x8112
238 
239 // Intel TunnelCreek definitions
240 #define DEVICE_ID_INTEL_8180_ROOT_PORT      0x8180
241 #define DEVICE_ID_INTEL_8181_ROOT_PORT      0x8181
242 #define DEVICE_ID_INTEL_8184_ROOT_PORT      0x8184
243 #define DEVICE_ID_INTEL_8185_ROOT_PORT      0x8185
244 
245 // Intel I/O Hub definitions
246 #define DEVICE_ID_INTEL_3408_ROOT_PORT      0x3408
247 #define DEVICE_ID_INTEL_3411_ROOT_PORT      0x3411
248 #define DEVICE_ID_INTEL_3420_ROOT_PORT      0x3420
249 #define DEVICE_ID_INTEL_3421_ROOT_PORT      0x3421
250 
251 // Intel SandyBridge IIO definitions
252 #define DEVICE_ID_INTEL_3C02_ROOT_PORT      0x3c02
253 #define DEVICE_ID_INTEL_3C03_ROOT_PORT      0x3c03
254 #define DEVICE_ID_INTEL_3C04_ROOT_PORT      0x3c04
255 #define DEVICE_ID_INTEL_3C05_ROOT_PORT      0x3c05
256 #define DEVICE_ID_INTEL_3C06_ROOT_PORT      0x3c06
257 #define DEVICE_ID_INTEL_3C07_ROOT_PORT      0x3c07
258 #define DEVICE_ID_INTEL_3C08_ROOT_PORT      0x3c08
259 #define DEVICE_ID_INTEL_3C09_ROOT_PORT      0x3c09
260 #define DEVICE_ID_INTEL_3C0A_ROOT_PORT      0x3c0a
261 #define DEVICE_ID_INTEL_3C0B_ROOT_PORT      0x3c0b
262 
263 // Intel Haswell-E definitions
264 #define DEVICE_ID_INTEL_2F00_HOST_BRIDGE    0x2f00
265 #define DEVICE_ID_INTEL_2F01_ROOT_PORT      0x2f01
266 #define DEVICE_ID_INTEL_2F02_ROOT_PORT      0x2f02
267 #define DEVICE_ID_INTEL_2F03_ROOT_PORT      0x2f03
268 #define DEVICE_ID_INTEL_2F04_ROOT_PORT      0x2f04
269 #define DEVICE_ID_INTEL_2F05_ROOT_PORT      0x2f05
270 #define DEVICE_ID_INTEL_2F06_ROOT_PORT      0x2f06
271 #define DEVICE_ID_INTEL_2F07_ROOT_PORT      0x2f07
272 #define DEVICE_ID_INTEL_2F08_ROOT_PORT      0x2f08
273 #define DEVICE_ID_INTEL_2F09_ROOT_PORT      0x2f09
274 #define DEVICE_ID_INTEL_2F0A_ROOT_PORT      0x2f0a
275 #define DEVICE_ID_INTEL_2F0B_ROOT_PORT      0x2f0b
276 
277 #define DEVICE_ID_INTEL_0C01_ROOT_PORT      0x0c01
278 
279 // Intel IvyTown definitions
280 
281 #define DEVICE_ID_INTEL_0E02_ROOT_PORT      0x0e02
282 #define DEVICE_ID_INTEL_0E03_ROOT_PORT      0x0e03
283 #define DEVICE_ID_INTEL_0E04_ROOT_PORT      0x0e04
284 #define DEVICE_ID_INTEL_0E05_ROOT_PORT      0x0e05
285 #define DEVICE_ID_INTEL_0E06_ROOT_PORT      0x0e06
286 #define DEVICE_ID_INTEL_0E07_ROOT_PORT      0x0e07
287 #define DEVICE_ID_INTEL_0E08_ROOT_PORT      0x0e08
288 #define DEVICE_ID_INTEL_0E09_ROOT_PORT      0x0e09
289 #define DEVICE_ID_INTEL_0E0A_ROOT_PORT      0x0e0a
290 #define DEVICE_ID_INTEL_0E0B_ROOT_PORT      0x0e0b
291 // Intel Ivy Bridge E definitions
292 #define DEVICE_ID_INTEL_0E00_HOST_BRIDGE    0x0E00
293 
294 // Intel PCH definitions
295 #define DEVICE_ID_INTEL_9D10_PCH_BRIDGE     0x9d10
296 #define DEVICE_ID_INTEL_9D18_PCH_BRIDGE     0x9d18
297 #define DEVICE_ID_INTEL_A117_PCH_BRIDGE     0xa117
298 #define DEVICE_ID_INTEL_A118_PCH_BRIDGE     0xa118
299 #define DEVICE_ID_INTEL_9C98_PCH_BRIDGE     0x9c98
300 
301 // Intel Broadwell definitions
302 #define DEVICE_ID_INTEL_6F00_HOST_BRIDGE    0x6f00
303 #define DEVICE_ID_INTEL_6F01_ROOT_PORT      0x6f01
304 #define DEVICE_ID_INTEL_6F02_ROOT_PORT      0x6f02
305 #define DEVICE_ID_INTEL_6F03_ROOT_PORT      0x6f03
306 #define DEVICE_ID_INTEL_6F04_ROOT_PORT      0x6f04
307 #define DEVICE_ID_INTEL_6F05_ROOT_PORT      0x6f05
308 #define DEVICE_ID_INTEL_6F06_ROOT_PORT      0x6f06
309 #define DEVICE_ID_INTEL_6F07_ROOT_PORT      0x6f07
310 #define DEVICE_ID_INTEL_6F08_ROOT_PORT      0x6f08
311 #define DEVICE_ID_INTEL_6F09_ROOT_PORT      0x6f09
312 #define DEVICE_ID_INTEL_6F0A_ROOT_PORT      0x6f0A
313 #define DEVICE_ID_INTEL_6F0B_ROOT_PORT      0x6f0B
314 #define DEVICE_ID_INTEL_1601_ROOT_PORT                  0x1601
315 #define DEVICE_ID_INTEL_1605_ROOT_PORT                  0x1605
316 #define DEVICE_ID_INTEL_1609_ROOT_PORT                  0x1609
317 #define DEVICE_ID_INTEL_BROADWELL_U_HOST_BRIDGE         0x1604
318 #define DEVICE_ID_INTEL_BROADWELL_H_HOST_BRIDGE         0x1614
319 
320 // Intel Skylake definitions
321 #define DEVICE_ID_INTEL_1901_ROOT_PORT                  0x1901
322 #define DEVICE_ID_INTEL_1905_ROOT_PORT                  0x1905
323 #define DEVICE_ID_INTEL_1909_ROOT_PORT                  0x1909
324 #define DEVICE_ID_INTEL_SKYLAKE_U_HOST_BRIDGE           0x1904
325 #define DEVICE_ID_INTEL_SKYLAKE_S_HOST_BRIDGE           0x191F
326 #define DEVICE_ID_INTEL_SKYLAKE_H_HOST_BRIDGE           0x1910
327 
328 // Intel Skylake-E definitions
329 #define DEVICE_ID_INTEL_2030_ROOT_PORT                  0x2030
330 #define DEVICE_ID_INTEL_2033_ROOT_PORT                  0x2033
331 
332 // Intel Kabylake definitions
333 #define DEVICE_ID_INTEL_KABYLAKE_U_HOST_BRIDGE          0x5904
334 #define DEVICE_ID_INTEL_KABYLAKE_H_HOST_BRIDGE          0x5910
335 
336 // AMD Matisse, Rome definitions
337 #define DEVICE_ID_AMD_1483_ROOT_PORT        0x1483
338 // AMD Castle Peak definition
339 #define DEVICE_ID_AMD_1480_ROOT_PORT        0x1480
340 // AMD Renoir-H definition
341 #define DEVICE_ID_AMD_1630_ROOT_PORT        0x1630
342 
343 // Dell SkullTrail definitions
344 #define DELL_4003_SUBDEVICE_ID              0x021D
345 
346 // Dell Quicksilver MLK definitions
347 #define DELL_0040_SUBDEVICE_ID              0x043a
348 
349 // HP Tylersburg definitions
350 #define TYLERSBURG_Z800_SSDEVID             0x130B
351 
352 // HP Romley definitions
353 #define ROMLEY_Z820_SSDEVID                 0x158B
354 #define ROMLEY_Z620_SSDEVID                 0x158A
355 #define ROMLEY_Z420_SSDEVID                 0x1589
356 
357 // HP Grantley definitions
358 #define GRANTLEY_Z840_SSDEVID               0x2129
359 #define GRANTLEY_Z640_SSDEVID               0x212A
360 #define GRANTLEY_Z440_SSDEVID               0x212B
361 
362 // HP PURELY definitions
363 #define HP_QUADRO_Z4GEN4_DEVID              0xA2D2
364 #define PURLEY_Z8GEN4_SSDEVID               0x81C7
365 #define PURLEY_Z6GEN4_SSDEVID               0x81C6
366 #define PURLEY_Z4GEN4_SSDEVID               0x81C5
367 
368 // Lenovo Romley definitions
369 #define ROMLEY_C30_SSDEVID                  0x1028
370 #define ROMLEY_D30_SSDEVID                  0x1027
371 #define ROMLEY_S30_SSDEVID                  0x1026
372 
373 // Dell Romley definitions
374 #define ROMLEY_T7600_SSDEVID                0x0495
375 #define ROMLEY_T5600_SSDEVID                0x0496
376 #define ROMLEY_T3600_SSDEVID                0x0497
377 
378 // Dell Romley + IVB-EP CPU Refresh
379 #define IVYTOWN_T7610_SSDEVID               0x05D4
380 #define IVYTOWN_T5610_SSDEVID               0x05D3
381 
382 // Dell Romley (Ipanema)
383 #define ROMLEY_R7610_SSDEVID                0x05A1
384 
385 // FTS Romley definitions
386 #define ROMLEY_R920_SSDEVID                 0x11B6
387 
388 // Lenovo Grantley (Messi, Pele, Ronaldo)
389 #define GRANTLEY_V40_SSDEVID                0x1031
390 #define GRANTLEY_D40_SSDEVID                0x1030
391 #define GRANTLEY_S40_SSDEVID                0x102F
392 
393 // Dell Grantley (Avalon)
394 #define GRANTLEY_T7810_SSDEVID              0x0618
395 #define GRANTLEY_T7910_SSDEVID              0x0619
396 
397 // Lenovo Purley (Nile, Volga)
398 #define PURLEY_P920_SSDEVID                 0x1038
399 #define PURLEY_P720_SSDEVID                 0x1037
400 #define PURLEY_P520_SSDEVID                 0x1036
401 
402 // Dell Purley(Matira)
403 #define PURLEY_MATIRA3X_DEVID               0xA2D2
404 #define PURLEY_MATIRA3X_SSDEVID             0x08B1
405 #define PURLEY_MATIRA3_SSDEVID              0x0738
406 #define PURLEY_MATIRA5_SSDEVID              0x0739
407 #define PURLEY_MATIRA7_SSDEVID              0x073A
408 
409 //FTS Purley
410 #define PURLEY_R970_SSDEVID                 0x1230
411 #define PURLEY_M770_SSDEVID                 0x1231
412 
413 // HP Arrandale, Clarksfield, X58 workstation definitions
414 #define ARRANDALE_Z200SFF_SSDEVID           0x304A
415 #define CLARKSFIELD_Z200_SSDEVID            0x170B
416 #define X58_Z400_SSDEVID                    0x1309
417 
418 // GIGABYTE Sniper 3 (Z77)
419 #define GIGABYTE_SNIPER_3_SSDEVID_1         0x5000
420 #define GIGABYTE_SNIPER_3_SSDEVID_2         0x5001
421 
422 // Supermicro Quadro VCA definitions
423 #define SUPERMICRO_QUADRO_VCA_DEVID         0x8D44
424 #define SUPERMICRO_QUADRO_VCA_SSDEVID       0x7270
425 
426 // Asus Quadro BOXX definitions
427 #define ASUS_QUADRO_BOXX_DEVID              0x8D44
428 #define ASUS_QUADRO_BOXX_SSDEVID            0x85F6
429 
430 // APEXX8 Quadro BOXX definitions
431 #define APEXX8_QUADRO_BOXX_DEVID            0xA2D3
432 #define APEXX8_QUADRO_BOXX_SSDEVID          0x098e
433 
434 // APEXX5 Quadro BOXX definitions
435 #define APEXX5_QUADRO_BOXX_DEVID            0xA2D3
436 #define APEXX5_QUADRO_BOXX_SSDEVID          0x1000
437 
438 // ASUS X99-E-10G
439 #define ASUS_X99_E_10G_SSDEVID              0x8600
440 
441 // VIA definitions
442 #define DEVICE_ID_VIA_VT8369B_HOST_BRIDGE   0x0308
443 
444 // Foxconn Einstein 64 [8086:a1c1][105b:7270]
445 #define FOXCONN_EINSTEIN_64_DEVID           0xA1C1
446 #define FOXCONN_EINSTEIN_64_SSDEVID         0x7270
447 
448 // Cavium, Inc. CN99xx [ThunderX2]  [177d:af00]
449 #define CAVIUM_X2_DEVID                     0xAF00
450 
451 // Lenovo Tomcat/Falcon/Hornet Workstations
452 #define LENOVO_TOMCAT_DEVID                 0x1B81
453 #define LENOVO_TOMCAT_SSDEVID               0x104e
454 #define LENOVO_FALCON_DEVID                 0x7A8A
455 #define LENOVO_FALCON_SSDEVID               0x1055
456 #define LENOVO_HORNET_DEVID                 0x7A8A
457 #define LENOVO_HORNET_SSDEVID               0x1056
458 
459 // NVIDIA C51
460 #define NVIDIA_C51_DEVICE_ID_MIN                        0x2F0
461 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_0               0x2F0
462 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_1               0x2F1
463 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_2               0x2F2
464 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_3               0x2F3
465 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_IGPU_DISABLE_0  0x2F4
466 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_IGPU_DISABLE_1  0x2F5
467 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_IGPU_DISABLE_2  0x2F6
468 #define NVIDIA_C51_ULDT_CFG_0_DEVICE_ID_IGPU_DISABLE_3  0x2F7
469 #define NVIDIA_C51_DEVICE_ID_MAX                        0x2F7
470 
471 // NVIDIA MCP55
472 #define NVIDIA_MCP55_ULDT_CFG_0_DEVICE_ID_DEFAULT      0x0369
473 
474 // NVIDIA MCP61
475 #define NVIDIA_MCP61_ULDT_CFG_0_DEVICE_ID_DEFAULT      0x03EA
476 #define NVIDIA_MCP61_ULDT_CFG_0_DEVICE_ID_PA           0x03E2
477 
478 // NVIDIA C55
479 #define NVIDIA_C55_CPU_PCI_0_DEVICE_ID_PRO             0x03A0
480 #define NVIDIA_C55_CPU_PCI_0_DEVICE_ID_PRO             0x03A0
481 #define NVIDIA_C55_CPU_PCI_0_DEVICE_ID_SLIX16          0x03A1
482 #define NVIDIA_C55_CPU_PCI_0_DEVICE_ID_SLI             0x03A3
483 #define NVIDIA_C55_CPU_PCI_0_DEVICE_ID_U               0x03A2
484 
485 // NVIDIA MCP65
486 #define NVIDIA_MCP65_ULDT_CFG_0_DEVICE_ID_DEFAULT      0x0444
487 
488 // NVIDIA MCP67/MCP68
489 #define NVIDIA_MCP67_ULDT_CFG_0_DEVICE_ID_DEFAULT      0x0547
490 
491 // NVIDIA MCP73
492 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_PV            0x07C0
493 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_O             0x07C1
494 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_S             0x07C2
495 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_V             0x07C3
496 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_RSVD_0        0x07C4
497 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_RSVD_1        0x07C5
498 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_RSVD_2        0x07C6
499 #define NVIDIA_MCP73_CPU_PCI_0_DEVICE_ID_D             0x07C7
500 
501 // NVIDIA C73
502 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_SLI2            0x0800
503 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_SLI_ALL         0x0801
504 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_SLIX8           0x0802
505 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_U               0x0803
506 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_RESERVED_0      0x0804
507 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_RESERVED_1      0x0805
508 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_RESERVED_2      0x0806
509 #define NVIDIA_C73_CPU_PCI_0_DEVICE_ID_RESERVED_3      0x0807
510 
511 // NVIDIA MCP77/78
512 #define NVIDIA_MCP77_ULDT_CFG_0_DEVICE_ID_DEFAULT      0x0754
513 #define NVIDIA_MCP77_ULDT_CFG_0_DEVICE_ID_1            0x0755
514 #define NVIDIA_MCP77_ULDT_CFG_0_DEVICE_ID_2            0x0756
515 #define NVIDIA_MCP77_ULDT_CFG_0_DEVICE_ID_3            0x0757
516 #define NVIDIA_MCP77_MCP_SM_CFG_0_DEVICE_ID_UNIT_SM    0x0752
517 
518 // NVIDIA MCP79/7A
519 #define NVIDIA_MCP79_CPU_PCI_0_DEVICE_ID_DEFAULT       0x0A80
520 #define NVIDIA_MCP79_CPU_PCI_0_DEVICE_ID_SLIX16        0x0A81
521 #define NVIDIA_MCP79_CPU_PCI_0_DEVICE_ID_SLI           0x0A82
522 #define NVIDIA_MCP79_CPU_PCI_0_DEVICE_ID_U             0x0A83
523 #define NVIDIA_MCP79_CPU_PCI_0_DEVICE_ID_GM            0x0A84
524 #define NVIDIA_MCP79_CPU_PCI_0_DEVICE_ID_GVM           0x0A85
525 #define NVIDIA_MCP79_MCP_SM_CFG_0_DEVICE_ID_UNIT_SM    0x0AA2
526 
527 // NVIDIA MCP89/P83
528 #define NVIDIA_MCP89_CPU_PCI_0_DEVICE_ID_DEFAULT   0x00000D60
529 
530 ///////////////////////////////////////////////////////////////////////////////////////////
531 //
532 // enumeration of chipset families
533 //
534 ///////////////////////////////////////////////////////////////////////////////////////////
535 
536 enum {
537       CS_UNKNOWN      = 0x0000,
538       CS_UNKNOWN_PCIE = 0x1000
539 ,     CS_INTEL_2580
540 ,     CS_INTEL_2584
541 ,     CS_INTEL_2588
542 ,     CS_INTEL_2590
543 ,     CS_INTEL_25E0
544 ,     CS_INTEL_29X0
545 ,     CS_INTEL_29E0
546 ,     CS_INTEL_359E
547 ,     CS_INTEL_4000
548 ,     CS_INTEL_4003
549 ,     CS_INTEL_3400
550 ,     CS_INTEL_3B42
551 ,     CS_INTEL_2770
552 ,     CS_INTEL_2774
553 ,     CS_INTEL_277C
554 ,     CS_INTEL_2A40
555 ,     CS_INTEL_2E00
556 ,     CS_INTEL_0040
557 ,     CS_INTEL_1C10
558 ,     CS_INTEL_1C46
559 ,     CS_INTEL_1C49
560 ,     CS_INTEL_1D40
561 ,     CS_INTEL_8D47
562 ,     CS_INTEL_1E10
563 ,     CS_INTEL_8C4B
564 ,     CS_INTEL_8CC4
565 ,     CS_INTEL_A145
566 ,     CS_INTEL_A2C5
567 ,     CS_INTEL_A242
568 ,     CS_INTEL_A2D2
569 ,     CS_INTEL_A2C9
570 ,     CS_INTEL_A301
571 ,     CS_INTEL_0685
572 ,     CS_INTEL_4381
573 ,     CS_INTEL_7A82
574 ,     CS_NVIDIA_CK804
575 ,     CS_NVIDIA_C19
576 ,     CS_NVIDIA_C51
577 ,     CS_NVIDIA_MCP55
578 ,     CS_NVIDIA_MCP61
579 ,     CS_NVIDIA_C55
580 ,     CS_NVIDIA_MCP65
581 ,     CS_NVIDIA_MCP67
582 ,     CS_NVIDIA_MCP73
583 ,     CS_NVIDIA_C73
584 ,     CS_NVIDIA_MCP77
585 ,     CS_NVIDIA_MCP79
586 ,     CS_NVIDIA_MCP89
587 ,     CS_NVIDIA_TEGRA3
588 ,     CS_SIS_649
589 ,     CS_SIS_656
590 ,     CS_ATI_RS400
591 ,     CS_ATI_RS400_A21
592 ,     CS_ATI_RS480
593 ,     CS_ATI_RS480_A21
594 ,     CS_AMD_RS780
595 ,     CS_VIA_VT8369B
596 ,     CS_ATI_FX790
597 ,     CS_ATI_RD850
598 ,     CS_ATI_RD870
599 ,     CS_ATI_RD890
600 ,     CS_ATI_FX890
601 ,     CS_ATI_RX780
602 ,     CS_ATI_FX990
603 ,     CS_AMD_GX890
604 ,     CS_AMD_X370
605 ,     CS_VIA_VX900
606 ,     CS_APM_STORM
607 ,     CS_IBM_VENICE
608 ,     CS_NVIDIA_T124
609 ,     CS_NVIDIA_T210
610 ,     CS_NVIDIA_T186
611 ,     CS_NVIDIA_T194
612 ,     CS_NVIDIA_T234
613 ,     CS_NVIDIA_T23x
614 ,     CS_NVIDIA_TH500
615 ,     CS_MARVELL_THUNDERX2
616 ,     CS_REDHAT_QEMU
617 ,     CS_AMPERE_EMAG
618 ,     CS_HUAWEI_KUNPENG920
619 ,     CS_MELLANOX_BLUEFIELD
620 ,     CS_AMAZON_GRAVITRON2
621 ,     CS_FUJITSU_A64FX
622 ,     CS_AMPERE_ALTRA
623 ,     CS_ARM_NEOVERSEN1
624 ,     CS_MARVELL_OCTEON_CN96XX
625 ,     CS_MARVELL_OCTEON_CN98XX
626 ,     CS_INTEL_C620
627 ,     CS_HYGON_C86
628 ,     CS_PHYTIUM_S2500
629 ,     CS_MELLANOX_BLUEFIELD2
630 ,     CS_MELLANOX_BLUEFIELD3
631 ,     CS_ALIBABA_YITIAN
632 ,     CS_INTEL_1B81
633 ,     CS_INTEL_18DC
634 ,     CS_INTEL_7A04
635 ,     CS_SIFIVE_FU740_C000
636 ,     CS_PLDA_XPRESSRICH_AXI_REF
637 ,     CS_AMPERE_AMPEREONE
638 ,     CS_MAX_PCIE
639 };
640 
641 enum {
642     RP_UNKNOWN = 0
643 ,   RP_BROADCOM_HT2100
644 ,   RP_INTEL_2581
645 ,   RP_INTEL_2585
646 ,   RP_INTEL_2589
647 ,   RP_INTEL_2591
648 ,   RP_INTEL_3597
649 ,   RP_INTEL_2775
650 ,   RP_INTEL_2771
651 ,   RP_INTEL_8110
652 ,   RP_INTEL_8112
653 ,   RP_INTEL_8180
654 ,   RP_INTEL_8181
655 ,   RP_INTEL_8184
656 ,   RP_INTEL_8185
657 ,   RP_INTEL_3C02
658 ,   RP_INTEL_3C03
659 ,   RP_INTEL_3C04
660 ,   RP_INTEL_3C05
661 ,   RP_INTEL_3C06
662 ,   RP_INTEL_3C07
663 ,   RP_INTEL_3C08
664 ,   RP_INTEL_3C09
665 ,   RP_INTEL_3C0A
666 ,   RP_INTEL_3C0B
667 ,   RP_INTEL_2F04
668 ,   RP_INTEL_2F08
669 ,   RP_INTEL_0C01
670 ,   RP_INTEL_1601
671 ,   RP_INTEL_1605
672 ,   RP_INTEL_1609
673 ,   RP_INTEL_1901
674 ,   RP_INTEL_1905
675 ,   RP_INTEL_1909
676 ,   RP_INTEL_5904
677 ,   RP_NVIDIA_CK804
678 ,   RP_NVIDIA_C19
679 ,   RP_NVIDIA_C51
680 ,   RP_NVIDIA_MCP55
681 ,   RP_NVIDIA_MCP61
682 ,   RP_NVIDIA_C55
683 ,   RP_NVIDIA_MCP65
684 };
685 
686 #endif //NVDEVID_H
687 
688