Jump to content

Mobility Radeon - 10.6.6/7 guide for QE/CI - testing 10.7


  • Please log in to reply
563 replies to this topic

#41
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
[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"]

#42
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male
You don't have loaded ATIFramebuffer.kext. Try with a non mod DSDT.

#43
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts

You don't have loaded ATIFramebuffer.kext. Try with a non mod DSDT.

I did. Still VESA graphics.

And if I kextutil ATIFramebuffer.kext it loads, but nothing happens.

I re-enabled dong's framebuffer until I get another idea.

#44
tommac_osx86

tommac_osx86

    InsanelyMac Protégé

  • Members
  • Pip
  • 34 posts
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.

#45
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
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]

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.


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
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male
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:

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

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.

#47
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts

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.

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.

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.

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.

#48
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male

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.


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.

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 :D). 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).

#49
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts

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).

There probably are new Developers Tools for Lion that would work.

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
wmarsh

wmarsh

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 900 posts
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.

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
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts
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: 90
So far no luck yet whether on internal or external display.

#52
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male
Acer Aspire 5738ZG ATI Radeon Mobility HD 4570
$ ./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
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male
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

#54
Fiber

Fiber

    InsanelyMac Protégé

  • Members
  • PipPip
  • 98 posts
Too bad.. :) I was really hoping for this..

#55
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

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

HDMI working but no QE/CI?

#56
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male

HDMI working but no QE/CI?


Yes, HDMI port was working without QE/CI. I'm posting more feedback in bcc9's post, check it.

#57
kizwan

kizwan

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPipPipPip
  • 1,422 posts

Yes, HDMI port was working without QE/CI. I'm posting more feedback in bcc9's post, check it.

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?

#58
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male

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) 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
hjs89

hjs89

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 150 posts
  • Gender:Male
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 :)
Posted Image
Sorry, the system is in Spanish but I think that you'll understand the important things hehe

#60
andrek

andrek

    InsanelyMac Protégé

  • Members
  • PipPip
  • 62 posts
  • Gender:Male
HOLY {censored}. 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!





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy