- Joined
- Jun 20, 2014
- Messages
- 1,015
- Motherboard
- Gigabyte Aero 15X v8-BK4K4P
- CPU
- i7-8750H
- Graphics
- UHD 630 / GTX 1070
So I've been following Rehabman's [Guide] 10.11+ USB changes and solutions and have a few questions about my wonderful new Cubi 2 Plus (7M - 015BUS) hackintosh build.
I added the DSDT patches required to rename EHC1->EH01 and EHC2->EH02 to Clover as well as the _OSI to XOSI patch.
So I have applied the change 15 port limit to 26 in XHCI kext patch and copied USBInjectAll.kext into the appropriate location.
From plugging in devices I have discovered the id's of each USB port and added them to a diagram. I then modified the SSDT-UIAC-ALL.dsl file to suit my machine because it has a 100-series 8086:a12f controller.
Here is my modified SSDT-USB.dsl
I copied the compiled aml's (SSDT-USB.aml and SSDT-XOSI.aml) to the Clover's ACPI/patched folder.
Since I have the correct ports set I have now removed the port limit patch.
Everything seems to be working OK.
Now on to my questions:
- First of all does my SSDT-USB.dsl file above look okay? I've attached an image of the physical USB layout to show the matching port config.
- Do I now remove USBInjectAll.kext? In the article Rehabman says "Do not plan to use the patch long-term. It could be problematic.". So I assume I remove it now?
- Now that I've removed USBInjectAll.kext I noticed the missing ports in my SSDT-USB.aml file show now (specifically HS03, HS08 and SS03). Again perhaps I'm not supposed to remove this file but it's unclear (Rehabman does specifically say to remove the port limit patch though)
- Do I need the EHC1->EH01 and EHC2->EH02 patches? They didn't seem to make a difference. Do I remove them now that I've got everything configured and working?
- Do I need SSDT-XOSI.aml? I am not quite sure why this is required (to report a Windows version)? Is there a way I can test this is working?
I added the DSDT patches required to rename EHC1->EH01 and EHC2->EH02 to Clover as well as the _OSI to XOSI patch.
So I have applied the change 15 port limit to 26 in XHCI kext patch and copied USBInjectAll.kext into the appropriate location.
From plugging in devices I have discovered the id's of each USB port and added them to a diagram. I then modified the SSDT-UIAC-ALL.dsl file to suit my machine because it has a 100-series 8086:a12f controller.
Here is my modified SSDT-USB.dsl
Code:
// SSDT-UIAC-ALL.dsl
//
// This SSDT can be used as a template to build your own
// customization for USBInjectAll.kext.
//
// This SSDT contains all ports, so using it is the same as without
// a custom SSDT. Delete ports that are not connected or ports you
// do not need.
//
// Change the UsbConnector or portType as needed to match your
// actual USB configuration.
//
// Note:
// portType=0 seems to indicate normal external USB2 port (as seen in MacBookPro8,1)
// portType=2 seems to indicate "internal device" (as seen in MacBookPro8,1)
// portType=4 is used by MacBookPro8,3 (reason/purpose unknown)
//
DefinitionBlock ("", "SSDT", 2, "hack", "UIAC-ALL", 0)
{
Device(UIAC)
{
Name(_HID, "UIA00000")
Name(RMCF, Package()
{
"8086_a12f", Package()
{
"port-count", Buffer() { 20, 0, 0, 0 },
"ports", Package()
{
"HS01", Package() // HS USB3 back bottom
{
"UsbConnector", 3,
"port", Buffer() { 1, 0, 0, 0 },
},
"HS02", Package() // HS USB3 back top
{
"UsbConnector", 3,
"port", Buffer() { 2, 0, 0, 0 },
},
"HS04", Package() // HS USB3 front top right
{
"UsbConnector", 3,
"port", Buffer() { 4, 0, 0, 0 },
},
"HS05", Package() // HS USB2 front top left
{
"UsbConnector", 0,
"port", Buffer() { 5, 0, 0, 0 },
},
"HS06", Package() // HS USB2 front bottom left
{
"UsbConnector", 0,
"port", Buffer() { 6, 0, 0, 0 },
},
"HS07", Package() // HS USB2 front bottom right
{
"UsbConnector", 0,
"port", Buffer() { 7, 0, 0, 0 },
},
"HS09", Package() // HS USB2 top
{
"UsbConnector", 0,
"port", Buffer() { 9, 0, 0, 0 },
},
"HS10", Package() // bluetooth
{
"UsbConnector", 255,
"port", Buffer() { 10, 0, 0, 0 },
},
"SS01", Package() // SS USB3 back bottom
{
"UsbConnector", 3,
"port", Buffer() { 17, 0, 0, 0 },
},
"SS02", Package() // SS USB3 back top
{
"UsbConnector", 3,
"port", Buffer() { 18, 0, 0, 0 },
},
"SS04", Package() // SS USB3 front top right
{
"UsbConnector", 3,
"port", Buffer() { 20, 0, 0, 0 },
},
},
},
})
}
}
//EOF
I copied the compiled aml's (SSDT-USB.aml and SSDT-XOSI.aml) to the Clover's ACPI/patched folder.
Since I have the correct ports set I have now removed the port limit patch.
Everything seems to be working OK.
Now on to my questions:
- First of all does my SSDT-USB.dsl file above look okay? I've attached an image of the physical USB layout to show the matching port config.
- Do I now remove USBInjectAll.kext? In the article Rehabman says "Do not plan to use the patch long-term. It could be problematic.". So I assume I remove it now?
- Now that I've removed USBInjectAll.kext I noticed the missing ports in my SSDT-USB.aml file show now (specifically HS03, HS08 and SS03). Again perhaps I'm not supposed to remove this file but it's unclear (Rehabman does specifically say to remove the port limit patch though)
- Do I need the EHC1->EH01 and EHC2->EH02 patches? They didn't seem to make a difference. Do I remove them now that I've got everything configured and working?
- Do I need SSDT-XOSI.aml? I am not quite sure why this is required (to report a Windows version)? Is there a way I can test this is working?
Attachments
Last edited: