Contribute
Register

WonkeyDonkey's Steambox Pro - Z87E-ITX - Core i7 4770S - GTX 760 Gaming ITX

Status
Not open for further replies.
I thought as much, the EH02 Controller has disappeared from the list.
View attachment 156853
USB section looks like this :
View attachment 156854
I also see this in the system logs :
View attachment 156855
Any thoughts giacomo ?
Yes. That has been mandatory for my setup, otherwise I have instant wake from sleep. So I found a workaround with a concept explained by RehabMan (mentioned in post #401
and for those who have the native Mac BCM94360CD BCM94331CD combo card for BlueTooh and Airport, sleep issues like instant wake
and explained here or here). The wake from sleep issue is caused by my Airport/Bluetooth mini-PciE card: if you don't experience that, I guess you can avoid this DSDT patch from my files
Code:
# RehabMan patch for EH02 and wake from sleep
into device name_adr 0x001A0000 code_regex Name.*_ADR.* replace_matched begin Name(_ADR,0) end

I think we may still need another tweak.
The front ports from the internal USB3 connector are shown as HS09 & HS10 when used with USB2 devices. I think they may need to be HS11 & HS12.
I need to check in with giacomo though.
Wonkey, HS11 and HS12 didn't show up even in Yosemite. Don't ask me why, I can't really say. Not even forcing via DSDT. Simply those ports don't exist in this board mappature. OS X seems to recognize front panel (internal header) usb 2.0 as HS09 and HS10.

Giacomo,
when editing DSDT as per your instructions I get multiple warnings and remarks.
Still, I compiled and then removed Line 55/56 as suggested.
Could you please take a look into the DSDT because I don't get the meaning of those remarks and warnings.

Thanks in advance!
Cleaned. Attached file down here
 

Attachments

  • DSDT rramon.aml.zip
    15.3 KB · Views: 66
Thanks for clearing that up regarding EH02; I dont use that card so was never aware of that issue.

I'll do a quick sanity check here in Yosemite since I've been seeing some odd results with USB, those log entries in particular. Strange how its happening here but neither of you are seeing it. I'm still using the standard bios setup here that has always worked for this board.

All the other port mapping matched perfectly as per your diagram, excellent work with that, and the injector. :thumbup:

I just need to get it all working with my board now!

Am I right in assuming you are using Smart-Auto for USB3 ?

The other thing I might try is doing the EH0x and XHC changes in DSDT, then removing HS05, HS06, HS07, HS08 since I dont have anything connected to those headers, and also remove HS11 & HS12 from the DSDT too. By my reckoning that should bring the port count to 14 which seems to be the limit currently imposed by Apple.
 
Thanks for clearing that up regarding EH02; I dont use that card so was never aware of that issue.
Actually I bumped into this just in El Cap. Never had a problem in Yosemite.

I'll do a quick sanity check here in Yosemite since I've been seeing some odd results with USB, those log entries in particular. Strange how its happening here but neither of you are seeing it. I'm still using the standard bios setup here that has always worked for this board.
I'm not sure what you're referring about. I mean: what kind of odd results?

Am I right in assuming you are using Smart-Auto for USB3 ?
The other thing I might try is doing the EH0x and XHC changes in DSDT, then removing HS05, HS06, HS07, HS08 since I dont have anything connected to those headers, and also remove HS11 & HS12 from the DSDT too. By my reckoning that should bring the port count to 14 which seems to be the limit currently imposed by Apple.
Smart Auto, Auto or Enabled, still usb behavior is the same. Without the PJALM injector kext (customized for our mappature, of course) HS13 still is missing. Here you can check various methods and their effects. And no matter what: without EH02 dstd patch I have instant wake from sleep.
Removing HS05, HS06, HS07, HS08 leads you to loose internal 2.0 headers. I take you don't need them, fair enough, but still: what if somebody does? Besides, with a simple binary patch in config.plist\Kernel and Kext Patches\KextToPatch section we can avoid Apple usb limit ;).
Same thinking about the bluetooth card: I know it's not mandatory to have that: but it's a really fine solution to have fully functional Airport, bluetooth 4.0 (working in Clover as well, for multi booters with wireless keyboard!), handoff and continuity features... I mean: I really don't like the idea of giving up on this card. Any alternative solution besides deleting EH02 address would be appreciated.
And ONE LAST THING :)
Another weird behavior related to BT card (like the sleep issue, only in El Capitan): the rig is powering up from keyboard! Yes, I mean after shutting it down. Just like the sleep state. And another workaround has showed up:
in EFI\EFI\CLOVER\config.plist\Acpi select both FixShutdown and SlpSmiAtWake in DSDT Fixes section
Fix shut down.png
 
Actually I bumped into this just in El Cap. Never had a problem in Yosemite.

I'm not shure what you're referring about. I mean: what kind of odd results?

Smart Auto, Auto or Enabled, still usb behavior is the same. Without the PJALM injector kext (customized for our mappature, of course) HS13 still is missing. Here you can check various methods and their effects. And no matter what: without EH02 dstd patch I have instant wake from sleep.
Removing HS05, HS06, HS07, HS08 leads you to loose internal 2.0 headers. I take you don't need them, fair enough, but still: what if somebody does? Besides, with a simple binary patch in config.plist\Kernel and Kext Patches\KextToPatch section we can avoid Apple usb limit ;).
Same thinking about the bluetooth card: I know it's not mandatory to have that: but it's a really fine solution to have fully functional Airport, bluetooth 4.0 (working in Clover as well, for multi booters with wireless keyboard!), handoff and continuity features... I mean: I really don't like the idea of giving up on this card. Any alternative solution besides deleting EH02 address would be appreciated.
And ONE LAST THING :)
Another weird behavior related to BT card (like the sleep issue, only in El Capitan): the rig is powering up from keyboard! Yes, I mean after shutting it down. Just like the sleep state. And another workaround has showed up:
in EFI\EFI\CLOVER\config.plist\Acpi select both FixShutdown and SlpSmiAtWake in DSDT Fixes section

Well i thought I would try removing the ports in DSDT since I have nothing connected to those internal USB2 headers, my only external ports in the chassis are USB3, and getting the port count to 14 means less work and no additional kext, plus I wanted to get rid of those messages in my system log that I posted before. Or at least try.

So far it has worked perfectly. No additional kext, all ports working as expected. The log messages are still there though, but whether they are referring to the port arrangment or not, Im not sure now.

I dont use the original wifi card. I put my own wifi only card in that shows as built in Airport.

Regarding power up, Ive always been able to click on the mouse button or any keyboard button and it powers up the system.

Ive also added the clock-id you mentioned :)

I did spot HS15 in the DSDT, any idea what it refers to ? Its not on your map and I couldnt think of anything else, unless it was maybe used for the bluetooth part of the original wifi card ? I have removed it from the DSDT as well, no bad effects so far.

The odd results are those log messages. They always come in pairs; sometimes I see a single pair, sometimes 2 pairs, sometimes 3 pairs, but never more. I wonder if there is some connection between the messages and the ports listed under EH01 and EH02, but I dont know enough about it to be sure. It just annoys me when I see those messages :)
 
So far it has worked perfectly. No additional kext, all ports working as expected
Please double check os HS13. I tried every method, but still, it's missing. I attach my IOReg with no kext injector, no binary patch for usb limit, no EH02 adr patch and HS05, HS06, HS07, HS08 and HS15 removed from DSDT. No way.
XHC no patches.png
I dont use the original wifi card. I put my own wifi only card in that shows as built in Airport.
. I see. I guess the Bluetooth part of my combo card is the issue, not the Airport one. No problems in Yosemite, though.
Regarding power up, Ive always been able to click on the mouse button or any keyboard button and it powers up the system.
Weird, perhaps you have bios option USB Keyboard/Remote Power On set as Enabled?
Bios key.jpg
'Cause I've never enabled it.
I did spot HS15 in the DSDT, any idea what it refers to ? Its not on your map and I couldnt think of anything else, unless it was maybe used for the bluetooth part of the original wifi card ? I have removed it from the DSDT as well, no bad effects so far.
I don't really know. is there a way to find out what HS11, HS12, and HS15 are for?
 

Attachments

  • IOReg giacomoleopardo no USB EH02 patches.zip
    2.1 MB · Views: 65
Please double check os HS13. I tried every method, but still, it's missing. I attach my IOReg with no kext injector, no binary patch for usb limit, no EH02 adr patch and HS05, HS06, HS07, HS08 and HS15 removed from DSDT. No way.
. I see. I guess the Bluetooth part of my combo card is the issue, not the Airport one. No problems in Yosemite, though.
Weird, perhaps you have bios option USB Keyboard/Remote Power On set as Enabled?
'Cause I've never enabled it.
I don't really know. is there a way to find out what HS11, HS12, and HS15 are for?

You're right about HS13, nothing here either. USB3 devices work in there just fine though. If you look at the methods for HS14, HS13 and one of the lower value HS ports in the DSDT, they are all structured different. And look at the port addressses. Upto and including HS09 they are consistent as you would reasonably expect, but then :

HS10 adr 0
HS13 adr 0
HS14 adr 0x0E

Have you tried using different addresses for 10 and 13 ?

And yep, I do have USB Keyboard/Remote enabled in the bios. It works well for me since I never even have to touch the power button any more. I just do it all from the keyboard or mouse. Wake or Power On, its the same.

I couldnt find HS11, 12 or 15 when I loaded Yosemite either. Maybe they are just not used ??
 
Well, now I'm completely confused, lol :)
I have the BCM94360CD card and as you can see from post #431 I have connected an apple IR sensor to the internal USB2 header.
As it turns out the DSDT you initlally posted works fine for me (thanks again) so I just did some changes to get airplay working and changed '9' to '8' series.

For safety measures I'm attaching this DSDT without the changes made in post #429
(Name (_ADR, Zero) // _ADR: Address to Name (_ADR, 0x001A0000) // _ADR: Address)

Could you please take a look (again, I know) and check if everything is alright, Giacomo?

Thanks in advance

This looks fine to me. To get a clean compile you just need to comment out :

_SB_.PCI0.PEG1
_SB_.PCI0.PEG2

:)
 
You're right about HS13, nothing here either. USB3 devices work in there just fine though. If you look at the methods for HS14, HS13 and one of the lower value HS ports in the DSDT, they are all structured different. And look at the port addresses. Upto and including HS09 they are consistent as you would reasonably expect, but then :

HS10 adr 0
HS13 adr 0
HS14 adr 0x0E

Have you tried using different addresses for 10 and 13 ?
I couldnt find HS11, 12 or 15 when I loaded Yosemite either. Maybe they are just not used ??

SOLVED.
Thet way you suggested seems to be right, I mean re-addres the HS13 port. But not enough.
1 - Referring to Method (_ADR, give to HS13 same DSDT structure as HS14
from

Code:
Device (HS13)
                {
                    [B]Method (_ADR, 0, Serialized)  // _ADR: Address
                    {
                        If (LEqual (And (CDID, 0xF000), 0x8000))
                        {
                            Return (0x0D)
                        }
                        Else
                        {
                            Return (0xFD)
                        }
                    }[/B]

                    Method (_STA, 0, Serialized)  // _STA: Status
                    {
                        If (LEqual (And (CDID, 0xF000), 0x8000))
                        {
                            Return (0x0F)
                        }
                        Else
                        {
                            Return (Zero)
                        }
                    }

to

Code:
Device (HS13)
                {
                    [B]Name (_ADR, 0x0D)  // _ADR: Address[/B]
                    Method (_STA, 0, Serialized)  // _STA: Status
                    {
                        If (LEqual (And (CDID, 0xF000), 0x8000))
                        {
                            Return (0x0F)
                        }
                        Else
                        {
                            Return (Zero)
                        }
                    }

2 - Give to HS13 another Physical Location of Device (PLD). Since I don't know anything about these codes, I tried with the PLD of the three ports that actually don't exist, HS11, HS12 and HS15. Guess what? working with any of those PLD!
from

Code:
Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
                    {
                        Name (PLDP, Package (0x01)
                        {
                            Buffer (0x10)
                            {
                                /* 0000 */   [B]0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,[/B]
                                /* 0008 */   [B]0x71, 0x0C, 0x80, 0x06, 0x00, 0x00, 0x00, 0x00[/B]
                            }
                        })

to

Code:
Method (_PLD, 0, Serialized)  // _PLD: Physical Location of Device
                    {
                        Name (PLDP, Package (0x01)
                        {
                            Buffer (0x10)
                            {
                                /* 0000 */   [B]0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,[/B]
                                /* 0008 */   [B]0x69, 0x0C, 0x80, 0x05, 0x00, 0x00, 0x00, 0x00[/B]
                            }
                        })
taken from HS11. Successfully tested with PLD from HS12 and HS15 as well.
So, PJALM usb Injector kext is no longer needed. Please, guys, make me a liar. Expecting your tests ;)

Please everybody, note that I'm not an expert, this is a try and error process. Be careful about doing this, ok?

EDIT: Almost forgot, If you have no need to use internal USB 2.0 headers, then you can avoid usb limit binary code injected in config.plist\Kernel and Kexts Patch\KextToPatch section (like the evil WonkeyDonkey). On the other hand, if you'd like to have the whole "usb fleet" working (like the good old myself), then you have to add that patch. :lol:
 
Would you please post your DSDT with these changes? Happy to be your personal guinea pig ;)
Thank you. Since you too have the native Mac BCM94360CD BCM94331CD combo card (by the way, plugged into mini PCIE through this adapter, or in the main PCIE through this one?) would you mind to test two different DSDTs attached here? The first one (dsdt EH02 native.aml) is the one that gives me troubles with wake from sleep, and the second one (dsdt EH02 patched.aml) is the one with RehabMan patch in EH02. Thanks again!
 

Attachments

  • dsdt giacomoleopardo no PJ kext.zip
    29.6 KB · Views: 59
Last edited by a moderator:
Status
Not open for further replies.
Back
Top