Contribute
Register

[Guide] Creating a Custom SSDT for USBInjectAll.kext

Attachments

  • debug_19467.zip
    2.1 MB · Views: 64
I'm trying to get the USB working on a Gigabyte Z170X Designare. Do I need to use the PCIID kexts for this as I'm really struggling to get USB 3.0 enabled?
Also, I'll be doing similar with a ASUS ROG Maximus X Hero. Will I need the kexts for this?
 
Hi Rehabman,

Thank you so much for helping us all the time, really appreciated that I learn with fun.
I can utilize all the USB ports on the H170 MB with either PMHeart's patch or SSDT.aml (finally figured out and use all Hex address to make it right!) injection.

But there is a infamous instant wake problem that annoys me a bit (no matter PMHeart/SSDT), the Razer mouse (which has LED light and check it use 500mA pwr)
before I use Razer it was an old Logitech G3 which use 98mA current. I used to attach mouse on HS11 (under a pwr switchable hub, each port!)

Have no instant wake issue on Logitech G3, but Razer, always wakes the computer up after I put OS to hibernation.
log show --style syslog | fgrep "Wake reason" tells me XHCI wakes
I pinned point that Razer mouse is responsible:banghead: for the wake (not other BT dongle, keyboard under the same HS11 hub).

I wonder if there is a fix for that without replacing the new mouse?

Further, would you be so kind as to review my current UEFI drivers/kexts to suggest me if I can reduce unnecessary ones?

Thanks a million!:thumbup:



Appendix :
USB Ports and its def. address in Hex and Dec
Their current USB Roles simple version (ASUS H170 Pro Gaming)

HS05 port 0x05 5 (reserv)
HS06 port 0x06 6 (reserv)
HS07 port 0x07 7 (low speed device)
HS08 port 0x08 8 (Android)
HS09 port 0x09 9 (Xbox 360 Wireless Receiver)
HS10 port 0x0a 10 (Printer )
HS11 port 0x0b 11 (USB 2.0 Hub KB BT Mouse.Wacom..)
HS12 port 0x0c 12 (pwr)
HS13 port 0x0d 13 (Front USB 2.0)
SS03 port 0x13 19 (ext HDD)
SS04 port 0x14 20 (reserv)
SS05 port 0x15 21 (ext HDD)
SS06 port 0x16 22 (ext HDD)
 

Attachments

  • debug_31571.zip
    867.3 KB · Views: 74
Last edited:
No "Problem Reporting" files attached.
Read FAQ, "Problem Reporting" again. Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
Use the gen_debug.sh tool mentioned in the FAQ, that way it is less likely you'll omit something.
I got it to work. The only reason I didn’t upload is because he has the same board as I do and I was just wondering if he had had the same problem. I followed the guide and it went well except for that one problem. And after I downloaded his ssdt I used the guide to change it to fit my needs. The guide is written well and covers a lot of info. I had to read through it a few times to let all the information soak in. But again it’s all working now. Thanks again for the guide. Without it my usb3 ports would still be functioning at usb 2 speeds.
 
I've enabled just the XHCI since I don't want to use the FakePCIID_XHCIMux.kext because it won't reflect any changes under XHC only in EH01/EH02

View attachment 377624

Am I right? If I enable EHCI Control I should patch the FakePCIID_XHCIMux.kext. So if I won't enable it I don't need to patch the kext.

Thanks skroutz999



I've enabled XHCI

View attachment 377622

Still have -uia_exclude_hs uia_include=HS11 in my boot arguments

It won't detect USB3 in SSxx ports.


BTW my problem is USB3 ports are on USB 2 speeds (480mb/sec)

Thanks RehabMan
Attached is my debug.sh results.

Thanks a lot RehabMan!

Your custom SSDT-UIAC.aml has only HSxx ports. No surprise that USB3 pins/SSxx are not working.
 
But there is a infamous instant wake problem that annoys me a bit (no matter PMHeart/SSDT), the Razer mouse (which has LED light and check it use 500mA pwr)
before I use Razer it was an old Logitech G3 which use 98mA current. I used to attach mouse on HS11 (under a pwr switchable hub, each port!)

Have no instant wake issue on Logitech G3, but Razer, always wakes the computer up after I put OS to hibernation.
log show --style syslog | fgrep "Wake reason" tells me XHCI wakes
I pinned point that Razer mouse is responsible:banghead: for the wake (not other BT dongle, keyboard under the same HS11 hub).

Test device specific problem (Razer mouse) on real Mac.

Also, your ioreg shows Android File Transfer... bad idea. Read laptop FAQ:
http://www.tonymacx86.com/el-capita...faq-read-first-laptop-frequent-questions.html
 
Your custom SSDT-UIAC.aml has only HSxx ports. No surprise that USB3 pins/SSxx are not working.

Even if I put SSxx on the Custom SADT-UIAC the HSxx doesnt have a paired SSxx when doing a port discovery.

This is my initial roadblock to your guide as I mention in Post #2,906:

After discovering all HS ports (HS09-11,HS14) I've rebooted with -uia_exclude_hs uia_include=HS11 argument to discover SS ports.

Upon restart, USB 3 ports won't work anymore.

screen-shot-2019-01-08-at-12-54-21-am-png.377430


Thanks RehabMan


UPDATE:

@RehabMan

I was able to booth my High Sierra to check my IOReg. I notice that it uses SSP5 and SSP6 for my USB 3s. But on Mojave, when I install USBinjectAll.ktext it replaces SSP to SS. Is there anyway to force inject SSP instead of SS to see if it will recognize SSP5 and SSP6 in Mojave?

Here's an screenshot of the IOreg of my High Sierra

Screen Shot 2019-01-10 at 3.56.42 AM.png


Thanks again
 
Last edited:
I have a question @RehabMan, and I apologize if by any chance it's been asked before.

Once somebody creates a custom SSDT for a certain motherboard, that SSDT is valid for the *model* or for that person's motherboard only?

I ask this because I found some threads here where people have created SSDT's for the same motherboard I have, and I am unsure whether I can use that one or need to create my own...
 
I'm stuck at USB2 speed, only one of the three ports runs at full speed. All are USB3, according to this:
Asus Website G551JW Spec
and my own testing in Windows (all ports read at 90-100 MB/s)

I use Multibeast at first, it installed the port limit patch, and it worked but still only one full speed port. I did what the post told me and found out:
- EH02 / PR21 / HP21: BT
- EH02 / PR21 / HP23: Cam
- EH01 / PR11 / HP12 and HP13: 2 port which run at USB2
- XHC/SS01: run at USB3. When I use an USB2 sticks, it says that the USB is attached to EH01 / PR11 / HP11
And the situation stays the same: 2 USB2, 1 USB3.

How can I fix this? and what to choose to keep in the template, HUB with all those HP ports or EH with just (mixed) PR ports? Thanks!
 

Attachments

  • debug_12453.zip
    1.9 MB · Views: 75
Back
Top