aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/sh/intc
diff options
context:
space:
mode:
authorJiri Kosina <jkosina@suse.cz>2015-09-01 09:35:24 -0400
committerJiri Kosina <jkosina@suse.cz>2015-09-01 09:35:24 -0400
commit067e2601d3c076abbf45db91261f9065eaa879b2 (patch)
tree86c8d4b913873dbd3b4ff23562a3a8597984b4df /drivers/sh/intc
parent3e097d1271ecdff2f251a54ddfc5eaa1f9821e96 (diff)
parent931830aa5c251e0803523213428f777a48bde254 (diff)
Merge branch 'for-4.3/gembird' into for-linus
Diffstat (limited to 'drivers/sh/intc')
-rw-r--r--drivers/sh/intc/core.c5
-rw-r--r--drivers/sh/intc/virq.c3
2 files changed, 5 insertions, 3 deletions
diff --git a/drivers/sh/intc/core.c b/drivers/sh/intc/core.c
index 81f22980b2de..156b790072b4 100644
--- a/drivers/sh/intc/core.c
+++ b/drivers/sh/intc/core.c
@@ -366,8 +366,9 @@ int __init register_intc_controller(struct intc_desc *desc)
366 366
367 /* redirect this interrupts to the first one */ 367 /* redirect this interrupts to the first one */
368 irq_set_chip(irq2, &dummy_irq_chip); 368 irq_set_chip(irq2, &dummy_irq_chip);
369 irq_set_chained_handler(irq2, intc_redirect_irq); 369 irq_set_chained_handler_and_data(irq2,
370 irq_set_handler_data(irq2, (void *)irq); 370 intc_redirect_irq,
371 (void *)irq);
371 } 372 }
372 } 373 }
373 374
diff --git a/drivers/sh/intc/virq.c b/drivers/sh/intc/virq.c
index f30ac9354ff2..f5f1b821241a 100644
--- a/drivers/sh/intc/virq.c
+++ b/drivers/sh/intc/virq.c
@@ -243,8 +243,9 @@ restart:
243 */ 243 */
244 irq_set_nothread(irq); 244 irq_set_nothread(irq);
245 245
246 irq_set_chained_handler(entry->pirq, intc_virq_handler); 246 /* Set handler data before installing the handler */
247 add_virq_to_pirq(entry->pirq, irq); 247 add_virq_to_pirq(entry->pirq, irq);
248 irq_set_chained_handler(entry->pirq, intc_virq_handler);
248 249
249 radix_tree_tag_clear(&d->tree, entry->enum_id, 250 radix_tree_tag_clear(&d->tree, entry->enum_id,
250 INTC_TAG_VIRQ_NEEDS_ALLOC); 251 INTC_TAG_VIRQ_NEEDS_ALLOC);