Jump to content

GA-EX58 and GA-X58A DSDT native power management modifications


  • Please log in to reply
1483 replies to this topic

#441
d00d

d00d

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 477 posts
  • Gender:Male
  • Location:41.648324, -70.635260

I'm having a hard time getting sound to work without a kext. I followed the instructions in #14A, but built in sound isn't showing up. I do have a digidesign mbox (usb audio interface) installed, but I'm not sure if that has anything to do with it. I've posted a link to my dsdt.dsl if anyone wants to take a look and here's a screenshot of what system profiler has to say about the built in audio.

Thanks,
Ryan!

http://dl.dropbox.co...605698/DSDT.dsl

What does running the following in Terminal give you?
[mac05:~] me% ioreg -lS -w0 |grep -A15 HDEF |grep name
| | | | "name" = "pci8086,3a3e"
[mac05:~] me%

#442
ryansimms

ryansimms

    InsanelyMac Protégé

  • Members
  • PipPip
  • 89 posts
  • Gender:Male
  • Location:Brooklyn

What does running the following in Terminal give you?
[mac05:~] me% ioreg -lS -w0 |grep -A15 HDEF |grep name
| | | | "name" = "pci8086,3a3e"
[mac05:~] me%

You'll have to excuse my terminal noviceness. I get "command not found" errors when I copy and paste the above code into terminal. I'm not sure I'm not entering it in properly.

When I enter:
ioreg -lS -w0 |grep -A15 HDEF |grep name

I get this result:
| | | | "name" = "pci8086,3a3e"

...but i'm not sure that's not the info you're looking for. If not, could you dumb down the terminal entry a bit or point me towards info that would help me understand it?
Ryan!

#443
d00d

d00d

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 477 posts
  • Gender:Male
  • Location:41.648324, -70.635260

You'll have to excuse my terminal noviceness. I get "command not found" errors when I copy and paste the above code into terminal. I'm not sure I'm not entering it in properly.

When I enter:
ioreg -lS -w0 |grep -A15 HDEF |grep name

I get this result:
| | | | "name" = "pci8086,3a3e"

...but i'm not sure that's not the info you're looking for. If not, could you dumb down the terminal entry a bit or point me towards info that would help me understand it?
Ryan!

Does the following work?
Device (HDEF)            {                Name (_ADR, 0x001B0000)                Method (_PRW, 0, NotSerialized)                {                    Return (Package (0x02)                    {                        0x0D,                         0x05                    })                }                Method (_DSM, 4, NotSerialized)                {                    Store (Package (0x06)                        {                            "subsystem-id",                             Buffer (0x04)                            {                                0x02, 0xA1, 0x00, 0x00                               },                            "layout-id",                             Buffer (0x04)                            {                                0x42, 0x00, 0x00, 0x00                               },                            "PinConfigurations",                            Buffer (Zero) {}                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }            }


#444
ryansimms

ryansimms

    InsanelyMac Protégé

  • Members
  • PipPip
  • 89 posts
  • Gender:Male
  • Location:Brooklyn

Does the following work?

Device (HDEF)            {                Name (_ADR, 0x001B0000)                Method (_PRW, 0, NotSerialized)                {                    Return (Package (0x02)                    {                        0x0D,                         0x05                    })                }                Method (_DSM, 4, NotSerialized)                {                    Store (Package (0x06)                        {                            "subsystem-id",                             Buffer (0x04)                            {                                0x02, 0xA1, 0x00, 0x00                               },                            "layout-id",                             Buffer (0x04)                            {                                0x42, 0x00, 0x00, 0x00                               },                            "PinConfigurations",                            Buffer (Zero) {}                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }            }

I'm afraid not. Now when I enter the ioreg command in terminal I get:
| | | "name" = "pci8086,3a3e"

which has one less "|" than before.

What else can I do to help trace the problem?
Ryan!

#445
callumj09

callumj09

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 115 posts
I have just tried the above solution with my DSDT but it doesn't work. I tried the original and then I tried pasting in the correct pin configs for ALC888 and I still got nothing. I would probably be a wise idea to replace all the hex codes. Anyway, d00d I'm not sure how your solution is meant to work for both ALC888 and ALC889. Can you shed any light on the situation?

Anyway, I have a working DSDT fix that gives you perfect audio on the UD3R although it requires an additional kext in Extra/Extensions.

Device (HDEF){	Name (_ADR, 0x001B0000)	Method (_PRW, 0, NotSerialized)	{		Return (Package (0x02)		{			0x0D, 			0x05		})	}	Method (_DSM, 4, NotSerialized)	{		Store (Package (0x0A)			{				"built-in", 				Buffer (One)				{					0x01				}, 				"codec-id", 				Buffer (0x04)				{					0x88, 0x08, 0xEC, 0x10				}, 				"layout-id", 				Buffer (0x04)				{					0x78, 0x03, 0x00, 0x00				}, 				"device-type", 				Buffer (0x10)				{					"Realtek ALC888"				}, 				"PinConfigurations", 				Buffer (0x28)				{					/* 0000 */	0x10, 0x90, 0xA1, 0x01, 0x20, 0x90, 0xA1, 0x02, 					/* 0008 */	0x80, 0x30, 0x81, 0x01, 0x90, 0x40, 0x21, 0x02, 					/* 0010 */	0x30, 0x40, 0x11, 0x01, 0x40, 0x40, 0x01, 0x01, 					/* 0018 */	0x50, 0x60, 0x01, 0x01, 0x60, 0x20, 0x01, 0x01, 					/* 0020 */	0x70, 0x61, 0x4B, 0x01, 0xA0, 0x01, 0xCB, 0x01				}			}, Local0)		DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))		Return (Local0)	}}

And the kext: http://dl.dropbox.co...R-LegacyHDA.zip

Hope this helps!

#446
d00d

d00d

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 477 posts
  • Gender:Male
  • Location:41.648324, -70.635260

I'm afraid not. Now when I enter the ioreg command in terminal I get:
| | | "name" = "pci8086,3a3e"

which has one less "|" than before.

What else can I do to help trace the problem?
Ryan!

Looks like layout-id 66 won't work with an ALC888.

#447
ryansimms

ryansimms

    InsanelyMac Protégé

  • Members
  • PipPip
  • 89 posts
  • Gender:Male
  • Location:Brooklyn

I have just tried the above solution with my DSDT but it doesn't work. I tried the original and then I tried pasting in the correct pin configs for ALC888 and I still got nothing. I would probably be a wise idea to replace all the hex codes. Anyway, d00d I'm not sure how your solution is meant to work for both ALC888 and ALC889. Can you shed any light on the situation?

Anyway, I have a working DSDT fix that gives you perfect audio on the UD3R although it requires an additional kext in Extra/Extensions.

Device (HDEF){	Name (_ADR, 0x001B0000)	Method (_PRW, 0, NotSerialized)	{		Return (Package (0x02)		{			0x0D, 			0x05		})	}	Method (_DSM, 4, NotSerialized)	{		Store (Package (0x0A)			{				"built-in", 				Buffer (One)				{					0x01				}, 				"codec-id", 				Buffer (0x04)				{					0x88, 0x08, 0xEC, 0x10				}, 				"layout-id", 				Buffer (0x04)				{					0x78, 0x03, 0x00, 0x00				}, 				"device-type", 				Buffer (0x10)				{					"Realtek ALC888"				}, 				"PinConfigurations", 				Buffer (0x28)				{					/* 0000 */	0x10, 0x90, 0xA1, 0x01, 0x20, 0x90, 0xA1, 0x02, 					/* 0008 */	0x80, 0x30, 0x81, 0x01, 0x90, 0x40, 0x21, 0x02, 					/* 0010 */	0x30, 0x40, 0x11, 0x01, 0x40, 0x40, 0x01, 0x01, 					/* 0018 */	0x50, 0x60, 0x01, 0x01, 0x60, 0x20, 0x01, 0x01, 					/* 0020 */	0x70, 0x61, 0x4B, 0x01, 0xA0, 0x01, 0xCB, 0x01				}			}, Local0)		DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))		Return (Local0)	}}

And the kext: http://dl.dropbox.co...R-LegacyHDA.zip

Hope this helps!

So I tried this on my main install and it didn't work. But I tried a fresh install on my test drive with the same Extra folder as my main install and it worked.
This leads me to believe that my Mbox driver is in fact interfering with the dsdt audio fix somehow.

Lemme see if I can pin it down and get back to you guys.
Ryan!

#448
ryansimms

ryansimms

    InsanelyMac Protégé

  • Members
  • PipPip
  • 89 posts
  • Gender:Male
  • Location:Brooklyn

So I tried this on my main install and it didn't work. But I tried a fresh install on my test drive with the same Extra folder as my main install and it worked.
This leads me to believe that my Mbox driver is in fact interfering with the dsdt audio fix somehow.

Lemme see if I can pin it down and get back to you guys.
Ryan!

I figured it out. It had nothing to do with my Mbox. At some point, I had removed the original AppleHDA.kext from S/L/E. Once I put it back, everything was groovy.

However, once I got that back, I tried d00d's #14A method and the one he posted a few posts back both with and without LegacyHDA.kext as well as Callum's method, and only Callum's method with the LegacyHDA.kext worked for me.

In other news, I'd like to give DSDT graphics a try instead of my current EFI string, but I can't find a way to do it without using windows, to which I don't have easy access. Can someone point me in the right direction?

Thanks,
Ryan!

#449
d00d

d00d

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 477 posts
  • Gender:Male
  • Location:41.648324, -70.635260

I figured it out. It had nothing to do with my Mbox. At some point, I had removed the original AppleHDA.kext from S/L/E. Once I put it back, everything was groovy.

However, once I got that back, I tried d00d's #14A method and the one he posted a few posts back both with and without LegacyHDA.kext as well as Callum's method, and only Callum's method with the LegacyHDA.kext worked for me.

In other news, I'd like to give DSDT graphics a try instead of my current EFI string, but I can't find a way to do it without using windows, to which I don't have easy access. Can someone point me in the right direction?

Thanks,
Ryan!

You can use the following with C2RC4 in com.apple.Boot.plist;
<key>PciRoot</key>
<string>1</string>
<key>GraphicsEnabler</key>
<string>yes</string>

...or the following with ABLN1.1.x;
<key>GraphicsEnabler</key>
<string>yes</string>

Here's a DSDT modification for a different Nvidia GPU on a different MB (post 1689), but I'm not sure it's possible with the GA-EX58 and GA-X58A;
http://www.insanelym...p...518&st=1688

#450
voll@

voll@

    InsanelyMac Protégé

  • Members
  • Pip
  • 22 posts
Hi dood! put the update, the sound disappeared

Attached Files

  • Attached File  new.png   27.2KB   34 downloads


#451
ryansimms

ryansimms

    InsanelyMac Protégé

  • Members
  • PipPip
  • 89 posts
  • Gender:Male
  • Location:Brooklyn

You can use the following with C2RC4 in com.apple.Boot.plist;
<key>PciRoot</key>
<string>1</string>
<key>GraphicsEnabler</key>
<string>yes</string>

...or the following with ABLN1.1.x;
<key>GraphicsEnabler</key>
<string>yes</string>

Here's a DSDT modification for a different Nvidia GPU on a different MB (post 1689), but I'm not sure it's possible with the GA-EX58 and GA-X58A;
http://www.insanelym...p...518&st=1688

No dice on all three for me. I'll just stick with EFI strings for now i suppose.

Hi dood! put the update, the sound disappeared

I see you have ALC888. Are you using an audio kext? AppleHDA or Legacy? Did you apply a sound DSDT patch?
I applied the update too with patched AppleHDA and sound returned for me after I rebuilt my boot cache and restarted.
Ryan!

#452
voll@

voll@

    InsanelyMac Protégé

  • Members
  • Pip
  • 22 posts
I use Legacy RealtekALC888.kext[codebox]Device (HDEF)
{
Name (_ADR, 0x001B0000)
Method (_PRW, 0, NotSerialized)
{
Return (Package (0x02)
{
0x0D,
0x05
})
}

Method (_DSM, 4, NotSerialized)
{
Store (Package (0x04)
{
"layout-id",
Buffer (0x04)
{
0x0C, 0x00, 0x00, 0x00
},

"PinConfigurations",
Buffer (Zero) {}
}, Local0)
DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
Return (Local0)
}
}[/codebox]

#453
ryansimms

ryansimms

    InsanelyMac Protégé

  • Members
  • PipPip
  • 89 posts
  • Gender:Male
  • Location:Brooklyn

I use Legacy RealtekALC888.kext

Device (HDEF)            {                Name (_ADR, 0x001B0000)                Method (_PRW, 0, NotSerialized)                {                    Return (Package (0x02)                    {                        0x0D,                         0x05                    })                }                Method (_DSM, 4, NotSerialized)                {                    Store (Package (0x04)                        {                            "layout-id",                             Buffer (0x04)                            {                                0x0C, 0x00, 0x00, 0x00                            },                             "PinConfigurations",                             Buffer (Zero) {}                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }            }

Did that work for you before the update? That code is really designed for ALC889A. Use the dsdt code Callumj09 posted a few posts back with the kext in extra, or you can use AppleHDA.kext in S/L/E from here:
http://www.kexts.com...8_hd_audio.html

Ryan!

#454
d00d

d00d

    InsanelyMac Sage

  • Members
  • PipPipPipPipPipPip
  • 477 posts
  • Gender:Male
  • Location:41.648324, -70.635260

I use Legacy RealtekALC888.kext

Device (HDEF)            {                Name (_ADR, 0x001B0000)                Method (_PRW, 0, NotSerialized)                {                    Return (Package (0x02)                    {                        0x0D,                         0x05                    })                }                Method (_DSM, 4, NotSerialized)                {                    Store (Package (0x04)                        {                            "layout-id",                             Buffer (0x04)                            {                                0x0C, 0x00, 0x00, 0x00                            },                             "PinConfigurations",                             Buffer (Zero) {}                        }, Local0)                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))                    Return (Local0)                }            }

If your signature is accurate that you have a GA-EX58-UD4(P), then you have an ALC889A, and by using layout-id 12 (0x0C) you would need to use ALC889a.kext.
Are you saying that the `Mac Pro Audio Update' broke this?
I have the same ALC889A with layout-id 12 and ALC889a.kext, and the update didn't cause a problem.

No dice on all three for me. I'll just stick with EFI strings for now i suppose.

That's odd, it's supported;
[mac05:~] me% grep -i "geforce 9600 gt" /Users/me/Downloads/mac05/Chameleon/Chameleon-2.0-RC4-r684-src/i386/*/*
/Users/me/Downloads/mac05/Chameleon/Chameleon-2.0-RC4-r684-src/i386/libsaio/nvidia.c: { 0x10DE0622, "GeForce 9600 GT" },
[mac05:~] me%

#455
star-affinity

star-affinity

    InsanelyMac Protégé

  • Members
  • PipPip
  • 73 posts
I need help.
It sucks being such a n00b, but what can I do? :D

I have a GA-EX58-UD5 with the i7 920 and I don't know where to start.
My plan was to just use the attached DSDT_GA_EX58_UD5_F9m_S3_920_W3520_v2.zip but when I replace the DSDT.aml I had perviously with the one found in that d00d's attachment Mac OS X gets stuck in the boot process. Or once I came the desktop, but as soon as I moved the mouse everything got locked up.

Is it important that the DSDT.aml has the right permissons (i.e. is executable)?

Many questions...

I really don't feel like doing a DSDT.aml from scratch �€“ I feel I don't have the knowledge to manage that at this moment.

Edit:
OK, I've been fiddling some more and now boot locks up at �€�AppleACPICPU: ProcessorId=1�€�
What can be wrong?


Edit again:
Now I've managed to get back into the desktop. Put back the NullCPUPowerManagement.kext and boot is fine. I was under the impression that I could remove that kext after doing the changes to the DSDT?

Anyway, I still don't have any audio even if I've added the ALC889a.kext.
Even the external FireWire audio card I have isn't recognized. Do I need LegacyHDA.kext?

A few more things I was thinking about: which DSDT.aml file is it that gets used if I have one both in /Extra and one in /Library/DSDT/DSDTFiles?
Also I see there's one com.apple.boot.plist in /Extra but also one in /Library/Preferences/SystemConfiguration.
Which file am I supposed to edit?

#456
atlee

atlee

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 724 posts
  • Gender:Male
  • Location:South NSW, Australia
d00d thankyou for all your DSDT edits, I'm successfully running Snow leopard 10.6.2 with just fakesmc and orangeiconfix in my extra's folder.

one thing i couldn't change is the SMC key inside my fakesmc plist or my OS would not boot and just pause on the SMC line. But apart from that everything is working for me, not needing certain kext's is awsome and i can update my OS whenever i want without anything breaking as it's Totally Vanilla.

#457
aschar1

aschar1

    InsanelyMac Protégé

  • Members
  • PipPip
  • 93 posts
The Mac Pro Audio Update will break sound for all chipsets other than alc889a. The upcoming 10.6.3 will break it too. Apple hardcoded device ids in AppleHDA. There are 2 solutions yet. Either use 10.6.2 AppleHDA or binpatch the new one. If you have ALC889a you are safe with dsdt patch and my legacy kext. For all others back up AppleHDA.kext and after applying the update replace AppleHDA with the 10.6.2 AppleHDA.

I attach my kexts i have in Extra/Extensions. The ionetworkingfamily.kext has the Realtekr1000SL as plugin and is modified that it overwrites ionetworkingfamily.kext in /S/L/E even if Apple pumps up the version, my alc889a_v2 has the builtin part removed and the fakesmc is already modded.

If you have modded the macpro4.1.plist in ioplatformpluginfamily.kext (ACPI_SMC_PlatfromPlugin.kext) save it before updating Mac Pro Audio Update. This update also updates ioplatformfamilyplugin.kext.

Attached Files



#458
star-affinity

star-affinity

    InsanelyMac Protégé

  • Members
  • PipPip
  • 73 posts

The Mac Pro Audio Update will break sound for all chipsets other than alc889a. The upcoming 10.6.3 will break it too. Apple hardcoded device ids in AppleHDA. There are 2 solutions yet. Either use 10.6.2 AppleHDA or binpatch the new one. If you have ALC889a you are safe with dsdt patch and my legacy kext. For all others back up AppleHDA.kext and after applying the update replace AppleHDA with the 10.6.2 AppleHDA.

I attach my kexts i have in Extra/Extensions. The ionetworkingfamily.kext has the Realtekr1000SL as plugin and is modified that it overwrites ionetworkingfamily.kext in /S/L/E even if Apple pumps up the version, my alc889a_v2 has the builtin part removed and the fakesmc is already modded.

If you have modded the macpro4.1.plist in ioplatformpluginfamily.kext (ACPI_SMC_PlatfromPlugin.kext) save it before updating Mac Pro Audio Update. This update also updates ioplatformfamilyplugin.kext.


I installed the ALC889a_v2.kext from your attached kext collection, but still ”No output devices found” in Sound preferences. :(

What is missing/wrong?

Thanks for helping!

#459
Nestor666

Nestor666

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts

New sound assertion message seen in 10.6.2's kernel.log;
kernel[0]: Sound assertion "0 == pciVendorProductID" failed in "/SourceCache/AppleHDA/AppleHDA-179.1.4/AppleHDAController/AppleHDAController.cpp" at line 2682 goto Exit

Fix by removing the BuiltInHDA key section from ALC889a.kext/Contents/Info.plist.

Thanks to tmongkol for this fix.


d00d -- can you insert a before and after shot of this (removing BuiltInHDA key section) as with the rest of your code changes?

Also, I downloaded and opened your posted DSDT file to compare with mine (UD4P) and I do not see the CPU changes listed in step #5. Has step #5 been modified or since been made obsolete by a later BIOS from GigaByte? Just point me to the thread # if I missed this.

Thanks for a great guide. I'm running i7 920 on a Gigabyte EX58-UD4P and am down to a few small tweaks in 10.6.2 to get everything perfect.

Thanks.

#460
apple_core

apple_core

    InsanelyMac Protégé

  • Members
  • PipPip
  • 85 posts
  • Gender:Male
  • Location:Colorado USA

Thanks, the only difference between the GA-X58A-UD7 (S3 sleep) dsdt.dsl I was given and your GA-X58A-UD3R (S1 sleep) dsdt.dsl, besides the sleep differences,


I understand S1 sleep shuts down the CPU and that S3 sleep shuts down the CPU but also commits context information to RAM. Therefore S3 sleep uses less parasitic draw then S1 sleep.

What significance is there between S1 and S3 sleep on a hackintosh? Is one better then another? Does one work more reliably then the other? Does waking from sleep with bluetooth devices work differently between the two states?

I am in the market for a motherboard and am leaning towards the GA-X58A-UD3R but with enough good reason I could change my mind to the GA-X58A-UD7.

Thanks.





2 user(s) are reading this topic

1 members, 1 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