Problemas difíceis de um dispositivo simples, touchscreen capacitiva no ft5406
Limpei uma nuvem um dia e descobri minhas anotações sobre o problema de uma tela de toque com uma tela de toque capacitiva no ft5406. É assim que este artigo apareceu, e se alguém tropeçar em algo assim durante o desenvolvimento ...
De alguma forma, me deparei com um problema com uma tela de toque capacitiva no ft5406, a tela de toque em um ponto desligou e se recusou a continuar trabalhando. Bem, agora mais sobre isso.
Ferro: marsboard sun7i A20.
Software: uboot 2017, kernel 4.10, LUbuntu 16.04.
A essência do problema.
, , . .. , .
, Xinput, Xorg, .
.. touchscreen xinput, (xinput), xinput test – xinput test-xi2 - , XI 2.0 (The X Input Extension 2.x), . . , , - .
, evt-ft5x06 ( ft5406) evtest, , . , , , . xserver-xorg-input-evdev , ( ft5406) , ( ) , .
, :
xserver-xorg-input-libinput
xserver-xorg-input-mtrack
/usr/share/X11/xorg.conf.d , libinput , mtrack , , touchpad, . .. , touchpad , .
.. multitouch, XI 2.0 , .
, , devicetree ( devicetree kernell , 3.11) , ...
/drivers/input/touchscreen/ edt-ft5x06.c :
static const struct edt_i2c_chip_data edt_ft5x06_data = {
...
.max_support_points = 5,
...
};
5 1. .
. , , , .
,
static irqreturn_t edt_ft5x06_ts_isr(int irq, void *dev_id)
, .
.
. , .. ( ) .