/* Powers down the USB controller which is needed for proper shutdown. * When done incorrectly, macOS will not power down USB as it needs an * explicit call for S5 for proper shotdown procedure. * Do note this SSDT requires an ACPI hot patch for _PTS to ZPTS as * we're rerouting the old calls. * Source for SSDT: Rehabman */ DefinitionBlock ("", "SSDT", 2, "Slav", "ZPTS", 0x00000000) { External (_SB_.PCI0.GP13.XHC0, FieldUnitObj) External (_SB_.PCI0.BXBR.BYUP.BYD8.XHC1, FieldUnitObj) External (_SB_.PCI0.BXBR.BYUP.BYD8.XHC0, FieldUnitObj) External (ZPTS, MethodObj) // 1 Arguments Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep { ZPTS (Arg0) If ((0x05 == Arg0)) { \_SB.PCI0.GP13.XHC0 = Zero \_SB.PCI0.BXBR.BYUP.BYD8.XHC1 = Zero \_SB.PCI0.BXBR.BYUP.BYD8.XHC0 = Zero } } }