Jump to content
MaLd0n

[Guide] Native USB Fix for Desktops - No Injector/Kext Required - SkyLake+

Recommended Posts

  • Administrators

--About Credits for this method--

The source for the methods is the motherboard ACPI is not mald, geng, etc. Is just duplicated one OEM method(GUPC in this case), renamed(We need device name) and applyed connectors type(Credits is not for us. We just renamed and duplicated devices) . All credits for it is for Piker Alpha HERE and not for Italian peopleThis method of mapping has existed for many, many years and is not our credit.  

The resume is: We stole method GUPC from intel and apply the Piker way ofc.😆

 

-All credits to Piker-Alpha

Here

https://pikeralpha.wordpress.com/2016/07/13/simple-skylake-usb-fix-no-kexts-required

and here

https://pikeralpha.wordpress.com/2016/11/10/two-port-usb-3-1-gen-ii-pci-express-card/

 

1- Check OEM SSDT about USBs, in my case is SSDT-6-A M I.aml, i'm using a Z390 mobo

2- Create Methods into SSDT OEM inside Scope _SB.PCI0.XHC.RHUB, Internal and USB 2 is native, just create USB 3, USB-C

-In some cases some ports have a Method _STA = Zero, change to 0x0F to enable

We just need duplicate Methods (GUPC for example) native from our ACPI table and Inject values

Connector types in the ACPI specification(pages 524 and 525)

https://uefi.org/sites/default/files/resources/ACPI_6.0.pdf

bn23gUz.png

0xFF - internal - GUPC

Zero - USB 2 - TUPC

0x03 - USB 3 - MALD

0x09 - USB-C - MAL0 (Same HSxx/SSxx in both orientations, then it has an internal switch)

0x0A - USB-C - MAL1 (Different HSxx/SSxx in each orientation, then it has no switch)

 

-Example

GUPC and TUPC is a native Methods

gecujqH.png

 

Quote
Method (GUPC, 1, Serialized)

{

Name (PCKG, Package (0x04)

{

Zero,

0xFF,

Zero,

Zero

})

PCKG [Zero] = Arg0

Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.GUPC.PCKG */

}

 

Method (TUPC, 1, Serialized)

{

Name (PCKG, Package (0x04)

{

One,

Zero,

Zero,

Zero

})

PCKG [Zero] = Arg0

Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.TUPC.PCKG */

}

 

Method (MALD, 1, Serialized)

{

Name (PCKG, Package (0x04)

{

Zero,

0x03,

Zero,

Zero

})

PCKG [Zero] = Arg0

Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.MALD.PCKG */

}

 

Method (MAL0, 1, Serialized)

{

Name (PCKG, Package (0x04)

{

Zero,

0x09,

Zero,

Zero

})

PCKG [Zero] = Arg0

Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.MAL0.PCKG */

}

 

Method (MAL1, 1, Serialized)

{

Name (PCKG, Package (0x04)

{

Zero,

0x0A,

Zero,

Zero

})

PCKG [Zero] = Arg0

Return (PCKG) /* \_SB_.PCI0.XHC_.RHUB.MAL1.PCKG */

}

}

 

3- Enable or Disable USB ports

-Check example TUPC

Look at Method _UPC - USB Port Capabilities

Enable = One

Disable = Zero

Example

Quote
Scope (\_SB.PCI0.XHC.RHUB.HS01)

{

Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities

{

If ((H1TC == Zero))

{

If (((UMAP & One) == One))

{

Return (TUPC (One))

}

Else

{

Return (GUPC (Zero))

}

}

Else

{

Return (\_SB.UBTC.RUCC (H1CR, One))

}

}

 

If you need identify your USB ports like USB-C for example, change TUPC/GUPC to MAL0

 

Quote
Scope (\_SB.PCI0.XHC.RHUB.SS01)

{

Method (_UPC, 0, NotSerialized) // _UPC: USB Port Capabilities

{

If ((H1TC == Zero))

{

If (((UMAP & One) == One))

{

Return (MAL0 (One))

}

Else

{

Return (GUPC (Zero))

}

}

Else

{

Return (\_SB.UBTC.RUCC (H1CR, One))

}

}

 

0xFF - internal - GUPC

Zero - USB 2 - TUPC

0x03 - USB 3 - MALD

0x09 - USB-C - MAL0 (Same HSxx/SSxx in both orientations, then it has an internal switch)

0x0A - USB-C - MAL1 (Different HSxx/SSxx in each orientation, then it has no switch)

 

-USB 2 PORTS inside USB 3 BUS, just Inject USB 3

Kzzu4cQ.png

-My SSDT with edits

SSDT-6-A M I.aml.zip

-Use a Diff Merge to compare files

-Original

ORIGINAL.txt.zip

-Edited

EDITED.txt.zip

-Download Diff Merge

https://sourcegear.com/diffmerge/downloads.php#

 

5BB76VB.png

 

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

Excellent guide [ref]MaLd0n[/ref], awesome!!


Bit by bit we will understanding more about ACPI patching, thank you.


But one doubt, I need to keep the USB Injection at Clover? E.g: Devices > USB > Inject/FixOwnership/HighCurrent


Thanks

Thanks & Regards

IdeaPad Gaming 3i  Aspire A515-52 • Clover / OpenCore
We are in a great Forum, so, let's have some fun and learn from each other!

btn_donate_SM.gif

Link to comment
Share on other sites

  • Administrators

[ref]Allan[/ref], u can use it in clover without problem

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]mathewgx[/ref], check if work

SSDT-2-xh_OEMBD.aml.zip

the image have all ur real ports?

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]mathewgx[/ref], ;)

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]vinpo[/ref], all

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]piyushrawal[/ref], dont need usbinjectall and XHCI-unsupported.kext


use ssdt with usb patch limit and u don't need more

SSDT-xh.aml.zip

https://Olarila.com/forum/viewtopic.php?f=62&t=6539


if u need change connectors, check inside all _upc and change


0xFF - internal - GUPC

Zero - USB 2 - TUPC

0x03 - USB 3 - MALD

0x09 - USB-C - MAL0

0x0A - USB-C - MAL1


btw, SSDT-xh is a native name or u renamed it? use a native name and clover replace a correct table, i never test with rename

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

[ref]piyushrawal[/ref], dont need usbinjectall and XHCI-unsupported.kext


use ssdt with usb patch limit and u don't need more

SSDT-xh.aml.zip

https://Olarila.com/forum/viewtopic.php?f=62&t=6539


if u need change connectors, check inside all _upc and change


0xFF - internal - GUPC

Zero - USB 2 - TUPC

0x03 - USB 3 - MALD

0x09 - USB-C - MAL0

0x0A - USB-C - MAL1


btw, SSDT-xh is a native name or u renamed it? use a native name and clover replace a correct table, i never test with rename

 

It's working with limit patch. But I am unable to disable USB ports to get it under 15 limit by setting Return (MALD (One)) to Return (MALD (Zero)). It has no effect.

And yes, renaming was a bad idea. It doesn't work if renamed.

Link to comment
Share on other sites

  • Administrators

[ref]piyushrawal[/ref], remove ssdt uiac

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]piyushrawal[/ref], replace full EFI, reboot and extract new send_me, don't change nothing

EFI.zip

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]piyushrawal[/ref], run my app for full dump

--Run_Me

RunMe.app

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]piyushrawal[/ref], DSDT.aml.zip

now, just change One to Zero if u need disable

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

  • Administrators

[ref]piyushrawal[/ref], use both files ssdt and dsdt, only it with my EFI folder

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

For laptops (at least for my skylake laptop), it is also worth to know that native _UPC or _PLD is within DSDT itself. Similarly, like how Maldon had described all we need to do is replace zero to one and define usb type in the scope of UUPC and UPLD as per my example.


Hope this helps for some of us.


https://imgur.com/TY6U1wM

Donate

Gitter Chat


Acer Aspire V15 Nitro- Black Edition VN7-592G/HM170 Chipset

Intel i7-6700HQ, 8GB RAM (UEFI Clover Catalina)


MSI B360 Gaming Arctic

Intel i5-8600 16GB RAM Asus Radeon RX580 8GB (UEFI Clover Catalina)

Link to comment
Share on other sites

  • Administrators

_UPC or _PLD is within DSDT

:guitar

-Donations-

PayPal HERE - Stripe HERE - Ko-Fi HERE - BuyMeaCoffee HERE - Mercado Livre HERE

Skrill danielnmaldonado@gmail.com - BTC 33HeGCuCSh4tUBqdYkQqKpSDa1E7WeAJQ3 - BNB 0x10D1d656eCa00bD521f9b4A43B83098B8142e115 - USDT BSC BEP20 0xb57cfdfa371fad1981910f0e8332409ab99f74d9 - USDT TRC20 TUR6Z9AVS4AYzqPnULoHrfFvppRbhXmNbZ - KASPA kaspa:qpxzufgfj8p6r0krg58yzvs0009h2mwqgvcawa0xc2pth7sgzpv56j4f6dtvk - PicPay @danielnmaldonado - PiX @danielnmaldonado@gmail.com

Premium Users HERE - Problems with Paypal HERE

xcd5u2Y.png

Sign up for a Bybit account and claim exclusive rewards HERE

New ways to earn money with Linkvertise HERE

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.





×
  • Create New...