Contribute
Register

[solved] Trouble Creating USB SSDT from RehabMan's Procedure

Status
Not open for further replies.
I have the same board. When I did my USB checks, HS12 seemed to be active. You do not have this in your dsl. I am not sure what it is (probably internal front panel USB2.0).

From my tests:

HS11 and HS12 are the two front pabek USB2 ports on a header on the board (physically next to the front panel USB3 ports, which are HS01/SS01 and HS02/SS02).
 
HS11 and HS12 are the two front pabek USB2 ports on a header on the board (physically next to the front panel USB3 ports, which are HS01/SS01 and HS02/SS02).
Thank you for confirming that! I thought so. I used to have an internal DVD drive connected to one of the internal USB 2.0s. Now I have an SDCard reader (It shows up as "Generic")
 
No problem; attached below. (Please note that "HS09" is not present since I do not use the USB-C port and needed to minimize my ports to 15 maximum.)

I noted that your "port count" is 26, but the number 26 occurs only in your comments, not in the used ports. Looks to me like the port count should be 24. Also, you seem to have 20 active ports, and I thought the point of using an SSDT was to limit the number of ports to 15. Is that not the case for the Kaby Lake Z370N board? (RehabMan is the expert on this.)

Thanks for pointing out my errors. I changed my "port count" to 25 (after fixing my SSDT, I noticed that USB-C probably needs both SS and HS components of USB, and SS09 has port count 25). A new version has been uploaded with the suffixed "_fixed.dsl". For some reason I still cannot get things working with my Clover configuration. Do you have any particular DSDT fixes on your system?

I removed these two (not sure if that was a good idea, but I could not find these things in my native DSDT Clover export anyway):
  • "change EHC1 to EH01, avoid collisions between USB-Inject-All.kext and built-in port injectors" Find 45484331 -> Replace 45483031
  • "change EHC2 to EH02, avoid collisions between USB-Inject-All.kext and built-in port injectors" Find 45484332 -> Replace 45483032
Other information
  • I have only SSDT-UIAC-Z370N.aml in CLOVER/ACPI/patched.
  • I had to enable FixOwnership in Clover under Devices/Usb (I kept trying different combos without it without success)
  • Ejecting USB-C and reinserting does not work (only recognizes device at boot time)
  • My clover config mysteriously started working when I checked everything out of frustration for 1 boot, then unchecked everything. I wonder what Clover.app wrote to my config file that made a difference. Perhaps this happens sometimes with Clover updates.
 
Last edited:
Do you have any particular DSDT fixes on your system?
No.

I removed these two (not sure if that was a good idea, but I could not find these things in my native DSDT Clover export anyway):
  • "change EHC1 to EH01, avoid collisions between USB-Inject-All.kext and built-in port injectors" Find 45484331 -> Replace 45483031
  • "change EHC2 to EH02, avoid collisions between USB-Inject-All.kext and built-in port injectors" Find 45484332 -> Replace 45483032
  • I think you do not need those changes for 100+ motherboards; I don't have either of them. FWIW, I have attached my config.plist for your perusal. I recently changed my SMBIOS from iMac 14,2 to iMac 18,3 via Multibeast, and it has resulted in much faster copying (6 GB from optical drive to USB external hard drive in 8 minutes).
 

Attachments

  • config.plist.zip
    2.3 KB · Views: 65
No.

  • I think you do not need those changes for 100+ motherboards; I don't have either of them. FWIW, I have attached my config.plist for your perusal. I recently changed my SMBIOS from iMac 14,2 to iMac 18,3 via Multibeast, and it has resulted in much faster copying (6 GB from optical drive to USB external hard drive in 8 minutes).
Great! You have some interesting stuff going on with your audio device. Mine works, but all I did was inject 11 under Devices/Audio. I am also surprised that you do not have Devices/USB/FixOwnership enabled. I seem to need that, but I don't need any inject options enabled in Clover for USB. USB-Inject-All + SSDT.

About the Mac version. I've tried 18.3, but imac17.1 works best for Coffee Lake Intel i3 8100 processors, because 18.3 causes video distortions. However, I am not sure about the read/write access speeds of devices.

For posterity:
IntelGFX: 59168086
CPU Type: 0x0905 (not sure whether this is correct)
 
Last edited:
If it helps, here is my SSDT which documents the ports on the z370m and you can see that I disabled the two ports under the Ethernet, the two usb2 front panel header ports, and the (possible) super speed half of the m.2 usb. That brings the count to 15 and has the two front panel USB3, the block of 4 usb3 on the rear, and the usb-c port fully working.
 

Attachments

  • SSDT-UIAC-ALL.dsl
    7.3 KB · Views: 90
If it helps, here is my SSDT which documents the ports on the z370m and you can see that I disabled the two ports under the Ethernet, the two usb2 front panel header ports, and the (possible) super speed half of the m.2 usb. That brings the count to 15 and has the two front panel USB3, the block of 4 usb3 on the rear, and the usb-c port fully working.
Kinda like mine, but I think your "port count" should be 19, not 26. It is supposed to be the highest port number you have activated.
 
Kinda like mine, but I think your "port count" should be 19, not 26. It is supposed to be the highest port number you have activated.

I'm fairly sure that's a myth. There's nothing about changing that value in rehabman's guide, and also I don't think it makes sense from a technical perspective.

See this post and this post
 
slippyr4,
The values for "port-count" in SSDT-UIAC-ALL.dsl are already correct for each device-id.
Yes, those values are correct in SSDT-UIAC-ALL.dsl, but not necessarily correct for your .dsl file. It is ambiguous, but you may be right. I do know that if the port count is set below the actual port count in my SSDT, the thing just won't work, but higher port counts seem to be accepted.
In your second link,
Because you set it to 0x10, any ports with "port" addresses larger than 0x10 will be ignored. As per guide, you should NOT change port-count. The port-count is already correct in SSDT-UIAC-ALL.dsl.
Again, no argument that the port-count in the SSDT-UIAC-ALL.dsl file is correct, but if you will note, it is set to the correct port-count for that all-inclusive file. As you reduce the number of ports to get inside the 15-port limit, lower port-counts in your SSDT may be appropriate. Again, RehabMan is the expert. If, knowing his document's port-count will always exceed yours, he advises not to reduce it in your document, that's your choice.
 
slippyr4,
Yes, those values are correct in SSDT-UIAC-ALL.dsl, but not necessarily correct for your .dsl file.

The port-count in SSDT-UIAC-ALL.dsl is always correct.

I do know that if the port count is set below the actual port count in my SSDT, the thing just won't work,

It is because "port-count" is not a "port count" at all (it is poorly named).
It is actually the max port address.
But leaving it at the max port address for the given controller seems best and always works.

As you reduce the number of ports to get inside the 15-port limit, lower port-counts in your SSDT may be appropriate.

No. Easier just to leave it alone, and allows the extra ports to be powered down.
 
Status
Not open for further replies.
Back
Top