Re: [PATCH] MFD of DA9052 Linux device drivers (1/9)
From: Mark Brown
Date: Wed Jun 09 2010 - 08:55:26 EST
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.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/