USB 3.0
These instructions are for macOS High Sierra only.
The USB 3.0 ports are all running at USB 2.0 speeds and will not charge an iPhone.
Start by following this
https://www.tonymacx86.com/threads/guide-10-11-usb-changes-and-solutions.173616/
It leads you to this
https://www.tonymacx86.com/threads/guide-creating-a-custom-ssdt-for-usbinjectall-kext.211311/
The process consists of the following steps:
Step 1) preparation for port discovery
Step 2) port discovery
Step 3) creating custom SSDT for USBInjectAll.kext
Step 4) testing/verification
===================
Step 1 - Preparation
Requirements:
- EHC1->EH01 and EHC2->EH02 rename (in config.plist)
- XHCI controller must be named XHC
- port limit patch
- install USBInjectAll.kext (install to the system volume)
- if you plan to use it, install FakePCIID.kext + FakePCIID_XHCIMux.kext.
- if you have an existing SSDT for USBInjectAll, use -uia_ignore_rmcf
- XHCI injector kext, if required (XHCI-300-series-injector.kext)
————————
I have done the following:
Edited EFI/EFI/Clover/config.plist
Added patches to rename things:
EHC1 --> EH01
EHC2 --> EH02
XHCI --> XHC
XHC1 --> XHC
Added patch to "disable port limiting"
Downloaded / installed USBInjectAll.kext
sudo cp -R ~/Desktop/USBInjectAll.kext /Library/Extensions
sudo touch /System/Library/Extensions && sudo kextcache -u /
Downloaded FakePCIID.kext and FakePCIID_XHCIMux.kext. - Installed both with Kext Wizard
Downloaded / installed XHCI-300-series-injector.kext
sudo cp -R ~/Desktop/USBInjectAll.kext /Library/Extensions
sudo touch /System/Library/Extensions && sudo kextcache -u /
Appended this “-uia_ignore_rmcf” onto EFI/Clover/config.plist … /root/boot/arguments
===============
Step 2 - port discovery
Note: USB-C port = HS09
Open IORegExp, find XHC
Use a USB 2.0 device to test each USB port.
USB 2.0 is using HS01 - HS08.
HS09 appears to be the USB 3.0 Type-C port (no device to test it)
HS10 appears to be a built-in USB hub.
So, not using HS11- HS14.
Use the USB 3.0 device to test each USB port.
USB 3.0 is using SS01 - SS08.
So, not using SS09, SS10.
============
Step 3 - creating custom SSDT for USBInjectAll.kext
The steps are as follows:
- use SSDT-UIAC-ALL.dsl as a template (
https://github.com/RehabMan/OS-X-USB-Inject-All/raw/master/SSDT-UIAC-ALL.dsl)
- remove configuration sections that don't apply to the target hardware
- remove ports from the various sections that are not needed
- change UsbConnector values to match physical hardware/ports
XHC@14’s device-id = “Data <af a2 00 00>”
Therefore: my XHC configuration is 8086_A2AF.
Download / install XCode
Download MagiASL code
Compile / Run MagIASL
Download SSDT-UIAC-ALL.dsl
Use MagiASL to open and edit this file.
Keep the 8086_A2AF config, delete all the others.
Within that config, keep HS01 - HS10 and SS01 - SS08 devices, delete all the others.
Save this file as SSDT-UIAC.dsl
To compile:
File > Save As … SSDT-UIAC.aml … file format: ACPI Machine Language Binary
“Make sure you have ACPI 6.1 selected in MaciASL->Preferences->iASL.”
(The default is 6.2A!)
mount your EFI partition
copy SSDT-UIAC.aml to EFI/EFI/Clover/ACPI/patched
Your custom SSDT is now created.
==============
Step 4 - testing/verification
To test it, remove “ -uia_ignore_rmcf” from E/E/C/config.plist, and restart.
Open IORegExp and observe those ports under XHC.
Test a USB 2.0 device (old apple keyboard) in each USB port. It is recognized as a USB 2.0 device called HS##.
Test a USB 3.0 device (Iomega external hard drive) in each USB port. It is recognized as a USB 3.0 device called SS##.
The harddrive can connect and be mounted, and be ejected properly in 2 or 3 seconds.
And files can be copied, fast. A 6.0GB file (Install macOS Mojave) takes 60 seconds.
An iPhone can charge and connect on all USB ports.
The SSDT is working.
===================
“Once your SSDT is working, you can remove or disable the port limit patch.”
My machine has 8 USB 3.0 ports. = 16 ports.
Add 1 USB Type C port, and 1 internal USB hub. = 18.
The Apple limit is 15 ports.
Without the port limit patch, I lose 3 of the USB 3.0 ports.
On the other hand, we currently have many USB 2.0 devices,
and relatively few USB 3.0 devices,
and no USB Type C devices.
I have chosen to remove HS09, the USB Type C port.
Now I only lose 2 USB 3.0 ports, SS07 and SS08.
Edited EFI/EFI/Clover/config.plist
Removed the port limit sections.
==============
To continue with Audio, jump down to message #29.
https://www.tonymacx86.com/threads/...-i630-airport-card.258728/page-3#post-1824975