NFC: Set the IRQF_ONESHOT flag from the pn544_hci IRQ handler request
authorSamuel Ortiz <sameo@linux.intel.com>
Fri, 24 Aug 2012 22:40:16 +0000 (00:40 +0200)
committerSamuel Ortiz <sameo@linux.intel.com>
Mon, 24 Sep 2012 22:17:24 +0000 (00:17 +0200)
As we don't have a primary handler but only a threaded one, __setup_irq()
ends up failing if we don't set this flag.

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/nfc/pn544_hci.c

index aa71807189ba3235a0720fc1660049507bf19039..9458d53cdb59e85e1869da0b7f792613fdf6d437 100644 (file)
@@ -848,8 +848,8 @@ static int __devinit pn544_hci_probe(struct i2c_client *client,
        pn544_hci_platform_init(info);
 
        r = request_threaded_irq(client->irq, NULL, pn544_hci_irq_thread_fn,
-                                IRQF_TRIGGER_RISING, PN544_HCI_DRIVER_NAME,
-                                info);
+                                IRQF_TRIGGER_RISING | IRQF_ONESHOT,
+                                PN544_HCI_DRIVER_NAME, info);
        if (r < 0) {
                dev_err(&client->dev, "Unable to register IRQ handler\n");
                goto err_rti;