Re: Threaded interrupts for synaptic touchscreen in HTC dream

From: Trilok Soni
Date: Tue Jul 21 2009 - 08:30:24 EST


Hi Mark,

On Tue, Jul 21, 2009 at 5:48 PM, Trilok Soni<soni.trilok@xxxxxxxxx> wrote:
> 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.
>

Hopefully, this thread can give all details about threaded irq discussion.

http://lkml.org/lkml/2009/2/27/255


--
---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/