diff options
author | Paul Mundt <lethal@linux-sh.org> | 2010-10-27 02:42:10 -0400 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2010-10-27 02:42:10 -0400 |
commit | 26599a94dcadbed528a3e32a4f482a9766332f5b (patch) | |
tree | 11fff70fbef0971381399cd512beeaee74333a6e /drivers/sh/intc/virq.c | |
parent | 815db1477a2ce44d248a4ff853a2bef3616c7478 (diff) |
sh: intc: irq_data conversion.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'drivers/sh/intc/virq.c')
-rw-r--r-- | drivers/sh/intc/virq.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/sh/intc/virq.c b/drivers/sh/intc/virq.c index 643dfd4d2057..e5bf5d3c698e 100644 --- a/drivers/sh/intc/virq.c +++ b/drivers/sh/intc/virq.c | |||
@@ -83,11 +83,11 @@ EXPORT_SYMBOL_GPL(intc_irq_lookup); | |||
83 | static int add_virq_to_pirq(unsigned int irq, unsigned int virq) | 83 | static int add_virq_to_pirq(unsigned int irq, unsigned int virq) |
84 | { | 84 | { |
85 | struct intc_virq_list **last, *entry; | 85 | struct intc_virq_list **last, *entry; |
86 | struct irq_desc *desc = irq_to_desc(irq); | 86 | struct irq_data *data = irq_get_irq_data(irq); |
87 | 87 | ||
88 | /* scan for duplicates */ | 88 | /* scan for duplicates */ |
89 | last = (struct intc_virq_list **)&desc->handler_data; | 89 | last = (struct intc_virq_list **)&data->handler_data; |
90 | for_each_virq(entry, desc->handler_data) { | 90 | for_each_virq(entry, data->handler_data) { |
91 | if (entry->irq == virq) | 91 | if (entry->irq == virq) |
92 | return 0; | 92 | return 0; |
93 | last = &entry->next; | 93 | last = &entry->next; |
@@ -108,10 +108,12 @@ static int add_virq_to_pirq(unsigned int irq, unsigned int virq) | |||
108 | 108 | ||
109 | static void intc_virq_handler(unsigned int irq, struct irq_desc *desc) | 109 | static void intc_virq_handler(unsigned int irq, struct irq_desc *desc) |
110 | { | 110 | { |
111 | struct intc_virq_list *entry, *vlist = get_irq_data(irq); | 111 | struct irq_data *data = irq_get_irq_data(irq); |
112 | struct irq_chip *chip = irq_data_get_irq_chip(data); | ||
113 | struct intc_virq_list *entry, *vlist = irq_data_get_irq_data(data); | ||
112 | struct intc_desc_int *d = get_intc_desc(irq); | 114 | struct intc_desc_int *d = get_intc_desc(irq); |
113 | 115 | ||
114 | desc->chip->mask_ack(irq); | 116 | chip->irq_mask_ack(data); |
115 | 117 | ||
116 | for_each_virq(entry, vlist) { | 118 | for_each_virq(entry, vlist) { |
117 | unsigned long addr, handle; | 119 | unsigned long addr, handle; |
@@ -123,7 +125,7 @@ static void intc_virq_handler(unsigned int irq, struct irq_desc *desc) | |||
123 | generic_handle_irq(entry->irq); | 125 | generic_handle_irq(entry->irq); |
124 | } | 126 | } |
125 | 127 | ||
126 | desc->chip->unmask(irq); | 128 | chip->irq_unmask(data); |
127 | } | 129 | } |
128 | 130 | ||
129 | static unsigned long __init intc_subgroup_data(struct intc_subgroup *subgroup, | 131 | static unsigned long __init intc_subgroup_data(struct intc_subgroup *subgroup, |