• [DEPRECATED] Native USB support [Ryzen CPUs only]

  • Tutorials for the installation and post install.

Please remember to read and follow the rules here.

Please Donate or visit my Amazon Wishlist if you've found the website useful. Thanks.

Tutorials for the installation and post install.
#41175 by AlGrey
Mon Jun 11, 2018 10:42 pm
DEPRECATED : use this instead. viewtopic.php?f=24&t=4986&p=42056#p42056

This guide will help you get native usb support for all USB ports on Ryzen motherboards and replaces the old method (modded GenericUSBXHCI.kext in /EFI/CLOVER/kexts/* viewtopic.php?f=24&t=3587&p=36836#p36836). This will fix your issues with DACs/webcams/mics/BT dongles.

MAKE SURE THAT YOU HAVE A WORKING CLOVER ON YOUR USB DRIVE (usb installer you used to install macOS) AS THIS TUTORIAL CAN FAIL. BOOTING WITH THE CLOVER ON THE USB WILL MAKE THE USB PORTS WORK AGAIN (GenericUSBXHCI.kext is in /EFI/CLOVER/Kexts/**).

1. Delete GenericUSBXHCI.kext, DummyUSBEHCIPCI.kext and DummyUSBXHCIPCI.kext from:
a. EFI/CLOVER/kexts/10.xx or Other (xx is your MacOs version) NOTE : use Clover Configurator (Google it) to MOUNT your EFI folder.
b. System/Library/Extensions/
c. Library/Extensions/

2. Download the tools
Code: Select all
https://nofile.io/f/Eg6wg8tQOgC/debugtools.zip
3. Open Kext Wizard (right click ->open).
Check Repair permissions and Rebuild cache and hit Execute.

4. Open DPCIManager (right click ->open).
Click on Extract DSDT. Save the file.

5. Open the DSDT.aml file you just saved with MaciASL (right click ->open with).

6. Use COMMAND + F and search for "Device (PTXH)"
Should look like this :
Code: Select all
...
                Device (PTXH)
                {
                    Name (_ADR, Zero)  // _ADR: Address
                    Method (_PRW, 0, NotSerialized)  // _PRW: Power Resources for Wake
                    {
                        Return (GPRW (0x19, 0x04))
                    }

                    Device (RHUB)
                    {
                        Name (_ADR, Zero)  // _ADR: Address
.....
Under that block, look for the device with Name (_ADR, One) // _ADR: Address
Should be POT1. Delete that device.
Code: Select all
                        Device (POT1)
                        {
                            Name (_ADR, One)  // _ADR: Address
                            Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
                            {
                                0xFF, 
                                0x03, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
                            {
                                Buffer (0x14)
                                {
                                    /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                                    /* 0008 */  0x19, 0x0C, 0x80, 0x00, 0x01, 0x00, 0x00, 0x00,
                                    /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                         
                                }
                            })
                        }


Do the same with device with Name (_ADR, 0x02) // _ADR: Address
Should be POT2. Delete the device.
Code: Select all
           
                        Device (POT2)
                        {
                            Name (_ADR, 0x02)  // _ADR: Address
                            Name (_UPC, Package (0x04)  // _UPC: USB Port Capabilities
                            {
                                0xFF, 
                                0x03, 
                                Zero, 
                                Zero
                            })
                            Name (_PLD, Package (0x01)  // _PLD: Physical Location of Device
                            {
                                Buffer (0x14)
                                {
                                    /* 0000 */  0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
                                    /* 0008 */  0x99, 0x0C, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00,
                                    /* 0010 */  0xFF, 0xFF, 0xFF, 0xFF                         
                                }
                            })
                        }

Save the edits for that DSDT.aml.

7. Copy the DSDT.aml file to /EFI/CLOVER/ACPI/patched

8. Reboot your PC. Enjoy



Credit to Rio2 for that fix.
Code: Select all
https://www.insanelymac.com/forum/topic/334203-ssdt-high-sierra-native-usb-on-ryzen-without-genericusbxhci-or-injector-kexts/?tab=comments#comment-2615950
RagingDemon, SangieWolf liked this

This topic has 43 replies
You must be a registered member and logged in to view the replies in this topic.

 Advertising