Contribute
Register

A Beginner's Guide to Creating a Custom USB SSDT

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
3,710
Motherboard
Gigabyte Z390M Gaming
CPU
i5-9600K
Graphics
RX 560
Mac
iMac, Mac mini
Classic Mac
eMac, iBook
Mobile Phone
iOS
Hi


Hi UtterDisbelief, sorry my mistake. I edited the thread, and I attached the ioreg and config, as you can see I have both patch enabled. The controller work fine on windows, I installed windows in dual-boot in order to verify all them. Only one controller is showing up in Hackintool, USBMap, and System Information. In IORegistry I can spot them but no one port is populated, if my IORegistry reading is right.
Many thanks,
Okay ...

Then I go back to all those ACPI patches. They are the only things which would disable a controller in macOS only and leave Windows alone.
 
Joined
Aug 19, 2015
Messages
19
Mac
Classic Mac
Mobile Phone
Okay ...

Then I go back to all those ACPI patches. They are the only things which would disable a controller in macOS only and leave Windows alone.
Thanks UtterDisbelief for your dedication mate, I really appreciate your help.
I tried to disable them all, no luck, still one controller visible..
 

Attachments

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
3,710
Motherboard
Gigabyte Z390M Gaming
CPU
i5-9600K
Graphics
RX 560
Mac
iMac, Mac mini
Classic Mac
eMac, iBook
Mobile Phone
iOS
Thanks UtterDisbelief for your dedication mate, I really appreciate your help.
I tried to disable them all, no luck, still one controller visible..
Okay, but I am sorry, back in post #457 you had both controllers finally working. That means something you have done since has broken USB again.

You should perhaps go back and check what you have done since. I can't see that from here, sadly, and am working in the dark.
 
Joined
Aug 19, 2015
Messages
19
Mac
Classic Mac
Mobile Phone
Hi there. I'll try to clear away the confusion ...

Those ACPI patches you are using were from a 2014 build.

Okay, but I am sorry, back in post #457 you had both controllers finally working. That means something you have done since has broken USB again.

You should perhaps go back and check what you have done since. I can't see that from here, sadly, and am working in the dark.
As said the controller appears only while using the pre-compiled 2014 SSDT I found online in the mentioned thread.
Apparently is the only way to bring up the second controller.
 
Joined
May 14, 2016
Messages
23
Motherboard
GA-Z97-HD3
CPU
i7-4790K
Graphics
RX 580
Mac
iMac, MacBook Pro, Mac Pro
Classic Mac
128K, 20th Anniv. Mac
I really hope others with more expertise than me chime in soon. But perhaps something will jump out and lead you to the right file..

Only things I can think of:

see my file below

-I didn't change the definition block, yours looks a bit different, perhaps a different template.¯\_(ツ)_/¯
-This part here ""8086_a12f", Package()" I picked based on the device id for the root XHC device in my case. I guess for you it would be root EH (in IOREG)
-I left the "port-count", Buffer() { 26, 0, 0, 0 }, even though I only have <= 15 total ports
-I assume your .dsl compiled into an .aml without errors?

Only things I can think of atm...
Thank you so much again for the help! What template did you use? I used the one in this Beginners Guide. So for the "Package()" section, would the attached location be where I pull my device-id from?
And yes, no errors were found.
 

Attachments

Joined
May 14, 2016
Messages
23
Motherboard
GA-Z97-HD3
CPU
i7-4790K
Graphics
RX 580
Mac
iMac, MacBook Pro, Mac Pro
Classic Mac
128K, 20th Anniv. Mac
I really hope others with more expertise than me chime in soon. But perhaps something will jump out and lead you to the right file..
Dude... I think it works now! I changed my limit to 26 like yours and changed the "Package()" to a different ID and bam! Things seem to be working. Attached is my IO Registry screen grabs. Does everything look right? Not sure how to fully tell if this patch is working...
 

Attachments

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
3,710
Motherboard
Gigabyte Z390M Gaming
CPU
i5-9600K
Graphics
RX 560
Mac
iMac, Mac mini
Classic Mac
eMac, iBook
Mobile Phone
iOS
As said the controller appears only while using the pre-compiled 2014 SSDT I found online in the mentioned thread.
Apparently is the only way to bring up the second controller.
Hi there,

No, in post #455 you said you were having problems compiling your own USB SSDT because there was only one controller. In post #457 you said you had finally succeeded. No mention of getting one online from another user that I can see. (Except those other 8 or 9 miscellaneous ssdts).

I can see from your IOReg output that both controllers are present, but there are no ports attached to EH02.

You also have GenericUSBXHCI installed which has at least attached itself to the USB3 ports.

Post #463 was the last time we saw an EFI folder and there was no USB patch in the "patched" folder.

Maybe post the USB SSDT aml file for checking?
 
Last edited:
Joined
Jul 26, 2018
Messages
678
Motherboard
Asus Z370-A Prime II
CPU
i7-8700
Graphics
RX 580
Mac
MacBook Pro
Mobile Phone
iOS
Is anyone working on a "repo" for working USB maps? It takes away from the learning experience for sure but would be quite simple and fast. I mapped out my Asus Prime Z370 a (hopefully it works on the rev 2) and never looked back.
 

UtterDisbelief

Moderator
Joined
Feb 13, 2012
Messages
3,710
Motherboard
Gigabyte Z390M Gaming
CPU
i5-9600K
Graphics
RX 560
Mac
iMac, Mac mini
Classic Mac
eMac, iBook
Mobile Phone
iOS
Is anyone working on a "repo" for working USB maps? It takes away from the learning experience for sure but would be quite simple and fast. I mapped out my Asus Prime Z370 a (hopefully it works on the rev 2) and never looked back.
It's a good idea, and to answer your question briefly some work has been done.

The main stumbling-block seems to be that folk choose to configure their ports, their way. For example which internal header is used for Bluetooth. Or which connectors they sacrifice to get down to the 15-port limit.

For each one there would have to be a mini-guide. Which is fair enough. But it's a lot of work. And you might end up with - again for example - 10x different Z390 Aorus Pro layouts, each tailored to that one user's needs.

I agree though, like the old DSDT database, it would be very useful if it can realistically be made to work, but there could be problems in the future with the big changes being made to kernel security in macOS.

:)
 
Top