Contribute
Register

[Guide] 10.11+ USB changes and solutions

Status
Not open for further replies.
I have a working SSDT-UIAC. But just edited it to disable bluetooth. (It's an intel wifi + bluetooth card so useless anyway)
Just can't quite seem to disable it. Location - HS14, removed it from the ssdt-uiac. Still shows up in sys prefs and sys info.
Maybe I have to shut it off through Windows?
 

Attachments

  • Reporting.zip
    2.8 MB · Views: 81
Last edited:
I have a working SSDT-UIAC. But just edited it to disable bluetooth. (It's an intel wifi + bluetooth card so useless anyway)
Just can't quite seem to disable it. Location - HS14, removed it from the ssdt-uiac. Still shows up in sys prefs and sys info.
Maybe I have to shut it off through Windows?

It is picking up HS14 from SSDT-19.aml. SSDT-UIAC.aml is ignored due to being loaded after SSDT-19.aml.
Use numbered SSDTs only for patched OEM SSDTs to avoid confusing yourself.

Note: Similar mistake with SSDT-XOSI.aml vs. SSDT-18.aml
 
So only use patched numbered SSDTs in my ACPI/patched. Would I have to change the sorted order?
I removed all non patched SSDTs. Even though I removed SSDT-19 it seems that SSDT-UIAC is still not loading.
 

Attachments

  • Reporting.zip
    2.8 MB · Views: 76
So only use patched numbered SSDTs in my ACPI/patched. Would I have to change the sorted order?
I removed all non patched SSDTs. Even though I removed SSDT-19 it seems that SSDT-UIAC is still not loading.

Maybe you're booting with -uia_ignore_rmcf.

Note: Your ACPI configuration is wrong. For some reason, you have duplicate content in SSDT.aml and SSDT-0.aml.
 
Went through all SSDTs and got rid of duplicates, not booting with -uia-ignore-rmcf. Still doesn't want to load.
[What's strange though if I edit HS14 back into SSDT-UAIC with a bogus port number everything is all peachy, don't know exactly why.]

*ioreg of bogus port for hs14 in ssdt-uaic* added
 

Attachments

  • Reporting.zip
    5 MB · Views: 80
  • bogus.port.zip
    448.4 KB · Views: 85
Last edited:
Went through all SSDTs and got rid of duplicates, not booting with -uia-ignore-rmcf. Still doesn't want to load.
[What's strange though if I edit HS14 back into SSDT-UAIC with a bogus port number everything is all peachy, don't know exactly why.]

*ioreg of bogus port for hs14 in ssdt-uaic* added

Your SSDT-UIAC.aml is invalid. The package size for "ports" (Package(0x16)) is wrong. You have 10 ports that follow. Each uses two package entries. 10*2 = 20. 20=0x14 (not 0x16 or 22).

I think you made the mistake of editing your AML directly instead of the source SSDT-UIAC.dsl.
 
All's working well I believe. How's my ACPI configuration looking now?
But there is an issue with the dual Thunderbolt / USB C port. It will not work unless a device is plugged in at boot.
Wondering how I could begin to try to get that working.
 

Attachments

  • Reporting.zip
    2.8 MB · Views: 93
But there is an issue with the dual Thunderbolt / USB C port. It will not work unless a device is plugged in at boot.
Wondering how I could begin to try to get that working.

I think that is typical (I've read it elsewhere). But this is not a TB thread... therefore off-topic.
 
@RehabMan,
Sorry to be a nuicanse again here. My understanding is better now. Just can you please confirm these few things about the USB ports? It would help improve my understanding very much. Thank you.

Specific Recommendations (100-series)

There is no EHCI controller in 100-series, so several of the solutions (and problems) for 7/8/9-series don't apply to 100-series.

So I can't use FakePCIID_XHCIMux.kext. That is only for Z97 and earlier mobos.

Install USBInjectAll.kext. You will need the port limit patch as well as 100-series injection will always inject more than 15 ports.

I read you mention this "port limit patch" several times here. But where is it to be found, and why do i actually need to use it? I already identified which ports are which, for to make my .dsl file for USBInjectAll already at this point.

I understand you say I must pick / choose which USB ports to disable. But whats the reason? I mean, apart from Wake from Sleep, which it seems like isnt working anyways for me.

From there, customize USBInjectAll using an SSDT with UIAC/RMCF. See USBInjectAll README. It is worthwhile to seek out an SSDT specific for your board that an expert has already created.

Once you have all ports injected, test them, determine which ones you can live without and exclude them with kernel flag uia_exclude. Kernel flag uia_exlude will exclude ports even from a custom USBInjectAll configuration via RMCF. After enough ports are excluded to bring the total ports under 15, you can eliminate the port limit patch.

OK. I will do that. But why do I actually need to do this?

Further questions remaining:

* Then I cannot use "XOSI fix" for my Skylake Z170?
* Do I use the kernel flag something like this? --> uia_exclude=HS07;HS08;HS12;SS12
* Can I later buy an ASMedia USB 3.1 pci-e card, to add more USB 3 ports?

And if yes, (then going back to my original issue on other thread)... these USB 3.0 'SS' ports dont seem to work at USB 3.0 Speeds. But ALSO neither does the USB 3.1 Type 'A' port on my Alpine Ridge chip here in MacOS Sierra. So would that indicate perhaps some other wider OS level new issue regarding all USB in Sierra (regardless if its a USB port on the PCH, or else other 3rd party chipsets ASMedia, etc)?

Many thanks for all your help so far. And also the FakeSMC_*Sensors / HWMonitor.app too!
 
Last edited:
So I can't use FakePCIID_XHCIMux.kext.

Correct.

I read you mention this "port limit patch" several times here. But where is it to be found, and why do i actually need to use it? I already identified which ports are which, for to make my .dsl file for USBInjectAll already at this point.

You need it to enable all ports. It is in config_patches.plist available in the USBInjectAll repo.

I understand you say I must pick / choose which USB ports to disable. But whats the reason? I mean, apart from Wake from Sleep, which it seems like isnt working anyways for me.

In the event that you have more than 15 ports, you must decided which ports you're going to eliminate to stay at or under the 15-port limit. Using the port limit patch long term is a bad idea.

OK. I will do that. But why do I actually need to do this?

Injecting only the ports you need allows you to stay within the 15-port limit.

* Then I cannot use "XOSI fix" for my Skylake Z170?

I don't know why you have that impression.

* Do I use the kernel flag something like this? --> uia_exclude=HS07;HS08;HS12;SS12

You can use that to exclude ports. But usually you need to also set UsbConnector correctly, which cannot be done with a kernel flag. Hence the suggestion to create a custom SSDT.

* Can I later buy an ASMedia USB 3.1 pci-e card, to add more USB 3 ports?

I have no experience with ASMedia USB hardware.
I have an FL1100 based card on one of my desktops that works just fine...

And if yes, (then going back to my original issue on other thread)... these USB 3.0 'SS' ports dont seem to work at USB 3.0 Speeds. But ALSO neither does the USB 3.1 Type 'A' port on my Alpine Ridge chip here in MacOS Sierra. So would that indicate perhaps some other wider OS level new issue regarding all USB in Sierra (regardless if its a USB port on the PCH, or else other 3rd party chipsets ASMedia, etc)?

You would have to provide "Problem Reporting" files that show the test device plugged in and the specifics on the device, and the specific way you're testing speed... And also, keep in mind that actual speeds may vary depending on the specific device you have plugged in. Just because you use a USB3 device, does not mean that device can perform at the top of USB3 bandwidth. In any case, you should verify your device can perform at your expected speeds by testing in Windows.
 
Status
Not open for further replies.
Back
Top