Chameleon

Chameleon Commit Details

Date:2012-05-28 02:02:23 (11 years 10 months ago)
Author:MacMan
Commit:1982
Parents: 1981
Message:Corrected some NVIDIA incorrect device names and cleaned up some code for readability and formatting.
Changes:
M/branches/Chimera/Release/i386/libsaio/nvidia.c

File differences

branches/Chimera/Release/i386/libsaio/nvidia.c
101101
102102
103103
104
104
105105
106106
107107
......
114114
115115
116116
117
118
119
120
117
118
119
120
121121
122122
123123
......
126126
127127
128128
129
130
131
129
130
131
132132
133133
134134
......
138138
139139
140140
141
142
143
141
142
143
144144
145145
146146
......
149149
150150
151151
152
153
154
155
156
152
153
154
155
156
157157
158158
159159
......
169169
170170
171171
172
173
172
173
174174
175175
176176
......
182182
183183
184184
185
186
187
185
186
187
188188
189189
190190
191191
192192
193193
194
195
196
197
194
195
196
197
198198
199199
200200
......
209209
210210
211211
212
212
213213
214
215
214
215
216216
217217
218218
219219
220
220
221221
222222
223
224
223
224
225225
226226
227227
228228
229229
230230
231
232
233
234
235
231
232
233
234
235
236236
237237
238238
......
247247
248248
249249
250
251
252
253
254
250
251
252
253
254
255255
256256
257257
258258
259259
260
261
260
261
262262
263263
264264
265265
266
266
267267
268268
269269
270270
271271
272272
273
273
274274
275275
276276
......
296296
297297
298298
299
300
301
302
299
300
301
302
303303
304304
305305
......
315315
316316
317317
318
319
320
321
318
319
320
321
322322
323323
324324
......
326326
327327
328328
329
329
330330
331331
332332
......
343343
344344
345345
346
346
347347
348
348
349349
350350
351351
......
375375
376376
377377
378
379
380
381
378
379
380
381
382382
383383
384384
......
392392
393393
394394
395
395
396396
397397
398398
399399
400400
401
401
402
403
404
405
402406
403407
404408
405
409
406410
407411
408412
409413
410414
411
415
412416
413417
414418
......
424428
425429
426430
427
431
428432
429433
430434
......
438442
439443
440444
441
445
442446
443
444
447
448
445449
446450
447451
......
449453
450454
451455
452
456
453457
454458
455459
456
460
457461
458462
459463
460464
461465
462466
463
467
464468
465469
466470
......
474478
475479
476480
477
481
478482
479483
480484
481485
482
486
483487
484488
485489
......
500504
501505
502506
503
504
505
507
508
509
510
511
512
506513
507514
508515
509516
510517
511
512
518
519
520
513521
514
515
522
516523
517524
518525
......
527534
528535
529536
530
531
537
538
532539
533540
534541
535542
536543
537
544
538545
539546
540547
......
548555
549556
550557
551
552
558
559
553560
554561
555562
556563
557564
558
565
559566
560567
561568
562569
563570
564
571
565572
566573
567574
......
574581
575582
576583
577
584
578585
579586
580587
......
584591
585592
586593
587
594
588595
589596
590597
591598
592599
593
600
594601
595602
596603
597604
598
605
599606
600607
601
608
602609
603610
604611
605612
606613
607
614
608615
609
616
610617
611618
612
613
619
620
614621
615622
616623
......
625632
626633
627634
628
635
629636
630637
631638
......
634641
635642
636643
637
644
638645
639646
640647
641648
642649
643650
644
645
651
652
646653
647654
648
655
649656
650657
651658
......
662669
663670
664671
665
672
666673
667674
668675
669676
670677
671678
672
673
679
680
674681
675
682
676683
677684
678685
679686
680687
681688
682
689
683690
684691
685692
......
695702
696703
697704
698
705
699706
700707
701708
......
713720
714721
715722
716
723
717724
718725
719726
720727
721728
722
729
723730
724731
725732
726733
727
734
728735
729736
730737
......
737744
738745
739746
740
747
741748
742749
743750
......
749756
750757
751758
752
759
753760
754761
755762
......
758765
759766
760767
761
768
762769
763770
764771
......
769776
770777
771778
772
779
773780
774781
775782
776783
777
784
778785
779786
780
787
781788
782789
783790
......
791798
792799
793800
794
801
795802
796803
797804
......
799806
800807
801808
802
809
803810
804811
805812
......
808815
809816
810817
811
818
812819
813820
814821
......
837844
838845
839846
840
847
841848
842849
843850
......
850857
851858
852859
853
860
854861
855
862
856863
857
858
859
860
864
865
866
867
868
861869
862870
863871
864
865
872
873
866874
867875
868876
869
877
870878
871879
872
873
880
881
874882
875883
876884
......
900908
901909
902910
903
904
911
912
905913
906914
907
915
916
917
918
908919
909920
910921
......
9891000
9901001
9911002
992
1003
9931004
9941005
9951006
......
10391050
10401051
10411052
1042
1053
10431054
10441055
10451056
......
12401251
12411252
12421253
1243
1244
1254
1255
12451256
12461257
12471258
......
13061317
13071318
13081319
1309
1320
13101321
13111322
1312
1313
1314
1315
1316
1317
1318
1319
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
13201336
13211337
13221338
......
13561372
13571373
13581374
1359
1360
1361
1375
1376
1377
13621378
13631379
13641380
......
14621478
14631479
14641480
1465
1481
14661482
14671483
14681484
14691485
14701486
14711487
1472
1488
14731489
14741490
14751491
static struct nv_chipsets_t NVKnownChipsets[] = {
{ 0x00000000, "Unknown" },
//========================================
// 0040 - 004F
// 0040 - 004F
{ 0x10DE0040, "GeForce 6800 Ultra" },
{ 0x10DE0041, "GeForce 6800" },
{ 0x10DE0042, "GeForce 6800 LE" },
{ 0x10DE004D, "Quadro FX 3400" },
{ 0x10DE004E, "Quadro FX 4000" },
// 0050 - 005F
// 0060 - 006F
// 0070 - 007F
// 0080 - 008F
// 0090 - 009F
// 0060 - 006F
// 0070 - 007F
// 0080 - 008F
// 0090 - 009F
{ 0x10DE0090, "GeForce 7800 GTX" },
{ 0x10DE0091, "GeForce 7800 GTX" },
{ 0x10DE0092, "GeForce 7800 GT" },
{ 0x10DE0098, "GeForce Go 7800" },
{ 0x10DE0099, "GeForce Go 7800 GTX" },
{ 0x10DE009D, "Quadro FX 4500" },
// 00A0 - 00AF
// 00B0 - 00BF
// 00C0 - 00CF
// 00A0 - 00AF
// 00B0 - 00BF
// 00C0 - 00CF
{ 0x10DE00C0, "GeForce 6800 GS" },
{ 0x10DE00C1, "GeForce 6800" },
{ 0x10DE00C2, "GeForce 6800 LE" },
{ 0x10DE00CC, "Quadro FX Go1400" },
{ 0x10DE00CD, "Quadro FX 3450/4000 SDI" },
{ 0x10DE00CE, "Quadro FX 1400" },
// 00D0 - 00DF
// 00E0 - 00EF
// 00F0 - 00FF
// 00D0 - 00DF
// 00E0 - 00EF
// 00F0 - 00FF
{ 0x10DE00F1, "GeForce 6600 GT" },
{ 0x10DE00F2, "GeForce 6600" },
{ 0x10DE00F3, "GeForce 6200" },
{ 0x10DE00F6, "GeForce 6800 GS/XT" },
{ 0x10DE00F8, "Quadro FX 3400/4400" },
{ 0x10DE00F9, "GeForce 6800 Series GPU" },
// 0100 - 010F
// 0110 - 011F
// 0120 - 012F
// 0130 - 013F
// 0140 - 014F
// 0100 - 010F
// 0110 - 011F
// 0120 - 012F
// 0130 - 013F
// 0140 - 014F
{ 0x10DE0140, "GeForce 6600 GT" },
{ 0x10DE0141, "GeForce 6600" },
{ 0x10DE0142, "GeForce 6600 LE" },
{ 0x10DE014D, "Quadro FX 550" },
{ 0x10DE014E, "Quadro FX 540" },
{ 0x10DE014F, "GeForce 6200" },
// 0150 - 015F
// 0160 - 016F
// 0150 - 015F
// 0160 - 016F
{ 0x10DE0160, "GeForce 6500" },
{ 0x10DE0161, "GeForce 6200 TurboCache(TM)" },
{ 0x10DE0162, "GeForce 6200SE TurboCache(TM)" },
{ 0x10DE0168, "GeForce Go 6400" },
{ 0x10DE0169, "GeForce 6250" },
{ 0x10DE016A, "GeForce 7100 GS" },
// 0170 - 017F
// 0180 - 018F
// 0190 - 019F
// 0170 - 017F
// 0180 - 018F
// 0190 - 019F
{ 0x10DE0191, "GeForce 8800 GTX" },
{ 0x10DE0193, "GeForce 8800 GTS" },
{ 0x10DE0194, "GeForce 8800 Ultra" },
{ 0x10DE0197, "Tesla C870" },
{ 0x10DE019D, "Quadro FX 5600" },
{ 0x10DE019E, "Quadro FX 4600" },
// 01A0 - 01AF
// 01B0 - 01BF
// 01C0 - 01CF
// 01D0 - 01DF
// 01A0 - 01AF
// 01B0 - 01BF
// 01C0 - 01CF
// 01D0 - 01DF
{ 0x10DE01D0, "GeForce 7350 LE" },
{ 0x10DE01D1, "GeForce 7300 LE" },
{ 0x10DE01D2, "GeForce 7550 LE" },
{ 0x10DE01DD, "GeForce 7500 LE" },
{ 0x10DE01DE, "Quadro FX 350" },
{ 0x10DE01DF, "GeForce 7300 GS" },
// 01E0 - 01EF
// 01E0 - 01EF
// 01F0 - 01FF
// 0200 - 020F
// 0210 - 021F
// 0200 - 020F
// 0210 - 021F
{ 0x10DE0211, "GeForce 6800" },
{ 0x10DE0212, "GeForce 6800 LE" },
{ 0x10DE0215, "GeForce 6800 GT" },
{ 0x10DE0218, "GeForce 6800 XT" },
// 0220 - 022F
// 0220 - 022F
{ 0x10DE0221, "GeForce 6200" },
{ 0x10DE0222, "GeForce 6200 A-LE" },
// 0230 - 023F
// 0240 - 024F
// 0230 - 023F
// 0240 - 024F
{ 0x10DE0240, "GeForce 6150" },
{ 0x10DE0241, "GeForce 6150 LE" },
{ 0x10DE0242, "GeForce 6100" },
{ 0x10DE0244, "GeForce Go 6150" },
{ 0x10DE0245, "Quadro NVS 210S / GeForce 6150LE" },
{ 0x10DE0247, "GeForce Go 6100" },
// 0250 - 025F
// 0260 - 026F
// 0270 - 027F
// 0280 - 028F
// 0290 - 029F
// 0250 - 025F
// 0260 - 026F
// 0270 - 027F
// 0280 - 028F
// 0290 - 029F
{ 0x10DE0290, "GeForce 7900 GTX" },
{ 0x10DE0291, "GeForce 7900 GT/GTO" },
{ 0x10DE0292, "GeForce 7900 GS" },
{ 0x10DE029D, "Quadro FX 3500" },
{ 0x10DE029E, "Quadro FX 1500" },
{ 0x10DE029F, "Quadro FX 4500 X2" },
// 02A0 - 02AF
// 02B0 - 02BF
// 02C0 - 02CF
// 02D0 - 02DF
// 02E0 - 02EF
// 02A0 - 02AF
// 02B0 - 02BF
// 02C0 - 02CF
// 02D0 - 02DF
// 02E0 - 02EF
{ 0x10DE02E0, "GeForce 7600 GT" },
{ 0x10DE02E1, "GeForce 7600 GS" },
{ 0x10DE02E2, "GeForce 7300 GT" },
{ 0x10DE02E3, "GeForce 7900 GS" },
{ 0x10DE02E4, "GeForce 7950 GT" },
// 02F0 - 02FF
// 0300 - 030F
// 02F0 - 02FF
// 0300 - 030F
{ 0x10DE0301, "GeForce FX 5800 Ultra" },
{ 0x10DE0302, "GeForce FX 5800" },
{ 0x10DE0308, "Quadro FX 2000" },
{ 0x10DE0309, "Quadro FX 1000" },
// 0310 - 031F
// 0310 - 031F
{ 0x10DE0311, "GeForce FX 5600 Ultra" },
{ 0x10DE0312, "GeForce FX 5600" },
{ 0x10DE0314, "GeForce FX 5600XT" },
{ 0x10DE031A, "GeForce FX Go5600" },
{ 0x10DE031B, "GeForce FX Go5650" },
{ 0x10DE031C, "Quadro FX Go700" },
// 0320 - 032F
// 0320 - 032F
{ 0x10DE0324, "GeForce FX Go5200" },
{ 0x10DE0325, "GeForce FX Go5250" },
{ 0x10DE0326, "GeForce FX 5500" },
{ 0x10DE0348, "GeForce FX Go5700" },
{ 0x10DE034C, "Quadro FX Go1000" },
{ 0x10DE034E, "Quadro FX 1100" },
// 0350 - 035F
// 0360 - 036F
// 0370 - 037F
// 0380 - 038F
// 0350 - 035F
// 0360 - 036F
// 0370 - 037F
// 0380 - 038F
{ 0x10DE038B, "GeForce 7650 GS" },
// 0390 - 039F
{ 0x10DE0390, "GeForce 7650 GS" },
{ 0x10DE039B, "GeForce Go 7900 SE" },
{ 0x10DE039C, "Quadro FX 550M" },
{ 0x10DE039E, "Quadro FX 560" },
// 03A0 - 03AF
// 03B0 - 03BF
// 03C0 - 03CF
// 03D0 - 03DF
// 03A0 - 03AF
// 03B0 - 03BF
// 03C0 - 03CF
// 03D0 - 03DF
{ 0x10DE03D0, "GeForce 6150SE nForce 430" },
{ 0x10DE03D1, "GeForce 6100 nForce 405" },
{ 0x10DE03D2, "GeForce 6100 nForce 400" },
{ 0x10DE03D6, "GeForce 7025 / nForce 630a" },
// 03E0 - 03EF
// 03F0 - 03FF
// 0400 - 040F
// 0400 - 040F
{ 0x10DE0400, "GeForce 8600 GTS" },
{ 0x10DE0401, "GeForce 8600 GT" },
{ 0x10DE0402, "GeForce 8600 GT" },
{ 0x10DE040D, "Quadro FX 1600M" },
{ 0x10DE040E, "Quadro FX 570" },
{ 0x10DE040F, "Quadro FX 1700" },
// 0410 - 041F
// 0410 - 041F
{ 0x10DE0410, "GeForce GT 330" },
// 0420 - 042F
// 0420 - 042F
{ 0x10DE0420, "GeForce 8400 SE" },
{ 0x10DE0421, "GeForce 8500 GT" },
{ 0x10DE0422, "GeForce 8400 GS" },
// 04D0 - 04DF
// 04E0 - 04EF
// 04F0 - 04FF
// 0500 - 050F
// 0510 - 051F
// 0520 - 052F
// 0530 - 053F
// 0500 - 050F
// 0510 - 051F
// 0520 - 052F
// 0530 - 053F
{ 0x10DE053A, "GeForce 7050 PV / nForce 630a" },
{ 0x10DE053B, "GeForce 7050 PV / nForce 630a" },
{ 0x10DE053E, "GeForce 7025 / nForce 630a" },
// 05B0 - 05BF
// 05C0 - 05CF
// 05D0 - 05DF
// 05E0 - 05EF
// 05E0 - 05EF
{ 0x10DE05E0, "GeForce GTX 295" },
{ 0x10DE05E1, "GeForce GTX 280" },
{ 0x10DE05E2, "GeForce GTX 260" },
{ 0x10DE05E3, "GeForce GTX 285" },
{ 0x10DE05E6, "GeForce GTX 275" },
{ 0x10DE05E7, "Tesla C1060" },
{ 0x10DE05E7, "Tesla C1060 / M1060" },
// { 0x10DE05E7, 0x0595, "Tesla C1060" },
// { 0x10DE05E7, 0x068F, "Tesla C1060" },
// { 0x10DE05E7, 0x0697, "Tesla M1060" },
// { 0x10DE05E7, 0x0743, "Tesla M1060" },
{ 0x10DE05EA, "GeForce GTX 260" },
{ 0x10DE05EB, "GeForce GTX 295" },
{ 0x10DE05ED, "Quadroplex 2200 D2" },
// 05F0 - 05FF
// 05F0 - 05FF
{ 0x10DE05F8, "Quadroplex 2200 S4" },
{ 0x10DE05F9, "Quadro CX" },
{ 0x10DE05FD, "Quadro FX 5800" },
{ 0x10DE05FE, "Quadro FX 4800" },
{ 0x10DE05FF, "Quadro FX 3800" },
// 0600 - 060F
// 0600 - 060F
{ 0x10DE0600, "GeForce 8800 GTS 512" },
{ 0x10DE0601, "GeForce 9800 GT" },
{ 0x10DE0602, "GeForce 8800 GT" },
{ 0x10DE060C, "GeForce 8800M GTX" },
{ 0x10DE060D, "GeForce 8800 GS" },
{ 0x10DE060F, "GeForce GTX 285M" },
// 0610 - 061F
// 0610 - 061F
{ 0x10DE0610, "GeForce 9600 GSO" },
{ 0x10DE0611, "GeForce 8800 GT" },
{ 0x10DE0612, "GeForce 9800 GTX" },
{ 0x10DE061B, "Quadro VX 200" },
{ 0x10DE061C, "Quadro FX 3600M" },
{ 0x10DE061D, "Quadro FX 2800M" },
{ 0x10DE061E, "Quadro FX 3700M" },
{ 0x10DE061E, "Quadro FX 3700M" },
{ 0x10DE061F, "Quadro FX 3800M" },
// 0620 - 062F
{ 0x10DE0621, "GeForce GT 230" },
// 0620 - 062F
{ 0x10DE0621, "GeForce GT 230" },
{ 0x10DE0622, "GeForce 9600 GT" },
{ 0x10DE0623, "GeForce 9600 GS" },
{ 0x10DE0625, "GeForce 9600 GSO 512"},
{ 0x10DE0627, "GeForce GT 140" },
{ 0x10DE0628, "GeForce 9800M GTS" },
{ 0x10DE062A, "GeForce 9700M GTS" },
{ 0x10DE062B, "GeForce 9800M GS" },
{ 0x10DE062B, "GeForce 9800M GS" },
{ 0x10DE062C, "GeForce 9800M GTS" },
{ 0x10DE062D, "GeForce 9600 GT" },
{ 0x10DE062E, "GeForce 9600 GT" },
// 0630 - 063F
// 0630 - 063F
{ 0x10DE0631, "GeForce GTS 160M" },
{ 0x10DE0632, "GeForce GTS 150M" },
{ 0x10DE0635, "GeForce 9600 GSO" },
{ 0x10DE0637, "GeForce 9600 GT" },
{ 0x10DE0638, "Quadro FX 1800" },
{ 0x10DE063A, "Quadro FX 2700M" },
// 0640 - 064F
// 0640 - 064F
{ 0x10DE0640, "GeForce 9500 GT" },
{ 0x10DE0641, "GeForce 9400 GT" },
{ 0x10DE0642, "GeForce 8400 GS" },
{ 0x10DE064A, "GeForce 9700M GT" },
{ 0x10DE064B, "GeForce 9500M G" },
{ 0x10DE064C, "GeForce 9650M GT" },
// 0650 - 065F
// 0650 - 065F
{ 0x10DE0651, "GeForce G 110M" },
{ 0x10DE0652, "GeForce GT 130M" },
{ 0x10DE0653, "GeForce GT 120M" },
{ 0x10DE0654, "GeForce GT 220M" },
{ 0x10DE0655, "GeForce GT 120" },
{ 0x10DE0655, "GeForce GT 120" },
{ 0x10DE0656, "GeForce 9650 S" },
{ 0x10DE0658, "Quadro FX 380" },
{ 0x10DE0659, "Quadro FX 580" },
{ 0x10DE06CA, "GeForce GTX 480M" },
{ 0x10DE06CD, "GeForce GTX 470" },
// 06D0 - 06DF
{ 0x10DE06D1, "Tesla C2050" },// TODO: sub-device id: 0x0771
{ 0x10DE06D1, "Tesla C2070" },// TODO: sub-device id: 0x0772
{ 0x10DE06D2, "Tesla M2070" },
{ 0x10DE06D1, "Tesla C2050 / C2070" },
// { 0x10DE06D1, 0x0771, "Tesla C2050" },
// { 0x10DE06D1, 0x0772, "Tesla C2070" },
{ 0x10DE06D2, "Tesla M2070 / M2070" },
// { 0x10DE06D2, 0x082F, "Tesla M2050" },
// { 0x10DE06D2, 0x082F, "Tesla M2070" },
{ 0x10DE06D8, "Quadro 6000" },
{ 0x10DE06D9, "Quadro 5000" },
{ 0x10DE06DA, "Quadro 5000M" },
{ 0x10DE06DC, "Quadro 6000" },
{ 0x10DE06DD, "Quadro 4000" },
{ 0x10DE06DE, "Tesla M2050" },// TODO: sub-device id: 0x0846
{ 0x10DE06DE, "Tesla M2070" },// TODO: sub-device id: ?
{ 0x10DE06DE, "Tesla M2050" },
// { 0x10DE06DE, 0x082F, "Tesla M2050" },
// { 0x10DE06DE, 0x0846, "Tesla M2050" },
{ 0x10DE06DF, "Tesla M2070-Q" },
// 0x10DE06DE also applies to misc S2050, X2070, M2050, M2070
// 06E0 - 06EF
// 06E0 - 06EF
{ 0x10DE06E0, "GeForce 9300 GE" },
{ 0x10DE06E1, "GeForce 9300 GS" },
{ 0x10DE06E2, "GeForce 8400" },
{ 0x10DE06EB, "Quadro NVS 160M" },
{ 0x10DE06EC, "GeForce G 105M" },
{ 0x10DE06EF, "GeForce G 103M" },
// 06F0 - 06FF
{ 0x10DE06F1, "GeForce G105M" },
// 06F0 - 06FF
{ 0x10DE06F1, "GeForce G105M" },
{ 0x10DE06F8, "Quadro NVS 420" },
{ 0x10DE06F9, "Quadro FX 370 LP" },
{ 0x10DE06FA, "Quadro NVS 450" },
{ 0x10DE06FB, "Quadro FX 370M" },
{ 0x10DE06FD, "Quadro NVS 295" },
{ 0x10DE06FF, "HICx16 + Graphics" },
{ 0x10DE06FF, "HICx16 + Graphics" },
// 0700 - 070F
// 0710 - 071F
// 0720 - 072F
// 07A0 - 07AF
// 07B0 - 07BF
// 07C0 - 07CF
// 07D0 - 07DF
// 07E0 - 07EF
// 07D0 - 07DF
// 07E0 - 07EF
{ 0x10DE07E0, "GeForce 7150 / nForce 630i" },
{ 0x10DE07E1, "GeForce 7100 / nForce 630i" },
{ 0x10DE07E2, "GeForce 7050 / nForce 630i" },
{ 0x10DE07E3, "GeForce 7050 / nForce 610i" },
{ 0x10DE07E5, "GeForce 7050 / nForce 620i" },
// 07F0 - 07FF
// 07F0 - 07FF
// 0800 - 080F
// 0810 - 081F
// 0820 - 082F
// 0830 - 083F
// 0840 - 084F
{ 0x10DE0840, "GeForce 8200M" },
{ 0x10DE0840, "GeForce 8200M" },
{ 0x10DE0844, "GeForce 9100M G" },
{ 0x10DE0845, "GeForce 8200M G" },
{ 0x10DE0846, "GeForce 9200" },
{ 0x10DE084D, "nForce 750a SLI" },
{ 0x10DE084F, "GeForce 8100 / nForce 720a" },
// 0850 - 085F
// 0860 - 086F
// 0860 - 086F
{ 0x10DE0860, "GeForce 9400" },
{ 0x10DE0861, "GeForce 9400" },
{ 0x10DE0862, "GeForce 9400M G" },
{ 0x10DE0866, "GeForce 9400M G" },
{ 0x10DE0867, "GeForce 9400" },
{ 0x10DE0868, "nForce 760i SLI" },
{ 0x10DE0869, "GeForce 9400" },
{ 0x10DE0869, "GeForce 9400" },
{ 0x10DE086A, "GeForce 9400" },
{ 0x10DE086C, "GeForce 9300 / nForce 730i" },
{ 0x10DE086D, "GeForce 9200" },
{ 0x10DE086E, "GeForce 9100M G" },
{ 0x10DE086F, "GeForce 8200M G" },
// 0870 - 087F
// 0870 - 087F
{ 0x10DE0870, "GeForce 9400M" },
{ 0x10DE0871, "GeForce 9200" },
{ 0x10DE0872, "GeForce G102M" },
{ 0x10DE0873, "GeForce G102M" },
{ 0x10DE0874, "ION 9300M" },
{ 0x10DE0874, "ION" },
{ 0x10DE0876, "ION" },
{ 0x10DE087A, "GeForce 9400" },
{ 0x10DE087D, "ION 9400M" },
{ 0x10DE087D, "ION" },
{ 0x10DE087E, "ION LE" },
{ 0x10DE087F, "ION LE" },
// 0880 - 088F
// 0890 - 089F
// 08A0 - 08AF
{ 0x10DE08A0, "GeForce 320M" },
{ 0x10DE08A0, "GeForce 320M" },
{ 0x10DE08A4, "GeForce 320M" },
{ 0x10DE08A5, "GeForce 320M" },
{ 0x10DE08A5, "GeForce 320M" },
// 08B0 - 08BF
// 08C0 - 08CF
// 08D0 - 08DF
// 08E0 - 08EF
// 08D0 - 08DF
// 08E0 - 08EF
// 08F0 - 08FF
// 0900 - 090F
// 0910 - 091F
// 09A0 - 09AF
// 09B0 - 09BF
// 09C0 - 09CF
// 09D0 - 09DF
// 09D0 - 09DF
// 09E0 - 09EF
// 09F0 - 09FF
// 0A00 - 0A0F
{ 0x10DE0A20, "GeForce GT220" },
{ 0x10DE0A22, "GeForce 315" },
{ 0x10DE0A23, "GeForce 210" },
{ 0x10DE0A26, "GeForce 405" },
{ 0x10DE0A26, "GeForce 405" },
{ 0x10DE0A27, "GeForce 405" },
{ 0x10DE0A28, "GeForce GT 230M" },
{ 0x10DE0A29, "GeForce GT 330M" },
{ 0x10DE0A2A, "GeForce GT 230M" },
{ 0x10DE0A2B, "GeForce GT 330M" },
{ 0x10DE0A2C, "NVS 5100M" },
{ 0x10DE0A2D, "GeForce GT 320M" },
// 0A30 - 0A3F
{ 0x10DE0A2D, "GeForce GT 320M" },
// 0A30 - 0A3F
{ 0x10DE0A34, "GeForce GT 240M" },
{ 0x10DE0A35, "GeForce GT 325M" },
{ 0x10DE0A38, "Quadro 400" },
{ 0x10DE0A38, "Quadro 400" },
{ 0x10DE0A3C, "Quadro FX 880M" },
// 0A40 - 0A4F
// 0A50 - 0A5F
{ 0x10DE0A6A, "NVS 2100M" },
{ 0x10DE0A6C, "NVS 3100M" },
{ 0x10DE0A6E, "GeForce 305M" },
{ 0x10DE0A6F, "ION" },
{ 0x10DE0A6F, "ION" },
// 0A70 - 0A7F
{ 0x10DE0A70, "GeForce 310M" },
{ 0x10DE0A71, "GeForce 305M" },
{ 0x10DE0A72, "GeForce 310M" },
{ 0x10DE0A73, "GeForce 305M" },
{ 0x10DE0A74, "GeForce G210M" },
{ 0x10DE0A75, "GeForce G310M" },
{ 0x10DE0A76, "ION" },
{ 0x10DE0A75, "GeForce 310M" },
{ 0x10DE0A76, "ION" },
{ 0x10DE0A78, "Quadro FX 380 LP" },
{ 0x10DE0A7A, "GeForce 315M" },
{ 0x10DE0A7A, "GeForce 315M" },
{ 0x10DE0A7C, "Quadro FX 380M" },
// 0A80 - 0A8F
// 0A90 - 0A9F
// 0AA0 - 0AAF
// 0AB0 - 0ABF
// 0AC0 - 0ACF
// 0AD0 - 0ADF
// 0AD0 - 0ADF
// 0AE0 - 0AEF
// 0AF0 - 0AFF
// 0B00 - 0B0F
// 0BA0 - 0BAF
// 0BB0 - 0BBF
// 0BC0 - 0BCF
// 0BD0 - 0BDF
// 0BD0 - 0BDF
// 0BE0 - 0BEF
// 0BF0 - 0BFF
// 0C00 - 0C0F
{ 0x10DE0CA2, "GeForce GT 320" },
{ 0x10DE0CA3, "GeForce GT 240" },
{ 0x10DE0CA4, "GeForce GT 340" },
{ 0x10DE0CA5, "GeForce GT 220" },
{ 0x10DE0CA5, "GeForce GT 220" },
{ 0x10DE0CA7, "GeForce GT 330" },
{ 0x10DE0CA8, "GeForce GTS 260M" },
{ 0x10DE0CA9, "GeForce GTS 250M" },
{ 0x10DE0CAC, "GeForce GT 220" },
{ 0x10DE0CAF, "GeForce GT 335M" },
// 0CB0 - 0CBF
// 0CB0 - 0CBF
{ 0x10DE0CB0, "GeForce GTS 350M" },
{ 0x10DE0CB1, "GeForce GTS 360M" },
{ 0x10DE0CBC, "Quadro FX 1800M" },
// 0CC0 - 0CCF
// 0CD0 - 0CDF
// 0CD0 - 0CDF
// 0CE0 - 0CEF
// 0CF0 - 0CFF
// 0D00 - 0D0F
// 0D70 - 0D7F
// 0D80 - 0D8F
// 0D90 - 0D9F
// 0DA0 - 0DAF
// 0DA0 - 0DAF
// 0DB0 - 0DBF
// 0DC0 - 0DCF
{ 0x10DE0DC0, "GeForce GT 440" },
{ 0x10DE0DCA, "GF10x" },
{ 0x10DE0DCD, "GeForce GT 555M" },
{ 0x10DE0DCE, "GeForce GT 555M" },
// 0DD0 - 0DDF
// 0DD0 - 0DDF
{ 0x10DE0DD1, "GeForce GTX 460M" },
{ 0x10DE0DD2, "GeForce GT 445M" },
{ 0x10DE0DD3, "GeForce GT 435M" },
{ 0x10DE0DDA, "Quadro 2000M" },
{ 0x10DE0DDE, "GF106-ES" },
{ 0x10DE0DDF, "GF106-INT" },
// 0DE0 - 0DEF
// 0DE0 - 0DEF
{ 0x10DE0DE0, "GeForce GT 440" },
{ 0x10DE0DE1, "GeForce GT 430" },
{ 0x10DE0DE2, "GeForce GT 420" },
{ 0x10DE0DEC, "GeForce GT 525M" },
{ 0x10DE0DED, "GeForce GT 520M" },
{ 0x10DE0DEE, "GeForce GT 415M" },
// 0DF0 - 0DFF
// 0DF0 - 0DFF
{ 0x10DE0DF0, "GeForce GT 425M" },
{ 0x10DE0DF1, "GeForce GT 420M" },
{ 0x10DE0DF2, "GeForce GT 435M" },
{ 0x10DE0DF3, "GeForce GT 420M" },
{ 0x10DE0DF4, "GeForce GT 540M" },
{ 0x10DE0DF4, "GeForce GT 540M" },
{ 0x10DE0DF5, "GeForce GT 525M" },
{ 0x10DE0DF6, "GeForce GT 550M" },
{ 0x10DE0DF7, "GeForce GT 520M" },
{ 0x10DE0DF7, "GeForce GT 520M" },
{ 0x10DE0DF8, "Quadro 600" },
{ 0x10DE0DFA, "Quadro 1000M" },
{ 0x10DE0DFC, "NVS 5200M" },
{ 0x10DE0E23, "GeForce GTX 460 SE" },
{ 0x10DE0E24, "GeForce GTX 460" },
{ 0x10DE0E25, "D12U-50" },
// 0E30 - 0E3F
// 0E30 - 0E3F
{ 0x10DE0E30, "GeForce GTX 470M" },
{ 0x10DE0E31, "GeForce GTX 485M" },
{ 0x10DE0E38, "GF104GL" },
{ 0x10DE0E3B, "Quadro 4000M" },
{ 0x10DE0E3E, "GF104-ES" },
{ 0x10DE0E3F, "GF104-INT" },
// 0E40 - 0E4F
// 0E40 - 0E4F
// 0E50 - 0E5F
// 0E60 - 0E6F
// 0E70 - 0E7F
// 0EA0 - 0EAF
// 0EB0 - 0EBF
// 0EC0 - 0ECF
// 0ED0 - 0EDF
// 0ED0 - 0EDF
// 0EE0 - 0EEF
// 0EF0 - 0EFF
// 0F00 - 0F0F
{ 0x10DE1049, "GeForce GT 620" },
// 1050 - 105F
{ 0x10DE1050, "GeForce GT 520M" },
{ 0x10DE1051, "GeForce GT 520MX" },
{ 0x10DE1051, "GeForce GT 520MX" },
{ 0x10DE1054, "GeForce GT 410M" },
{ 0x10DE1055, "GeForce 410M" },
{ 0x10DE1056, "Quadro NVS 4200M" },
{ 0x10DE1081, "GeForce GTX 570" },
{ 0x10DE1082, "GeForce GTX 560 Ti" },
{ 0x10DE1083, "D13U" },
{ 0x10DE1084, "GeForce GTX 560" },
{ 0x10DE1084, "GeForce GTX 560" },
{ 0x10DE1086, "GeForce GTX 570" },
{ 0x10DE1087, "GeForce GTX 560 Ti 448 Cores" },
{ 0x10DE1087, "GeForce GTX 560 Ti 448" },
{ 0x10DE1088, "GeForce GTX 590" },
{ 0x10DE1089, "GeForce GTX 580" },
{ 0x10DE108B, "GeForce GTX 590" },
// 1090 - 109F
{ 0x10DE1091, "Tesla M2090" },
{ 0x10DE1089, "GeForce GTX 580" },
{ 0x10DE108B, "GeForce GTX 590" },
// 1090 - 109F
{ 0x10DE1091, "Tesla M2090 / X2090" },
// { 0x10DE1091, 0x0974, "Tesla X2090" },
{ 0x10DE1094, "Tesla M2075" },
{ 0x10DE1096, "Tesla C2075" },
{ 0x10DE1098, "D13U" },
{ 0x10DE109A, "Quadro 5010M" },
{ 0x10DE109B, "Quadro 7000" },
{ 0x10DE109A, "Quadro 5010M" },
{ 0x10DE109B, "Quadro 7000" },
// 10A0 - 10AF
// 10B0 - 10BF
// 10C0 - 10CF
{ 0x10DE10C0, "GeForce 9300 GS" },
{ 0x10DE10C0, "GeForce 9300 GS" },
{ 0x10DE10C3, "GeForce 8400 GS" },
{ 0x10DE10C5, "GeForce 405" },
// 10D0 - 10DF
{ 0x10DE10D8, "NVS 300" },
// 10D0 - 10DF
{ 0x10DE10D8, "NVS 300" },
// 10E0 - 10EF
// 10F0 - 10FF
// 1100 - 110F
// 1220 - 122F
// 1230 - 123F
// 1240 - 124F
{ 0x10DE1241, "GeForce GT 545" },
{ 0x10DE1243, "GeForce GT 545" },
{ 0x10DE1241, "GeForce GT 545" },
{ 0x10DE1243, "GeForce GT 545" },
{ 0x10DE1244, "GeForce GTX 550 Ti" },
{ 0x10DE1245, "GeForce GTS 450" },
{ 0x10DE1247, "GeForce GT 555M" },
{ 0x10DE1247, "GeForce GT 555M / GT 635M" },
// { 0x10DE1247, 0x212A, "GT 635M" },
// { 0x10DE1247, 0x212B, "GT 635M" },
// { 0x10DE1247, 0x212C, "GT 635M" },
// 1250 - 125F
{ 0x10DE1251, "GeForce GTX 560M" },
// 1260 - 126F
headerlength = dcbtable[1];
numentries = dcbtable[2];
recordlength = dcbtable[3];
sig = *(uint32_t *)&dcbtable[6];
}
else
{
uint32_t connection;
connection = *(uint32_t *)&dcbtable[headerlength + recordlength * i];
/* Should we allow discontinuous DCBs? Certainly DCB I2C tables can be discontinuous */
if ((connection & 0x0000000f) == 0x0000000f) /* end of records */
continue;
return 0;
if (devices_number == 1)
{
if (!DP_ADD_TEMP_VAL(device, nvidia_device_type))
return 0;
if (!DP_ADD_TEMP_VAL(device, nvidia_device_type))
return 0;
}
else
{
vram_size *= REG32(NVC0_MEM_CTRLR_COUNT);
}
// Workaround for 9600M GT, GT 420/430/440 & GT 525M/540M
// Workaround for wrong RAM size detected
switch (nvda_dev->device_id)
{
case 0x0649: vram_size = 512*1024*1024; break;// 9600M GT
case 0x0DE0: vram_size = 1024*1024*1024; break; // GT 440
case 0x0DE1: vram_size = 1024*1024*1024; break; // GT 430
case 0x0DE2: vram_size = 1024*1024*1024; break; // GT 420
case 0x0DEC: vram_size = 1024*1024*1024; break; // GT 525M
case 0x0DF4: vram_size = 1024*1024*1024; break; // GT 540M
case 0x0DF5: vram_size = 1024*1024*1024; break; // GT 525M
default: break;
case 0x0649: // 9600M GT
vram_size = 512*1024*1024; // 512 MB
break;
case 0x0DE0: // GT 440
case 0x0DE1: // GT 430
case 0x0DE2: // GT 420
case 0x0DEC: // GT 525M
case 0x0DF4: // GT 540M
case 0x0DF5: // GT 525M
vram_size = 1024*1024*1024; // 1 GB
break;
default:
break;
}
return vram_size;
model = get_nvidia_model((nvda_dev->vendor_id << 16) | nvda_dev->device_id);
verbose("nVidia %s %dMB NV%02x [%04x:%04x] :: %s\n",
model, (uint32_t)(videoRam / 1024 / 1024),
(REG32(0) >> 20) & 0x1ff, nvda_dev->vendor_id, nvda_dev->device_id,
devicepath);
model, (uint32_t)(videoRam / 1024 / 1024),
(REG32(0) >> 20) & 0x1ff, nvda_dev->vendor_id, nvda_dev->device_id,
devicepath);
rom = malloc(NVIDIA_ROM_SIZE);
sprintf(nvFilename, "/Extra/%04x_%04x.rom", (uint16_t)nvda_dev->vendor_id,
boot_display = 1;
if (devices_number == 1)
{
devprop_add_value(device, "@0,AAPL,boot-display", (uint8_t*)&boot_display, 4);
devprop_add_value(device, "@0,AAPL,boot-display", (uint8_t*)&boot_display, 4);
}
if (nvPatch == PATCH_ROM_SUCCESS_HAS_LVDS) {
uint8_t built_in = 0x01;
devprop_add_value(device, "@0,built-in", &built_in, 1);
}
// get bios version
const int MAX_BIOS_VERSION_LENGTH = 32;
char* version_str = (char*)malloc(MAX_BIOS_VERSION_LENGTH);

Archive Download the corresponding diff file

Revision: 1982