Contribute
Register

A Beginner's Guide to Creating a Custom USB SSDT

When you wrote "FakePCIID_XHCIMux.kext" it rang a bell. I have had this, and maybe another kext in my kext folder, for a long time. Which kext(s) are causing the issue that you can see? I think at one point I needed this kext for my system. Please take a look and let me know. Thank you very much!
 

Attachments

  • rmmcwh’s Mac Pro (5).ioreg
    6.6 MB · Views: 92
  • Screen Shot 2020-03-19 at 4.45.19 PM.png
    Screen Shot 2020-03-19 at 4.45.19 PM.png
    141.2 KB · Views: 70
  • Screen Shot 2020-03-19 at 4.45.36 PM.png
    Screen Shot 2020-03-19 at 4.45.36 PM.png
    132.6 KB · Views: 78
When you wrote "FakePCIID_XHCIMux.kext" it rang a bell. I have had this, and maybe another kext in my kext folder, for a long time. Which kext(s) are causing the issue that you can see? I think at one point I needed this kext for my system. Please take a look and let me know. Thank you very much!


Thanks for uploading :thumbup:

Right well I have some ideas now:

1) Yes, remove FakePCIID_XHCIMux.kext and then reboot.

2) The DSDT.aml you have in EFI/CLOVER/ACPI/patched. I am not sure where that came from - it might be something vital for the X58 I know nothing about. It will be overriding the motherboard's built-in ACPI with a load of patches. Unless you know what it is there for, it might be interesting to try booting without it for testing purposes:

At the Clover boot menu, move the selector down to the bottom row of icons, choose "Options" the 3rd icon along. Then select 'ACPI Patching"; then "Table Dropping". Scroll down this list until you find DSDT.aml and select it with the Spacebar. That way it will be temporarily stopped from the boot process.

Once all done then select Return, Return to get back to where you started.

Reboot and hopefully things will have changed in IORegistryExplorer.

3) You need the latest versions of Lilu.kext, Whatevergreen.kext and AppleALC.kext.

:)
 
Last edited:
Thank you very much. Will be trying this. Thank you! The DSDT, might be needed, or can clover provide the DSDT patches for the X58? I thought DSDT was needed for mobo's function?
 
Thank you very much. Will be trying this. Thank you! The DSDT, might be needed, or can clover provide the DSDT patches for the X58? I thought DSDT was needed for mobo's function?

Let us see.

Most modern builds do not need this, except perhaps some laptops. But, as I say, I am not sure. This is just a test to see if this is what might be causing the problems. If it is needed, then fair enough :thumbup:

(EDIT: I amended my post to make it clearer).
 
I have turned off my dsdt.aml (there was no choice to block it, just a choise between dsdt.aml and a non existent one BIOS.aml - I chose BIOS since it did not exist). I lost 2 of my internal Hitachi hard drives, not sure why since just a Sata drive. Booted back and decided to try removing any DSDT patches and ACPI patches (Change name ones) since I had warnings about already being patched in the boot log. Now I have duplicate ports, which if I remove will disable things. Any where to go from here? And again thank you very much.
 

Attachments

  • untitled folder.zip
    1.5 MB · Views: 74
I have turned off my dsdt.aml (there was no choice to block it, just a choise between dsdt.aml and a non existent one BIOS.aml - I chose BIOS since it did not exist). I lost 2 of my internal Hitachi hard drives, not sure why since just a Sata drive. Booted back and decided to try removing any DSDT patches and ACPI patches (Change name ones) since I had warnings about already being patched in the boot log. Now I have duplicate ports, which if I remove will disable things. Any where to go from here? And again thank you very much.


Hi there.

Well the IOReg looks okay. USB ports too, though I notice in your config.plist you have disabled the EHC1 and EHC2 renames, but they should be Enabled so you have EH01 and EH02 etc. I'm concerned you have the SSDT-UIAC.aml and the USBPorts.kext in service at the same time?

I am not sure what you meant by having to use BIOS.aml ... I was suggesting temporarily removing the DSDT.aml from the EFI/CLOVER/ACPI/patched folder because I wondered if the latest Clover build versions had overcome these issues and the need for a separate DSDT.aml file. Obviously you would need to double-check you are using the correct version of the DSDT file that matches your BIOS version number - 1.0 F7 to 2.0 FA etc. However if you did that and the SATA drives disappeared then, ok, my apologies. :thumbup:

The original problem was of Bluetooth not working. Now though, I can see that it is active on UHC3 (although that doesn't show on your screengrab, it is in IOReg). So is it working now?

:)
 
Yeah I was trying to see if disabling those do work. Will re-enable. I am using the latest DSDT. Bluetooth works when I use the DSDT with disabled patches. I am going to try to completely remove the DSDT and see what happens. Not sure why the 2 Hitachi hard drives disappear. Also, as you can see I have duplicate? ports, if I remove any of the white (inactive) ports some of my other ports refuse (bluetooth port) to work.
I might also make a new Clover build on another flash drive and test that.
Thank you for your guidance, I have been dealing with this for awhile.
 

Attachments

  • Screen Shot 2020-03-23 at 11.51.41 AM.png
    Screen Shot 2020-03-23 at 11.51.41 AM.png
    402.6 KB · Views: 64
Yeah I was trying to see if disabling those do work. Will re-enable. I am using the latest DSDT. Bluetooth works when I use the DSDT with disabled patches. I am going to try to completely remove the DSDT and see what happens. Not sure why the 2 Hitachi hard drives disappear. Also, as you can see I have duplicate? ports, if I remove any of the white (inactive) ports some of my other ports refuse (bluetooth port) to work.
I might also make a new Clover build on another flash drive and test that.
Thank you for your guidance, I have been dealing with this for awhile.


Yes, some USB ports of a lower speed are attached to those high-speed ports not provided by Intel, so they are a bridge and can break when one half is disabled.

Remember although we see both EHC controllers plus the old UHC, macOS only wants to see 15 no matter what we have available. You probably need to identify the add-on ports and their 'partners' to isolate the remaining, stable ports.

:)
 
I tried and went the route you listed in the first post. Still no go. No matter what I try, it seems the USBports.kext nor the USBInjectall.kext is being injected. I have the coorect ports listed in the plist file, but when I boot it lists ports that should not exist nor are in the plist. Where can I lokk to find where the port info is actually being pulled from?
 
Back
Top