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

Commit c05012ce authored by Jamie Iles's avatar Jamie Iles Committed by Marc Zyngier
Browse files

ARM: picoxcell: convert to MULTI_IRQ_HANDLER



Now that there is a generic IRQ handler for multiple VIC devices use it
for picoxcell to help building multi platform kernels.

Signed-off-by: default avatarJamie Iles <jamie@jamieiles.com>
parent bb3a4ebe
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -652,6 +652,7 @@ config ARCH_PICOXCELL
	select GENERIC_GPIO
	select HAVE_SCHED_CLOCK
	select HAVE_TCM
	select MULTI_IRQ_HANDLER
	select NO_IOPORT
	select USE_OF
	help
+4 −5
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@
#include <linux/irqdomain.h>
#include <linux/of.h>
#include <linux/of_address.h>
#include <linux/of_irq.h>
#include <linux/of_platform.h>

#include <asm/mach/arch.h>
@@ -33,22 +34,20 @@ static const char *picoxcell_dt_match[] = {
};

static const struct of_device_id vic_of_match[] __initconst = {
	{ .compatible = "arm,pl192-vic" },
	{ .compatible = "arm,pl192-vic", .data = vic_of_init, },
	{ /* Sentinel */ }
};

static void __init picoxcell_init_irq(void)
{
	vic_init(IO_ADDRESS(PICOXCELL_VIC0_BASE), 0, ~0, 0);
	vic_init(IO_ADDRESS(PICOXCELL_VIC1_BASE), 32, ~0, 0);
	irq_domain_generate_simple(vic_of_match, PICOXCELL_VIC0_BASE, 0);
	irq_domain_generate_simple(vic_of_match, PICOXCELL_VIC1_BASE, 32);
	of_irq_init(vic_of_match);
}

DT_MACHINE_START(PICOXCELL, "Picochip picoXcell")
	.map_io		= picoxcell_map_io,
	.nr_irqs	= ARCH_NR_IRQS,
	.init_irq	= picoxcell_init_irq,
	.handle_irq	= vic_handle_irq,
	.timer		= &picoxcell_timer,
	.init_machine	= picoxcell_init_machine,
	.dt_compat	= picoxcell_dt_match,
+4 −7
Original line number Diff line number Diff line
@@ -9,11 +9,8 @@
 * License version 2. This program is licensed "as is" without any
 * warranty of any kind, whether express or implied.
 */
#include <mach/hardware.h>
#include <mach/irqs.h>
#include <mach/map.h>
	.macro  disable_fiq
	.endm

#define VA_VIC0		IO_ADDRESS(PICOXCELL_VIC0_BASE)
#define VA_VIC1		IO_ADDRESS(PICOXCELL_VIC1_BASE)

#include <asm/entry-macro-vic2.S>
	.macro  arch_ret_to_user, tmp1, tmp2
	.endm