Commit 19446da4 authored by Alexander Couzens's avatar Alexander Couzens Committed by Ralf Baechle

MIPS: ATH79: Add irq chip ar7240-misc-intc

The ar7240 misc irq chip use ack handler
instead of ack_mask handler. All new ath79 chips use
the ar7240 misc irq chip
Signed-off-by: default avatarAlexander Couzens <lynxis@fe80.eu>
Acked-by: default avatarAlban Bedel <albeu@free.fr>
Acked-by: default avatarThomas Gleixner <tglx@linutronix.de>
Cc: linux-mips@linux-mips.org
Cc: Rob Herring <robh+dt@kernel.org>
Cc: Pawel Moll <pawel.moll@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Ian Campbell <ijc+devicetree@hellion.org.uk>
Cc: Kumar Gala <galak@codeaurora.org>
Cc: devicetree@vger.kernel.org
Cc: Jason Cooper <jason@lakedaemon.net>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/11164/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent 84dedd71
...@@ -4,8 +4,8 @@ The MISC interrupt controller is a secondary controller for lower priority ...@@ -4,8 +4,8 @@ The MISC interrupt controller is a secondary controller for lower priority
interrupt. interrupt.
Required Properties: Required Properties:
- compatible: has to be "qca,<soctype>-cpu-intc", "qca,ar7100-misc-intc" - compatible: has to be "qca,<soctype>-cpu-intc", "qca,ar7100-misc-intc" or
as fallback "qca,<soctype>-cpu-intc", "qca,ar7240-misc-intc"
- reg: Base address and size of the controllers memory area - reg: Base address and size of the controllers memory area
- interrupt-parent: phandle of the parent interrupt controller. - interrupt-parent: phandle of the parent interrupt controller.
- interrupts: Interrupt specifier for the controllers interrupt. - interrupts: Interrupt specifier for the controllers interrupt.
...@@ -13,6 +13,9 @@ Required Properties: ...@@ -13,6 +13,9 @@ Required Properties:
- #interrupt-cells : Specifies the number of cells needed to encode interrupt - #interrupt-cells : Specifies the number of cells needed to encode interrupt
source, should be 1 source, should be 1
Compatible fallback depends on the SoC. Use ar7100 for ar71xx and ar913x,
use ar7240 for all other SoCs.
Please refer to interrupts.txt in this directory for details of the common Please refer to interrupts.txt in this directory for details of the common
Interrupt Controllers bindings used by client devices. Interrupt Controllers bindings used by client devices.
...@@ -28,3 +31,16 @@ Example: ...@@ -28,3 +31,16 @@ Example:
interrupt-controller; interrupt-controller;
#interrupt-cells = <1>; #interrupt-cells = <1>;
}; };
Another example:
interrupt-controller@18060010 {
compatible = "qca,ar9331-misc-intc", qca,ar7240-misc-intc";
reg = <0x18060010 0x4>;
interrupt-parent = <&cpuintc>;
interrupts = <6>;
interrupt-controller;
#interrupt-cells = <1>;
};
...@@ -304,6 +304,16 @@ static int __init ar7100_misc_intc_of_init( ...@@ -304,6 +304,16 @@ static int __init ar7100_misc_intc_of_init(
IRQCHIP_DECLARE(ar7100_misc_intc, "qca,ar7100-misc-intc", IRQCHIP_DECLARE(ar7100_misc_intc, "qca,ar7100-misc-intc",
ar7100_misc_intc_of_init); ar7100_misc_intc_of_init);
static int __init ar7240_misc_intc_of_init(
struct device_node *node, struct device_node *parent)
{
ath79_misc_irq_chip.irq_ack = ar724x_misc_irq_ack;
return ath79_misc_intc_of_init(node, parent);
}
IRQCHIP_DECLARE(ar7240_misc_intc, "qca,ar7240-misc-intc",
ar7240_misc_intc_of_init);
static int __init ar79_cpu_intc_of_init( static int __init ar79_cpu_intc_of_init(
struct device_node *node, struct device_node *parent) struct device_node *node, struct device_node *parent)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment