[coreboot] New patch to review: 5d1306f T60: undock on external power loss

Sven Schnelle (svens@stackframe.org) gerrit at coreboot.org
Thu Jun 23 13:47:44 CEST 2011


Sven Schnelle (svens at stackframe.org) just uploaded a new patch set to gerrit, which you can find at
http://review.coreboot.org/62

-gerrit

commit 5d1306f891ee5932e5526c736d888f272fe700be
Author: Sven Schnelle <svens at stackframe.org>
Date:   Thu Jun 23 13:43:52 2011 +0200

    T60: undock on external power loss
    
    If power is unplugged/lost, we should undock the docking station.
    The power loss can also be caused by the fact that the user removed
    the thinkpad from the docking station without pressing the Undock button/hotkey
    first. Without undocking it on this event, the thinkpad LPC switch will still
    connect the Docking connector, which causes crashes when docking it again.
    
    Change-Id: I9ed783e491827bde20264868eab2b3a79c232922
    Signed-off-by: Sven Schnelle <svens at stackframe.org>
---
 src/ec/lenovo/h8/acpi/ec.asl           |    3 +++
 src/mainboard/lenovo/t60/acpi/dock.asl |    7 +++++++
 2 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/src/ec/lenovo/h8/acpi/ec.asl b/src/ec/lenovo/h8/acpi/ec.asl
index 3ba4aa9..368afa8 100644
--- a/src/ec/lenovo/h8/acpi/ec.asl
+++ b/src/ec/lenovo/h8/acpi/ec.asl
@@ -35,6 +35,8 @@ Device(EC)
 				HSPA, 1,
 		Offset (0x0C),
 				LEDS, 8,	/* LED state */
+		Offset (0x2a),
+				EVNT, 8,	/* write will trigger EC event */
 		Offset (0x3a),
 				AMUT, 1,	/* Audio Mute */
 		Offset (0x3B),
@@ -109,6 +111,7 @@ Device(EC)
 	Method(_Q27, 0, NotSerialized)
 	{
 		Notify (AC, 0x80)
+		Store(0x50, EVNT)
 	}
 
        Method(_Q2A, 0, NotSerialized)
diff --git a/src/mainboard/lenovo/t60/acpi/dock.asl b/src/mainboard/lenovo/t60/acpi/dock.asl
index ae9d19e..ba50609 100644
--- a/src/mainboard/lenovo/t60/acpi/dock.asl
+++ b/src/mainboard/lenovo/t60/acpi/dock.asl
@@ -88,4 +88,11 @@ Scope(\_SB.PCI0.LPCB.EC)
 			Notify(\_SB.DOCK, 3)
 		}
 	}
+
+	Method(_Q50, 0, NotSerialized)
+	{
+		if (\_SB.DOCK._STA()) {
+			Notify(\_SB.DOCK, 1)
+		}
+	}
 }




More information about the coreboot mailing list