Sorry for the late answer... Here it is : my very first howto :-)
HOWTO : edit your DSDT file to enable your 2400 XT or PRO with QE/CI (at least for me)
My machine : Dell Vostro 200, Intel Dual Core 2 Duo, ICH9R based (btw : everything works now, except sleep...)
I'm currently running 10.5.8. I didn't tried this on Snow Leopard, and I don't know if it could help.
My main source for getting this to work : I once came accross this
page (in french) that talked about adding some code to the dsdt file in order to get it correctly recognized by the system.
Explaining how to extract, compile, correct and edit your dsdt file is outside the scope of the howto, but you'll find plenty of explanations about this on the web. I personally used DSDTSE, a
new tool (english version : scroll down) which seems to really "simplify" (that stays really a geeky trick) the whole process.
After having extracted your dsdt.aml file (tools > extract), start with adding a small bit of code in the beginning of your file, just after the headers :
CODE
Method (DTGP, 5, NotSerialized)
{
If (LEqual (Arg0, Buffer (0x10)
{
/* 0000 */ 0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,
/* 0008 */ 0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B
}))
{
If (LEqual (Arg1, One))
{
If (LEqual (Arg2, Zero))
{
Store (Buffer (One)
{
0x03
}, Arg4)
Return (One)
}
If (LEqual (Arg2, One))
{
Return (One)
}
}
}
Store (Buffer (One)
{
0x00
}, Arg4)
Return (Zero)
}
Then search for something looking at this :
CODE
Device (PCI0) (note : could be PCI1 depending of your hardware)
{
Name (_HID, EisaId ("PNP0A03"))
Name (_ADR, 0x00)
Name (_UID, 0x01)
Name (_BBN, 0x00)
Method (_S3D, 0, NotSerialized)
{
If (LEqual (OSFL, 0x02))
{
Return (0x02)
}
Else
{
Return (0x03)
}
... and replace it with the following code (using PCI1 if it applies to you) :
CODE
Device (PCI0)
{
Name (_HID, EisaId ("PNP0A03"))
Name (_ADR, 0x00)
Name (_UID, 0x01)
Name (_BBN, 0x00)
Device (GFX0)
{
Name (_ADR, Zero)
Name (_SUN, One)
Method (_DSM, 4, NotSerialized)
{
Store (Package (0x1E)
{
"@0,compatible",
Buffer (0x0B)
{
"ATY,Megalodon" /* <-----Change your framebuffer to the one you need (Wormy, Megalodon, Motmot) */
},
"@0,deviceType",
Buffer (0x08)
{
"display"
},
"@0,VRAM,memsize",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x40
},
"@0,display-connect-flags",
Buffer (0x02)
{
0x00, 0x04
},
"@0,name",
Buffer (0x0E)
{
"ATY,Display_A"
},
"@1,compatible",
Buffer (0x0B)
{
"ATY,Megalodon" /* <-----Change your framebuffer to the one you need (Wormy, Megalodon, Motmot) */
},
"@1,device_type",
Buffer (0x08)
{
"display"
},
"@1,VRAM,memsize",
Buffer (0x08)
{
0x00, 0x00, 0x00, 0x40
},
"@1,display-connect-flags",
Buffer (0x02)
{
0x00, 0x04
},
"@1,name",
Buffer (0x0E)
{
"ATY,Display_B"
},
"ATY,Card#",
Buffer (0x0E)
{
"109-B148xx-00"
},
"ATY,Rom#",
Buffer (0x0F)
{
"113-B1480A-236"
},
"device_type",
Buffer (0x11)
{
"ATY,MegalodonParent" /* <--Change your framebuffer to the one you need (Wormy, Megalodon, Motmot) */
},
"VRAM,totalsize",
Buffer (0x04)
{
0x10 /*<-----------Ram Amount: 0x40 = 1024mb, 0x20= 512mb, 0x10= 256mb */
},
"model",
Buffer ()
{
"ATI Radeon HD 2400 Series - DSDT generated" /* Change name here */
}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}
Now the hard part : Tools > Save (accept default location and name), then Compile your file (Tools > Compile)... And correct the errors if any. Google the error messages you get, you'll find the corrections quiet easily (it took me something like an hour to get mine compiling without errors).
Once compiled, install your dsdt.dsl file (Tools > Install) and reboot.
You should see a second VGA adapter - the one you just added to your dsdt file - in the PCI cards section of the System Profiler :

Now the easiest part : download
netkas's RadeonHD
package and install it.
Like usual, patch the ATIRadeonX2000.kext file with your PCI ID (0x94C1 or 0x94C3), reboot, and... cross your fingers :-)
You should FINALLY get full QE/CI :

Please let us know if it worked for you and mail me privately if you need assistance...
Enjoy
Pagaille