return -1;
if(!chip->chipspecops->irq_handler)
return 0;
+ if(chip->flags & CHIP_IRQ_CUSTOM)
+ return 1;
if ((chip->flags & CHIP_IRQ_VME) == 0) {
if (request_irq(chip->chip_irq,can_default_irq_dispatch,SA_SHIRQ,DEVICE_NAME,chip))
void can_chip_free_irq(struct canchip_t *chip)
{
if((chip->flags & CHIP_IRQ_SETUP) && (chip->chip_irq>=0)) {
+ if(chip->flags & CHIP_IRQ_CUSTOM)
+ return;
+
if ((chip->flags & CHIP_IRQ_VME) == 0)
free_irq(chip->chip_irq, chip);
else {