diff options
author | Stefan Reinauer <reinauer@chromium.org> | 2014-01-13 17:40:37 -0800 |
---|---|---|
committer | Patrick Georgi <patrick@georgi-clan.de> | 2014-07-12 20:16:58 +0200 |
commit | 9b43edf36c8fabb63a1239849e7d2dc07bf3f2fb (patch) | |
tree | 1e8d18973e8bef7a64573957a3cac8f1f01a1ea4 /src/mainboard | |
parent | a0819eb38d032bb0610ef024f97b5c15aea4d1b2 (diff) | |
download | coreboot-9b43edf36c8fabb63a1239849e7d2dc07bf3f2fb.tar.xz |
google/panther: Avoid shutdown when thermal sensor is unavailable
When the thermal sensor on Panther is unavailable (early on resume)
it will return 0x80 which causes our AML thermal code to overflow,
which causes the system to shut down. Instead, return a reasonable
value in those cases so that the system will continue running until
the sensor gets back on its feet.
BUG=chrome-os-partner:24918
BRANCH=panther
TEST=suspend_resume_test survived more than 100 iterations on Panther
Change-Id: Ib2d714c39d353ce2415361bc6590784a3f6837d2
Signed-off-by: Stefan Reinauer <reinauer@google.com>
Signed-off-by: Stefan Reinauer <reinauer@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/182369
Tested-by: Stefan Reinauer <reinauer@chromium.org>
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Commit-Queue: Stefan Reinauer <reinauer@chromium.org>
Reviewed-on: http://review.coreboot.org/6002
Tested-by: build bot (Jenkins)
Reviewed-by: Patrick Georgi <patrick@georgi-clan.de>
Diffstat (limited to 'src/mainboard')
-rw-r--r-- | src/mainboard/google/panther/acpi/thermal.asl | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/mainboard/google/panther/acpi/thermal.asl b/src/mainboard/google/panther/acpi/thermal.asl index a6ea851bb5..e0ea2f5a4a 100644 --- a/src/mainboard/google/panther/acpi/thermal.asl +++ b/src/mainboard/google/panther/acpi/thermal.asl @@ -66,6 +66,11 @@ Scope (\_TZ) // Get CPU Temperature from PECI via SuperIO TMPIN3 Store (\_SB.PCI0.LPCB.SIO.ENVC.TIN3, Local0) + // Check for "no reading available" + If (LEqual (Local0, 0x80)) { + Return (CTOK (\F2ON)) + } + // Check for invalid readings If (LOr (LEqual (Local0, 255), LEqual (Local0, 0))) { Return (CTOK (\F2ON)) |