> + > + /* Start workqueue for defer message transfer */ > + INIT_WORK(&data->work, ad7142_work); > + > + if (client->irq > 0) { > + rc = request_irq(client->irq, ad7142_interrupt, > + IRQF_TRIGGER_LOW, "ad7142_joystick", data); > Let's use threaded IRQs, they are so nice for devices like this one. Do you mean use request_threaded_irq to request irq and return IRQ_THREAD_WAKE in hardware interrupt to wake-up thread_fn in process context? But there is almost no device using this way after a grep. Or just create a single-thread workqueue? Or just create a thread to handle bottom-half? -Barry -- 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