Sven Schnelle (svens@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@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@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) + } + } }