Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751703AbcDRJle (ORCPT ); Mon, 18 Apr 2016 05:41:34 -0400 Received: from foss.arm.com ([217.140.101.70]:60712 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750849AbcDRJld (ORCPT ); Mon, 18 Apr 2016 05:41:33 -0400 Subject: Re: [PATCH v4 5/5] ARC: [intc-*] switch to linear domain To: Vineet Gupta References: <1460547605-26184-1-git-send-email-vgupta@synopsys.com> <1460547605-26184-6-git-send-email-vgupta@synopsys.com> <5714840B.5080309@synopsys.com> Cc: Thomas Gleixner , Jason Cooper , Daniel Lezcano , linux-snps-arc@lists.infradead.org, linux-kernel@vger.kernel.org, Noam Camus From: Marc Zyngier Organization: ARM Ltd Message-ID: <5714ABC9.7060305@arm.com> Date: Mon, 18 Apr 2016 10:41:29 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Icedove/38.7.0 MIME-Version: 1.0 In-Reply-To: <5714840B.5080309@synopsys.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2378 Lines: 68 On 18/04/16 07:51, Vineet Gupta wrote: > Hi Marc, > > On Wednesday 13 April 2016 05:10 PM, Vineet Gupta wrote: >> 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 >> --- >> 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"); >> > > Does this patch look ok to you ? Do you want to see any other improvements here. Decoupling HW irqs from Linux irqs is a major progress, so for that: Acked-by: Marc Zyngier Thanks, M. -- Jazz is not dead. It just smells funny...