Skip to content

Instantly share code, notes, and snippets.

@nickw444
Created January 31, 2022 11:49
Show Gist options
  • Select an option

  • Save nickw444/7e83355d9107aac9b778fe8ebb679cef to your computer and use it in GitHub Desktop.

Select an option

Save nickw444/7e83355d9107aac9b778fe8ebb679cef to your computer and use it in GitHub Desktop.
/*
* Intel ACPI Component Architecture
* AML/ASL+ Disassembler version 20200925 (64-bit version)
* Copyright (c) 2000 - 2020 Intel Corporation
*
* Disassembling to symbolic ASL+ operators
*
* Disassembly of iASLDaYalX.aml, Mon Jan 31 22:48:55 2022
*
* Original Table Header:
* Signature "SSDT"
* Length 0x00000621 (1569)
* Revision 0x02
* Checksum 0x53
* OEM ID "AddOn "
* OEM Table ID "HACK"
* OEM Revision 0x00000000 (0)
* Compiler ID "INTL"
* Compiler Version 0x20200925 (538970405)
*/
DefinitionBlock ("", "SSDT", 2, "AddOn ", "HACK", 0x00000000)
{
External (_SB_.MPTS, MethodObj) // 1 Arguments
External (_SB_.PC00, DeviceObj)
External (_SB_.PC00.LPCB, DeviceObj)
External (_SB_.PC00.LPCB.CWDT._STA, UnknownObj)
External (_SB_.PC00.LPCB.HPET._CRS, UnknownObj)
External (_SB_.PC00.LPCB.HPET._STA, UnknownObj)
External (_SB_.PC00.LPCB.IPIC._CRS, UnknownObj)
External (_SB_.PC00.LPCB.RTC_._CRS, UnknownObj)
External (_SB_.PC00.LPCB.SIO1.SIOS, MethodObj) // 1 Arguments
External (_SB_.PC00.LPCB.SPTS, MethodObj) // 1 Arguments
External (_SB_.PC00.LPCB.TIMR._CRS, UnknownObj)
External (_SB_.PC00.NPTS, MethodObj) // 1 Arguments
External (_SB_.PC00.SBUS, DeviceObj)
External (_SB_.PR00, ProcessorObj)
External (_SB_.TPM_.TPTS, MethodObj) // 1 Arguments
External (AM00, IntObj)
External (OSYS, IntObj)
External (RPTS, MethodObj) // 1 Arguments
External (STAS, IntObj)
External (ZPTS, MethodObj) // 1 Arguments
External (ZWAK, MethodObj) // 1 Arguments
Scope (\)
{
Method (OSDW, 0, NotSerialized)
{
If (_OSI ("Darwin"))
{
Return (One)
}
Else
{
Return (Zero)
}
}
}
Scope (\_SB)
{
If (OSDW ())
{
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
})
}
}
Scope (PC00)
{
Scope (LPCB)
{
Device (DMAC)
{
Name (_HID, EisaId ("PNP0200") /* PC-class DMA Controller */) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0000, // Range Minimum
0x0000, // Range Maximum
0x01, // Alignment
0x20, // Length
)
IO (Decode16,
0x0081, // Range Minimum
0x0081, // Range Maximum
0x01, // Alignment
0x11, // Length
)
IO (Decode16,
0x0093, // Range Minimum
0x0093, // Range Maximum
0x01, // Alignment
0x0D, // Length
)
IO (Decode16,
0x00C0, // Range Minimum
0x00C0, // Range Maximum
0x01, // Alignment
0x20, // Length
)
DMA (Compatibility, NotBusMaster, Transfer8_16, )
{4}
})
}
Device (EC)
{
Name (_HID, "EC000000") // _HID: Hardware ID
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If ((Arg2 == Zero))
{
Return (Buffer (One)
{
0x03 // .
})
}
Return (Package (0x02)
{
"acpi-wake-gpe",
0x6F
})
}
}
Device (FWHD)
{
Name (_HID, EisaId ("INT0800") /* Intel 82802 Firmware Hub Device */) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
Memory32Fixed (ReadOnly,
0xFF000000, // Address Base
0x01000000, // Address Length
)
})
}
}
Scope (SBUS)
{
Device (BUS0)
{
Name (_CID, "smbus") // _CID: Compatible ID
Name (_ADR, Zero) // _ADR: Address
Device (BLC0)
{
Name (_ADR, 0x57) // _ADR: Address
Name (_CID, "diagsvault") // _CID: Compatible ID
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If (!Arg2)
{
Return (Buffer (One)
{
0x57 // W
})
}
Return (Package (0x02)
{
"address",
0x57
})
}
}
}
}
Device (PMCR)
{
Name (_HID, EisaId ("APP9876")) // _HID: Hardware ID
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
Memory32Fixed (ReadWrite,
0xFE000000, // Address Base
0x00010000, // Address Length
)
})
}
Device (MCHC)
{
Name (_ADR, Zero) // _ADR: Address
}
Device (BLTH)
{
Name (_HID, EisaId ("BCM2E7C")) // _HID: Hardware ID
Name (_CID, "apple-uart-blth") // _CID: Compatible ID
Name (_UID, One) // _UID: Unique ID
Name (_ADR, Zero) // _ADR: Address
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
^^LPCB.HPET._CRS = AMW1 /* \_SB_.PC00.BLTH.AMW1 */
^^LPCB.RTC._CRS = AMW2 /* \_SB_.PC00.BLTH.AMW2 */
^^LPCB.TIMR._CRS = AMW3 /* \_SB_.PC00.BLTH.AMW3 */
^^LPCB.IPIC._CRS = AMW4 /* \_SB_.PC00.BLTH.AMW4 */
}
Name (AMW1, ResourceTemplate ()
{
IRQNoFlags ()
{0,8,11,15}
Memory32Fixed (ReadWrite,
0xFED00000, // Address Base
0x00000400, // Address Length
)
})
Name (AMW2, ResourceTemplate ()
{
IO (Decode16,
0x0070, // Range Minimum
0x0070, // Range Maximum
0x01, // Alignment
0x08, // Length
)
})
Name (AMW3, ResourceTemplate ()
{
IO (Decode16,
0x0040, // Range Minimum
0x0040, // Range Maximum
0x01, // Alignment
0x04, // Length
)
IO (Decode16,
0x0050, // Range Minimum
0x0050, // Range Maximum
0x10, // Alignment
0x04, // Length
)
})
Name (AMW4, ResourceTemplate ()
{
IO (Decode16,
0x0020, // Range Minimum
0x0020, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0024, // Range Minimum
0x0024, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0028, // Range Minimum
0x0028, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x002C, // Range Minimum
0x002C, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0030, // Range Minimum
0x0030, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0034, // Range Minimum
0x0034, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x0038, // Range Minimum
0x0038, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x003C, // Range Minimum
0x003C, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A0, // Range Minimum
0x00A0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A4, // Range Minimum
0x00A4, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00A8, // Range Minimum
0x00A8, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00AC, // Range Minimum
0x00AC, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00B0, // Range Minimum
0x00B0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00B4, // Range Minimum
0x00B4, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00B8, // Range Minimum
0x00B8, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x00BC, // Range Minimum
0x00BC, // Range Maximum
0x01, // Alignment
0x02, // Length
)
IO (Decode16,
0x04D0, // Range Minimum
0x04D0, // Range Maximum
0x01, // Alignment
0x02, // Length
)
})
}
}
Scope (PR00)
{
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If (!Arg2)
{
Return (Buffer (One)
{
0x03 // .
})
}
Return (Package (0x02)
{
"plugin-type",
One
})
}
}
Method (_INI, 0, NotSerialized) // _INI: Initialize
{
STAS = One
}
}
}
If (OSDW ())
{
Method (_PTS, 1, NotSerialized) // _PTS: Prepare To Sleep
{
If ((Arg0 != 0x05))
{
\_SB.MPTS (Arg0)
\_SB.TPM.TPTS (Arg0)
\_SB.PC00.NPTS (Arg0)
RPTS (Arg0)
\_SB.PC00.LPCB.SIO1.SIOS (Arg0)
\_SB.PC00.LPCB.SPTS (Arg0)
}
ZPTS (Arg0)
}
Method (_WAK, 1, NotSerialized) // _WAK: Wake
{
If (((Arg0 < One) || (Arg0 > 0x05)))
{
Arg0 = 0x03
}
Local0 = ZWAK (Arg0)
Return (Local0)
}
Method (_TTS, 1, NotSerialized) // _TTS: Transition To State
{
SLTP = Arg0
}
Name (SLTP, Zero)
Method (DTGP, 5, NotSerialized)
{
If ((Arg0 == ToUUID ("a0b5b7c6-1318-441c-b0c9-fe695eaf949b") /* Unknown UUID */))
{
If ((Arg1 == One))
{
If ((Arg2 == Zero))
{
Arg4 = Buffer (One)
{
0x03 // .
}
Return (One)
}
If ((Arg2 == One))
{
Return (One)
}
}
}
Arg4 = Buffer (One)
{
0x00 // .
}
Return (Zero)
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment