Implement a new stable-poll-period-ms property to specify a new (slower) polling rate for when the matrix is stable. The keyboard thread can eat up a surprisingly high amount of cpu cycles in busy waiting if the specific hardware implementation happen to have a particularly slow settle time, but high frequency polling is really only needed when debouncing. The new property allow slowing down the polling rate when the matrix is stable (either key pressed but none to be debounced or idle in the case of the gpio implementation with no interrupts), this allows reducing the overall cpu time taken by the keyboard scanning thread when keys are persistently pressed. Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com> |
||
|---|---|---|
| .. | ||
| adc-keys.yaml | ||
| analog-axis.yaml | ||
| chipsemi,chsc6x.yaml | ||
| cirque,pinnacle-common.yaml | ||
| cirque,pinnacle-i2c.yaml | ||
| cirque,pinnacle-spi.yaml | ||
| espressif,esp32-touch-sensor.yaml | ||
| focaltech,ft5336.yaml | ||
| futaba,sbus.yaml | ||
| goodix,gt911.yaml | ||
| gpio-kbd-matrix.yaml | ||
| gpio-keys.yaml | ||
| gpio-qdec.yaml | ||
| hynitron,cst816s.yaml | ||
| ilitek,ili2132a.yaml | ||
| input-keymap.yaml | ||
| ite,it8xxx2-kbd.yaml | ||
| kbd-matrix-common.yaml | ||
| microchip,cap1203.yaml | ||
| microchip,xec-kbd.yaml | ||
| nuvoton,npcx-kbd.yaml | ||
| pixart,pat912x.yaml | ||
| pixart,paw32xx.yaml | ||
| pixart,pmw3610.yaml | ||
| sitronix,cf1133.yaml | ||
| st,stmpe811.yaml | ||
| touchscreen-common.yaml | ||
| xptek,xpt2046.yaml | ||
| zephyr,input-double-tap.yaml | ||
| zephyr,input-longpress.yaml | ||
| zephyr,input-sdl-touch.yaml | ||
| zephyr,lvgl-button-input.yaml | ||
| zephyr,lvgl-common-input.yaml | ||
| zephyr,lvgl-encoder-input.yaml | ||
| zephyr,lvgl-keypad-input.yaml | ||
| zephyr,lvgl-pointer-input.yaml | ||
| zephyr,native-linux-evdev.yaml | ||