Jump to content

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


d00d
 Share

1,771 posts in this topic

Recommended Posts

Update via Software Update worked perfect. Just repair/rebuild caches after install and reboot.

 

Kexts in /E/E: OrangeIconFix.kext, fakesmc.kext

Kexts in S/L/E: RealtekR1000SL.kext

 

reboot,sleep, well everything works.

 

Just have to get into fixing speed steps once and for all.. Anyone who can post their macpro4,1.plist? also, do you have change values in it if you change clockspeed of cpu?

 

edit:

 

wooooops... not everything works. :( Sound is gone.

 

I used ANARCHiNTOSH patched AppleHDA.kext with 10.6.2. worked perfect. Those who have sound on ga-ex58-ud5 after 10.6.3: what kext/solution are you using?

 

I am using x.di method: http://www.insanelymac.com/forum/index.php...6771&st=510

Works great for me without any sound assertion messages and without touching any extensions!

Link to comment
Share on other sites

Hello All.

Some words about my post for FireWire fix.

I just relized that i missed one important thing!

		Method (_L0B, 0, NotSerialized)
	{
		Notify (\_SB.PCI0.HUB0, 0x02)
		Notify (\_SB.PCI0.HUB0.FRWR, Zero)
		Notify (\_SB.PWRB, 0x02)
	}

 

 

Under Device (HUB0)

 

				Device (FRWR)
			{
				Name (_ADR, 0x00060000) // find your address in Ioreg
				Name (_GPE, 0x0B)
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x04)
						{
							"fwports", 
							Buffer (0x04)
							{
								0x03, 0x00, 0x00, 0x00
							}, 

							"fwswappedbib", 
							Buffer (0x04)
							{
								0x01, 0x00, 0x00, 0x00
							}
						}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}
			}

This code is working perfect! If You have something always plugged in one of FireWire ports.

I have Apple cinema Display and it is always plugged in one of my firewire ports. For me Hot Plug works with this code because cinema Display prevents Frwr BUS to be powered off (and enter to power state 1).

If I uplug and plug my cinema Display firewire then i loose hot plug and need to sleep and wake.

 

 

 

So what the point of all this? :P

Just use only this code

				Device (FRWR)
			{
				Name (_ADR, 0x00060000) // find your address in Ioreg
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x04)
						{
							"fwports", 
							Buffer (0x04)
							{
								0x03, 0x00, 0x00, 0x00
							}, 

							"fwswappedbib", 
							Buffer (0x04)
							{
								0x01, 0x00, 0x00, 0x00
							}
						}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}
			}

and do not add anything to

Method (_L0B, 0, NotSerialized)

and

do not add to firewire

Name (_GPE, 0x0B)

...

You will have Hot Plug allways working , your firewire will be Built-in and

you will get message in log

"FireWire runtime power conservation disabled. (2)"

THIS IS NOT ERROR it is just a message that your firewire will be allways bus powered (power state 2). :D

So don't worry about this

P.S. on my Mac Pro 3.1 I have this message in log...

 

localhost kernel[0]: FireWire runtime power conservation disabled. (2)

localhost kernel[0]: FireWire (OHCI) TI ID 823f built-in now active, GUID 001f5bfffe13f6d6; max speed s800.

 

SO RELAX AND BE COOL :D

Link to comment
Share on other sites

Hello All.

Some words about my post for FireWire fix.

I just relized that i missed one important thing!

		Method (_L0B, 0, NotSerialized)
	{
		Notify (\_SB.PCI0.HUB0, 0x02)
		Notify (\_SB.PCI0.HUB0.FRWR, Zero)
		Notify (\_SB.PWRB, 0x02)
	}

 

 

Under Device (HUB0)

 

				Device (FRWR)
			{
				Name (_ADR, 0x00060000) // find your address in Ioreg
				Name (_GPE, 0x0B)
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x04)
						{
							"fwports", 
							Buffer (0x04)
							{
								0x03, 0x00, 0x00, 0x00
							}, 

							"fwswappedbib", 
							Buffer (0x04)
							{
								0x01, 0x00, 0x00, 0x00
							}
						}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}
			}

This code is working perfect! If You have something always plugged in one of FireWire ports.

I have Apple cinema Display and it is always plugged in one of my firewire ports. For me Hot Plug works with this code because cinema Display prevents Frwr BUS to be powered off (and enter to power state 1).

If I uplug and plug my cinema Display firewire then i loose hot plug and need to sleep and wake.

 

 

 

So what the point of all this? :lol:

Just use only this code

				Device (FRWR)
			{
				Name (_ADR, 0x00060000) // find your address in Ioreg
				Method (_DSM, 4, NotSerialized)
				{
					Store (Package (0x04)
						{
							"fwports", 
							Buffer (0x04)
							{
								0x03, 0x00, 0x00, 0x00
							}, 

							"fwswappedbib", 
							Buffer (0x04)
							{
								0x01, 0x00, 0x00, 0x00
							}
						}, Local0)
					DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
					Return (Local0)
				}
			}

and do not add anything to

Method (_L0B, 0, NotSerialized)

and

do not add to firewire

Name (_GPE, 0x0B)

...

You will have Hot Plug allways working , your firewire will be Built-in and

you will get message in log

"FireWire runtime power conservation disabled. (2)"

THIS IS NOT ERROR it is just a message that your firewire will be allways bus powered (power state 2). ;)

So don't worry about this

P.S. on my Mac Pro 3.1 I have this message in log...

 

localhost kernel[0]: FireWire runtime power conservation disabled. (2)

localhost kernel[0]: FireWire (OHCI) TI ID 823f built-in now active, GUID 001f5bfffe13f6d6; max speed s800.

 

SO RELAX AND BE COOL :D

I wonder if that would interfere with auto-sleep.
Link to comment
Share on other sites

Before I go and attempt to make the DSDT, does anyone already have a DSDT with power management for the GA-X58A-UD3R (F5) with an i7-930? Or even a 920, I can't seem to find one already made, and I can just tweak the CPU {censored}.

Link to comment
Share on other sites

I wonder if that would interfere with auto-sleep.

 

Nope. The problem with auto-sleep causes ethernet driver RealtekSL which is not native for apple.

I inserted pci network card RTL8169 (10$), disabled onboard network and removed RealtekSL kext and YEAH!

My pci network card works with vanilla apple driver and i have auto-sleep working like a charm :(

Link to comment
Share on other sites

I seem to be having problems with either temperature sensors or something to do with DSDT or power management.

 

10.6.2 on my GA-X58A-UD7 works quite well, with only a few kexts in /E (see my signature).

 

At default clock (2.66), iStat reported core temperature around 41C idle.

 

At 3.86GHz, however, the core temperatures are around 52C idle. That seemed a bit too much so I booted into Win7 and there the same idle core temps are around 38C (going up to about 62C during prime95).

 

Does this discrepancy between Win7 & OSX temperatures make sense to anyone? I followed d00d's first post and he talks about idle temperatures around 39-41C, nowhere close to where I am (unless those were measured under Windows). AppleIntelCPUPowerManagement seems to be loading correctly during the OSX boot process in my case.

 

Any clues or suggestions?

Link to comment
Share on other sites

I seem to be having problems with either temperature sensors or something to do with DSDT or power management.

 

10.6.2 on my GA-X58A-UD7 works quite well, with only a few kexts in /E (see my signature).

 

At default clock (2.66), iStat reported core temperature around 41C idle.

 

At 3.86GHz, however, the core temperatures are around 52C idle. That seemed a bit too much so I booted into Win7 and there the same idle core temps are around 38C (going up to about 62C during prime95).

 

Does this discrepancy between Win7 & OSX temperatures make sense to anyone? I followed d00d's first post and he talks about idle temperatures around 39-41C, nowhere close to where I am (unless those were measured under Windows). AppleIntelCPUPowerManagement seems to be loading correctly during the OSX boot process in my case.

 

Any clues or suggestions?

It may be that W7 doesn't have as much running at idle compared to OS X?

My temperature readings were made by OS X Temperature Monitor.

I've noticed that the BIOS temperature alarm sounds around 10C higher than what's set.

Link to comment
Share on other sites

Hi all.

Have some GOOD news.

I was inspired by this tread

http://www.insanelymac.com/forum/index.php?showtopic=210994

And I patched the bios of my motherboard. It won't break anything for you.

GA-EX58-Extreme (bios F12).

There are no rocket math involved. :P Everyone can do it.

 

I applied every fix from this tread. you don't need dsdt.aml anymore and don't need to patch anything!

You will need this kexts in Extra folder:

fakesmc.kext

IOAHCIBlockStorageInjector.kext (sata to internal)

LegacyHDA.kext (layout-id in bios 885 and in legacy to.)

com.apple.Boot.plist (it has GraphicsEnabler=Yes and PCIRootUID=1 and -pci1 options)

smbios.plist (in about this mac you will see Intel Core i7 instead of Intel Xeon)

Evoreboot.kext (For restrat to work. Bootloader bug. It can't patch Facp table if no dsdt.aml is present)

...

PCIRootUID and -pci1 flags and Evoreboot.kext are IMPORTANT because bootloaders have bug !

Bootloaders can't determine your UID if no dsdt.aml present in extra or in root partition and can't patch Facp table for restart to work .

And this two flags (PCIRootUID and -pci1 ) are just for compatiblity with different bootloaders.

Hope this bugs will be fixed soon. :)

 

And you will need for your network cards this

RealtekR1000SL.kext (goes to /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns)

 

And extra goodies of all this , IDLE SLEEP started to work without any "sleepwatchers" and other tools.

 

P.S.1 Hope this will help someone .

before flashing your bios read this

http://www.insanelymac.com/forum/index.php?showtopic=210994

 

P.S.2

If i have free time will write a guid on how to patch any gigabyte bios. :)

 

P.S.3 Files you will need

EX58_EXTREME.zip

 

P.S.4 My patched bios

EX58EX.F12.zip

Link to comment
Share on other sites

Hi all.

Have some GOOD news.

I was inspired by this tread

http://www.insanelymac.com/forum/index.php?showtopic=210994

And I patched the bios of my motherboard. It won't break anything for you.

GA-EX58-Extreme (bios F12).

There are no rocket math involved. :P Everyone can do it.

 

I applied every fix from this tread. you don't need dsdt.aml anymore and don't need to patch anything!

You will need this kexts in Extra folder:

fakesmc.kext

IOAHCIBlockStorageInjector.kext (sata to internal)

LegacyHDA.kext (layout-id in bios 885 and in legacy to.)

com.apple.Boot.plist (it has GraphicsEnabler=Yes and PCIRootUID=1 and -pci1 options)

smbios.plist (in about this mac you will see Intel Core i7 instead of Intel Xeon)

Evoreboot.kext (For restrat to work. Bootloader bug. It can't patch Facp table if no dsdt.aml is present)

...

PCIRootUID and -pci1 flags and Evoreboot.kext are IMPORTANT because bootloaders have bug !

Bootloaders can't determine your UID if no dsdt.aml present in extra or in root partition and can't patch Facp table for restart to work .

And this two flags (PCIRootUID and -pci1 ) are just for compatiblity with different bootloaders.

Hope this bugs will be fixed soon. :)

 

And you will need for your network cards this

RealtekR1000SL.kext (goes to /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns)

 

And extra goodies of all this , IDLE SLEEP started to work without any "sleepwatchers" and other tools.

 

P.S.1 Hope this will help someone .

before flashing your bios read this

http://www.insanelymac.com/forum/index.php?showtopic=210994

 

P.S.2

If i have free time will write a guid on how to patch any gigabyte bios. :)

 

P.S.3 Files you will need

EX58_EXTREME.zip

 

P.S.4 My patched bios

EX58EX.F12.zip

 

 

if your modding the bios why didnt you fix the FACP table also ?

 

easy enough todo

Link to comment
Share on other sites

worked fine when i did it on X58-UD5 F11 bios.

 

Give me please your patched Facp.aml or better your patched bios ;)

:)

Will try to patch my.

I'm missing something

 

I have a question: when patch bios you used the OSX DSDT Patcher from >>THIS<< thread?

no. that programm is corrupting bios . dunno why.

Link to comment
Share on other sites

here's my ACPITBL.BIN should be enough

 

thanks ! :blink: It's worked! no need for any restart fixes or kexts anymore :D

I just was messed too much with my facp. Yours worked flawless .

 

Tested on Ex58-Extreme and P35-ds3 .

I also added needed injection for my HD4870 in bios.

           Device (IOU0)
           {
               Name (_ADR, 0x00010000)
               Method (_STA, 0, NotSerialized)
               {
                   Return (0x0F)
               }

               Name (_PRW, Package (0x02)
               {
                   0x09, 
                   0x05
               })
               Device (PXS1)
               {
                   Name (_ADR, Zero)
                   Method (_DSM, 4, NotSerialized)
                   {
                       Store (Package (0x1A)
                           {
                               "@0,compatible", 
                               Buffer (0x0B)
                               {
                                   "ATY,Motmot"
                               }, 

                               "@0,device_type", 
                               Buffer (0x08)
                               {
                                   "display"
                               }, 

                               "@0,name", 
                               Buffer (0x0E)
                               {
                                   "ATY,Motmot"
                               }, 

                               "@1,compatible", 
                               Buffer (0x0B)
                               {
                                   "ATY,Motmot"
                               }, 

                               "@1,device_type", 
                               Buffer (0x08)
                               {
                                   "display"
                               }, 

                               "@1,name", 
                               Buffer (0x0E)
                               {
                                   "ATY,Motmot"
                               }, 

                               "AAPL,aux-power-connected", 
                               Buffer (0x04)
                               {
                                   0x01, 0x00, 0x00, 0x00
                               }, 

                               "AAPL,slot-name", 
                               Buffer (0x07)
                               {
                                   "Slot-1"
                               }, 

                               "ATY,PlatformInfo", 
                               Buffer (One)
                               {
                                   0x01
                               }, 

                               "device_type", 
                               Buffer (0x11)
                               {
                                   "ATY,MotmotParent"
                               }, 

                               "name", 
                               Buffer (0x11)
                               {
                                   "ATY,MotmotParent"
                               }, 

                               "model", 
                               Buffer (0x13)
                               {
                                   "ATI Radeon HD 4870"
                               }, 

                               "hda-gfx", 
                               Buffer (0x0A)
                               {
                                   "onboard-1"
                               }
                           }, Local0)
                       DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                       Return (Local0)
                   }
               }

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

Now Leopard can boot without GraphicsEnabler=yes !

But GraphicsEnabler=yes is needed for SnowLeopard because of bin_image :)

Link to comment
Share on other sites

P.S.2

If i have free time will write a guid on how to patch any gigabyte bios. :(

thank you for your previous response, I waited patiently for a some tutorial's.

if you can "throw" a handful of information to look for something in google?

 

topic is very interesting!

Link to comment
Share on other sites

Short tutorial how to patch the binary of applehda - necessary if you want to use applehda.kext 10.6.3 with legacy kext and dsdt patch if you have alc888 or alc889 audio codec (not necessary if you have alc889a codec):

 

download hexfiend Hex Editor - copy applehda 10.6.3 to your desktop - right click it - show package contents and go to the folder /Contents/MacOS

then open the applehda binary file located in this folder with hexfiend

 

for alc888

 

Search for 8508ec10 and replace with 8808ec10 (all 4 instances)

 

for Alc889

 

Search for 8508ec10 and replace with 8908ec10 (all 4 instances)

 

for AD2000B

 

Search for 8B19D411 and replace with 9B98D411 (all 4 instances)

 

 

Save the file and copy the binpatched applehda.kext into /System/Library/Extensions

 

I strongly recommend running Contis fix script v. 30.0 to fix perms and clear caches before rebooting.

 

get it at osx86.sojugarden.com/2010/03/pfix-v3-0-released/

 

Remember that you have to redo this if Apple releases a new applehda.kext

 

You can download the binary patched applehda 10.63 at kexts.com too

Link to comment
Share on other sites

UPDATE!

EX58-EXTREME (F12)

this bios has patched Facp. (credits for Facp go to BSoD)

No need for any restart fixes or evoreboot and similar!

Test and write your feedback :(

EX58v2.F12.zip

 

Forgive my ignorance, but can I ask, what are the advantages of patching the bios to make the hardware appear more mac like, as opposed to doing the same with DSDT patches, and the bootloader?

Cheers

Jon

Link to comment
Share on other sites

Forgive my ignorance, but can I ask, what are the advantages of patching the bios to make the hardware appear more mac like, as opposed to doing the same with DSDT patches, and the bootloader?

Cheers

Jon

 

Just another way of doing things :(

Link to comment
Share on other sites

Short tutorial how to patch the binary of applehda - necessary if you want to use applehda.kext 10.6.3 with legacy kext and dsdt patch if you have alc888 or alc889 audio codec (not necessary if you have alc889a codec):

 

download hexfiend Hex Editor - copy applehda 10.6.3 to your desktop - right click it - show package contents and go to the folder /Contents/MacOS

then open the applehda binary file located in this folder with hexfiend

 

for alc888

 

Search for 8508ec10 and replace with 8808ec10 (all 4 instances)

 

for Alc889

 

Search for 8508ec10 and replace with 8908ec10 (all 4 instances)

 

for AD2000B

 

Search for 8B19D411 and replace with 9B98D411 (all 4 instances)

 

 

Save the file and copy the binpatched applehda.kext into /System/Library/Extensions

 

I strongly recommend running Contis fix script v. 30.0 to fix perms and clear caches before rebooting.

 

get it at osx86.sojugarden.com/2010/03/pfix-v3-0-released/

 

Remember that you have to redo this if Apple releases a new applehda.kext

 

You can download the binary patched applehda 10.63 at kexts.com too

 

i am really tempted to update my AppleHDA patcher to do this, rather than just replace the plists of AppleHDAHardwareConfigDriver.kext and AppleHDAPlatformDriver.kext

 

find & replace of standard text is really easily done using sed/awk in bash,

but i need an app that can compile/decompile the binary, (like iaslme does for dsdt)

rather than an unscriptable editor like hexfiend......

 

i have found http://trac.macports.org/browser/trunk/dpo...rs/bbe/Portfile

which might do the job, but unfortunatly does away with sed/awk.

could someone could point me to any other apps that would do that (commandline or graphical)

Link to comment
Share on other sites

 Share

×
×
  • Create New...