On Fri, Jun 26, 2020 at 11:10 PM Furquan Shaikh <furquan@xxxxxxxxxx> wrote: > This change drops the override in `amd_gpio_irq_set_type()` that > ignores the IRQ trigger type settings from the caller. The device > driver (caller) is in a better position to identify the right trigger > type for the device based on the usage as well as the information > exposed by the BIOS. There are instances where the device driver might > want to configure the trigger type differently in different modes. An > example of this is gpio-keys driver which configures IRQ type as > trigger on both edges (to identify assert and deassert events) when in > S0 and reconfigures the trigger type using the information provided by > the BIOS when going into suspend to ensure that the wake happens on > the required edge. > > This override in `amd_gpio_irq_set_type()` prevents the caller from > being able to reconfigure trigger type once it is set either based on > ACPI information or the type used by the first caller for IRQ on a > given GPIO line. > > Without this change, pen-insert gpio key (used by garaged stylus on a > Chromebook) works fine in S0 (i.e. insert and eject events are > correctly identified), however, BIOS configuration for wake on only > pen eject i.e. only-rising edge or only-falling edge is not honored. > > With this change, it was verified that pen-insert gpio key behavior is > correct in both S0 and for wakeup from S3. > > Signed-off-by: Furquan Shaikh <furquan@xxxxxxxxxx> Patch applied. Yours, Linus Walleij