mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [tip:irq/core] irqchip: sun7i/sun6i: Disable NMI before registering the handler
       [not found] <1395939759-11135-3-git-send-email-carlo@caione.org>
@ 2014-03-31  9:16 ` tip-bot for Hans de Goede
  0 siblings, 0 replies; only message in thread
From: tip-bot for Hans de Goede @ 2014-03-31  9:16 UTC (permalink / raw)
  To: linux-tip-commits; +Cc: linux-kernel, hpa, mingo, hdegoede, carlo, tglx

Commit-ID:  1b422ecd27866985b9f35d0d2b5ae6e9122dd4c0
Gitweb:     http://git.kernel.org/tip/1b422ecd27866985b9f35d0d2b5ae6e9122dd4c0
Author:     Hans de Goede <hdegoede@redhat.com>
AuthorDate: Thu, 27 Mar 2014 18:02:39 +0100
Committer:  Thomas Gleixner <tglx@linutronix.de>
CommitDate: Mon, 31 Mar 2014 11:12:57 +0200

irqchip: sun7i/sun6i: Disable NMI before registering the handler

It is advisable to disable the NMI before registering the IRQ handler as
registering the IRQ handler unmasks the IRQ on the GIC, so if U-Boot has
left the NMI enabled and the NMI pin is active we will immediately get
an interrupt before any driver has claimed the downstream interrupt of
the NMI.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Carlo Caione <carlo@caione.org>
Cc: maxime.ripard@free-electrons.com
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-sunxi@googlegroups.com
Link: http://lkml.kernel.org/r/1395939759-11135-3-git-send-email-carlo@caione.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
---
 drivers/irqchip/irq-sunxi-nmi.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/irqchip/irq-sunxi-nmi.c b/drivers/irqchip/irq-sunxi-nmi.c
index 1c8566c..12f547a 100644
--- a/drivers/irqchip/irq-sunxi-nmi.c
+++ b/drivers/irqchip/irq-sunxi-nmi.c
@@ -179,12 +179,12 @@ static int __init sunxi_sc_nmi_irq_init(struct device_node *node,
 	gc->chip_types[1].regs.type		= reg_offs->ctrl;
 	gc->chip_types[1].handler		= handle_edge_irq;
 
-	irq_set_handler_data(irq, domain);
-	irq_set_chained_handler(irq, sunxi_sc_nmi_handle_irq);
-
 	sunxi_sc_nmi_write(gc, reg_offs->enable, 0);
 	sunxi_sc_nmi_write(gc, reg_offs->pend, 0x1);
 
+	irq_set_handler_data(irq, domain);
+	irq_set_chained_handler(irq, sunxi_sc_nmi_handle_irq);
+
 	return 0;
 
 fail_irqd_remove:

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2014-03-31  9:16 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <1395939759-11135-3-git-send-email-carlo@caione.org>
2014-03-31  9:16 ` [tip:irq/core] irqchip: sun7i/sun6i: Disable NMI before registering the handler tip-bot for Hans de Goede

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome