mirror of
https://github.com/acidanthera/OpenCorePkg.git
synced 2025-12-08 19:25:01 +00:00
116 lines
3.1 KiB
Plaintext
116 lines
3.1 KiB
Plaintext
/*
|
|
* AppleUsbPower compatibility table for Skylake+.
|
|
*
|
|
* Be warned that power supply values can be different
|
|
* for different systems. Depending on the configuration
|
|
* these values must match injected IOKitPersonalities
|
|
* for com.apple.driver.AppleUSBMergeNub. iPad remains
|
|
* being the most reliable device for testing USB port
|
|
* charging support.
|
|
*
|
|
* Try NOT to rename EC0, H_EC, etc. to EC.
|
|
* These devices are incompatible with macOS and may break
|
|
* at any time. AppleACPIEC kext must NOT load on desktops.
|
|
* See the disable code below.
|
|
*
|
|
* While on some laptops, this kext is essential to access EC
|
|
* region for battery status etc. Please ignore EC related
|
|
* patches under the circumstance.
|
|
*
|
|
* Reference USB: https://applelife.ru/posts/550233
|
|
* Reference EC: https://applelife.ru/posts/807985
|
|
*/
|
|
DefinitionBlock ("", "SSDT", 2, "ACDT", "SsdtEC", 0x00001000)
|
|
{
|
|
External (_SB_.PCI0.LPCB, DeviceObj)
|
|
|
|
/*
|
|
* Uncomment replacing EC0 with your own value in case your
|
|
* motherboard has an existing embedded controller of PNP0C09 type.
|
|
*
|
|
* While renaming EC0 to EC might potentially work initially,
|
|
* it connects an incompatible driver (AppleACPIEC) to your hardware.
|
|
* This can make your system unbootable at any time or hide bugs that
|
|
* could trigger randomly.
|
|
*/
|
|
|
|
/**
|
|
External (_SB_.PCI0.LPCB.EC0, DeviceObj)
|
|
|
|
Scope (\_SB.PCI0.LPCB.EC0)
|
|
{
|
|
Method (_STA, 0, NotSerialized) // _STA: Status
|
|
{
|
|
If (_OSI ("Darwin"))
|
|
{
|
|
Return (0)
|
|
}
|
|
Else
|
|
{
|
|
Return (0x0F)
|
|
}
|
|
}
|
|
}
|
|
**/
|
|
|
|
Scope (\_SB)
|
|
{
|
|
Device (USBX)
|
|
{
|
|
Name (_ADR, Zero) // _ADR: Address
|
|
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
|
|
{
|
|
If ((Arg2 == Zero))
|
|
{
|
|
Return (Buffer (One)
|
|
{
|
|
0x03 // .
|
|
})
|
|
}
|
|
|
|
Return (Package (0x08)
|
|
{
|
|
"kUSBSleepPowerSupply",
|
|
0x13EC,
|
|
"kUSBSleepPortCurrentLimit",
|
|
0x0834,
|
|
"kUSBWakePowerSupply",
|
|
0x13EC,
|
|
"kUSBWakePortCurrentLimit",
|
|
0x0834
|
|
})
|
|
}
|
|
Method (_STA, 0, NotSerialized) // _STA: Status
|
|
{
|
|
If (_OSI ("Darwin"))
|
|
{
|
|
Return (0x0F)
|
|
}
|
|
Else
|
|
{
|
|
Return (Zero)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
Scope (\_SB.PCI0.LPCB)
|
|
{
|
|
Device (EC)
|
|
{
|
|
Name (_HID, "ACID0001") // _HID: Hardware ID
|
|
Method (_STA, 0, NotSerialized) // _STA: Status
|
|
{
|
|
If (_OSI ("Darwin"))
|
|
{
|
|
Return (0x0F)
|
|
}
|
|
Else
|
|
{
|
|
Return (Zero)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|