Messages in this thread | | | Date | Wed, 9 Jun 2010 13:55:19 +0100 | From | Mark Brown <> | Subject | Re: [PATCH] MFD of DA9052 Linux device drivers (1/9) |
| |
On Wed, Jun 09, 2010 at 05:04:09PM +0530, Vijay R. Iyengar wrote:
[Please fix your MUA to word wrap lines at ~80 columns. I've reflowed the text here]
> > These are looking pretyt touch screen specific. What are > > they doing in > > this patch?
> We have designed the EH (interrupt handler driver) and the TSI (touch > screen driver) in a manner that the EH reads raw co-ordinates from the > touch control registers of the DA9052 hardware in response to sampling > ready interrupt requests and stores them in a FIFO for TSI further > processing.
> We are implementing a common Event handler module for processing all > the interrupt events from the DA9052 devices like battery, regulator, > RTC etc. Fetching the TSI samples on touch events by EH rather than > notifying the TSI driver through a call-back routine helps us to get a > good amount of filtered touch samples from the TSI driver.
> Hence we intend to keep the TSI raw co-ordinate reading in the event > handling module, which is a part of the MFD driver.
The additional effort involved in pushing the interrupt notification to the touchscreen driver is so small that it's not going to make a meaningful difference to the performance of your driver. I'd guess you're already doing an equivalent amount of work managing the data queues so I'd anticipate that the performance would be at worst equivalent and likely better using something idiomatic (given that you could inject the touchscreen data into the input subsystem immediately from within interrupt context rather than having threads sitting around in the background which need to at least be scheduled before the data is delivered).
Obviously, if you've got benchmarking that demonstrates different performance then I'm sure people would be interested in improving the standard Linux stack for this.
| |