From: Daniel Drake Date: Fri, 16 Dec 2011 04:49:28 +0000 (+1100) Subject: x86-olpc-xo15-sci-enable-lid-close-wakeup-control-through-sysfs-v2 X-Git-Tag: next-20111219~1^2~237 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=f065f5591e9806ba6812d96541388a1d71bc5cc5;p=karo-tx-linux.git x86-olpc-xo15-sci-enable-lid-close-wakeup-control-through-sysfs-v2 v2: Fix sscanf usage error and add an explanatory comment in the code, both pointed out by Andrew Morton. Thanks! Signed-off-by: Daniel Drake Cc: Andres Salomon Cc: Matthew Garrett Cc: Ingo Molnar Cc: Thomas Gleixner Cc: "H. Peter Anvin" Signed-off-by: Andrew Morton --- diff --git a/arch/x86/platform/olpc/olpc-xo15-sci.c b/arch/x86/platform/olpc/olpc-xo15-sci.c index 2dd700351e7a..e1869b48e6e9 100644 --- a/arch/x86/platform/olpc/olpc-xo15-sci.c +++ b/arch/x86/platform/olpc/olpc-xo15-sci.c @@ -26,6 +26,17 @@ static unsigned long xo15_sci_gpe; static bool lid_wake_on_close; +/* + * The normal ACPI LID wakeup behavior is wake-on-open, but not + * wake-on-close. This is implemented as standard by the XO-1.5 DSDT. + * + * We provide here a sysfs attribute that will additionally enable + * wake-on-close behavior. This is useful (e.g.) when we oportunistically + * suspend with the display running; if the lid is then closed, we want to + * wake up to turn the display off. + * + * This is controlled through a custom method in the XO-1.5 DSDT. + */ static int set_lid_wake_behavior(bool wake_on_close) { struct acpi_object_list arg_list; @@ -39,7 +50,7 @@ static int set_lid_wake_behavior(bool wake_on_close) status = acpi_evaluate_object(NULL, "\\_SB.PCI0.LID.LIDW", &arg_list, NULL); if (ACPI_FAILURE(status)) { - pr_warning(PFX "failed to set lid behaviour\n"); + pr_warning(PFX "failed to set lid behavior\n"); return 1; }