NACK: [PATCH 0/2][SRU][OEM-5.6] Wakeup the system by touching the touchpad
koba.ko at canonical.com
Tue Jul 21 08:37:47 UTC 2020
Lose the line of cherry picked for the patches and will correct it in the v2.
On Tue, Jul 21, 2020 at 12:04 PM Koba Ko <koba.ko at canonical.com> wrote:
> BugLink: https://bugs.launchpad.net/bugs/1888331
> Can't wake up by touching the touchpad.
> 1.gpio: With 'commit 461c1a7d4733 ("gpiolib: override rq_enable/disable")'
> gpiolib overrides irqchip's irq_enable and irq_disable callbacks. If
> irq_disable callback is implemented then genirq takes unlazy path to
> disable irq. Underlying irqchip may not want to implement irq_disable
> callback to lazy disable irq when client drivers invokes disable_irq().
> By overriding irq_disable callback, gpiolib ends up always unlazy
> disabling IRQ. Allow gpiolib to lazy disable IRQs by overriding
> irq_disable callback only if irqchip implemented irq_disable. In cases
> where irq_disable is not implemented irq_mask is overridden. Similarly
> override irq_enable callback only if irqchip implemented irq_enable
> otherwise irq_unmask is overridden.
> 2. hid: Many laptops can be woken up from Suspend-to-Idle by the touchpad.
> This is also the default behavior on other OSes.
> However, if the touch pad and touchscreen contact to each other when
> lid is closed, the wakeup events can be triggered inadvertently.
> So let's disable the wakeup by default, but enable the wakeup ability
> so users can enable it at their own discretion.
> With the patch and manually enable HID's power/wakeup,
> the system can wake up by touching the touchpad.
> [Regression Potential]
> Low. The two patches are already landed in the upstream.
> Kai-Heng Feng (1):
> HID: i2c-hid: Enable wakeup capability from Suspend-to-Idle
> Maulik Shah (1):
> gpio: gpiolib: Allow GPIO IRQs to lazy disable
> drivers/gpio/gpiolib.c | 57 +++++++++++++++++++-----------
> drivers/hid/i2c-hid/i2c-hid-core.c | 12 +++++++
> include/linux/gpio/driver.h | 13 +++++++
> 3 files changed, 62 insertions(+), 20 deletions(-)
More information about the kernel-team