Re: [PATCH] input: Add support for the TSC2003 controller.
From: Trilok Soni <hidden>
Date: 2009-05-04 17:21:32
Also in:
linux-omap, lkml
Hi Therry, On Mon, May 4, 2009 at 8:27 PM, Thierry Reding [off-list ref] wrote:
* Trilok Soni wrote:quoted
Hi Thierry, On Mon, May 4, 2009 at 5:07 PM, Thierry Reding [off-list ref] wrote:quoted
* Kwangwoo Lee wrote:quoted
Hi Thierry and Trilok, On Wed, Apr 29, 2009 at 10:23 PM, Trilok Soni [off-list ref] wrote:quoted
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.
Thanks for the patch. It looks good. Let's wait for Kwangwoo Lee to verify it on his platform. Also please add "tsc2003" entry into i2c_device_ids so that i2c_board_info can specify the .name as "tsc2003". -- ---Trilok Soni http://triloksoni.wordpress.com http://www.linkedin.com/in/triloksoni