Jump to content

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


d00d
1,771 posts in this topic

Recommended Posts

d00d, 

 

Thanks for the input. I figured that was going to be the response... bummer. Well then, does DSDTSE work with 10.7.4?

Highlight DSDTSE, right click, select `Search Google for "DSDTSE"', and the first link has the answer to your question.

Link to comment
Share on other sites

  • 2 months later...

UPDATE:

AppleHDA 10.8.5 doesn't work => restored 10.8.4 version = OK

 

Bluetooth doesn't work, even after restoring IOBluetoothFamily and IOBluetoothHIDDriver from 10.8.4, from what I read, the same thing happened on Apple machines.  :( 

Dongle information: Brand = Trust, Chipset = Broadcom

 

 

I just read 10.8.5 is released, it seems it has more changes than 10.8.4.

Anyone on this topic has upgraded? I am thinking of doing it this weekend.

Link to comment
Share on other sites

10.8.5 and 10.9
 
After installing you will realize that your temps are going up about 10 C. This is caused by  AppelLPC.kext which will not load with the old injection method in Device PX40 (or if you renamed it Device LPCB). You can check this in Terminal:
kextstat | grep LPC 
should output: com.apple.driver.AppleLPC (1.6.3)
 
we can fix this easily with injection of the same device id as ioname, name or compatible. So whatever OSX is looking for to load the kext has the right device id.
Change your code to the following:

  Device (PX40)
            {
                Name (_ADR, 0x001F0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0C)
                        {
                            "device-id", 
                            Buffer (0x04)
                            {
                                0x18, 0x3A, 0x00, 0x00
                            }, 

                            "compatible", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "IOName", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "name", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "subsystem-id", 
                            Buffer (0x04)
                            {
                                0x70, 0x72, 0x00, 0x00
                            }, 

                            "subsystem-vendor-id", 
                            Buffer (0x04)
                            {
                                0x86, 0x80, 0x00, 0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }


You will also realize that the old DSDT injection method for your Atheros 9285 Wifi card will not work anymore. you can fix that the same way.

Method (_DSM, 4, NotSerialized)
{
    Store (Package (0x12)
        {
            "AAPL,slot-name", 
            Buffer (0x08)
            {
                "AirPort"
            }, 
            "device-id", 
            Unicode ("*"), 
            "device_type", 
            Buffer (0x08)
            {
                "AirPort"
            }, 
            "model", 
            Buffer (0x33)
            {
                "Atheros 9285 802.11 b/g/n Wireless Network Adapter"
            }, 
            "subsystem-id", 
            Buffer (0x04)
            {
                 0x8F, 0x00, 0x00, 0x00
            }, 
            "subsystem-vendor-id", 
            Buffer (0x04)
            {
                 0x6B, 0x10, 0x00, 0x00
            }, 
            "compatible", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }, 
            "IOName", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }, 
            "name", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }
        }, Local0)
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
    Return (Local0)
}

Credit goes to oldnapalm and nyolc8 for the tips.
 
Added 10/11/13:
The injection for the atheros wifi pci card needs to be injected into the device, where  the card is located, respectively your pci bus. If you installed the card in the upper slot  its Device Pex0 (do not inject the code into device PX40 or LPCB).

         Device (PEX0)
            {
                Name (_ADR, 0x001C0000)
                Device (ARPT)
                {
                    Name (_ADR, Zero)
                    Name (_PRW, Package (0x02)
                    {
                        0x0B, 
                        0x05
                    })
                    Method (_DSM, 4, NotSerialized)
{
    Store (Package (0x12)
        {
            "AAPL,slot-name", 
            Buffer (0x08)
            {
                "AirPort"
            }, 
            "device-id", 
            Unicode ("*"), 
            "device_type", 
            Buffer (0x08)
            {
                "AirPort"
            }, 
            "model", 
            Buffer (0x33)
            {
                "Atheros 9285 802.11 b/g/n Wireless Network Adapter"
            }, 
            "subsystem-id", 
            Buffer (0x04)
            {
                 0x8F, 0x00, 0x00, 0x00
            }, 
            "subsystem-vendor-id", 
            Buffer (0x04)
            {
                 0x6B, 0x10, 0x00, 0x00
            }, 
            "compatible", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }, 
            "IOName", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }, 
            "name", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }
        }, Local0)
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
    Return (Local0)
        }
    }

    //......    Method (_STA, 0, NotSerialized)
  • Like 1
Link to comment
Share on other sites

@d00d + aschar!

 

Just wanted to give a thank you for the work you guys have done on this thread.  My motherboard was throwing the temperature warning buzzer all of the time after upgrading to 10.8.5 and the temperature monitor wasn't working.  It's such a relief for my temperatures to be back to normal.  Every year that passes I keep thinking that support is going to end, but you guys always come through.  I have GA-X58A-UD5.

 

thanks so much!

Link to comment
Share on other sites

aschar thanks for the tip on AppleLPC it now loads and my cpu temps have come down.

the one problem i did have with 10.8.5 was bluetooth, as others have, they seem to have changed they way it works, I gave up and replaced my 10 year old tdk bluetooth 1.0 usb dongle with a new iogear usb 4/0 dongle and it works fine.

 

Great these machines keep working art least as long as a real mac does! 

I'm thinking now of upgraded my 1gb dimms. am i rigght in saying 4gb is the biggest i can use?

do i need to upgrade my bios at all?

Cheers

Jon

Link to comment
Share on other sites

  • 2 weeks later...

I'm hoping someone out there can shed some light on this for me.

 

Using DropSSDT=No and Generate "X"-States=Yes, I get states of 12, 13, 14, 15, 16, 21. If I create my own SSDT (using MaciASL or RevoGirl) with DropSSDT=Yes and Generate "X"-States=No, I get states of 12, 16, 17, 18, 19, 20. Why can't I get all the states from 12-21?
 

I'd attach my files but I have no clue how to do that :-)

Link to comment
Share on other sites

  • 4 weeks later...

I installed 10.9 clean slate using digital_dreamer's Hackinstaller and I think got everything work.

I use d00d's DSDT_GA_EX58_UD5_F9m_S3_v5 and added the Orange icon patch + aschar1's tips on LPC.

If you have a bluetooth dongle, turning on "Allow Bluetooth devices to wake this computer" which is On by default, prevents the unit to go to sleep, well at least on mine.

Turning this option off solves the issue. 

Link to comment
Share on other sites

10.8.5 and 10.9

 

After installing you will realize that your temps are going up about 10 C. This is caused by  AppelLPC.kext which will not load with the old injection method in Device PX40 (or if you renamed it Device LPCB). You can check this in Terminal:

kextstat | grep LPC 

should output: com.apple.driver.AppleLPC (1.6.3)

 

we can fix this easily with injection of the same device id as ioname, name or compatible. So whatever OSX is looking for to load the kext has the right device id.

Change your code to the following:

  Device (PX40)
            {
                Name (_ADR, 0x001F0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0C)
                        {
                            "device-id", 
                            Buffer (0x04)
                            {
                                0x18, 0x3A, 0x00, 0x00
                            }, 

                            "compatible", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "IOName", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "name", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "subsystem-id", 
                            Buffer (0x04)
                            {
                                0x70, 0x72, 0x00, 0x00
                            }, 

                            "subsystem-vendor-id", 
                            Buffer (0x04)
                            {
                                0x86, 0x80, 0x00, 0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }


You will also realize that the old DSDT injection method for your Atheros 9285 Wifi card will not work anymore. you can fix that the same way.

Method (_DSM, 4, NotSerialized)
{
    Store (Package (0x12)
        {
            "AAPL,slot-name", 
            Buffer (0x08)
            {
                "AirPort"
            }, 
            "device-id", 
            Unicode ("*"), 
            "device_type", 
            Buffer (0x08)
            {
                "AirPort"
            }, 
            "model", 
            Buffer (0x33)
            {
                "Atheros 9285 802.11 b/g/n Wireless Network Adapter"
            }, 
            "subsystem-id", 
            Buffer (0x04)
            {
                 0x8F, 0x00, 0x00, 0x00
            }, 
            "subsystem-vendor-id", 
            Buffer (0x04)
            {
                 0x6B, 0x10, 0x00, 0x00
            }, 
            "compatible", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }, 
            "IOName", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }, 
            "name", 
            Buffer (0x0B)
            {
                "pci168c,2a"
            }
        }, Local0)
    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
    Return (Local0)
}

Credit goes to oldnapalm and nyolc8 for the tips.

 

Hello,

Just a confirmation, with this injection, the Atheros card will be listed as PCI device in system profiler?

Link to comment
Share on other sites

  • 2 months later...

 

10.8.5 and 10.9

 

After installing you will realize that your temps are going up about 10 C. This is caused by  AppelLPC.kext which will not load with the old injection method in Device PX40 (or if you renamed it Device LPCB). You can check this in Terminal:

kextstat | grep LPC 

should output: com.apple.driver.AppleLPC (1.6.3)

 

we can fix this easily with injection of the same device id as ioname, name or compatible. So whatever OSX is looking for to load the kext has the right device id.

Change your code to the following:

  Device (PX40)
            {
                Name (_ADR, 0x001F0000)
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0C)
                        {
                            "device-id", 
                            Buffer (0x04)
                            {
                                0x18, 0x3A, 0x00, 0x00
                            }, 

                            "compatible", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "IOName", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "name", 
                            Buffer (0x0D)
                            {
                                "pci8086,3a18"
                            }, 

                            "subsystem-id", 
                            Buffer (0x04)
                            {
                                0x70, 0x72, 0x00, 0x00
                            }, 

                            "subsystem-vendor-id", 
                            Buffer (0x04)
                            {
                                0x86, 0x80, 0x00, 0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }


aschar1,

 

I updated to 10.9 (skipped 10.8.5) and with the modification to AppleLPC.kext it no longer sleeps (just a darker screen).

Only software (Finder and pmset) functionality doesn't work, and I can still sleep it by briefly pushing the power button, but I need it to fully work for when I need to access it remotely.

Did you have this problem?

Thanks.

___

 

Update;

 

I did some more tests and found that there are two issues.

 

1. It takes longer for the machine to go to sleep in 10.9.x, about 20 seconds, compared to almost instantly with 10.8.x.

 

2. Using Remote Desktop to get to the machine and selecting Finder:Sleep just darkens the screen, compared to almost instantly sleeping the machine with 10.8.x.

 

Solutions to sleeping the remote machine;

 

A. Use Remote Desktop:Manage:Sleep.

 

or

 

B. While not using Remote Desktop do the following;

[mac05:~] me% sudo pmset sleepnow; exit

Password:

Sleeping now...

logout

Connection to mac05 closed.

[mac07:~] me%

Link to comment
Share on other sites

Hi d00d, great that you found the solution to your problem. I have had sleep problems with kozleks older hardwaremonitor LPCSensors.kext. Version 6.0.987 works well and there are no sleep issues with this kext. I also realized that my system needs about 10-15 seconds to go to sleep with Mavericks. 

Link to comment
Share on other sites

Hi d00d, great that you found the solution to your problem. I have had sleep problems with kozleks older hardwaremonitor LPCSensors.kext. Version 6.0.987 works well and there are no sleep issues with this kext. I also realized that my system needs about 10-15 seconds to go to sleep with Mavericks. 

Thanks aschar1, good to know.

 

I’ve updated post 1 with DSDT_GA_EX58_UD5_F9m_v6.zip, and AppleRTC.kext items 9 (thanks aschar1) and 24 (thanks oldnapalm).

Link to comment
Share on other sites

  • 1 month later...

just updated to 10.9.2 few moments ago, so far so good, no kexts need to be replaced

I found i had to re-patch to enable trim support on my SSD. 

Good news is CUDA now works again on my Nvidia GTX285

  • Like 1
Link to comment
Share on other sites

I found i had to re-patch to enable trim support on my SSD. 

Good news is CUDA now works again on my Nvidia GTX285

I had to do that (IOAHCIFamily.kext), and also had to patch IONetworkingFamily.kext again for my Intel network card. It was no problem though, the patching was the same as in the past.

Link to comment
Share on other sites

  • 2 months later...
  • 1 month later...

For those who are trying to use PCI-E Wi-Fi+Bluetooth adapter card in x2, x4, x8, x16 slot:

Some motherboards refuse to work with PCI-E adapters that have both Wi-Fi and Bluetooth powered from PCI-E port other then x1 port.

If installed in x2, x4, x8, x16 ports you will have either Wi-Fi or Bluetooth working but not both at the same time.
There are two different solutions for this problem:

 

1. PCI-E x1 slot extension cable (when PCI-E x1 slot has short space or is blocked/covered by Video Card): http://www.amazon.com/gp/product/B00...?ie=UTF8&psc=1

or
2. Adapter designed to work in any slot: http://item.taobao.com/item.htm?spm=...id=38195333521

This wdxxfu studio adapter has Apple branded Broadcom BCM94360CD card found in iMac 2013.

Both Wi-Fi (a/b/g/n/ac) and Bluetooth 4.0/LE work like a charm.

They managed the card to work properly in any slot by providing four wire connection to USB port for Bluetooth Data and Power.
Wi-Fi is powered from PCI-E rail (B-10 3.3Vaux), Bluetooth data connects to USB and Bluetooth power connects to USB through 3.3V AMS1117.
If you don't speak Chinese and want to buy it, search for TAOBAO purchasing agent.

 

I use wdxxfu studio adapter on GA-Z87MX-D3H in PCI-E x16 slot (running at x8).

 

This is what I use successfully on my old GA-EX58-UD5 in PCI-E x1 slot: http://item.taobao.c...&id=36411287267

It has integrated switch that can change how WiFi and Bluetooth are powered from PCI-E rail, however this adapter refused to work properly in PCI-E x1 slot on GA-Z87MX-D3H.

On GA-Z87MX-D3H either WiFi or Bluetooth would work but not both at the same time.

 

There is another adapter which has been recently reported to work in any PCI-E slot and that is easier to purchase then wdxxfu adapter: 

http://www.amazon.co...onymacx86com-21

http://www.aliexpres...2269231445.html

 

Also for those who want to add USB 3.0 + SATA 3 for $33:   SYBA SD-PEX50055

- SATA 3 part of this card uses ASM1061 chipset and works natively on OSX. SATA 3 ports are OSX bootable.

  Samsung 840 Pro SSD connected to this card scores 417MB/s Write and 436MB/s Read.

- USB 3 part of this card uses Etron EJ168A chipset and needs GenericUSBXHCI.kext to work:  http://www.insanelymac.com/forum/topic/286860-genericusbxhci-usb-30-driver-for-os-x-with-source/

  or if you are on Clover bootloader use attached KernelAndKextPatches or Binaries from here:  http://www.insanelymac.com/forum/files/file/150-patched-appleusbxhci/#commentsStart

  For USB 3 ports to work properly with any device, this card needs to be connected to power supply with 4 Pin Floppy Power cable.

  I use Jettison app. to remove "Disc not ejected properly" message after waking from sleep with external drive connected to USB3 port:  http://www.stclairsoft.com/Jettison/

 

If you only need to add OSX native bootable SATA 3, any card using ASM1061 chipset with 0.951 firmware will work OOB:

http://www.ebay.co.u...sd=160583982904

http://www.ebay.com/...3013537?lpid=82

http://www.pridopia..../1061-e-lp.html

 

There are also OSX native, bootable cards with Marvell chipset but users report those having some issues:
http://www.amazon.com/HighPoint-RocketRAID-640L-PCI-Express-Controller/dp/B007P77WAW
http://www.amazon.com/StarTech-com-PEXSAT34-Express-6Gbps-Controller/dp/B007GFWU32
 

If you only need to add USB 3 portshttp://www.amazon.com/gp/product/B008V3TH48/?ie=UTF8&tag=tonymacx86com-20

Those three ORICO USB 3 cards use Fresco chipset and work natively on OSX (ORICO PFU3-202I, ORICO PFU3-2P, ORICO PME-4U).

post-199991-0-36358700-1419786782_thumb.jpg

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

UPDATE: AppleHDA problem solved

set HDEF id on DSDT to 1, removed HDAEnabler1.kext, patched AppleHDA.kext with toleda script, updated kext cache

 

also not mentioned before AppleRTC.kext also need to be patched to prevent CMOS reset when booting after sleep.

 

updated to 10.9.4, audio doesn't work.

the unit was using HDAEnabler1.kext with 10.9.3 which is not working on 10.9.4

restored AppleHDA 10.9.3 while checking possible solutions

Link to comment
Share on other sites

  • 1 month later...

my system now will not sleep since 10.9.3 and 10.9.4 

I don't seem to have any particular process holding assertions. even if i sleep with no assertions in place 

when i try and sleep i get the following pmset logs everytime :

24/08/2014 17:47:20 BST  Assertions          PID 20(powerd) Created InternalPreventSleep "com.apple.powermanagement.darkwakelinger" 00:00:00  id:0xe00000405 [system: BGTask SRPrevSleep kCPU]          

Sleep/Wakes since boot at 24/08/2014 17:26:11 BST  :0   Dark Wake Count in this sleep cycle:0

 

Time stamp                Domain              Message                                                                    Duration Delay     

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

UUID: 2E9975FA-84AF-41F3-8252-9F8EB77AFFFE

24/08/2014 17:47:22 BST  Wake                DarkWake to FullWake [CDNVA] due to HID Activity: Using AC                           

 
Any ideas? my system and DSDT has been stable for years. it's driving me mad.
Jon
 
PS Still doens't sllep even in safe mode, with no use logged, in, but my Snow leopard maintainece drive sleeps fin elike it always did.
Doing a repair of both system, and user file permissions.
Link to comment
Share on other sites

  • 2 weeks later...

 

my system now will not sleep since 10.9.3 and 10.9.4 

I don't seem to have any particular process holding assertions. even if i sleep with no assertions in place 

when i try and sleep i get the following pmset logs everytime :

24/08/2014 17:47:20 BST  Assertions          PID 20(powerd) Created InternalPreventSleep "com.apple.powermanagement.darkwakelinger" 00:00:00  id:0xe00000405 [system: BGTask SRPrevSleep kCPU]          

Sleep/Wakes since boot at 24/08/2014 17:26:11 BST  :0   Dark Wake Count in this sleep cycle:0

 

Time stamp                Domain              Message                                                                    Duration Delay     

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

UUID: 2E9975FA-84AF-41F3-8252-9F8EB77AFFFE

24/08/2014 17:47:22 BST  Wake                DarkWake to FullWake [CDNVA] due to HID Activity: Using AC                           

 
Any ideas? my system and DSDT has been stable for years. it's driving me mad.
Jon
 
PS Still doens't sllep even in safe mode, with no use logged, in, but my Snow leopard maintainece drive sleeps fin elike it always did.
Doing a repair of both system, and user file permissions.

 

 

In the end I did a clean install of 10.9.4 & sleep worked fine. migrated all my users and apps, and sleep still works.weird.

Link to comment
Share on other sites

  • 3 weeks later...

updated to 10.9.5, redo the AppleHDA and AppleRTC patch

 

 

 

however Apple bt trackpad is not working 100% after update to 10.9.5, for example single tap to click, double finger tap etc.

it was working fine on 10.9.4

 

i repaired the permission and rebuild the cache but the problem persists.

 

anyone has the same issue?

 

the logitech bt mouse seems to be okay

 

EDIT: moving the dongle to another port, to Apple Keyboard USB port to be exact, solves the issue.

Link to comment
Share on other sites

  • 2 weeks later...

Since I changed to Cloverbootloader Hackintosh is a pleasure !

On Yosemite GM and since DP2 already ! No more problems with updates with my HACK. RTC , AUDIO, video or TRIM,  with Clover EFI patching its like to update on a real MAC !

 

:yes:

Link to comment
Share on other sites

  • 2 weeks later...

Since I changed to Cloverbootloader Hackintosh is a pleasure !

On Yosemite GM and since DP2 already ! No more problems with updates with my HACK. RTC , AUDIO, video or TRIM,  with Clover EFI patching its like to update on a real MAC !

 

 

Hi @ROBASEFR,

 

Would you be willing to post your configuration files and guide on how to convert from Chameleon to Clover system running Yosemite OS ?

Link to comment
Share on other sites

×
×
  • Create New...