ACK: [PATCH 0/2 v2][SRU][OEM-5.6] Wakeup the system by touching the touchpad

Alex Hung alex.hung at canonical.com
Thu Jul 23 20:30:07 UTC 2020


On 2020-07-21 2:48 a.m., Koba Ko wrote:
> BugLink: https://bugs.launchpad.net/bugs/1888331
> 
> [Impact]
> Can't wake up by touching the touchpad.
> 
> [Fix]
> 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.
> 
> [test]
> 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.
> 
> v2: Add the line of cherry picked for the patches.
> 
> 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(-)
> 


Acked-by: Alex Hung <alex.hung at canonical.com>



More information about the kernel-team mailing list