The AYANEO Pocket DS drives its FocalTech FT5426 touch controller on a
Qualcomm GENI i2c controller that has no bus recovery and, on this
board, clock-stretches close to the controller timeout. This series
collects the robustness work that helps there, smallest and most
generic first:
1. ignore contacts reported with an out-of-range slot id -- a generic
correctness fix, independent of the board;
2. document, and
3. implement an optional no-regmap-bulk-read mode that reads the touch
frame one register at a time, for controllers whose bus aborts long
transfers;
4. poll while a contact is down to recover a touch release dropped by
a missed edge interrupt.
Patch 1 stands on its own; the rest are opt-in (DT property / chip
behaviour) and inert on healthy hardware. Feedback on whether the bus
mitigations belong here vs. in the i2c controller is welcome.
Signed-off-by: Alexandre Hamamdjian <azkali.limited@gmail.com>
---
Alexandre Hamamdjian (3):
Input: edt-ft5x06 - ignore contacts with an out-of-range slot id
dt-bindings: input: edt-ft5x06 - add no-regmap-bulk-read property
Input: edt-ft5x06 - poll while a contact is down to recover dropped releases
Teguh Sobirin (1):
Input: edt-ft5x06 - allow reading the touch frame one register at a time
.../bindings/input/touchscreen/edt-ft5x06.yaml | 8 +
drivers/input/touchscreen/edt-ft5x06.c | 200 +++++++++++++++++++--
2 files changed, 196 insertions(+), 12 deletions(-)
---
base-commit: e98d21c170b01ddef366f023bbfcf6b31509fa83
change-id: 20260723-b4-ft5426-393d8514e4bf
Best regards,
--
Alexandre Hamamdjian <azkali.limited@gmail.com>