Hi Marek, On Mon, Apr 22, 2013 at 01:06:05AM +0200, Marek Vasut wrote: > The touchscreen interrupt handling in the STMPE touchscreen driver > doesn't seem to work correctly. It relies on FIFO_TH to be asserted > instead of TOUCH_DET interrupt for touchscreen detection. > > The FIFO_TH is usually asserted but is asserted independently of the > touchscreen controller operation. Because the bits in the interrupt > status register are not entirely cleaned, the interrupt handler is > triggered even if FIFO_TH is not yet set. Make sure that all bits in > the interrupt status register are cleared early. > > Rework the touchscreen interrupt handling so it waits for TOUCH_DET > interrupt to happen. Upon first TOUCH_DET interrupt, worker thread > is started which polls the touchscreen controller for location data > until no touch is detected. Touch is determined by checking the X > and Y coordinates, if they are zero, no touch happens. > > Signed-off-by: Marek Vasut <[email protected]> > Cc: Dmitry Torokhov <[email protected]> > Cc: Samuel Ortiz <[email protected]> > Cc: Vipul Kumar Samar <[email protected]> > Cc: Viresh Kumar <[email protected]> > Cc: Bill Pemberton <[email protected]> > Cc: Mark Brown <[email protected]> > --- > drivers/input/touchscreen/stmpe-ts.c | 111 > ++++++++++++++-------------------- > drivers/mfd/stmpe.c | 10 +-- > 2 files changed, 50 insertions(+), 71 deletions(-) Could you please split this patch in 2, the MFD part is independent from the input one and could be applied separately.
Cheers, Samuel. -- Intel Open Source Technology Centre http://oss.intel.com/ -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
