On Mon, Jun 12, 2017 at 12:01 AM, Jérôme de Bretagne <jerome.debretagne@xxxxxxxxx> wrote: > Hi Mario, Hi Rafael, > >>> 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); > + > + /* Wake up on 5-button array events only. */ > + if (event == 0xc0 || !priv->array) > + return; > + > + 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? > > Or am I just detecting another ACPI issue in fact that prevents this > system from setting up properly the 5 button array with BIOS 1.1.31? It looks like priv->array is not set on your system with the new BIOS, which means that intel_button_array_input_setup() is not called any more, so either evaluating the HEBC method fails entirely, or its return value is not as expected. > How would you recommend me to test that 2nd assumption? Log the status and event_cap right after the status = acpi_evaluate_integer(handle, "HEBC", NULL, &event_cap); statement in intel_hid_probe(). Thanks, Rafael -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html