On Fri, Aug 30, 2024 at 11:09:07AM +0200, Stephan Gerhold wrote: > On X1E80100, GPIO interrupts for wakeup-capable pins have been broken since > the introduction of the pinctrl driver. This prevents keyboard and touchpad > from working on most of the X1E laptops. So far we have worked around this > by manually building a kernel with the "wakeup-parent" removed from the > pinctrl node in the device tree, but we cannot expect all users to do that. > > Implement a similar workaround in the driver by clearing the wakeirq_map > for X1E80100. This avoids using the PDC wakeup parent for all GPIOs > and handles the interrupts directly in the pinctrl driver instead. > > The PDC driver needs additional changes to support X1E80100 properly. > Adding a workaround separately first allows to land the necessary PDC > changes through the normal release cycle, while still solving the more > critical problem with keyboard and touchpad on the current stable kernel > versions. Bypassing the PDC is enough for now, because we have not yet > enabled the deep idle states where using the PDC becomes necessary. > > Cc: stable@xxxxxxxxxxxxxxx > Fixes: 05e4941d97ef ("pinctrl: qcom: Add X1E80100 pinctrl driver") > Signed-off-by: Stephan Gerhold <stephan.gerhold@xxxxxxxxxx> I can confirm that this fixes the keyboard and touchpad interrupts on the x1e80100 CRD as expected: Reviewed-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Tested-by: Johan Hovold <johan+linaro@xxxxxxxxxx> Johan