The TQMa6UL board uses the gpio-keys driver with GPIOs provided by a PCA9554 I2C GPIO expander. This currently doesn't work as the GPIOs are read in a poller during an ongoing I2C transfer on the same bus. This series fixes that by adding a slice to struct gpio_chip and checking its availability before using it. Sascha Hauer (4): gpio: add slice support gpio: pca953x: depend on i2c slice input: gpio_keys: limit poll rate input: gpio_keys: only use gpios in poller when not in use drivers/gpio/gpio-pca953x.c | 2 ++ drivers/gpio/gpiolib.c | 11 +++++++++++ drivers/input/gpio_keys.c | 27 +++++++++++++++------------ include/gpio.h | 15 +++++++++++++++ 4 files changed, 43 insertions(+), 12 deletions(-) -- 2.39.2