RE: [PATCH 1/4] irqchip: sifive: Support hierarchy irq domain
From: Yash Shah <hidden>
Date: 2019-11-18 07:14:34
Also in:
linux-gpio, linux-riscv, lkml
-----Original Message----- From: Marc Zyngier <maz@kernel.org> Sent: 12 November 2019 18:13 To: Yash Shah <redacted> Cc: linus.walleij@linaro.org; bgolaszewski@baylibre.com; robh+dt@kernel.org; mark.rutland@arm.com; palmer@dabbelt.com; Paul Walmsley ( Sifive) [off-list ref]; aou@eecs.berkeley.edu; tglx@linutronix.de; jason@lakedaemon.net; bmeng.cn@gmail.com; atish.patra@wdc.com; Sagar Kadam [off-list ref]; linux- gpio@vger.kernel.org; devicetree@vger.kernel.org; linux- riscv@lists.infradead.org; linux-kernel@vger.kernel.org; Sachin Ghadi [off-list ref] Subject: Re: [PATCH 1/4] irqchip: sifive: Support hierarchy irq domain On 2019-11-12 13:21, Yash Shah wrote:quoted
Add support for hierarchy irq domains. This is needed as pre-requisite for gpio-sifive driver. Signed-off-by: Yash Shah <redacted> --- drivers/irqchip/Kconfig | 1 + drivers/irqchip/irq-sifive-plic.c | 41 +++++++++++++++++++++++++++++++++++---- 2 files changed, 38 insertions(+), 4 deletions(-)diff --git a/drivers/irqchip/Kconfig b/drivers/irqchip/Kconfig indexccbb897..a398552 100644--- a/drivers/irqchip/Kconfig +++ b/drivers/irqchip/Kconfig@@ -488,6 +488,7 @@ endmenu config SIFIVE_PLIC bool "SiFive Platform-Level Interrupt Controller" depends on RISCV + select IRQ_DOMAIN_HIERARCHY help
...
quoted
+static int plic_irq_domain_translate(struct irq_domain *d, + struct irq_fwspec *fwspec, + unsigned long *hwirq, unsigned int *type){quoted
+ if (WARN_ON(fwspec->param_count < 1)) + return -EINVAL; + *hwirq = fwspec->param[0]; + *type = IRQ_TYPE_NONE; + return 0; +}This is actually what should be called irq_domain_translate_onecell(). Consider implementing that instead, and using it in this driver. I'm pretty sure other drivers could use it (I spotted irq-nvic.c).
Sure, will implement irq_domain_translate_onecell() and use that instead. Thanks for your comments! - Yash
quoted
static struct irq_domain *plic_irqdomain;Otherwise, looks OK. Thanks, M. -- Jazz is not dead. It just smells funny...