Contribute
Register

USB Driver Changed Again - PB6

Status
Not open for further replies.
It did not happen under yosmite.

I had yosmite running with no dsdt, USB3 working, never had a problem with sleep etc (apart from a problem with hibernation, which i sorted )

Like we said the other day though, el capitan is completely different USB wise.

Looks like i might have to choose between USB3 or a completely working hack.

Just had a look in my BIOS, i have no option to turn off 'wake on USB', If i i disabled that by DSDT, how would i wake the system up? power button?

Matt
 
Just to add some information here if it's of use:

On my system the only time it immediately wakes from sleep is when a USB 3 device is plugged into a USB 3 port. I can have USB 2 devices plugged into any port and it works and sleeps fine. So essentially anytime the XHC controller is used it immediately wakes from sleep including a reboot through clover to the log in screen, which I bypass in a normal boot. Upon wake everything is functioning normally except that the USB 3 device that was plugged in is no longer mounted.

Current status of my hack is DSDT edited to zero out XWAK and the if (one) patch (post 208) in DSDT. I have patches in config.sys for renaming EHC1 and 2 to EHxx. Xosi patches have been removed. I'm also using the Fake kexts to move USB 2 devices to EHC controller. And my port injector only has the SSP 1 through 6 USB 3 ports. I believe this is the same place Matt is with his machine as well.

Rick
 
Just to add some information here if it's of use:

On my system the only time it immediately wakes from sleep is when a USB 3 device is plugged into a USB 3 port. I can have USB 2 devices plugged into any port and it works and sleeps fine. So essentially anytime the XHC controller is used it immediately wakes from sleep including a reboot through clover to the log in screen, which I bypass in a normal boot. Upon wake everything is functioning normally except that the USB 3 device that was plugged in is no longer mounted.

Current status of my hack is DSDT edited to zero out XWAK and the if (one) patch (post 208) in DSDT. I have patches in config.sys for renaming EHC1 and 2 to EHxx. Xosi patches have been removed. I'm also using the Fake kexts to move USB 2 devices to EHC controller. And my port injector only has the SSP 1 through 6 USB 3 ports. I believe this is the same place Matt is with his machine as well.

Rick

I think the next step is to carefully determine which ports actually need to be enabled on XHC (HSxx, SSPx) and exclude all those that are not needed with a port injector kext.
 
Check ioreg so you know where the devices are attaching (which controller...)

Check system.log for USB related logs.

this is what system log says when it happens:
Code:
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.477862 IOUSBHostHIDDevice@1a140000,2: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.484743 IOUSBHostHIDDevice@1a111000,0: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.484763 IOUSBHostHIDDevice@1a111000,1: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.484774 IOUSBHostHIDDevice@1a111000,2: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.537545 IOUSBHostHIDDevice@1a140000,3: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:39:03 localhost kernel[0]: 000000.993331 AppleUSBLegacyRoot@: AppleUSBLegacyRoot::init: enabling legacy matching
Sep 16 16:39:03 localhost kernel[0]: 000000.995146 PXSX@01000000: AppleUSBXHCI::createPorts: created port 1
Sep 16 16:39:03 localhost kernel[0]: 000000.995315 PXSX@01000000: AppleUSBXHCI::createPorts: created port 2
Sep 16 16:39:03 localhost kernel[0]: 000000.995452 PXSX@01000000: AppleUSBXHCI::createPorts: created port 3
Sep 16 16:39:03 localhost kernel[0]: 000000.995618 PXSX@01000000: AppleUSBXHCI::createPorts: created port 4
Sep 16 16:39:03 localhost kernel[0]: 000000.996256 PXSX@00000000: AppleUSBXHCI::createPorts: created port 1
Sep 16 16:39:03 localhost kernel[0]: 000000.996323 PXSX@00000000: AppleUSBXHCI::createPorts: created port 2
Sep 16 16:39:03 localhost kernel[0]: 000000.996388 PXSX@00000000: AppleUSBXHCI::createPorts: created port 3
Sep 16 16:39:03 localhost kernel[0]: 000000.996444 PXSX@00000000: AppleUSBXHCI::createPorts: created port 4
Sep 16 16:39:04 localhost kernel[0]: **** [IOBluetoothHostControllerUSBTransport][start] -- completed -- result = TRUE -- 0x5800 ****
Sep 16 16:39:04 localhost kernel[0]: **** [BroadcomBluetoothHostControllerUSBTransport][start] -- Completed (matched on Device) -- 0x5800 ****
Sep 16 16:39:04 localhost com.apple.usbmuxd[76]: usbmuxd-345.70 on Jan 26 2015 at 16:55:11, running 64 bit

and i have attached a copy of ioreg if anyone would be so kind to take a look :)

my system profile is iMac12,2 and i'm running UEFI on a GA-Z68XP-UD3 rev.1
 

Attachments

  • joransrbiMac.ioreg
    12.2 MB · Views: 115
this is what system log says when it happens:
Code:
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.477862 IOUSBHostHIDDevice@1a140000,2: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.484743 IOUSBHostHIDDevice@1a111000,0: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.484763 IOUSBHostHIDDevice@1a111000,1: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.484774 IOUSBHostHIDDevice@1a111000,2: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures
Sep 16 16:32:30 Jrans-iMac kernel[0]: 105382.537545 IOUSBHostHIDDevice@1a140000,3: IOUSBHostHIDDevice::interruptRetry: resetting device due to IO failures

Might be device specific. Try without these devices (Apex Gaming Keyboard, Sensei Raw Gaming Mouse) and see if the same errors result...

Code:
Sep 16 16:39:03 localhost kernel[0]: 000000.993331 AppleUSBLegacyRoot@: AppleUSBLegacyRoot::init: enabling legacy matching
Sep 16 16:39:03 localhost kernel[0]: 000000.995146 PXSX@01000000: AppleUSBXHCI::createPorts: created port 1
Sep 16 16:39:03 localhost kernel[0]: 000000.995315 PXSX@01000000: AppleUSBXHCI::createPorts: created port 2
Sep 16 16:39:03 localhost kernel[0]: 000000.995452 PXSX@01000000: AppleUSBXHCI::createPorts: created port 3
Sep 16 16:39:03 localhost kernel[0]: 000000.995618 PXSX@01000000: AppleUSBXHCI::createPorts: created port 4
Sep 16 16:39:03 localhost kernel[0]: 000000.996256 PXSX@00000000: AppleUSBXHCI::createPorts: created port 1
Sep 16 16:39:03 localhost kernel[0]: 000000.996323 PXSX@00000000: AppleUSBXHCI::createPorts: created port 2
Sep 16 16:39:03 localhost kernel[0]: 000000.996388 PXSX@00000000: AppleUSBXHCI::createPorts: created port 3
Sep 16 16:39:03 localhost kernel[0]: 000000.996444 PXSX@00000000: AppleUSBXHCI::createPorts: created port 4
Sep 16 16:39:04 localhost kernel[0]: **** [IOBluetoothHostControllerUSBTransport][start] -- completed -- result = TRUE -- 0x5800 ****
Sep 16 16:39:04 localhost kernel[0]: **** [BroadcomBluetoothHostControllerUSBTransport][start] -- Completed (matched on Device) -- 0x5800 ****
Sep 16 16:39:04 localhost com.apple.usbmuxd[76]: usbmuxd-345.70 on Jan 26 2015 at 16:55:11, running 64 bit

Those logs are successful start of the next boot...
 
@rehabman can you remind me how to find out the port numbers that are being used in ioreg please.

And could you patch my dsdt to disable the wake on USB please so i can try it.

Matt
 
Might be device specific. Try without these devices (Apex Gaming Keyboard, Sensei Raw Gaming Mouse) and see if the same errors result...

Those logs are successful start of the next boot...

ok, thanks,
will try with other mouse and keyboard :) it is strange though :-/
 
@rehabman can you remind me how to find out the port numbers that are being used in ioreg please.

Plug devices into each port while running IORegistryExplorer. New devices are shown in green. Unplugged devices are shown in red. If you cannot find a port which corresponds to a particular node, then that port isn't used/assigned to any physical hardware.

And could you patch my dsdt to disable the wake on USB please so i can try it.

The patch we use on laptops is available here: https://github.com/RehabMan/Laptop-DSDT-Patch

There are two versions one for _PRW that uses GPE 0x0D, and another for GPE 0x6D.

Your DSDT uses GPE 0x0D for the _PRW on USB controllers, so apply "USB3 _PRW(0x0D) and Rename XHC to XHC1"

Note: The rename XHC->XHC1 is disabled in the patch, so no worries there. But you'll see it will replace the _PRW objects in GLAN, EHC1, EHC2, XHC, and HDEF.

--

Another thing that might be interesting... If you re-enable the "Windows 8" simulation (SSDT-XOSI.aml+patches in config.plist), does that affect the instant wake problem?
 
Status
Not open for further replies.
Back
Top