}
}
-can_irqreturn_t i82527_irq_handler(int irq, void *dev_id, struct pt_regs *regs)
+int i82527_irq_handler(int irq, struct chip_t *chip)
{
unsigned char msgcfg;
unsigned irq_register;
unsigned object;
- struct chip_t *chip=(struct chip_t *)dev_id;
struct msgobj_t *obj;
/*put_reg=device->hwspecops->write_register;*/
if(!irq_register) {
DEBUGMSG("i82527: spurious IRQ\n");
- return CAN_IRQ_NONE;
+ return CANCHIP_IRQ_NONE;
}
if (irq_register == 0x01) {
DEBUGMSG("Status register: 0x%x\n",can_read_reg(chip, iSTAT));
continue;
- /*return CAN_IRQ_NONE;*/
+ /*return CANCHIP_IRQ_NONE;*/
}
if (irq_register == 0x02)
else if(irq_register < 14)
object = irq_register-3;
else
- return CAN_IRQ_NONE;
+ return CANCHIP_IRQ_NONE;
obj=chip->msgobj[object];
} while((irq_register=i82527_seg_read_reg(chip, iIRQ)) != 0);
- return CAN_IRQ_HANDLED;
+ return CANCHIP_IRQ_HANDLED;
}
void i82527_irq_rtr_handler(struct chip_t *chip, struct msgobj_t *obj,