Contribute
Register

[Guide] 10.11+ USB changes and solutions

Status
Not open for further replies.
I sure have. Ive learnt how to know which port is which it seems quite simple now after I've done it it takes a long time for me to understand somethings. Thanks for your help. Quick question how do you know if OS X has booted up with Simulation SSDT? For example SSDT-XOSI Ive also added to my config.

Comment change _OSI to XOSI
Find 5F4F5349
Replace 584F5349

You can see all SSDTs that are loaded by Clover by looking at your Clover bootlog.
 
You can see all SSDTs that are loaded by Clover by looking at your Clover bootlog.

I thought about that. Ill check to make sure they're all loaded :).
 
You will also see the SSDTs if you extract with 'patchmatic -extract'.

Ive just took a look at my bootlog and it says all 4 SSDTs are success.

Inserting SSDT-UIAC.aml from EFI\CLOVER\ACPI\patched ... Success
Inserting SSDT.AML from EFI\CLOVER\ACPI\patched ... Success
Inserting SSDT-LPC.AML from EFI\CLOVER\ACPI\patched ... Success
Inserting SSDT-HACK.aml from EFI\CLOVER\ACPI\patched ... Success
 
Ive just took a look at my bootlog and it says all 4 SSDTs are success.

Inserting SSDT-UIAC.aml from EFI\CLOVER\ACPI\patched ... Success
Inserting SSDT.AML from EFI\CLOVER\ACPI\patched ... Success
Inserting SSDT-LPC.AML from EFI\CLOVER\ACPI\patched ... Success
Inserting SSDT-HACK.aml from EFI\CLOVER\ACPI\patched ... Success
Wow, guys that was an intense story! Congratulations!
 
Hi Rehabman

adding iMac10,1 to your USBInjectAll worked for my 775 board since Sierra dropped support for MacPro3,1.
Your thoughts please
 
Last edited:
Hi Rehabman

adding iMac10,1 to your USBInjectAll worked for my 775 board since Sierra dropped support for MacPro3,1.
Your thoughts please

If you want to build it... adding models is easy...

Note potential diffs to add more iMac models...
Code:
SPEEDY-OSX:injectall.git RehabMan$ git diff generate_Info_plist.sh 
diff --git a/generate_Info_plist.sh b/generate_Info_plist.sh
index 4b92f7e..f8e0259 100755
--- a/generate_Info_plist.sh
+++ b/generate_Info_plist.sh
@@ -49,6 +49,14 @@ mergeModelData "MacBookAir7,1"
 mergeModelData "MacBookAir7,2"

 # iMac
+mergeModelData "iMac4,1"
+mergeModelData "iMac4,2"
+mergeModelData "iMac5,1"
+mergeModelData "iMac6,1"
+mergeModelData "iMac7,1"
+mergeModelData "iMac8,1"
+mergeModelData "iMac9,1"
+mergeModelData "iMac10,1"
 mergeModelData "iMac11,1"
 mergeModelData "iMac11,2"
 mergeModelData "iMac11,3"
 
I'm trying to setup either a custom port injector or a custom injectall ssdt.

USB worked well enough on El Cap simply by defeating the Apple injectors for MacBookAir5,1--simply renaming my EHC1 and EHC2 devices--with USBInjectAll, and FakePCID handling multiplexing. I finally got motivated to see what was actually going on and from what I can tell, all of my USB ports are defined correctly in DSDT, that is, none marked not-connectable when they actually are, though there are a few ports marked connectable that contain a _PLD that are not actually user connectable.

The one problem I do notice is that with the Apple injector defeated, and without USBInjectALL, when a USB3 device is connected to this laptop's single USB3 port, it connects to a XHC high speed port, HSP2@142*, resulting in USB2.0 speeds, whereas with USBInjectAll it correctly connects to SSP2@146*.

So with this situation in mind, if I wanted to build a custom injectall SSDT, I'd simply need to define the USB3 port for XHC and nothing else? Is it necessary to define the entire USB topography when creating the SSDT?
 
So with this situation in mind, if I wanted to build a custom injectall SSDT, I'd simply need to define the USB3 port for XHC and nothing else? Is it necessary to define the entire USB topography when creating the SSDT?

You can override just the configuration that you need to. But, best result would be you customize all EH01/EH02/HUB1/HUB2/XHC.
 
You can override just the configuration that you need to. But, best result would be you customize all EH01/EH02/HUB1/HUB2/XHC.
Okay, so if I were to go the route of customizing all of the above, and I use this template I found on your repo as a starting point, if I'm understanding this right, I would rename "HUB1", Package() to match the DSDT name of my hub device; same for ports. USBConnector should match the value for the port definition found in the DSDT and ACPI spec. What is porttype? Port count is obviously the number of ports being defined, correct?
 
Status
Not open for further replies.
Back
Top