/* * 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) } } }