Re: [PATCH 1/2] Input: soc_button_array - Add use_low_level_irq module parameter

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Nov 06, 2022 at 10:53:19PM +0100, Hans de Goede wrote:
> It seems that the Windows drivers for the ACPI0011 soc_button_array
> device use low level triggered IRQs rather then using edge triggering.
> 
> Some ACPI tables depend on this, directly poking the GPIO controller's
> registers to clear the trigger type when closing a laptop's/2-in-1's lid
> and re-instating the trigger when opening the lid again.
> 
> Linux sets the edge/level on which to trigger to both low+high since
> it is using edge type IRQs, the ACPI tables then ends up also setting
> the bit for level IRQs and since both low and high level have been
> selected by Linux we get an IRQ storm leading to soft lockups.
> 
> As a workaround for this the soc_button_array already contains
> a DMI quirk table with device models known to have this issue.
> 
> Add a module parameter for this so that users can easily test if their
> device is affected too and so that they can use the module parameter
> as a workaround.
> 
> Cc: Rudolf Polzer <rpolzer@xxxxxxxxxx>
> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>

Applied, thank you.

-- 
Dmitry



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux