ProjectOSX

Welcome Guest!

Returning User? Login here.

Want membership privileges? Register here.

> Information Database About Ati, Gather useful infos and resources here
Krazubu
post Feb 17 2009, 01:24 AM
Post #1
This thread is not a guide, its purpose is to keep some updated informations about ATI cards.
People who have the skills may find interesting infos. It's not complete and if you know how to fill the holes, it's very welcome.


Support of ATI cards is made by 2 kexts :
- A framebuffer, located in /System/Library/Extensions/ATINDRV.kext/Contents/PlugIns/ATY_Somefile.kext
This one is responsible of 2D support, including resolution change, output signal handle, and refresh rate.

- An acceleration driver located in /System/Library/Extensions/ATIRadeonXXXX.kext
This one brings hardware acceleration allowing use of QE (Quartz Exterme) and usually CI (Core Image) too, except on some older models
which only support QE.

****************************************************************



List of the available framebuffers :
QUOTE
ATY_Wormy : RV530 on X1600, some X1650 and some X1300
Used on 1st gen macbook pro and 1st gen iMac
head 1 : LVDS
head 2 : DVI+VGA

ATY_Alopias : RV580 on X1900 XT, known to work with GPU RV520 on X1800 and X1850
Used on mac pro
head 1 : DVI+VGA
head 2 : DVI+VGA

ATY_Sphyrna : RV516 on some X1300, and some X1550
Used on Xserve.
head 1 : disabled
head 2 : DVI+VGA


ATY_lago : RV610, HD2400XT / HD2400 (M74)
Used on iMac
head 1 : LVDS
head 2 : DVI+VGA

ATY_Hypoprion : RV630, HD2600Pro (M76)
Used on iMac
head 1 : LVDS
head 2 : DVI+VGA

ATY_Lamna : RV630, HD2600XT (known to work with RV670)
Used on mac pro
head 1 : DVI+VGA
head 2 : DVI+VGA

ATY_Franklin : R600, HD2900
mac model : ?
head 1 : ?
head 1 : ?

ATY_Megalodon : RV670 XT [ATI Radeon HD 3870] (known to work with RV630)
Used on mac pro, sold by AMD in PC/Mac version
head 1 : DVI+VGA
head 2 : DVI+VGA


ATY_Triakis : RV670

ATY_Prionace : ?

ATY_Caretta : ?

ATY_Motmot : RV770 [Radeon 4870]
Used on mac pro
head 1 : DVI+VGA
head 2 : DVI+VGA

ATY_Quail : M98, [Mobility Radeon 4850]
Used on iMac
head 1 : DVI
head 2 : DVI (VGA too ?)

ATY_Raven : ?
Head 1 : DVI (VGA ?)
Head 2 : DVI (VGA ?)

ATY_Cardinal : ? Card not released yet
Head 1 : ?
Head 2 : ?

ATY,Shrike
?

ATY,Peregrine
?

ATY,Flicker
?

ATY,Kakapo
?

ATY,Uakari
?

ATY,Zonalis
?

ATY,Vervet
?

ATY,Alouatta
?

ATY,Colobus
?

ATY,Baboon
?

ATY,Galago
?

ATY,Douc
?


The framebuffer controls the basic functions like resolution, refresh rate, and output type.
Each framebuffer is designed to run on a particular model of mac, and only supports the features it's designed for.
examples :
-The Sphyrna framebuffer is designed for Xserve which has no primary output, but only an external one, as secondary. As a consequence, this driver may be used to run a board with RV516 or close GPU, but will never be able to output something on the primary output.
-The Iago framebuffer is designed for iMacs with RV610 GPUs with an internal display using LVDS signal. It's then impossible to use a DVI or VGA display on the primary output. However the secondary output supports DVI + VGA, since the iMac have an external output that supports this kind of displays.
The 1st wave of framebuffer codenames are sharks (Alopias, Sphyrna, Iago, Hyproprion, Lamna, Megalodon, Triakis, Prionace, Caretta) later are birds (Franklin, Motmot, Quail, Raven).

To choose your framebuffer, you have to modify a key inside your injecter :
QUOTE
<key>@0,name</key>
<string>ATY,Wormy</string>

and

<key>@1,name</key>
<string>ATY,Wormy</string>

Replace with the codename that you want to try.

****************************************************************



List of the available acceleration kexts :
QUOTE
ATIRadeon7500.kext (tiger only) = R100 family (7000 to 7500)
ATIRadeon8500.kext (tiger only) = R200 family (8500 to 9250)
ATIRadeon9700.kext (tiger only) = R300 + R400 family (R300 = 9400 to 9800 + X300 to X600 + X1050 / R400 = X700 to X850)
ATIRadeonX1000.kext = R500 family (X950 + X1300 to X1950)
ATIRadeonX2000.kext = R600 family

The advantage of this file is that it's generic and supports the whole family at once. No need to have a specific file for each card.
Eg : ATIRadeonX1000.kext will work fine with any X1000 series (the card still has to be a "real" X1000 and not an older revamped model, see note below).

****************************************************************



List of the officially supported cards, following the list of present device IDs in the kexts :

ATIRadeon8500.kext from 10.4.7 :
QUOTE
0x4C66 1002 = RV280 M9 [Mobility Radeon 9200]
0x4966 1002 = RV250 [Radeon 9000/9000 Pro]
0x4967 1002 = RV250 [Radeon 9000]
0x514C 1002 = R200 [Radeon 8500 / 8500LE]
0x516C 1002 = R200 [Radeon 8500 / 8500LE]
0x5960 1002 = RV250 [Radeon 9200 Pro]
0x5961 1002 = RV280 [Radeon 9200 SE AGP]
0x5962 1002 = RV280 [Radeon 9200]
0x5963 1002 = RV280 [ATI Radeon 9200 AGP]
0x5C63 1002 = RV280 M9+ [Mobility Radeon 9200]


ATIRadeon9700.kext from 10.4.7 :
QUOTE
0x3E50 1002 = RV380 [Radeon X600]
0x3E54 1002 = RV380 [FireGL V3200]
0x4144 1002 = R300 [Radeon 9500 Series]
0x4148 1002 = R350 [Radeon 9800 SE]
0x4150 1002 = RV350 [Radeon 9600]
0x4152 1002 = RV360 [Radeon 9600 XT]
0x4A48 1002 = R420 [Radeon X800 Series]
0x4A49 1002 = R420 [Radeon X800 GT]
0x4A4A 1002 = R420 [Radeon X800 Series]
0x4A4B 1002 = R420 [Radeon X800 XT]
0x4A4C 1002 = R420 [Radeon X800 Series]
0x4A4D 1002 = R420 [FireGL X3-256]
0x4A4E 1002 = M18 [Mobility Radeon 9800]
0x4E44 1002 = R300 [Radeon 9700/9500 Series]
0x4E48 1002 = R350 [Radeon 9800 Pro]
0x4E50 1002 = M10 [Mobility Radeon 9600 Pro]
0x4E54 1002 = M10 [Mobility FireGL T2/T2e]
0x4E56 1002 = M12 [Mobility Radeon 9550
0x5B60 1002 = RV370 [Radeon X300/X550/X1050 Series]
0x5B62 1002 = RV380 [Radeon X600 Series]
0x5B64 1002 = RV370 [FireGL V3100]


ATIRadeonX1000.kext from 10.4.11 :
QUOTE
0x7109 1002 = R520 [Radeon X1800] (Primary)
0x7142 1002 = RV515 PRO [Radeon X1300/X1550 Series] (Primary)
0x7146 1002 = RV515 [Radeon X1300] (Primary)
0x71C5 1002 = M56P [Radeon Mobility X1600] (
0x71C0 1002 = RV530 [Radeon X1600] (Primary) (iMac)
0x7240 1002 = R580 [Radeon X1900] (Primary)
0x7249 1002 = R580 [Radeon X1900 XT] (Primary)



ATIRadeonX1000.kext from 10.5.7 :
QUOTE
0x7109 1002 = R520 [Radeon X1800]
0x7142 1002 = RV515 PRO [Radeon X1300/X1550 Series]
0x7146 1002 = RV515 [Radeon X1300]
0x7187 1002 = ? [Radeon X1300]
0x71C0 1002 = RV530 [Radeon X1600] (Primary) (iMac)
0x71C5 1002 = RV530 (M56P) [Radeon Mobility X1600] (mac book pro)
0x71DE 1002 = RV535 [Radeon X2500]
0x7210 1002 = RV550 [Mobility Radeon HD 2300]
0x7240 1002 = R580 [Radeon X1900] (Primary) (mac pro)
0x7249 1002 = R580 [Radeon X1900 XT] (Primary)
0x7291 1002 = RV560 [Radeon X1650]


ATIRadeonX2000.kext from 10.5.7 :
QUOTE
0x9400 1002 R600 XT [Radeon HD 2900 XT]
0x9400 1002 = R600 [Radeon HD 2900 XT]
0x9401 1002 = R600 XT [Radeon HD 2900 XT]
0x9402 1002 = R600 XT [Radeon HD 2900 XT]
0x9403 1002 = R600 XT [Radeon HD 2900 Pro] iMac 24\\\"
0x9440 1002 = RV770 [Radeon HD 4870]
0x9442 1002 = RV770 [Radeon HD 4800 Series]
0x944A 1002 = M98 [Mobility Radeon HD 4850]
0x9456 1002 = RV770 [ATI FirePro V8700]
0x945A 1002 = M98 [Mobility Radeon HD 4870]
0x9480 1002 = M96 [Mobility Radeon HD 4650]
0x9488 1002 = RV730 [Radeon HD 4650]
0x9490 1002 = RV730 [Radeon HD 4670]
0x949E 1002 = RV730 [FirePro V5700]
0x94c8 1002 = RV610 [Mobility Radeon HD 2400 XT] iMac 20\\\"
0x94c9 1002 = RV610 [Mobility Radeon HD 2400]
0x9500 1002 = ?
0x9501 1002 = RV670 XT [Radeon HD 3870]
0x9504 1002 = RV670 [Mobility Radeon HD 3850]
0x9505 1002 = RV670 [Radeon HD 3850]
0x9506 1002 = M88 [Mobility Radeon HD 3850 X2
0x9507 1002 = RV670 [Radeon HD 3830]
0x9540 1002 = RV710 [Radeon HD 4550]
0x9541 1002 = RV710
0x954E 1002 = RV710
0x954F 1002 = RV710 [Radeon HD 4350]
0x9552 1002 = M92 [Mobility Radeon HD 4300 Series]
0x9553 1002 = M92 [Mobility Radeon HD 4500 Series]
0x9581 1002 = RV630 [Mobility Radeon HD 2600]
0x9583 1002 = RV630 [Mobility Radeon HD 2600XT] iMac 20\\\"
0x9588 1002 = RV630 [Radeon HD 2600 XT] Mac pro
0x9591 1002 = M86 [Mobility Radeon HD 3650]
0x9593 1002 = M86 [Mobility Radeon HD 3670]
0x9598 1002 = RV630 [Radeon HD 4570]
0x9599 1002 = RV635 [Radeon HD 3600 Series]


ATIRadeonX2000.kext from 10.6.3 :
QUOTE
0x9400 1002 R600 XT [Radeon HD 2900 XT]
0x9400 1002 = R600 [Radeon HD 2900 XT]
0x9401 1002 = R600 XT [Radeon HD 2900 XT]
0x9402 1002 = R600 XT [Radeon HD 2900 XT]
0x9403 1002 = R600 XT [Radeon HD 2900 Pro] iMac 24\\\"
0x9440 1002 = RV770 [Radeon HD 4870]
0x9442 1002 = RV770 [Radeon HD 4800 Series]
0x944A 1002 = M98 [Mobility Radeon HD 4850]
0x9456 1002 = RV770 [ATI FirePro V8700]
0x945A 1002 = M98 [Mobility Radeon HD 4870]
0x9480 1002 = M96 [Mobility Radeon HD 4650]
0x9488 1002 = RV730 [Radeon HD 4650]
0x9490 1002 = RV730 [Radeon HD 4670]
0x949E 1002 = RV730 [FirePro V5700]
0x94c8 1002 = RV610 [Mobility Radeon HD 2400 XT] iMac 20\\\"
0x94c9 1002 = RV610 [Mobility Radeon HD 2400]
0x94a0 1002 = M97 [Mobility Radeon HD 4830]
0x9500 1002 = ?
0x9501 1002 = RV670 XT [Radeon HD 3870]
0x9504 1002 = M88 [Mobility Radeon HD 3850]
0x9505 1002 = RV670 [Radeon HD 3850]
0x9506 1002 = M88 [Mobility Radeon HD 3850 X2
0x9507 1002 = RV670 [Radeon HD 3830]
0x9540 1002 = RV710 [Radeon HD 4550]
0x9541 1002 = RV710
0x954E 1002 = RV710
0x954F 1002 = RV710 [Radeon HD 4350]
0x9552 1002 = M92 [Mobility Radeon HD 4300 Series]
0x9553 1002 = M92 [Mobility Radeon HD 4500 Series]
0x9581 1002 = RV630 [Mobility Radeon HD 2600]
0x9583 1002 = RV630 [Mobility Radeon HD 2600XT] iMac 20\\\"
0x9588 1002 = RV630 [Radeon HD 2600 XT] Mac pro
0x9591 1002 = M86 [Mobility Radeon HD 3650]
0x9593 1002 = M86 [Mobility Radeon HD 3670]
0x9598 1002 = RV630 [Radeon HD 4570]
0x9599 1002 = RV635 [Radeon HD 3600 Series]


That means if you have one of the boards above, it should be supported, however that support will be limited by the outputs that the framebuffer is designed to support.
To enable the use of a kext for your card, you have to insert your dev ID inside the plist of the chosen kext, if it's not already there.
GPUs prior to R500 are only supported up to Tiger 10.4.7 with OpenGL.framework from the same version (support has been dropped with later versions). No way to get one of those working with Leopard. You still could load the kexts but the framework would panic. Those GPUs also never got any intel framebuffer.

Note about board numbers and generations :
Better rely on the GPU model than the board name, those are confusing and don't really mean a thing, ATI do what they want with them. Two cards with a very close number, can be very different, and on the opposite, two cards with a very different number can be very close if not identical.
Example : there are three X1300 models, different enough to use different kexts, and be supported or not.
A marketing trick consists in rebranding some models that use chips from older generation with up to date names so that they don't feel old.
This is the case of the X2500 which is actually a X1000 series card, hence its support by the X1000 kext, instead of the X2000 one, as the card name would suggest. Same with X1050, it's not a X1000 but would use the 9700 kext.
To get a detailed list of board names and their GPUs, you can check this database.


Missing so far :
- Some framebuffers missing/unknown.
- Some device IDs unkown.


PS : This thread is not for support. People seeking for help about their card will have their post deleted.

Last update :12/01/2010



Add Reply Start a new topic
2 User(s) are reading this topic (2 Guests and 0 Anonymous Users)
0 Members: