Re: Threaded interrupts for synaptic touchscreen in HTC dream

From: Trilok Soni
Date: Tue Jul 21 2009 - 08:18:48 EST


Hi Mark,

On Tue, Jul 21, 2009 at 5:06 PM, Mark
Brown<broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
> On Tue, Jul 21, 2009 at 12:59:25PM +0200, Pavel Machek wrote:
>
> This looks like an unrelated (but useful) change:
>
>>   *
>> + * http://www.synaptics.com/sites/default/files/511_000099_01F.pdf
>>   */
>
> This too:
>
>>  static void decode_report(struct synaptics_ts_data *ts, u8 *buf)
>>  {
>> +/*
>> + * This sensor sends two 6-byte absolute finger reports, an optional
>> + * 2-byte relative report followed by a status byte. This function
>> + * reads the two finger reports and transforms the coordinates
>
> Worth splitting them out?
>
>> +static irqreturn_t synaptics_ts_hardirq(int irq, void *dev_id)
>> +{
>> +     disable_irq_nosync(irq);
>> +     return IRQ_WAKE_THREAD;
>
> Are you sure that this is going to work?  The IRQ thread code will not
> call the thread function if the IRQ is marked as disabled so the thread
> won't actually get called and the interrupt will just stay disabled (see
> irq_thread() in kernel/irq/manage.c).  As far as I can see the threaded
> IRQ support can't be used for devices on interrupt driven buses that
> can't interact with the hardware in hardirq context but I might be
> missing something here.
>

I think threaded irqs are used in USB drivers too, I can't locate the
patches link for that.



--
---Trilok Soni
http://triloksoni.wordpress.com
http://www.linkedin.com/in/triloksoni
--
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/