Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 69ce4b22 authored by Paul Burton's avatar Paul Burton Committed by Ralf Baechle
Browse files

MIPS: JZ4740: parse SoC interrupt controller parent IRQ from DT



Rather than hardcoding the IRQ number used to cascade interrupts from
the SoC interrupt controller to the CPU interrupt controller, read that
IRQ number from the DT describing the system.

Signed-off-by: default avatarPaul Burton <paul.burton@imgtec.com>
Cc: Lars-Peter Clausen <lars@metafoo.de>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Cc: Brian Norris <computersforpeace@gmail.com>
Patchwork: https://patchwork.linux-mips.org/patch/10137/


Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent adbdce77
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -85,6 +85,11 @@ static int __init jz4740_intc_of_init(struct device_node *node,
{
	struct irq_chip_generic *gc;
	struct irq_chip_type *ct;
	int parent_irq;

	parent_irq = irq_of_parse_and_map(node, 0);
	if (!parent_irq)
		return -EINVAL;

	jz_intc_base = ioremap(JZ4740_INTC_BASE_ADDR, 0x14);

@@ -108,7 +113,7 @@ static int __init jz4740_intc_of_init(struct device_node *node,

	irq_setup_generic_chip(gc, IRQ_MSK(32), 0, 0, IRQ_NOPROBE | IRQ_LEVEL);

	setup_irq(2, &jz4740_cascade_action);
	setup_irq(parent_irq, &jz4740_cascade_action);
	return 0;
}
IRQCHIP_DECLARE(jz4740_intc, "ingenic,jz4740-intc", jz4740_intc_of_init);