summaryrefslogtreecommitdiffstats
path: root/drivers/input/tablet
diff options
context:
space:
mode:
authorMichael Hennerich <michael.hennerich@analog.com>2010-10-28 14:59:05 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2010-10-28 22:32:50 -0700
commitb584efc9ea7575d3235cfd745e8a28201d2c37f6 (patch)
treeb00aaf5107666a706067406fa9be5debf807614d /drivers/input/tablet
parent49327ad2bbbaf1945d5ba431522201574219d150 (diff)
downloadop-kernel-dev-b584efc9ea7575d3235cfd745e8a28201d2c37f6.zip
op-kernel-dev-b584efc9ea7575d3235cfd745e8a28201d2c37f6.tar.gz
Input: ad7879 - prevent invalid finger data reports
Considering following scenario - the touch is present on the screen at the beginning of the last conversion sequence, but by the time the last sequence is finished, the finger is lift off. The AD7879 data available interrupt signals (DAV) completion, however some X,Y values are not valid because the screen inputs were floating during the acquisition. The AD7877 acts differently here, since it only asserts DAV if the touch is still present when the conversion sequence finished. Based on the fact that this can only happen in the last sample of the repeated conversion sequence, we simply skip the last (short glitches are filtered by the AD7879 internal median and average filters). This doesn't cause noticeable side effects, since the minimum conversion interval is 9.44ms. We receive ~100 waypoint samples per second, so we simply delay the result by 9.44ms. We also reject samples where pressure is greater than pressure_max. Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Dmitry Torokhov <dtor@mail.ru>
Diffstat (limited to 'drivers/input/tablet')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud