You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
377 lines
14 KiB
377 lines
14 KiB
/*
|
|
* Intel ACPI Component Architecture
|
|
* AML/ASL+ Disassembler version 20220331 (64-bit version)
|
|
* Copyright (c) 2000 - 2022 Intel Corporation
|
|
*
|
|
* Disassembling to symbolic ASL+ operators
|
|
*
|
|
* Disassembly of ssdt7.dat, Thu Sep 1 23:24:17 2022
|
|
*
|
|
* Original Table Header:
|
|
* Signature "SSDT"
|
|
* Length 0x00000E6E (3694)
|
|
* Revision 0x01
|
|
* Checksum 0x78
|
|
* OEM ID "LENOVO"
|
|
* OEM Table ID "CB-01 "
|
|
* OEM Revision 0x00000001 (1)
|
|
* Compiler ID "ACPI"
|
|
* Compiler Version 0x00040000 (262144)
|
|
*/
|
|
DefinitionBlock ("", "SSDT", 1, "LENOVO", "CB-01 ", 0x00000001)
|
|
{
|
|
External (_SB_.ADP0, DeviceObj)
|
|
External (_SB_.GPIO, DeviceObj)
|
|
External (_SB_.LID0, DeviceObj)
|
|
External (_SB_.PCI0.GP17.ACP_, DeviceObj)
|
|
External (_SB_.PCI0.GP17.AZAL, DeviceObj)
|
|
External (_SB_.PCI0.GP17.MP2C, DeviceObj)
|
|
External (_SB_.PCI0.GP17.XHC0, DeviceObj)
|
|
External (_SB_.PCI0.GP17.XHC1, DeviceObj)
|
|
External (_SB_.PCI0.GPP0, DeviceObj)
|
|
External (_SB_.PCI0.GPP1, DeviceObj)
|
|
External (_SB_.PCI0.GPP2, DeviceObj)
|
|
External (_SB_.PCI0.GPP3, DeviceObj)
|
|
External (_SB_.PCI0.GPP4, DeviceObj)
|
|
External (_SB_.PCI0.GPP5, DeviceObj)
|
|
External (_SB_.PCI0.GPP6, DeviceObj)
|
|
External (_SB_.PCI0.GPP7, UnknownObj)
|
|
External (_SB_.PCI0.GPP7.WLAN, DeviceObj)
|
|
External (_SB_.PCI0.LPC0.EC0_, DeviceObj)
|
|
External (_SB_.PCI0.LPC0.EC0_.ADPT, IntObj)
|
|
External (_SB_.PCI0.LPC0.EC0_.BAT0, DeviceObj)
|
|
External (_SB_.PCI0.LPC0.EC0_.HWAK, IntObj)
|
|
External (_SB_.PCI0.LPC0.EC0_.OKEC, IntObj)
|
|
External (_SB_.PCI0.LPC0.EC0_.Z009, MutexObj)
|
|
External (_SB_.PWRB, DeviceObj)
|
|
External (M000, MethodObj) // 1 Arguments
|
|
External (M037, DeviceObj)
|
|
External (M046, IntObj)
|
|
External (M050, DeviceObj)
|
|
External (M051, DeviceObj)
|
|
External (M052, DeviceObj)
|
|
External (M053, DeviceObj)
|
|
External (M054, DeviceObj)
|
|
External (M055, DeviceObj)
|
|
External (M056, DeviceObj)
|
|
External (M057, DeviceObj)
|
|
External (M058, DeviceObj)
|
|
External (M059, DeviceObj)
|
|
External (M062, DeviceObj)
|
|
External (M068, DeviceObj)
|
|
External (M069, DeviceObj)
|
|
External (M070, DeviceObj)
|
|
External (M071, DeviceObj)
|
|
External (M072, DeviceObj)
|
|
External (M074, DeviceObj)
|
|
External (M075, DeviceObj)
|
|
External (M076, DeviceObj)
|
|
External (M077, DeviceObj)
|
|
External (M078, DeviceObj)
|
|
External (M079, DeviceObj)
|
|
External (M080, DeviceObj)
|
|
External (M081, DeviceObj)
|
|
External (M082, FieldUnitObj)
|
|
External (M083, FieldUnitObj)
|
|
External (M084, FieldUnitObj)
|
|
External (M085, FieldUnitObj)
|
|
External (M086, FieldUnitObj)
|
|
External (M087, FieldUnitObj)
|
|
External (M088, FieldUnitObj)
|
|
External (M089, FieldUnitObj)
|
|
External (M090, FieldUnitObj)
|
|
External (M091, FieldUnitObj)
|
|
External (M092, FieldUnitObj)
|
|
External (M093, FieldUnitObj)
|
|
External (M094, FieldUnitObj)
|
|
External (M095, FieldUnitObj)
|
|
External (M096, FieldUnitObj)
|
|
External (M097, FieldUnitObj)
|
|
External (M098, FieldUnitObj)
|
|
External (M099, FieldUnitObj)
|
|
External (M100, FieldUnitObj)
|
|
External (M101, FieldUnitObj)
|
|
External (M102, FieldUnitObj)
|
|
External (M103, FieldUnitObj)
|
|
External (M104, FieldUnitObj)
|
|
External (M105, FieldUnitObj)
|
|
External (M106, FieldUnitObj)
|
|
External (M107, FieldUnitObj)
|
|
External (M108, FieldUnitObj)
|
|
External (M109, FieldUnitObj)
|
|
External (M110, FieldUnitObj)
|
|
External (M115, BuffObj)
|
|
External (M116, BuffFieldObj)
|
|
External (M117, BuffFieldObj)
|
|
External (M118, BuffFieldObj)
|
|
External (M119, BuffFieldObj)
|
|
External (M120, BuffFieldObj)
|
|
External (M122, FieldUnitObj)
|
|
External (M127, DeviceObj)
|
|
External (M128, FieldUnitObj)
|
|
External (M131, FieldUnitObj)
|
|
External (M132, FieldUnitObj)
|
|
External (M133, FieldUnitObj)
|
|
External (M134, FieldUnitObj)
|
|
External (M135, FieldUnitObj)
|
|
External (M136, FieldUnitObj)
|
|
External (M220, FieldUnitObj)
|
|
External (M221, FieldUnitObj)
|
|
External (M226, FieldUnitObj)
|
|
External (M227, DeviceObj)
|
|
External (M229, FieldUnitObj)
|
|
External (M231, FieldUnitObj)
|
|
External (M233, FieldUnitObj)
|
|
External (M235, FieldUnitObj)
|
|
External (M23A, FieldUnitObj)
|
|
External (M251, FieldUnitObj)
|
|
External (M280, FieldUnitObj)
|
|
External (M290, FieldUnitObj)
|
|
External (M310, FieldUnitObj)
|
|
External (M31C, FieldUnitObj)
|
|
External (M320, FieldUnitObj)
|
|
External (M321, FieldUnitObj)
|
|
External (M322, FieldUnitObj)
|
|
External (M323, FieldUnitObj)
|
|
External (M324, FieldUnitObj)
|
|
External (M325, FieldUnitObj)
|
|
External (M326, FieldUnitObj)
|
|
External (M327, FieldUnitObj)
|
|
External (M328, FieldUnitObj)
|
|
External (M329, DeviceObj)
|
|
External (M32A, DeviceObj)
|
|
External (M32B, DeviceObj)
|
|
External (M330, DeviceObj)
|
|
External (M331, FieldUnitObj)
|
|
External (M378, FieldUnitObj)
|
|
External (M379, FieldUnitObj)
|
|
External (M380, FieldUnitObj)
|
|
External (M381, FieldUnitObj)
|
|
External (M382, FieldUnitObj)
|
|
External (M383, FieldUnitObj)
|
|
External (M384, FieldUnitObj)
|
|
External (M385, FieldUnitObj)
|
|
External (M386, FieldUnitObj)
|
|
External (M387, FieldUnitObj)
|
|
External (M388, FieldUnitObj)
|
|
External (M389, FieldUnitObj)
|
|
External (M390, FieldUnitObj)
|
|
External (M391, FieldUnitObj)
|
|
External (M392, FieldUnitObj)
|
|
External (M404, DeviceObj)
|
|
External (M414, FieldUnitObj)
|
|
External (M444, FieldUnitObj)
|
|
External (M449, FieldUnitObj)
|
|
External (M453, FieldUnitObj)
|
|
External (M454, FieldUnitObj)
|
|
External (M455, FieldUnitObj)
|
|
External (M456, FieldUnitObj)
|
|
External (M457, FieldUnitObj)
|
|
External (M460, MethodObj) // 7 Arguments
|
|
External (M4C0, FieldUnitObj)
|
|
External (M4F0, FieldUnitObj)
|
|
External (PWRS, IntObj)
|
|
|
|
Scope (\_SB.PCI0.LPC0.EC0)
|
|
{
|
|
OperationRegion (ECRM, EmbeddedControl, Zero, 0xFF)
|
|
Field (ECRM, ByteAcc, NoLock, Preserve)
|
|
{
|
|
Offset (0xCC),
|
|
PBCN, 8
|
|
}
|
|
}
|
|
|
|
Scope (\_SB.GPIO)
|
|
{
|
|
Method (_AEI, 0, NotSerialized) // _AEI: ACPI Event Interrupts
|
|
{
|
|
Name (BUF0, ResourceTemplate ()
|
|
{
|
|
GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullDefault, 0x1388,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x0000
|
|
}
|
|
GpioInt (Edge, ActiveHigh, ExclusiveAndWake, PullNone, 0x1388,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x002C
|
|
}
|
|
GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x003D
|
|
}
|
|
GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x003E
|
|
}
|
|
GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x003A
|
|
}
|
|
GpioInt (Level, ActiveHigh, ExclusiveAndWake, PullNone, 0x0000,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x003B
|
|
}
|
|
GpioInt (Edge, ActiveLow, ExclusiveAndWake, PullNone, 0x0000,
|
|
"\\_SB.GPIO", 0x00, ResourceConsumer, ,
|
|
)
|
|
{ // Pin list
|
|
0x0012
|
|
}
|
|
})
|
|
M460 (" OEM-ASL-\\_SB.GPIO._AEI\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Return (BUF0) /* \_SB_.GPIO._AEI.BUF0 */
|
|
}
|
|
|
|
Method (_EVT, 1, Serialized) // _EVT: Event
|
|
{
|
|
Name (HPDW, 0x55)
|
|
M460 (" OEM-ASL-\\_SB.GPIO._EVT-Start Case %d\n", ToInteger (Arg0), Zero, Zero, Zero, Zero, Zero)
|
|
Switch (ToInteger (Arg0))
|
|
{
|
|
Case (Zero)
|
|
{
|
|
M000 (0x3900)
|
|
M460 (" Notify (\\_SB.PWRB, 0x80)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Local0 = \_SB.PCI0.LPC0.EC0.HWAK /* External reference */
|
|
If (((Local0 & 0x04) == 0x04))
|
|
{
|
|
Local0 &= 0xFFFB
|
|
\_SB.PCI0.LPC0.EC0.HWAK = Local0
|
|
Notify (\_SB.LID0, 0x80) // Status Change
|
|
Sleep (0x01F4)
|
|
}
|
|
ElseIf (((Local0 & 0x20) == 0x20))
|
|
{
|
|
Local0 &= 0xFFDF
|
|
\_SB.PCI0.LPC0.EC0.HWAK = Local0
|
|
Notify (\_SB.LID0, 0x80) // Status Change
|
|
Sleep (0x01F4)
|
|
}
|
|
ElseIf (((Local0 & 0x50) == 0x50))
|
|
{
|
|
Local0 &= 0xFFAF
|
|
\_SB.PCI0.LPC0.EC0.HWAK = Local0
|
|
Sleep (0xC8)
|
|
If ((\_SB.PCI0.LPC0.EC0.ADPT == One))
|
|
{
|
|
PWRS = One
|
|
Notify (\_SB.ADP0, 0x80) // Status Change
|
|
Notify (\_SB.PCI0.LPC0.EC0.BAT0, 0x80) // Status Change
|
|
}
|
|
Else
|
|
{
|
|
PWRS = Zero
|
|
Notify (\_SB.ADP0, 0x80) // Status Change
|
|
Notify (\_SB.PCI0.LPC0.EC0.BAT0, 0x80) // Status Change
|
|
}
|
|
}
|
|
ElseIf (((Local0 & 0x80) == 0x80))
|
|
{
|
|
Local0 &= 0xFF7F
|
|
\_SB.PCI0.LPC0.EC0.HWAK = Local0
|
|
Notify (\_SB.PCI0.LPC0.EC0.BAT0, 0x80) // Status Change
|
|
}
|
|
Else
|
|
{
|
|
Local0 &= 0xFFEF
|
|
\_SB.PCI0.LPC0.EC0.HWAK = Local0
|
|
Notify (\_SB.PWRB, 0x80) // Status Change
|
|
}
|
|
}
|
|
Case (0x02)
|
|
{
|
|
M000 (0x3902)
|
|
M460 (" Notify (\\_SB.PCI0.GPP0, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP0, 0x02) // Device Wake
|
|
M460 (" Notify (\\_SB.PCI0.GPP1, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP1, 0x02) // Device Wake
|
|
M460 (" Notify (\\_SB.PCI0.GPP2, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP2, 0x02) // Device Wake
|
|
}
|
|
Case (0x03)
|
|
{
|
|
M000 (0x3902)
|
|
M460 (" Notify (\\_SB.PCI0.GPP7, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP7, 0x02) // Device Wake
|
|
}
|
|
Case (0x11)
|
|
{
|
|
M000 (0x3911)
|
|
M460 (" Notify (\\_SB.PCI0.GPP2, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP2, 0x02) // Device Wake
|
|
}
|
|
Case (0x12)
|
|
{
|
|
M000 (0x3912)
|
|
M460 (" Notify (\\_SB.PCI0.GPP6, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP7.WLAN, 0x02) // Device Wake
|
|
}
|
|
Case (0x18)
|
|
{
|
|
M000 (0x3918)
|
|
M460 (" Notify (\\_SB.PCI0.GPP5, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP5, 0x02) // Device Wake
|
|
}
|
|
Case (0x36)
|
|
{
|
|
M000 (0x3936)
|
|
M460 (" Notify (\\_SB.PCI0.GP17.MP2C, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GP17.MP2C, 0x02) // Device Wake
|
|
If ((HPDW == One))
|
|
{
|
|
M460 (" Notify (\\_SB.PCI0.GP17.MP2C(HPDW):PWRB 0x80)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PWRB, 0x80) // Status Change
|
|
}
|
|
}
|
|
Case (0x3A)
|
|
{
|
|
M000 (0x393A)
|
|
M460 (" Notify (\\_SB.PCI0.GP17.XHC0, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GP17.XHC0, 0x02) // Device Wake
|
|
}
|
|
Case (0x3B)
|
|
{
|
|
M000 (0x393B)
|
|
M460 (" Notify (\\_SB.PCI0.GP17.XHC1, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GP17.XHC1, 0x02) // Device Wake
|
|
}
|
|
Case (0x2A)
|
|
{
|
|
M000 (0x392A)
|
|
M460 (" Notify (\\_SB.PCI0.GPP7, 0x00)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GPP7, Zero) // Bus Check
|
|
}
|
|
Case (0x3D)
|
|
{
|
|
M000 (0x393D)
|
|
M460 (" Notify (\\_SB.PCI0.GP17.AZAL, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GP17.AZAL, 0x02) // Device Wake
|
|
}
|
|
Case (0x3E)
|
|
{
|
|
M000 (0x393D)
|
|
M460 (" Notify (\\_SB.PCI0.GP17.ACP, 0x02)\n", Zero, Zero, Zero, Zero, Zero, Zero)
|
|
Notify (\_SB.PCI0.GP17.ACP, 0x02) // Device Wake
|
|
}
|
|
|
|
}
|
|
|
|
M460 (" OEM-ASL-\\_SB.GPIO._EVT-End Case %d\n", ToInteger (Arg0), Zero, Zero, Zero, Zero, Zero)
|
|
}
|
|
}
|
|
}
|
|
|