aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/include/asm
diff options
context:
space:
mode:
authorColin Cross <ccross@android.com>2011-09-25 19:56:53 -0700
committerColin Cross <ccross@android.com>2011-09-25 19:59:49 -0700
commit62fc97640e032c0e5eeff026cfba18dcf9a0ea86 (patch)
tree1f7c689d5c1b0c2d62a7a1086c426a201e6f92d7 /arch/arm/include/asm
parent65e4c72b3cf5d0999344e32c51492a5fdd136006 (diff)
downloadkernel_samsung_tuna-62fc97640e032c0e5eeff026cfba18dcf9a0ea86.zip
kernel_samsung_tuna-62fc97640e032c0e5eeff026cfba18dcf9a0ea86.tar.gz
kernel_samsung_tuna-62fc97640e032c0e5eeff026cfba18dcf9a0ea86.tar.bz2
ARM: add touch_nmi_watchdog
Add touch_nmi_watchdog, which gets called during long operations with interrupts off like sysrq-t. Call an atomic notifier chain, which can pet the watchdog if necessary. Change-Id: I1c7ba5230a2cca54625a089085d479a4758ce9be Signed-off-by: Colin Cross <ccross@android.com>
Diffstat (limited to 'arch/arm/include/asm')
-rw-r--r--arch/arm/include/asm/irq.h2
-rw-r--r--arch/arm/include/asm/nmi.h14
2 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/include/asm/irq.h b/arch/arm/include/asm/irq.h
index 2721a58..904d0d2 100644
--- a/arch/arm/include/asm/irq.h
+++ b/arch/arm/include/asm/irq.h
@@ -3,6 +3,8 @@
#include <mach/irqs.h>
+#define ARCH_HAS_NMI_WATCHDOG
+
#ifndef irq_canonicalize
#define irq_canonicalize(i) (i)
#endif
diff --git a/arch/arm/include/asm/nmi.h b/arch/arm/include/asm/nmi.h
new file mode 100644
index 0000000..3cf8bdf
--- /dev/null
+++ b/arch/arm/include/asm/nmi.h
@@ -0,0 +1,14 @@
+#ifndef __ASM_ARM_NMI_H_
+#define __ASM_ARM_NMI_H_
+
+#include <linux/notifier.h>
+
+extern struct atomic_notifier_head touch_watchdog_notifier_head;
+
+static inline void touch_nmi_watchdog(void)
+{
+ atomic_notifier_call_chain(&touch_watchdog_notifier_head, 0, 0);
+ touch_softlockup_watchdog();
+}
+
+#endif /* __ASM_ARM_NMI_H_ */