Hi, On Wednesday 12 November 2014 06:30 PM, Johannes Pointner wrote: > Hello Vignesh, > > I tried your patch version 3 on a customized board and had some > behavior I couldn't explain. > If I only use the touchscreen it works fine but if I also read values > from the ADCs then I get a lot of pen_up events even if I am still > touching the screen. > For the test I read via > # cat /sys/bus/iio/devices/iio\:device0/in_voltage5_raw > values from the ADC in an busy loop as you explained in an email > before. Did you also experience such behavior or do you know what > causes it? Thanks for testing. I was able to fix this issue. Will post version 4 shortly. Regards Vignesh > > Without the patches the touchscreen works fine during the iio test. > > Thanks, > Hannes > > 2014-11-06 8:42 GMT+01:00 Vignesh R <vigneshr@xxxxxx>: >> >> >> On Monday 03 November 2014 11:39 PM, Richard Cochran wrote: >>> On Mon, Oct 27, 2014 at 04:38:27PM +0530, Vignesh R wrote: >>>> This series of patches fix TSC defects related to lag in touchscreen >>>> performance and cursor jump at touch release. The lag was result of >>>> udelay in TSC interrupt handler. Cursor jump due to false pen-up event. >>>> The patches implement Advisory 1.0.31 in silicon errata of am335x-evm >>>> to avoid false pen-up events and remove udelay. >>> >>> That advisory has two workarounds. You have chosen the second one? >> >> Work around one. Hence 5 wire design is not broken. >> >>> >>> The text of the second workaround says it only works on 4 wire setups, >>> so I wonder how 5 wire designs will be affected. >>> >>>> The advisory says to use >>>> steps 1 to 4 for ADC and 5 to 16 for TSC (assuming 4 wire TSC and 4 channel >>>> ADC). >>> >>> No, it doesn't say that. (sprz360f.pdf) >> >> The pen up event detection happens immediately after charge step. Hence, >> interchanging ADC and TSC steps makes sure that sampling of touch >> co-ordinates and pen events are done one after the other. This >> workaround was suggested by internal hardware folks. Earlier ADC steps >> intervened between sampling of co-ordinates and pen event detection >> which is not desirable. >> >>> >>>> Further the X co-ordinate must be the last one to be sampled just >>>> before charge step. The first two patches implement the required changes. >>> >>> FWIW, I implemented the first workaround and removed the udelay not >>> too long ago. Like Sebastian, I saw the TSC unit hang after about >>> 50000 interrupts when running with the workaround. >>> >>> Did you test you patch for very long? >> >> Yes, I tested for about 200000 interrupts and I didn't see any hang. >> This patch series does not just implement workaround but also does some >> minor changes, such as interchanging ADC and TSC steps etc, which makes >> TSC driver more robust. Let me know if you encounter any issues with my >> patch series. >> >> Regards >> Vignesh >> >>> >>> Thanks, >>> Richard >>> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-iio" in >> the body of a message to majordomo@xxxxxxxxxxxxxxx >> More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html