summaryrefslogtreecommitdiff
path: root/src/mainboard/lenovo/x60/acpi/dock.asl
diff options
context:
space:
mode:
authorSven Schnelle <svens@stackframe.org>2011-04-11 19:43:32 +0000
committerSven Schnelle <svens@stackframe.org>2011-04-11 19:43:32 +0000
commitffcd1439f36ec27388139b9d5a379dd4294417b8 (patch)
treeb3694c7283ed4635497f4b7e6525684a5ffe7256 /src/mainboard/lenovo/x60/acpi/dock.asl
parent18b02360b9dba6ca61538923e27b5ba68a2b3299 (diff)
downloadcoreboot-ffcd1439f36ec27388139b9d5a379dd4294417b8.tar.xz
EC: Add Lenovo H8
Move the EC support code from the X60 mainboard to a generic driver, as this EC is used in many thinkpads. Also move the ACPI code to this directory for this reason. This patch also adds a chip config, so that the initial setting for basic register can be specified in devicetree.cb Signed-off-by: Sven Schnelle <svens@stackframe.org> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6485 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/mainboard/lenovo/x60/acpi/dock.asl')
-rw-r--r--src/mainboard/lenovo/x60/acpi/dock.asl56
1 files changed, 34 insertions, 22 deletions
diff --git a/src/mainboard/lenovo/x60/acpi/dock.asl b/src/mainboard/lenovo/x60/acpi/dock.asl
index db61e059a8..d393f44f32 100644
--- a/src/mainboard/lenovo/x60/acpi/dock.asl
+++ b/src/mainboard/lenovo/x60/acpi/dock.asl
@@ -21,35 +21,47 @@
#include "smi.h"
-OperationRegion (DLPC, SystemIO, 0x164c, 1)
-Field(DLPC, ByteAcc, NoLock, Preserve)
+Scope (\_SB)
{
- , 3,
- DSTA, 1,
-}
-Device(DOCK)
-{
- Name(_HID, "ACPI0003")
- Name(_UID, 0x00)
- Name(_PCL, Package() { \_SB } )
+ OperationRegion (DLPC, SystemIO, 0x164c, 1)
+ Field(DLPC, ByteAcc, NoLock, Preserve)
+ {
+ , 3,
+ DSTA, 1,
+ }
- Method(_DCK, 1, NotSerialized)
+ Device(DOCK)
{
- if (Arg0) {
- Sleep(250)
- /* connect dock */
- TRAP(SMI_DOCK_CONNECT)
- } else {
- /* disconnect dock */
- TRAP(SMI_DOCK_DISCONNECT)
+ Name(_HID, "ACPI0003")
+ Name(_UID, 0x00)
+ Name(_PCL, Package() { \_SB } )
+
+ Method(_DCK, 1, NotSerialized)
+ {
+ if (Arg0) {
+ Sleep(250)
+ /* connect dock */
+ TRAP(SMI_DOCK_CONNECT)
+ } else {
+ /* disconnect dock */
+ TRAP(SMI_DOCK_DISCONNECT)
+ }
+
+ Xor(Arg0, DSTA, Local0)
+ Return (Local0)
}
- Xor(Arg0, DSTA, Local0)
- Return (Local0)
+ Method(_STA, 0, NotSerialized)
+ {
+ Return (DSTA)
+ }
}
+}
- Method(_STA, 0, NotSerialized)
+Scope(\_SB.PCI0.LPCB.EC)
+{
+ Method(_Q18, 0, NotSerialized)
{
- Return (DSTA)
+ Notify(\_SB.DOCK, 3)
}
}