aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/sh
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/sh')
-rw-r--r--drivers/sh/intc.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/sh/intc.c b/drivers/sh/intc.c
index d5d7f23c19a5..926013bece12 100644
--- a/drivers/sh/intc.c
+++ b/drivers/sh/intc.c
@@ -658,6 +658,10 @@ static void __init intc_register_irq(struct intc_desc *desc,
658 658
659 if (desc->ack_regs) 659 if (desc->ack_regs)
660 ack_handle[irq] = intc_ack_data(desc, d, enum_id); 660 ack_handle[irq] = intc_ack_data(desc, d, enum_id);
661
662#ifdef CONFIG_ARM
663 set_irq_flags(irq, IRQF_VALID); /* Enable IRQ on ARM systems */
664#endif
661} 665}
662 666
663static unsigned int __init save_reg(struct intc_desc_int *d, 667static unsigned int __init save_reg(struct intc_desc_int *d,
@@ -902,8 +906,12 @@ static unsigned int create_irq_on_node(unsigned int irq_want, int node)
902out_unlock: 906out_unlock:
903 spin_unlock_irqrestore(&vector_lock, flags); 907 spin_unlock_irqrestore(&vector_lock, flags);
904 908
905 if (irq > 0) 909 if (irq > 0) {
906 dynamic_irq_init(irq); 910 dynamic_irq_init(irq);
911#ifdef CONFIG_ARM
912 set_irq_flags(irq, IRQF_VALID); /* Enable IRQ on ARM systems */
913#endif
914 }
907 915
908 return irq; 916 return irq;
909} 917}