1/*
2 * Copyright 2017, Data61
3 * Commonwealth Scientific and Industrial Research Organisation (CSIRO)
4 * ABN 41 687 119 230.
5 *
6 * This software may be distributed and modified according to the terms of
7 * the BSD 2-Clause license. Note that NO WARRANTY is provided.
8 * See "LICENSE_BSD2.txt" for details.
9 *
10 * @TAG(DATA61_BSD)
11 */
12
13// WARNING: This file is generated. DO NOT EDIT.
14// Look in include/pci/helper_gen.y instead.
15
16#include <pci/helper.h>
17
18char* libpci_vendorID_str(int vid) {
19    if (vid == 0x0357) return "tttech";
20    if (vid == 0x0675) return "dynalink";
21    if (vid == 0x0871) return "berkom";
22    if (vid == 0x0e11) return "compaq";
23    if (vid == 0x1000) return "ncr";
24    if (vid == 0x1000) return "lsi_logic";
25    if (vid == 0x1002) return "ati";
26    if (vid == 0x1004) return "vlsi";
27    if (vid == 0x1005) return "adl";
28    if (vid == 0x100b) return "ns";
29    if (vid == 0x100c) return "tseng";
30    if (vid == 0x100e) return "weitek";
31    if (vid == 0x1011) return "dec";
32    if (vid == 0x1013) return "cirrus";
33    if (vid == 0x1014) return "ibm";
34    if (vid == 0x1018) return "unisys";
35    if (vid == 0x101a) return "compex2";
36    if (vid == 0x101c) return "wd";
37    if (vid == 0x101e) return "ami";
38    if (vid == 0x1022) return "amd";
39    if (vid == 0x1023) return "trident";
40    if (vid == 0x1025) return "ai";
41    if (vid == 0x1028) return "dell";
42    if (vid == 0x102B) return "matrox";
43    if (vid == 0x14f2) return "mobility_electronics";
44    if (vid == 0x102c) return "ct";
45    if (vid == 0x1031) return "miro";
46    if (vid == 0x1033) return "nec";
47    if (vid == 0x1036) return "fd";
48    if (vid == 0x1039) return "si";
49    if (vid == 0x103c) return "hp";
50    if (vid == 0x1042) return "pctech";
51    if (vid == 0x1043) return "asustek";
52    if (vid == 0x1044) return "dpt";
53    if (vid == 0x1045) return "opti";
54    if (vid == 0x1048) return "elsa";
55    if (vid == 0x104A) return "stmicro";
56    if (vid == 0x104B) return "buslogic";
57    if (vid == 0x104c) return "ti";
58    if (vid == 0x104d) return "sony";
59    if (vid == 0x1050) return "winbond2";
60    if (vid == 0x1051) return "anigma";
61    if (vid == 0x1055) return "efar";
62    if (vid == 0x1057) return "motorola";
63    if (vid == 0x105a) return "promise";
64    if (vid == 0x105b) return "foxconn";
65    if (vid == 0x1060) return "umc";
66    if (vid == 0x1066) return "picopower";
67    if (vid == 0x1069) return "mylex";
68    if (vid == 0x106b) return "apple";
69    if (vid == 0x1073) return "yamaha";
70    if (vid == 0x1077) return "qlogic";
71    if (vid == 0x1078) return "cyrix";
72    if (vid == 0x1080) return "contaq";
73    if (vid == 0x108d) return "olicom";
74    if (vid == 0x108e) return "sun";
75    if (vid == 0x1093) return "ni";
76    if (vid == 0x1095) return "cmd";
77    if (vid == 0x109e) return "brooktree";
78    if (vid == 0x10a9) return "sgi";
79    if (vid == 0x10ad) return "winbond";
80    if (vid == 0x10b5) return "plx";
81    if (vid == 0x10b6) return "madge";
82    if (vid == 0x10b7) return "3com";
83    if (vid == 0x10b9) return "al";
84    if (vid == 0x10c8) return "neomagic";
85    if (vid == 0x10da) return "tconrad";
86    if (vid == 0x10de) return "nvidia";
87    if (vid == 0x10e0) return "ims";
88    if (vid == 0x10ea) return "interg";
89    if (vid == 0x10ec) return "realtek";
90    if (vid == 0x10ee) return "xilinx";
91    if (vid == 0x1101) return "init";
92    if (vid == 0x1102) return "creative";
93    if (vid == 0x1102) return "ectiva";
94    if (vid == 0x1103) return "tti";
95    if (vid == 0x1106) return "via";
96    if (vid == 0x110A) return "siemens";
97    if (vid == 0x1119) return "vortex";
98    if (vid == 0x111a) return "ef";
99    if (vid == 0x111d) return "idt";
100    if (vid == 0x1127) return "fore";
101    if (vid == 0x1131) return "philips";
102    if (vid == 0x1133) return "eicon";
103    if (vid == 0x1137) return "cisco";
104    if (vid == 0x1138) return "ziatech";
105    if (vid == 0x1148) return "syskonnect";
106    if (vid == 0x114f) return "digi";
107    if (vid == 0x115d) return "xircom";
108    if (vid == 0x1166) return "serverworks";
109    if (vid == 0x1176) return "sbe";
110    if (vid == 0x1179) return "toshiba";
111    if (vid == 0x102f) return "toshiba_2";
112    if (vid == 0x117c) return "atto";
113    if (vid == 0x1180) return "ricoh";
114    if (vid == 0x1186) return "dlink";
115    if (vid == 0x1191) return "artop";
116    if (vid == 0x1193) return "zeitnet";
117    if (vid == 0x119e) return "fujitsu_me";
118    if (vid == 0x11ab) return "marvell";
119    if (vid == 0x1b4b) return "marvell_ext";
120    if (vid == 0x11b0) return "v3";
121    if (vid == 0x11c1) return "att";
122    if (vid == 0x11cb) return "specialix";
123    if (vid == 0x11d4) return "analog_devices";
124    if (vid == 0x11de) return "zoran";
125    if (vid == 0x11f6) return "compex";
126    if (vid == 0x11fe) return "rp";
127    if (vid == 0x120e) return "cyclades";
128    if (vid == 0x120f) return "essential";
129    if (vid == 0x1217) return "o2";
130    if (vid == 0x121a) return "3dfx";
131    if (vid == 0x1244) return "avm";
132    if (vid == 0x124d) return "stallion";
133    if (vid == 0x1259) return "at";
134    if (vid == 0x125d) return "ess";
135    if (vid == 0x1267) return "satsagem";
136    if (vid == 0x1274) return "ensoniq";
137    if (vid == 0x1279) return "transmeta";
138    if (vid == 0x127A) return "rockwell";
139    if (vid == 0x1283) return "ite";
140    if (vid == 0x12ae) return "alteon";
141    if (vid == 0x12d2) return "nvidia_sgs";
142    if (vid == 0x12eb) return "aureal";
143    if (vid == 0x12f8) return "electronicdesigngmbh";
144    if (vid == 0x12fe) return "esdgmbh";
145    if (vid == 0x1307) return "cb";
146    if (vid == 0x131f) return "siig";
147    if (vid == 0x1331) return "radisys";
148    if (vid == 0x1332) return "micro_memory";
149    if (vid == 0x134a) return "domex";
150    if (vid == 0x135a) return "intashield";
151    if (vid == 0x135C) return "quatech";
152    if (vid == 0x135e) return "sealevel";
153    if (vid == 0x1365) return "hypercope";
154    if (vid == 0x1369) return "digigram";
155    if (vid == 0x136b) return "kawasaki";
156    if (vid == 0x1371) return "cnet";
157    if (vid == 0x1376) return "lmc";
158    if (vid == 0x1385) return "netgear";
159    if (vid == 0x1389) return "applicom";
160    if (vid == 0x1393) return "moxa";
161    if (vid == 0x1397) return "ccd";
162    if (vid == 0x13a8) return "exar";
163    if (vid == 0x13c0) return "microgate";
164    if (vid == 0x13C1) return "3ware";
165    if (vid == 0x13ca) return "iomega";
166    if (vid == 0x13D1) return "abocom";
167    if (vid == 0x13f0) return "sundance";
168    if (vid == 0x13f6) return "cmedia";
169    if (vid == 0x13fe) return "advantech";
170    if (vid == 0x1402) return "meilhaus";
171    if (vid == 0x1407) return "lava";
172    if (vid == 0x1409) return "timedia";
173    if (vid == 0x1412) return "ice";
174    if (vid == 0x1415) return "oxsemi";
175    if (vid == 0x1425) return "chelsio";
176    if (vid == 0x144a) return "adlink";
177    if (vid == 0x144d) return "samsung";
178    if (vid == 0x1458) return "gigabyte";
179    if (vid == 0x1468) return "ambit";
180    if (vid == 0x14c1) return "myricom";
181    if (vid == 0x14D2) return "titan";
182    if (vid == 0x14d4) return "panacom";
183    if (vid == 0x14d9) return "sipackets";
184    if (vid == 0x14db) return "afavlab";
185    if (vid == 0x14dc) return "amplicon";
186    if (vid == 0x14a4) return "bcm_gvc";
187    if (vid == 0x14e4) return "broadcom";
188    if (vid == 0x151f) return "topic";
189    if (vid == 0x1522) return "mainpine";
190    if (vid == 0x1524) return "ene";
191    if (vid == 0x1592) return "syba";
192    if (vid == 0x15aa) return "moreton";
193    if (vid == 0x15b0) return "zoltrix";
194    if (vid == 0x15b3) return "mellanox";
195    if (vid == 0x15bd) return "dfi";
196    if (vid == 0x15e2) return "quicknet";
197    if (vid == 0x10E8) return "addidata_old";
198    if (vid == 0x15B8) return "addidata";
199    if (vid == 0x15e9) return "pdc";
200    if (vid == 0x1619) return "farsite";
201    if (vid == 0x161f) return "arima";
202    if (vid == 0x1657) return "brocade";
203    if (vid == 0x166d) return "sibyte";
204    if (vid == 0x168c) return "atheros";
205    if (vid == 0x169c) return "netcell";
206    if (vid == 0x16CA) return "cenatek";
207    if (vid == 0x1725) return "vitesse";
208    if (vid == 0x1737) return "linksys";
209    if (vid == 0x173b) return "altima";
210    if (vid == 0x1799) return "belkin";
211    if (vid == 0x17f3) return "rdc";
212    if (vid == 0x17aa) return "lenovo";
213    if (vid == 0x17d3) return "areca";
214    if (vid == 0x17d5) return "s2io";
215    if (vid == 0x182d) return "sitecom";
216    if (vid == 0x1867) return "topspin";
217    if (vid == 0x18f7) return "commtech";
218    if (vid == 0x1904) return "silan";
219    if (vid == 0x1912) return "renesas";
220    if (vid == 0x1924) return "solarflare";
221    if (vid == 0x192E) return "tdi";
222    if (vid == 0x1957) return "freescale";
223    if (vid == 0x1959) return "pasemi";
224    if (vid == 0x1969) return "attansic";
225    if (vid == 0x197B) return "jmicron";
226    if (vid == 0x1982) return "korenix";
227    if (vid == 0x1a32) return "qmi";
228    if (vid == 0x1a3b) return "azwave";
229    if (vid == 0x1b21) return "asmedia";
230    if (vid == 0x1cc8) return "circuitco";
231    if (vid == 0x1de1) return "tekram";
232    if (vid == 0x1fc9) return "tehuti";
233    if (vid == 0x3388) return "hint";
234    if (vid == 0x3d3d) return "3dlabs";
235    if (vid == 0x4040) return "netxen";
236    if (vid == 0x416c) return "aks";
237    if (vid == 0x494f) return "accessio";
238    if (vid == 0x5333) return "s3";
239    if (vid == 0x5544) return "dunord";
240    if (vid == 0x6666) return "dci";
241    if (vid == 0x8086) return "intel";
242    if (vid == 0x8686) return "scalemp";
243    if (vid == 0x8e0e) return "computone";
244    if (vid == 0x8e2e) return "kti";
245    if (vid == 0x9004) return "adaptec";
246    if (vid == 0x9005) return "adaptec2";
247    if (vid == 0x9412) return "holtek";
248    if (vid == 0x9710) return "netmos";
249    if (vid == 0xa727) return "3com_2";
250    if (vid == 0xd161) return "digium";
251    if (vid == 0xe159) return "tigerjet";
252    if (vid == 0xea60) return "xilinx_rme";
253    if (vid == 0x5853) return "xen";
254    if (vid == 0x1b85) return "ocz";
255    if (vid == 0x15ad) return "vmware";
256    if (vid == 0xffff) return "invalid";
257    return "Unknown vendor ID.";
258}
259
260char* libpci_deviceID_str(int vid, int did) {
261    if (vid == 0x0357 && did == 0x000a) return "tttech_mc322";
262    if (vid == 0x0675 && did == 0x1702) return "dynalink_is64ph";
263    if (vid == 0x0871 && did == 0xffa1) return "berkom_a1t";
264    if (vid == 0x0871 && did == 0xffa2) return "berkom_t_concept";
265    if (vid == 0x0871 && did == 0xffa4) return "berkom_a4t";
266    if (vid == 0x0871 && did == 0xffa8) return "berkom_scitel_quadro";
267    if (vid == 0x0e11 && did == 0x0508) return "compaq_tokenring";
268    if (vid == 0x0e11 && did == 0xa0fc) return "compaq_tachyon";
269    if (vid == 0x0e11 && did == 0xae10) return "compaq_smart2p";
270    if (vid == 0x0e11 && did == 0xae32) return "compaq_netel100";
271    if (vid == 0x0e11 && did == 0xae34) return "compaq_netel10";
272    if (vid == 0x0e11 && did == 0xae33) return "compaq_triflex_ide";
273    if (vid == 0x0e11 && did == 0xae35) return "compaq_netflex3i";
274    if (vid == 0x0e11 && did == 0xae40) return "compaq_netel100d";
275    if (vid == 0x0e11 && did == 0xae43) return "compaq_netel100pi";
276    if (vid == 0x0e11 && did == 0xb011) return "compaq_netel100i";
277    if (vid == 0x0e11 && did == 0xb060) return "compaq_ciss";
278    if (vid == 0x0e11 && did == 0xb178) return "compaq_cissb";
279    if (vid == 0x0e11 && did == 0x46) return "compaq_cissc";
280    if (vid == 0x0e11 && did == 0xf130) return "compaq_thunder";
281    if (vid == 0x0e11 && did == 0xf150) return "compaq_netflex3b";
282    if (vid == 0x1000 && did == 0x0001) return "ncr_53c810";
283    if (vid == 0x1000 && did == 0x0002) return "ncr_53c820";
284    if (vid == 0x1000 && did == 0x0003) return "ncr_53c825";
285    if (vid == 0x1000 && did == 0x0004) return "ncr_53c815";
286    if (vid == 0x1000 && did == 0x0005) return "lsi_53c810ap";
287    if (vid == 0x1000 && did == 0x0006) return "ncr_53c860";
288    if (vid == 0x1000 && did == 0x000a) return "lsi_53c1510";
289    if (vid == 0x1000 && did == 0x000b) return "ncr_53c896";
290    if (vid == 0x1000 && did == 0x000c) return "ncr_53c895";
291    if (vid == 0x1000 && did == 0x000d) return "ncr_53c885";
292    if (vid == 0x1000 && did == 0x000f) return "ncr_53c875";
293    if (vid == 0x1000 && did == 0x0010) return "ncr_53c1510";
294    if (vid == 0x1000 && did == 0x0012) return "lsi_53c895a";
295    if (vid == 0x1000 && did == 0x0013) return "lsi_53c875a";
296    if (vid == 0x1000 && did == 0x0020) return "lsi_53c1010_33";
297    if (vid == 0x1000 && did == 0x0021) return "lsi_53c1010_66";
298    if (vid == 0x1000 && did == 0x0030) return "lsi_53c1030";
299    if (vid == 0x1000 && did == 0x0032) return "lsi_1030_53c1035";
300    if (vid == 0x1000 && did == 0x0040) return "lsi_53c1035";
301    if (vid == 0x1000 && did == 0x008f) return "ncr_53c875j";
302    if (vid == 0x1000 && did == 0x0621) return "lsi_fc909";
303    if (vid == 0x1000 && did == 0x0622) return "lsi_fc929";
304    if (vid == 0x1000 && did == 0x0623) return "lsi_fc929_lan";
305    if (vid == 0x1000 && did == 0x0624) return "lsi_fc919";
306    if (vid == 0x1000 && did == 0x0625) return "lsi_fc919_lan";
307    if (vid == 0x1000 && did == 0x0626) return "lsi_fc929x";
308    if (vid == 0x1000 && did == 0x0642) return "lsi_fc939x";
309    if (vid == 0x1000 && did == 0x0640) return "lsi_fc949x";
310    if (vid == 0x1000 && did == 0x0646) return "lsi_fc949es";
311    if (vid == 0x1000 && did == 0x0628) return "lsi_fc919x";
312    if (vid == 0x1000 && did == 0x0701) return "ncr_yellowfin";
313    if (vid == 0x1000 && did == 0x0901) return "lsi_61c102";
314    if (vid == 0x1000 && did == 0x1000) return "lsi_63c815";
315    if (vid == 0x1000 && did == 0x0050) return "lsi_sas1064";
316    if (vid == 0x1000 && did == 0x0411) return "lsi_sas1064r";
317    if (vid == 0x1000 && did == 0x005E) return "lsi_sas1066";
318    if (vid == 0x1000 && did == 0x0054) return "lsi_sas1068";
319    if (vid == 0x1000 && did == 0x005C) return "lsi_sas1064a";
320    if (vid == 0x1000 && did == 0x0056) return "lsi_sas1064e";
321    if (vid == 0x1000 && did == 0x005A) return "lsi_sas1066e";
322    if (vid == 0x1000 && did == 0x0058) return "lsi_sas1068e";
323    if (vid == 0x1000 && did == 0x0060) return "lsi_sas1078";
324    if (vid == 0x1002 && did == 0x4158) return "ati_68800";
325    if (vid == 0x1002 && did == 0x4354) return "ati_215ct222";
326    if (vid == 0x1002 && did == 0x4358) return "ati_210888cx";
327    if (vid == 0x1002 && did == 0x4554) return "ati_215et222";
328    if (vid == 0x1002 && did == 0x4742) return "ati_215gb";
329    if (vid == 0x1002 && did == 0x4744) return "ati_215gd";
330    if (vid == 0x1002 && did == 0x4749) return "ati_215gi";
331    if (vid == 0x1002 && did == 0x4750) return "ati_215gp";
332    if (vid == 0x1002 && did == 0x4751) return "ati_215gq";
333    if (vid == 0x1002 && did == 0x4752) return "ati_215xl";
334    if (vid == 0x1002 && did == 0x4754) return "ati_215gt";
335    if (vid == 0x1002 && did == 0x4755) return "ati_215gtb";
336    if (vid == 0x1002 && did == 0x4756) return "ati_215_iv";
337    if (vid == 0x1002 && did == 0x4757) return "ati_215_iw";
338    if (vid == 0x1002 && did == 0x475A) return "ati_215_iz";
339    if (vid == 0x1002 && did == 0x4758) return "ati_210888gx";
340    if (vid == 0x1002 && did == 0x4c42) return "ati_215_lb";
341    if (vid == 0x1002 && did == 0x4c44) return "ati_215_ld";
342    if (vid == 0x1002 && did == 0x4c47) return "ati_215_lg";
343    if (vid == 0x1002 && did == 0x4c49) return "ati_215_li";
344    if (vid == 0x1002 && did == 0x4c4D) return "ati_215_lm";
345    if (vid == 0x1002 && did == 0x4c4E) return "ati_215_ln";
346    if (vid == 0x1002 && did == 0x4c52) return "ati_215_lr";
347    if (vid == 0x1002 && did == 0x4c53) return "ati_215_ls";
348    if (vid == 0x1002 && did == 0x4c54) return "ati_264_lt";
349    if (vid == 0x1002 && did == 0x5654) return "ati_264vt";
350    if (vid == 0x1002 && did == 0x5655) return "ati_264vu";
351    if (vid == 0x1002 && did == 0x5656) return "ati_264vv";
352    if (vid == 0x1002 && did == 0x5245) return "ati_rage128_re";
353    if (vid == 0x1002 && did == 0x5246) return "ati_rage128_rf";
354    if (vid == 0x1002 && did == 0x5247) return "ati_rage128_rg";
355    if (vid == 0x1002 && did == 0x524b) return "ati_rage128_rk";
356    if (vid == 0x1002 && did == 0x524c) return "ati_rage128_rl";
357    if (vid == 0x1002 && did == 0x5345) return "ati_rage128_se";
358    if (vid == 0x1002 && did == 0x5346) return "ati_rage128_sf";
359    if (vid == 0x1002 && did == 0x5347) return "ati_rage128_sg";
360    if (vid == 0x1002 && did == 0x5348) return "ati_rage128_sh";
361    if (vid == 0x1002 && did == 0x534b) return "ati_rage128_sk";
362    if (vid == 0x1002 && did == 0x534c) return "ati_rage128_sl";
363    if (vid == 0x1002 && did == 0x534d) return "ati_rage128_sm";
364    if (vid == 0x1002 && did == 0x534e) return "ati_rage128_sn";
365    if (vid == 0x1002 && did == 0x5446) return "ati_rage128_tf";
366    if (vid == 0x1002 && did == 0x544c) return "ati_rage128_tl";
367    if (vid == 0x1002 && did == 0x5452) return "ati_rage128_tr";
368    if (vid == 0x1002 && did == 0x5453) return "ati_rage128_ts";
369    if (vid == 0x1002 && did == 0x5454) return "ati_rage128_tt";
370    if (vid == 0x1002 && did == 0x5455) return "ati_rage128_tu";
371    if (vid == 0x1002 && did == 0x4c45) return "ati_rage128_le";
372    if (vid == 0x1002 && did == 0x4c46) return "ati_rage128_lf";
373    if (vid == 0x1002 && did == 0x4d46) return "ati_rage128_mf";
374    if (vid == 0x1002 && did == 0x4d4c) return "ati_rage128_ml";
375    if (vid == 0x1002 && did == 0x5041) return "ati_rage128_pa";
376    if (vid == 0x1002 && did == 0x5042) return "ati_rage128_pb";
377    if (vid == 0x1002 && did == 0x5043) return "ati_rage128_pc";
378    if (vid == 0x1002 && did == 0x5044) return "ati_rage128_pd";
379    if (vid == 0x1002 && did == 0x5045) return "ati_rage128_pe";
380    if (vid == 0x1002 && did == 0x5046) return "ati_rage128_pf";
381    if (vid == 0x1002 && did == 0x5047) return "ati_rage128_pg";
382    if (vid == 0x1002 && did == 0x5048) return "ati_rage128_ph";
383    if (vid == 0x1002 && did == 0x5049) return "ati_rage128_pi";
384    if (vid == 0x1002 && did == 0x504A) return "ati_rage128_pj";
385    if (vid == 0x1002 && did == 0x504B) return "ati_rage128_pk";
386    if (vid == 0x1002 && did == 0x504C) return "ati_rage128_pl";
387    if (vid == 0x1002 && did == 0x504D) return "ati_rage128_pm";
388    if (vid == 0x1002 && did == 0x504E) return "ati_rage128_pn";
389    if (vid == 0x1002 && did == 0x504F) return "ati_rage128_po";
390    if (vid == 0x1002 && did == 0x5050) return "ati_rage128_pp";
391    if (vid == 0x1002 && did == 0x5051) return "ati_rage128_pq";
392    if (vid == 0x1002 && did == 0x5052) return "ati_rage128_pr";
393    if (vid == 0x1002 && did == 0x5053) return "ati_rage128_ps";
394    if (vid == 0x1002 && did == 0x5054) return "ati_rage128_pt";
395    if (vid == 0x1002 && did == 0x5055) return "ati_rage128_pu";
396    if (vid == 0x1002 && did == 0x5056) return "ati_rage128_pv";
397    if (vid == 0x1002 && did == 0x5057) return "ati_rage128_pw";
398    if (vid == 0x1002 && did == 0x5058) return "ati_rage128_px";
399    if (vid == 0x1002 && did == 0x5144) return "ati_radeon_qd";
400    if (vid == 0x1002 && did == 0x5145) return "ati_radeon_qe";
401    if (vid == 0x1002 && did == 0x5146) return "ati_radeon_qf";
402    if (vid == 0x1002 && did == 0x5147) return "ati_radeon_qg";
403    if (vid == 0x1002 && did == 0x5159) return "ati_radeon_qy";
404    if (vid == 0x1002 && did == 0x515a) return "ati_radeon_qz";
405    if (vid == 0x1002 && did == 0x514c) return "ati_radeon_ql";
406    if (vid == 0x1002 && did == 0x514e) return "ati_radeon_qn";
407    if (vid == 0x1002 && did == 0x514f) return "ati_radeon_qo";
408    if (vid == 0x1002 && did == 0x4242) return "ati_radeon_bb";
409    if (vid == 0x1002 && did == 0x514d) return "ati_radeon_qm";
410    if (vid == 0x1002 && did == 0x5157) return "ati_radeon_qw";
411    if (vid == 0x1002 && did == 0x5158) return "ati_radeon_qx";
412    if (vid == 0x1002 && did == 0x4e44) return "ati_radeon_nd";
413    if (vid == 0x1002 && did == 0x4e45) return "ati_radeon_ne";
414    if (vid == 0x1002 && did == 0x4e46) return "ati_radeon_nf";
415    if (vid == 0x1002 && did == 0x4e47) return "ati_radeon_ng";
416    if (vid == 0x1002 && did == 0x4c59) return "ati_radeon_ly";
417    if (vid == 0x1002 && did == 0x4c5a) return "ati_radeon_lz";
418    if (vid == 0x1002 && did == 0x4c57) return "ati_radeon_lw";
419    if (vid == 0x1002 && did == 0x4c58) return "ati_radeon_lx";
420    if (vid == 0x1002 && did == 0xcab0) return "ati_rs100";
421    if (vid == 0x1002 && did == 0xcab2) return "ati_rs200";
422    if (vid == 0x1002 && did == 0xcbb2) return "ati_rs200_b";
423    if (vid == 0x1002 && did == 0xcab3) return "ati_rs250";
424    if (vid == 0x1002 && did == 0x5830) return "ati_rs300_100";
425    if (vid == 0x1002 && did == 0x5831) return "ati_rs300_133";
426    if (vid == 0x1002 && did == 0x5832) return "ati_rs300_166";
427    if (vid == 0x1002 && did == 0x5833) return "ati_rs300_200";
428    if (vid == 0x1002 && did == 0x7830) return "ati_rs350_100";
429    if (vid == 0x1002 && did == 0x7831) return "ati_rs350_133";
430    if (vid == 0x1002 && did == 0x7832) return "ati_rs350_166";
431    if (vid == 0x1002 && did == 0x7833) return "ati_rs350_200";
432    if (vid == 0x1002 && did == 0x5a30) return "ati_rs400_100";
433    if (vid == 0x1002 && did == 0x5a31) return "ati_rs400_133";
434    if (vid == 0x1002 && did == 0x5a32) return "ati_rs400_166";
435    if (vid == 0x1002 && did == 0x5a33) return "ati_rs400_200";
436    if (vid == 0x1002 && did == 0x5950) return "ati_rs480";
437    if (vid == 0x1002 && did == 0x4349) return "ati_ixp200_ide";
438    if (vid == 0x1002 && did == 0x4353) return "ati_ixp200_smbus";
439    if (vid == 0x1002 && did == 0x4363) return "ati_ixp300_smbus";
440    if (vid == 0x1002 && did == 0x4369) return "ati_ixp300_ide";
441    if (vid == 0x1002 && did == 0x436e) return "ati_ixp300_sata";
442    if (vid == 0x1002 && did == 0x4372) return "ati_ixp400_smbus";
443    if (vid == 0x1002 && did == 0x4376) return "ati_ixp400_ide";
444    if (vid == 0x1002 && did == 0x4379) return "ati_ixp400_sata";
445    if (vid == 0x1002 && did == 0x437a) return "ati_ixp400_sata2";
446    if (vid == 0x1002 && did == 0x4380) return "ati_ixp600_sata";
447    if (vid == 0x1002 && did == 0x4385) return "ati_sbx00_smbus";
448    if (vid == 0x1002 && did == 0x438c) return "ati_ixp600_ide";
449    if (vid == 0x1002 && did == 0x4390) return "ati_ixp700_sata";
450    if (vid == 0x1002 && did == 0x439c) return "ati_ixp700_ide";
451    if (vid == 0x1004 && did == 0x0005) return "vlsi_82c592";
452    if (vid == 0x1004 && did == 0x0006) return "vlsi_82c593";
453    if (vid == 0x1004 && did == 0x0007) return "vlsi_82c594";
454    if (vid == 0x1004 && did == 0x0009) return "vlsi_82c597";
455    if (vid == 0x1004 && did == 0x000c) return "vlsi_82c541";
456    if (vid == 0x1004 && did == 0x000d) return "vlsi_82c543";
457    if (vid == 0x1004 && did == 0x0101) return "vlsi_82c532";
458    if (vid == 0x1004 && did == 0x0102) return "vlsi_82c534";
459    if (vid == 0x1004 && did == 0x0104) return "vlsi_82c535";
460    if (vid == 0x1004 && did == 0x0105) return "vlsi_82c147";
461    if (vid == 0x1004 && did == 0x0702) return "vlsi_vas96011";
462    if (vid == 0x1004 && did == 0x5a23) return "rd890_iommu";
463    if (vid == 0x1005 && did == 0x2301) return "adl_2301";
464    if (vid == 0x100b && did == 0x0002) return "ns_87415";
465    if (vid == 0x100b && did == 0x000e) return "ns_87560_lio";
466    if (vid == 0x100b && did == 0x0012) return "ns_87560_usb";
467    if (vid == 0x100b && did == 0x0020) return "ns_83815";
468    if (vid == 0x100b && did == 0x0022) return "ns_83820";
469    if (vid == 0x100b && did == 0x002b) return "ns_cs5535_isa";
470    if (vid == 0x100b && did == 0x002d) return "ns_cs5535_ide";
471    if (vid == 0x100b && did == 0x002e) return "ns_cs5535_audio";
472    if (vid == 0x100b && did == 0x002f) return "ns_cs5535_usb";
473    if (vid == 0x100b && did == 0x0030) return "ns_gx_video";
474    if (vid == 0x100b && did == 0x0035) return "ns_saturn";
475    if (vid == 0x100b && did == 0x0510) return "ns_sc1100_bridge";
476    if (vid == 0x100b && did == 0x0511) return "ns_sc1100_smi";
477    if (vid == 0x100b && did == 0x0515) return "ns_sc1100_xbus";
478    if (vid == 0x100b && did == 0xd001) return "ns_87410";
479    if (vid == 0x100b && did == 0x0028) return "ns_gx_host_bridge";
480    if (vid == 0x100c && did == 0x3202) return "tseng_w32p_2";
481    if (vid == 0x100c && did == 0x3208) return "tseng_et6000";
482    if (vid == 0x100e && did == 0x9001) return "weitek_p9000";
483    if (vid == 0x100e && did == 0x9100) return "weitek_p9100";
484    if (vid == 0x1011 && did == 0x0001) return "dec_brd";
485    if (vid == 0x1011 && did == 0x0002) return "dec_tulip";
486    if (vid == 0x1011 && did == 0x0004) return "dec_tga";
487    if (vid == 0x1011 && did == 0x0009) return "dec_tulip_fast";
488    if (vid == 0x1011 && did == 0x000D) return "dec_tga2";
489    if (vid == 0x1011 && did == 0x000F) return "dec_fddi";
490    if (vid == 0x1011 && did == 0x0014) return "dec_tulip_plus";
491    if (vid == 0x1011 && did == 0x0019) return "dec_21142";
492    if (vid == 0x1011 && did == 0x0021) return "dec_21052";
493    if (vid == 0x1011 && did == 0x0022) return "dec_21150";
494    if (vid == 0x1011 && did == 0x0024) return "dec_21152";
495    if (vid == 0x1011 && did == 0x0025) return "dec_21153";
496    if (vid == 0x1011 && did == 0x0026) return "dec_21154";
497    if (vid == 0x1011 && did == 0x1065) return "dec_21285";
498    if (vid == 0x1011 && did == 0x0046) return "compaq_42xx";
499    if (vid == 0x1013 && did == 0x0038) return "cirrus_7548";
500    if (vid == 0x1013 && did == 0x00a0) return "cirrus_5430";
501    if (vid == 0x1013 && did == 0x00a4) return "cirrus_5434_4";
502    if (vid == 0x1013 && did == 0x00a8) return "cirrus_5434_8";
503    if (vid == 0x1013 && did == 0x00ac) return "cirrus_5436";
504    if (vid == 0x1013 && did == 0x00b8) return "cirrus_5446";
505    if (vid == 0x1013 && did == 0x00bc) return "cirrus_5480";
506    if (vid == 0x1013 && did == 0x00d0) return "cirrus_5462";
507    if (vid == 0x1013 && did == 0x00d4) return "cirrus_5464";
508    if (vid == 0x1013 && did == 0x00d6) return "cirrus_5465";
509    if (vid == 0x1013 && did == 0x1100) return "cirrus_6729";
510    if (vid == 0x1013 && did == 0x1110) return "cirrus_6832";
511    if (vid == 0x1013 && did == 0x1202) return "cirrus_7543";
512    if (vid == 0x1013 && did == 0x6001) return "cirrus_4610";
513    if (vid == 0x1013 && did == 0x6003) return "cirrus_4612";
514    if (vid == 0x1013 && did == 0x6004) return "cirrus_4615";
515    if (vid == 0x1014 && did == 0x0018) return "ibm_tr";
516    if (vid == 0x1014 && did == 0x003e) return "ibm_tr_wake";
517    if (vid == 0x1014 && did == 0x00fc) return "ibm_cpc710_pci64";
518    if (vid == 0x1014 && did == 0x0180) return "ibm_snipe";
519    if (vid == 0x1014 && did == 0x028C) return "ibm_citrine";
520    if (vid == 0x1014 && did == 0xB166) return "ibm_gemstone";
521    if (vid == 0x1014 && did == 0x02BD) return "ibm_obsidian";
522    if (vid == 0x1014 && did == 0x0031) return "ibm_icom_dev_id_1";
523    if (vid == 0x1014 && did == 0x0219) return "ibm_icom_dev_id_2";
524    if (vid == 0x1014 && did == 0x021A) return "ibm_icom_v2_two_ports_rvx";
525    if (vid == 0x1014 && did == 0x0251) return "ibm_icom_v2_one_port_rvx_one_port_mdm";
526    if (vid == 0x1014 && did == 0x0361) return "ibm_icom_v2_one_port_rvx_one_port_mdm_pcie";
527    if (vid == 0x1014 && did == 0x252) return "ibm_icom_four_port_model";
528    if (vid == 0x1018 && did == 0x001C) return "unisys_dma_director";
529    if (vid == 0x101a && did == 0x0005) return "compex2_100vg";
530    if (vid == 0x101c && did == 0xc24a) return "wd_90c";
531    if (vid == 0x101e && did == 0x1960) return "ami_megaraid3";
532    if (vid == 0x101e && did == 0x9010) return "ami_megaraid";
533    if (vid == 0x101e && did == 0x9060) return "ami_megaraid2";
534    if (vid == 0x1022 && did == 0x1100) return "amd_k8_nb";
535    if (vid == 0x1022 && did == 0x1101) return "amd_k8_nb_addrmap";
536    if (vid == 0x1022 && did == 0x1102) return "amd_k8_nb_memctl";
537    if (vid == 0x1022 && did == 0x1103) return "amd_k8_nb_misc";
538    if (vid == 0x1022 && did == 0x1200) return "amd_10h_nb_ht";
539    if (vid == 0x1022 && did == 0x1201) return "amd_10h_nb_map";
540    if (vid == 0x1022 && did == 0x1202) return "amd_10h_nb_dram";
541    if (vid == 0x1022 && did == 0x1203) return "amd_10h_nb_misc";
542    if (vid == 0x1022 && did == 0x1204) return "amd_10h_nb_link";
543    if (vid == 0x1022 && did == 0x1300) return "amd_11h_nb_ht";
544    if (vid == 0x1022 && did == 0x1301) return "amd_11h_nb_map";
545    if (vid == 0x1022 && did == 0x1302) return "amd_11h_nb_dram";
546    if (vid == 0x1022 && did == 0x1303) return "amd_11h_nb_misc";
547    if (vid == 0x1022 && did == 0x1304) return "amd_11h_nb_link";
548    if (vid == 0x1022 && did == 0x1403) return "amd_15h_m10h_f3";
549    if (vid == 0x1022 && did == 0x1600) return "amd_15h_nb_f0";
550    if (vid == 0x1022 && did == 0x1601) return "amd_15h_nb_f1";
551    if (vid == 0x1022 && did == 0x1602) return "amd_15h_nb_f2";
552    if (vid == 0x1022 && did == 0x1603) return "amd_15h_nb_f3";
553    if (vid == 0x1022 && did == 0x1604) return "amd_15h_nb_f4";
554    if (vid == 0x1022 && did == 0x1605) return "amd_15h_nb_f5";
555    if (vid == 0x1022 && did == 0x1533) return "amd_16h_nb_f3";
556    if (vid == 0x1022 && did == 0x1534) return "amd_16h_nb_f4";
557    if (vid == 0x1022 && did == 0x1703) return "amd_cnb17h_f3";
558    if (vid == 0x1022 && did == 0x2000) return "amd_lance";
559    if (vid == 0x1022 && did == 0x2001) return "amd_lance_home";
560    if (vid == 0x1022 && did == 0x2020) return "amd_scsi";
561    if (vid == 0x1022 && did == 0x36c0) return "amd_serenade";
562    if (vid == 0x1022 && did == 0x7006) return "amd_fe_gate_7006";
563    if (vid == 0x1022 && did == 0x7007) return "amd_fe_gate_7007";
564    if (vid == 0x1022 && did == 0x700C) return "amd_fe_gate_700c";
565    if (vid == 0x1022 && did == 0x700E) return "amd_fe_gate_700e";
566    if (vid == 0x1022 && did == 0x7401) return "amd_cobra_7401";
567    if (vid == 0x1022 && did == 0x7409) return "amd_viper_7409";
568    if (vid == 0x1022 && did == 0x740B) return "amd_viper_740b";
569    if (vid == 0x1022 && did == 0x7410) return "amd_viper_7410";
570    if (vid == 0x1022 && did == 0x7411) return "amd_viper_7411";
571    if (vid == 0x1022 && did == 0x7413) return "amd_viper_7413";
572    if (vid == 0x1022 && did == 0x7440) return "amd_viper_7440";
573    if (vid == 0x1022 && did == 0x7441) return "amd_opus_7441";
574    if (vid == 0x1022 && did == 0x7443) return "amd_opus_7443";
575    if (vid == 0x1022 && did == 0x7443) return "amd_viper_7443";
576    if (vid == 0x1022 && did == 0x7445) return "amd_opus_7445";
577    if (vid == 0x1022 && did == 0x7460) return "amd_8111_pci";
578    if (vid == 0x1022 && did == 0x7468) return "amd_8111_lpc";
579    if (vid == 0x1022 && did == 0x7469) return "amd_8111_ide";
580    if (vid == 0x1022 && did == 0x746a) return "amd_8111_smbus2";
581    if (vid == 0x1022 && did == 0x746b) return "amd_8111_smbus";
582    if (vid == 0x1022 && did == 0x746d) return "amd_8111_audio";
583    if (vid == 0x1022 && did == 0x7454) return "amd_8151_0";
584    if (vid == 0x1022 && did == 0x7450) return "amd_8131_bridge";
585    if (vid == 0x1022 && did == 0x7451) return "amd_8131_apic";
586    if (vid == 0x1022 && did == 0x7458) return "amd_8132_bridge";
587    if (vid == 0x1022 && did == 0x208F) return "amd_cs5535_ide";
588    if (vid == 0x1022 && did == 0x2090) return "amd_cs5536_isa";
589    if (vid == 0x1022 && did == 0x2091) return "amd_cs5536_flash";
590    if (vid == 0x1022 && did == 0x2093) return "amd_cs5536_audio";
591    if (vid == 0x1022 && did == 0x2094) return "amd_cs5536_ohc";
592    if (vid == 0x1022 && did == 0x2095) return "amd_cs5536_ehc";
593    if (vid == 0x1022 && did == 0x2096) return "amd_cs5536_udc";
594    if (vid == 0x1022 && did == 0x2097) return "amd_cs5536_uoc";
595    if (vid == 0x1022 && did == 0x209A) return "amd_cs5536_ide";
596    if (vid == 0x1022 && did == 0x2081) return "amd_lx_video";
597    if (vid == 0x1022 && did == 0x2082) return "amd_lx_aes";
598    if (vid == 0x1022 && did == 0x7800) return "amd_hudson2_sata_ide";
599    if (vid == 0x1022 && did == 0x780b) return "amd_hudson2_smbus";
600    if (vid == 0x1022 && did == 0x780c) return "amd_hudson2_ide";
601    if (vid == 0x1023 && did == 0x2000) return "trident_4dwave_dx";
602    if (vid == 0x1023 && did == 0x2001) return "trident_4dwave_nx";
603    if (vid == 0x1023 && did == 0x9320) return "trident_9320";
604    if (vid == 0x1023 && did == 0x9388) return "trident_9388";
605    if (vid == 0x1023 && did == 0x9397) return "trident_9397";
606    if (vid == 0x1023 && did == 0x939A) return "trident_939a";
607    if (vid == 0x1023 && did == 0x9520) return "trident_9520";
608    if (vid == 0x1023 && did == 0x9525) return "trident_9525";
609    if (vid == 0x1023 && did == 0x9420) return "trident_9420";
610    if (vid == 0x1023 && did == 0x9440) return "trident_9440";
611    if (vid == 0x1023 && did == 0x9660) return "trident_9660";
612    if (vid == 0x1023 && did == 0x9750) return "trident_9750";
613    if (vid == 0x1023 && did == 0x9850) return "trident_9850";
614    if (vid == 0x1023 && did == 0x9880) return "trident_9880";
615    if (vid == 0x1023 && did == 0x8400) return "trident_8400";
616    if (vid == 0x1023 && did == 0x8420) return "trident_8420";
617    if (vid == 0x1023 && did == 0x8500) return "trident_8500";
618    if (vid == 0x1025 && did == 0x1435) return "ai_m1435";
619    if (vid == 0x1028 && did == 0x0008) return "dell_raciii";
620    if (vid == 0x1028 && did == 0x0012) return "dell_rac4";
621    if (vid == 0x1028 && did == 0x0015) return "dell_perc5";
622    if (vid == 0x102B && did == 0x0518) return "matrox_mga_2";
623    if (vid == 0x102B && did == 0x0519) return "matrox_mil";
624    if (vid == 0x102B && did == 0x051A) return "matrox_mys";
625    if (vid == 0x102B && did == 0x051b) return "matrox_mil_2";
626    if (vid == 0x102B && did == 0x051e) return "matrox_mys_agp";
627    if (vid == 0x102B && did == 0x051f) return "matrox_mil_2_agp";
628    if (vid == 0x102B && did == 0x0d10) return "matrox_mga_imp";
629    if (vid == 0x102B && did == 0x1000) return "matrox_g100_mm";
630    if (vid == 0x102B && did == 0x1001) return "matrox_g100_agp";
631    if (vid == 0x102B && did == 0x0520) return "matrox_g200_pci";
632    if (vid == 0x102B && did == 0x0521) return "matrox_g200_agp";
633    if (vid == 0x102B && did == 0x0525) return "matrox_g400";
634    if (vid == 0x102B && did == 0x0530) return "matrox_g200ev_pci";
635    if (vid == 0x102B && did == 0x2527) return "matrox_g550";
636    if (vid == 0x102B && did == 0x4536) return "matrox_via";
637    if (vid == 0x102c && did == 0x00c0) return "ct_69000";
638    if (vid == 0x102c && did == 0x00d8) return "ct_65545";
639    if (vid == 0x102c && did == 0x00dc) return "ct_65548";
640    if (vid == 0x102c && did == 0x00e0) return "ct_65550";
641    if (vid == 0x102c && did == 0x00e4) return "ct_65554";
642    if (vid == 0x102c && did == 0x00e5) return "ct_65555";
643    if (vid == 0x1031 && did == 0x5601) return "miro_36050";
644    if (vid == 0x1031 && did == 0x7efe) return "miro_dc10plus";
645    if (vid == 0x1031 && did == 0xd801) return "miro_dc30plus";
646    if (vid == 0x1033 && did == 0x0001) return "nec_cbus_1";
647    if (vid == 0x1033 && did == 0x0002) return "nec_local";
648    if (vid == 0x1033 && did == 0x0003) return "nec_atm";
649    if (vid == 0x1033 && did == 0x0004) return "nec_r4000";
650    if (vid == 0x1033 && did == 0x0005) return "nec_486";
651    if (vid == 0x1033 && did == 0x0006) return "nec_accel_1";
652    if (vid == 0x1033 && did == 0x0007) return "nec_uxbus";
653    if (vid == 0x1033 && did == 0x0008) return "nec_accel_2";
654    if (vid == 0x1033 && did == 0x0009) return "nec_graph";
655    if (vid == 0x1033 && did == 0x0016) return "nec_vl";
656    if (vid == 0x1033 && did == 0x002c) return "nec_staralpha2";
657    if (vid == 0x1033 && did == 0x002d) return "nec_cbus_2";
658    if (vid == 0x1033 && did == 0x0035) return "nec_usb";
659    if (vid == 0x1033 && did == 0x003b) return "nec_cbus_3";
660    if (vid == 0x1033 && did == 0x003e) return "nec_napccard";
661    if (vid == 0x1033 && did == 0x0046) return "nec_pcx2";
662    if (vid == 0x1033 && did == 0x009b) return "nec_vrc5476";
663    if (vid == 0x1033 && did == 0x00a5) return "nec_vrc4173";
664    if (vid == 0x1033 && did == 0x00a6) return "nec_vrc5477_ac97";
665    if (vid == 0x1033 && did == 0x800c) return "nec_pc9821cs01";
666    if (vid == 0x1033 && did == 0x800d) return "nec_pc9821nrb06";
667    if (vid == 0x1036 && did == 0x0000) return "fd_36c70";
668    if (vid == 0x1039 && did == 0x0001) return "si_5591_agp";
669    if (vid == 0x1039 && did == 0x0002) return "si_6202";
670    if (vid == 0x1039 && did == 0x0008) return "si_503";
671    if (vid == 0x1039 && did == 0x0009) return "si_acpi";
672    if (vid == 0x1039 && did == 0x0016) return "si_smbus";
673    if (vid == 0x1039 && did == 0x0018) return "si_lpc";
674    if (vid == 0x1039 && did == 0x0200) return "si_5597_vga";
675    if (vid == 0x1039 && did == 0x0205) return "si_6205";
676    if (vid == 0x1039 && did == 0x0406) return "si_501";
677    if (vid == 0x1039 && did == 0x0496) return "si_496";
678    if (vid == 0x1039 && did == 0x0300) return "si_300";
679    if (vid == 0x1039 && did == 0x0310) return "si_315h";
680    if (vid == 0x1039 && did == 0x0315) return "si_315";
681    if (vid == 0x1039 && did == 0x0325) return "si_315pro";
682    if (vid == 0x1039 && did == 0x0530) return "si_530";
683    if (vid == 0x1039 && did == 0x0540) return "si_540";
684    if (vid == 0x1039 && did == 0x0550) return "si_550";
685    if (vid == 0x1039 && did == 0x5300) return "si_540_vga";
686    if (vid == 0x1039 && did == 0x5315) return "si_550_vga";
687    if (vid == 0x1039 && did == 0x0620) return "si_620";
688    if (vid == 0x1039 && did == 0x0630) return "si_630";
689    if (vid == 0x1039 && did == 0x0633) return "si_633";
690    if (vid == 0x1039 && did == 0x0635) return "si_635";
691    if (vid == 0x1039 && did == 0x0640) return "si_640";
692    if (vid == 0x1039 && did == 0x0645) return "si_645";
693    if (vid == 0x1039 && did == 0x0646) return "si_646";
694    if (vid == 0x1039 && did == 0x0648) return "si_648";
695    if (vid == 0x1039 && did == 0x0650) return "si_650";
696    if (vid == 0x1039 && did == 0x0651) return "si_651";
697    if (vid == 0x1039 && did == 0x0655) return "si_655";
698    if (vid == 0x1039 && did == 0x0661) return "si_661";
699    if (vid == 0x1039 && did == 0x0730) return "si_730";
700    if (vid == 0x1039 && did == 0x0733) return "si_733";
701    if (vid == 0x1039 && did == 0x6300) return "si_630_vga";
702    if (vid == 0x1039 && did == 0x0735) return "si_735";
703    if (vid == 0x1039 && did == 0x0740) return "si_740";
704    if (vid == 0x1039 && did == 0x0741) return "si_741";
705    if (vid == 0x1039 && did == 0x0745) return "si_745";
706    if (vid == 0x1039 && did == 0x0746) return "si_746";
707    if (vid == 0x1039 && did == 0x0755) return "si_755";
708    if (vid == 0x1039 && did == 0x0760) return "si_760";
709    if (vid == 0x1039 && did == 0x0900) return "si_900";
710    if (vid == 0x1039 && did == 0x0961) return "si_961";
711    if (vid == 0x1039 && did == 0x0962) return "si_962";
712    if (vid == 0x1039 && did == 0x0963) return "si_963";
713    if (vid == 0x1039 && did == 0x0965) return "si_965";
714    if (vid == 0x1039 && did == 0x0966) return "si_966";
715    if (vid == 0x1039 && did == 0x0968) return "si_968";
716    if (vid == 0x1039 && did == 0x1180) return "si_1180";
717    if (vid == 0x1039 && did == 0x5511) return "si_5511";
718    if (vid == 0x1039 && did == 0x5513) return "si_5513";
719    if (vid == 0x1039 && did == 0x5517) return "si_5517";
720    if (vid == 0x1039 && did == 0x5518) return "si_5518";
721    if (vid == 0x1039 && did == 0x5571) return "si_5571";
722    if (vid == 0x1039 && did == 0x5581) return "si_5581";
723    if (vid == 0x1039 && did == 0x5582) return "si_5582";
724    if (vid == 0x1039 && did == 0x5591) return "si_5591";
725    if (vid == 0x1039 && did == 0x5596) return "si_5596";
726    if (vid == 0x1039 && did == 0x5597) return "si_5597";
727    if (vid == 0x1039 && did == 0x5598) return "si_5598";
728    if (vid == 0x1039 && did == 0x5600) return "si_5600";
729    if (vid == 0x1039 && did == 0x7012) return "si_7012";
730    if (vid == 0x1039 && did == 0x7013) return "si_7013";
731    if (vid == 0x1039 && did == 0x7016) return "si_7016";
732    if (vid == 0x1039 && did == 0x7018) return "si_7018";
733    if (vid == 0x103c && did == 0x1005) return "hp_visualize_eg";
734    if (vid == 0x103c && did == 0x1006) return "hp_visualize_fx6";
735    if (vid == 0x103c && did == 0x1008) return "hp_visualize_fx4";
736    if (vid == 0x103c && did == 0x100a) return "hp_visualize_fx2";
737    if (vid == 0x103c && did == 0x1028) return "hp_tachyon";
738    if (vid == 0x103c && did == 0x1029) return "hp_tachlite";
739    if (vid == 0x103c && did == 0x1030) return "hp_j2585a";
740    if (vid == 0x103c && did == 0x1031) return "hp_j2585b";
741    if (vid == 0x103c && did == 0x1040) return "hp_j2973a";
742    if (vid == 0x103c && did == 0x1042) return "hp_j2970a";
743    if (vid == 0x103c && did == 0x1048) return "hp_diva";
744    if (vid == 0x103c && did == 0x1049) return "hp_diva_tosca1";
745    if (vid == 0x103c && did == 0x104A) return "hp_diva_tosca2";
746    if (vid == 0x103c && did == 0x104B) return "hp_diva_maestro";
747    if (vid == 0x103c && did == 0x10f1) return "hp_reo_ioc";
748    if (vid == 0x103c && did == 0x108b) return "hp_visualize_fxe";
749    if (vid == 0x103c && did == 0x1223) return "hp_diva_halfdome";
750    if (vid == 0x103c && did == 0x1226) return "hp_diva_keystone";
751    if (vid == 0x103c && did == 0x1227) return "hp_diva_powerbar";
752    if (vid == 0x103c && did == 0x122a) return "hp_zx1_ioc";
753    if (vid == 0x103c && did == 0x122e) return "hp_pcix_lba";
754    if (vid == 0x103c && did == 0x127c) return "hp_sx1000_ioc";
755    if (vid == 0x103c && did == 0x1282) return "hp_diva_everest";
756    if (vid == 0x103c && did == 0x1290) return "hp_diva_aux";
757    if (vid == 0x103c && did == 0x1301) return "hp_diva_rmp3";
758    if (vid == 0x103c && did == 0x132a) return "hp_diva_hurricane";
759    if (vid == 0x103c && did == 0x3220) return "hp_cissa";
760    if (vid == 0x103c && did == 0x3230) return "hp_cissc";
761    if (vid == 0x103c && did == 0x3238) return "hp_cissd";
762    if (vid == 0x103c && did == 0x323a) return "hp_cisse";
763    if (vid == 0x103c && did == 0x323b) return "hp_cissf";
764    if (vid == 0x103c && did == 0x323c) return "hp_cissh";
765    if (vid == 0x103c && did == 0x4031) return "hp_zx2_ioc";
766    if (vid == 0x1042 && did == 0x1000) return "pctech_rz1000";
767    if (vid == 0x1042 && did == 0x1001) return "pctech_rz1001";
768    if (vid == 0x1042 && did == 0x3020) return "pctech_samurai_ide";
769    if (vid == 0x1043 && did == 0x0675) return "asustek_0675";
770    if (vid == 0x1045 && did == 0xc558) return "opti_82c558";
771    if (vid == 0x1045 && did == 0xc621) return "opti_82c621";
772    if (vid == 0x1045 && did == 0xc700) return "opti_82c700";
773    if (vid == 0x1045 && did == 0xd568) return "opti_82c825";
774    if (vid == 0x1048 && did == 0x1000) return "elsa_microlink";
775    if (vid == 0x1048 && did == 0x3000) return "elsa_qs3000";
776    if (vid == 0x104A && did == 0xCC00) return "stmicro_usb_host";
777    if (vid == 0x104A && did == 0xCC01) return "stmicro_usb_ohci";
778    if (vid == 0x104A && did == 0xCC02) return "stmicro_usb_otg";
779    if (vid == 0x104A && did == 0xCC03) return "stmicro_uart_hwfc";
780    if (vid == 0x104A && did == 0xCC04) return "stmicro_uart_no_hwfc";
781    if (vid == 0x104A && did == 0xCC05) return "stmicro_soc_dma";
782    if (vid == 0x104A && did == 0xCC06) return "stmicro_sata";
783    if (vid == 0x104A && did == 0xCC07) return "stmicro_i2c";
784    if (vid == 0x104A && did == 0xCC08) return "stmicro_spi_hs";
785    if (vid == 0x104A && did == 0xCC09) return "stmicro_mac";
786    if (vid == 0x104A && did == 0xCC0A) return "stmicro_sdio_emmc";
787    if (vid == 0x104A && did == 0xCC0B) return "stmicro_sdio";
788    if (vid == 0x104A && did == 0xCC0C) return "stmicro_gpio";
789    if (vid == 0x104A && did == 0xCC0D) return "stmicro_vip";
790    if (vid == 0x104A && did == 0xCC0E) return "stmicro_audio_router_dma";
791    if (vid == 0x104A && did == 0xCC0F) return "stmicro_audio_router_srcs";
792    if (vid == 0x104A && did == 0xCC10) return "stmicro_audio_router_msps";
793    if (vid == 0x104A && did == 0xCC11) return "stmicro_can";
794    if (vid == 0x104A && did == 0xCC12) return "stmicro_mlb";
795    if (vid == 0x104A && did == 0xCC13) return "stmicro_dbp";
796    if (vid == 0x104A && did == 0xCC14) return "stmicro_sata_phy";
797    if (vid == 0x104A && did == 0xCC15) return "stmicro_esram";
798    if (vid == 0x104A && did == 0xCC16) return "stmicro_vic";
799    if (vid == 0x104B && did == 0x0140) return "buslogic_multimaster_nc";
800    if (vid == 0x104B && did == 0x1040) return "buslogic_multimaster";
801    if (vid == 0x104B && did == 0x8130) return "buslogic_flashpoint";
802    if (vid == 0x104c && did == 0x3d07) return "ti_tvp4020";
803    if (vid == 0x104c && did == 0x8011) return "ti_4450";
804    if (vid == 0x104c && did == 0x8031) return "ti_xx21_xx11";
805    if (vid == 0x104c && did == 0x8033) return "ti_xx21_xx11_fm";
806    if (vid == 0x104c && did == 0x8034) return "ti_xx21_xx11_sd";
807    if (vid == 0x104c && did == 0x8036) return "ti_x515";
808    if (vid == 0x104c && did == 0x8039) return "ti_xx12";
809    if (vid == 0x104c && did == 0x803b) return "ti_xx12_fm";
810    if (vid == 0x104c && did == 0x8231) return "ti_xio2000a";
811    if (vid == 0x104c && did == 0xac12) return "ti_1130";
812    if (vid == 0x104c && did == 0xac13) return "ti_1031";
813    if (vid == 0x104c && did == 0xac15) return "ti_1131";
814    if (vid == 0x104c && did == 0xac16) return "ti_1250";
815    if (vid == 0x104c && did == 0xac17) return "ti_1220";
816    if (vid == 0x104c && did == 0xac19) return "ti_1221";
817    if (vid == 0x104c && did == 0xac1a) return "ti_1210";
818    if (vid == 0x104c && did == 0xac1b) return "ti_1450";
819    if (vid == 0x104c && did == 0xac1c) return "ti_1225";
820    if (vid == 0x104c && did == 0xac1d) return "ti_1251a";
821    if (vid == 0x104c && did == 0xac1e) return "ti_1211";
822    if (vid == 0x104c && did == 0xac1f) return "ti_1251b";
823    if (vid == 0x104c && did == 0xac41) return "ti_4410";
824    if (vid == 0x104c && did == 0xac42) return "ti_4451";
825    if (vid == 0x104c && did == 0xac44) return "ti_4510";
826    if (vid == 0x104c && did == 0xac46) return "ti_4520";
827    if (vid == 0x104c && did == 0xac47) return "ti_7510";
828    if (vid == 0x104c && did == 0xac48) return "ti_7610";
829    if (vid == 0x104c && did == 0xac49) return "ti_7410";
830    if (vid == 0x104c && did == 0xac50) return "ti_1410";
831    if (vid == 0x104c && did == 0xac51) return "ti_1420";
832    if (vid == 0x104c && did == 0xac52) return "ti_1451a";
833    if (vid == 0x104c && did == 0xac54) return "ti_1620";
834    if (vid == 0x104c && did == 0xac55) return "ti_1520";
835    if (vid == 0x104c && did == 0xac56) return "ti_1510";
836    if (vid == 0x104c && did == 0xac8d) return "ti_x620";
837    if (vid == 0x104c && did == 0xac8e) return "ti_x420";
838    if (vid == 0x104c && did == 0xac8f) return "ti_xx20_fm";
839    if (vid == 0x1050 && did == 0x5a5a) return "winbond2_89c940f";
840    if (vid == 0x1050 && did == 0x6692) return "winbond2_6692";
841    if (vid == 0x1051 && did == 0x0100) return "anigma_mc145575";
842    if (vid == 0x1055 && did == 0x9130) return "efar_slc90e66_1";
843    if (vid == 0x1055 && did == 0x9463) return "efar_slc90e66_3";
844    if (vid == 0x1057 && did == 0x0001) return "motorola_mpc105";
845    if (vid == 0x1057 && did == 0x0002) return "motorola_mpc106";
846    if (vid == 0x1057 && did == 0x0004) return "motorola_mpc107";
847    if (vid == 0x1057 && did == 0x4801) return "motorola_raven";
848    if (vid == 0x1057 && did == 0x4802) return "motorola_falcon";
849    if (vid == 0x1057 && did == 0x4803) return "motorola_hawk";
850    if (vid == 0x1057 && did == 0x480b) return "motorola_harrier";
851    if (vid == 0x1057 && did == 0x5803) return "motorola_mpc5200";
852    if (vid == 0x1057 && did == 0x5809) return "motorola_mpc5200b";
853    if (vid == 0x105a && did == 0x0d30) return "promise_20265";
854    if (vid == 0x105a && did == 0x4d30) return "promise_20267";
855    if (vid == 0x105a && did == 0x4d33) return "promise_20246";
856    if (vid == 0x105a && did == 0x4d38) return "promise_20262";
857    if (vid == 0x105a && did == 0x0D38) return "promise_20263";
858    if (vid == 0x105a && did == 0x4d68) return "promise_20268";
859    if (vid == 0x105a && did == 0x4d69) return "promise_20269";
860    if (vid == 0x105a && did == 0x6268) return "promise_20270";
861    if (vid == 0x105a && did == 0x6269) return "promise_20271";
862    if (vid == 0x105a && did == 0x1275) return "promise_20275";
863    if (vid == 0x105a && did == 0x5275) return "promise_20276";
864    if (vid == 0x105a && did == 0x7275) return "promise_20277";
865    if (vid == 0x1060 && did == 0x0101) return "umc_um8673f";
866    if (vid == 0x1060 && did == 0x673a) return "umc_um8886bf";
867    if (vid == 0x1060 && did == 0x886a) return "umc_um8886a";
868    if (vid == 0x1066 && did == 0x0002) return "picopower_pt86c523";
869    if (vid == 0x1066 && did == 0x8002) return "picopower_pt86c523bbp";
870    if (vid == 0x1069 && did == 0x0001) return "mylex_dac960_p";
871    if (vid == 0x1069 && did == 0x0002) return "mylex_dac960_pd";
872    if (vid == 0x1069 && did == 0x0010) return "mylex_dac960_pg";
873    if (vid == 0x1069 && did == 0x0020) return "mylex_dac960_la";
874    if (vid == 0x1069 && did == 0x0050) return "mylex_dac960_lp";
875    if (vid == 0x1069 && did == 0xBA56) return "mylex_dac960_ba";
876    if (vid == 0x1069 && did == 0xB166) return "mylex_dac960_gem";
877    if (vid == 0x106b && did == 0x0001) return "apple_bandit";
878    if (vid == 0x106b && did == 0x000e) return "apple_hydra";
879    if (vid == 0x106b && did == 0x0018) return "apple_uni_n_fw";
880    if (vid == 0x106b && did == 0x0020) return "apple_uni_n_agp";
881    if (vid == 0x106b && did == 0x0021) return "apple_uni_n_gmac";
882    if (vid == 0x106b && did == 0x0024) return "apple_uni_n_gmacp";
883    if (vid == 0x106b && did == 0x0027) return "apple_uni_n_agp_p";
884    if (vid == 0x106b && did == 0x002d) return "apple_uni_n_agp15";
885    if (vid == 0x106b && did == 0x002e) return "apple_uni_n_pci15";
886    if (vid == 0x106b && did == 0x0032) return "apple_uni_n_gmac2";
887    if (vid == 0x106b && did == 0x0033) return "apple_uni_n_ata";
888    if (vid == 0x106b && did == 0x0034) return "apple_uni_n_agp2";
889    if (vid == 0x106b && did == 0x003b) return "apple_ipid_ata100";
890    if (vid == 0x106b && did == 0x0043) return "apple_k2_ata100";
891    if (vid == 0x106b && did == 0x004b) return "apple_u3_agp";
892    if (vid == 0x106b && did == 0x004c) return "apple_k2_gmac";
893    if (vid == 0x106b && did == 0x0050) return "apple_sh_ata";
894    if (vid == 0x106b && did == 0x0051) return "apple_sh_sungem";
895    if (vid == 0x106b && did == 0x0058) return "apple_u3l_agp";
896    if (vid == 0x106b && did == 0x0059) return "apple_u3h_agp";
897    if (vid == 0x106b && did == 0x005b) return "apple_u4_pcie";
898    if (vid == 0x106b && did == 0x0066) return "apple_ipid2_agp";
899    if (vid == 0x106b && did == 0x0069) return "apple_ipid2_ata";
900    if (vid == 0x106b && did == 0x006a) return "apple_ipid2_fw";
901    if (vid == 0x106b && did == 0x006b) return "apple_ipid2_gmac";
902    if (vid == 0x106b && did == 0x1645) return "apple_tigon3";
903    if (vid == 0x1073 && did == 0x0004) return "yamaha_724";
904    if (vid == 0x1073 && did == 0x000d) return "yamaha_724f";
905    if (vid == 0x1073 && did == 0x000a) return "yamaha_740";
906    if (vid == 0x1073 && did == 0x000c) return "yamaha_740c";
907    if (vid == 0x1073 && did == 0x0010) return "yamaha_744";
908    if (vid == 0x1073 && did == 0x0012) return "yamaha_754";
909    if (vid == 0x1077 && did == 0x1016) return "qlogic_isp10160";
910    if (vid == 0x1077 && did == 0x1020) return "qlogic_isp1020";
911    if (vid == 0x1077 && did == 0x1080) return "qlogic_isp1080";
912    if (vid == 0x1077 && did == 0x1216) return "qlogic_isp12160";
913    if (vid == 0x1077 && did == 0x1240) return "qlogic_isp1240";
914    if (vid == 0x1077 && did == 0x1280) return "qlogic_isp1280";
915    if (vid == 0x1077 && did == 0x2100) return "qlogic_isp2100";
916    if (vid == 0x1077 && did == 0x2200) return "qlogic_isp2200";
917    if (vid == 0x1077 && did == 0x2300) return "qlogic_isp2300";
918    if (vid == 0x1077 && did == 0x2312) return "qlogic_isp2312";
919    if (vid == 0x1077 && did == 0x2322) return "qlogic_isp2322";
920    if (vid == 0x1077 && did == 0x6312) return "qlogic_isp6312";
921    if (vid == 0x1077 && did == 0x6322) return "qlogic_isp6322";
922    if (vid == 0x1077 && did == 0x2422) return "qlogic_isp2422";
923    if (vid == 0x1077 && did == 0x2432) return "qlogic_isp2432";
924    if (vid == 0x1077 && did == 0x2512) return "qlogic_isp2512";
925    if (vid == 0x1077 && did == 0x2522) return "qlogic_isp2522";
926    if (vid == 0x1077 && did == 0x5422) return "qlogic_isp5422";
927    if (vid == 0x1077 && did == 0x5432) return "qlogic_isp5432";
928    if (vid == 0x1078 && did == 0x0000) return "cyrix_5510";
929    if (vid == 0x1078 && did == 0x0001) return "cyrix_pci_master";
930    if (vid == 0x1078 && did == 0x0002) return "cyrix_5520";
931    if (vid == 0x1078 && did == 0x0100) return "cyrix_5530_legacy";
932    if (vid == 0x1078 && did == 0x0102) return "cyrix_5530_ide";
933    if (vid == 0x1078 && did == 0x0103) return "cyrix_5530_audio";
934    if (vid == 0x1078 && did == 0x0104) return "cyrix_5530_video";
935    if (vid == 0x1080 && did == 0xc693) return "contaq_82c693";
936    if (vid == 0x108d && did == 0x0012) return "olicom_oc2325";
937    if (vid == 0x108d && did == 0x0013) return "olicom_oc2183";
938    if (vid == 0x108d && did == 0x0014) return "olicom_oc2326";
939    if (vid == 0x108e && did == 0x1000) return "sun_ebus";
940    if (vid == 0x108e && did == 0x1001) return "sun_happymeal";
941    if (vid == 0x108e && did == 0x1100) return "sun_rio_ebus";
942    if (vid == 0x108e && did == 0x1101) return "sun_rio_gem";
943    if (vid == 0x108e && did == 0x1102) return "sun_rio_1394";
944    if (vid == 0x108e && did == 0x1103) return "sun_rio_usb";
945    if (vid == 0x108e && did == 0x2bad) return "sun_gem";
946    if (vid == 0x108e && did == 0x5000) return "sun_simba";
947    if (vid == 0x108e && did == 0x8000) return "sun_pbm";
948    if (vid == 0x108e && did == 0x8001) return "sun_schizo";
949    if (vid == 0x108e && did == 0xa000) return "sun_sabre";
950    if (vid == 0x108e && did == 0xa001) return "sun_hummingbird";
951    if (vid == 0x108e && did == 0xa801) return "sun_tomatillo";
952    if (vid == 0x108e && did == 0xabba) return "sun_cassini";
953    if (vid == 0x1093 && did == 0xd130) return "ni_pci2322";
954    if (vid == 0x1093 && did == 0xd140) return "ni_pci2324";
955    if (vid == 0x1093 && did == 0xd150) return "ni_pci2328";
956    if (vid == 0x1093 && did == 0xd190) return "ni_pxi8422_2322";
957    if (vid == 0x1093 && did == 0xd1a0) return "ni_pxi8422_2324";
958    if (vid == 0x1093 && did == 0xd1d0) return "ni_pxi8420_2322";
959    if (vid == 0x1093 && did == 0xd1e0) return "ni_pxi8420_2324";
960    if (vid == 0x1093 && did == 0xd1f0) return "ni_pxi8420_2328";
961    if (vid == 0x1093 && did == 0xd1f1) return "ni_pxi8420_23216";
962    if (vid == 0x1093 && did == 0xd250) return "ni_pci2322i";
963    if (vid == 0x1093 && did == 0xd270) return "ni_pci2324i";
964    if (vid == 0x1093 && did == 0xd2b0) return "ni_pci23216";
965    if (vid == 0x1093 && did == 0x7080) return "ni_pxi8430_2322";
966    if (vid == 0x1093 && did == 0x70db) return "ni_pci8430_2322";
967    if (vid == 0x1093 && did == 0x70dd) return "ni_pxi8430_2324";
968    if (vid == 0x1093 && did == 0x70df) return "ni_pci8430_2324";
969    if (vid == 0x1093 && did == 0x70e2) return "ni_pxi8430_2328";
970    if (vid == 0x1093 && did == 0x70e4) return "ni_pci8430_2328";
971    if (vid == 0x1093 && did == 0x70e6) return "ni_pxi8430_23216";
972    if (vid == 0x1093 && did == 0x70e7) return "ni_pci8430_23216";
973    if (vid == 0x1093 && did == 0x70e8) return "ni_pxi8432_2322";
974    if (vid == 0x1093 && did == 0x70ea) return "ni_pci8432_2322";
975    if (vid == 0x1093 && did == 0x70ec) return "ni_pxi8432_2324";
976    if (vid == 0x1093 && did == 0x70ee) return "ni_pci8432_2324";
977    if (vid == 0x1095 && did == 0x0643) return "cmd_643";
978    if (vid == 0x1095 && did == 0x0646) return "cmd_646";
979    if (vid == 0x1095 && did == 0x0648) return "cmd_648";
980    if (vid == 0x1095 && did == 0x0649) return "cmd_649";
981    if (vid == 0x1095 && did == 0x0680) return "sii_680";
982    if (vid == 0x1095 && did == 0x3112) return "sii_3112";
983    if (vid == 0x1095 && did == 0x0240) return "sii_1210sa";
984    if (vid == 0x109e && did == 0x0878) return "brooktree_878";
985    if (vid == 0x109e && did == 0x0879) return "brooktree_879";
986    if (vid == 0x10a9 && did == 0x0003) return "sgi_ioc3";
987    if (vid == 0x10a9 && did == 0x1002) return "sgi_lithium";
988    if (vid == 0x10a9 && did == 0x100a) return "sgi_ioc4";
989    if (vid == 0x10ad && did == 0x0105) return "winbond_82c105";
990    if (vid == 0x10ad && did == 0x0565) return "winbond_83c553";
991    if (vid == 0x10b5 && did == 0x1030) return "plx_r685";
992    if (vid == 0x10b5 && did == 0x106a) return "plx_romulus";
993    if (vid == 0x10b5 && did == 0x1076) return "plx_spcom800";
994    if (vid == 0x10b5 && did == 0x1077) return "plx_1077";
995    if (vid == 0x10b5 && did == 0x1103) return "plx_spcom200";
996    if (vid == 0x10b5 && did == 0x1151) return "plx_djinn_itoo";
997    if (vid == 0x10b5 && did == 0x1152) return "plx_r753";
998    if (vid == 0x10b5 && did == 0x1187) return "plx_olitec";
999    if (vid == 0x10b5 && did == 0x3196) return "plx_pci200syn";
1000    if (vid == 0x10b5 && did == 0x9030) return "plx_9030";
1001    if (vid == 0x10b5 && did == 0x9050) return "plx_9050";
1002    if (vid == 0x10b5 && did == 0x9056) return "plx_9056";
1003    if (vid == 0x10b5 && did == 0x9080) return "plx_9080";
1004    if (vid == 0x10b5 && did == 0xa001) return "plx_gtek_serial2";
1005    if (vid == 0x10b6 && did == 0x0002) return "madge_mk2";
1006    if (vid == 0x10b7 && did == 0x0001) return "3com_3c985";
1007    if (vid == 0x10b7 && did == 0x1700) return "3com_3c940";
1008    if (vid == 0x10b7 && did == 0x3390) return "3com_3c339";
1009    if (vid == 0x10b7 && did == 0x3590) return "3com_3c359";
1010    if (vid == 0x10b7 && did == 0x80eb) return "3com_3c940b";
1011    if (vid == 0x10b7 && did == 0x9900) return "3com_3cr990";
1012    if (vid == 0x10b7 && did == 0x9902) return "3com_3cr990_tx_95";
1013    if (vid == 0x10b7 && did == 0x9903) return "3com_3cr990_tx_97";
1014    if (vid == 0x10b7 && did == 0x9904) return "3com_3cr990b";
1015    if (vid == 0x10b7 && did == 0x9905) return "3com_3cr990_fx";
1016    if (vid == 0x10b7 && did == 0x9908) return "3com_3cr990svr95";
1017    if (vid == 0x10b7 && did == 0x9909) return "3com_3cr990svr97";
1018    if (vid == 0x10b7 && did == 0x990a) return "3com_3cr990svr";
1019    if (vid == 0x10b9 && did == 0x1533) return "al_m1533";
1020    if (vid == 0x10b9 && did == 0x1535) return "al_m1535";
1021    if (vid == 0x10b9 && did == 0x1541) return "al_m1541";
1022    if (vid == 0x10b9 && did == 0x1563) return "al_m1563";
1023    if (vid == 0x10b9 && did == 0x1621) return "al_m1621";
1024    if (vid == 0x10b9 && did == 0x1631) return "al_m1631";
1025    if (vid == 0x10b9 && did == 0x1632) return "al_m1632";
1026    if (vid == 0x10b9 && did == 0x1641) return "al_m1641";
1027    if (vid == 0x10b9 && did == 0x1644) return "al_m1644";
1028    if (vid == 0x10b9 && did == 0x1647) return "al_m1647";
1029    if (vid == 0x10b9 && did == 0x1651) return "al_m1651";
1030    if (vid == 0x10b9 && did == 0x1671) return "al_m1671";
1031    if (vid == 0x10b9 && did == 0x1681) return "al_m1681";
1032    if (vid == 0x10b9 && did == 0x1683) return "al_m1683";
1033    if (vid == 0x10b9 && did == 0x1689) return "al_m1689";
1034    if (vid == 0x10b9 && did == 0x5219) return "al_m5219";
1035    if (vid == 0x10b9 && did == 0x5228) return "al_m5228";
1036    if (vid == 0x10b9 && did == 0x5229) return "al_m5229";
1037    if (vid == 0x10b9 && did == 0x5451) return "al_m5451";
1038    if (vid == 0x10b9 && did == 0x7101) return "al_m7101";
1039    if (vid == 0x10c8 && did == 0x8005) return "neomagic_nm256av_audio";
1040    if (vid == 0x10c8 && did == 0x8006) return "neomagic_nm256zx_audio";
1041    if (vid == 0x10c8 && did == 0x8016) return "neomagic_nm256xl_plus_audio";
1042    if (vid == 0x10da && did == 0x0508) return "tconrad_tokenring";
1043    if (vid == 0x10de && did == 0x0020) return "nvidia_tnt";
1044    if (vid == 0x10de && did == 0x0028) return "nvidia_tnt2";
1045    if (vid == 0x10de && did == 0x0029) return "nvidia_utnt2";
1046    if (vid == 0x10de && did == 0x002a) return "nvidia_tnt_unknown";
1047    if (vid == 0x10de && did == 0x002C) return "nvidia_vtnt2";
1048    if (vid == 0x10de && did == 0x002D) return "nvidia_uvtnt2";
1049    if (vid == 0x10de && did == 0x0034) return "nvidia_nforce_mcp04_smbus";
1050    if (vid == 0x10de && did == 0x0035) return "nvidia_nforce_mcp04_ide";
1051    if (vid == 0x10de && did == 0x0036) return "nvidia_nforce_mcp04_sata";
1052    if (vid == 0x10de && did == 0x003e) return "nvidia_nforce_mcp04_sata2";
1053    if (vid == 0x10de && did == 0x0040) return "nvidia_geforce_6800_ultra";
1054    if (vid == 0x10de && did == 0x0041) return "nvidia_geforce_6800";
1055    if (vid == 0x10de && did == 0x0042) return "nvidia_geforce_6800_le";
1056    if (vid == 0x10de && did == 0x0045) return "nvidia_geforce_6800_gt";
1057    if (vid == 0x10de && did == 0x004E) return "nvidia_quadro_fx_4000";
1058    if (vid == 0x10de && did == 0x0052) return "nvidia_nforce4_smbus";
1059    if (vid == 0x10de && did == 0x0053) return "nvidia_nforce_ck804_ide";
1060    if (vid == 0x10de && did == 0x0054) return "nvidia_nforce_ck804_sata";
1061    if (vid == 0x10de && did == 0x0055) return "nvidia_nforce_ck804_sata2";
1062    if (vid == 0x10de && did == 0x0059) return "nvidia_ck804_audio";
1063    if (vid == 0x10de && did == 0x005d) return "nvidia_ck804_pcie";
1064    if (vid == 0x10de && did == 0x0064) return "nvidia_nforce2_smbus";
1065    if (vid == 0x10de && did == 0x0065) return "nvidia_nforce2_ide";
1066    if (vid == 0x10de && did == 0x0069) return "nvidia_mcp2_modem";
1067    if (vid == 0x10de && did == 0x006a) return "nvidia_mcp2_audio";
1068    if (vid == 0x10de && did == 0x0084) return "nvidia_nforce2s_smbus";
1069    if (vid == 0x10de && did == 0x0085) return "nvidia_nforce2s_ide";
1070    if (vid == 0x10de && did == 0x0089) return "nvidia_mcp2s_modem";
1071    if (vid == 0x10de && did == 0x008a) return "nvidia_ck8_audio";
1072    if (vid == 0x10de && did == 0x008e) return "nvidia_nforce2s_sata";
1073    if (vid == 0x10de && did == 0x0090) return "nvidia_geforce_7800_gt";
1074    if (vid == 0x10de && did == 0x0091) return "nvidia_geforce_7800_gtx";
1075    if (vid == 0x10de && did == 0x0098) return "nvidia_geforce_go_7800";
1076    if (vid == 0x10de && did == 0x0099) return "nvidia_geforce_go_7800_gtx";
1077    if (vid == 0x10de && did == 0x00A0) return "nvidia_itnt2";
1078    if (vid == 0x10de && did == 0x00c1) return "geforce_6800a";
1079    if (vid == 0x10de && did == 0x00c2) return "geforce_6800a_le";
1080    if (vid == 0x10de && did == 0x00c8) return "geforce_go_6800";
1081    if (vid == 0x10de && did == 0x00c9) return "geforce_go_6800_ultra";
1082    if (vid == 0x10de && did == 0x00cc) return "quadro_fx_go1400";
1083    if (vid == 0x10de && did == 0x00ce) return "quadro_fx_1400";
1084    if (vid == 0x10de && did == 0x00d1) return "nvidia_nforce3";
1085    if (vid == 0x10de && did == 0x00d4) return "nvidia_nforce3_smbus";
1086    if (vid == 0x10de && did == 0x00d5) return "nvidia_nforce3_ide";
1087    if (vid == 0x10de && did == 0x00d9) return "nvidia_mcp3_modem";
1088    if (vid == 0x10de && did == 0x00da) return "nvidia_mcp3_audio";
1089    if (vid == 0x10de && did == 0x00e1) return "nvidia_nforce3s";
1090    if (vid == 0x10de && did == 0x00e3) return "nvidia_nforce3s_sata";
1091    if (vid == 0x10de && did == 0x00e4) return "nvidia_nforce3s_smbus";
1092    if (vid == 0x10de && did == 0x00e5) return "nvidia_nforce3s_ide";
1093    if (vid == 0x10de && did == 0x00ea) return "nvidia_ck8s_audio";
1094    if (vid == 0x10de && did == 0x00ee) return "nvidia_nforce3s_sata2";
1095    if (vid == 0x10de && did == 0x0100) return "nvidia_geforce_sdr";
1096    if (vid == 0x10de && did == 0x0101) return "nvidia_geforce_ddr";
1097    if (vid == 0x10de && did == 0x0103) return "nvidia_quadro";
1098    if (vid == 0x10de && did == 0x0110) return "nvidia_geforce2_mx";
1099    if (vid == 0x10de && did == 0x0111) return "nvidia_geforce2_mx2";
1100    if (vid == 0x10de && did == 0x0112) return "nvidia_geforce2_go";
1101    if (vid == 0x10de && did == 0x0113) return "nvidia_quadro2_mxr";
1102    if (vid == 0x10de && did == 0x0140) return "nvidia_geforce_6600_gt";
1103    if (vid == 0x10de && did == 0x0141) return "nvidia_geforce_6600";
1104    if (vid == 0x10de && did == 0x0145) return "nvidia_geforce_6610_xl";
1105    if (vid == 0x10de && did == 0x014E) return "nvidia_quadro_fx_540";
1106    if (vid == 0x10de && did == 0x014F) return "nvidia_geforce_6200";
1107    if (vid == 0x10de && did == 0x0150) return "nvidia_geforce2_gts";
1108    if (vid == 0x10de && did == 0x0151) return "nvidia_geforce2_gts2";
1109    if (vid == 0x10de && did == 0x0152) return "nvidia_geforce2_ultra";
1110    if (vid == 0x10de && did == 0x0153) return "nvidia_quadro2_pro";
1111    if (vid == 0x10de && did == 0x0161) return "nvidia_geforce_6200_turbocache";
1112    if (vid == 0x10de && did == 0x0164) return "nvidia_geforce_go_6200";
1113    if (vid == 0x10de && did == 0x0166) return "nvidia_geforce_go_6250";
1114    if (vid == 0x10de && did == 0x0167) return "nvidia_geforce_go_6200_1";
1115    if (vid == 0x10de && did == 0x0168) return "nvidia_geforce_go_6250_1";
1116    if (vid == 0x10de && did == 0x0170) return "nvidia_geforce4_mx_460";
1117    if (vid == 0x10de && did == 0x0171) return "nvidia_geforce4_mx_440";
1118    if (vid == 0x10de && did == 0x0172) return "nvidia_geforce4_mx_420";
1119    if (vid == 0x10de && did == 0x0173) return "nvidia_geforce4_mx_440_se";
1120    if (vid == 0x10de && did == 0x0174) return "nvidia_geforce4_440_go";
1121    if (vid == 0x10de && did == 0x0175) return "nvidia_geforce4_420_go";
1122    if (vid == 0x10de && did == 0x0176) return "nvidia_geforce4_420_go_m32";
1123    if (vid == 0x10de && did == 0x0177) return "nvidia_geforce4_460_go";
1124    if (vid == 0x10de && did == 0x0178) return "nvidia_quadro4_500xgl";
1125    if (vid == 0x10de && did == 0x0179) return "nvidia_geforce4_440_go_m64";
1126    if (vid == 0x10de && did == 0x017A) return "nvidia_quadro4_200";
1127    if (vid == 0x10de && did == 0x017B) return "nvidia_quadro4_550xgl";
1128    if (vid == 0x10de && did == 0x017C) return "nvidia_quadro4_500_gogl";
1129    if (vid == 0x10de && did == 0x017D) return "nvidia_geforce4_410_go_m16";
1130    if (vid == 0x10de && did == 0x0181) return "nvidia_geforce4_mx_440_8x";
1131    if (vid == 0x10de && did == 0x0182) return "nvidia_geforce4_mx_440se_8x";
1132    if (vid == 0x10de && did == 0x0183) return "nvidia_geforce4_mx_420_8x";
1133    if (vid == 0x10de && did == 0x0185) return "nvidia_geforce4_mx_4000";
1134    if (vid == 0x10de && did == 0x0186) return "nvidia_geforce4_448_go";
1135    if (vid == 0x10de && did == 0x0187) return "nvidia_geforce4_488_go";
1136    if (vid == 0x10de && did == 0x0188) return "nvidia_quadro4_580_xgl";
1137    if (vid == 0x10de && did == 0x0189) return "nvidia_geforce4_mx_mac";
1138    if (vid == 0x10de && did == 0x018A) return "nvidia_quadro4_280_nvs";
1139    if (vid == 0x10de && did == 0x018B) return "nvidia_quadro4_380_xgl";
1140    if (vid == 0x10de && did == 0x01a0) return "nvidia_igeforce2";
1141    if (vid == 0x10de && did == 0x01a4) return "nvidia_nforce";
1142    if (vid == 0x10de && did == 0x01b1) return "nvidia_mcp1_audio";
1143    if (vid == 0x10de && did == 0x01b4) return "nvidia_nforce_smbus";
1144    if (vid == 0x10de && did == 0x01bc) return "nvidia_nforce_ide";
1145    if (vid == 0x10de && did == 0x01c1) return "nvidia_mcp1_modem";
1146    if (vid == 0x10de && did == 0x01e0) return "nvidia_nforce2";
1147    if (vid == 0x10de && did == 0x0200) return "nvidia_geforce3";
1148    if (vid == 0x10de && did == 0x0201) return "nvidia_geforce3_1";
1149    if (vid == 0x10de && did == 0x0202) return "nvidia_geforce3_2";
1150    if (vid == 0x10de && did == 0x0203) return "nvidia_quadro_ddc";
1151    if (vid == 0x10de && did == 0x0211) return "nvidia_geforce_6800b";
1152    if (vid == 0x10de && did == 0x0212) return "nvidia_geforce_6800b_le";
1153    if (vid == 0x10de && did == 0x0215) return "nvidia_geforce_6800b_gt";
1154    if (vid == 0x10de && did == 0x0250) return "nvidia_geforce4_ti_4600";
1155    if (vid == 0x10de && did == 0x0251) return "nvidia_geforce4_ti_4400";
1156    if (vid == 0x10de && did == 0x0253) return "nvidia_geforce4_ti_4200";
1157    if (vid == 0x10de && did == 0x0258) return "nvidia_quadro4_900xgl";
1158    if (vid == 0x10de && did == 0x0259) return "nvidia_quadro4_750xgl";
1159    if (vid == 0x10de && did == 0x025B) return "nvidia_quadro4_700xgl";
1160    if (vid == 0x10de && did == 0x0264) return "nvidia_nforce_mcp51_smbus";
1161    if (vid == 0x10de && did == 0x0265) return "nvidia_nforce_mcp51_ide";
1162    if (vid == 0x10de && did == 0x0266) return "nvidia_nforce_mcp51_sata";
1163    if (vid == 0x10de && did == 0x0267) return "nvidia_nforce_mcp51_sata2";
1164    if (vid == 0x10de && did == 0x0368) return "nvidia_nforce_mcp55_smbus";
1165    if (vid == 0x10de && did == 0x036E) return "nvidia_nforce_mcp55_ide";
1166    if (vid == 0x10de && did == 0x037E) return "nvidia_nforce_mcp55_sata";
1167    if (vid == 0x10de && did == 0x037F) return "nvidia_nforce_mcp55_sata2";
1168    if (vid == 0x10de && did == 0x0280) return "nvidia_geforce4_ti_4800";
1169    if (vid == 0x10de && did == 0x0281) return "nvidia_geforce4_ti_4800_8x";
1170    if (vid == 0x10de && did == 0x0282) return "nvidia_geforce4_ti_4800se";
1171    if (vid == 0x10de && did == 0x0286) return "nvidia_geforce4_4200_go";
1172    if (vid == 0x10de && did == 0x0288) return "nvidia_quadro4_980_xgl";
1173    if (vid == 0x10de && did == 0x0289) return "nvidia_quadro4_780_xgl";
1174    if (vid == 0x10de && did == 0x028C) return "nvidia_quadro4_700_gogl";
1175    if (vid == 0x10de && did == 0x0301) return "nvidia_geforce_fx_5800_ultra";
1176    if (vid == 0x10de && did == 0x0302) return "nvidia_geforce_fx_5800";
1177    if (vid == 0x10de && did == 0x0308) return "nvidia_quadro_fx_2000";
1178    if (vid == 0x10de && did == 0x0309) return "nvidia_quadro_fx_1000";
1179    if (vid == 0x10de && did == 0x0311) return "nvidia_geforce_fx_5600_ultra";
1180    if (vid == 0x10de && did == 0x0312) return "nvidia_geforce_fx_5600";
1181    if (vid == 0x10de && did == 0x0314) return "nvidia_geforce_fx_5600se";
1182    if (vid == 0x10de && did == 0x031A) return "nvidia_geforce_fx_go5600";
1183    if (vid == 0x10de && did == 0x031B) return "nvidia_geforce_fx_go5650";
1184    if (vid == 0x10de && did == 0x031C) return "nvidia_quadro_fx_go700";
1185    if (vid == 0x10de && did == 0x0320) return "nvidia_geforce_fx_5200";
1186    if (vid == 0x10de && did == 0x0321) return "nvidia_geforce_fx_5200_ultra";
1187    if (vid == 0x10de && did == 0x0322) return "nvidia_geforce_fx_5200_1";
1188    if (vid == 0x10de && did == 0x0323) return "nvidia_geforce_fx_5200se";
1189    if (vid == 0x10de && did == 0x0324) return "nvidia_geforce_fx_go5200";
1190    if (vid == 0x10de && did == 0x0325) return "nvidia_geforce_fx_go5250";
1191    if (vid == 0x10de && did == 0x0326) return "nvidia_geforce_fx_5500";
1192    if (vid == 0x10de && did == 0x0327) return "nvidia_geforce_fx_5100";
1193    if (vid == 0x10de && did == 0x0328) return "nvidia_geforce_fx_go5250_32";
1194    if (vid == 0x10de && did == 0x0329) return "nvidia_geforce_fx_go_5200";
1195    if (vid == 0x10de && did == 0x032A) return "nvidia_quadro_nvs_280_pci";
1196    if (vid == 0x10de && did == 0x032B) return "nvidia_quadro_fx_500";
1197    if (vid == 0x10de && did == 0x032C) return "nvidia_geforce_fx_go5300";
1198    if (vid == 0x10de && did == 0x032D) return "nvidia_geforce_fx_go5100";
1199    if (vid == 0x10de && did == 0x0330) return "nvidia_geforce_fx_5900_ultra";
1200    if (vid == 0x10de && did == 0x0331) return "nvidia_geforce_fx_5900";
1201    if (vid == 0x10de && did == 0x0332) return "nvidia_geforce_fx_5900xt";
1202    if (vid == 0x10de && did == 0x0333) return "nvidia_geforce_fx_5950_ultra";
1203    if (vid == 0x10de && did == 0x0334) return "nvidia_geforce_fx_5900zt";
1204    if (vid == 0x10de && did == 0x0338) return "nvidia_quadro_fx_3000";
1205    if (vid == 0x10de && did == 0x033F) return "nvidia_quadro_fx_700";
1206    if (vid == 0x10de && did == 0x0341) return "nvidia_geforce_fx_5700_ultra";
1207    if (vid == 0x10de && did == 0x0342) return "nvidia_geforce_fx_5700";
1208    if (vid == 0x10de && did == 0x0343) return "nvidia_geforce_fx_5700le";
1209    if (vid == 0x10de && did == 0x0344) return "nvidia_geforce_fx_5700ve";
1210    if (vid == 0x10de && did == 0x0347) return "nvidia_geforce_fx_go5700_1";
1211    if (vid == 0x10de && did == 0x0348) return "nvidia_geforce_fx_go5700_2";
1212    if (vid == 0x10de && did == 0x034C) return "nvidia_quadro_fx_go1000";
1213    if (vid == 0x10de && did == 0x034E) return "nvidia_quadro_fx_1100";
1214    if (vid == 0x10de && did == 0x0360) return "nvidia_mcp55_bridge_v0";
1215    if (vid == 0x10de && did == 0x0364) return "nvidia_mcp55_bridge_v4";
1216    if (vid == 0x10de && did == 0x0373) return "nvidia_nvenet_15";
1217    if (vid == 0x10de && did == 0x03E7) return "nvidia_nforce_mcp61_sata";
1218    if (vid == 0x10de && did == 0x03EB) return "nvidia_nforce_mcp61_smbus";
1219    if (vid == 0x10de && did == 0x03EC) return "nvidia_nforce_mcp61_ide";
1220    if (vid == 0x10de && did == 0x03F6) return "nvidia_nforce_mcp61_sata2";
1221    if (vid == 0x10de && did == 0x03F7) return "nvidia_nforce_mcp61_sata3";
1222    if (vid == 0x10de && did == 0x0446) return "nvidia_nforce_mcp65_smbus";
1223    if (vid == 0x10de && did == 0x0448) return "nvidia_nforce_mcp65_ide";
1224    if (vid == 0x10de && did == 0x0542) return "nvidia_nforce_mcp67_smbus";
1225    if (vid == 0x10de && did == 0x0560) return "nvidia_nforce_mcp67_ide";
1226    if (vid == 0x10de && did == 0x056C) return "nvidia_nforce_mcp73_ide";
1227    if (vid == 0x10de && did == 0x0752) return "nvidia_nforce_mcp78s_smbus";
1228    if (vid == 0x10de && did == 0x0759) return "nvidia_nforce_mcp77_ide";
1229    if (vid == 0x10de && did == 0x07D8) return "nvidia_nforce_mcp73_smbus";
1230    if (vid == 0x10de && did == 0x0AA2) return "nvidia_nforce_mcp79_smbus";
1231    if (vid == 0x10de && did == 0x0D85) return "nvidia_nforce_mcp89_sata";
1232    if (vid == 0x10e0 && did == 0x9128) return "ims_tt128";
1233    if (vid == 0x10e0 && did == 0x9135) return "ims_tt3d";
1234    if (vid == 0x10ea && did == 0x1682) return "interg_1682";
1235    if (vid == 0x10ea && did == 0x2000) return "interg_2000";
1236    if (vid == 0x10ea && did == 0x2010) return "interg_2010";
1237    if (vid == 0x10ea && did == 0x5000) return "interg_5000";
1238    if (vid == 0x10ea && did == 0x5050) return "interg_5050";
1239    if (vid == 0x10ec && did == 0x8139) return "realtek_8139";
1240    if (vid == 0x10ee && did == 0x3fc0) return "rme_digi96";
1241    if (vid == 0x10ee && did == 0x3fc1) return "rme_digi96_8";
1242    if (vid == 0x10ee && did == 0x3fc2) return "rme_digi96_8_pro";
1243    if (vid == 0x10ee && did == 0x3fc3) return "rme_digi96_8_pad_or_pst";
1244    if (vid == 0x10ee && did == 0x3fc5) return "xilinx_hammerfall_dsp";
1245    if (vid == 0x10ee && did == 0x3fc6) return "xilinx_hammerfall_dsp_madi";
1246    if (vid == 0x1102 && did == 0x0002) return "creative_emu10k1";
1247    if (vid == 0x1102 && did == 0x0005) return "creative_20k1";
1248    if (vid == 0x1102 && did == 0x000b) return "creative_20k2";
1249    if (vid == 0x1102 && did == 0x8938) return "ectiva_ev1938";
1250    if (vid == 0x1103 && did == 0x0003) return "tti_hpt343";
1251    if (vid == 0x1103 && did == 0x0004) return "tti_hpt366";
1252    if (vid == 0x1103 && did == 0x0005) return "tti_hpt372";
1253    if (vid == 0x1103 && did == 0x0006) return "tti_hpt302";
1254    if (vid == 0x1103 && did == 0x0007) return "tti_hpt371";
1255    if (vid == 0x1103 && did == 0x0008) return "tti_hpt374";
1256    if (vid == 0x1103 && did == 0x0009) return "tti_hpt372n";
1257    if (vid == 0x1106 && did == 0x0198) return "via_8763_0";
1258    if (vid == 0x1106 && did == 0x0204) return "via_8380_0";
1259    if (vid == 0x1106 && did == 0x0238) return "via_3238_0";
1260    if (vid == 0x1106 && did == 0x0258) return "via_pt880";
1261    if (vid == 0x1106 && did == 0x0308) return "via_pt880ultra";
1262    if (vid == 0x1106 && did == 0x0259) return "via_px8x0_0";
1263    if (vid == 0x1106 && did == 0x0269) return "via_3269_0";
1264    if (vid == 0x1106 && did == 0x0282) return "via_k8t800pro_0";
1265    if (vid == 0x1106 && did == 0x0296) return "via_3296_0";
1266    if (vid == 0x1106 && did == 0x0305) return "via_8363_0";
1267    if (vid == 0x1106 && did == 0x0314) return "via_p4m800ce";
1268    if (vid == 0x1106 && did == 0x0327) return "via_p4m890";
1269    if (vid == 0x1106 && did == 0x0324) return "via_vt3324";
1270    if (vid == 0x1106 && did == 0x0336) return "via_vt3336";
1271    if (vid == 0x1106 && did == 0x0351) return "via_vt3351";
1272    if (vid == 0x1106 && did == 0x0364) return "via_vt3364";
1273    if (vid == 0x1106 && did == 0x0391) return "via_8371_0";
1274    if (vid == 0x1106 && did == 0x0415) return "via_6415";
1275    if (vid == 0x1106 && did == 0x0501) return "via_8501_0";
1276    if (vid == 0x1106 && did == 0x0561) return "via_82c561";
1277    if (vid == 0x1106 && did == 0x0571) return "via_82c586_1";
1278    if (vid == 0x1106 && did == 0x0576) return "via_82c576";
1279    if (vid == 0x1106 && did == 0x0586) return "via_82c586_0";
1280    if (vid == 0x1106 && did == 0x0596) return "via_82c596";
1281    if (vid == 0x1106 && did == 0x0597) return "via_82c597_0";
1282    if (vid == 0x1106 && did == 0x0598) return "via_82c598_0";
1283    if (vid == 0x1106 && did == 0x0601) return "via_8601_0";
1284    if (vid == 0x1106 && did == 0x0605) return "via_8605_0";
1285    if (vid == 0x1106 && did == 0x0686) return "via_82c686";
1286    if (vid == 0x1106 && did == 0x0691) return "via_82c691_0";
1287    if (vid == 0x1106 && did == 0x1571) return "via_82c576_1";
1288    if (vid == 0x1106 && did == 0x3038) return "via_82c586_2";
1289    if (vid == 0x1106 && did == 0x3040) return "via_82c586_3";
1290    if (vid == 0x1106 && did == 0x3050) return "via_82c596_3";
1291    if (vid == 0x1106 && did == 0x3051) return "via_82c596b_3";
1292    if (vid == 0x1106 && did == 0x3057) return "via_82c686_4";
1293    if (vid == 0x1106 && did == 0x3058) return "via_82c686_5";
1294    if (vid == 0x1106 && did == 0x3059) return "via_8233_5";
1295    if (vid == 0x1106 && did == 0x3074) return "via_8233_0";
1296    if (vid == 0x1106 && did == 0x3091) return "via_8633_0";
1297    if (vid == 0x1106 && did == 0x3099) return "via_8367_0";
1298    if (vid == 0x1106 && did == 0x3101) return "via_8653_0";
1299    if (vid == 0x1106 && did == 0x3102) return "via_8622";
1300    if (vid == 0x1106 && did == 0x3104) return "via_8235_usb_2";
1301    if (vid == 0x1106 && did == 0x3109) return "via_8233c_0";
1302    if (vid == 0x1106 && did == 0x3112) return "via_8361";
1303    if (vid == 0x1106 && did == 0x3116) return "via_xm266";
1304    if (vid == 0x1106 && did == 0x3119) return "via_612x";
1305    if (vid == 0x1106 && did == 0x3123) return "via_862x_0";
1306    if (vid == 0x1106 && did == 0x3128) return "via_8753_0";
1307    if (vid == 0x1106 && did == 0x3147) return "via_8233a";
1308    if (vid == 0x1106 && did == 0x3148) return "via_8703_51_0";
1309    if (vid == 0x1106 && did == 0x3149) return "via_8237_sata";
1310    if (vid == 0x1106 && did == 0x3156) return "via_xn266";
1311    if (vid == 0x1106 && did == 0x3164) return "via_6410";
1312    if (vid == 0x1106 && did == 0x3168) return "via_8754c_0";
1313    if (vid == 0x1106 && did == 0x3177) return "via_8235";
1314    if (vid == 0x1106 && did == 0x3188) return "via_8385_0";
1315    if (vid == 0x1106 && did == 0x3189) return "via_8377_0";
1316    if (vid == 0x1106 && did == 0x3205) return "via_8378_0";
1317    if (vid == 0x1106 && did == 0x3208) return "via_8783_0";
1318    if (vid == 0x1106 && did == 0x3227) return "via_8237";
1319    if (vid == 0x1106 && did == 0x3287) return "via_8251";
1320    if (vid == 0x1106 && did == 0x3402) return "via_8261";
1321    if (vid == 0x1106 && did == 0x3337) return "via_8237a";
1322    if (vid == 0x1106 && did == 0x3372) return "via_8237s";
1323    if (vid == 0x1106 && did == 0x5324) return "via_sata_eide";
1324    if (vid == 0x1106 && did == 0x8231) return "via_8231";
1325    if (vid == 0x1106 && did == 0x8235) return "via_8231_4";
1326    if (vid == 0x1106 && did == 0x8305) return "via_8365_1";
1327    if (vid == 0x1106 && did == 0x8324) return "via_cx700";
1328    if (vid == 0x1106 && did == 0x0581) return "via_cx700_ide";
1329    if (vid == 0x1106 && did == 0x8353) return "via_vx800";
1330    if (vid == 0x1106 && did == 0x8409) return "via_vx855";
1331    if (vid == 0x1106 && did == 0x8410) return "via_vx900";
1332    if (vid == 0x1106 && did == 0x8391) return "via_8371_1";
1333    if (vid == 0x1106 && did == 0x8598) return "via_82c598_1";
1334    if (vid == 0x1106 && did == 0xB188) return "via_838x_1";
1335    if (vid == 0x1106 && did == 0xB198) return "via_83_87xx_1";
1336    if (vid == 0x1106 && did == 0xC409) return "via_vx855_ide";
1337    if (vid == 0x1106 && did == 0xFFFF) return "via_anon";
1338    if (vid == 0x110A && did == 0x2102) return "siemens_dscc4";
1339    if (vid == 0x1119 && did == 0x0001) return "vortex_gdt6000b";
1340    if (vid == 0x1119 && did == 0x0004) return "vortex_gdt6530";
1341    if (vid == 0x1119 && did == 0x0005) return "vortex_gdt6550";
1342    if (vid == 0x1119 && did == 0x0008) return "vortex_gdt6537";
1343    if (vid == 0x1119 && did == 0x0009) return "vortex_gdt6557";
1344    if (vid == 0x1119 && did == 0x000c) return "vortex_gdt6535";
1345    if (vid == 0x1119 && did == 0x000d) return "vortex_gdt6555";
1346    if (vid == 0x1119 && did == 0x0102) return "vortex_gdt6537rp";
1347    if (vid == 0x1119 && did == 0x0103) return "vortex_gdt6557rp";
1348    if (vid == 0x111a && did == 0x0000) return "ef_atm_fpga";
1349    if (vid == 0x111a && did == 0x0002) return "ef_atm_asic";
1350    if (vid == 0x111a && did == 0x0003) return "ef_atm_lanai2";
1351    if (vid == 0x111a && did == 0x0005) return "ef_atm_lanaihb";
1352    if (vid == 0x111d && did == 0x0001) return "idt_idt77201";
1353    if (vid == 0x1127 && did == 0x0300) return "fore_pca200e";
1354    if (vid == 0x1131 && did == 0x7146) return "philips_saa7146";
1355    if (vid == 0x1131 && did == 0x9730) return "philips_saa9730";
1356    if (vid == 0x1133 && did == 0xe002) return "eicon_diva20";
1357    if (vid == 0x1133 && did == 0xe004) return "eicon_diva20_u";
1358    if (vid == 0x1133 && did == 0xe005) return "eicon_diva201";
1359    if (vid == 0x1133 && did == 0xe00b) return "eicon_diva202";
1360    if (vid == 0x1133 && did == 0xe010) return "eicon_maestra";
1361    if (vid == 0x1133 && did == 0xe012) return "eicon_maestraq";
1362    if (vid == 0x1133 && did == 0xe013) return "eicon_maestraq_u";
1363    if (vid == 0x1133 && did == 0xe014) return "eicon_maestrap";
1364    if (vid == 0x1138 && did == 0x5550) return "ziatech_5550_hc";
1365    if (vid == 0x1148 && did == 0x4200) return "syskonnect_tr";
1366    if (vid == 0x1148 && did == 0x4300) return "syskonnect_ge";
1367    if (vid == 0x1148 && did == 0x4320) return "syskonnect_yu";
1368    if (vid == 0x1148 && did == 0x4400) return "syskonnect_9dxx";
1369    if (vid == 0x1148 && did == 0x4500) return "syskonnect_9mxx";
1370    if (vid == 0x114f && did == 0x0070) return "digi_df_m_iom2_e";
1371    if (vid == 0x114f && did == 0x0071) return "digi_df_m_e";
1372    if (vid == 0x114f && did == 0x0072) return "digi_df_m_iom2_a";
1373    if (vid == 0x114f && did == 0x0073) return "digi_df_m_a";
1374    if (vid == 0x114f && did == 0x00B1) return "digi_neo_8";
1375    if (vid == 0x114f && did == 0x00C8) return "neo_2db9";
1376    if (vid == 0x114f && did == 0x00C9) return "neo_2db9pri";
1377    if (vid == 0x114f && did == 0x00CA) return "neo_2rj45";
1378    if (vid == 0x114f && did == 0x00CB) return "neo_2rj45pri";
1379    if (vid == 0x115d && did == 0x0101) return "xircom_rbm56g";
1380    if (vid == 0x115d && did == 0x0103) return "xircom_x3201_mdm";
1381    if (vid == 0x1166 && did == 0x0008) return "serverworks_he";
1382    if (vid == 0x1166 && did == 0x0009) return "serverworks_le";
1383    if (vid == 0x1166 && did == 0x0017) return "serverworks_gcnb_le";
1384    if (vid == 0x1166 && did == 0x0036) return "serverworks_ht1000_pxb";
1385    if (vid == 0x1166 && did == 0x0103) return "serverworks_epb";
1386    if (vid == 0x1166 && did == 0x0132) return "serverworks_ht2000_pcie";
1387    if (vid == 0x1166 && did == 0x0200) return "serverworks_osb4";
1388    if (vid == 0x1166 && did == 0x0201) return "serverworks_csb5";
1389    if (vid == 0x1166 && did == 0x0203) return "serverworks_csb6";
1390    if (vid == 0x1166 && did == 0x0205) return "serverworks_ht1000sb";
1391    if (vid == 0x1166 && did == 0x0211) return "serverworks_osb4ide";
1392    if (vid == 0x1166 && did == 0x0212) return "serverworks_csb5ide";
1393    if (vid == 0x1166 && did == 0x0213) return "serverworks_csb6ide";
1394    if (vid == 0x1166 && did == 0x0214) return "serverworks_ht1000ide";
1395    if (vid == 0x1166 && did == 0x0217) return "serverworks_csb6ide2";
1396    if (vid == 0x1166 && did == 0x0227) return "serverworks_csb6lpc";
1397    if (vid == 0x1166 && did == 0x0408) return "serverworks_ht1100ld";
1398    if (vid == 0x1176 && did == 0x0301) return "sbe_wanxl100";
1399    if (vid == 0x1176 && did == 0x0302) return "sbe_wanxl200";
1400    if (vid == 0x1176 && did == 0x0104) return "sbe_wanxl400";
1401    if (vid == 0x1179 && did == 0x0101) return "toshiba_piccolo_1";
1402    if (vid == 0x1179 && did == 0x0102) return "toshiba_piccolo_2";
1403    if (vid == 0x1179 && did == 0x0103) return "toshiba_piccolo_3";
1404    if (vid == 0x1179 && did == 0x0105) return "toshiba_piccolo_5";
1405    if (vid == 0x1179 && did == 0x060a) return "toshiba_topic95";
1406    if (vid == 0x1179 && did == 0x060f) return "toshiba_topic97";
1407    if (vid == 0x1179 && did == 0x0617) return "toshiba_topic100";
1408    if (vid == 0x102f && did == 0x0030) return "toshiba_tc35815cf";
1409    if (vid == 0x102f && did == 0x0031) return "toshiba_tc35815_nwu";
1410    if (vid == 0x102f && did == 0x0032) return "toshiba_tc35815_tx4939";
1411    if (vid == 0x102f && did == 0x0105) return "toshiba_tc86c001_ide";
1412    if (vid == 0x102f && did == 0x0108) return "toshiba_tc86c001_misc";
1413    if (vid == 0x102f && did == 0x01b3) return "toshiba_spider_net";
1414    if (vid == 0x1180 && did == 0x0465) return "ricoh_rl5c465";
1415    if (vid == 0x1180 && did == 0x0466) return "ricoh_rl5c466";
1416    if (vid == 0x1180 && did == 0x0475) return "ricoh_rl5c475";
1417    if (vid == 0x1180 && did == 0x0476) return "ricoh_rl5c476";
1418    if (vid == 0x1180 && did == 0x0478) return "ricoh_rl5c478";
1419    if (vid == 0x1180 && did == 0x0822) return "ricoh_r5c822";
1420    if (vid == 0x1180 && did == 0xe822) return "ricoh_r5ce822";
1421    if (vid == 0x1180 && did == 0xe823) return "ricoh_r5ce823";
1422    if (vid == 0x1180 && did == 0x0832) return "ricoh_r5c832";
1423    if (vid == 0x1180 && did == 0x0843) return "ricoh_r5c843";
1424    if (vid == 0x1186 && did == 0x4c00) return "dlink_dge510t";
1425    if (vid == 0x1191 && did == 0x0005) return "artop_atp850uf";
1426    if (vid == 0x1191 && did == 0x0006) return "artop_atp860";
1427    if (vid == 0x1191 && did == 0x0007) return "artop_atp860r";
1428    if (vid == 0x1191 && did == 0x0008) return "artop_atp865";
1429    if (vid == 0x1191 && did == 0x0009) return "artop_atp865r";
1430    if (vid == 0x1191 && did == 0x000A) return "artop_atp867a";
1431    if (vid == 0x1191 && did == 0x000B) return "artop_atp867b";
1432    if (vid == 0x1191 && did == 0x8002) return "artop_aec7610";
1433    if (vid == 0x1191 && did == 0x8010) return "artop_aec7612uw";
1434    if (vid == 0x1191 && did == 0x8020) return "artop_aec7612u";
1435    if (vid == 0x1191 && did == 0x8030) return "artop_aec7612s";
1436    if (vid == 0x1191 && did == 0x8040) return "artop_aec7612d";
1437    if (vid == 0x1191 && did == 0x8050) return "artop_aec7612suw";
1438    if (vid == 0x1191 && did == 0x8060) return "artop_8060";
1439    if (vid == 0x1193 && did == 0x0001) return "zeitnet_1221";
1440    if (vid == 0x1193 && did == 0x0002) return "zeitnet_1225";
1441    if (vid == 0x119e && did == 0x0001) return "fujitsu_fs155";
1442    if (vid == 0x119e && did == 0x0003) return "fujitsu_fs50";
1443    if (vid == 0x1b4b && did == 0x4146) return "marvell_gt64111";
1444    if (vid == 0x1b4b && did == 0x6430) return "marvell_gt64260";
1445    if (vid == 0x1b4b && did == 0x6460) return "marvell_mv64360";
1446    if (vid == 0x1b4b && did == 0x6480) return "marvell_mv64460";
1447    if (vid == 0x1b4b && did == 0x4100) return "marvell_88alp01_nand";
1448    if (vid == 0x1b4b && did == 0x4101) return "marvell_88alp01_sd";
1449    if (vid == 0x1b4b && did == 0x4102) return "marvell_88alp01_ccic";
1450    if (vid == 0x11b0 && did == 0x0001) return "v3_v960";
1451    if (vid == 0x11b0 && did == 0x0002) return "v3_v351";
1452    if (vid == 0x11c1 && did == 0x480) return "att_venus_modem";
1453    if (vid == 0x11cb && did == 0x2000) return "specialix_io8";
1454    if (vid == 0x11cb && did == 0x8000) return "specialix_rio";
1455    if (vid == 0x11d4 && did == 0x1234) return "sega_bba";
1456    if (vid == 0x11de && did == 0x6057) return "zoran_36057";
1457    if (vid == 0x11de && did == 0x6120) return "zoran_36120";
1458    if (vid == 0x11f6 && did == 0x0112) return "compex_enet100vg4";
1459    if (vid == 0x11fe && did == 0x000E) return "rp2_232";
1460    if (vid == 0x11fe && did == 0x000F) return "rp2_422";
1461    if (vid == 0x11fe && did == 0x080C) return "upci_rm3_8port";
1462    if (vid == 0x11fe && did == 0x080D) return "upci_rm3_4port";
1463    if (vid == 0x120e && did == 0x0300) return "pc300_rx_2";
1464    if (vid == 0x120e && did == 0x0301) return "pc300_rx_1";
1465    if (vid == 0x120e && did == 0x0310) return "pc300_te_2";
1466    if (vid == 0x120e && did == 0x0311) return "pc300_te_1";
1467    if (vid == 0x120e && did == 0x0320) return "pc300_te_m_2";
1468    if (vid == 0x120e && did == 0x0321) return "pc300_te_m_1";
1469    if (vid == 0x120f && did == 0x0001) return "essential_roadrunner";
1470    if (vid == 0x1217 && did == 0x6729) return "o2_6729";
1471    if (vid == 0x1217 && did == 0x673a) return "o2_6730";
1472    if (vid == 0x1217 && did == 0x6832) return "o2_6832";
1473    if (vid == 0x1217 && did == 0x6836) return "o2_6836";
1474    if (vid == 0x1217 && did == 0x6872) return "o2_6812";
1475    if (vid == 0x1217 && did == 0x6933) return "o2_6933";
1476    if (vid == 0x1217 && did == 0x8120) return "o2_8120";
1477    if (vid == 0x1217 && did == 0x8220) return "o2_8220";
1478    if (vid == 0x1217 && did == 0x8221) return "o2_8221";
1479    if (vid == 0x1217 && did == 0x8320) return "o2_8320";
1480    if (vid == 0x1217 && did == 0x8321) return "o2_8321";
1481    if (vid == 0x121a && did == 0x0001) return "3dfx_voodoo";
1482    if (vid == 0x121a && did == 0x0002) return "3dfx_voodoo2";
1483    if (vid == 0x121a && did == 0x0003) return "3dfx_banshee";
1484    if (vid == 0x121a && did == 0x0005) return "3dfx_voodoo3";
1485    if (vid == 0x121a && did == 0x0009) return "3dfx_voodoo5";
1486    if (vid == 0x1244 && did == 0x0700) return "avm_b1";
1487    if (vid == 0x1244 && did == 0x0800) return "avm_c4";
1488    if (vid == 0x1244 && did == 0x0a00) return "avm_a1";
1489    if (vid == 0x1244 && did == 0x0e00) return "avm_a1_v2";
1490    if (vid == 0x1244 && did == 0x1100) return "avm_c2";
1491    if (vid == 0x1244 && did == 0x1200) return "avm_t1";
1492    if (vid == 0x125d && did == 0x1968) return "ess_ess1968";
1493    if (vid == 0x125d && did == 0x1978) return "ess_ess1978";
1494    if (vid == 0x125d && did == 0x1988) return "ess_allegro_1";
1495    if (vid == 0x125d && did == 0x1989) return "ess_allegro";
1496    if (vid == 0x125d && did == 0x1990) return "ess_canyon3d_2le";
1497    if (vid == 0x125d && did == 0x1992) return "ess_canyon3d_2";
1498    if (vid == 0x125d && did == 0x1998) return "ess_maestro3";
1499    if (vid == 0x125d && did == 0x1999) return "ess_maestro3_1";
1500    if (vid == 0x125d && did == 0x199a) return "ess_maestro3_hw";
1501    if (vid == 0x125d && did == 0x199b) return "ess_maestro3_2";
1502    if (vid == 0x1267 && did == 0x1016) return "satsagem_niccy";
1503    if (vid == 0x1274 && did == 0x5880) return "ensoniq_ct5880";
1504    if (vid == 0x1274 && did == 0x5000) return "ensoniq_es1370";
1505    if (vid == 0x1274 && did == 0x1371) return "ensoniq_es1371";
1506    if (vid == 0x1283 && did == 0x8172) return "ite_8172";
1507    if (vid == 0x1283 && did == 0x8211) return "ite_8211";
1508    if (vid == 0x1283 && did == 0x8212) return "ite_8212";
1509    if (vid == 0x1283 && did == 0x8213) return "ite_8213";
1510    if (vid == 0x1283 && did == 0x8152) return "ite_8152";
1511    if (vid == 0x1283 && did == 0x8872) return "ite_8872";
1512    if (vid == 0x1283 && did == 0xe886) return "ite_it8330g_0";
1513    if (vid == 0x1283 && did == 0x0100) return "ess_ess0100";
1514    if (vid == 0x12d2 && did == 0x0018) return "nvidia_sgs_riva128";
1515    if (vid == 0x12eb && did == 0x0001) return "aureal_vortex_1";
1516    if (vid == 0x12eb && did == 0x0002) return "aureal_vortex_2";
1517    if (vid == 0x12eb && did == 0x0003) return "aureal_advantage";
1518    if (vid == 0x12f8 && did == 0x8a02) return "lml_33r10";
1519    if (vid == 0x12fe && did == 0x0111) return "esdgmbh_cpciasio4";
1520    if (vid == 0x1332 && did == 0x5415) return "micro_memory_5415cn";
1521    if (vid == 0x1332 && did == 0x5425) return "micro_memory_5425cn";
1522    if (vid == 0x1332 && did == 0x6155) return "micro_memory_6155";
1523    if (vid == 0x134a && did == 0x0001) return "domex_dmx3191d";
1524    if (vid == 0x135a && did == 0x0d80) return "intashield_is200";
1525    if (vid == 0x135a && did == 0x0dc0) return "intashield_is400";
1526    if (vid == 0x135C && did == 0x0010) return "quatech_qsc100";
1527    if (vid == 0x135C && did == 0x0020) return "quatech_dsc100";
1528    if (vid == 0x135C && did == 0x0030) return "quatech_dsc200";
1529    if (vid == 0x135C && did == 0x0040) return "quatech_qsc200";
1530    if (vid == 0x135C && did == 0x0050) return "quatech_esc100d";
1531    if (vid == 0x135C && did == 0x0060) return "quatech_esc100m";
1532    if (vid == 0x135C && did == 0x0120) return "quatech_qscp100";
1533    if (vid == 0x135C && did == 0x0130) return "quatech_dscp100";
1534    if (vid == 0x135C && did == 0x0140) return "quatech_qscp200";
1535    if (vid == 0x135C && did == 0x0150) return "quatech_dscp200";
1536    if (vid == 0x135C && did == 0x0170) return "quatech_qsclp100";
1537    if (vid == 0x135C && did == 0x0180) return "quatech_dsclp100";
1538    if (vid == 0x135C && did == 0x0181) return "quatech_dsc100e";
1539    if (vid == 0x135C && did == 0x0190) return "quatech_ssclp100";
1540    if (vid == 0x135C && did == 0x01A0) return "quatech_qsclp200";
1541    if (vid == 0x135C && did == 0x01B0) return "quatech_dsclp200";
1542    if (vid == 0x135C && did == 0x01B1) return "quatech_dsc200e";
1543    if (vid == 0x135C && did == 0x01C0) return "quatech_ssclp200";
1544    if (vid == 0x135C && did == 0x01E0) return "quatech_esclp100";
1545    if (vid == 0x135C && did == 0x0278) return "quatech_sppxp_100";
1546    if (vid == 0x135e && did == 0x7101) return "sealevel_u530";
1547    if (vid == 0x135e && did == 0x7201) return "sealevel_ucomm2";
1548    if (vid == 0x135e && did == 0x7402) return "sealevel_ucomm422";
1549    if (vid == 0x135e && did == 0x7202) return "sealevel_ucomm232";
1550    if (vid == 0x135e && did == 0x7401) return "sealevel_comm4";
1551    if (vid == 0x135e && did == 0x7801) return "sealevel_comm8";
1552    if (vid == 0x135e && did == 0x7803) return "sealevel_7803";
1553    if (vid == 0x135e && did == 0x7804) return "sealevel_ucomm8";
1554    if (vid == 0x1365 && did == 0x9050) return "hypercope_plx";
1555    if (vid == 0x136b && did == 0xff01) return "mchip_kl5a72002";
1556    if (vid == 0x1371 && did == 0x434e) return "cnet_gigacard";
1557    if (vid == 0x1376 && did == 0x0003) return "lmc_hssi";
1558    if (vid == 0x1376 && did == 0x0004) return "lmc_ds3";
1559    if (vid == 0x1376 && did == 0x0005) return "lmc_ssi";
1560    if (vid == 0x1376 && did == 0x0006) return "lmc_t1";
1561    if (vid == 0x1385 && did == 0x620a) return "netgear_ga620";
1562    if (vid == 0x1389 && did == 0x0001) return "applicom_pcigeneric";
1563    if (vid == 0x1389 && did == 0x0002) return "applicom_pci2000ibs_can";
1564    if (vid == 0x1389 && did == 0x0003) return "applicom_pci2000pfb";
1565    if (vid == 0x1393 && did == 0x0001) return "moxa_rc7000";
1566    if (vid == 0x1393 && did == 0x1020) return "moxa_cp102";
1567    if (vid == 0x1393 && did == 0x1021) return "moxa_cp102ul";
1568    if (vid == 0x1393 && did == 0x1022) return "moxa_cp102u";
1569    if (vid == 0x1393 && did == 0x1040) return "moxa_c104";
1570    if (vid == 0x1393 && did == 0x1041) return "moxa_cp104u";
1571    if (vid == 0x1393 && did == 0x1042) return "moxa_cp104ju";
1572    if (vid == 0x1393 && did == 0x1043) return "moxa_cp104el";
1573    if (vid == 0x1393 && did == 0x1140) return "moxa_ct114";
1574    if (vid == 0x1393 && did == 0x1141) return "moxa_cp114";
1575    if (vid == 0x1393 && did == 0x1180) return "moxa_cp118u";
1576    if (vid == 0x1393 && did == 0x1181) return "moxa_cp118el";
1577    if (vid == 0x1393 && did == 0x1320) return "moxa_cp132";
1578    if (vid == 0x1393 && did == 0x1321) return "moxa_cp132u";
1579    if (vid == 0x1393 && did == 0x1340) return "moxa_cp134u";
1580    if (vid == 0x1393 && did == 0x1680) return "moxa_c168";
1581    if (vid == 0x1393 && did == 0x1681) return "moxa_cp168u";
1582    if (vid == 0x1393 && did == 0x1682) return "moxa_cp168el";
1583    if (vid == 0x1393 && did == 0x2040) return "moxa_cp204j";
1584    if (vid == 0x1393 && did == 0x2180) return "moxa_c218";
1585    if (vid == 0x1393 && did == 0x3200) return "moxa_c320";
1586    if (vid == 0x1397 && did == 0x08B4) return "ccd_hfc4s";
1587    if (vid == 0x1397 && did == 0x16B8) return "ccd_hfc8s";
1588    if (vid == 0x1397 && did == 0x2bd0) return "ccd_2bd0";
1589    if (vid == 0x1397 && did == 0x30B1) return "ccd_hfce1";
1590    if (vid == 0x1397 && did == 0xb000) return "ccd_b000";
1591    if (vid == 0x1397 && did == 0xb006) return "ccd_b006";
1592    if (vid == 0x1397 && did == 0xb007) return "ccd_b007";
1593    if (vid == 0x1397 && did == 0xb008) return "ccd_b008";
1594    if (vid == 0x1397 && did == 0xb009) return "ccd_b009";
1595    if (vid == 0x1397 && did == 0xb00a) return "ccd_b00a";
1596    if (vid == 0x1397 && did == 0xb00b) return "ccd_b00b";
1597    if (vid == 0x1397 && did == 0xb00c) return "ccd_b00c";
1598    if (vid == 0x1397 && did == 0xb100) return "ccd_b100";
1599    if (vid == 0x1397 && did == 0xb700) return "ccd_b700";
1600    if (vid == 0x1397 && did == 0xb701) return "ccd_b701";
1601    if (vid == 0x13a8 && did == 0x0152) return "exar_xr17c152";
1602    if (vid == 0x13a8 && did == 0x0154) return "exar_xr17c154";
1603    if (vid == 0x13a8 && did == 0x0158) return "exar_xr17c158";
1604    if (vid == 0x13a8 && did == 0x0352) return "exar_xr17v352";
1605    if (vid == 0x13a8 && did == 0x0354) return "exar_xr17v354";
1606    if (vid == 0x13a8 && did == 0x0358) return "exar_xr17v358";
1607    if (vid == 0x13c0 && did == 0x0010) return "microgate_usc";
1608    if (vid == 0x13c0 && did == 0x0030) return "microgate_sca";
1609    if (vid == 0x13C1 && did == 0x1000) return "3ware_1000";
1610    if (vid == 0x13C1 && did == 0x1001) return "3ware_7000";
1611    if (vid == 0x13C1 && did == 0x1002) return "3ware_9000";
1612    if (vid == 0x13ca && did == 0x4231) return "iomega_buz";
1613    if (vid == 0x13D1 && did == 0x2BD1) return "abocom_2bd1";
1614    if (vid == 0x13f6 && did == 0x0100) return "cmedia_cm8338a";
1615    if (vid == 0x13f6 && did == 0x0101) return "cmedia_cm8338b";
1616    if (vid == 0x13f6 && did == 0x0111) return "cmedia_cm8738";
1617    if (vid == 0x13f6 && did == 0x0112) return "cmedia_cm8738b";
1618    if (vid == 0x1407 && did == 0x0100) return "lava_dserial";
1619    if (vid == 0x1407 && did == 0x0101) return "lava_quatro_a";
1620    if (vid == 0x1407 && did == 0x0102) return "lava_quatro_b";
1621    if (vid == 0x1407 && did == 0x0120) return "lava_quattro_a";
1622    if (vid == 0x1407 && did == 0x0121) return "lava_quattro_b";
1623    if (vid == 0x1407 && did == 0x0180) return "lava_octo_a";
1624    if (vid == 0x1407 && did == 0x0181) return "lava_octo_b";
1625    if (vid == 0x1407 && did == 0x0200) return "lava_port_plus";
1626    if (vid == 0x1407 && did == 0x0201) return "lava_quad_a";
1627    if (vid == 0x1407 && did == 0x0202) return "lava_quad_b";
1628    if (vid == 0x1407 && did == 0x0500) return "lava_sserial";
1629    if (vid == 0x1407 && did == 0x0600) return "lava_port_650";
1630    if (vid == 0x1407 && did == 0x8000) return "lava_parallel";
1631    if (vid == 0x1407 && did == 0x8002) return "lava_dual_par_a";
1632    if (vid == 0x1407 && did == 0x8003) return "lava_dual_par_b";
1633    if (vid == 0x1407 && did == 0x8800) return "lava_boca_ioppar";
1634    if (vid == 0x1409 && did == 0x7168) return "timedia_1889";
1635    if (vid == 0x1412 && did == 0x1712) return "ice_1712";
1636    if (vid == 0x1415 && did == 0x8403) return "oxsemi_12pci840";
1637    if (vid == 0x1415 && did == 0x9501) return "oxsemi_16pci954";
1638    if (vid == 0x1415 && did == 0x950B) return "oxsemi_c950";
1639    if (vid == 0x1415 && did == 0x9511) return "oxsemi_16pci95n";
1640    if (vid == 0x1415 && did == 0x9513) return "oxsemi_16pci954pp";
1641    if (vid == 0x1415 && did == 0x9521) return "oxsemi_16pci952";
1642    if (vid == 0x1415 && did == 0x9523) return "oxsemi_16pci952pp";
1643    if (vid == 0x14D2 && did == 0x8001) return "titan_010l";
1644    if (vid == 0x14D2 && did == 0x8010) return "titan_100l";
1645    if (vid == 0x14D2 && did == 0x8011) return "titan_110l";
1646    if (vid == 0x14D2 && did == 0x8020) return "titan_200l";
1647    if (vid == 0x14D2 && did == 0x8021) return "titan_210l";
1648    if (vid == 0x14D2 && did == 0x8040) return "titan_400l";
1649    if (vid == 0x14D2 && did == 0x8080) return "titan_800l";
1650    if (vid == 0x14D2 && did == 0xA001) return "titan_100";
1651    if (vid == 0x14D2 && did == 0xA005) return "titan_200";
1652    if (vid == 0x14D2 && did == 0xA003) return "titan_400";
1653    if (vid == 0x14D2 && did == 0xA004) return "titan_800b";
1654    if (vid == 0x14d4 && did == 0x0400) return "panacom_quadmodem";
1655    if (vid == 0x14d4 && did == 0x0402) return "panacom_dualmodem";
1656    if (vid == 0x14db && did == 0x2180) return "afavlab_p028";
1657    if (vid == 0x14db && did == 0x2182) return "afavlab_p030";
1658    if (vid == 0x14e4 && did == 0x1600) return "tigon3_5752";
1659    if (vid == 0x14e4 && did == 0x1601) return "tigon3_5752m";
1660    if (vid == 0x14e4 && did == 0x1639) return "nx2_5709";
1661    if (vid == 0x14e4 && did == 0x163a) return "nx2_5709s";
1662    if (vid == 0x14e4 && did == 0x1644) return "tigon3_5700";
1663    if (vid == 0x14e4 && did == 0x1645) return "tigon3_5701";
1664    if (vid == 0x14e4 && did == 0x1646) return "tigon3_5702";
1665    if (vid == 0x14e4 && did == 0x1647) return "tigon3_5703";
1666    if (vid == 0x14e4 && did == 0x1648) return "tigon3_5704";
1667    if (vid == 0x14e4 && did == 0x1649) return "tigon3_5704s_2";
1668    if (vid == 0x14e4 && did == 0x164a) return "nx2_5706";
1669    if (vid == 0x14e4 && did == 0x164c) return "nx2_5708";
1670    if (vid == 0x14e4 && did == 0x164d) return "tigon3_5702fe";
1671    if (vid == 0x14e4 && did == 0x164e) return "nx2_57710";
1672    if (vid == 0x14e4 && did == 0x164f) return "nx2_57711";
1673    if (vid == 0x14e4 && did == 0x1650) return "nx2_57711e";
1674    if (vid == 0x14e4 && did == 0x1653) return "tigon3_5705";
1675    if (vid == 0x14e4 && did == 0x1654) return "tigon3_5705_2";
1676    if (vid == 0x14e4 && did == 0x1657) return "tigon3_5719";
1677    if (vid == 0x14e4 && did == 0x1659) return "tigon3_5721";
1678    if (vid == 0x14e4 && did == 0x165a) return "tigon3_5722";
1679    if (vid == 0x14e4 && did == 0x165b) return "tigon3_5723";
1680    if (vid == 0x14e4 && did == 0x165d) return "tigon3_5705m";
1681    if (vid == 0x14e4 && did == 0x165e) return "tigon3_5705m_2";
1682    if (vid == 0x14e4 && did == 0x1662) return "nx2_57712";
1683    if (vid == 0x14e4 && did == 0x1663) return "nx2_57712e";
1684    if (vid == 0x14e4 && did == 0x1663) return "nx2_57712_mf";
1685    if (vid == 0x14e4 && did == 0x1668) return "tigon3_5714";
1686    if (vid == 0x14e4 && did == 0x1669) return "tigon3_5714s";
1687    if (vid == 0x14e4 && did == 0x166a) return "tigon3_5780";
1688    if (vid == 0x14e4 && did == 0x166b) return "tigon3_5780s";
1689    if (vid == 0x14e4 && did == 0x166e) return "tigon3_5705f";
1690    if (vid == 0x14e4 && did == 0x166f) return "nx2_57712_vf";
1691    if (vid == 0x14e4 && did == 0x1672) return "tigon3_5754m";
1692    if (vid == 0x14e4 && did == 0x1673) return "tigon3_5755m";
1693    if (vid == 0x14e4 && did == 0x1674) return "tigon3_5756";
1694    if (vid == 0x14e4 && did == 0x1676) return "tigon3_5750";
1695    if (vid == 0x14e4 && did == 0x1677) return "tigon3_5751";
1696    if (vid == 0x14e4 && did == 0x1678) return "tigon3_5715";
1697    if (vid == 0x14e4 && did == 0x1679) return "tigon3_5715s";
1698    if (vid == 0x14e4 && did == 0x167a) return "tigon3_5754";
1699    if (vid == 0x14e4 && did == 0x167b) return "tigon3_5755";
1700    if (vid == 0x14e4 && did == 0x167d) return "tigon3_5751m";
1701    if (vid == 0x14e4 && did == 0x167e) return "tigon3_5751f";
1702    if (vid == 0x14e4 && did == 0x167f) return "tigon3_5787f";
1703    if (vid == 0x14e4 && did == 0x1680) return "tigon3_5761e";
1704    if (vid == 0x14e4 && did == 0x1681) return "tigon3_5761";
1705    if (vid == 0x14e4 && did == 0x1684) return "tigon3_5764";
1706    if (vid == 0x14e4 && did == 0x168a) return "nx2_57800";
1707    if (vid == 0x14e4 && did == 0x168d) return "nx2_57840";
1708    if (vid == 0x14e4 && did == 0x168e) return "nx2_57810";
1709    if (vid == 0x14e4 && did == 0x1693) return "tigon3_5787m";
1710    if (vid == 0x14e4 && did == 0x1696) return "tigon3_5782";
1711    if (vid == 0x14e4 && did == 0x1698) return "tigon3_5784";
1712    if (vid == 0x14e4 && did == 0x169a) return "tigon3_5786";
1713    if (vid == 0x14e4 && did == 0x169b) return "tigon3_5787";
1714    if (vid == 0x14e4 && did == 0x169c) return "tigon3_5788";
1715    if (vid == 0x14e4 && did == 0x169d) return "tigon3_5789";
1716    if (vid == 0x14e4 && did == 0x16a1) return "nx2_57840_4_10";
1717    if (vid == 0x14e4 && did == 0x16a2) return "nx2_57840_2_20";
1718    if (vid == 0x14e4 && did == 0x16a4) return "nx2_57840_mf";
1719    if (vid == 0x14e4 && did == 0x16a5) return "nx2_57800_mf";
1720    if (vid == 0x14e4 && did == 0x16a6) return "tigon3_5702x";
1721    if (vid == 0x14e4 && did == 0x16a7) return "tigon3_5703x";
1722    if (vid == 0x14e4 && did == 0x16a8) return "tigon3_5704s";
1723    if (vid == 0x14e4 && did == 0x16a9) return "nx2_57800_vf";
1724    if (vid == 0x14e4 && did == 0x16aa) return "nx2_5706s";
1725    if (vid == 0x14e4 && did == 0x16ac) return "nx2_5708s";
1726    if (vid == 0x14e4 && did == 0x16ad) return "nx2_57840_vf";
1727    if (vid == 0x14e4 && did == 0x16ae) return "nx2_57810_mf";
1728    if (vid == 0x14e4 && did == 0x16af) return "nx2_57810_vf";
1729    if (vid == 0x14e4 && did == 0x16c6) return "tigon3_5702a3";
1730    if (vid == 0x14e4 && did == 0x16c7) return "tigon3_5703a3";
1731    if (vid == 0x14e4 && did == 0x16dd) return "tigon3_5781";
1732    if (vid == 0x14e4 && did == 0x16f7) return "tigon3_5753";
1733    if (vid == 0x14e4 && did == 0x16fd) return "tigon3_5753m";
1734    if (vid == 0x14e4 && did == 0x16fe) return "tigon3_5753f";
1735    if (vid == 0x14e4 && did == 0x170d) return "tigon3_5901";
1736    if (vid == 0x14e4 && did == 0x170e) return "tigon3_5901_2";
1737    if (vid == 0x14e4 && did == 0x1712) return "tigon3_5906";
1738    if (vid == 0x14e4 && did == 0x1713) return "tigon3_5906m";
1739    if (vid == 0x151f && did == 0x0000) return "topic_tp560";
1740    if (vid == 0x1522 && did == 0x0100) return "mainpine_pbridge";
1741    if (vid == 0x1524 && did == 0x0510) return "ene_cb710_flash";
1742    if (vid == 0x1524 && did == 0x0550) return "ene_cb712_sd";
1743    if (vid == 0x1524 && did == 0x0551) return "ene_cb712_sd_2";
1744    if (vid == 0x1524 && did == 0x0750) return "ene_cb714_sd";
1745    if (vid == 0x1524 && did == 0x0751) return "ene_cb714_sd_2";
1746    if (vid == 0x1524 && did == 0x1211) return "ene_1211";
1747    if (vid == 0x1524 && did == 0x1225) return "ene_1225";
1748    if (vid == 0x1524 && did == 0x1410) return "ene_1410";
1749    if (vid == 0x1524 && did == 0x1411) return "ene_710";
1750    if (vid == 0x1524 && did == 0x1412) return "ene_712";
1751    if (vid == 0x1524 && did == 0x1420) return "ene_1420";
1752    if (vid == 0x1524 && did == 0x1421) return "ene_720";
1753    if (vid == 0x1524 && did == 0x1422) return "ene_722";
1754    if (vid == 0x1592 && did == 0x0782) return "syba_2p_epp";
1755    if (vid == 0x1592 && did == 0x0783) return "syba_1p_ecp";
1756    if (vid == 0x15aa && did == 0x2000) return "rastel_2port";
1757    if (vid == 0x15b0 && did == 0x2bd0) return "zoltrix_2bd0";
1758    if (vid == 0x15b3 && did == 0x5a44) return "mellanox_tavor";
1759    if (vid == 0x15b3 && did == 0x5a46) return "mellanox_tavor_bridge";
1760    if (vid == 0x15b3 && did == 0x6278) return "mellanox_arbel_compat";
1761    if (vid == 0x15b3 && did == 0x6282) return "mellanox_arbel";
1762    if (vid == 0x15b3 && did == 0x5e8c) return "mellanox_sinai_old";
1763    if (vid == 0x15b3 && did == 0x6274) return "mellanox_sinai";
1764    if (vid == 0x15e2 && did == 0x0500) return "quicknet_xj";
1765    if (vid == 0x15B8 && did == 0x7000) return "addidata_apci7500";
1766    if (vid == 0x15B8 && did == 0x7001) return "addidata_apci7420";
1767    if (vid == 0x15B8 && did == 0x7002) return "addidata_apci7300";
1768    if (vid == 0x15B8 && did == 0x818E) return "addidata_apci7800";
1769    if (vid == 0x15B8 && did == 0x7009) return "addidata_apci7500_2";
1770    if (vid == 0x15B8 && did == 0x700A) return "addidata_apci7420_2";
1771    if (vid == 0x15B8 && did == 0x700B) return "addidata_apci7300_2";
1772    if (vid == 0x15B8 && did == 0x700C) return "addidata_apci7500_3";
1773    if (vid == 0x15B8 && did == 0x700D) return "addidata_apci7420_3";
1774    if (vid == 0x15B8 && did == 0x700E) return "addidata_apci7300_3";
1775    if (vid == 0x15B8 && did == 0x700F) return "addidata_apci7800_3";
1776    if (vid == 0x1619 && did == 0x0400) return "farsite_t2p";
1777    if (vid == 0x1619 && did == 0x0440) return "farsite_t4p";
1778    if (vid == 0x1619 && did == 0x0610) return "farsite_t1u";
1779    if (vid == 0x1619 && did == 0x0620) return "farsite_t2u";
1780    if (vid == 0x1619 && did == 0x0640) return "farsite_t4u";
1781    if (vid == 0x1619 && did == 0x1610) return "farsite_te1";
1782    if (vid == 0x1619 && did == 0x1612) return "farsite_te1c";
1783    if (vid == 0x1657 && did == 0x0014) return "brocade_ct";
1784    if (vid == 0x1657 && did == 0x0017) return "brocade_fc_8g1p";
1785    if (vid == 0x1657 && did == 0x0021) return "brocade_ct_fc";
1786    if (vid == 0x166d && did == 0x0001) return "bcm1250_pci";
1787    if (vid == 0x166d && did == 0x0002) return "bcm1250_ht";
1788    if (vid == 0x16CA && did == 0x0001) return "cenatek_ide";
1789    if (vid == 0x1725 && did == 0x7174) return "vitesse_vsc7174";
1790    if (vid == 0x1737 && did == 0x1064) return "linksys_eg1064";
1791    if (vid == 0x173b && did == 0x03e8) return "altima_ac1000";
1792    if (vid == 0x173b && did == 0x03e9) return "altima_ac1001";
1793    if (vid == 0x173b && did == 0x03ea) return "altima_ac9100";
1794    if (vid == 0x173b && did == 0x03eb) return "altima_ac1003";
1795    if (vid == 0x1799 && did == 0x701f) return "belkin_f5d7010v7";
1796    if (vid == 0x17f3 && did == 0x6020) return "rdc_r6020";
1797    if (vid == 0x17f3 && did == 0x6030) return "rdc_r6030";
1798    if (vid == 0x17f3 && did == 0x6040) return "rdc_r6040";
1799    if (vid == 0x17f3 && did == 0x6060) return "rdc_r6060";
1800    if (vid == 0x17f3 && did == 0x6061) return "rdc_r6061";
1801    if (vid == 0x17f3 && did == 0x1010) return "rdc_d1010";
1802    if (vid == 0x17d3 && did == 0x1110) return "areca_1110";
1803    if (vid == 0x17d3 && did == 0x1120) return "areca_1120";
1804    if (vid == 0x17d3 && did == 0x1130) return "areca_1130";
1805    if (vid == 0x17d3 && did == 0x1160) return "areca_1160";
1806    if (vid == 0x17d3 && did == 0x1170) return "areca_1170";
1807    if (vid == 0x17d3 && did == 0x1200) return "areca_1200";
1808    if (vid == 0x17d3 && did == 0x1201) return "areca_1201";
1809    if (vid == 0x17d3 && did == 0x1202) return "areca_1202";
1810    if (vid == 0x17d3 && did == 0x1210) return "areca_1210";
1811    if (vid == 0x17d3 && did == 0x1220) return "areca_1220";
1812    if (vid == 0x17d3 && did == 0x1230) return "areca_1230";
1813    if (vid == 0x17d3 && did == 0x1260) return "areca_1260";
1814    if (vid == 0x17d3 && did == 0x1270) return "areca_1270";
1815    if (vid == 0x17d3 && did == 0x1280) return "areca_1280";
1816    if (vid == 0x17d3 && did == 0x1380) return "areca_1380";
1817    if (vid == 0x17d3 && did == 0x1381) return "areca_1381";
1818    if (vid == 0x17d3 && did == 0x1680) return "areca_1680";
1819    if (vid == 0x17d3 && did == 0x1681) return "areca_1681";
1820    if (vid == 0x17d5 && did == 0x5731) return "s2io_win";
1821    if (vid == 0x17d5 && did == 0x5831) return "s2io_uni";
1822    if (vid == 0x17d5 && did == 0x5732) return "herc_win";
1823    if (vid == 0x17d5 && did == 0x5832) return "herc_uni";
1824    if (vid == 0x182d && did == 0x3069) return "sitecom_dc105v2";
1825    if (vid == 0x1912 && did == 0x0001) return "renesas_sh7781";
1826    if (vid == 0x1912 && did == 0x0002) return "renesas_sh7780";
1827    if (vid == 0x1912 && did == 0x0004) return "renesas_sh7763";
1828    if (vid == 0x1912 && did == 0x0007) return "renesas_sh7785";
1829    if (vid == 0x1912 && did == 0x0010) return "renesas_sh7786";
1830    if (vid == 0x1924 && did == 0x0703) return "solarflare_sfc4000a_0";
1831    if (vid == 0x1924 && did == 0x6703) return "solarflare_sfc4000a_1";
1832    if (vid == 0x1924 && did == 0x0710) return "solarflare_sfc4000b";
1833    if (vid == 0x192E && did == 0x0101) return "tdi_ehci";
1834    if (vid == 0x1969 && did == 0x1048) return "attansic_l1";
1835    if (vid == 0x1969 && did == 0x2048) return "attansic_l2";
1836    if (vid == 0x197B && did == 0x2360) return "jmicron_jmb360";
1837    if (vid == 0x197B && did == 0x2361) return "jmicron_jmb361";
1838    if (vid == 0x197B && did == 0x2362) return "jmicron_jmb362";
1839    if (vid == 0x197B && did == 0x2363) return "jmicron_jmb363";
1840    if (vid == 0x197B && did == 0x2364) return "jmicron_jmb364";
1841    if (vid == 0x197B && did == 0x2365) return "jmicron_jmb365";
1842    if (vid == 0x197B && did == 0x2366) return "jmicron_jmb366";
1843    if (vid == 0x197B && did == 0x2368) return "jmicron_jmb368";
1844    if (vid == 0x197B && did == 0x2369) return "jmicron_jmb369";
1845    if (vid == 0x197B && did == 0x2381) return "jmicron_jmb38x_sd";
1846    if (vid == 0x197B && did == 0x2382) return "jmicron_jmb38x_mmc";
1847    if (vid == 0x197B && did == 0x2383) return "jmicron_jmb38x_ms";
1848    if (vid == 0x197B && did == 0x2388) return "jmicron_jmb385_ms";
1849    if (vid == 0x197B && did == 0x2391) return "jmicron_jmb388_sd";
1850    if (vid == 0x197B && did == 0x2392) return "jmicron_jmb388_esd";
1851    if (vid == 0x197B && did == 0x2393) return "jmicron_jmb390_ms";
1852    if (vid == 0x1982 && did == 0x1600) return "korenix_jetcardf0";
1853    if (vid == 0x1982 && did == 0x16ff) return "korenix_jetcardf1";
1854    if (vid == 0x1982 && did == 0x1700) return "korenix_jetcardf2";
1855    if (vid == 0x1982 && did == 0x17ff) return "korenix_jetcardf3";
1856    if (vid == 0x1de1 && did == 0xdc29) return "tekram_dc290";
1857    if (vid == 0x1fc9 && did == 0x3009) return "tehuti_3009";
1858    if (vid == 0x1fc9 && did == 0x3010) return "tehuti_3010";
1859    if (vid == 0x1fc9 && did == 0x3014) return "tehuti_3014";
1860    if (vid == 0x3388 && did == 0x8013) return "hint_vxproii_ide";
1861    if (vid == 0x3d3d && did == 0x0007) return "3dlabs_permedia2";
1862    if (vid == 0x3d3d && did == 0x0009) return "3dlabs_permedia2v";
1863    if (vid == 0x4040 && did == 0x0001) return "nx2031_10gxsr";
1864    if (vid == 0x4040 && did == 0x0002) return "nx2031_10gcx4";
1865    if (vid == 0x4040 && did == 0x0003) return "nx2031_4gcu";
1866    if (vid == 0x4040 && did == 0x0004) return "nx2031_imez";
1867    if (vid == 0x4040 && did == 0x0005) return "nx2031_hmez";
1868    if (vid == 0x4040 && did == 0x0024) return "nx2031_xg_mgmt";
1869    if (vid == 0x4040 && did == 0x0025) return "nx2031_xg_mgmt2";
1870    if (vid == 0x416c && did == 0x0100) return "aks_aladdincard";
1871    if (vid == 0x494f && did == 0x22c0) return "accessio_wdg_csm";
1872    if (vid == 0x5333 && did == 0x8811) return "s3_trio";
1873    if (vid == 0x5333 && did == 0x8880) return "s3_868";
1874    if (vid == 0x5333 && did == 0x88f0) return "s3_968";
1875    if (vid == 0x5333 && did == 0x8a25) return "s3_savage4";
1876    if (vid == 0x5333 && did == 0x8d04) return "s3_prosavage8";
1877    if (vid == 0x5333 && did == 0xca00) return "s3_sonicvibes";
1878    if (vid == 0x5544 && did == 0x0001) return "dunord_i3000";
1879    if (vid == 0x6666 && did == 0x0001) return "dci_pccom4";
1880    if (vid == 0x6666 && did == 0x0002) return "dci_pccom8";
1881    if (vid == 0x6666 && did == 0x0004) return "dci_pccom2";
1882    if (vid == 0x8086 && did == 0x0008) return "intel_eessc";
1883    if (vid == 0x8086 && did == 0x0320) return "intel_pxhd_0";
1884    if (vid == 0x8086 && did == 0x0321) return "intel_pxhd_1";
1885    if (vid == 0x8086 && did == 0x0329) return "intel_pxh_0";
1886    if (vid == 0x8086 && did == 0x032A) return "intel_pxh_1";
1887    if (vid == 0x8086 && did == 0x032C) return "intel_pxhv";
1888    if (vid == 0x8086 && did == 0x0330) return "intel_80332_0";
1889    if (vid == 0x8086 && did == 0x0332) return "intel_80332_1";
1890    if (vid == 0x8086 && did == 0x0370) return "intel_80333_0";
1891    if (vid == 0x8086 && did == 0x0372) return "intel_80333_1";
1892    if (vid == 0x8086 && did == 0x0482) return "intel_82375";
1893    if (vid == 0x8086 && did == 0x0483) return "intel_82424";
1894    if (vid == 0x8086 && did == 0x0484) return "intel_82378";
1895    if (vid == 0x8086 && did == 0x0807) return "intel_mrst_sd0";
1896    if (vid == 0x8086 && did == 0x0808) return "intel_mrst_sd1";
1897    if (vid == 0x8086 && did == 0x0820) return "intel_mfd_sd";
1898    if (vid == 0x8086 && did == 0x0821) return "intel_mfd_sdio1";
1899    if (vid == 0x8086 && did == 0x0822) return "intel_mfd_sdio2";
1900    if (vid == 0x8086 && did == 0x0823) return "intel_mfd_emmc0";
1901    if (vid == 0x8086 && did == 0x0824) return "intel_mfd_emmc1";
1902    if (vid == 0x8086 && did == 0x084F) return "intel_mrst_sd2";
1903    if (vid == 0x8086 && did == 0x0960) return "intel_i960";
1904    if (vid == 0x8086 && did == 0x0962) return "intel_i960rm";
1905    if (vid == 0x8086 && did == 0x0c60) return "intel_centerton_ilb";
1906    if (vid == 0x8086 && did == 0x1062) return "intel_8257x_sol";
1907    if (vid == 0x8086 && did == 0x1085) return "intel_82573e_sol";
1908    if (vid == 0x8086 && did == 0x108F) return "intel_82573l_sol";
1909    if (vid == 0x8086 && did == 0x1130) return "intel_82815_mc";
1910    if (vid == 0x8086 && did == 0x1132) return "intel_82815_cgc";
1911    if (vid == 0x8086 && did == 0x1221) return "intel_82092aa_0";
1912    if (vid == 0x8086 && did == 0x2550) return "intel_7505_0";
1913    if (vid == 0x8086 && did == 0x255d) return "intel_7205_0";
1914    if (vid == 0x8086 && did == 0x122d) return "intel_82437";
1915    if (vid == 0x8086 && did == 0x122e) return "intel_82371fb_0";
1916    if (vid == 0x8086 && did == 0x1230) return "intel_82371fb_1";
1917    if (vid == 0x8086 && did == 0x1234) return "intel_82371mx";
1918    if (vid == 0x8086 && did == 0x1237) return "intel_82441";
1919    if (vid == 0x8086 && did == 0x124b) return "intel_82380fb";
1920    if (vid == 0x8086 && did == 0x1250) return "intel_82439";
1921    if (vid == 0x8086 && did == 0x1960) return "intel_80960_rp";
1922    if (vid == 0x8086 && did == 0x1a21) return "intel_82840_hb";
1923    if (vid == 0x8086 && did == 0x1a30) return "intel_82845_hb";
1924    if (vid == 0x8086 && did == 0x1a38) return "intel_ioat";
1925    if (vid == 0x8086 && did == 0x1c41) return "intel_cougarpoint_lpc_min";
1926    if (vid == 0x8086 && did == 0x1c5f) return "intel_cougarpoint_lpc_max";
1927    if (vid == 0x8086 && did == 0x1d40) return "intel_patsburg_lpc_0";
1928    if (vid == 0x8086 && did == 0x1d41) return "intel_patsburg_lpc_1";
1929    if (vid == 0x8086 && did == 0x1e31) return "intel_pantherpoint_xhci";
1930    if (vid == 0x8086 && did == 0x1e40) return "intel_pantherpoint_lpc_min";
1931    if (vid == 0x8086 && did == 0x1e5f) return "intel_pantherpoint_lpc_max";
1932    if (vid == 0x8086 && did == 0x2310) return "intel_dh89xxcc_lpc_min";
1933    if (vid == 0x8086 && did == 0x231f) return "intel_dh89xxcc_lpc_max";
1934    if (vid == 0x8086 && did == 0x2410) return "intel_82801aa_0";
1935    if (vid == 0x8086 && did == 0x2411) return "intel_82801aa_1";
1936    if (vid == 0x8086 && did == 0x2413) return "intel_82801aa_3";
1937    if (vid == 0x8086 && did == 0x2415) return "intel_82801aa_5";
1938    if (vid == 0x8086 && did == 0x2416) return "intel_82801aa_6";
1939    if (vid == 0x8086 && did == 0x2418) return "intel_82801aa_8";
1940    if (vid == 0x8086 && did == 0x2420) return "intel_82801ab_0";
1941    if (vid == 0x8086 && did == 0x2421) return "intel_82801ab_1";
1942    if (vid == 0x8086 && did == 0x2423) return "intel_82801ab_3";
1943    if (vid == 0x8086 && did == 0x2425) return "intel_82801ab_5";
1944    if (vid == 0x8086 && did == 0x2426) return "intel_82801ab_6";
1945    if (vid == 0x8086 && did == 0x2428) return "intel_82801ab_8";
1946    if (vid == 0x8086 && did == 0x2440) return "intel_82801ba_0";
1947    if (vid == 0x8086 && did == 0x2443) return "intel_82801ba_2";
1948    if (vid == 0x8086 && did == 0x2445) return "intel_82801ba_4";
1949    if (vid == 0x8086 && did == 0x2448) return "intel_82801ba_6";
1950    if (vid == 0x8086 && did == 0x244a) return "intel_82801ba_8";
1951    if (vid == 0x8086 && did == 0x244b) return "intel_82801ba_9";
1952    if (vid == 0x8086 && did == 0x244c) return "intel_82801ba_10";
1953    if (vid == 0x8086 && did == 0x244e) return "intel_82801ba_11";
1954    if (vid == 0x8086 && did == 0x2450) return "intel_82801e_0";
1955    if (vid == 0x8086 && did == 0x245b) return "intel_82801e_11";
1956    if (vid == 0x8086 && did == 0x2480) return "intel_82801ca_0";
1957    if (vid == 0x8086 && did == 0x2483) return "intel_82801ca_3";
1958    if (vid == 0x8086 && did == 0x2485) return "intel_82801ca_5";
1959    if (vid == 0x8086 && did == 0x2486) return "intel_82801ca_6";
1960    if (vid == 0x8086 && did == 0x248a) return "intel_82801ca_10";
1961    if (vid == 0x8086 && did == 0x248b) return "intel_82801ca_11";
1962    if (vid == 0x8086 && did == 0x248c) return "intel_82801ca_12";
1963    if (vid == 0x8086 && did == 0x24c0) return "intel_82801db_0";
1964    if (vid == 0x8086 && did == 0x24c1) return "intel_82801db_1";
1965    if (vid == 0x8086 && did == 0x24c2) return "intel_82801db_2";
1966    if (vid == 0x8086 && did == 0x24c3) return "intel_82801db_3";
1967    if (vid == 0x8086 && did == 0x24c5) return "intel_82801db_5";
1968    if (vid == 0x8086 && did == 0x24c6) return "intel_82801db_6";
1969    if (vid == 0x8086 && did == 0x24c9) return "intel_82801db_9";
1970    if (vid == 0x8086 && did == 0x24ca) return "intel_82801db_10";
1971    if (vid == 0x8086 && did == 0x24cb) return "intel_82801db_11";
1972    if (vid == 0x8086 && did == 0x24cc) return "intel_82801db_12";
1973    if (vid == 0x8086 && did == 0x24d0) return "intel_82801eb_0";
1974    if (vid == 0x8086 && did == 0x24d1) return "intel_82801eb_1";
1975    if (vid == 0x8086 && did == 0x24d3) return "intel_82801eb_3";
1976    if (vid == 0x8086 && did == 0x24d5) return "intel_82801eb_5";
1977    if (vid == 0x8086 && did == 0x24d6) return "intel_82801eb_6";
1978    if (vid == 0x8086 && did == 0x24db) return "intel_82801eb_11";
1979    if (vid == 0x8086 && did == 0x24dc) return "intel_82801eb_12";
1980    if (vid == 0x8086 && did == 0x24dd) return "intel_82801eb_13";
1981    if (vid == 0x8086 && did == 0x25a1) return "intel_esb_1";
1982    if (vid == 0x8086 && did == 0x25a2) return "intel_esb_2";
1983    if (vid == 0x8086 && did == 0x25a4) return "intel_esb_4";
1984    if (vid == 0x8086 && did == 0x25a6) return "intel_esb_5";
1985    if (vid == 0x8086 && did == 0x25ab) return "intel_esb_9";
1986    if (vid == 0x8086 && did == 0x25ac) return "intel_esb_10";
1987    if (vid == 0x8086 && did == 0x2500) return "intel_82820_hb";
1988    if (vid == 0x8086 && did == 0x2501) return "intel_82820_up_hb";
1989    if (vid == 0x8086 && did == 0x2530) return "intel_82850_hb";
1990    if (vid == 0x8086 && did == 0x2531) return "intel_82860_hb";
1991    if (vid == 0x8086 && did == 0x254c) return "intel_e7501_mch";
1992    if (vid == 0x8086 && did == 0x2560) return "intel_82845g_hb";
1993    if (vid == 0x8086 && did == 0x2562) return "intel_82845g_ig";
1994    if (vid == 0x8086 && did == 0x2570) return "intel_82865_hb";
1995    if (vid == 0x8086 && did == 0x2572) return "intel_82865_ig";
1996    if (vid == 0x8086 && did == 0x2578) return "intel_82875_hb";
1997    if (vid == 0x8086 && did == 0x2580) return "intel_82915g_hb";
1998    if (vid == 0x8086 && did == 0x2582) return "intel_82915g_ig";
1999    if (vid == 0x8086 && did == 0x2590) return "intel_82915gm_hb";
2000    if (vid == 0x8086 && did == 0x2592) return "intel_82915gm_ig";
2001    if (vid == 0x8086 && did == 0x25F0) return "intel_5000_err";
2002    if (vid == 0x8086 && did == 0x25F5) return "intel_5000_fbd0";
2003    if (vid == 0x8086 && did == 0x25F6) return "intel_5000_fbd1";
2004    if (vid == 0x8086 && did == 0x2770) return "intel_82945g_hb";
2005    if (vid == 0x8086 && did == 0x2772) return "intel_82945g_ig";
2006    if (vid == 0x8086 && did == 0x2778) return "intel_3000_hb";
2007    if (vid == 0x8086 && did == 0x27A0) return "intel_82945gm_hb";
2008    if (vid == 0x8086 && did == 0x27A2) return "intel_82945gm_ig";
2009    if (vid == 0x8086 && did == 0x2640) return "intel_ich6_0";
2010    if (vid == 0x8086 && did == 0x2641) return "intel_ich6_1";
2011    if (vid == 0x8086 && did == 0x2642) return "intel_ich6_2";
2012    if (vid == 0x8086 && did == 0x266a) return "intel_ich6_16";
2013    if (vid == 0x8086 && did == 0x266d) return "intel_ich6_17";
2014    if (vid == 0x8086 && did == 0x266e) return "intel_ich6_18";
2015    if (vid == 0x8086 && did == 0x266f) return "intel_ich6_19";
2016    if (vid == 0x8086 && did == 0x2670) return "intel_esb2_0";
2017    if (vid == 0x8086 && did == 0x2698) return "intel_esb2_14";
2018    if (vid == 0x8086 && did == 0x269b) return "intel_esb2_17";
2019    if (vid == 0x8086 && did == 0x269e) return "intel_esb2_18";
2020    if (vid == 0x8086 && did == 0x27b8) return "intel_ich7_0";
2021    if (vid == 0x8086 && did == 0x27b9) return "intel_ich7_1";
2022    if (vid == 0x8086 && did == 0x27b0) return "intel_ich7_30";
2023    if (vid == 0x8086 && did == 0x27bc) return "intel_tgp_lpc";
2024    if (vid == 0x8086 && did == 0x27bd) return "intel_ich7_31";
2025    if (vid == 0x8086 && did == 0x27da) return "intel_ich7_17";
2026    if (vid == 0x8086 && did == 0x27dd) return "intel_ich7_19";
2027    if (vid == 0x8086 && did == 0x27de) return "intel_ich7_20";
2028    if (vid == 0x8086 && did == 0x27df) return "intel_ich7_21";
2029    if (vid == 0x8086 && did == 0x2810) return "intel_ich8_0";
2030    if (vid == 0x8086 && did == 0x2811) return "intel_ich8_1";
2031    if (vid == 0x8086 && did == 0x2812) return "intel_ich8_2";
2032    if (vid == 0x8086 && did == 0x2814) return "intel_ich8_3";
2033    if (vid == 0x8086 && did == 0x2815) return "intel_ich8_4";
2034    if (vid == 0x8086 && did == 0x283e) return "intel_ich8_5";
2035    if (vid == 0x8086 && did == 0x2850) return "intel_ich8_6";
2036    if (vid == 0x8086 && did == 0x2910) return "intel_ich9_0";
2037    if (vid == 0x8086 && did == 0x2917) return "intel_ich9_1";
2038    if (vid == 0x8086 && did == 0x2912) return "intel_ich9_2";
2039    if (vid == 0x8086 && did == 0x2913) return "intel_ich9_3";
2040    if (vid == 0x8086 && did == 0x2914) return "intel_ich9_4";
2041    if (vid == 0x8086 && did == 0x2919) return "intel_ich9_5";
2042    if (vid == 0x8086 && did == 0x2930) return "intel_ich9_6";
2043    if (vid == 0x8086 && did == 0x2916) return "intel_ich9_7";
2044    if (vid == 0x8086 && did == 0x2918) return "intel_ich9_8";
2045    if (vid == 0x8086 && did == 0x2c18) return "intel_i7_mcr";
2046    if (vid == 0x8086 && did == 0x2c19) return "intel_i7_mc_tad";
2047    if (vid == 0x8086 && did == 0x2c1a) return "intel_i7_mc_ras";
2048    if (vid == 0x8086 && did == 0x2c1c) return "intel_i7_mc_test";
2049    if (vid == 0x8086 && did == 0x2c20) return "intel_i7_mc_ch0_ctrl";
2050    if (vid == 0x8086 && did == 0x2c21) return "intel_i7_mc_ch0_addr";
2051    if (vid == 0x8086 && did == 0x2c22) return "intel_i7_mc_ch0_rank";
2052    if (vid == 0x8086 && did == 0x2c23) return "intel_i7_mc_ch0_tc";
2053    if (vid == 0x8086 && did == 0x2c28) return "intel_i7_mc_ch1_ctrl";
2054    if (vid == 0x8086 && did == 0x2c29) return "intel_i7_mc_ch1_addr";
2055    if (vid == 0x8086 && did == 0x2c2a) return "intel_i7_mc_ch1_rank";
2056    if (vid == 0x8086 && did == 0x2c2b) return "intel_i7_mc_ch1_tc";
2057    if (vid == 0x8086 && did == 0x2c30) return "intel_i7_mc_ch2_ctrl";
2058    if (vid == 0x8086 && did == 0x2c31) return "intel_i7_mc_ch2_addr";
2059    if (vid == 0x8086 && did == 0x2c32) return "intel_i7_mc_ch2_rank";
2060    if (vid == 0x8086 && did == 0x2c33) return "intel_i7_mc_ch2_tc";
2061    if (vid == 0x8086 && did == 0x2c41) return "intel_i7_noncore";
2062    if (vid == 0x8086 && did == 0x2c40) return "intel_i7_noncore_alt";
2063    if (vid == 0x8086 && did == 0x2c50) return "intel_lynnfield_noncore";
2064    if (vid == 0x8086 && did == 0x2c51) return "intel_lynnfield_noncore_alt";
2065    if (vid == 0x8086 && did == 0x2c70) return "intel_lynnfield_noncore_rev2";
2066    if (vid == 0x8086 && did == 0x2c81) return "intel_lynnfield_sad";
2067    if (vid == 0x8086 && did == 0x2c90) return "intel_lynnfield_qpi_link0";
2068    if (vid == 0x8086 && did == 0x2c91) return "intel_lynnfield_qpi_phy0";
2069    if (vid == 0x8086 && did == 0x2c98) return "intel_lynnfield_mcr";
2070    if (vid == 0x8086 && did == 0x2c99) return "intel_lynnfield_mc_tad";
2071    if (vid == 0x8086 && did == 0x2c9C) return "intel_lynnfield_mc_test";
2072    if (vid == 0x8086 && did == 0x2ca0) return "intel_lynnfield_mc_ch0_ctrl";
2073    if (vid == 0x8086 && did == 0x2ca1) return "intel_lynnfield_mc_ch0_addr";
2074    if (vid == 0x8086 && did == 0x2ca2) return "intel_lynnfield_mc_ch0_rank";
2075    if (vid == 0x8086 && did == 0x2ca3) return "intel_lynnfield_mc_ch0_tc";
2076    if (vid == 0x8086 && did == 0x2ca8) return "intel_lynnfield_mc_ch1_ctrl";
2077    if (vid == 0x8086 && did == 0x2ca9) return "intel_lynnfield_mc_ch1_addr";
2078    if (vid == 0x8086 && did == 0x2caa) return "intel_lynnfield_mc_ch1_rank";
2079    if (vid == 0x8086 && did == 0x2cab) return "intel_lynnfield_mc_ch1_tc";
2080    if (vid == 0x8086 && did == 0x2d98) return "intel_lynnfield_mcr_rev2";
2081    if (vid == 0x8086 && did == 0x2d99) return "intel_lynnfield_mc_tad_rev2";
2082    if (vid == 0x8086 && did == 0x2d9a) return "intel_lynnfield_mc_ras_rev2";
2083    if (vid == 0x8086 && did == 0x2d9c) return "intel_lynnfield_mc_test_rev2";
2084    if (vid == 0x8086 && did == 0x2da0) return "intel_lynnfield_mc_ch0_ctrl_rev2";
2085    if (vid == 0x8086 && did == 0x2da1) return "intel_lynnfield_mc_ch0_addr_rev2";
2086    if (vid == 0x8086 && did == 0x2da2) return "intel_lynnfield_mc_ch0_rank_rev2";
2087    if (vid == 0x8086 && did == 0x2da3) return "intel_lynnfield_mc_ch0_tc_rev2";
2088    if (vid == 0x8086 && did == 0x2da8) return "intel_lynnfield_mc_ch1_ctrl_rev2";
2089    if (vid == 0x8086 && did == 0x2da9) return "intel_lynnfield_mc_ch1_addr_rev2";
2090    if (vid == 0x8086 && did == 0x2daa) return "intel_lynnfield_mc_ch1_rank_rev2";
2091    if (vid == 0x8086 && did == 0x2dab) return "intel_lynnfield_mc_ch1_tc_rev2";
2092    if (vid == 0x8086 && did == 0x2db0) return "intel_lynnfield_mc_ch2_ctrl_rev2";
2093    if (vid == 0x8086 && did == 0x2db1) return "intel_lynnfield_mc_ch2_addr_rev2";
2094    if (vid == 0x8086 && did == 0x2db2) return "intel_lynnfield_mc_ch2_rank_rev2";
2095    if (vid == 0x8086 && did == 0x2db3) return "intel_lynnfield_mc_ch2_tc_rev2";
2096    if (vid == 0x8086 && did == 0x3340) return "intel_82855pm_hb";
2097    if (vid == 0x8086 && did == 0x3429) return "intel_ioat_tbg4";
2098    if (vid == 0x8086 && did == 0x342a) return "intel_ioat_tbg5";
2099    if (vid == 0x8086 && did == 0x342b) return "intel_ioat_tbg6";
2100    if (vid == 0x8086 && did == 0x342c) return "intel_ioat_tbg7";
2101    if (vid == 0x8086 && did == 0x342e) return "intel_x58_hub_mgmt";
2102    if (vid == 0x8086 && did == 0x3430) return "intel_ioat_tbg0";
2103    if (vid == 0x8086 && did == 0x3431) return "intel_ioat_tbg1";
2104    if (vid == 0x8086 && did == 0x3432) return "intel_ioat_tbg2";
2105    if (vid == 0x8086 && did == 0x3433) return "intel_ioat_tbg3";
2106    if (vid == 0x8086 && did == 0x3575) return "intel_82830_hb";
2107    if (vid == 0x8086 && did == 0x3577) return "intel_82830_cgc";
2108    if (vid == 0x8086 && did == 0x358c) return "intel_82854_hb";
2109    if (vid == 0x8086 && did == 0x358e) return "intel_82854_ig";
2110    if (vid == 0x8086 && did == 0x3580) return "intel_82855gm_hb";
2111    if (vid == 0x8086 && did == 0x3582) return "intel_82855gm_ig";
2112    if (vid == 0x8086 && did == 0x3590) return "intel_e7520_mch";
2113    if (vid == 0x8086 && did == 0x3592) return "intel_e7320_mch";
2114    if (vid == 0x8086 && did == 0x3595) return "intel_mch_pa";
2115    if (vid == 0x8086 && did == 0x3596) return "intel_mch_pa1";
2116    if (vid == 0x8086 && did == 0x3597) return "intel_mch_pb";
2117    if (vid == 0x8086 && did == 0x3598) return "intel_mch_pb1";
2118    if (vid == 0x8086 && did == 0x3599) return "intel_mch_pc";
2119    if (vid == 0x8086 && did == 0x359a) return "intel_mch_pc1";
2120    if (vid == 0x8086 && did == 0x359e) return "intel_e7525_mch";
2121    if (vid == 0x8086 && did == 0x360c) return "intel_i7300_mch_err";
2122    if (vid == 0x8086 && did == 0x360f) return "intel_i7300_mch_fb0";
2123    if (vid == 0x8086 && did == 0x3610) return "intel_i7300_mch_fb1";
2124    if (vid == 0x8086 && did == 0x360b) return "intel_ioat_cnb";
2125    if (vid == 0x8086 && did == 0x360c) return "intel_fbd_cnb";
2126    if (vid == 0x8086 && did == 0x3710) return "intel_ioat_jsf0";
2127    if (vid == 0x8086 && did == 0x3711) return "intel_ioat_jsf1";
2128    if (vid == 0x8086 && did == 0x3712) return "intel_ioat_jsf2";
2129    if (vid == 0x8086 && did == 0x3713) return "intel_ioat_jsf3";
2130    if (vid == 0x8086 && did == 0x3714) return "intel_ioat_jsf4";
2131    if (vid == 0x8086 && did == 0x3715) return "intel_ioat_jsf5";
2132    if (vid == 0x8086 && did == 0x3716) return "intel_ioat_jsf6";
2133    if (vid == 0x8086 && did == 0x3717) return "intel_ioat_jsf7";
2134    if (vid == 0x8086 && did == 0x3718) return "intel_ioat_jsf8";
2135    if (vid == 0x8086 && did == 0x3719) return "intel_ioat_jsf9";
2136    if (vid == 0x8086 && did == 0x3a14) return "intel_ich10_0";
2137    if (vid == 0x8086 && did == 0x3a16) return "intel_ich10_1";
2138    if (vid == 0x8086 && did == 0x3a18) return "intel_ich10_2";
2139    if (vid == 0x8086 && did == 0x3a1a) return "intel_ich10_3";
2140    if (vid == 0x8086 && did == 0x3a30) return "intel_ich10_4";
2141    if (vid == 0x8086 && did == 0x3a60) return "intel_ich10_5";
2142    if (vid == 0x8086 && did == 0x3b00) return "intel_5_3400_series_lpc_min";
2143    if (vid == 0x8086 && did == 0x3b1f) return "intel_5_3400_series_lpc_max";
2144    if (vid == 0x8086 && did == 0x3c20) return "intel_ioat_snb0";
2145    if (vid == 0x8086 && did == 0x3c21) return "intel_ioat_snb1";
2146    if (vid == 0x8086 && did == 0x3c22) return "intel_ioat_snb2";
2147    if (vid == 0x8086 && did == 0x3c23) return "intel_ioat_snb3";
2148    if (vid == 0x8086 && did == 0x3c24) return "intel_ioat_snb4";
2149    if (vid == 0x8086 && did == 0x3c25) return "intel_ioat_snb5";
2150    if (vid == 0x8086 && did == 0x3c26) return "intel_ioat_snb6";
2151    if (vid == 0x8086 && did == 0x3c27) return "intel_ioat_snb7";
2152    if (vid == 0x8086 && did == 0x3c2e) return "intel_ioat_snb8";
2153    if (vid == 0x8086 && did == 0x3c2f) return "intel_ioat_snb9";
2154    if (vid == 0x8086 && did == 0x3c46) return "intel_unc_ha";
2155    if (vid == 0x8086 && did == 0x3cb0) return "intel_unc_imc0";
2156    if (vid == 0x8086 && did == 0x3cb1) return "intel_unc_imc1";
2157    if (vid == 0x8086 && did == 0x3cb4) return "intel_unc_imc2";
2158    if (vid == 0x8086 && did == 0x3cb5) return "intel_unc_imc3";
2159    if (vid == 0x8086 && did == 0x3c41) return "intel_unc_qpi0";
2160    if (vid == 0x8086 && did == 0x3c42) return "intel_unc_qpi1";
2161    if (vid == 0x8086 && did == 0x3c43) return "intel_unc_r2pcie";
2162    if (vid == 0x8086 && did == 0x3c44) return "intel_unc_r3qpi0";
2163    if (vid == 0x8086 && did == 0x3c45) return "intel_unc_r3qpi1";
2164    if (vid == 0x8086 && did == 0x3ce0) return "intel_jaketown_ubox";
2165    if (vid == 0x8086 && did == 0x402f) return "intel_ioat_snb";
2166    if (vid == 0x8086 && did == 0x65f0) return "intel_5100_16";
2167    if (vid == 0x8086 && did == 0x65f3) return "intel_5100_19";
2168    if (vid == 0x8086 && did == 0x65f5) return "intel_5100_21";
2169    if (vid == 0x8086 && did == 0x65f6) return "intel_5100_22";
2170    if (vid == 0x8086 && did == 0x4030) return "intel_5400_err";
2171    if (vid == 0x8086 && did == 0x4035) return "intel_5400_fbd0";
2172    if (vid == 0x8086 && did == 0x4036) return "intel_5400_fbd1";
2173    if (vid == 0x8086 && did == 0x65ff) return "intel_ioat_scnb";
2174    if (vid == 0x8086 && did == 0x5031) return "intel_ep80579_0";
2175    if (vid == 0x8086 && did == 0x5032) return "intel_ep80579_1";
2176    if (vid == 0x8086 && did == 0x7000) return "intel_82371sb_0";
2177    if (vid == 0x8086 && did == 0x7010) return "intel_82371sb_1";
2178    if (vid == 0x8086 && did == 0x7020) return "intel_82371sb_2";
2179    if (vid == 0x8086 && did == 0x7030) return "intel_82437vx";
2180    if (vid == 0x8086 && did == 0x7100) return "intel_82439tx";
2181    if (vid == 0x8086 && did == 0x7110) return "intel_82371ab_0";
2182    if (vid == 0x8086 && did == 0x7111) return "intel_82371ab";
2183    if (vid == 0x8086 && did == 0x7112) return "intel_82371ab_2";
2184    if (vid == 0x8086 && did == 0x7113) return "intel_82371ab_3";
2185    if (vid == 0x8086 && did == 0x7120) return "intel_82810_mc1";
2186    if (vid == 0x8086 && did == 0x7121) return "intel_82810_ig1";
2187    if (vid == 0x8086 && did == 0x7122) return "intel_82810_mc3";
2188    if (vid == 0x8086 && did == 0x7123) return "intel_82810_ig3";
2189    if (vid == 0x8086 && did == 0x7124) return "intel_82810e_mc";
2190    if (vid == 0x8086 && did == 0x7125) return "intel_82810e_ig";
2191    if (vid == 0x8086 && did == 0x7180) return "intel_82443lx_0";
2192    if (vid == 0x8086 && did == 0x7181) return "intel_82443lx_1";
2193    if (vid == 0x8086 && did == 0x7190) return "intel_82443bx_0";
2194    if (vid == 0x8086 && did == 0x7191) return "intel_82443bx_1";
2195    if (vid == 0x8086 && did == 0x7192) return "intel_82443bx_2";
2196    if (vid == 0x8086 && did == 0x7195) return "intel_440mx";
2197    if (vid == 0x8086 && did == 0x7196) return "intel_440mx_6";
2198    if (vid == 0x8086 && did == 0x7198) return "intel_82443mx_0";
2199    if (vid == 0x8086 && did == 0x7199) return "intel_82443mx_1";
2200    if (vid == 0x8086 && did == 0x719b) return "intel_82443mx_3";
2201    if (vid == 0x8086 && did == 0x71a0) return "intel_82443gx_0";
2202    if (vid == 0x8086 && did == 0x71a2) return "intel_82443gx_2";
2203    if (vid == 0x8086 && did == 0x7601) return "intel_82372fb_1";
2204    if (vid == 0x8086 && did == 0x8119) return "intel_sch_lpc";
2205    if (vid == 0x8086 && did == 0x811a) return "intel_sch_ide";
2206    if (vid == 0x8086 && did == 0x8186) return "intel_itc_lpc";
2207    if (vid == 0x8086 && did == 0x84c4) return "intel_82454gx";
2208    if (vid == 0x8086 && did == 0x84c5) return "intel_82450gx";
2209    if (vid == 0x8086 && did == 0x84ca) return "intel_82451nx";
2210    if (vid == 0x8086 && did == 0x84cb) return "intel_82454nx";
2211    if (vid == 0x8086 && did == 0x84ea) return "intel_84460gx";
2212    if (vid == 0x8086 && did == 0x8500) return "intel_ixp4xx";
2213    if (vid == 0x8086 && did == 0x9004) return "intel_ixp2800";
2214    if (vid == 0x8086 && did == 0xb152) return "intel_s21152bb";
2215    if (vid == 0x8686 && did == 0x1010) return "scalemp_vsmp_ctl";
2216    if (vid == 0x8e0e && did == 0x0291) return "computone_ip2ex";
2217    if (vid == 0x8e0e && did == 0x0302) return "computone_pg";
2218    if (vid == 0x9004 && did == 0x1078) return "adaptec_7810";
2219    if (vid == 0x9004 && did == 0x2178) return "adaptec_7821";
2220    if (vid == 0x9004 && did == 0x3860) return "adaptec_38602";
2221    if (vid == 0x9004 && did == 0x5078) return "adaptec_7850";
2222    if (vid == 0x9004 && did == 0x5578) return "adaptec_7855";
2223    if (vid == 0x9004 && did == 0x6038) return "adaptec_3860";
2224    if (vid == 0x9004 && did == 0x6075) return "adaptec_1480a";
2225    if (vid == 0x9004 && did == 0x6078) return "adaptec_7860";
2226    if (vid == 0x9004 && did == 0x6178) return "adaptec_7861";
2227    if (vid == 0x9004 && did == 0x7078) return "adaptec_7870";
2228    if (vid == 0x9004 && did == 0x7178) return "adaptec_7871";
2229    if (vid == 0x9004 && did == 0x7278) return "adaptec_7872";
2230    if (vid == 0x9004 && did == 0x7378) return "adaptec_7873";
2231    if (vid == 0x9004 && did == 0x7478) return "adaptec_7874";
2232    if (vid == 0x9004 && did == 0x7895) return "adaptec_7895";
2233    if (vid == 0x9004 && did == 0x8078) return "adaptec_7880";
2234    if (vid == 0x9004 && did == 0x8178) return "adaptec_7881";
2235    if (vid == 0x9004 && did == 0x8278) return "adaptec_7882";
2236    if (vid == 0x9004 && did == 0x8378) return "adaptec_7883";
2237    if (vid == 0x9004 && did == 0x8478) return "adaptec_7884";
2238    if (vid == 0x9004 && did == 0x8578) return "adaptec_7885";
2239    if (vid == 0x9004 && did == 0x8678) return "adaptec_7886";
2240    if (vid == 0x9004 && did == 0x8778) return "adaptec_7887";
2241    if (vid == 0x9004 && did == 0x8878) return "adaptec_7888";
2242    if (vid == 0x9005 && did == 0x0010) return "adaptec2_2940u2";
2243    if (vid == 0x9005 && did == 0x0011) return "adaptec2_2930u2";
2244    if (vid == 0x9005 && did == 0x0013) return "adaptec2_7890b";
2245    if (vid == 0x9005 && did == 0x001f) return "adaptec2_7890";
2246    if (vid == 0x9005 && did == 0x0050) return "adaptec2_3940u2";
2247    if (vid == 0x9005 && did == 0x0051) return "adaptec2_3950u2d";
2248    if (vid == 0x9005 && did == 0x005f) return "adaptec2_7896";
2249    if (vid == 0x9005 && did == 0x0080) return "adaptec2_7892a";
2250    if (vid == 0x9005 && did == 0x0081) return "adaptec2_7892b";
2251    if (vid == 0x9005 && did == 0x0083) return "adaptec2_7892d";
2252    if (vid == 0x9005 && did == 0x008f) return "adaptec2_7892p";
2253    if (vid == 0x9005 && did == 0x00c0) return "adaptec2_7899a";
2254    if (vid == 0x9005 && did == 0x00c1) return "adaptec2_7899b";
2255    if (vid == 0x9005 && did == 0x00c3) return "adaptec2_7899d";
2256    if (vid == 0x9005 && did == 0x00cf) return "adaptec2_7899p";
2257    if (vid == 0x9005 && did == 0x0500) return "adaptec2_obsidian";
2258    if (vid == 0x9005 && did == 0x0503) return "adaptec2_scamp";
2259    if (vid == 0x9412 && did == 0x6565) return "holtek_6565";
2260    if (vid == 0x9710 && did == 0x9705) return "netmos_9705";
2261    if (vid == 0x9710 && did == 0x9715) return "netmos_9715";
2262    if (vid == 0x9710 && did == 0x9735) return "netmos_9735";
2263    if (vid == 0x9710 && did == 0x9745) return "netmos_9745";
2264    if (vid == 0x9710 && did == 0x9755) return "netmos_9755";
2265    if (vid == 0x9710 && did == 0x9805) return "netmos_9805";
2266    if (vid == 0x9710 && did == 0x9815) return "netmos_9815";
2267    if (vid == 0x9710 && did == 0x9835) return "netmos_9835";
2268    if (vid == 0x9710 && did == 0x9845) return "netmos_9845";
2269    if (vid == 0x9710 && did == 0x9855) return "netmos_9855";
2270    if (vid == 0x9710 && did == 0x9865) return "netmos_9865";
2271    if (vid == 0x9710 && did == 0x9900) return "netmos_9900";
2272    if (vid == 0x9710 && did == 0x9901) return "netmos_9901";
2273    if (vid == 0x9710 && did == 0x9904) return "netmos_9904";
2274    if (vid == 0x9710 && did == 0x9912) return "netmos_9912";
2275    if (vid == 0x9710 && did == 0x9922) return "netmos_9922";
2276    if (vid == 0xd161 && did == 0xb410) return "digium_hfc4s";
2277    if (vid == 0xe159 && did == 0x0001) return "tigerjet_300";
2278    if (vid == 0xe159 && did == 0x0002) return "tigerjet_100";
2279    if (vid == 0xea60 && did == 0x9896) return "rme_digi32";
2280    if (vid == 0xea60 && did == 0x9897) return "rme_digi32_pro";
2281    if (vid == 0xea60 && did == 0x9898) return "rme_digi32_8";
2282    if (vid == 0x5853 && did == 0x0001) return "xen_platform";
2283    if (vid == 0x15ad && did == 0x0790) return "vmware_pci_bridge";
2284    if (vid == 0x15ad && did == 0x07a0) return "vmware_pci_expres";
2285    if (vid == 0x15ad && did == 0x0770) return "vmware_pci_to_usb";
2286    if (vid == 0x15ad && did == 0x0778) return "vmware_usb_to_pll";
2287    if (vid == 0x15ad && did == 0x1977) return "vmware_vhda_audio";
2288    if (vid == 0x15ad && did == 0x1975) return "vmware_vhda_codec";
2289    if (vid == 0x15ad && did == 0x0740) return "vmware_vmci_bus";
2290    if (vid == 0x15ad && did == 0x0801) return "vmware_vmemctrl";
2291    if (vid == 0x15ad && did == 0x0720) return "vmware_vmxnet";
2292    if (vid == 0x15ad && did == 0x07b0) return "vmware_vmxnet3";
2293    if (vid == 0x15ad && did == 0x0710) return "vmware_vsvga";
2294    if (vid == 0x15ad && did == 0x0405) return "vmware_vsvga2";
2295    return "Unknown device ID.";
2296}
2297