On Wed, Sep 08, 2010 at 04:19:45PM +0200, Linus Walleij wrote: > 2010/9/8 Trilok Soni <tsoni@xxxxxxxxxxxxxx>: > > [Sundar] > >> Yes it can. I am seeing increasing tendency to migrate to threaded_irq from the legacy irq recently > >> and hence the threaded request. > > > > Use threaded_irq only when needed with different flags and not everywhere. In this case we don't > > need threaded irq at all. > > Look closer at the IRQ handler: > > +static irqreturn_t ske_keypad_irq(int irq, void *dev_id) > (...) > + /* > + * if KPASON is not ready, we cannot read data registers > + * so wait for a debounce period; if still not settled, > + * we fire a timer and exit the IRQ > + */ > + while ((readl(keypad->reg_base + SKE_CR) & SKE_KPASON) && timeout--) > + cpu_relax(); > > Active polling. Surely you want this to be preemptible? Thus -> > threaded handler. > Actually I'd like that form of active polling not be there at all. -- Dmitry -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html