Contribute
Register

[Guide] Creating a Custom SSDT for USBInjectAll.kext

@RehabMan....i know it's a silly question but i must ask because as i wrote i'm here to learn...when you write "now compile the edited dsl to aml with maciasl save as...." you mean that 1) click to "compile button" then save as aml? or 2) without click "compile" button just save as..?
 
@RehabMan....i know it's a silly question but i must ask because as i wrote i'm here to learn...when you write "now compile the edited dsl to aml with maciasl save as...." you mean that 1) click to "compile button" then save as aml? or 2) without click "compile" button just save as..?

Save As is how you save to (compile to) AML.
Compile is just to see if you have errors or not.
 
The port addresses you're using for SSP3, SSP4, and SSP5 are wrong.
The correct port addresses are in SSDT-UIAC-ALL.dsl for section "8086_8xxx".
I don't understand your comment. I do not control the port numbers, I only copy them from the port numbers in IORegistryExplorer that appear in the right-hand column of each HSxx or SSPx selected in the XHC listing.

When I began this logistical puzzle, the port number for SSP3 was <12 00 00 00>, the port number for SSP4 was <13 00 00 00>, and the port number for SSP5 was <14 00 00 00>. So that was fine, and yes, that is what the SSDT-USB-ALL.dsl also showed, so I initially left them alone. However, I was confused by the port numbers for HS10 and HS11, which in IORegistryExplorer were (and are) given as <0a 00 00 00> and <0b 00 00 00> respectively. As I wrote in my post #135, I could not understand why if HS10 and HS11 were shown in hex, why SSP3-5 were shown in decimal format. The hex form of decimal 12 is 0c (or 0x0c), right? So why were SSP3 not shown as <0c 00 00 00>, SSP4 <0d 00 00 00>, and SSP5 <0e 00 00 00>? Or if not that, then why weren't HS10 shown as <10 00 00 00>, and HS11 as <11 00 00 00>? I found it very inconsistent. And since I didn't know which of those forms to use, and since for some reason my IORegistryExplorer port numbers suddenly changed to hex representations while I was trying different SSDTs, I decided to go in my SSDT with hex designators for HS10, HS11, SSP3, SSP4, and SSP5. And it worked. My SSDT with hex port numbers now matches my IORegistryExplorer port numbers. So I didn't really change anything except the form of the port numbers (and the port-count), to agree with the (present) form used in IORegistryExplorer.

BTW, for some reason the USB connector which was previously SSP6 at port number <15 00 00 00> (for a USB 3.0 flash drive) has changed; now it is HS10 (!) at port number <0a 00 00 00> and is a USB 2/3 port, whereas initially HS10 was only a USB 2 port. Now I don't use SSP6.

I am tempted to go back through that tedious plugging in of both USB2 (my keyboard/mouse) and USB 3.0 devices and see what wonderful changes may have happened again in the XHC listing, but I'm just too burned out. Everything seems to be working just peachy now, so as I said, I quit. I need to get back to my primary Skylake computer.
 
I've been unsuccessfully trying to create an SSDT for a GA-X99P-UD4 (device id 318d). All devices attached on HS09/PR11 are identified always as USB 2.0, I think that is because the internal hub (Renesas 045b) is always identified as 2.0 as well though it seems to be connected on the USB 3.0 bus. What changes do I have to make to the template for the hub to be identified correctly or at least those devices to be USB 3.0?
 

Attachments

  • v1 info.zip
    13.5 MB · Views: 83
I don't understand your comment. I do not control the port numbers, I only copy them from the port numbers in IORegistryExplorer that appear in the right-hand column of each HSxx or SSPx selected in the XHC listing.

The port numbers are determined from the data you inject. The data you inject is determined by what you eventually provide in the SSDT.
Once you use incorrect port numbers in an SSDT, you have incorrect port numbers in ioreg.

Start over.
Don't change the port numbers from what is provided in SSDT-UIAC-ALL.dsl.

When I began this logistical puzzle, the port number for SSP3 was <12 00 00 00>, the port number for SSP4 was <13 00 00 00>, and the port number for SSP5 was <14 00 00 00>. So that was fine, and yes, that is what the SSDT-USB-ALL.dsl also showed, so I initially left them alone.

But you later changed them, which is wrong.

However, I was confused by the port numbers for HS10 and HS11, which in IORegistryExplorer were (and are) given as <0a 00 00 00> and <0b 00 00 00> respectively.

Those are correct and as expected (and matching SSDT-UIAC-ALL.dsl).
0x0a is 10. And 0x0b is 11.

As I wrote in my post #135, I could not understand why if HS10 and HS11 were shown in hex, why SSP3-5 were shown in decimal format.

Data fields in ioreg are always shown in hex.

The hex form of decimal 12 is 0c (or 0x0c), right? So why were SSP3 not shown as <0c 00 00 00>, SSP4 <0d 00 00 00>, and SSP5 <0e 00 00 00>? Or if not that, then why weren't HS10 shown as <10 00 00 00>, and HS11 as <11 00 00 00>?

HS10 has a port address of 10 (decimal). Decimal 10 is 0x0a, therefore shown as <0a 00 00 00>.

I found it very inconsistent.

I think you are confused between hex and decimal representations for the same numbrers.

BTW, for some reason the USB connector which was previously SSP6 at port number <15 00 00 00> (for a USB 3.0 flash drive) has changed; now it is HS10 (!) at port number <0a 00 00 00> and is a USB 2/3 port, whereas initially HS10 was only a USB 2 port. Now I don't use SSP6.

Of course. It is because you changed the port addresses to incorrect values.
 
I've been unsuccessfully trying to create an SSDT for a GA-X99P-UD4 (device id 318d). All devices attached on HS09/PR11 are identified always as USB 2.0, I think that is because the internal hub (Renesas 045b) is always identified as 2.0 as well though it seems to be connected on the USB 3.0 bus. What changes do I have to make to the template for the hub to be identified correctly or at least those devices to be USB 3.0?

Your ioreg is corrupt. Read post #1, "Problem Reporting". Carefully.
 
Stuck at port discovery. Can't detect 2 of the USB 3.0 ports.

HS06/SS?
HS05/SS?
HS04/SS04
HS03/SS03

Appreciate any feedback. Files attached. My F4 key didn't work.

Your ioreg shows nothing ever plugged into HS06 or HS05. HS05/HS06 may be USB2-only ports, or may be not used at all.

F4 works, but only if you press it at the main Clover screen.
 
Your ioreg is corrupt. Read post #1, "Problem Reporting". Carefully.
Thanks, attached again. (Re attached everything, there was missing ACPI info)
 

Attachments

  • v2 info.zip
    3.3 MB · Views: 87
Last edited:
Your ioreg shows nothing ever plugged into HS06 or HS05. HS05/HS06 may be USB2-only ports, or may be not used at all.

F4 works, but only if you press it at the main Clover screen.

New IOREG attached.

Re: F4...I open Clover and click F4...doesn't do anything. I also load config and click F4...nada
 

Attachments

  • newIOReg.ioreg.zip
    872.2 KB · Views: 103
Back
Top