Mobility Radeon - 10.6.6/7 guide for QE/CI - testing 10.7
Started by wmarsh, Jan 26 2011 10:32 PM
563 replies to this topic
#41
Posted 27 February 2011 - 10:09 PM
[quote name='wmarsh' date='Feb 27 2011, 04:46 PM' post='1646361']
Well, I added my dev id to the 10.7 ATI4600Controller.kext and it does not load for me.
[EDIT repatched it and it loads]
however, I now have 7.0.52 versions of ATI4600Controller, ATISupport, and ATIRadeonX2000 all loaded, but am still in VESA graphics. This is with my nomascus DSDT mod.
Reading the info.plist in ATIFramebuffer, I no longer read the list of framebuffer personalities, so I am uncertain that we can fix this by specifying a different framebuffer, but I agree thats what to try next.
[EDIT same result with Kabyl's loader and "GraphicsEnabler"="y"]
Well, I added my dev id to the 10.7 ATI4600Controller.kext and it does not load for me.
[EDIT repatched it and it loads]
however, I now have 7.0.52 versions of ATI4600Controller, ATISupport, and ATIRadeonX2000 all loaded, but am still in VESA graphics. This is with my nomascus DSDT mod.
Reading the info.plist in ATIFramebuffer, I no longer read the list of framebuffer personalities, so I am uncertain that we can fix this by specifying a different framebuffer, but I agree thats what to try next.
[EDIT same result with Kabyl's loader and "GraphicsEnabler"="y"]
#42
Posted 27 February 2011 - 10:25 PM
You don't have loaded ATIFramebuffer.kext. Try with a non mod DSDT.
#43
Posted 27 February 2011 - 11:21 PM
#44
Posted 28 February 2011 - 11:38 AM
I also have a laptop with ATI Radeon 4330 HD Mobility (Lenovo IdeaPad U450P - M23L6GE). Please let me know, if I can helpyou in any way.
At the moment, I'm still running Win 7 on it cause of the QE/CI problems with the mobility series on osx.
Feel free to contact me.
At the moment, I'm still running Win 7 on it cause of the QE/CI problems with the mobility series on osx.
Feel free to contact me.
#45
Posted 01 March 2011 - 02:52 AM
Hi All!
Read this thread carefully:
http://www.insanelym...p...t&p=1646480
I think bcc9 has discovered a way to change which ports the framebuffers output to.
The info I have found tells me some of the older FB did output on LVDS, like Wormy
http://www.projectos...php?showtopic=9
But the newer FB (the birds) are the ones which should be right for our video.
It might be possible to modify ATIFramebuffer.kext to give us LVDS output using bcc9's method.
Everything else loads; this is all that stands between us and QE.
[EDIT -- bcc9 posted the following]
I have collected all the tools, and will attempt to make a modified MotMot with primary port output to LVDS as that is what I think will work for my laptop.
[EDIT Wormy, Iago and several others are 0x2000
I have made 2 edited 10.6.6 ATIFramebuffer.kext with these changes, they are attached.
I have not tested yet, as I did this on my good desktop and my laptop is at home.
You may try, I will test tonight and report. I modified MotMot, so if they work, they should do so with GraphicsEnabler=y]
[EDIT -- math error in offset for Wormy. Attachment deleted. See bcc9's thread. Will redo and repost.]
Read this thread carefully:
http://www.insanelym...p...t&p=1646480
I think bcc9 has discovered a way to change which ports the framebuffers output to.
The info I have found tells me some of the older FB did output on LVDS, like Wormy
http://www.projectos...php?showtopic=9
But the newer FB (the birds) are the ones which should be right for our video.
It might be possible to modify ATIFramebuffer.kext to give us LVDS output using bcc9's method.
Everything else loads; this is all that stands between us and QE.
[EDIT -- bcc9 posted the following]
bcc9, on Feb 28 2011, 10:21 PM, said:
And that's an interesting connector table. Assuming it's right about the LVDS ports, that would make:
#define CONNECTORTYPE_LVDS 0x0002
as an addition to post #1, which is actually what I thought but was uncertain.
Since there are apple products shipping with mobile radeons, yes I see no reason why you shouldn't be able to make 3rd party mobile radeons work, at least for gpus sufficiently similar to the genuine apple models.
#define CONNECTORTYPE_LVDS 0x0002
as an addition to post #1, which is actually what I thought but was uncertain.
Since there are apple products shipping with mobile radeons, yes I see no reason why you shouldn't be able to make 3rd party mobile radeons work, at least for gpus sufficiently similar to the genuine apple models.
I have collected all the tools, and will attempt to make a modified MotMot with primary port output to LVDS as that is what I think will work for my laptop.
[EDIT Wormy, Iago and several others are 0x2000
I have made 2 edited 10.6.6 ATIFramebuffer.kext with these changes, they are attached.
I have not tested yet, as I did this on my good desktop and my laptop is at home.
You may try, I will test tonight and report. I modified MotMot, so if they work, they should do so with GraphicsEnabler=y]
[EDIT -- math error in offset for Wormy. Attachment deleted. See bcc9's thread. Will redo and repost.]
#46
Posted 01 March 2011 - 11:04 PM
Hi. Now I'm testing the stock framebuffers whit Lion's kext (10.7), it's a heavy work because Kabyl's boot doesn't work for me and I'm editing the chameleon's Ati injector one by one :/.
The results of my test are these:
I'll update the list when I test more framebuffers.
I think that finally our problems have been ever about Framebuffer. In Chameleon and PC EFI the default Framebuffer for our Graphics Card is Peregrine.
I've detected that the Lion's framebuffer it's different from Snow's framebuffer. Maybe that is the reason why now It's peregrine framebuffer working for me and not whit SL kext. And maybe it's not working to wmarsh and the order of the ports is different for his graphic card.
About edit a framebuffer I think that a good idea. I've looked bcc9's post but I don't underestand well what is he doing, What is "ATIframebuffer"? the kext? the file inside the kext? If you can helpme I'll try to work it.
The results of my test are these:
Quote
Flicker - Doesn't work - White draped screen
Gliff - Doesn't work - Black screen
Kakapo - 50% working - Native resolution but corrupted colors, HDMI works fine
Motmot - 50% working - Native resolution but corrupted colors, HDMI works fine
Peregrine 50% working - Native resolution but corrupted colors, HDMI works fine
Quail - 50% working - Native resolution but corrupted colors, HDMI works fine
Raven - 50% working - Native resolution but corrupted colors, HDMI works fine
Wormy - 50% working - Native resolution but corrupted colors, HDMI works fine
Nomascus - 50% working - Native resolution but corrupted colors, HDMI works fine
Gliff - Doesn't work - Black screen
Kakapo - 50% working - Native resolution but corrupted colors, HDMI works fine
Motmot - 50% working - Native resolution but corrupted colors, HDMI works fine
Peregrine 50% working - Native resolution but corrupted colors, HDMI works fine
Quail - 50% working - Native resolution but corrupted colors, HDMI works fine
Raven - 50% working - Native resolution but corrupted colors, HDMI works fine
Wormy - 50% working - Native resolution but corrupted colors, HDMI works fine
Nomascus - 50% working - Native resolution but corrupted colors, HDMI works fine
I think that finally our problems have been ever about Framebuffer. In Chameleon and PC EFI the default Framebuffer for our Graphics Card is Peregrine.
I've detected that the Lion's framebuffer it's different from Snow's framebuffer. Maybe that is the reason why now It's peregrine framebuffer working for me and not whit SL kext. And maybe it's not working to wmarsh and the order of the ports is different for his graphic card.
About edit a framebuffer I think that a good idea. I've looked bcc9's post but I don't underestand well what is he doing, What is "ATIframebuffer"? the kext? the file inside the kext? If you can helpme I'll try to work it.
#47
Posted 02 March 2011 - 05:27 AM
hjs89, on Mar 1 2011, 06:04 PM, said:
About edit a framebuffer I think that a good idea. I've looked bcc9's post but I don't underestand well what is he doing, What is "ATIframebuffer"? the kext? the file inside the kext? If you can helpme I'll try to work it.
/Contents/MacOS/ATIFramebuffer is a binary executable
We are decompiling it, examining the code, and manually changing the table that says which ports to connect with hexeditor.
hjs89, on Mar 1 2011, 06:04 PM, said:
I think that finally our problems have been ever about Framebuffer. In Chameleon and PC EFI the default Framebuffer for our Graphics Card is Peregrine.
#48
Posted 02 March 2011 - 09:34 AM
wmarsh, on Mar 2 2011, 06:27 AM, said:
Open ATIFramebuffer.kext as a directory.
/Contents/MacOS/ATIFramebuffer is a binary executable
We are decompiling it, examining the code, and manually changing the table that says which ports to connect with hexeditor.
/Contents/MacOS/ATIFramebuffer is a binary executable
We are decompiling it, examining the code, and manually changing the table that says which ports to connect with hexeditor.
Yes, after I post I started to work on it. My fail was that I was working with Lion's framebuffer, it seems to be different and there isn't any answer at otool comand. After I try with Snow's kext and it worked.
The thing that I don't understand now is where did you find "virtual_address" and "start_address_for_segment". Sorry, my knowledge about hex it's really poor.
wmarsh, on Mar 2 2011, 06:27 AM, said:
Thanks, I forgot. Thought it was MotMot. Probably thats why my 1st try failed. Hopefully can do Peregrine tommorrow. Now I know how it should be straightforward, and I already have a couple different DSDT injecting Peregrine in different ways if GraphicsEnabler fails.
If you want I can upload the boot modded to load Motmot, I did for 9553 and 9552. When I'm using Lion's kext IOregestry reports me that my port 0 is "0x2" (LVDS I think) and port 1 is "0x8" (HDMI), (there isn't nothing about my VGAport
After that I installed 10.6.6 kexts and tried with stock Wormy (black/grey corruption) and stock Nomascus (Black screen).
#49
Posted 02 March 2011 - 11:34 AM
hjs89, on Mar 2 2011, 04:34 AM, said:
Yes, after I post I started to work on it. My fail was that I was working with Lion's framebuffer, it seems to be different and there isn't any answer at otool comand. After I try with Snow's kext and it worked.
The thing that I don't understand now is where did you find "virtual_address" and "start_address_for_segment". Sorry, my knowledge about hex it's really poor.
If you want I can upload the boot modded to load Motmot, I did for 9553 and 9552. When I'm using Lion's kext IOregestry reports me that my port 0 is "0x2" (LVDS I think) and port 1 is "0x8" (HDMI), (there isn't nothing about my VGAport
). With the Lion's framebuffer looking at (ActiveFlag) the port 1 is 0x4 or 0x8 so maybe that is why it works my hdmi port.
After that I installed 10.6.6 kexts and tried with stock Wormy (black/grey corruption) and stock Nomascus (Black screen).
The thing that I don't understand now is where did you find "virtual_address" and "start_address_for_segment". Sorry, my knowledge about hex it's really poor.
If you want I can upload the boot modded to load Motmot, I did for 9553 and 9552. When I'm using Lion's kext IOregestry reports me that my port 0 is "0x2" (LVDS I think) and port 1 is "0x8" (HDMI), (there isn't nothing about my VGAport
After that I installed 10.6.6 kexts and tried with stock Wormy (black/grey corruption) and stock Nomascus (Black screen).
You find "virtual_address" and "start_address_for_segment" using otool. bcc9's directions are quite explicit.
You get familiar with hex with practice. Last time I did this it was octal, a Z-80 cpu, and CP/M OS. I'm not good with hex, but its not dissimiliar.
I don't need the booter tx.
bcc9 just posted a new RadeonDump which I think will be very helpful in interrogating ports. I don't have HDMI so we will be different.
Project got put on hold as my daughter had emergency surgery last night. Will get back on it.
#50
Posted 02 March 2011 - 06:13 PM
More very helpful information from bcc9's thread. He has a new tool for examining the Video Bios.
Unlike desktop cards, we cannot dump video bios with gpu-z. However, there is a tool (also called radeondump) in dongs aborted ATIFramebuffer thread which will dump laptop video bios.
Use that to store VBIOS to a file, then use bcc9's tool to examine it.
We have been trying to enable LVDS on port 0.
All the native FB with LVDS use port 0.
My laptop at least is on port 1 so of course it did not match.
It might be helpful to know what others have.
[EDIT -- 1st test of modified Peregrine with output on port 0 to VGA/DVI and port 1 to LVDS still hangs.
As external port is port 0, I'm thinking we need to get that working 1st, then work on internal display. Seems silly since who really cares about external display on laptop.
Another thought is to disable port 0 as in Sphyrna]
[EDIT -- attached is 10.6.6 ATIFramebuffer with Peregrine mod to be VGA on port 0 and LVDS port 1, with my senseid
Some people wanted to test.
I still have no joy.
I have injected my EDID and my video ROM via com.apple.boot.plist
I have used GraphicsEnabler=y, also DSDT to inject Peregrine both at PCI0 and at AGP
I have tried switching to external monitor prior to Chameleon, and booting with that as primary display
In all cases the system fully boots without KP -- I have it set to make an audio tone when done -- but the graphics subsystem fails to start.
Currently, I am out of ideas and have switched again back to dongs FB.]
Unlike desktop cards, we cannot dump video bios with gpu-z. However, there is a tool (also called radeondump) in dongs aborted ATIFramebuffer thread which will dump laptop video bios.
Use that to store VBIOS to a file, then use bcc9's tool to examine it.
bash-3.2# ./radeondump < ./VBIOS/9552.0301.00E0.vga.rom ATOM BIOS Rom: SubsystemVendorID: 0x1028 SubsystemID: 0x02aa IOBaseAddress: 0xde00 Filename: BR31245C.001 BIOS Bootup Message: Dell_Roberts_M92S_GDDR3 M92 GDDR3 64bit 450e/600m Connector at index 0 type: VGA (1) Connector's i2cid: 91 Connector at index 1 type: LVDS (7) Connector's i2cid: 90
We have been trying to enable LVDS on port 0.
All the native FB with LVDS use port 0.
My laptop at least is on port 1 so of course it did not match.
It might be helpful to know what others have.
[EDIT -- 1st test of modified Peregrine with output on port 0 to VGA/DVI and port 1 to LVDS still hangs.
As external port is port 0, I'm thinking we need to get that working 1st, then work on internal display. Seems silly since who really cares about external display on laptop.
Another thought is to disable port 0 as in Sphyrna]
[EDIT -- attached is 10.6.6 ATIFramebuffer with Peregrine mod to be VGA on port 0 and LVDS port 1, with my senseid
Some people wanted to test.
I still have no joy.
I have injected my EDID and my video ROM via com.apple.boot.plist
I have used GraphicsEnabler=y, also DSDT to inject Peregrine both at PCI0 and at AGP
I have tried switching to external monitor prior to Chameleon, and booting with that as primary display
In all cases the system fully boots without KP -- I have it set to make an audio tone when done -- but the graphics subsystem fails to start.
Currently, I am out of ideas and have switched again back to dongs FB.]
#51
Posted 03 March 2011 - 06:24 AM
Mine is HD 4570:-
ATOM BIOS Rom: SubsystemVendorID: 0x1028 SubsystemID: 0x02bd IOBaseAddress: 0x0000 Filename: BR034783.006 BIOS Bootup Message: BR034783-006 M92 DDR3 64bit 500e/800m Connector at index 0 type: VGA (1) Connector's i2cid: 95 Connector at index 1 type: HDMI-A (11) Connector's i2cid: 91 Connector at index 2 type: LVDS (7) Connector's i2cid: 90So far no luck yet whether on internal or external display.
#52
Posted 03 March 2011 - 10:58 AM
Acer Aspire 5738ZG ATI Radeon Mobility HD 4570
kizwan's code it's totally different to mine. So I think that each laptop will have its framebuffer.
$ ./radeondump < 9553.0301.00E0.vga.rom ATOM BIOS Rom: SubsystemVendorID: 0x1025 SubsystemID: 0x0205 IOBaseAddress: 0x2000 Filename: BR33359D.bin BIOS Bootup Message: Acer_JV50_MV_M92M2_XT_DDR3 M92 DDR3 64bit 680e/800m Connector at index 0 type: LVDS (7) Connector's i2cid: 96 Connector at index 1 type: VGA (1) Connector's i2cid: 90 Connector at index 2 type: HDMI-A (11) Connector's i2cid: 91
kizwan's code it's totally different to mine. So I think that each laptop will have its framebuffer.
#53
Posted 03 March 2011 - 12:49 PM
Bad news guys
. I don't know if we are going to have QE/CI. I've mod Vervet framebuffer to my ports but and HDMI it's working but my laptop's screen still black.
ATI4600Controller.kext
ATIRadeon2000.kext
ATIFramebuffer.kext
ATISupport.kext
These kext are loaded but I don't have QE/CI
ATI4600Controller.kext
ATIRadeon2000.kext
ATIFramebuffer.kext
ATISupport.kext
These kext are loaded but I don't have QE/CI
#54
Posted 03 March 2011 - 01:26 PM
Too bad..
I was really hoping for this..
#55
Posted 03 March 2011 - 01:31 PM
hjs89, on Mar 3 2011, 08:49 PM, said:
Bad news guys
. I don't know if we are going to have QE/CI. I've mod Vervet framebuffer to my ports but and HDMI it's working but my laptop's screen still black.
ATI4600Controller.kext
ATIRadeon2000.kext
ATIFramebuffer.kext
ATISupport.kext
These kext are loaded but I don't have QE/CI
ATI4600Controller.kext
ATIRadeon2000.kext
ATIFramebuffer.kext
ATISupport.kext
These kext are loaded but I don't have QE/CI
#56
Posted 03 March 2011 - 01:58 PM
#57
Posted 04 March 2011 - 02:33 PM
hjs89, on Mar 3 2011, 09:58 PM, said:
Yes, HDMI port was working without QE/CI. I'm posting more feedback in bcc9's post, check it.
1) Did you add your ATI device ID in the ATI4600Controller?
2) Did you boot with GraphicsEnabler=Yes when you got the output through HDMI?
3) Did you boot to 32bit or 64bit mode?
#58
Posted 04 March 2011 - 02:54 PM
kizwan, on Mar 4 2011, 03:33 PM, said:
I have a couple of questions.
1) Did you add your ATI device ID in the ATI4600Controller?
2) Did you boot with GraphicsEnabler=Yes when you got the output through HDMI?
3) Did you boot to 32bit or 64bit mode?
1) Did you add your ATI device ID in the ATI4600Controller?
2) Did you boot with GraphicsEnabler=Yes when you got the output through HDMI?
3) Did you boot to 32bit or 64bit mode?
1) Yes, I did. I did in 10.6.6 and 10.7.
2) Yes, you have to inyect your graphics card, with the boot or other kext like ATY_init.
3) 32bit.
#59
Posted 05 March 2011 - 07:31 PM
WOORRKS!!!!!!!!!!!!!!!!!
Finally QE/CI was enabled on my 4570m!!!!!!!!!!! I can't believe it yet
- Translucent Toolbar
- Wavy effect on Dashboard
- DVD player loads
- Front Row works
But it's not perfect for the moment.
- As you can see my apple at the up-left corner it's green. The same happens with HD 4350 (desktop version of this chipset).
- Internal Display it's black, but HDMI port works, this might be improved editing the framebuffer.
- The resolutions of my HDMI display and my LVDS display are switched, but I can fix it with the SwitchRes Tool
, maybe when the LVDS is correctly working it'll be fixed.
About how it worked:
- You must be in Snow Leopard 10.6.6
- You must add your deviceID to ATI4600Controller.kext, mine is 0x95531002, it can variate in each case.
- Edit ATIFramebuffer.kext with modified Vervet framebuffer, maybe others will work, but now is which I'm using now.
- Bootloader with ATI injector configured with Vervet Fb. You can use Kabyl's boot if it works with your graphic card or modify other bootloader.
I'll do a how-to after do more test to fix the issues.
One screenshoot of my desktop, you can see my system profile with my card injected, DVD player working and translucent bar

Sorry, the system is in Spanish but I think that you'll understand the important things hehe
Finally QE/CI was enabled on my 4570m!!!!!!!!!!! I can't believe it yet
- Translucent Toolbar
- Wavy effect on Dashboard
- DVD player loads
- Front Row works
But it's not perfect for the moment.
- As you can see my apple at the up-left corner it's green. The same happens with HD 4350 (desktop version of this chipset).
- Internal Display it's black, but HDMI port works, this might be improved editing the framebuffer.
- The resolutions of my HDMI display and my LVDS display are switched, but I can fix it with the SwitchRes Tool
About how it worked:
- You must be in Snow Leopard 10.6.6
- You must add your deviceID to ATI4600Controller.kext, mine is 0x95531002, it can variate in each case.
- Edit ATIFramebuffer.kext with modified Vervet framebuffer, maybe others will work, but now is which I'm using now.
- Bootloader with ATI injector configured with Vervet Fb. You can use Kabyl's boot if it works with your graphic card or modify other bootloader.
I'll do a how-to after do more test to fix the issues.
One screenshoot of my desktop, you can see my system profile with my card injected, DVD player working and translucent bar

Sorry, the system is in Spanish but I think that you'll understand the important things hehe
#60
Posted 05 March 2011 - 09:12 PM
HOLY SH*T. This is HUGE! I'm eagerly waiting for this to work with the internal display! Such a groundbreaking news. I can't fuc*ing believe it.
THANKS A MILLION hjs89 (and everyone else who contributed to this). You will be remembered!
THANKS A MILLION hjs89 (and everyone else who contributed to this). You will be remembered!
0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users



Sign In
Create Account








