summaryrefslogtreecommitdiff
path: root/common/power_button.c
diff options
context:
space:
mode:
authorChromeOS Developer <dparker@chromium.org>2014-01-30 15:27:58 -0800
committerchrome-internal-fetch <chrome-internal-fetch@google.com>2014-02-01 02:48:01 +0000
commit6fe3172ac05a2b51422f1eaf99237e375184613f (patch)
tree6a1d6a765f9025959203a975770ea0ef0f0ab44a /common/power_button.c
parentc4383ca93f5d2aeb0c03e0b7ae623cf2d1b50ab0 (diff)
downloadchrome-ec-6fe3172ac05a2b51422f1eaf99237e375184613f.tar.gz
Config option for using power button with lid closedstabilize-5414.Bstabilize-5412.B
BUG=chrome-os-partner:24912 BRANCH=baytrail TEST=Manual. Enable CONFIG_POWER_BUTTON_IGNORE_LID on a device, boot it, and go into dock mode with external monitor attached. Fake-close the lid with a magnet or servo. Verify the power button still sends press/release events to the host with evtest. Change-Id: Idb05375eee0743a8a2c459070854c03fe3afe894 Signed-off-by: Dave Parker <dparker@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/184493 Reviewed-by: Randall Spangler <rspangler@chromium.org>
Diffstat (limited to 'common/power_button.c')
-rw-r--r--common/power_button.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/common/power_button.c b/common/power_button.c
index bbbe205ba6..ae20083c52 100644
--- a/common/power_button.c
+++ b/common/power_button.c
@@ -35,9 +35,15 @@ static int raw_power_button_pressed(void)
if (simulate_power_pressed)
return 1;
- /* Ignore power button if lid is closed */
+#ifndef CONFIG_POWER_BUTTON_IGNORE_LID
+ /*
+ * Always indicate power button released if the lid is closed.
+ * This prevents waking the system if the device is squashed enough to
+ * press the power button through the closed lid.
+ */
if (!lid_is_open())
return 0;
+#endif
return gpio_get_level(GPIO_POWER_BUTTON_L) ? 0 : 1;
}