diff options
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/ata/pata_icside.c | 13 | ||||
-rw-r--r-- | drivers/ide/arm/icside.c | 9 | ||||
-rw-r--r-- | drivers/net/arm/etherh.c | 4 | ||||
-rw-r--r-- | drivers/scsi/arm/cumana_2.c | 4 | ||||
-rw-r--r-- | drivers/scsi/arm/eesox.c | 4 | ||||
-rw-r--r-- | drivers/scsi/arm/powertec.c | 4 |
6 files changed, 14 insertions, 24 deletions
diff --git a/drivers/ata/pata_icside.c b/drivers/ata/pata_icside.c index dbc8ee2adcf0..d7621a39ed09 100644 --- a/drivers/ata/pata_icside.c +++ b/drivers/ata/pata_icside.c | |||
@@ -434,8 +434,8 @@ pata_icside_register_v5(struct ata_probe_ent *ae, struct expansion_card *ec) | |||
434 | 434 | ||
435 | ec->irqaddr = base + ICS_ARCIN_V5_INTRSTAT; | 435 | ec->irqaddr = base + ICS_ARCIN_V5_INTRSTAT; |
436 | ec->irqmask = 1; | 436 | ec->irqmask = 1; |
437 | ec->irq_data = state; | 437 | |
438 | ec->ops = &pata_icside_ops_arcin_v5; | 438 | ecard_setirq(ec, &pata_icside_ops_arcin_v5, state); |
439 | 439 | ||
440 | /* | 440 | /* |
441 | * Be on the safe side - disable interrupts | 441 | * Be on the safe side - disable interrupts |
@@ -480,8 +480,7 @@ pata_icside_register_v6(struct ata_probe_ent *ae, struct expansion_card *ec) | |||
480 | 480 | ||
481 | writeb(sel, ioc_base); | 481 | writeb(sel, ioc_base); |
482 | 482 | ||
483 | ec->irq_data = state; | 483 | ecard_setirq(ec, &pata_icside_ops_arcin_v6, state); |
484 | ec->ops = &pata_icside_ops_arcin_v6; | ||
485 | 484 | ||
486 | state->irq_port = easi_base; | 485 | state->irq_port = easi_base; |
487 | state->ioc_base = ioc_base; | 486 | state->ioc_base = ioc_base; |
@@ -609,8 +608,7 @@ static void pata_icside_shutdown(struct expansion_card *ec) | |||
609 | * this register via that region. | 608 | * this register via that region. |
610 | */ | 609 | */ |
611 | local_irq_save(flags); | 610 | local_irq_save(flags); |
612 | if (ec->ops) | 611 | ec->ops->irqdisable(ec, ec->irq); |
613 | ec->ops->irqdisable(ec, ec->irq); | ||
614 | local_irq_restore(flags); | 612 | local_irq_restore(flags); |
615 | 613 | ||
616 | /* | 614 | /* |
@@ -638,9 +636,6 @@ static void __devexit pata_icside_remove(struct expansion_card *ec) | |||
638 | * don't NULL out the drvdata - devres/libata wants it | 636 | * don't NULL out the drvdata - devres/libata wants it |
639 | * to free the ata_host structure. | 637 | * to free the ata_host structure. |
640 | */ | 638 | */ |
641 | ec->ops = NULL; | ||
642 | ec->irq_data = NULL; | ||
643 | |||
644 | if (state->dma != NO_DMA) | 639 | if (state->dma != NO_DMA) |
645 | free_dma(state->dma); | 640 | free_dma(state->dma); |
646 | if (state->ioc_base) | 641 | if (state->ioc_base) |
diff --git a/drivers/ide/arm/icside.c b/drivers/ide/arm/icside.c index 1fe0457243db..69c949ea93e3 100644 --- a/drivers/ide/arm/icside.c +++ b/drivers/ide/arm/icside.c | |||
@@ -574,8 +574,8 @@ icside_register_v5(struct icside_state *state, struct expansion_card *ec) | |||
574 | 574 | ||
575 | ec->irqaddr = base + ICS_ARCIN_V5_INTRSTAT; | 575 | ec->irqaddr = base + ICS_ARCIN_V5_INTRSTAT; |
576 | ec->irqmask = 1; | 576 | ec->irqmask = 1; |
577 | ec->irq_data = state; | 577 | |
578 | ec->ops = &icside_ops_arcin_v5; | 578 | ecard_setirq(ec, &icside_ops_arcin_v5, state); |
579 | 579 | ||
580 | /* | 580 | /* |
581 | * Be on the safe side - disable interrupts | 581 | * Be on the safe side - disable interrupts |
@@ -630,8 +630,7 @@ icside_register_v6(struct icside_state *state, struct expansion_card *ec) | |||
630 | 630 | ||
631 | writeb(sel, ioc_base); | 631 | writeb(sel, ioc_base); |
632 | 632 | ||
633 | ec->irq_data = state; | 633 | ecard_setirq(ec, &icside_ops_arcin_v6, state); |
634 | ec->ops = &icside_ops_arcin_v6; | ||
635 | 634 | ||
636 | state->irq_port = easi_base; | 635 | state->irq_port = easi_base; |
637 | state->ioc_base = ioc_base; | 636 | state->ioc_base = ioc_base; |
@@ -793,8 +792,6 @@ static void __devexit icside_remove(struct expansion_card *ec) | |||
793 | } | 792 | } |
794 | 793 | ||
795 | ecard_set_drvdata(ec, NULL); | 794 | ecard_set_drvdata(ec, NULL); |
796 | ec->ops = NULL; | ||
797 | ec->irq_data = NULL; | ||
798 | 795 | ||
799 | if (state->ioc_base) | 796 | if (state->ioc_base) |
800 | iounmap(state->ioc_base); | 797 | iounmap(state->ioc_base); |
diff --git a/drivers/net/arm/etherh.c b/drivers/net/arm/etherh.c index 61f574aa3a99..387f1e3a4e84 100644 --- a/drivers/net/arm/etherh.c +++ b/drivers/net/arm/etherh.c | |||
@@ -710,8 +710,7 @@ etherh_probe(struct expansion_card *ec, const struct ecard_id *id) | |||
710 | * IRQ and control port handling - only for non-NIC slot cards. | 710 | * IRQ and control port handling - only for non-NIC slot cards. |
711 | */ | 711 | */ |
712 | if (ec->slot_no != 8) { | 712 | if (ec->slot_no != 8) { |
713 | ec->ops = ðerh_ops; | 713 | ecard_setirq(ec, ðerh_ops, eh); |
714 | ec->irq_data = eh; | ||
715 | } else { | 714 | } else { |
716 | /* | 715 | /* |
717 | * If we're in the NIC slot, make sure the IRQ is enabled | 716 | * If we're in the NIC slot, make sure the IRQ is enabled |
@@ -778,7 +777,6 @@ static void __devexit etherh_remove(struct expansion_card *ec) | |||
778 | ecard_set_drvdata(ec, NULL); | 777 | ecard_set_drvdata(ec, NULL); |
779 | 778 | ||
780 | unregister_netdev(dev); | 779 | unregister_netdev(dev); |
781 | ec->ops = NULL; | ||
782 | 780 | ||
783 | if (eh->ioc_fast) | 781 | if (eh->ioc_fast) |
784 | iounmap(eh->ioc_fast); | 782 | iounmap(eh->ioc_fast); |
diff --git a/drivers/scsi/arm/cumana_2.c b/drivers/scsi/arm/cumana_2.c index 82add77ad131..f51aa3446bc7 100644 --- a/drivers/scsi/arm/cumana_2.c +++ b/drivers/scsi/arm/cumana_2.c | |||
@@ -450,8 +450,8 @@ cumanascsi2_probe(struct expansion_card *ec, const struct ecard_id *id) | |||
450 | 450 | ||
451 | ec->irqaddr = info->base + CUMANASCSI2_STATUS; | 451 | ec->irqaddr = info->base + CUMANASCSI2_STATUS; |
452 | ec->irqmask = STATUS_INT; | 452 | ec->irqmask = STATUS_INT; |
453 | ec->irq_data = info; | 453 | |
454 | ec->ops = &cumanascsi_2_ops; | 454 | ecard_setirq(ec, &cumanascsi_2_ops, info); |
455 | 455 | ||
456 | ret = fas216_init(host); | 456 | ret = fas216_init(host); |
457 | if (ret) | 457 | if (ret) |
diff --git a/drivers/scsi/arm/eesox.c b/drivers/scsi/arm/eesox.c index ed06a8c19ad6..cc5d513aa99a 100644 --- a/drivers/scsi/arm/eesox.c +++ b/drivers/scsi/arm/eesox.c | |||
@@ -569,8 +569,8 @@ eesoxscsi_probe(struct expansion_card *ec, const struct ecard_id *id) | |||
569 | 569 | ||
570 | ec->irqaddr = base + EESOX_DMASTAT; | 570 | ec->irqaddr = base + EESOX_DMASTAT; |
571 | ec->irqmask = EESOX_STAT_INTR; | 571 | ec->irqmask = EESOX_STAT_INTR; |
572 | ec->irq_data = info; | 572 | |
573 | ec->ops = &eesoxscsi_ops; | 573 | ecard_setirq(ec, &eesoxscsi_ops, info); |
574 | 574 | ||
575 | device_create_file(&ec->dev, &dev_attr_bus_term); | 575 | device_create_file(&ec->dev, &dev_attr_bus_term); |
576 | 576 | ||
diff --git a/drivers/scsi/arm/powertec.c b/drivers/scsi/arm/powertec.c index 159047a34997..3cbd525b58c5 100644 --- a/drivers/scsi/arm/powertec.c +++ b/drivers/scsi/arm/powertec.c | |||
@@ -361,8 +361,8 @@ powertecscsi_probe(struct expansion_card *ec, const struct ecard_id *id) | |||
361 | 361 | ||
362 | ec->irqaddr = base + POWERTEC_INTR_STATUS; | 362 | ec->irqaddr = base + POWERTEC_INTR_STATUS; |
363 | ec->irqmask = POWERTEC_INTR_BIT; | 363 | ec->irqmask = POWERTEC_INTR_BIT; |
364 | ec->irq_data = info; | 364 | |
365 | ec->ops = &powertecscsi_ops; | 365 | ecard_setirq(ec, &powertecscsi_ops, info); |
366 | 366 | ||
367 | device_create_file(&ec->dev, &dev_attr_bus_term); | 367 | device_create_file(&ec->dev, &dev_attr_bus_term); |
368 | 368 | ||