Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1377821
| From | Vineet Gupta <Vineet.Gupta1@synopsys.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH v4 5/5] ARC: [intc-*] switch to linear domain |
| Date | 2016-04-13 13:50 +0200 |
| Message-ID | <rnrt0-BH-19@gated-at.bofh.it> (permalink) |
| References | <rnrt0-BH-15@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
Now that we have Timers probed from DT, don't need legacy domain
This however requires mapping to be called explicitly for the IRQ which
still can't (and probably never) be probed from DT such as IPI and
SOFTIRQ
Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
---
arch/arc/kernel/intc-arcv2.c | 8 ++++++--
arch/arc/kernel/intc-compact.c | 2 +-
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/arch/arc/kernel/intc-arcv2.c b/arch/arc/kernel/intc-arcv2.c
index 592cc977151e..6c24faf48b16 100644
--- a/arch/arc/kernel/intc-arcv2.c
+++ b/arch/arc/kernel/intc-arcv2.c
@@ -146,8 +146,7 @@ init_onchip_IRQ(struct device_node *intc, struct device_node *parent)
if (parent)
panic("DeviceTree incore intc not a root irq controller\n");
- root_domain = irq_domain_add_legacy(intc, NR_CPU_IRQS, 0, 0,
- &arcv2_irq_ops, NULL);
+ root_domain = irq_domain_add_linear(intc, NR_CPU_IRQS, &arcv2_irq_ops, NULL);
if (!root_domain)
panic("root irq domain not avail\n");
@@ -157,6 +156,11 @@ init_onchip_IRQ(struct device_node *intc, struct device_node *parent)
*/
irq_set_default_host(root_domain);
+#ifdef CONFIG_SMP
+ irq_create_mapping(root_domain, IPI_IRQ);
+#endif
+ irq_create_mapping(root_domain, SOFTIRQ_IRQ);
+
return 0;
}
diff --git a/arch/arc/kernel/intc-compact.c b/arch/arc/kernel/intc-compact.c
index 48a8b24de23e..c5cceca36118 100644
--- a/arch/arc/kernel/intc-compact.c
+++ b/arch/arc/kernel/intc-compact.c
@@ -105,7 +105,7 @@ init_onchip_IRQ(struct device_node *intc, struct device_node *parent)
if (parent)
panic("DeviceTree incore intc not a root irq controller\n");
- root_domain = irq_domain_add_legacy(intc, NR_CPU_IRQS, 0, 0,
+ root_domain = irq_domain_add_linear(intc, NR_CPU_IRQS,
&arc_intc_domain_ops, NULL);
if (!root_domain)
panic("root irq domain not avail\n");
--
2.5.0
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v4 0/5] Modernize ARC clocksource/clockevent/intc drivers Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-13 13:50 +0200
[PATCH v4 5/5] ARC: [intc-*] switch to linear domain Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-13 13:50 +0200
[PATCH v4 3/5] ARC: irq: export some IRQs again Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-13 13:50 +0200
[PATCH v4 4/5] ARC: [intc-*] Do a domain lookup in primary handler for hwirq -> linux virq Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-13 13:50 +0200
[PATCH v4 1/5] ARC: clockevent: DT based probe Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-13 13:50 +0200
Re: [PATCH v4 1/5] ARC: clockevent: DT based probe Daniel Lezcano <daniel.lezcano@linaro.org> - 2016-04-13 15:00 +0200
Re: [PATCH v4 1/5] ARC: clockevent: DT based probe Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-14 11:40 +0200
Re: [PATCH v4 1/5] ARC: clockevent: DT based probe Daniel Lezcano <daniel.lezcano@linaro.org> - 2016-04-14 12:10 +0200
[PATCH v4 2/5] ARC: clocksource: DT based probe Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-13 13:50 +0200
Re: [PATCH v4 2/5] ARC: clocksource: DT based probe Marc Zyngier <marc.zyngier@arm.com> - 2016-04-13 18:30 +0200
Re: [PATCH v4 2/5] ARC: clocksource: DT based probe Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-14 11:30 +0200
Re: [PATCH v4 2/5] ARC: clocksource: DT based probe Vineet Gupta <Vineet.Gupta1@synopsys.com> - 2016-04-14 11:40 +0200
Re: [PATCH v4 2/5] ARC: clocksource: DT based probe Marc Zyngier <marc.zyngier@arm.com> - 2016-04-14 11:40 +0200
csiph-web