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

Commit 2920bc9a authored by Rob Herring's avatar Rob Herring
Browse files

irqchip: versatile-fpga: Add IRQCHIP_DECLARE support



Add support for initialization using IRQCHIP_DECLARE. This also requires
that the controller initialization set the handle_irq function pointer
itself when it is a primary controller.

Signed-off-by: default avatarRob Herring <robh@kernel.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Jason Cooper <jason@lakedaemon.net>
Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
parent 0ba6c5d2
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -14,6 +14,8 @@
#include <asm/exception.h>
#include <asm/mach/irq.h>

#include "irqchip.h"

#define IRQ_STATUS		0x00
#define IRQ_RAW_STATUS		0x04
#define IRQ_ENABLE_SET		0x08
@@ -201,8 +203,10 @@ int __init fpga_irq_of_init(struct device_node *node,

	/* Some chips are cascaded from a parent IRQ */
	parent_irq = irq_of_parse_and_map(node, 0);
	if (!parent_irq)
	if (!parent_irq) {
		set_handle_irq(fpga_handle_irq);
		parent_irq = -1;
	}

	fpga_irq_init(base, node->name, 0, parent_irq, valid_mask, node);

@@ -211,4 +215,5 @@ int __init fpga_irq_of_init(struct device_node *node,

	return 0;
}
IRQCHIP_DECLARE(arm_fpga, "arm,versatile-fpga-irq", fpga_irq_of_init);
#endif