Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
/*
   This file is auto-generated from the drm_pciids.txt in the DRM CVS
   Please contact dri-devel@lists.sf.net to add new cards to this list
*/
#define radeon_PCI_IDS \
	{0x1002, 0x3150, CHIP_RV380|RADEON_IS_MOBILITY, "ATI Radeon Mobility X600 M24"}, \
	{0x1002, 0x3152, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Radeon Mobility X300 M24"}, \
	{0x1002, 0x3154, CHIP_RV380|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI FireGL M24 GL"}, \
	{0x1002, 0x3E50, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI Radeon RV380 X600"}, \
	{0x1002, 0x3E54, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI FireGL V3200 RV380"}, \
	{0x1002, 0x4136, CHIP_RS100|RADEON_IS_IGP, "ATI Radeon RS100 IGP 320"}, \
	{0x1002, 0x4137, CHIP_RS200|RADEON_IS_IGP, "ATI Radeon RS200 IGP 340"}, \
	{0x1002, 0x4144, CHIP_R300, "ATI Radeon AD 9500"}, \
	{0x1002, 0x4145, CHIP_R300, "ATI Radeon AE 9700 Pro"}, \
	{0x1002, 0x4146, CHIP_R300, "ATI Radeon AF R300 9600TX"}, \
	{0x1002, 0x4147, CHIP_R300, "ATI FireGL AG Z1"}, \
	{0x1002, 0x4148, CHIP_R350, "ATI Radeon AH 9800 SE"}, \
	{0x1002, 0x4149, CHIP_R350, "ATI Radeon AI 9800"}, \
	{0x1002, 0x414A, CHIP_R350, "ATI Radeon AJ 9800"}, \
	{0x1002, 0x414B, CHIP_R350, "ATI FireGL AK X2"}, \
	{0x1002, 0x4150, CHIP_RV350, "ATI Radeon AP 9600"}, \
	{0x1002, 0x4151, CHIP_RV350, "ATI Radeon AQ 9600 SE"}, \
	{0x1002, 0x4152, CHIP_RV350, "ATI Radeon AR 9600 XT"}, \
	{0x1002, 0x4153, CHIP_RV350, "ATI Radeon AS 9550"}, \
	{0x1002, 0x4154, CHIP_RV350, "ATI FireGL AT T2"}, \
	{0x1002, 0x4155, CHIP_RV350, "ATI Radeon 9650"}, \
	{0x1002, 0x4156, CHIP_RV350, "ATI FireGL AV RV360 T2"}, \
	{0x1002, 0x4237, CHIP_RS200|RADEON_IS_IGP, "ATI Radeon RS250 IGP"}, \
	{0x1002, 0x4242, CHIP_R200, "ATI Radeon BB R200 AIW 8500DV"}, \
	{0x1002, 0x4243, CHIP_R200, "ATI Radeon BC R200"}, \
	{0x1002, 0x4336, CHIP_RS100|RADEON_IS_IGP|RADEON_IS_MOBILITY, "ATI Radeon RS100 Mobility U1"}, \
	{0x1002, 0x4337, CHIP_RS200|RADEON_IS_IGP|RADEON_IS_MOBILITY, "ATI Radeon RS200 Mobility IGP 340M"}, \
	{0x1002, 0x4437, CHIP_RS200|RADEON_IS_IGP|RADEON_IS_MOBILITY, "ATI Radeon RS250 Mobility IGP"}, \
	{0x1002, 0x4966, CHIP_RV250, "ATI Radeon If RV250 9000"}, \
	{0x1002, 0x4967, CHIP_RV250, "ATI Radeon Ig RV250 9000"}, \
	{0x1002, 0x4A48, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JH R420 X800"}, \
	{0x1002, 0x4A49, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JI R420 X800 Pro"}, \
	{0x1002, 0x4A4A, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JJ R420 X800 SE"}, \
	{0x1002, 0x4A4B, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JK R420 X800 XT"}, \
	{0x1002, 0x4A4C, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JL R420 X800"}, \
	{0x1002, 0x4A4D, CHIP_R420|RADEON_NEW_MEMMAP, "ATI FireGL JM X3-256"}, \
	{0x1002, 0x4A4E, CHIP_R420|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Radeon JN R420 Mobility M18"}, \
	{0x1002, 0x4A4F, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JO R420 X800 SE"}, \
	{0x1002, 0x4A50, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JP R420 X800 XT PE"}, \
	{0x1002, 0x4A54, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon JT R420 AIW X800 VE"}, \
	{0x1002, 0x4B49, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon R481 X850 XT"}, \
	{0x1002, 0x4B4A, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon R481 X850 SE"}, \
	{0x1002, 0x4B4B, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon R481 X850 Pro"}, \
	{0x1002, 0x4B4C, CHIP_R420|RADEON_NEW_MEMMAP, "ATI Radeon R481 X850 XT PE"}, \
	{0x1002, 0x4C57, CHIP_RV200|RADEON_IS_MOBILITY, "ATI Radeon LW RV200 Mobility 7500 M7"}, \
	{0x1002, 0x4C58, CHIP_RV200|RADEON_IS_MOBILITY, "ATI Radeon LX RV200 Mobility FireGL 7800 M7"}, \
	{0x1002, 0x4C59, CHIP_RV100|RADEON_IS_MOBILITY, "ATI Radeon LY RV100 Mobility M6"}, \
	{0x1002, 0x4C5A, CHIP_RV100|RADEON_IS_MOBILITY, "ATI Radeon LZ RV100 Mobility M6"}, \
	{0x1002, 0x4C64, CHIP_RV250|RADEON_IS_MOBILITY, "ATI Radeon Ld RV250 Mobility 9000 M9"}, \
	{0x1002, 0x4C66, CHIP_RV250, "ATI Radeon Lf RV250 Mobility 9000 M9 / FireMV 2400 PCI"}, \
	{0x1002, 0x4C67, CHIP_RV250|RADEON_IS_MOBILITY, "ATI Radeon Lg RV250 Mobility 9000 M9"}, \
	{0x1002, 0x4E44, CHIP_R300, "ATI Radeon ND R300 9700 Pro"}, \
	{0x1002, 0x4E45, CHIP_R300, "ATI Radeon NE R300 9500 Pro / 9700"}, \
	{0x1002, 0x4E46, CHIP_R300, "ATI Radeon NF R300 9600TX"}, \
	{0x1002, 0x4E47, CHIP_R300, "ATI Radeon NG R300 FireGL X1"}, \
	{0x1002, 0x4E48, CHIP_R350, "ATI Radeon NH R350 9800 Pro"}, \
	{0x1002, 0x4E49, CHIP_R350, "ATI Radeon NI R350 9800"}, \
	{0x1002, 0x4E4A, CHIP_R350, "ATI Radeon NJ R360 9800 XT"}, \
	{0x1002, 0x4E4B, CHIP_R350, "ATI FireGL NK X2"}, \
	{0x1002, 0x4E50, CHIP_RV350|RADEON_IS_MOBILITY, "ATI Radeon RV350 Mobility 9600 M10 NP"}, \
	{0x1002, 0x4E51, CHIP_RV350|RADEON_IS_MOBILITY, "ATI Radeon RV350 Mobility 9600 M10 NQ"}, \
	{0x1002, 0x4E52, CHIP_RV350|RADEON_IS_MOBILITY, "ATI Radeon RV350 Mobility 9600 M11 NR"}, \
	{0x1002, 0x4E53, CHIP_RV350|RADEON_IS_MOBILITY, "ATI Radeon RV350 Mobility 9600 M10 NS"}, \
	{0x1002, 0x4E54, CHIP_RV350|RADEON_IS_MOBILITY, "ATI FireGL T2/T2e"}, \
	{0x1002, 0x4E56, CHIP_RV350|RADEON_IS_MOBILITY, "ATI Radeon Mobility 9550"}, \
	{0x1002, 0x5144, CHIP_R100|RADEON_SINGLE_CRTC, "ATI Radeon QD R100"}, \
	{0x1002, 0x5145, CHIP_R100|RADEON_SINGLE_CRTC, "ATI Radeon QE R100"}, \
	{0x1002, 0x5146, CHIP_R100|RADEON_SINGLE_CRTC, "ATI Radeon QF R100"}, \
	{0x1002, 0x5147, CHIP_R100|RADEON_SINGLE_CRTC, "ATI Radeon QG R100"}, \
	{0x1002, 0x5148, CHIP_R200, "ATI Radeon QH R200 8500"}, \
	{0x1002, 0x514C, CHIP_R200, "ATI Radeon QL R200 8500 LE"}, \
	{0x1002, 0x514D, CHIP_R200, "ATI Radeon QM R200 9100"}, \
	{0x1002, 0x5157, CHIP_RV200, "ATI Radeon QW RV200 7500"}, \
	{0x1002, 0x5158, CHIP_RV200, "ATI Radeon QX RV200 7500"}, \
	{0x1002, 0x5159, CHIP_RV100, "ATI Radeon QY RV100 7000/VE"}, \
	{0x1002, 0x515A, CHIP_RV100, "ATI Radeon QZ RV100 7000/VE"}, \
	{0x1002, 0x515E, CHIP_RV100, "ATI ES1000 RN50"}, \
	{0x1002, 0x5460, CHIP_RV380|RADEON_IS_MOBILITY, "ATI Radeon Mobility X300 M22"}, \
	{0x1002, 0x5462, CHIP_RV380|RADEON_IS_MOBILITY, "ATI Radeon Mobility X600 SE M24C"}, \
	{0x1002, 0x5464, CHIP_RV380|RADEON_IS_MOBILITY, "ATI FireGL M22 GL 5464"}, \
	{0x1002, 0x5548, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R423 X800"}, \
	{0x1002, 0x5549, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R423 X800 Pro"}, \
	{0x1002, 0x554A, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R423 X800 XT PE"}, \
	{0x1002, 0x554B, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R423 X800 SE"}, \
	{0x1002, 0x554C, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R430 X800 XTP"}, \
	{0x1002, 0x554D, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R430 X800 XL"}, \
	{0x1002, 0x554E, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R430 X800 SE"}, \
	{0x1002, 0x554F, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R430 X800"}, \
	{0x1002, 0x5550, CHIP_R423|RADEON_NEW_MEMMAP, "ATI FireGL V7100 R423"}, \
	{0x1002, 0x5551, CHIP_R423|RADEON_NEW_MEMMAP, "ATI FireGL V5100 R423 UQ"}, \
	{0x1002, 0x5552, CHIP_R423|RADEON_NEW_MEMMAP, "ATI FireGL unknown R423 UR"}, \
	{0x1002, 0x5554, CHIP_R423|RADEON_NEW_MEMMAP, "ATI FireGL unknown R423 UT"}, \
	{0x1002, 0x564A, CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5000 M26"}, \
	{0x1002, 0x564B, CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5000 M26"}, \
	{0x1002, 0x564F, CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Radeon Mobility X700 XL M26"}, \
	{0x1002, 0x5652, CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Radeon Mobility X700 M26"}, \
	{0x1002, 0x5653, CHIP_RV410|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Radeon Mobility X700 M26"}, \
	{0x1002, 0x5657, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI Radeon X550XTX"}, \
	{0x1002, 0x5834, CHIP_RS300|RADEON_IS_IGP, "ATI Radeon RS300 9100 IGP"}, \
	{0x1002, 0x5835, CHIP_RS300|RADEON_IS_IGP|RADEON_IS_MOBILITY, "ATI Radeon RS300 Mobility IGP"}, \
	{0x1002, 0x5954, CHIP_RS480|RADEON_IS_IGP|RADEON_IS_IGPGART, "ATI RS480 XPRESS 200G"}, \
	{0x1002, 0x5955, CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART, "ATI Radeon XPRESS 200M 5955"}, \
	{0x1002, 0x5974, CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART, "ATI Radeon RS482 XPRESS 200"}, \
	{0x1002, 0x5975, CHIP_RS480|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART, "ATI Radeon RS485 XPRESS 1100 IGP"}, \
	{0x1002, 0x5960, CHIP_RV280, "ATI Radeon RV280 9250"}, \
	{0x1002, 0x5961, CHIP_RV280, "ATI Radeon RV280 9200"}, \
	{0x1002, 0x5962, CHIP_RV280, "ATI Radeon RV280 9200"}, \
	{0x1002, 0x5964, CHIP_RV280, "ATI Radeon RV280 9200 SE"}, \
	{0x1002, 0x5965, CHIP_RV280, "ATI FireMV 2200 PCI"}, \
	{0x1002, 0x5969, CHIP_RV100, "ATI ES1000 RN50"}, \
	{0x1002, 0x5a41, CHIP_RS400|RADEON_IS_IGP|RADEON_IS_IGPGART, "ATI Radeon XPRESS 200 5A41 (PCIE)"}, \
	{0x1002, 0x5a42, CHIP_RS400|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART, "ATI Radeon XPRESS 200M 5A42 (PCIE)"}, \
	{0x1002, 0x5a61, CHIP_RS400|RADEON_IS_IGP|RADEON_IS_IGPGART, "ATI Radeon RC410 XPRESS 200"}, \
	{0x1002, 0x5a62, CHIP_RS400|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_IS_IGPGART, "ATI Radeon RC410 XPRESS 200M"}, \
	{0x1002, 0x5b60, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI Radeon RV370 X300 SE"}, \
	{0x1002, 0x5b62, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI Radeon RV370 X600 Pro"}, \
	{0x1002, 0x5b63, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI Radeon RV370 X550"}, \
	{0x1002, 0x5b64, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI FireGL V3100 (RV370) 5B64"}, \
	{0x1002, 0x5b65, CHIP_RV380|RADEON_NEW_MEMMAP, "ATI FireMV 2200 PCIE (RV370) 5B65"}, \
	{0x1002, 0x5c61, CHIP_RV280|RADEON_IS_MOBILITY, "ATI Radeon RV280 Mobility"}, \
	{0x1002, 0x5c63, CHIP_RV280|RADEON_IS_MOBILITY, "ATI Radeon RV280 Mobility"}, \
	{0x1002, 0x5d48, CHIP_R423|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X800 XT M28"}, \
	{0x1002, 0x5d49, CHIP_R423|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5100 M28"}, \
	{0x1002, 0x5d4a, CHIP_R423|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X800 M28"}, \
	{0x1002, 0x5d4c, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R480 X850"}, \
	{0x1002, 0x5d4d, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R480 X850 XT PE"}, \
	{0x1002, 0x5d4e, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R480 X850 SE"}, \
	{0x1002, 0x5d4f, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R480 X850 Pro"}, \
	{0x1002, 0x5d50, CHIP_R423|RADEON_NEW_MEMMAP, "ATI unknown Radeon / FireGL R480"}, \
	{0x1002, 0x5d52, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R480 X850 XT"}, \
	{0x1002, 0x5d57, CHIP_R423|RADEON_NEW_MEMMAP, "ATI Radeon R423 X800 XT"}, \
	{0x1002, 0x5e48, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI FireGL V5000 RV410"}, \
	{0x1002, 0x5e4a, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI Radeon RV410 X700 XT"}, \
	{0x1002, 0x5e4b, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI Radeon RV410 X700 Pro"}, \
	{0x1002, 0x5e4c, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI Radeon RV410 X700 SE"}, \
	{0x1002, 0x5e4d, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI Radeon RV410 X700"}, \
	{0x1002, 0x5e4f, CHIP_RV410|RADEON_NEW_MEMMAP, "ATI Radeon RV410 X700 SE"}, \
	{0x1002, 0x6880, CHIP_CYPRESS|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Cypress"}, \
	{0x1002, 0x6888, CHIP_CYPRESS|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x6889, CHIP_CYPRESS|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x688A, CHIP_CYPRESS|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x6898, CHIP_CYPRESS|RADEON_NEW_MEMMAP, "ATI Radeon HD 5800"}, \
	{0x1002, 0x6899, CHIP_CYPRESS|RADEON_NEW_MEMMAP, "ATI Radeon HD 5800"}, \
	{0x1002, 0x689c, CHIP_HEMLOCK|RADEON_NEW_MEMMAP, "ATI Radeon HD 5900"}, \
	{0x1002, 0x689d, CHIP_HEMLOCK|RADEON_NEW_MEMMAP, "ATI Radeon HD 5900"}, \
	{0x1002, 0x689e, CHIP_CYPRESS|RADEON_NEW_MEMMAP, "ATI Radeon HD 5800"}, \
	{0x1002, 0x68a0, CHIP_JUNIPER|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5800"}, \
	{0x1002, 0x68a1, CHIP_JUNIPER|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5800"}, \
	{0x1002, 0x68a8, CHIP_JUNIPER|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x68a9, CHIP_JUNIPER|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x68b0, CHIP_JUNIPER|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5800"}, \
	{0x1002, 0x68b8, CHIP_JUNIPER|RADEON_NEW_MEMMAP, "ATI Radeon HD 5700"}, \
	{0x1002, 0x68b9, CHIP_JUNIPER|RADEON_NEW_MEMMAP, "ATI Radeon HD 5700"}, \
	{0x1002, 0x68be, CHIP_JUNIPER|RADEON_NEW_MEMMAP, "ATI Radeon HD 5700"}, \
	{0x1002, 0x68c0, CHIP_REDWOOD|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5000"}, \
	{0x1002, 0x68c1, CHIP_REDWOOD|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5000"}, \
	{0x1002, 0x68c8, CHIP_REDWOOD|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x68c9, CHIP_REDWOOD|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x68d8, CHIP_REDWOOD|RADEON_NEW_MEMMAP, "ATI Radeon HD 5670"}, \
	{0x1002, 0x68d9, CHIP_REDWOOD|RADEON_NEW_MEMMAP, "ATI Radeon HD 5570"}, \
	{0x1002, 0x68da, CHIP_REDWOOD|RADEON_NEW_MEMMAP, "ATI Radeon HD 5500"}, \
	{0x1002, 0x68de, CHIP_REDWOOD|RADEON_NEW_MEMMAP, "ATI Redwood"}, \
	{0x1002, 0x68e0, CHIP_CEDAR|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5000"}, \
	{0x1002, 0x68e1, CHIP_CEDAR|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 5000"}, \
	{0x1002, 0x68e4, CHIP_CEDAR|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Cedar"}, \
	{0x1002, 0x68e5, CHIP_CEDAR|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Cedar"}, \
	{0x1002, 0x68e8, CHIP_CEDAR|RADEON_NEW_MEMMAP, "ATI Cedar"}, \
	{0x1002, 0x68e9, CHIP_CEDAR|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x68f1, CHIP_CEDAR|RADEON_NEW_MEMMAP, "ATI FirePro (FireGL)"}, \
	{0x1002, 0x68f8, CHIP_CEDAR|RADEON_NEW_MEMMAP, "ATI Cedar"}, \
	{0x1002, 0x68f9, CHIP_CEDAR|RADEON_NEW_MEMMAP, "ATI Radeon HD 5450"}, \
	{0x1002, 0x68fe, CHIP_CEDAR|RADEON_NEW_MEMMAP, "ATI Cedar"}, \
	{0x1002, 0x7100, CHIP_R520|RADEON_NEW_MEMMAP, "ATI Radeon X1800"}, \
	{0x1002, 0x7101, CHIP_R520|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1800 XT"}, \
	{0x1002, 0x7102, CHIP_R520|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1800"}, \
	{0x1002, 0x7103, CHIP_R520|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V7200"}, \
	{0x1002, 0x7104, CHIP_R520|RADEON_NEW_MEMMAP, "ATI FireGL V7200"}, \
	{0x1002, 0x7105, CHIP_R520|RADEON_NEW_MEMMAP, "ATI FireGL V5300"}, \
	{0x1002, 0x7106, CHIP_R520|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V7100"}, \
	{0x1002, 0x7108, CHIP_R520|RADEON_NEW_MEMMAP, "ATI Radeon X1800"}, \
	{0x1002, 0x7109, CHIP_R520|RADEON_NEW_MEMMAP, "ATI Radeon X1800"}, \
	{0x1002, 0x710A, CHIP_R520|RADEON_NEW_MEMMAP, "ATI Radeon X1800"}, \
	{0x1002, 0x710B, CHIP_R520|RADEON_NEW_MEMMAP, "ATI Radeon X1800"}, \
	{0x1002, 0x710C, CHIP_R520|RADEON_NEW_MEMMAP, "ATI Radeon X1800"}, \
	{0x1002, 0x710E, CHIP_R520|RADEON_NEW_MEMMAP, "ATI FireGL V7300"}, \
	{0x1002, 0x710F, CHIP_R520|RADEON_NEW_MEMMAP, "ATI FireGL V7350"}, \
	{0x1002, 0x7140, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1600"}, \
	{0x1002, 0x7141, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI RV505"}, \
	{0x1002, 0x7142, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300/X1550"}, \
	{0x1002, 0x7143, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1550"}, \
	{0x1002, 0x7144, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI M54-GL"}, \
	{0x1002, 0x7145, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1400"}, \
	{0x1002, 0x7146, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300/X1550"}, \
	{0x1002, 0x7147, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1550 64-bit"}, \
	{0x1002, 0x7149, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1300"}, \
	{0x1002, 0x714A, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1300"}, \
	{0x1002, 0x714B, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1300"}, \
	{0x1002, 0x714C, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1300"}, \
	{0x1002, 0x714D, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300"}, \
	{0x1002, 0x714E, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300"}, \
	{0x1002, 0x714F, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI RV505"}, \
	{0x1002, 0x7151, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI RV505"}, \
	{0x1002, 0x7152, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI FireGL V3300"}, \
	{0x1002, 0x7153, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI FireGL V3350"}, \
	{0x1002, 0x715E, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300"}, \
	{0x1002, 0x715F, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1550 64-bit"}, \
	{0x1002, 0x7180, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300/X1550"}, \
	{0x1002, 0x7181, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1600"}, \
	{0x1002, 0x7183, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300/X1550"}, \
	{0x1002, 0x7186, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1450"}, \
	{0x1002, 0x7187, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300/X1550"}, \
	{0x1002, 0x7188, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X2300"}, \
	{0x1002, 0x718A, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X2300"}, \
	{0x1002, 0x718B, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1350"}, \
	{0x1002, 0x718C, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1350"}, \
	{0x1002, 0x718D, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1450"}, \
	{0x1002, 0x718F, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1300"}, \
	{0x1002, 0x7193, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1550"}, \
	{0x1002, 0x7196, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1350"}, \
	{0x1002, 0x719B, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI FireMV 2250"}, \
	{0x1002, 0x719F, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI Radeon X1550 64-bit"}, \
	{0x1002, 0x71C0, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1600"}, \
	{0x1002, 0x71C1, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1650"}, \
	{0x1002, 0x71C2, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1600"}, \
	{0x1002, 0x71C3, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1600"}, \
	{0x1002, 0x71C4, CHIP_RV530|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5200"}, \
	{0x1002, 0x71C5, CHIP_RV530|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1600"}, \
	{0x1002, 0x71C6, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1650"}, \
	{0x1002, 0x71C7, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1650"}, \
	{0x1002, 0x71CD, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1600"}, \
	{0x1002, 0x71CE, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI Radeon X1300 XT/X1600 Pro"}, \
	{0x1002, 0x71D2, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI FireGL V3400"}, \
	{0x1002, 0x71D4, CHIP_RV530|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5250"}, \
	{0x1002, 0x71D5, CHIP_RV530|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1700"}, \
	{0x1002, 0x71D6, CHIP_RV530|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1700 XT"}, \
	{0x1002, 0x71DA, CHIP_RV530|RADEON_NEW_MEMMAP, "ATI FireGL V5200"}, \
	{0x1002, 0x71DE, CHIP_RV530|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1700"}, \
	{0x1002, 0x7200, CHIP_RV515|RADEON_NEW_MEMMAP, "ATI  Radeon X2300HD"}, \
	{0x1002, 0x7210, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 2300"}, \
	{0x1002, 0x7211, CHIP_RV515|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 2300"}, \
	{0x1002, 0x7240, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1950"}, \
	{0x1002, 0x7243, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x7244, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1950"}, \
	{0x1002, 0x7245, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x7246, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x7247, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x7248, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x7249, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x724A, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x724B, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x724C, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x724D, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x724E, CHIP_R580|RADEON_NEW_MEMMAP, "ATI AMD Stream Processor"}, \
	{0x1002, 0x724F, CHIP_R580|RADEON_NEW_MEMMAP, "ATI Radeon X1900"}, \
	{0x1002, 0x7280, CHIP_RV570|RADEON_NEW_MEMMAP, "ATI Radeon X1950"}, \
	{0x1002, 0x7281, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI RV560"}, \
	{0x1002, 0x7283, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI RV560"}, \
	{0x1002, 0x7284, CHIP_R580|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon X1900"}, \
	{0x1002, 0x7287, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI RV560"}, \
	{0x1002, 0x7288, CHIP_RV570|RADEON_NEW_MEMMAP, "ATI Radeon X1950 GT"}, \
	{0x1002, 0x7289, CHIP_RV570|RADEON_NEW_MEMMAP, "ATI RV570"}, \
	{0x1002, 0x728B, CHIP_RV570|RADEON_NEW_MEMMAP, "ATI RV570"}, \
	{0x1002, 0x728C, CHIP_RV570|RADEON_NEW_MEMMAP, "ATI ATI FireGL V7400"}, \
	{0x1002, 0x7290, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI RV560"}, \
	{0x1002, 0x7291, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI Radeon X1650"}, \
	{0x1002, 0x7293, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI Radeon X1650"}, \
	{0x1002, 0x7297, CHIP_RV560|RADEON_NEW_MEMMAP, "ATI RV560"}, \
	{0x1002, 0x7834, CHIP_RS300|RADEON_IS_IGP|RADEON_NEW_MEMMAP, "ATI Radeon RS350 9000/9100 IGP"}, \
	{0x1002, 0x7835, CHIP_RS300|RADEON_IS_IGP|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Radeon RS350 Mobility IGP"}, \
	{0x1002, 0x793f, CHIP_RS600|RADEON_IS_IGP|RADEON_NEW_MEMMAP, "ATI Radeon X1200"}, \
	{0x1002, 0x7941, CHIP_RS600|RADEON_IS_IGP|RADEON_NEW_MEMMAP, "ATI Radeon X1200"}, \
	{0x1002, 0x7942, CHIP_RS600|RADEON_IS_IGP|RADEON_NEW_MEMMAP, "ATI Radeon X1200"}, \
	{0x1002, 0x791e, CHIP_RS690|RADEON_IS_IGP|RADEON_NEW_MEMMAP|RADEON_IS_IGPGART, "ATI Radeon RS690 X1250 IGP"}, \
	{0x1002, 0x791f, CHIP_RS690|RADEON_IS_IGP|RADEON_NEW_MEMMAP|RADEON_IS_IGPGART, "ATI Radeon RS690 X1270 IGP"}, \
	{0x1002, 0x796c, CHIP_RS740|RADEON_IS_IGP|RADEON_NEW_MEMMAP|RADEON_IS_IGPGART, "ATI Radeon RS740 HD2100 IGP"}, \
	{0x1002, 0x796d, CHIP_RS740|RADEON_IS_IGP|RADEON_NEW_MEMMAP|RADEON_IS_IGPGART, "ATI Radeon RS740 HD2100 IGP"}, \
	{0x1002, 0x796e, CHIP_RS740|RADEON_IS_IGP|RADEON_NEW_MEMMAP|RADEON_IS_IGPGART, "ATI Radeon RS740 HD2100 IGP"}, \
	{0x1002, 0x796f, CHIP_RS740|RADEON_IS_IGP|RADEON_NEW_MEMMAP|RADEON_IS_IGPGART, "ATI Radeon RS740 HD2100 IGP"}, \
	{0x1002, 0x9400, CHIP_R600|RADEON_NEW_MEMMAP, "ATI Radeon HD 2900 XT"}, \
	{0x1002, 0x9401, CHIP_R600|RADEON_NEW_MEMMAP, "ATI Radeon HD 2900 XT"}, \
	{0x1002, 0x9402, CHIP_R600|RADEON_NEW_MEMMAP, "ATI Radeon HD 2900 XT"}, \
	{0x1002, 0x9403, CHIP_R600|RADEON_NEW_MEMMAP, "ATI Radeon HD 2900 Pro"}, \
	{0x1002, 0x9405, CHIP_R600|RADEON_NEW_MEMMAP, "ATI Radeon HD 2900 GT"}, \
	{0x1002, 0x940A, CHIP_R600|RADEON_NEW_MEMMAP, "ATI FireGL V8650"}, \
	{0x1002, 0x940B, CHIP_R600|RADEON_NEW_MEMMAP, "ATI FireGL V8600"}, \
	{0x1002, 0x940F, CHIP_R600|RADEON_NEW_MEMMAP, "ATI FireGL V7600"}, \
	{0x1002, 0x94C0, CHIP_RV610|RADEON_NEW_MEMMAP, "RV610"}, \
	{0x1002, 0x94C1, CHIP_RV610|RADEON_NEW_MEMMAP, "Radeon HD 2400 XT"}, \
	{0x1002, 0x94C3, CHIP_RV610|RADEON_NEW_MEMMAP, "Radeon HD 2400 Pro"}, \
	{0x1002, 0x94C4, CHIP_RV610|RADEON_NEW_MEMMAP, "Radeon HD 2400 PRO AGP"}, \
	{0x1002, 0x94C5, CHIP_RV610|RADEON_NEW_MEMMAP, "FireGL V4000"}, \
	{0x1002, 0x94C6, CHIP_RV610|RADEON_NEW_MEMMAP, "RV610"}, \
	{0x1002, 0x94C7, CHIP_RV610|RADEON_NEW_MEMMAP, "ATI Radeon HD 2350"}, \
	{0x1002, 0x94C8, CHIP_RV610|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 2400 XT"}, \
	{0x1002, 0x94C9, CHIP_RV610|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 2400"}, \
	{0x1002, 0x94CB, CHIP_RV610|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI RADEON E2400"}, \
	{0x1002, 0x94CC, CHIP_RV610|RADEON_NEW_MEMMAP, "ATI RV610"}, \
	{0x1002, 0x94CD, CHIP_RV610|RADEON_NEW_MEMMAP, "ATI FireMV 2260"}, \
	{0x1002, 0x9500, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI RV670"}, \
	{0x1002, 0x9501, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI Radeon HD3870"}, \
	{0x1002, 0x9504, CHIP_RV670|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3850"}, \
	{0x1002, 0x9505, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI Radeon HD3850"}, \
	{0x1002, 0x9506, CHIP_RV670|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3850 X2"}, \
	{0x1002, 0x9507, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI RV670"}, \
	{0x1002, 0x9508, CHIP_RV670|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3870"}, \
	{0x1002, 0x9509, CHIP_RV670|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3870 X2"}, \
	{0x1002, 0x950F, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI Radeon HD3870 X2"}, \
	{0x1002, 0x9511, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI FireGL V7700"}, \
	{0x1002, 0x9515, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI Radeon HD3850"}, \
	{0x1002, 0x9517, CHIP_RV670|RADEON_NEW_MEMMAP, "ATI Radeon HD3690"}, \
	{0x1002, 0x9519, CHIP_RV670|RADEON_NEW_MEMMAP, "AMD Firestream 9170"}, \
	{0x1002, 0x9580, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI RV630"}, \
	{0x1002, 0x9581, CHIP_RV630|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 2600"}, \
	{0x1002, 0x9583, CHIP_RV630|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 2600 XT"}, \
	{0x1002, 0x9586, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI Radeon HD 2600 XT AGP"}, \
	{0x1002, 0x9587, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI Radeon HD 2600 Pro AGP"}, \
	{0x1002, 0x9588, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI Radeon HD 2600 XT"}, \
	{0x1002, 0x9589, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI Radeon HD 2600 Pro"}, \
	{0x1002, 0x958A, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI Gemini RV630"}, \
	{0x1002, 0x958B, CHIP_RV630|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Gemini Mobility Radeon HD 2600 XT"}, \
	{0x1002, 0x958C, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI FireGL V5600"}, \
	{0x1002, 0x958D, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI FireGL V3600"}, \
	{0x1002, 0x958E, CHIP_RV630|RADEON_NEW_MEMMAP, "ATI Radeon HD 2600 LE"}, \
	{0x1002, 0x958F, CHIP_RV630|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL Graphics Processor"}, \
	{0x1002, 0x95C0, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI Radeon HD 3470"}, \
	{0x1002, 0x95C5, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI Radeon HD 3450"}, \
	{0x1002, 0x95C6, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI Radeon HD 3450"}, \
	{0x1002, 0x95C7, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI Radeon HD 3430"}, \
	{0x1002, 0x95C9, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI Radeon HD 3450"}, \
	{0x1002, 0x95C2, CHIP_RV620|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3430"}, \
	{0x1002, 0x95C4, CHIP_RV620|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3400 Series"}, \
	{0x1002, 0x95CC, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI FirePro V3700"}, \
	{0x1002, 0x95CD, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI FireMV 2450"}, \
	{0x1002, 0x95CE, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI FireMV 2260"}, \
	{0x1002, 0x95CF, CHIP_RV620|RADEON_NEW_MEMMAP, "ATI FireMV 2260"}, \
	{0x1002, 0x9590, CHIP_RV635|RADEON_NEW_MEMMAP, "ATI ATI Radeon HD 3600 Series"}, \
	{0x1002, 0x9596, CHIP_RV635|RADEON_NEW_MEMMAP, "ATI ATI Radeon HD 3650 AGP"}, \
	{0x1002, 0x9597, CHIP_RV635|RADEON_NEW_MEMMAP, "ATI ATI Radeon HD 3600 PRO"}, \
	{0x1002, 0x9598, CHIP_RV635|RADEON_NEW_MEMMAP, "ATI ATI Radeon HD 3600 XT"}, \
	{0x1002, 0x9599, CHIP_RV635|RADEON_NEW_MEMMAP, "ATI ATI Radeon HD 3600 PRO"}, \
	{0x1002, 0x9591, CHIP_RV635|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3650"}, \
	{0x1002, 0x9593, CHIP_RV635|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 3670"}, \
	{0x1002, 0x9595, CHIP_RV635|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5700"}, \
	{0x1002, 0x959B, CHIP_RV635|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility FireGL V5725"}, \
	{0x1002, 0x9610, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon HD 3200 Graphics"}, \
	{0x1002, 0x9611, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon 3100 Graphics"}, \
	{0x1002, 0x9612, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon HD 3200 Graphics"}, \
	{0x1002, 0x9613, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon 3100 Graphics"}, \
	{0x1002, 0x9614, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon 3300 Graphics"}, \
	{0x1002, 0x9615, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon 3200 Graphics"}, \
	{0x1002, 0x9616, CHIP_RS780|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon 3000 Graphics"}, \
	{0x1002, 0x9440, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI Radeon 4800 Series"}, \
	{0x1002, 0x9441, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI Radeon 4870 X2"}, \
	{0x1002, 0x9442, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI Radeon 4800 Series"}, \
	{0x1002, 0x944C, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI Radeon 4800 Series"}, \
	{0x1002, 0x9450, CHIP_RV770|RADEON_NEW_MEMMAP, "AMD FireStream 9270"}, \
	{0x1002, 0x9452, CHIP_RV770|RADEON_NEW_MEMMAP, "AMD FireStream 9250"}, \
	{0x1002, 0x9444, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI FirePro V8750 (FireGL)"}, \
	{0x1002, 0x9446, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI FirePro V7760 (FireGL)"}, \
	{0x1002, 0x9456, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI FirePro V8700 (FireGL)"}, \
	{0x1002, 0x944E, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI FirePro RV770"}, \
	{0x1002, 0x944A, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4850"}, \
	{0x1002, 0x944B, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4850 X2"}, \
	{0x1002, 0x945A, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4870"}, \
	{0x1002, 0x945B, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon M98"}, \
	{0x1002, 0x9460, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI Radeon 4800 Series"}, \
	{0x1002, 0x9462, CHIP_RV770|RADEON_NEW_MEMMAP, "ATI Radeon 4800 Series"}, \
	{0x1002, 0x946A, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI FirePro M7750"}, \
	{0x1002, 0x946B, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI M98"}, \
	{0x1002, 0x947A, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI M98"}, \
	{0x1002, 0x947B, CHIP_RV770|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI M98"}, \
	{0x1002, 0x9487, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI Radeon RV730 (AGP)"}, \
	{0x1002, 0x948F, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI Radeon RV730 (AGP)"}, \
	{0x1002, 0x9490, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI Radeon HD 4670"}, \
	{0x1002, 0x9495, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI Radeon HD 4600 Series"}, \
	{0x1002, 0x9498, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI Radeon HD 4650"}, \
	{0x1002, 0x9480, CHIP_RV730|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4650"}, \
	{0x1002, 0x9488, CHIP_RV730|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4670"}, \
	{0x1002, 0x9489, CHIP_RV730|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI FirePro M5750"}, \
	{0x1002, 0x9491, CHIP_RV730|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI RADEON E4600"}, \
	{0x1002, 0x949C, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI FirePro V7750 (FireGL)"}, \
	{0x1002, 0x949E, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI FirePro V5700 (FireGL)"}, \
	{0x1002, 0x949F, CHIP_RV730|RADEON_NEW_MEMMAP, "ATI FirePro V3750 (FireGL)"}, \
	{0x1002, 0x94A0, CHIP_RV740|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4830"}, \
	{0x1002, 0x94A1, CHIP_RV740|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon HD 4850"}, \
	{0x1002, 0x94A3, CHIP_RV740|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI FirePro M7740"}, \
	{0x1002, 0x94B1, CHIP_RV740|RADEON_NEW_MEMMAP, "ATI RV740"}, \
	{0x1002, 0x94B3, CHIP_RV740|RADEON_NEW_MEMMAP, "ATI Radeon HD 4770"}, \
	{0x1002, 0x94B4, CHIP_RV740|RADEON_NEW_MEMMAP, "ATI Radeon HD 4700 Series"}, \
	{0x1002, 0x94B5, CHIP_RV740|RADEON_NEW_MEMMAP, "ATI Radeon HD 4770"}, \
	{0x1002, 0x94B9, CHIP_RV740|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI FirePro M5750"}, \
	{0x1002, 0x9540, CHIP_RV710|RADEON_NEW_MEMMAP, "ATI Radeon HD 4550"}, \
	{0x1002, 0x9541, CHIP_RV710|RADEON_NEW_MEMMAP, "ATI Radeon RV710"}, \
	{0x1002, 0x9542, CHIP_RV710|RADEON_NEW_MEMMAP, "ATI Radeon RV710"}, \
	{0x1002, 0x954E, CHIP_RV710|RADEON_NEW_MEMMAP, "ATI Radeon RV710"}, \
	{0x1002, 0x954F, CHIP_RV710|RADEON_NEW_MEMMAP, "ATI Radeon HD 4350"}, \
	{0x1002, 0x9552, CHIP_RV710|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon 4300 Series"}, \
	{0x1002, 0x9553, CHIP_RV710|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon 4500 Series"}, \
	{0x1002, 0x9555, CHIP_RV710|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI Mobility Radeon 4500 Series"}, \
	{0x1002, 0x9557, CHIP_RV710|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP, "ATI FirePro RG220"}, \
	{0x1002, 0x9710, CHIP_RS880|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon HD 4200"}, \
	{0x1002, 0x9711, CHIP_RS880|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon RS880"}, \
	{0x1002, 0x9712, CHIP_RS880|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon Mobility HD 4200"}, \
	{0x1002, 0x9713, CHIP_RS880|RADEON_IS_MOBILITY|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon Mobility RS880"}, \
	{0x1002, 0x9714, CHIP_RS880|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon HD 4290"}, \
	{0x1002, 0x9715, CHIP_RS880|RADEON_NEW_MEMMAP|RADEON_IS_IGP, "ATI Radeon HD 4250"}, \
	{0, 0, 0, NULL}

#define r128_PCI_IDS \
	{0x1002, 0x4c45, 0, "ATI Rage 128 Mobility LE (PCI)"}, \
	{0x1002, 0x4c46, 0, "ATI Rage 128 Mobility LF (AGP)"}, \
	{0x1002, 0x4d46, 0, "ATI Rage 128 Mobility MF (AGP)"}, \
	{0x1002, 0x4d4c, 0, "ATI Rage 128 Mobility ML (AGP)"}, \
	{0x1002, 0x5041, 0, "ATI Rage 128 Pro PA (PCI)"}, \
	{0x1002, 0x5042, 0, "ATI Rage 128 Pro PB (AGP)"}, \
	{0x1002, 0x5043, 0, "ATI Rage 128 Pro PC (AGP)"}, \
	{0x1002, 0x5044, 0, "ATI Rage 128 Pro PD (PCI)"}, \
	{0x1002, 0x5045, 0, "ATI Rage 128 Pro PE (AGP)"}, \
	{0x1002, 0x5046, 0, "ATI Rage 128 Pro PF (AGP)"}, \
	{0x1002, 0x5047, 0, "ATI Rage 128 Pro PG (PCI)"}, \
	{0x1002, 0x5048, 0, "ATI Rage 128 Pro PH (AGP)"}, \
	{0x1002, 0x5049, 0, "ATI Rage 128 Pro PI (AGP)"}, \
	{0x1002, 0x504A, 0, "ATI Rage 128 Pro PJ (PCI)"}, \
	{0x1002, 0x504B, 0, "ATI Rage 128 Pro PK (AGP)"}, \
	{0x1002, 0x504C, 0, "ATI Rage 128 Pro PL (AGP)"}, \
	{0x1002, 0x504D, 0, "ATI Rage 128 Pro PM (PCI)"}, \
	{0x1002, 0x504E, 0, "ATI Rage 128 Pro PN (AGP)"}, \
	{0x1002, 0x504F, 0, "ATI Rage 128 Pro PO (AGP)"}, \
	{0x1002, 0x5050, 0, "ATI Rage 128 Pro PP (PCI)"}, \
	{0x1002, 0x5051, 0, "ATI Rage 128 Pro PQ (AGP)"}, \
	{0x1002, 0x5052, 0, "ATI Rage 128 Pro PR (PCI)"}, \
	{0x1002, 0x5053, 0, "ATI Rage 128 Pro PS (PCI)"}, \
	{0x1002, 0x5054, 0, "ATI Rage 128 Pro PT (AGP)"}, \
	{0x1002, 0x5055, 0, "ATI Rage 128 Pro PU (AGP)"}, \
	{0x1002, 0x5056, 0, "ATI Rage 128 Pro PV (PCI)"}, \
	{0x1002, 0x5057, 0, "ATI Rage 128 Pro PW (AGP)"}, \
	{0x1002, 0x5058, 0, "ATI Rage 128 Pro PX (AGP)"}, \
	{0x1002, 0x5245, 0, "ATI Rage 128 RE (PCI)"}, \
	{0x1002, 0x5246, 0, "ATI Rage 128 RF (AGP)"}, \
	{0x1002, 0x5247, 0, "ATI Rage 128 RG (AGP)"}, \
	{0x1002, 0x524b, 0, "ATI Rage 128 RK (PCI)"}, \
	{0x1002, 0x524c, 0, "ATI Rage 128 RL (AGP)"}, \
	{0x1002, 0x534d, 0, "ATI Rage 128 SM (AGP)"}, \
	{0x1002, 0x5446, 0, "ATI Rage 128 Pro Ultra TF (AGP)"}, \
	{0x1002, 0x544C, 0, "ATI Rage 128 Pro Ultra TL (AGP)"}, \
	{0x1002, 0x5452, 0, "ATI Rage 128 Pro Ultra TR (AGP)"}, \
	{0, 0, 0, NULL}

#define mga_PCI_IDS \
	{0x102b, 0x0520, MGA_CARD_TYPE_G200, "Matrox G200 (PCI)"}, \
	{0x102b, 0x0521, MGA_CARD_TYPE_G200, "Matrox G200 (AGP)"}, \
	{0x102b, 0x0525, MGA_CARD_TYPE_G400, "Matrox G400/G450 (AGP)"}, \
	{0x102b, 0x2527, MGA_CARD_TYPE_G550, "Matrox G550 (AGP)"}, \
	{0, 0, 0, NULL}

#define mach64_PCI_IDS \
	{0x1002, 0x4749, 0, "3D Rage Pro"}, \
	{0x1002, 0x4750, 0, "3D Rage Pro 215GP"}, \
	{0x1002, 0x4751, 0, "3D Rage Pro 215GQ"}, \
	{0x1002, 0x4742, 0, "3D Rage Pro AGP 1X/2X"}, \
	{0x1002, 0x4744, 0, "3D Rage Pro AGP 1X"}, \
	{0x1002, 0x4c49, 0, "3D Rage LT Pro"}, \
	{0x1002, 0x4c50, 0, "3D Rage LT Pro"}, \
	{0x1002, 0x4c51, 0, "3D Rage LT Pro"}, \
	{0x1002, 0x4c42, 0, "3D Rage LT Pro AGP-133"}, \
	{0x1002, 0x4c44, 0, "3D Rage LT Pro AGP-66"}, \
	{0x1002, 0x474c, 0, "Rage XC"}, \
	{0x1002, 0x474f, 0, "Rage XL"}, \
	{0x1002, 0x4752, 0, "Rage XL"}, \
	{0x1002, 0x4753, 0, "Rage XC"}, \
	{0x1002, 0x474d, 0, "Rage XL AGP 2X"}, \
	{0x1002, 0x474e, 0, "Rage XC AGP"}, \
	{0x1002, 0x4c52, 0, "Rage Mobility P/M"}, \
	{0x1002, 0x4c53, 0, "Rage Mobility L"}, \
	{0x1002, 0x4c4d, 0, "Rage Mobility P/M AGP 2X"}, \
	{0x1002, 0x4c4e, 0, "Rage Mobility L AGP 2X"}, \
	{0, 0, 0, NULL}

#define sis_PCI_IDS \
	{0x1039, 0x0300, 0, "SiS 300/305"}, \
	{0x1039, 0x5300, 0, "SiS 540"}, \
	{0x1039, 0x6300, 0, "SiS 630"}, \
	{0x1039, 0x6330, SIS_CHIP_315, "SiS 661"}, \
	{0x1039, 0x7300, 0, "SiS 730"}, \
	{0x18CA, 0x0040, SIS_CHIP_315, "Volari V3XT/V5/V8"}, \
	{0x18CA, 0x0042, SIS_CHIP_315, "Volari Unknown"}, \
	{0, 0, 0, NULL}

#define tdfx_PCI_IDS \
	{0x121a, 0x0003, 0, "3dfx Voodoo Banshee"}, \
	{0x121a, 0x0004, 0, "3dfx Voodoo3 2000"}, \
	{0x121a, 0x0005, 0, "3dfx Voodoo3 3000"}, \
	{0x121a, 0x0007, 0, "3dfx Voodoo4 4500"}, \
	{0x121a, 0x0009, 0, "3dfx Voodoo5 5500"}, \
	{0x121a, 0x000b, 0, "3dfx Voodoo4 4200"}, \
	{0, 0, 0, NULL}

#define i810_PCI_IDS \
	{0x8086, 0x7121, 0, "Intel i810 GMCH"}, \
	{0x8086, 0x7123, 0, "Intel i810-DC100 GMCH"}, \
	{0x8086, 0x7125, 0, "Intel i810E GMCH"}, \
	{0x8086, 0x1132, 0, "Intel i815 GMCH"}, \
	{0, 0, 0, NULL}

#define i830_PCI_IDS \
	{0x8086, 0x3577, 0, "Intel i830M GMCH"}, \
	{0x8086, 0x2562, 0, "Intel i845G GMCH"}, \
	{0x8086, 0x3582, 0, "Intel i852GM/i855GM GMCH"}, \
	{0x8086, 0x2572, 0, "Intel i865G GMCH"}, \
	{0, 0, 0, NULL}

#define gamma_PCI_IDS \
	{0x3d3d, 0x0008, 0, "3DLabs GLINT Gamma G1"}, \
	{0, 0, 0, NULL}

#define savage_PCI_IDS \
	{0x5333, 0x8a20, S3_SAVAGE3D, "Savage 3D"}, \
	{0x5333, 0x8a21, S3_SAVAGE3D, "Savage 3D/MV"}, \
	{0x5333, 0x8a22, S3_SAVAGE4, "Savage4"}, \
	{0x5333, 0x8a23, S3_SAVAGE4, "Savage4"}, \
	{0x5333, 0x8c10, S3_SAVAGE_MX, "Savage/MX-MV"}, \
	{0x5333, 0x8c11, S3_SAVAGE_MX, "Savage/MX"}, \
	{0x5333, 0x8c12, S3_SAVAGE_MX, "Savage/IX-MV"}, \
	{0x5333, 0x8c13, S3_SAVAGE_MX, "Savage/IX"}, \
	{0x5333, 0x8c22, S3_SUPERSAVAGE, "SuperSavage MX/128"}, \
	{0x5333, 0x8c24, S3_SUPERSAVAGE, "SuperSavage MX/64"}, \
	{0x5333, 0x8c26, S3_SUPERSAVAGE, "SuperSavage MX/64C"}, \
	{0x5333, 0x8c2a, S3_SUPERSAVAGE, "SuperSavage IX/128 SDR"}, \
	{0x5333, 0x8c2b, S3_SUPERSAVAGE, "SuperSavage IX/128 DDR"}, \
	{0x5333, 0x8c2c, S3_SUPERSAVAGE, "SuperSavage IX/64 SDR"}, \
	{0x5333, 0x8c2d, S3_SUPERSAVAGE, "SuperSavage IX/64 DDR"}, \
	{0x5333, 0x8c2e, S3_SUPERSAVAGE, "SuperSavage IX/C SDR"}, \
	{0x5333, 0x8c2f, S3_SUPERSAVAGE, "SuperSavage IX/C DDR"}, \
	{0x5333, 0x8a25, S3_PROSAVAGE, "ProSavage PM133"}, \
	{0x5333, 0x8a26, S3_PROSAVAGE, "ProSavage KM133"}, \
	{0x5333, 0x8d01, S3_TWISTER, "ProSavage Twister PN133"}, \
	{0x5333, 0x8d02, S3_TWISTER, "ProSavage Twister KN133"}, \
	{0x5333, 0x8d03, S3_PROSAVAGEDDR, "ProSavage DDR"}, \
	{0x5333, 0x8d04, S3_PROSAVAGEDDR, "ProSavage DDR-K"}, \
	{0, 0, 0, NULL}

#define ffb_PCI_IDS \
	{0, 0, 0, NULL}

#define i915_PCI_IDS \
	{0x8086, 0x3577, CHIP_I8XX, "Intel i830M GMCH"}, \
	{0x8086, 0x2562, CHIP_I8XX, "Intel i845G GMCH"}, \
	{0x8086, 0x3582, CHIP_I8XX, "Intel i852GM/i855GM GMCH"}, \
	{0x8086, 0x2572, CHIP_I8XX, "Intel i865G GMCH"}, \
	{0x8086, 0x2582, CHIP_I9XX|CHIP_I915, "Intel i915G"}, \
	{0x8086, 0x258a, CHIP_I9XX|CHIP_I915, "Intel E7221 (i915)"}, \
	{0x8086, 0x2592, CHIP_I9XX|CHIP_I915, "Intel i915GM"}, \
	{0x8086, 0x2772, CHIP_I9XX|CHIP_I915, "Intel i945G"}, \
	{0x8086, 0x27A2, CHIP_I9XX|CHIP_I915, "Intel i945GM"}, \
	{0x8086, 0x27AE, CHIP_I9XX|CHIP_I915, "Intel i945GME"}, \
	{0x8086, 0x2972, CHIP_I9XX|CHIP_I965, "Intel i946GZ"}, \
	{0x8086, 0x2982, CHIP_I9XX|CHIP_I965, "Intel i965G"}, \
	{0x8086, 0x2992, CHIP_I9XX|CHIP_I965, "Intel i965Q"}, \
	{0x8086, 0x29A2, CHIP_I9XX|CHIP_I965, "Intel i965G"}, \
	{0x8086, 0x2A02, CHIP_I9XX|CHIP_I965, "Intel i965GM"}, \
	{0x8086, 0x2A12, CHIP_I9XX|CHIP_I965, "Intel i965GME/GLE"}, \
	{0x8086, 0x29C2, CHIP_I9XX|CHIP_I915, "Intel G33"}, \
	{0x8086, 0x29B2, CHIP_I9XX|CHIP_I915, "Intel Q35"}, \
	{0x8086, 0x29D2, CHIP_I9XX|CHIP_I915, "Intel Q33"}, \
	{0x8086, 0x2A42, CHIP_I9XX|CHIP_I965, "Mobile IntelĀ® GM45 Express Chipset"}, \
	{0x8086, 0x2E02, CHIP_I9XX|CHIP_I965, "Intel Eaglelake"}, \
	{0x8086, 0xA001, CHIP_I9XX|CHIP_I965, "Intel Pineview"}, \
	{0x8086, 0xA011, CHIP_I9XX|CHIP_I965, "Intel Pineview (M)"}, \
	{0x8086, 0x2E12, CHIP_I9XX|CHIP_I965, "Intel Q45/Q43"}, \
	{0x8086, 0x2E22, CHIP_I9XX|CHIP_I965, "Intel G45/G43"}, \
	{0, 0, 0, NULL}

#define imagine_PCI_IDS \
	{0x105d, 0x2309, IMAGINE_128, "Imagine 128"}, \
	{0x105d, 0x2339, IMAGINE_128_2, "Imagine 128-II"}, \
	{0x105d, 0x493d, IMAGINE_T2R, "Ticket to Ride"}, \
	{0x105d, 0x5348, IMAGINE_REV4, "Revolution IV"}, \
	{0, 0, 0, NULL}

#define nv_PCI_IDS \
	{0x10DE, 0x0020, NV04, "NVidia RIVA TNT"}, \
	{0x10DE, 0x0028, NV04, "NVidia RIVA TNT2"}, \
	{0x10DE, 0x002A, NV04, "NVidia Unknown TNT2"}, \
	{0x10DE, 0x002C, NV04, "NVidia Vanta"}, \
	{0x10DE, 0x0029, NV04, "NVidia RIVA TNT2 Ultra"}, \
	{0x10DE, 0x002D, NV04, "NVidia RIVA TNT2 Model 64"}, \
	{0x10DE, 0x00A0, NV04, "NVidia Aladdin TNT2"}, \
	{0x10DE, 0x0100, NV10, "NVidia GeForce 256"}, \
	{0x10DE, 0x0101, NV10, "NVidia GeForce DDR"}, \
	{0x10DE, 0x0103, NV10, "NVidia Quadro"}, \
	{0x10DE, 0x0110, NV10, "NVidia GeForce2 MX/MX 400"}, \
	{0x10DE, 0x0111, NV10, "NVidia GeForce2 MX 100/200"}, \
	{0x10DE, 0x0112, NV10, "NVidia GeForce2 Go"}, \
	{0x10DE, 0x0113, NV10, "NVidia Quadro2 MXR/EX/Go"}, \
	{0x10DE, 0x0150, NV10, "NVidia GeForce2 GTS"}, \
	{0x10DE, 0x0151, NV10, "NVidia GeForce2 Ti"}, \
	{0x10DE, 0x0152, NV10, "NVidia GeForce2 Ultra"}, \
	{0x10DE, 0x0153, NV10, "NVidia Quadro2 Pro"}, \
	{0x10DE, 0x0170, NV10, "NVidia GeForce4 MX 460"}, \
	{0x10DE, 0x0171, NV10, "NVidia GeForce4 MX 440"}, \
	{0x10DE, 0x0172, NV10, "NVidia GeForce4 MX 420"}, \
	{0x10DE, 0x0173, NV10, "NVidia GeForce4 MX 440-SE"}, \
	{0x10DE, 0x0174, NV10, "NVidia GeForce4 440 Go"}, \
	{0x10DE, 0x0175, NV10, "NVidia GeForce4 420 Go"}, \
	{0x10DE, 0x0176, NV10, "NVidia GeForce4 420 Go 32M"}, \
	{0x10DE, 0x0177, NV10, "NVidia GeForce4 460 Go"}, \
	{0x10DE, 0x0178, NV10, "NVidia Quadro4 550 XGL"}, \
	{0x10DE, 0x0179, NV10, "NVidia GeForce4"}, \
	{0x10DE, 0x017A, NV10, "NVidia Quadro4 NVS"}, \
	{0x10DE, 0x017C, NV10, "NVidia Quadro4 500 GoGL"}, \
	{0x10DE, 0x017D, NV10, "NVidia GeForce4 410 Go 16M"}, \
	{0x10DE, 0x0181, NV10, "NVidia GeForce4 MX 440 with AGP8X"}, \
	{0x10DE, 0x0182, NV10, "NVidia GeForce4 MX 440SE with AGP8X"}, \
	{0x10DE, 0x0183, NV10, "NVidia GeForce4 MX 420 with AGP8X"}, \
	{0x10DE, 0x0185, NV10, "NVidia GeForce4 MX 4000"}, \
	{0x10DE, 0x0186, NV10, "NVidia GeForce4 448 Go"}, \
	{0x10DE, 0x0187, NV10, "NVidia GeForce4 488 Go"}, \
	{0x10DE, 0x0188, NV10, "NVidia Quadro4 580 XGL"}, \
	{0x10DE, 0x0189, NV10, "NVidia GeForce4 MX with AGP8X (Mac)"}, \
	{0x10DE, 0x018A, NV10, "NVidia Quadro4 280 NVS"}, \
	{0x10DE, 0x018B, NV10, "NVidia Quadro4 380 XGL"}, \
	{0x10DE, 0x018C, NV10, "NVidia Quadro NVS 50 PCI"}, \
	{0x10DE, 0x018D, NV10, "NVidia GeForce4 448 Go"}, \
	{0x10DE, 0x01A0, NV10, "NVidia GeForce2 Integrated GPU"}, \
	{0x10DE, 0x01F0, NV10, "NVidia GeForce4 MX Integrated GPU"}, \
	{0x10DE, 0x0200, NV20, "NVidia GeForce3"}, \
	{0x10DE, 0x0201, NV20, "NVidia GeForce3 Ti 200"}, \
	{0x10DE, 0x0202, NV20, "NVidia GeForce3 Ti 500"}, \
	{0x10DE, 0x0203, NV20, "NVidia Quadro DCC"}, \
	{0x10DE, 0x0250, NV20, "NVidia GeForce4 Ti 4600"}, \
	{0x10DE, 0x0251, NV20, "NVidia GeForce4 Ti 4400"}, \
	{0x10DE, 0x0252, NV20, "NVidia 0x0252"}, \
	{0x10DE, 0x0253, NV20, "NVidia GeForce4 Ti 4200"}, \
	{0x10DE, 0x0258, NV20, "NVidia Quadro4 900 XGL"}, \
	{0x10DE, 0x0259, NV20, "NVidia Quadro4 750 XGL"}, \
	{0x10DE, 0x025B, NV20, "NVidia Quadro4 700 XGL"}, \
	{0x10DE, 0x0280, NV20, "NVidia GeForce4 Ti 4800"}, \
	{0x10DE, 0x0281, NV20, "NVidia GeForce4 Ti 4200 with AGP8X"}, \
	{0x10DE, 0x0282, NV20, "NVidia GeForce4 Ti 4800 SE"}, \
	{0x10DE, 0x0286, NV20, "NVidia GeForce4 4200 Go"}, \
	{0x10DE, 0x028C, NV20, "NVidia Quadro4 700 GoGL"}, \
	{0x10DE, 0x0288, NV20, "NVidia Quadro4 980 XGL"}, \
	{0x10DE, 0x0289, NV20, "NVidia Quadro4 780 XGL"}, \
	{0x10DE, 0x0301, NV30, "NVidia GeForce FX 5800 Ultra"}, \
	{0x10DE, 0x0302, NV30, "NVidia GeForce FX 5800"}, \
	{0x10DE, 0x0308, NV30, "NVidia Quadro FX 2000"}, \
	{0x10DE, 0x0309, NV30, "NVidia Quadro FX 1000"}, \
	{0x10DE, 0x0311, NV30, "NVidia GeForce FX 5600 Ultra"}, \
	{0x10DE, 0x0312, NV30, "NVidia GeForce FX 5600"}, \
	{0x10DE, 0x0313, NV30, "NVidia 0x0313"}, \
	{0x10DE, 0x0314, NV30, "NVidia GeForce FX 5600SE"}, \
	{0x10DE, 0x0316, NV30, "NVidia 0x0316"}, \
	{0x10DE, 0x0317, NV30, "NVidia 0x0317"}, \
	{0x10DE, 0x031A, NV30, "NVidia GeForce FX Go5600"}, \
	{0x10DE, 0x031B, NV30, "NVidia GeForce FX Go5650"}, \
	{0x10DE, 0x031C, NV30, "NVidia Quadro FX Go700"}, \
	{0x10DE, 0x031D, NV30, "NVidia 0x031D"}, \
	{0x10DE, 0x031E, NV30, "NVidia 0x031E"}, \
	{0x10DE, 0x031F, NV30, "NVidia 0x031F"}, \
	{0x10DE, 0x0320, NV30, "NVidia GeForce FX 5200"}, \
	{0x10DE, 0x0321, NV30, "NVidia GeForce FX 5200 Ultra"}, \
	{0x10DE, 0x0322, NV30, "NVidia GeForce FX 5200"}, \
	{0x10DE, 0x0323, NV30, "NVidia GeForce FX 5200SE"}, \
	{0x10DE, 0x0324, NV30, "NVidia GeForce FX Go5200"}, \
	{0x10DE, 0x0325, NV30, "NVidia GeForce FX Go5250"}, \
	{0x10DE, 0x0326, NV30, "NVidia GeForce FX 5500"}, \
	{0x10DE, 0x0327, NV30, "NVidia GeForce FX 5100"}, \
	{0x10DE, 0x0328, NV30, "NVidia GeForce FX Go5200 32M/64M"}, \
	{0x10DE, 0x0329, NV30, "NVidia GeForce FX 5200 (Mac)"}, \
	{0x10DE, 0x032A, NV30, "NVidia Quadro NVS 280 PCI"}, \
	{0x10DE, 0x032B, NV30, "NVidia Quadro FX 500/600 PCI"}, \
	{0x10DE, 0x032C, NV30, "NVidia GeForce FX Go53xx Series"}, \
	{0x10DE, 0x032D, NV30, "NVidia GeForce FX Go5100"}, \
	{0x10DE, 0x032F, NV30, "NVidia 0x032F"}, \
	{0x10DE, 0x0330, NV30, "NVidia GeForce FX 5900 Ultra"}, \
	{0x10DE, 0x0331, NV30, "NVidia GeForce FX 5900"}, \
	{0x10DE, 0x0332, NV30, "NVidia GeForce FX 5900XT"}, \
	{0x10DE, 0x0333, NV30, "NVidia GeForce FX 5950 Ultra"}, \
	{0x10DE, 0x033F, NV30, "NVidia Quadro FX 700"}, \
	{0x10DE, 0x0334, NV30, "NVidia GeForce FX 5900ZT"}, \
	{0x10DE, 0x0338, NV30, "NVidia Quadro FX 3000"}, \
	{0x10DE, 0x0341, NV30, "NVidia GeForce FX 5700 Ultra"}, \
	{0x10DE, 0x0342, NV30, "NVidia GeForce FX 5700"}, \
	{0x10DE, 0x0343, NV30, "NVidia GeForce FX 5700LE"}, \
	{0x10DE, 0x0344, NV30, "NVidia GeForce FX 5700VE"}, \
	{0x10DE, 0x0345, NV30, "NVidia 0x0345"}, \
	{0x10DE, 0x0347, NV30, "NVidia GeForce FX Go5700"}, \
	{0x10DE, 0x0348, NV30, "NVidia GeForce FX Go5700"}, \
	{0x10DE, 0x0349, NV30, "NVidia 0x0349"}, \
	{0x10DE, 0x034B, NV30, "NVidia 0x034B"}, \
	{0x10DE, 0x034C, NV30, "NVidia Quadro FX Go1000"}, \
	{0x10DE, 0x034E, NV30, "NVidia Quadro FX 1100"}, \
	{0x10DE, 0x034F, NV30, "NVidia 0x034F"}, \
	{0x10DE, 0x0040, NV40, "NVidia GeForce 6800 Ultra"}, \
	{0x10DE, 0x0041, NV40, "NVidia GeForce 6800"}, \
	{0x10DE, 0x0042, NV40, "NVidia GeForce 6800 LE"}, \
	{0x10DE, 0x0043, NV40, "NVidia 0x0043"}, \
	{0x10DE, 0x0045, NV40, "NVidia GeForce 6800 GT"}, \
	{0x10DE, 0x0046, NV40, "NVidia GeForce 6800 GT"}, \
	{0x10DE, 0x0049, NV40, "NVidia 0x0049"}, \
	{0x10DE, 0x004E, NV40, "NVidia Quadro FX 4000"}, \
	{0x10DE, 0x00C0, NV40, "NVidia 0x00C0"}, \
	{0x10DE, 0x00C1, NV40, "NVidia GeForce 6800"}, \
	{0x10DE, 0x00C2, NV40, "NVidia GeForce 6800 LE"}, \
	{0x10DE, 0x00C8, NV40, "NVidia GeForce Go 6800"}, \
	{0x10DE, 0x00C9, NV40, "NVidia GeForce Go 6800 Ultra"}, \
	{0x10DE, 0x00CC, NV40, "NVidia Quadro FX Go1400"}, \
	{0x10DE, 0x00CD, NV40, "NVidia Quadro FX 3450/4000 SDI"}, \
	{0x10DE, 0x00CE, NV40, "NVidia Quadro FX 1400"}, \
	{0x10de, 0x00f0, NV40, "Nvidia GeForce 6600 GT"}, \
	{0x10de, 0x00f1, NV40, "Nvidia GeForce 6600 GT"}, \
	{0x10DE, 0x0140, NV40, "NVidia GeForce 6600 GT"}, \
	{0x10DE, 0x0141, NV40, "NVidia GeForce 6600"}, \
	{0x10DE, 0x0142, NV40, "NVidia GeForce 6600 LE"}, \
	{0x10DE, 0x0143, NV40, "NVidia 0x0143"}, \
	{0x10DE, 0x0144, NV40, "NVidia GeForce Go 6600"}, \
	{0x10DE, 0x0145, NV40, "NVidia GeForce 6610 XL"}, \
	{0x10DE, 0x0146, NV40, "NVidia GeForce Go 6600 TE/6200 TE"}, \
	{0x10DE, 0x0147, NV40, "NVidia GeForce 6700 XL"}, \
	{0x10DE, 0x0148, NV40, "NVidia GeForce Go 6600"}, \
	{0x10DE, 0x0149, NV40, "NVidia GeForce Go 6600 GT"}, \
	{0x10DE, 0x014B, NV40, "NVidia 0x014B"}, \
	{0x10DE, 0x014C, NV40, "NVidia 0x014C"}, \
	{0x10DE, 0x014D, NV40, "NVidia 0x014D"}, \
	{0x10DE, 0x014E, NV40, "NVidia Quadro FX 540"}, \
	{0x10DE, 0x014F, NV40, "NVidia GeForce 6200"}, \
	{0x10DE, 0x0160, NV40, "NVidia 0x0160"}, \
	{0x10DE, 0x0161, NV40, "NVidia GeForce 6200 TurboCache(TM)"}, \
	{0x10DE, 0x0162, NV40, "NVidia GeForce 6200SE TurboCache(TM)"}, \
	{0x10DE, 0x0163, NV40, "NVidia 0x0163"}, \
	{0x10DE, 0x0164, NV40, "NVidia GeForce Go 6200"}, \
	{0x10DE, 0x0165, NV40, "NVidia Quadro NVS 285"}, \
	{0x10DE, 0x0166, NV40, "NVidia GeForce Go 6400"}, \
	{0x10DE, 0x0167, NV40, "NVidia GeForce Go 6200"}, \
	{0x10DE, 0x0168, NV40, "NVidia GeForce Go 6400"}, \
	{0x10DE, 0x0169, NV40, "NVidia 0x0169"}, \
	{0x10DE, 0x016B, NV40, "NVidia 0x016B"}, \
	{0x10DE, 0x016C, NV40, "NVidia 0x016C"}, \
	{0x10DE, 0x016D, NV40, "NVidia 0x016D"}, \
	{0x10DE, 0x016E, NV40, "NVidia 0x016E"}, \
	{0x10DE, 0x0210, NV40, "NVidia 0x0210"}, \
	{0x10DE, 0x0211, NV40, "NVidia GeForce 6800"}, \
	{0x10DE, 0x0212, NV40, "NVidia GeForce 6800 LE"}, \
	{0x10DE, 0x0215, NV40, "NVidia GeForce 6800 GT"}, \
	{0x10DE, 0x0220, NV40, "NVidia 0x0220"}, \
	{0x10DE, 0x0221, NV40, "NVidia GeForce 6200"}, \
	{0x10DE, 0x0222, NV40, "NVidia 0x0222"}, \
	{0x10DE, 0x0228, NV40, "NVidia 0x0228"}, \
	{0x10DE, 0x0090, NV40, "NVidia 0x0090"}, \
	{0x10DE, 0x0091, NV40, "NVidia GeForce 7800 GTX"}, \
	{0x10DE, 0x0092, NV40, "NVidia 0x0092"}, \
	{0x10DE, 0x0093, NV40, "NVidia 0x0093"}, \
	{0x10DE, 0x0094, NV40, "NVidia 0x0094"}, \
	{0x10DE, 0x0098, NV40, "NVidia 0x0098"}, \
	{0x10DE, 0x0099, NV40, "NVidia GeForce Go 7800 GTX"}, \
	{0x10DE, 0x009C, NV40, "NVidia 0x009C"}, \
	{0x10DE, 0x009D, NV40, "NVidia Quadro FX 4500"}, \
	{0x10DE, 0x009E, NV40, "NVidia 0x009E"}, \
	{0, 0, 0, NULL}

#define xgi_PCI_IDS \
	{0x18ca, 0x2200, 0, "XP5"}, \
	{0x18ca, 0x0047, 0, "XP10 / XG47"}, \
	{0, 0, 0, NULL}