lkml.org 
[lkml]   [2009]   [Jul]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Threaded interrupts for synaptic touchscreen in HTC dream
    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.


    \
     
     \ /
      Last update: 2009-07-21 13:39    [W:4.393 / U:0.056 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site