Contribute
Register

Z68XP-UD3: Lost sleep after BCM4352 installation

Status
Not open for further replies.
Joined
Mar 31, 2012
Messages
74
Motherboard
ASUS Z370-P
CPU
i5 9600K
Graphics
Intel UHD Graphics 630
Mac
  1. MacBook Pro
Mobile Phone
  1. iOS
Hi!

I have neither Wake On Lan option in BIOS nor Wake on USB. I have FakePCIID_BCM94352Z_as_BCM94360CS2.kext and BrcmPatchRAM.kext installed in order to make my Wireless card work. But the computer stopped to properly go to sleep.

Code:
$ kextstat|grep -y acpiplat
12 1 0xffffff7f828ff000 0x5f000 0x5f000 com.apple.driver.AppleACPIPlatform (2.0) <11 10 7 6 5 4 3 1>
$ kextstat|grep -y appleintelcpu
20 0 0xffffff7f82615000 0x2b000 0x2b000 com.apple.driver.AppleIntelCPUPowerManagement (217.92.1) <7 6 5 4 3 1>
26 0 0xffffff7f82610000 0x3000 0x3000 com.apple.driver.AppleIntelCPUPowerManagementClien t (217.92.1) <7 6 5 4 3 1>

Please, assist.
 

Attachments

  • ioreg.zip
    1.6 MB · Views: 80
  • RehabMan.zip
    10.3 KB · Views: 68
Hi!

I have neither Wake On Lan option in BIOS nor Wake on USB. I have FakePCIID_BCM94352Z_as_BCM94360CS2.kext and BrcmPatchRAM.kext installed in order to make my Wireless card work. But the computer stopped to properly go to sleep.

Code:
$ kextstat|grep -y acpiplat
12 1 0xffffff7f828ff000 0x5f000 0x5f000 com.apple.driver.AppleACPIPlatform (2.0) <11 10 7 6 5 4 3 1>
$ kextstat|grep -y appleintelcpu
20 0 0xffffff7f82615000 0x2b000 0x2b000 com.apple.driver.AppleIntelCPUPowerManagement (217.92.1) <7 6 5 4 3 1>
26 0 0xffffff7f82610000 0x3000 0x3000 com.apple.driver.AppleIntelCPUPowerManagementClien t (217.92.1) <7 6 5 4 3 1>

Please, assist.

What version of OS X?

What is the specific problem with sleep?
 
The specific problem is that it doesn't sleep, immediately wakes up because of Bluetooth, 10.9.5.

Read post #2. There are *two* questions.

Check "Wake reason" in system.log.

Looking at your ioreg, you're not injecting AAPL,clock-id on EHC1/EHC2 which leaves open the possibility of "instant wake" caused by USB devices.
 
Sorry for resurrection of old post, but the problem persists. Just finally found some time to solve it and found my own post, googling.

So:

Code:
$ pmset -g assertions 1
1 Apr 16 22:59:39  GMT+3 
Assertion status system-wide:
   BackgroundTask                 0
   PreventDiskIdle                0
   ApplePushServiceTask           0
   UserIsActive                   1
   PreventUserIdleDisplaySleep    0
   InteractivePushServiceTask     0
   PreventSystemSleep             0
   ExternalMedia                  0
   PreventUserIdleSystemSleep     0
   NetworkClientActive            0
Listed by owning process:
   pid 106(hidd): [0x0000000a0000016d] 00:47:55 UserIsActive named: "com.apple.iohideventsystem.queue.tickle" 
    Timeout will fire in 1726 secs Action=TimeoutActionRelease
Kernel Assertions: 0xc=USB,BT-HID
   id=500  level=255 0x4=USB mod=1 Apr 16 22:24  description=EHC2 owner=AppleUSBEHCI
   id=502  level=255 0x8=BT-HID mod=1 Jan 70 3:00  description=com.apple.driver.IOBluetooth[COLOR=#FCF7F5][FONT=Menlo]HIDDriver owner=BNBMouseDevice[/FONT][/COLOR]

1 Apr 16 22:08:03,000 kernel[0]: Wake reason: EHC1

You were right, it's definitely USB hub with Bluetooth controller on it. Can you please point me to the solution? Thank a million in advance!
 
Here is my DSDT chunk with mentioned EHC1:

Code:
Device (EHC1)
            {
                Name (_ADR, 0x001D0000)
                Name (_S4D, 0x02)
                Name (_S3D, 0x02)
                Name (_S2D, 0x02)
                Name (_S1D, 0x02)
                Device (HUBN)
                {
                    Name (_ADR, Zero)
                    Device (PR10)
                    {
                        Name (_ADR, One)
                        Name (_UPC, Package (0x04)
                        {
                            0xFF, 
                            Zero, 
                            Zero, 
                            Zero
                        })
                        Name (_PLD, Package (0x01)
                        {
                            Buffer (0x10)
                            {
                                /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                /* 0008 */    0x30, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                            }
                        })
                        Device (PR30)
                        {
                            Name (_ADR, One)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xE1, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR31)
                        {
                            Name (_ADR, 0x02)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR32)
                        {
                            Name (_ADR, 0x03)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xE1, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR33)
                        {
                            Name (_ADR, 0x04)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xE1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR34)
                        {
                            Name (_ADR, 0x05)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR35)
                        {
                            Name (_ADR, 0x06)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR36)
                        {
                            Name (_ADR, 0x07)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }


                        Device (PR37)
                        {
                            Name (_ADR, 0x08)
                            Name (_UPC, Package (0x04)
                            {
                                0xFF, 
                                0xFF, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)
                            {
                                Buffer (0x10)
                                {
                                    /* 0000 */    0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
                                    /* 0008 */    0xB1, 0x1E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00
                                }
                            })
                        }
                    }
                }


                Name (_PRW, Package (0x02)
                {
                    0x0D, 
                    0x04
                })
                Method (_DSM, 4, NotSerialized)
                {
                    Store (Package (0x0B)
                        {
                            "AAPL,current-available", 
                            0x0834, 
                            "AAPL,current-extra", 
                            0x0A8C, 
                            "AAPL,current-extra-in-sleep", 
                            0x0A8C, 
                            "AAPL,max-port-current-in-sleep", 
                            0x0834, 
                            "AAPL,device-internal", 
                            0x02, 
                            Buffer (One)
                            {
                                0x00
                            }
                        }, Local0)
                    DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))
                    Return (Local0)
                }
            }

So far I understood that I have to inject "AAPL,clock-id", but I wish I knew where to. Please, assist.
 
Code:
[COLOR=#000000]Method (_DSM, 4, NotSerialized)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]Store (Package (0x0B)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]"AAPL,clock-id", [/COLOR]
[COLOR=#000000]Buffer (One)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]0x01[/COLOR]
[COLOR=#000000]}, [/COLOR]

[COLOR=#000000]"device_type", [/COLOR]
[COLOR=#000000]Buffer (0x05)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]"EHCI"[/COLOR]
[COLOR=#000000]}, [/COLOR]

[COLOR=#000000]"AAPL,current-available", [/COLOR]
[COLOR=#000000]0x04B0, [/COLOR]
[COLOR=#000000]"AAPL,current-extra", [/COLOR]
[COLOR=#000000]0x02BC, [/COLOR]
[COLOR=#000000]"AAPL,current-in-sleep", [/COLOR]
[COLOR=#000000]0x03E8, [/COLOR]
[COLOR=#000000]Buffer (One)[/COLOR]
[COLOR=#000000]{[/COLOR]
[COLOR=#000000]0x00[/COLOR]
[COLOR=#000000]}[/COLOR]
[COLOR=#000000]}, Local0)[/COLOR]
[COLOR=#000000]DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))[/COLOR]
[COLOR=#000000]Return (Local0)[/COLOR]
[COLOR=#000000]}[/COLOR]

from this thread helped my computer sleep finally (I had to completely replace _DSM section since it didn't compile). Since my keyboard is connected to EHC2 I was able to wake it with keyboard (I didn't inject "AAPL,clock-id" to EHC2 section). It wakes up, but... It doesn't. It starts, but the monitors never come alive.

Here is the log:

Code:
2 Apr 16 13:05:35,000 kernel[0]: Wake reason: EHC22 Apr 16 13:05:35,000 kernel[0]: RTC: PowerByCalendarDate setting ignored
2 Apr 16 13:05:35,000 kernel[0]: Caller: kernel_task, line: 249, func: setPowerState, state 1
2 Apr 16 13:05:35,000 kernel[0]: Caller: kernel_task, line: 257, func: setPowerState, Waking
2 Apr 16 13:05:35,000 kernel[0]: Caller: kernel_task, line: 71, func: getProperty, IOPriorityPowerStateInterest = NULL
2 Apr 16 13:05:35,000 kernel[0]: Caller: kernel_task, line: 71, func: getProperty, IOAppPowerStateInterest = NULL
2 Apr 16 13:05:35,000 kernel[0]: Caller: kernel_task, line: 71, func: getProperty, IOGeneralInterest = NULL
2 Apr 16 13:05:35,000 kernel[0]: Previous Sleep Cause: 5
2 Apr 16 13:05:35,000 kernel[0]: USBF:    93.577    AppleUSBEHCI: setPowerState - PCI device still has PME status bit set. PMCSR is 0x8000
2 Apr 16 13:05:35,000 kernel[0]: USB Sound assertion in AppleUSBAudioDevice at line 4017
2 Apr 16 13:05:35,000 kernel[0]: USB Sound assertion in AppleUSBAudioDevice at line 4017
2 Apr 16 13:05:35,000 kernel[0]: ARPT: 93.808933: si_survive_perst_war: bar0win before 18003000, bar0win after 18001000
2 Apr 16 13:05:35,000 kernel[0]: BrcmPatchRAM: Time since wake 0.370 seconds.
2 Apr 16 13:05:36,000 kernel[0]: BrcmPatchRAM: Version 1.7.1 starting on OS X Darwin 13.4.
2 Apr 16 13:05:36,000 kernel[0]: BrcmPatchRAM: [13d3:3404]: USB [40E2303AD93D v274] "BCM20702A0" by "Broadcom Corp"
2 Apr 16 13:05:36,000 kernel[0]: BrcmPatchRAM: [13d3:3404]: Firmware upgrade completed successfully.
2 Apr 16 13:05:36,000 kernel[0]: BrcmPatchRAM: [13d3:3404]: Published new IOKit personality.
2 Apr 16 13:05:36,000 kernel[0]: BrcmPatchRAM: Processing time 0.49 seconds.
2 Apr 16 13:05:36,000 kernel[0]: Caller: kernel_task, line: 71, func: getProperty, bluetoothHostControllerSwitchBehavior = NULL
2 Apr 16 13:05:36,000 kernel[0]: **** [IOBluetoothHostControllerUSBTransport][start] -- completed -- result = TRUE -- 0xb000 ****
2 Apr 16 13:05:36,000 kernel[0]: **** [BroadcomBluetoothHostControllerUSBTransport][start] -- Completed -- 0xb000 ****
2 Apr 16 13:05:36,000 kernel[0]: [IOBluetoothHCIController][staticBluetoothHCIControllerTransportShowsUp] -- Received Bluetooth Controller register service notification -- 0xb000 
2 Apr 16 13:05:36,000 kernel[0]: Caller: mDNSResponder, line: 71, func: getProperty, BSD Name = NULL
2 Apr 16 13:05:36,000 kernel[0]: Caller: mDNSResponder, line: 71, func: getProperty, BSD Name = NULL
2 Apr 16 13:05:36,000 kernel[0]: [IOBluetoothHCIController::setConfigState] calling registerService
2 Apr 16 13:05:36,000 kernel[0]: **** [IOBluetoothHCIController][protectedBluetoothHCIControllerTransportShowsUp] -- Connected to the transport successfully -- 0xf240 -- 0x7800 -- 0xb000 ****
2 Apr 16 13:05:36,000 kernel[0]: Caller: blued, line: 108, func: setProperty, EFIBluetoothDelay, (OSData) <data ID="0">uAs=</data>
2 Apr 16 13:05:36,000 kernel[0]: Caller: blued, line: 108, func: setProperty, EFIBluetoothDelay, (OSData) <data ID="0">uAs=</data>
2 Apr 16 13:05:36,000 kernel[0]: Caller: blued, line: 71, func: getProperty, BSD Name = NULL
2 Apr 16 13:05:36,000 kernel[0]: Caller: blued, line: 108, func: setProperty, EFIBluetoothDelay, (OSData) <data ID="0">uAs=</data>
2 Apr 16 13:05:36,000 kernel[0]: Caller: blued, line: 108, func: setProperty, EFIBluetoothDelay, (OSData) <data ID="0">uAs=</data>
2 Apr 16 13:05:36,000 kernel[0]: [BNBMouseDevice::init][80.14] init is complete
2 Apr 16 13:05:37,000 kernel[0]: [BNBMouseDevice::handleStart][80.14] returning 1
2 Apr 16 13:05:37,000 kernel[0]: [AppleMultitouchHIDEventDriver::start] entered
2 Apr 16 13:05:37,000 kernel[0]: [AppleMultitouchDevice::start] entered

Do you have any ideas what to look at, RehabMan?
 
Status
Not open for further replies.
Back
Top