#ifndef CAN_WITH_RTL
+can_irqreturn_t can_default_irq_dispatch(int irq, void *dev_id, struct pt_regs *regs)
+{
+ int retval;
+ struct chip_t *chip=(struct chip_t *)dev_id;
+
+ retval=chip->chipspecops->irq_handler(irq, chip);
+ return CAN_IRQ_RETVAL(retval);
+}
+
/**
* can_chip_setup_irq - attaches chip to the system interrupt processing
* @chip: pointer to CAN chip structure
return 0;
if ((chip->flags & CHIP_IRQ_VME) == 0) {
- if (request_irq(chip->chip_irq,chip->chipspecops->irq_handler,SA_SHIRQ,DEVICE_NAME,chip))
+ if (request_irq(chip->chip_irq,can_default_irq_dispatch,SA_SHIRQ,DEVICE_NAME,chip))
return -1;
else {
DEBUGMSG("Registered interrupt %d\n",chip->chip_irq);