]> rtime.felk.cvut.cz Git - lincan.git/blobdiff - lincan/src/sysdep_lnx.c
Merge: Correction for 2.6.23-git kernel - unregister_chrdev() does not return value.
[lincan.git] / lincan / src / sysdep_lnx.c
index 07ef7d04c3d6f6c807f3a478d500c32a02a3f148..d01105c520ae39506673d474e59cb85c1fca3269 100644 (file)
@@ -20,6 +20,9 @@
  * components/comm/contrib directory. */
 #endif
 
+#ifndef IRQF_SHARED
+#define IRQF_SHARED SA_SHIRQ
+#endif  /*IRQF_SHARED*/
 
 /**
  * can_checked_malloc - memory allocation with registering of requested blocks
@@ -198,12 +201,12 @@ void can_release_mem_region(unsigned long start, unsigned long n)
  * 
  * File: src/setup.c
  */
-can_irqreturn_t can_default_irq_dispatch(int irq, void *dev_id, struct pt_regs *regs)
+can_irqreturn_t can_default_irq_dispatch(CAN_IRQ_HANDLER_ARGS(irq_number, dev_id))
 {
        int retval;
        struct canchip_t *chip=(struct canchip_t *)dev_id;
 
-       retval=chip->chipspecops->irq_handler(irq, chip);
+       retval=chip->chipspecops->irq_handler(irq_number, chip);
        return CAN_IRQ_RETVAL(retval);
 }
 
@@ -223,7 +226,7 @@ int can_chip_setup_irq(struct canchip_t *chip)
                return 1;
                        
        if ((chip->flags & CHIP_IRQ_VME) == 0) {
-               if (request_irq(chip->chip_irq,can_default_irq_dispatch,SA_SHIRQ,DEVICE_NAME,chip))
+               if (request_irq(chip->chip_irq,can_default_irq_dispatch,IRQF_SHARED,DEVICE_NAME,chip))
                        return -1;
                else {
                        DEBUGMSG("Registered interrupt %d\n",chip->chip_irq);