Scope (_SB.PCI0.LPCB)
{
Device (PS2K)
{
Name (_HID, EisaId ("ATK3001")) // _HID: Hardware ID
Name (_CID, EisaId ("PNP030B")) // _CID: Compatible ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((IOST & 0x0400))
{
Return (0x0F)
}
Else
{
Return (Zero)
}
}
Name (_CRS, ResourceTemplate () // _CRS: Current Resource Settings
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{1}
})
Name (_PRS, ResourceTemplate () // _PRS: Possible Resource Settings
{
StartDependentFn (0x00, 0x00)
{
IO (Decode16,
0x0060, // Range Minimum
0x0060, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IO (Decode16,
0x0064, // Range Minimum
0x0064, // Range Maximum
0x00, // Alignment
0x01, // Length
)
IRQNoFlags ()
{1}
}
EndDependentFn ()
})
}
}
If (CondRefOf (\_SB.PCI0.CNVW))
{
Scope (_SB.PCI0.CNVW)
{
Method (_PRW, 0, NotSerialized) // _PRW: Power Resources for Wake
{
Return (GPRW) /* External reference */
0x6D
0x04
}
Method (_DSW, 3, NotSerialized) // _DSW: Device Sleep Wake
{
}
}
}
Scope (_SB.PCI0.I2C1)
{
Device (ETPD)
{
Name (SBFB, ResourceTemplate ()
{
I2cSerialBusV2 (0x004C, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C1",
0x00, ResourceConsumer, _Y38, Exclusive,
)
})
Name (SBFI, ResourceTemplate ()
{
Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
{
0x0000005F,
}
})
CreateWordField (SBFB, \_SB.PCI0.I2C1.ETPD._Y38._ADR, BADR) // _ADR: Address
Name (_ADR, One) // _ADR: Address
Name (ETPH, Package (0x04)
{
"ELAN1200",
"ELAN1300",
"ELAN1406",
"ASUE1406"
})
Name (FTPH, Package (0x0C)
{
"FTE1001",
"FTE1200",
"FTE1200",
"FTE1300",
"FTE1300",
"FTE1201",
"FTE1200",
"FTE1200",
"FTE1201",
"FTE1201",
"FTE1200",
"FTE1200"
})
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
If ((TPDI & 0x04))
{
BADR = 0x15
Return (DerefOf (ETPH [TPHI]))
}
If ((TPDI & 0x10))
{
BADR = 0x15
Return (DerefOf (FTPH [TPHI]))
}
Return ("ELAN1000")
}
Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
Name (_UID, One) // _UID: Unique ID
Name (_S0W, 0x03) // _S0W: S0 Device Wake State
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
{
If ((Arg2 == Zero))
{
If ((Arg1 == One))
{
Return (Buffer (One)
{
0x03 // .
})
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
If ((Arg2 == One))
{
Return (One)
}
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If (((TPIF != One) || (DSYN && One)))
{
Return (Zero)
}
Return (0x0F)
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Return (ConcatenateResTemplate (SBFB, SBFI))
}
}
}
Scope (_SB.PCI0.I2C1)
{
Device (ALED)
{
Name (_ADR, One) // _ADR: Address
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return ("ALED0217")
}
Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
Name (_UID, One) // _UID: Unique ID
Name (_S0W, 0x03) // _S0W: S0 Device Wake State
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
{
If ((Arg2 == Zero))
{
If ((Arg1 == One))
{
Return (Buffer (One)
{
0x03 // .
})
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
If ((Arg2 == One))
{
Return (One)
}
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
Return (0x0F)
}
Method (_CRS, 0, Serialized) // _CRS: Current Resource Settings
{
Name (SBFI, ResourceTemplate ()
{
I2cSerialBusV2 (0x0029, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C1",
0x00, ResourceConsumer, , Exclusive,
)
Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
{
0x0000003F,
}
})
Return (SBFI) /* \_SB_.PCI0.I2C1.ALED._CRS.SBFI */
}
}
}
Scope (_SB.PCI0.I2C2)
{
Device (TPL0)
{
Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
Name (_UID, One) // _UID: Unique ID
Name (_S0W, 0x03) // _S0W: S0 Device Wake State
Name (SADR, Buffer (One)
{
0x10 // .
})
Name (HIDS, Package (0x01)
{
"ELAN9008"
})
Name (HIDA, Buffer (One)
{
0x01 // .
})
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return (DerefOf (HIDS [TPLI]))
}
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
{
If ((Arg2 == Zero))
{
If ((Arg1 == One))
{
Return (Buffer (One)
{
0x03 // .
})
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
If ((Arg2 == One))
{
Return (DerefOf (HIDA [TPLI]))
}
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((TPLP == Zero))
{
Return (Zero)
}
Return (0x0F)
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Name (SBFI, ResourceTemplate ()
{
I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C2",
0x00, ResourceConsumer, _Y39, Exclusive,
)
Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
{
0x0000001B,
}
})
CreateWordField (SBFI, \_SB.PCI0.I2C2.TPL0._CRS._Y39._ADR, ADR1) // _ADR: Address
ADR1 = DerefOf (SADR [TPLI])
Return (SBFI) /* \_SB_.PCI0.I2C2.TPL0._CRS.SBFI */
}
}
}
Scope (_SB.PCI0.I2C3)
{
Device (TPL1)
{
Name (_CID, "PNP0C50" /* HID Protocol Device (I2C bus) */) // _CID: Compatible ID
Name (_UID, One) // _UID: Unique ID
Name (_S0W, 0x03) // _S0W: S0 Device Wake State
Name (SADR, Buffer (One)
{
0x10 // .
})
Name (HIDS, Package (0x01)
{
"ELAN9009"
})
Name (HIDA, Buffer (One)
{
0x01 // .
})
Method (_HID, 0, NotSerialized) // _HID: Hardware ID
{
Return (DerefOf (HIDS [MTLI]))
}
Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method
{
If ((Arg0 == ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
{
If ((Arg2 == Zero))
{
If ((Arg1 == One))
{
Return (Buffer (One)
{
0x03 // .
})
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
If ((Arg2 == One))
{
Return (DerefOf (HIDA [MTLI]))
}
}
Else
{
Return (Buffer (One)
{
0x00 // .
})
}
}
Method (_STA, 0, NotSerialized) // _STA: Status
{
If ((MTLP == Zero))
{
Return (Zero)
}
Return (0x0F)
}
Method (_CRS, 0, NotSerialized) // _CRS: Current Resource Settings
{
Name (SBFI, ResourceTemplate ()
{
I2cSerialBusV2 (0x0010, ControllerInitiated, 0x00061A80,
AddressingMode7Bit, "\\_SB.PCI0.I2C3",
0x00, ResourceConsumer, _Y3A, Exclusive,
)
Interrupt (ResourceConsumer, Level, ActiveLow, Exclusive, ,, )
{
0x0000001C,
}
})
CreateWordField (SBFI, \_SB.PCI0.I2C3.TPL1._CRS._Y3A._ADR, ADR1) // _ADR: Address
ADR1 = DerefOf (SADR [MTLI])
Return (SBFI) /* \_SB_.PCI0.I2C3.TPL1._CRS.SBFI */
}
}
}