From: Colin Cross Date: Sun, 1 May 2011 22:27:34 +0000 (-0700) Subject: ARM: tegra: irq: Add tegra_eoi X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4bd66cfde5c3b6eced0da483c6357ae46d3adbb5;p=openwrt%2Fstaging%2Fblogic.git ARM: tegra: irq: Add tegra_eoi Implement irq_eoi to allow the GIC irq chip flow controller to be changed to fasteoi. Signed-off-by: Colin Cross --- diff --git a/arch/arm/mach-tegra/irq.c b/arch/arm/mach-tegra/irq.c index da1749108c7d..4956c3cea731 100644 --- a/arch/arm/mach-tegra/irq.c +++ b/arch/arm/mach-tegra/irq.c @@ -95,6 +95,14 @@ static void tegra_ack(struct irq_data *d) tegra_irq_write_mask(d->irq, ICTLR_CPU_IEP_FIR_CLR); } +static void tegra_eoi(struct irq_data *d) +{ + if (d->irq < FIRST_LEGACY_IRQ) + return; + + tegra_irq_write_mask(d->irq, ICTLR_CPU_IEP_FIR_CLR); +} + static int tegra_retrigger(struct irq_data *d) { if (d->irq < FIRST_LEGACY_IRQ) @@ -116,6 +124,7 @@ void __init tegra_init_irq(void) } gic_arch_extn.irq_ack = tegra_ack; + gic_arch_extn.irq_eoi = tegra_eoi; gic_arch_extn.irq_mask = tegra_mask; gic_arch_extn.irq_unmask = tegra_unmask; gic_arch_extn.irq_retrigger = tegra_retrigger;