Thread (26 messages) 26 messages, 5 authors, 2017-07-09

Re: [PATCH 0/3] ACPI / sleep: Support power button wakeup from S2I on recent Dell laptops

From: "Rafael J. Wysocki" <rafael@kernel.org>
Date: 2017-06-12 19:13:17
Also in: linux-acpi

On Mon, Jun 12, 2017 at 5:54 PM, Srinivas Pandruvada
[off-list ref] wrote:
On Mon, 2017-06-12 at 00:01 +0200, Jérôme de Bretagne wrote:
quoted
Hi Mario, Hi Rafael,
quoted
quoted
Some assumptions now: either the SCI is ignored erroneously or
it's
not interpreted correctly by the expected driver? I guess that's
the 2
possibilities I'll try to investigate.
Well that's too bad.  Yes, you're correct that the EC has changed
between
those versions.  Are you testing on or off AC adapter?
I haven't detected a pattern specific to the state of the AC adapter.

Good news on another front. By adding some more logs in the
s2idle-dell-test branch, I've been able to check and confirm that
notify_handler() from intel-hid.c is actually called upon short power
key
press during s2idle on my Latitude 7275.

However, the system with BIOS 1.1.31 doesn't match (anymore?) the
current criteria to call pm_wakeup_hard_event introduced in commit:

platform: x86: intel-hid: Wake up the system from suspend-to-idle
7871dc61497a71be93c4f80d43ac109152510e7e

This ugly 3-line modification I've added on the actual patch here:

+ if (priv->wakeup_mode) {
+
+ /* Wake up Dell Latitude 7275 BIOS 1.1.31. */
+ if (event == 0xce)
+ pm_wakeup_hard_event(&device->dev);
0xce is a 5 button array press and 0xcf is release.
Right.  And it is there in intel_array_keymap[].
quoted
+
+ /* Wake up on 5-button array events only. */
+ if (event == 0xc0 || !priv->array)
+ return;
I don't think 0xc0 is any valid 5 button code.
quoted
+
+ if (sparse_keymap_entry_from_scancode(priv->array, event))
+ pm_wakeup_hard_event(&device->dev);
+ else
+ dev_info(&device->dev, "unknown event 0x%x\n", event);
+
+ return;
+ }

make the system wake up on a standard short press finally!

Is the "Wake up on 5-button array events only." assumption broad
enough to cover the various Intel systems that need this behavior?
For the platforms which supported Win 8.1 only the event should be
handled by vbtn driver.
This is not intel-vbtn, but intel-hid.

Thanks,
Rafael
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help