aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorLennert Buytenhek <buytenh@wantstofly.org>2010-11-29 04:21:01 -0500
committerLennert Buytenhek <buytenh@wantstofly.org>2011-01-13 06:26:17 -0500
commit4a87bac4c9b3291ade91fe4fc1382f22dd9e9e91 (patch)
treec0fa9d67f09a26df6823825d4157d60a8e48e5b3 /arch/arm
parentf64305a68b3cc688a20970cd6317f96c5778ea6f (diff)
ARM: ecard: irq_data conversion.
Signed-off-by: Lennert Buytenhek <buytenh@secretlab.ca> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/kernel/ecard.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/arch/arm/kernel/ecard.c b/arch/arm/kernel/ecard.c
index eed2f795e1b3..2ad62df37730 100644
--- a/arch/arm/kernel/ecard.c
+++ b/arch/arm/kernel/ecard.c
@@ -443,40 +443,40 @@ static expansioncard_ops_t ecard_default_ops = {
443 * 443 *
444 * They are not meant to be called directly, but via enable/disable_irq. 444 * They are not meant to be called directly, but via enable/disable_irq.
445 */ 445 */
446static void ecard_irq_unmask(unsigned int irqnr) 446static void ecard_irq_unmask(struct irq_data *d)
447{ 447{
448 ecard_t *ec = slot_to_ecard(irqnr - 32); 448 ecard_t *ec = slot_to_ecard(d->irq - 32);
449 449
450 if (ec) { 450 if (ec) {
451 if (!ec->ops) 451 if (!ec->ops)
452 ec->ops = &ecard_default_ops; 452 ec->ops = &ecard_default_ops;
453 453
454 if (ec->claimed && ec->ops->irqenable) 454 if (ec->claimed && ec->ops->irqenable)
455 ec->ops->irqenable(ec, irqnr); 455 ec->ops->irqenable(ec, d->irq);
456 else 456 else
457 printk(KERN_ERR "ecard: rejecting request to " 457 printk(KERN_ERR "ecard: rejecting request to "
458 "enable IRQs for %d\n", irqnr); 458 "enable IRQs for %d\n", d->irq);
459 } 459 }
460} 460}
461 461
462static void ecard_irq_mask(unsigned int irqnr) 462static void ecard_irq_mask(struct irq_data *d)
463{ 463{
464 ecard_t *ec = slot_to_ecard(irqnr - 32); 464 ecard_t *ec = slot_to_ecard(d->irq - 32);
465 465
466 if (ec) { 466 if (ec) {
467 if (!ec->ops) 467 if (!ec->ops)
468 ec->ops = &ecard_default_ops; 468 ec->ops = &ecard_default_ops;
469 469
470 if (ec->ops && ec->ops->irqdisable) 470 if (ec->ops && ec->ops->irqdisable)
471 ec->ops->irqdisable(ec, irqnr); 471 ec->ops->irqdisable(ec, d->irq);
472 } 472 }
473} 473}
474 474
475static struct irq_chip ecard_chip = { 475static struct irq_chip ecard_chip = {
476 .name = "ECARD", 476 .name = "ECARD",
477 .ack = ecard_irq_mask, 477 .irq_ack = ecard_irq_mask,
478 .mask = ecard_irq_mask, 478 .irq_mask = ecard_irq_mask,
479 .unmask = ecard_irq_unmask, 479 .irq_unmask = ecard_irq_unmask,
480}; 480};
481 481
482void ecard_enablefiq(unsigned int fiqnr) 482void ecard_enablefiq(unsigned int fiqnr)
@@ -551,7 +551,7 @@ static void ecard_check_lockup(struct irq_desc *desc)
551 printk(KERN_ERR "\nInterrupt lockup detected - " 551 printk(KERN_ERR "\nInterrupt lockup detected - "
552 "disabling all expansion card interrupts\n"); 552 "disabling all expansion card interrupts\n");
553 553
554 desc->chip->mask(IRQ_EXPANSIONCARD); 554 desc->irq_data.chip->irq_mask(&desc->irq_data);
555 ecard_dump_irq_state(); 555 ecard_dump_irq_state();
556 } 556 }
557 } else 557 } else
@@ -574,7 +574,7 @@ ecard_irq_handler(unsigned int irq, struct irq_desc *desc)
574 ecard_t *ec; 574 ecard_t *ec;
575 int called = 0; 575 int called = 0;
576 576
577 desc->chip->mask(irq); 577 desc->irq_data.chip->irq_mask(&desc->irq_data);
578 for (ec = cards; ec; ec = ec->next) { 578 for (ec = cards; ec; ec = ec->next) {
579 int pending; 579 int pending;
580 580
@@ -591,7 +591,7 @@ ecard_irq_handler(unsigned int irq, struct irq_desc *desc)
591 called ++; 591 called ++;
592 } 592 }
593 } 593 }
594 desc->chip->unmask(irq); 594 desc->irq_data.chip->irq_unmask(&desc->irq_data);
595 595
596 if (called == 0) 596 if (called == 0)
597 ecard_check_lockup(desc); 597 ecard_check_lockup(desc);