* Trilok Soni wrote: > Hi Thierry, > > On Mon, May 4, 2009 at 5:07 PM, Thierry Reding > wrote: > > * Kwangwoo Lee wrote: > >> Hi Thierry and Trilok, > >> > >> On Wed, Apr 29, 2009 at 10:23 PM, Trilok Soni wrote: > >> > Hi Thierry, > >> > > >> > I have added linux-omap community. How different is this chip from > >> > tsc2007. It looks to me that this chip is not much different from > >> > tsc2007 (this is just quick look at the driver). If they > >> > are similar please consider using i2c_device_id feature in tsc2007 to > >> > accommodate this chip. > >> > >> I agree with the Trilok's opinion. > > [snip] > > > > I only noticed the tsc2007 driver some time ago, when the tsc2003 was already > > finished (it's actually pretty old, I just never got around to submitting > > it). However I never got the tsc2007 to work on my platform because it uses > > sleeping functions inside the timer handler, which results in an oops right > > after the first touchscreen interrupt. > > > > I guess I could try and fix the tsc2007 properly instead of having a second, > > pretty similar driver in the tree. > > > > This could be because of improper locking? If you share a crash we can > have look at it. Attached is a patch that fixes things for me. The problem was that the I2C transfers were done in interrupt context which fails for the controller I use (PXA270). The attached patch uses a struct work_struct to schedule the I2C transfers so they are executed in non-interrupt context. I've tested the patch on a minimal system with tslib and it work fine with ts_calibrate and friends. Thierry