diff options
| author | Lennert Buytenhek <buytenh@wantstofly.org> | 2011-03-07 08:59:58 -0500 |
|---|---|---|
| committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2011-03-09 19:04:02 -0500 |
| commit | 687228ad404400c040e52d36ecfda42a1d392ead (patch) | |
| tree | 0729d6a160ecb4ead94981340d6ebd434c7307c8 | |
| parent | d4201184347018afcb61d113c3831d04572cf9c7 (diff) | |
powerpc: sysdev/ipic irq_data conversion.
Signed-off-by: Lennert Buytenhek <buytenh@secretlab.ca>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
| -rw-r--r-- | arch/powerpc/sysdev/ipic.c | 54 |
1 files changed, 27 insertions, 27 deletions
diff --git a/arch/powerpc/sysdev/ipic.c b/arch/powerpc/sysdev/ipic.c index d7b9b9c69287..497047dc986e 100644 --- a/arch/powerpc/sysdev/ipic.c +++ b/arch/powerpc/sysdev/ipic.c | |||
| @@ -523,10 +523,10 @@ static inline struct ipic * ipic_from_irq(unsigned int virq) | |||
| 523 | 523 | ||
| 524 | #define ipic_irq_to_hw(virq) ((unsigned int)irq_map[virq].hwirq) | 524 | #define ipic_irq_to_hw(virq) ((unsigned int)irq_map[virq].hwirq) |
| 525 | 525 | ||
| 526 | static void ipic_unmask_irq(unsigned int virq) | 526 | static void ipic_unmask_irq(struct irq_data *d) |
| 527 | { | 527 | { |
| 528 | struct ipic *ipic = ipic_from_irq(virq); | 528 | struct ipic *ipic = ipic_from_irq(d->irq); |
| 529 | unsigned int src = ipic_irq_to_hw(virq); | 529 | unsigned int src = ipic_irq_to_hw(d->irq); |
| 530 | unsigned long flags; | 530 | unsigned long flags; |
| 531 | u32 temp; | 531 | u32 temp; |
| 532 | 532 | ||
| @@ -539,10 +539,10 @@ static void ipic_unmask_irq(unsigned int virq) | |||
| 539 | raw_spin_unlock_irqrestore(&ipic_lock, flags); | 539 | raw_spin_unlock_irqrestore(&ipic_lock, flags); |
| 540 | } | 540 | } |
| 541 | 541 | ||
| 542 | static void ipic_mask_irq(unsigned int virq) | 542 | static void ipic_mask_irq(struct irq_data *d) |
| 543 | { | 543 | { |
| 544 | struct ipic *ipic = ipic_from_irq(virq); | 544 | struct ipic *ipic = ipic_from_irq(d->irq); |
| 545 | unsigned int src = ipic_irq_to_hw(virq); | 545 | unsigned int src = ipic_irq_to_hw(d->irq); |
| 546 | unsigned long flags; | 546 | unsigned long flags; |
| 547 | u32 temp; | 547 | u32 temp; |
| 548 | 548 | ||
| @@ -559,10 +559,10 @@ static void ipic_mask_irq(unsigned int virq) | |||
| 559 | raw_spin_unlock_irqrestore(&ipic_lock, flags); | 559 | raw_spin_unlock_irqrestore(&ipic_lock, flags); |
| 560 | } | 560 | } |
| 561 | 561 | ||
| 562 | static void ipic_ack_irq(unsigned int virq) | 562 | static void ipic_ack_irq(struct irq_data *d) |
| 563 | { | 563 | { |
| 564 | struct ipic *ipic = ipic_from_irq(virq); | 564 | struct ipic *ipic = ipic_from_irq(d->irq); |
| 565 | unsigned int src = ipic_irq_to_hw(virq); | 565 | unsigned int src = ipic_irq_to_hw(d->irq); |
| 566 | unsigned long flags; | 566 | unsigned long flags; |
| 567 | u32 temp; | 567 | u32 temp; |
| 568 | 568 | ||
| @@ -578,10 +578,10 @@ static void ipic_ack_irq(unsigned int virq) | |||
| 578 | raw_spin_unlock_irqrestore(&ipic_lock, flags); | 578 | raw_spin_unlock_irqrestore(&ipic_lock, flags); |
| 579 | } | 579 | } |
| 580 | 580 | ||
| 581 | static void ipic_mask_irq_and_ack(unsigned int virq) | 581 | static void ipic_mask_irq_and_ack(struct irq_data *d) |
| 582 | { | 582 | { |
| 583 | struct ipic *ipic = ipic_from_irq(virq); | 583 | struct ipic *ipic = ipic_from_irq(d->irq); |
| 584 | unsigned int src = ipic_irq_to_hw(virq); | 584 | unsigned int src = ipic_irq_to_hw(d->irq); |
| 585 | unsigned long flags; | 585 | unsigned long flags; |
| 586 | u32 temp; | 586 | u32 temp; |
| 587 | 587 | ||
| @@ -601,11 +601,11 @@ static void ipic_mask_irq_and_ack(unsigned int virq) | |||
| 601 | raw_spin_unlock_irqrestore(&ipic_lock, flags); | 601 | raw_spin_unlock_irqrestore(&ipic_lock, flags); |
| 602 | } | 602 | } |
| 603 | 603 | ||
| 604 | static int ipic_set_irq_type(unsigned int virq, unsigned int flow_type) | 604 | static int ipic_set_irq_type(struct irq_data *d, unsigned int flow_type) |
| 605 | { | 605 | { |
| 606 | struct ipic *ipic = ipic_from_irq(virq); | 606 | struct ipic *ipic = ipic_from_irq(d->irq); |
| 607 | unsigned int src = ipic_irq_to_hw(virq); | 607 | unsigned int src = ipic_irq_to_hw(d->irq); |
| 608 | struct irq_desc *desc = irq_to_desc(virq); | 608 | struct irq_desc *desc = irq_to_desc(d->irq); |
| 609 | unsigned int vold, vnew, edibit; | 609 | unsigned int vold, vnew, edibit; |
| 610 | 610 | ||
| 611 | if (flow_type == IRQ_TYPE_NONE) | 611 | if (flow_type == IRQ_TYPE_NONE) |
| @@ -630,10 +630,10 @@ static int ipic_set_irq_type(unsigned int virq, unsigned int flow_type) | |||
| 630 | if (flow_type & IRQ_TYPE_LEVEL_LOW) { | 630 | if (flow_type & IRQ_TYPE_LEVEL_LOW) { |
| 631 | desc->status |= IRQ_LEVEL; | 631 | desc->status |= IRQ_LEVEL; |
| 632 | desc->handle_irq = handle_level_irq; | 632 | desc->handle_irq = handle_level_irq; |
| 633 | desc->chip = &ipic_level_irq_chip; | 633 | desc->irq_data.chip = &ipic_level_irq_chip; |
| 634 | } else { | 634 | } else { |
| 635 | desc->handle_irq = handle_edge_irq; | 635 | desc->handle_irq = handle_edge_irq; |
| 636 | desc->chip = &ipic_edge_irq_chip; | 636 | desc->irq_data.chip = &ipic_edge_irq_chip; |
| 637 | } | 637 | } |
| 638 | 638 | ||
| 639 | /* only EXT IRQ senses are programmable on ipic | 639 | /* only EXT IRQ senses are programmable on ipic |
| @@ -661,19 +661,19 @@ static int ipic_set_irq_type(unsigned int virq, unsigned int flow_type) | |||
| 661 | /* level interrupts and edge interrupts have different ack operations */ | 661 | /* level interrupts and edge interrupts have different ack operations */ |
| 662 | static struct irq_chip ipic_level_irq_chip = { | 662 | static struct irq_chip ipic_level_irq_chip = { |
| 663 | .name = "IPIC", | 663 | .name = "IPIC", |
| 664 | .unmask = ipic_unmask_irq, | 664 | .irq_unmask = ipic_unmask_irq, |
| 665 | .mask = ipic_mask_irq, | 665 | .irq_mask = ipic_mask_irq, |
| 666 | .mask_ack = ipic_mask_irq, | 666 | .irq_mask_ack = ipic_mask_irq, |
| 667 | .set_type = ipic_set_irq_type, | 667 | .irq_set_type = ipic_set_irq_type, |
| 668 | }; | 668 | }; |
| 669 | 669 | ||
| 670 | static struct irq_chip ipic_edge_irq_chip = { | 670 | static struct irq_chip ipic_edge_irq_chip = { |
| 671 | .name = "IPIC", | 671 | .name = "IPIC", |
| 672 | .unmask = ipic_unmask_irq, | 672 | .irq_unmask = ipic_unmask_irq, |
| 673 | .mask = ipic_mask_irq, | 673 | .irq_mask = ipic_mask_irq, |
| 674 | .mask_ack = ipic_mask_irq_and_ack, | 674 | .irq_mask_ack = ipic_mask_irq_and_ack, |
| 675 | .ack = ipic_ack_irq, | 675 | .irq_ack = ipic_ack_irq, |
| 676 | .set_type = ipic_set_irq_type, | 676 | .irq_set_type = ipic_set_irq_type, |
| 677 | }; | 677 | }; |
| 678 | 678 | ||
| 679 | static int ipic_host_match(struct irq_host *h, struct device_node *node) | 679 | static int ipic_host_match(struct irq_host *h, struct device_node *node) |
