On Wed, Apr 29, 2020 at 2:06 PM Bartosz Golaszewski <brgl@xxxxxxxx> wrote: > I understand the need to set debounce time to make line events > reliable. As I see it: there'll be a couple steps to add this. I think there is a serious user-facing problem here though, because not all GPIO controllers supports debounce, so the call may return "nope" (error code). I think that is unavoidable with things like pull-up/down or drive strength, but for debounce I think we could do better. drivers/input/keyboard/gpio_keys.c contains generic debounce code using kernel timers if the GPIO driver cannot provide debouncing, and I have thought for a long time that it would be nice if we could do this generic, so that we always provide debouncing if requested, even for in-kernel consumers but most certainly for userspace consumers, else userspace will just start to reinvent this too. Yours, Linus Walleij