Input: wm9712 - fix wrong pen up readings
Often a reading can be wrong. This patch assures that this is really a pen up event and not a false reading. Based on wm9712: pen up by Teresa Gámez and Christian Hemp. Signed-off-by: Markus Pargmann <mpa@pengutronix.de> Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
This commit is contained in:
parent
fa45255ee7
commit
540792753c
@ -302,8 +302,12 @@ static int wm9712_poll_sample(struct wm97xx *wm, int adcsel, int *sample)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (wants_pen && !(*sample & WM97XX_PEN_DOWN)) {
|
if (wants_pen && !(*sample & WM97XX_PEN_DOWN)) {
|
||||||
wm->pen_probably_down = 0;
|
/* Sometimes it reads a wrong value the first time. */
|
||||||
return RC_PENUP;
|
*sample = wm97xx_reg_read(wm, AC97_WM97XX_DIGITISER_RD);
|
||||||
|
if (!(*sample & WM97XX_PEN_DOWN)) {
|
||||||
|
wm->pen_probably_down = 0;
|
||||||
|
return RC_PENUP;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return RC_VALID;
|
return RC_VALID;
|
||||||
|
Loading…
Reference in New Issue
Block a user