linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: ccross@android.com (Colin Cross)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 09/15] ARM: tegra: irq: Implement retrigger
Date: Wed,  9 Feb 2011 22:43:18 -0800	[thread overview]
Message-ID: <1297320204-31882-10-git-send-email-ccross@android.com> (raw)
In-Reply-To: <1297320204-31882-1-git-send-email-ccross@android.com>

Signed-off-by: Colin Cross <ccross@android.com>
---
 arch/arm/mach-tegra/irq.c |   17 ++++++++++++++++-
 1 files changed, 16 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-tegra/irq.c b/arch/arm/mach-tegra/irq.c
index 7fb7349..dfbc219 100644
--- a/arch/arm/mach-tegra/irq.c
+++ b/arch/arm/mach-tegra/irq.c
@@ -48,6 +48,7 @@ static u32 tegra_lp0_wake_level_any;
 
 static void (*tegra_gic_mask_irq)(struct irq_data *d);
 static void (*tegra_gic_unmask_irq)(struct irq_data *d);
+static void (*tegra_gic_ack_irq)(struct irq_data *d);
 
 /* ensures that sufficient time is passed for a register write to
  * serialize into the 32KHz domain */
@@ -112,10 +113,24 @@ static void tegra_unmask(struct irq_data *d)
 	tegra_legacy_unmask_irq(d->irq);
 }
 
+static void tegra_ack(struct irq_data *d)
+{
+	tegra_legacy_force_irq_clr(d->irq);
+	tegra_gic_ack_irq(d);
+}
+
+static int tegra_retrigger(struct irq_data *d)
+{
+	tegra_legacy_force_irq_set(d->irq);
+	return 1;
+}
+
 static struct irq_chip tegra_irq = {
 	.name			= "PPI",
+	.irq_ack		= tegra_ack,
 	.irq_mask		= tegra_mask,
 	.irq_unmask		= tegra_unmask,
+	.irq_retrigger		= tegra_retrigger,
 };
 
 void __init tegra_init_irq(void)
@@ -132,7 +147,7 @@ void __init tegra_init_irq(void)
 	gic = get_irq_chip(29);
 	tegra_gic_unmask_irq = gic->irq_unmask;
 	tegra_gic_mask_irq = gic->irq_mask;
-	tegra_irq.irq_ack = gic->irq_ack;
+	tegra_gic_ack_irq = gic->irq_ack;
 #ifdef CONFIG_SMP
 	tegra_irq.irq_set_affinity = gic->irq_set_affinity;
 #endif
-- 
1.7.3.1

  parent reply	other threads:[~2011-02-10  6:43 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-10  6:43 [PATCH v4 00/22] Updates for Tegra support in 2.6.39 Colin Cross
2011-02-10  6:43 ` [PATCH v4 01/15] ARM: tegra: Centralize macros to define debug uart base Colin Cross
2011-02-10  6:43 ` [PATCH v4 02/15] ARM: tegra: Add api to control internal powergating Colin Cross
2011-02-10  6:43 ` [PATCH v4 03/15] ARM: tegra: irqs: Update irq list Colin Cross
2011-02-10  6:43 ` [PATCH v4 04/15] ARM: tegra: Add prototypes for subsystem suspend functions Colin Cross
2011-02-10  6:43 ` [PATCH v4 05/15] ARM: tegra: clock: Suspend fixes, and add new clocks Colin Cross
2011-02-10  6:43 ` [PATCH v4 06/15] ARM: tegra: pinmux: Add missing drive pingroups and fix suspend Colin Cross
2011-02-10  6:43 ` [PATCH v4 07/15] ARM: tegra: timer: Add idle and suspend support to timers Colin Cross
2011-02-10  6:43 ` [PATCH v4 08/15] ARM: tegra: irq: Add support for suspend wake sources Colin Cross
2011-02-10  6:43 ` Colin Cross [this message]
2011-02-10  6:43 ` [PATCH v4 10/15] ARM: tegra: iomap: Add missing devices, fix use of SZ_8, SZ_64 Colin Cross
2011-02-10 16:45   ` Stephen Warren
2011-02-11  1:44     ` Colin Cross
2011-02-10  6:43 ` [PATCH v4 11/15] ARM: tegra: cpufreq: Disable cpufreq during suspend Colin Cross
2011-02-10  6:43 ` [PATCH v4 12/15] ARM: tegra: Allow overriding arch_reset Colin Cross
2011-02-10  6:43 ` [PATCH v4 13/15] ARM: tegra: dma: Fix critical data corruption bugs Colin Cross
2011-02-10  6:43 ` [PATCH v4 14/15] ARM: tegra: add tegra_defconfig Colin Cross
2011-02-10  6:43 ` [PATCH v4 15/15] ARM: tegra: Use writel_relaxed in tegra_init_cache Colin Cross
2011-02-12  8:52 ` [PATCH v4 00/22] Updates for Tegra support in 2.6.39 Colin Cross

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1297320204-31882-10-git-send-email-ccross@android.com \
    --to=ccross@android.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).