Jump to content

AMD Radeon HD 6650M / Graphics Enabler / DSDT / HDMI Audio / Acer Aspire 7750G - 2674G50Mnkk [Gradients Fixed]


Trucker MK
 Share

973 posts in this topic

Recommended Posts

We have two options to make the 6650M work: (Check pages 28-30 for fixing the gradients issue)

( Radeon HD 6470M Users read page 17-19 and 31-32, I will update my OP soon with 6470M stuff also)

 

Don't ask for help if you don't have: VBIOS, DSDT, IOReg file from your system (Switchable Graphic Cards are not supported)

 

Howto VBIOS:  Here VBIOS.zip, if AIDA64 is not working try this: http://www.insanelymac.com/forum/topic/277042-amd-radeon-hd-6650m-graphics-enabler-dsdt-hdmi-audio-acer-aspire-7750g-2674g50mnkk/?p=1845018

 

 Howto Kext patching here

1. With DSDT patch + patched ATI6000Controller.kext
2. GraphicEnabler=Yes + Patched ATI6000Controller.kext
But we can't use the same kexts. I will cover first the DSDT patch + patched ATI6000Controller.kext

ATI 6650M 2GB SubsystemVendorID: 0x1025 SubsystemID: 0x050e

Original Ipomoea configuration:

00 04 00 00 04 03 00 00 00 01 00 00 12 04 01 05
00 08 00 00 04 02 00 00 00 01 00 00 11 02 04 03
10 00 00 00 10 00 00 00 00 01 00 00 00 00 00 02

My best discovered Ipomoea configuration for DSDT + Patched ATI6000Controller.kext:

02 00 00 00 40 00 00 00 09 01 00 00 10 01 00 03
00 08 00 00 00 02 00 00 00 01 00 00 11 02 04 01
10 00 00 00 10 00 00 00 00 01 00 00 00 00 01 05

My best discovered Ipomoea configuration for GraphicsEnabler + Patched ATI6000Controller.kext:

02 00 00 00 40 00 00 00 09 01 00 00 20 01 00 03
00 08 00 00 00 02 00 00 00 01 00 00 11 02 04 01
10 00 00 00 10 00 00 00 00 01 00 00 00 00 01 05

I am now using this combination of HotPlugIDs, I will update the kexts eventually.

 

02 00 00 00 40 00 00 00 09 01 00 00 10 01 00 03
00 08 00 00 00 02 00 00 00 01 00 00 11 02 01 01
10 00 00 00 10 00 00 00 00 01 00 00 00 00 02 05

 

1. Downloads ATI 6650M 2GB SubsystemVendorID: 0x1025 SubsystemID: 0x050e (DSDT patch + patched ATI6000Controller.kext)
10.6.8_ATI6000Controller.kext.zip
10.7.0_ATI6000Controller.kext.zip
10.7.2_ATI6000Controller.kext.zip
10.7.3_ATI6000Controller.kext.zip
10.7.4_ATI6000Controller.kext.zip
10.7.5_ATI6000Controller.kext.zip
10.8.DP4_ATI6000Controller.kext.zip
10.8.2_ATI6000Controller.kext.zip
10.8.3_ATI6000Controller.kext.zip

10.8.4_ATI6000Controller.zip

===============================================

ATI6000Controller_10.9_DP1.zip

You need to replace Device (PEGP) in your DSDT with this code for the above kexts to work. Change "VRAM,totalsize", to 0x00, 0x00, 0x00, 0x40 if you have 1 GB VRAM.
But first you need to convert your VBIOS.rom to DSDT code with rom_dsdt_converter.exe (download here) and paste it in "ATY,bin_image", like this:
==========================================================================

            "AAPL,slot-name",
            Buffer (0x0C)\n
            {
                "PCIe Slot-1"
            },
            "ATY,bin_image", <= Look for this line in the code for Device(PEGP) below
            Buffer ()                <= leave Buffer empty!
            {
                PASTE YOUR CONVERTED VBIOS HERE IN ON ONE LINE
            },
            "device_type",
            Buffer (0x12)
            {
                "ATY,IpomoeaParent"
            },
==========================================================================
 You can download this PEGP2_6650M_2GB.txt.zip patch for the PEGP and apply it with DSDTParser.jar but you still need to manualy insert the converted VBIOS for the 6650M to be recognized  by the OS and of course Device (HDAU) for HDMI Audio. Place it just above Device (PEGP). You also need to apply the DTGP patch before compiling your DSDT.

This is how it should be shown in IORegistryExplorer post-423012-0-87789100-1372157381_thumb.png

            Device (HDAU)
            {
                Name (_ADR, One)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x02)
                        {
                            "hda-gfx", 
                            Buffer (0x0A)
                            {
                                "onboard-1"
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }
            Device (PEGP)
            {
                Name (_ADR, Zero)
                Name (_PRW, Package (0x02)
                {
                    0x09, 
                    0x04
                })
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x2E)
                        {
                            "@0,compatible", 
                            Buffer (0x0C)
                            {
                                "ATY,Ipomoea"
                            }, 
                            "@0,device_type", 
                            Buffer (0x08)
                            {
                                "display"
                            }, 
                            "@0,display-dual-link", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 
                            "@0,display-type", 
                            Buffer (0x04)
                            {
                                "LCD"
                            }, 
                            "@0,name", 
                            Buffer (0x0C)
                            {
                                "ATY,Ipomoea"
                            },
                            "@1,compatible", 
                            Buffer (0x0C)
                            {
                                "ATY,Ipomoea"
                            },
                            "@1,device_type", 
                            Buffer (0x08)
                            {
                                "display"
                            }, 
                            "@1,connector-type", 
                            Buffer (0x04)
                            {
                                0x00, 0x08, 0x00, 0x00
                            }, 
                            "@1,display-type", 
                            Buffer (0x05)
                            {
                                "NONE"
                            }, 
                            "@1,name", 
                            Buffer (0x0C)
                            {
                                "ATY,Ipomoea"
                            },
                            "@2,compatible", 
                            Buffer (0x0C)
                            {
                                "ATY,Ipomoea"
                            },
                            "@2,device_type", 
                            Buffer (0x08)
                            {
                                "display"
                            }, 
                            "@2,connector-type", 
                            Buffer (0x04)
                            {
                                0x10, 0x00, 0x00, 0x00
                            }, 
                            "@2,display-type", 
                            Buffer (0x05)
                            {
                                "NONE"
                            }, 
                            "@2,name", 
                            Buffer (0x0C)
                            {
                                "ATY,Ipomoea"
                            }, 
                            "AAPL00,DualLink", 
                            Buffer (0x04)
                            {
                                0x01, 0x00, 0x00, 0x00
                            }, 
                            "AAPL,slot-name", 
                            Buffer (0x0C)
                            {
                                "PCIe Slot-1"
                            }, 
                            "ATY,bin_image", 
                            Buffer ()
                            {
                            	PASTE CONVERTED VBIOS HERE IN ONE LINE THAN COMPILE
                            }, 
                            "device_type", 
                            Buffer (0x12)
                            {
                                "ATY,IpomoeaParent"
                            }, 
                            "VRAM,totalsize", 
                            Buffer (0x04)
                            {
                                0x00, 0x00, 0x00, 0x80
                            }, 
                            "model", 
                            Buffer (0x18)
                            {
                                "AMD Radeon HD 6650M 2GB"
                            }, 
                            "name", 
                            Buffer (0x12)
                            {
                                "ATY,IpomoeaParent"
                            }, 
                            "hda-gfx", 
                            Buffer (0x0A)
                            {
                                "onboard-1"
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }
        }

2. Downloads ATI 6650M 2GB SubsystemVendorID: 0x1025 SubsystemID: 0x050e (GraphicsEnabler=Yes + patched ATI6000Controller.kext)

10.6.8_ATI6000Controller.kext.SubsystemID.050E.zip
10.7.0_ATI6000Controller.kext.SubsystemID.050E.zip
10.7.2_GE_ATI6000Controller.kext.zip
10.7.3_GE_ATI6000Controller.kext.zip
10.7.4
10.7.5
10.8.DP4_GE_ATI6000Controller.kext.zip
10.8.2_GE_ATI6000Controller.kext.zip
10.8.3_GE_ATI6000Controller.kext.zip

10.8.4_GE_ATI6000Controller.zip
Chameleon_boot.zip Chimera_boot.zip (These are outdated versions of Chameleon and Chimera bootloaders, I will recompile newer versions if needed)

Latest Chameleon (24.02.2013) compiled with these SubsystemIDs Chameleon_boot.zip



{ 0x6741, 0x050E1025, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kIpomoea },

{ 0x6741, 0x050F1025, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kIpomoea },

{ 0x6741, 0x05131025, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kIpomoea },

Chameleon boot v2 Chameleon_boot_v2.zip , added SubsystemID 107C, SubsystemVendorID: 0x1043


{ 0x6741, 0x107C1043, CHIP_FAMILY_TURKS, "AMD Radeon HD 6650M", kIpomoea },

Edited by Trucker MK
  • Like 4
Link to comment
Share on other sites

Hi Trucker,

 

I followed your old post. I have exactly the same video card as you. I only have 1gb ram. I tried it with both of your methods, the one with ati init runned but only with the cursor on a white screen... Could you help me please? I have an acer 7750g with core i5. It works everything exept ethernet and graphics. I run 10.7.3. I also tried with the new mountain lion, but i get an error that the headers are not correct, maybe you have tried it with 10.8 too? Would be great if you could help me, i was waiting so long for a solution! ;)

Link to comment
Share on other sites

Hi, I haven't tried on 10.8. You can try now again on 10.7.3 with Chimera + ATI6000Controller.kext or ATY_init.kext + ATI6000Controller.kext. for 10.7.3. For the next few days i wont be around, i can't use my data plan on roaming, too expensive. I guess my 6650M is working the best, even Pentahex said that sometimes have black screen or "double vision" effect, i think he has also the one with 1 GB. Another user having 6650M with 2 GB RAM is having the same issues. I never got black screen, only few times "double vision" effect.

Edit. I believe that i can make this Ipomoea Personality ( or some other) even better but that will be after 2 months when i'll be at home and can test HDMI and VGA also. I don't have those in my truck, yet :P

Link to comment
Share on other sites

Thanks for the quick reply. I'm making a new fresh installation on my laptop with 10.7.3. I did not used your chimera build before, maybe thats the problem! You have done great work so far! See you in a few days :)

Link to comment
Share on other sites

Try again, it should work, I had some issues/mistakes with compiling chameleon.

 

It WORKS! Thank you very much! Writing this Message from the new Mac with the great resolution!!! I will make an entire disk backup now, so that i am save ;)

I will also post all required Kexts here, to get everything worked on the 7750g!

 

Thank you, for this great work!

Link to comment
Share on other sites

You are welcome, that's great news, try to reboot few times. Does it boot ok every time? Give me the vendor and device id from your ethernet. Maybe I can help you with that also.

 

Edit. There are more 7750G models, all with different hardware, mine for example is Acer Aspire 7750G-2674G50Mnkk, look on the bottom stickers.

Link to comment
Share on other sites

Everything works. The first boot on a clean install and it worked! I booted it 15 times now, no Problem at all. Maybe its because i updated to Bios 1.18 before install? I have the same Ethernet as you, maybe you can provide me the link to the kext? I only have one for 10.6. But it is not so important because Wifi works! Thank you!

Link to comment
Share on other sites

Nice! This works too! In the meantime, i got a Kernel Panic, but i rebooted again and it works! So the only thing which is left: The Touchpad. Do you have a driver for Multitouch? I can only move the cursor but with clicking on the pad nothing happens... ;)

Link to comment
Share on other sites

Maybe its because i updated to Bios 1.18 before install?

The last update for WhistlerPro chipset was in v1.09 i think, if you want, you can update to v1.19. You have that since 05.03.2012

 

Nice! This works too! In the meantime, i got a Kernel Panic, but i rebooted again and it works! So the only thing which is left: The Touchpad. Do you have a driver for Multitouch? I can only move the cursor but with clicking on the pad nothing happens... ;)

I dont have it, same here, no clicking. About the KP, i have it also sometimes from that kext, if you don't need ethernet maybe is better to delete it.

 

BTW, do you have working USB 3.0 ?

  • Like 1
Link to comment
Share on other sites

Okay, so i will do some research! See you soon. I will post the kext when i found it!

 

Here you go for Touch/Trackpad: Touchpad.zip- or try this Link: http://www.mediafire...ya4ii66v122w7gk

There is no Multitouch support, but if you Click on the pad you have a mouse click!

Thats a small but a great improvement!

 

EDIT: BTW your question about USB 3.0:

 

Did you tried this kext? http://osx86.net/dow...do=file&id=2293

 

I'm not sure if this is the right one, but it might be. I will test it tomorrow.

Link to comment
Share on other sites

Thanks, I'll test it tomorrow. When you get (Internal Server Error) try more than once. 3-4 times and it will work.

You didn't answer me about the USB 3.0. You got it working or still no luck?

 

 

 

 

EDIT: BTW your question about USB 3.0:

Did you tried this kext? http://osx86.net/dow...do=file&id=2293

I'm not sure if this is the right one, but it might be. I will test it tomorrow.

 

I think i did, but maybe i should try it again. Thanks

Link to comment
Share on other sites

 

Here you go for Touch/Trackpad: Touchpad.zip- or try this Link: http://www.mediafire...ya4ii66v122w7gk

There is no Multitouch support, but if you Click on the pad you have a mouse click!

Thats a small but a great improvement!

Not even the keyboard works with this for me, thanks anyway.

Sent from my HTC HD2 using Tapatalk

Link to comment
Share on other sites

Your keyboard does not work? I could upload the kext if you want. USB 3.0 doesn't work for me, everytime i plug in a device the whole system freezes.

Touchpad and Keyboard work for me. USB 3 is not that important to me. Does Hibernation work for you?

Link to comment
Share on other sites

Try this DSDT patch

"@0,display-link-component-bits",
Buffer (0x04)
{
0x06, 0x00, 0x00, 0x00
},
"@0,display-pixel-component-bits",
Buffer (0x04)
{
0x06, 0x00, 0x00, 0x00
},
"AAPL00,Dither",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
},
"@0,display-dither-support",
Buffer (0x04)
{
0x00, 0x00, 0x00, 0x00
}

 

If it helps, write here. Some say it helps, but I did not help.

 

And if your monitor does not wake up after sleep, I can help.

Link to comment
Share on other sites

Thanks, I'll try that tonight or tomorrow, I'm working today. About the wake screen, I don't have working sleep yet, only green screen on display sleep and KP on computer sleep. If you could help me with that also, it will be perfect. I am using roaming data plan untill next week and I wont be online as much as usual. Thanks again.

 

Sent from my HTC HD2 using Tapatalk

Link to comment
Share on other sites

In my case, it is in the section Device (PEGP), there you must create Method (_DSM), If it's not there. Like this

Tu5DTZ56.png

To Enable sleep. you should use this patch

"AAPL00,DualLink",
						Buffer (0x04)
						{
							0x01, 0x00, 0x00, 0x00
						},

and transmitter in your framebuffer should be the same, and in the redsock dump (0x10, If I am not mistaken)

 

And if it helps, my personality

UYLpKLl3.png

Link to comment
Share on other sites

Very nice work Trucker MK, my compliments :-) And Bux_Booga, I've read some of your russian posts. Thank you for your contributions. I've also been experimenting with 10.7.3 drivers, but I'm still getting very inconsistant results. It takes me on my 7750G on average 20 boots to get a clear QE/QI screen. Otherwise it is a black screen or a blurred screen. Using Osmunda gave similar results to Ipomoea. Sleep works with the latest sleepenabler.kext but sleep does kill the LVDS. I did decide to use Chameleon rather than Chimera. With Chimera I would get a KP with shutdown or restart. Bux_Booga, I'm curious to know how you got the framebufer information into your DSDT? Anyway, thanks again.

Link to comment
Share on other sites

Hi, Pentahex! I have never got black or blurred screen. I didn't encounter this problem, since I picked the correct personality. But every boot I have distorted colors. I use Chameleon bootloader, because its performance is higher (In OpenGL EV ~1450 Cham, ~600 Chimera). Sleep just worked for HDMI and VGA. To enable it on LVDS I have used DualLink patch and DualLink transmitter.

 

I have got framebuffer information on this forum. But there is nothing important in this DSDT section (except DualLink).

Anyway, if it helps, here is my Device (PEGP).

 

I think, you can use my personality to success.

Once again - Dual Link Transmitter (0x10) don't work without Dual Link DSDT-patch!

PEGP.dsl.zip

  • Like 1
Link to comment
Share on other sites

Very nice work Trucker MK, my compliments :-)

 

Thanks Pentahex, it's not bad for a Trucker :-)

 

Sent from my HTC HD2 using Tapatalk

 

To Enable sleep. you should use this patch

"AAPL00,DualLink",
						Buffer (0x04)
						{
							0x01, 0x00, 0x00, 0x00
						},

and transmitter in your framebuffer should be the same, and in the redsock dump (0x10, If I am not mistaken)And if it helps, my personality

UYLpKLl3.png

I do have 0x10 LVDS transmitter in redsocks vbios dump, but the LVDS never works with 0x10 transmitter in Ipomoea, Lotus and Osmunda.

Sent from my HTC HD2 using Tapatalk

Edited by Trucker MK
Link to comment
Share on other sites

 Share

×
×
  • Create New...