Jump to content

ATI Radeon HD6000, HD5000 and HD4000 series support in Chameleon


Kabyl
 Share

868 posts in this topic

Recommended Posts

@kabyl: I was going through the sources of your booter coz it would say Unsupported card for my Radeon 4550 HD. I found that you use 0x954F as dev id for them and I found the same info here: http://wikidrivers.com/wiki/ATI_Catalyst_9.10.

 

But a quick search online confirms that my dev id 0x9540 is the one for 4550!! how did this happen? any ideas?

in your booter 9540 is used for ATI Radeon HD 4590. help?!

 

i do not have option to change resolution or QE/CI. tried all the "bird" framebuffers and still no go.

 

EDIT: In my case ATIx2000 and ATISupport are loaded. ATI4500 throws some "symbol" errors and wont load. ATIFB not loaded at all.. both vanilla 2000 and 4500 have my dev id in their plists already

Link to comment
Share on other sites

Thx bcc9,

 

Here is result from Sapphire HD 5870 1GB card.

 

 

./radeondump < 1002_6898.rom

ATOM BIOS Rom:

SubsystemVendorID: 0x174b SubsystemID: 0xe140

IOBaseAddress: 0x0000

Filename: 140X0300.S4S

BIOS Bootup Message:

CYPRESS XT GDDR5 32Mx32 C00801 BIOS UCODEv:126

 

Audio chip info: 0

Connector at index 0 type: DisplayPort (10)

Connector at index 1 type: HDMI-A (11)

Connector at index 2 type: DVI-I (2)

Connector at index 3 type: DVI-I (2)

Connector at index 4 type: DVI-I (2)

Connector at index 5 type: DVI-I (2)

 

 

I have working HDMI audio with DSDT insertion.

I use Kabyl boot ver 733 only with GraphicsEnabler=Yes.

Glad to know you have working HDMI audio via ATI 5870.

Do you use AtiConfig=Uakari FrameBuffer or others ?

Do you get HDMI audio via its DisplayPort, HDMI-A, or both ports ?

Hope your setup can be applied to my ATI 5850.

Thanks.

Link to comment
Share on other sites

If it helps at all:

 

ATOM BIOS Rom: 
SubsystemVendorID: 0x174b SubsystemID: 0xe140
IOBaseAddress: 0x0000
Filename: 140X0300.S5B
BIOS Bootup Message: 
CYPRESS XT GDDR5 32Mx32 C00801 BIOS UCODEv:126							  

Audio chip info: 0
Connector at index 0 type: DisplayPort (10)
Connector at index 1 type: HDMI-A (11)
Connector at index 2 type: DVI-I (2)
Connector at index 3 type: DVI-I (2)
Connector at index 4 type: DVI-I (2)
Connector at index 5 type: DVI-I (2)

 

This is from a Sapphire 5870 1GB "Gamer" edition.

Link to comment
Share on other sites

So I did find in ATIFramebuffer where the driver maps the ATIConfig personalities (Uakari/vervet/etc.) to statically defined ConnectorInfo tables. Among other things these tables include hardcoded connector type and connector counts. I took the uakari table and changed the connector type from 0x200 to 0x800 and was able to get my HDMI display to finally show up as connector type 0x800. Unfortunately I still don't have HDMI audio hot-plugging :(

Link to comment
Share on other sites

Hi. I'm a Mobility Radeon HD4570 user and I'm trying your booter.

 

My graphics card ID is 0x9553, this ID is in ATI's kext however when I try to boot I've a black screen or corrupted grey squares.

 

Now when I use your boot whiout graphics enabler I can boot OSX but with VESA graphics (however ATIRadeonX2000.kext and ATISupport.kext are loaded, not ATI4500Controller.kext)

 

When I try to boot with Graphics Enabler I've this error:

 

ATI card POSTed, reading VBIOS from legacy space

Memory allocation error! Addr=0xdeadbeef, Size 0x0 File=ati.c, Line=668

This is anon recoverable error! System HALTED!

 

Now I've tried with Nomascus Fb (the same as Chinese people). But the error says that there is an error/conflict in the line 668.

 

My laptop it's an Acer Aspire 5738ZG with an ATI Mobility Radeon HD 4570 512mb. I've extracted my bios whit Everest under Windows 7 x64. I can attach it if you want.

 

My laptop has a VGA and HDMI out, so if i can use one of these whit an external monitor it's enough for me.

 

Thanks!

Link to comment
Share on other sites

Glad to know you have working HDMI audio via ATI 5870.

Do you use AtiConfig=Uakari FrameBuffer or others ?

Do you get HDMI audio via its DisplayPort, HDMI-A, or both ports ?

Hope your setup can be applied to my ATI 5850.

Thanks.

 

I don't use AtiConfig in c.a.B.p but yes FrameBuffer is Uakari.

 

I only use HDMI-A conection with my TV and DVI-I to my Monitor.

 

Do you have DSDT part for HDMI audio?

Link to comment
Share on other sites

So I did find in ATIFramebuffer where the driver maps the ATIConfig personalities (Uakari/vervet/etc.) to statically defined ConnectorInfo tables. Among other things these tables include hardcoded connector type and connector counts. I took the uakari table and changed the connector type from 0x200 to 0x800 and was able to get my HDMI display to finally show up as connector type 0x800. Unfortunately I still don't have HDMI audio hot-plugging :)

Hi, glad to know you can change the connector type from 0x200 to 0x800.

Can you show us how to do it step by step ?

Because in Uakari_Personality there are two items only:aty_config & aty_properties

And I can not find anything related to its connector type setting.

Regarding the ConnectorInfo tables, is it located in ATIFramebuffer or somewhere ?

Thanks.

 

 

I don't use AtiConfig in c.a.B.p but yes FrameBuffer is Uakari.

 

I only use HDMI-A conection with my TV and DVI-I to my Monitor.

 

Do you have DSDT part for HDMI audio?

Thanks for your prompt reply.

Yes, I have edited my DSDT.aml and In System Profile --> Audio there is HDMI audio too.

I'll follow your connecting method to make sure HDMI audio is really working ASAP.

Link to comment
Share on other sites

Success - I was able to get HDMI audio working on my sapphire radeon hd 5670 thru editing the ConnectorInfo tables.

I have also been able to get all 3 connectors (HDMI, displayport, DVI) working simultaneously, instead of just 1 or 2 out of 3 depending upon which static personality I defined via AtiConfig. This was thru patching the ConnectorInfo table as well. post-382001-1298717843_thumb.jpg

 

Patching the ConnectorInfo table(s) involves hex editing the binary. I'll see if I can write up how one might do so for themselves. But the procedure is hardly general purpose at this point, basically involving finding working connectors for your hardware and merging them together into a custom modified table.

Link to comment
Share on other sites

Success - I was able to get HDMI audio working on my sapphire radeon hd 5670 thru editing the ConnectorInfo tables.

I have also been able to get all 3 connectors (HDMI, displayport, DVI) working simultaneously, instead of just 1 or 2 out of 3 depending upon which static personality I defined via AtiConfig. This was thru patching the ConnectorInfo table as well. post-382001-1298717843_thumb.jpg

 

Patching the ConnectorInfo table(s) involves hex editing the binary. I'll see if I can write up how one might do so for themselves. But the procedure is hardly general purpose at this point, basically involving finding working connectors for your hardware and merging them together into a custom modified table.

 

This sounds great bcc9! well done!

Link to comment
Share on other sites

Like yeehaa, I'm having a problem.

 

I technically have an ATI Radeon HD 4550.

Technically means the box says it.

 

Windows says I have a 4350..

 

So, I followed the instructions for a guide solely for the 4350, and it even gave instructions on how to install it for 10.6.6.

Didn't work; System Profiler did detect my card as an ATI with 256MB though. But my card has 512MB.

I'm still stuck at 1024x768, and "Graphics Mode"="1366x768x32" doesn't do anything.

 

The 4350 for 10.6.6 method doesn't work, and there are no current methods for 4550 and 10.6.6.

I've found guides for 10.6.4 and 10.6.2 but none of them worked.

 

If I have to, I guess I can order a GeForce 8400GS..but only if I have to..because I reealy wanna get my HD 4550 working.

 

Any help is appreciated :)

Thank you!

Link to comment
Share on other sites

I have a 5450 when it boots it says unsupported card no mater what I put in AtiConfig but when I change it in the source code and compile it finds the card but freezes before loading the desktop. Is this a sign of the wrong fb or is something else wrong?

 

I have a 5450 when it boots it says unsupported card no mater what I put in AtiConfig but when I change it in the source code and compile it finds the card but freezes before loading the desktop. Is this a sign of the wrong fb or is something else wrong?

Link to comment
Share on other sites

I posted the information regarding my attempts to get the HD5450 512MB to work a page back or so. I was unsuccessful.

 

It appears that the card is not supported--not even with AtiConfig or UseAtiROM. Or I'm just doing it wrong ;p

 

Maybe once this all goes into the main Chameleon release we will get a thorough guide and explanation for some of the non-standard cards.

Link to comment
Share on other sites

Hi, anybody knows how to fix that error or what about is it (line 668) ?

 

ATI card POSTed, reading VBIOS from legacy space

Memory allocation error! Addr=0xdeadbeef, Size 0x0 File=ati.c, Line=668

This is anon recoverable error! System HALTED!

 

I've a laptop with Mobility Radeon HD4570 and using Lion's kext I can use the Hdmi port and my laptop's screen works with color corruption. It happens with Peregrine FB and I want to try with others.

 

Thanks for your help!!

Link to comment
Share on other sites

I posted the information regarding my attempts to get the HD5450 512MB to work a page back or so. I was unsuccessful.

 

It appears that the card is not supported--not even with AtiConfig or UseAtiROM. Or I'm just doing it wrong ;p

 

Maybe once this all goes into the main Chameleon release we will get a thorough guide and explanation for some of the non-standard cards.

 

Check out white_apple_x86's thread in the New Users' Lounge (he also has a signpost in this forum) - the HD5450 (all variants) can work; it does, however, require a variation of the same method (due to oddities in the Mobility-based GPU and BIOS). I *have* an HD5450 myself (VisionTek HD5450 512MB Dual-Display - this is the common passive-cooled version sold retail) that I have in my WinHack dual-boot beastie which has proper resolution support (1920x1080x32), proper display detection (Acer H233H.bmid with both DVI and HDMI connected - HDMI is currently display-only due to issues with VoodooHDA unique to 10.6.6) and CI/QE support thanks to this method.

 

I have AtiConfig=Hoolock, UseAtiROM=Yes (the properly-extracted ROM is in /Extra) and arch=x86_64 settings all active. I do not currently have a DSDT in use (I do have one backed-up; however, I will likely have to edit it due to this and other changes that will likely be required). I'm also using the standard kernel that is included with 10.6.6.

 

It's not your fault - AMD did some weirdness to get these FrankenGPUs to work at all, let alone as Mobility GPUs in desktop PCIe clothes.

Link to comment
Share on other sites

The 5400 series of cards is disabled in the ati.c with a knull buffer and no matter what you type as AtiConfig it stays disabled. After enabling it I have found that Eulemur works for my vga port and Alouatta for the DVI. I have not managed to get the HDMI port to give me anything but junk so far. Here is a boot that has the Eulemur fb by default for the 5400 series cards but now that it is enabled the fb can be changed with the AtiConfig boot option to try the others.

boot.zip

Link to comment
Share on other sites

Greetings all and thank for all this info.

 

So I'm finally up and running (32bit mode only) but NO QE/CI. Maybe someone could help.

 

ASUS P6X58D-E i7950

MSI ATI 5870 (ID1002_6898_0b001002)

10.6.6.

 

After installing kabyl's boot file, my system booted with no problems but when I use Uakari I actually get all 3 of my screens working :) (as opposed to 2 of them being mirrored before) so I have set AtiConfig=Uakari in my com.apple.boot.plist. As stated earlier I'm running in 32 bit mode (arch=i386)

 

The only ATI kexts installed in my S/L/E are all the X3000 ones and the ATI5000Controller, FrameBuffer, Support ones. All the others have been deleted.

 

Is there a way for me to get QE/CI enabled?

 

Thanks again!

Link to comment
Share on other sites

Here is a boot file with the 45XX card enabled with a id of 9540 and default frame buffer of Peregrine. I haven't tested it but if it is working you should see your Ati card detected instead of card unsupported.

 

thanks man! will try and report back when i get home.. :P

Link to comment
Share on other sites

What do you think is better .. The Chameleon here with "AtiConfig" with framebuffer or this netkas kext .. ? ATY_init

 

The modded method (that white_apple_x86 refers to) uses both, and can be applied to even vanilla installs (I applied mine back when I reinstalled an otherwise-stock 10.6.3 via the [url=&quot;http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/&quot;]#####[/url]+[url=&quot;http://www.insanelymac.com/forum/topic/279450-why-insanelymac-does-not-support-tonymacx86/&quot;]#####[/url] method after the MB reboot).

 

ATY_Init is modified to work around the (apparently) deliberate nulling of the HD5400 series in ati.c (I can even understand why it was done - the BIOS used by the HD5450 under normal circumstances is a duplicate of the HD4890 BIOS); instead, it deliberately misidentifies the card as an HD5500 series (which was *not* nulled) and is the same sort of GPU (Mobility in desktop clothing).

 

The other reason for the deliberate misidentification is so this method will work with the original ATI5000Controller and ATIRadeonX3000 kexts (both of which are installed by the 10.6.6 Combo Update *or* Graphics Update 1.0). The HD5450 is correctly in the second, but not the first (nor does it appear in ATIFramebuffer.kext, which is required for proper CI/QE support in any case).

 

Despite the "Unsupported card!" message still appearing, I have complete CI/QE support, and a proper display resolution (my Acer H233H is properly detected by both the DVI and HDMI ports; due to the issues I have with VoodooHDA and 10.6.6, I have only the DVI port connected); all the information being kicked back to me (by System Profiler, System Preferences, and by both NovaBench and GeekBench) shows that both CI and QE are indeed working. Also, despite the nulling, the correct card identification *does* show up in System Profiler. However, I have to keep arch=i386 (not for this, but for the kX Project driver for my Audigy).

 

The 5400 series of cards is disabled in the ati.c with a knull buffer and no matter what you type as AtiConfig it stays disabled. After enabling it I have found that Eulemur works for my vga port and Alouatta for the DVI. I have not managed to get the HDMI port to give me anything but junk so far. Here is a boot that has the Eulemur fb by default for the 5400 series cards but now that it is enabled the fb can be changed with the AtiConfig boot option to try the others.

 

Unless you are connecting to a CRT, why use the VGA port?

 

WIth the white_apple_x86 method, I use AtiFb=Hoolock (covers both DVI and HDMI ports *and* allows mirroring) in com.apple.Boot.plist. While arch=i386 is needed *prior* to application of either Graphics Update 1.0 or the 10.6.6 Combo Update (which adds the missing kexts for CI/QE), I didn't normally need it after applying the CU to 10.6.6 (the only reason I need it now is the kX Project driver for my Audigy).

 

Normally, only two of the three ports on the HD5450 are enabled at a time (even more surprising, the HDMI port is usually the default in a dual-display setup) - what *brand* of HD5450 do you have? (I do know of one Sapphire model that is sold in an Eyefinity-ready configuration.)

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...