Staging: ipack: Let interrupts return irqreturn_t.
authorJens Taprogge <jens.taprogge@taprogge.org>
Wed, 12 Sep 2012 12:55:38 +0000 (14:55 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 12 Sep 2012 16:56:01 +0000 (09:56 -0700)
Signed-off-by: Jens Taprogge <jens.taprogge@taprogge.org>
Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/ipack/bridges/tpci200.c
drivers/staging/ipack/bridges/tpci200.h
drivers/staging/ipack/devices/ipoctal.c
drivers/staging/ipack/ipack.h

index b0d220521ccfbaf24dba50491451bd76754d77a1..1a149d87bfa398d58a08144d8bbb01d4047ccf64 100644 (file)
@@ -193,7 +193,7 @@ static int tpci200_free_irq(struct ipack_device *dev)
 }
 
 static int tpci200_request_irq(struct ipack_device *dev, int vector,
-                              int (*handler)(void *), void *arg)
+                              irqreturn_t (*handler)(void *), void *arg)
 {
        int res = 0;
        struct slot_irq *slot_irq;
index b8e98268a59840bbeb6da17150184472f50a3ea4..2718d22a5dd2c29829549b4068f1520872a7e840 100644 (file)
@@ -17,7 +17,6 @@
 #include <linux/limits.h>
 #include <linux/pci.h>
 #include <linux/spinlock.h>
-#include <linux/interrupt.h>
 #include <linux/swab.h>
 #include <linux/io.h>
 
@@ -123,7 +122,7 @@ struct tpci200_regs {
 struct slot_irq {
        struct ipack_device *holder;
        int             vector;
-       int             (*handler)(void *);
+       irqreturn_t     (*handler)(void *);
        void            *arg;
 };
 
index 4cc91730f34eb5e4e5c6151317dbaf13901626ba..8e61ebd648eeefcc9f46e0bc72ec1acff6793aef 100644 (file)
@@ -263,7 +263,7 @@ static void ipoctal_irq_channel(struct ipoctal_channel *channel)
        tty_kref_put(tty);
 }
 
-static int ipoctal_irq_handler(void *arg)
+static irqreturn_t ipoctal_irq_handler(void *arg)
 {
        unsigned int i;
        struct ipoctal *ipoctal = (struct ipoctal *) arg;
index 0ea9d849e36ed67d0340285753b58b76ad123019..9c3079d08e11500c9ae737ce659b57c0e230a320 100644 (file)
@@ -11,6 +11,7 @@
 
 #include <linux/mod_devicetable.h>
 #include <linux/device.h>
+#include <linux/interrupt.h>
 
 #include "ipack_ids.h"
 
@@ -126,7 +127,8 @@ struct ipack_driver {
 struct ipack_bus_ops {
        int (*map_space) (struct ipack_device *dev, unsigned int memory_size, int space);
        int (*unmap_space) (struct ipack_device *dev, int space);
-       int (*request_irq) (struct ipack_device *dev, int vector, int (*handler)(void *), void *arg);
+       int (*request_irq) (struct ipack_device *dev, int vector,
+                           irqreturn_t (*handler)(void *), void *arg);
        int (*free_irq) (struct ipack_device *dev);
        int (*get_clockrate) (struct ipack_device *dev);
        int (*set_clockrate) (struct ipack_device *dev, int mherz);