summaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/l2c-common.c
diff options
context:
space:
mode:
authorRussell King <rmk+kernel@arm.linux.org.uk>2014-03-16 14:14:38 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2014-05-30 01:47:23 +0200
commit1f1d5b745a4617a2cb2ffd8f4a9bc3be664cfc98 (patch)
tree5b4525693a2f162fb39a2f1f245b16ea2c9bb33d /arch/arm/mm/l2c-common.c
parentARM: outer cache: add documentation of outer cache functions (diff)
downloadlinux-1f1d5b745a4617a2cb2ffd8f4a9bc3be664cfc98.tar.xz
linux-1f1d5b745a4617a2cb2ffd8f4a9bc3be664cfc98.zip
ARM: outer cache: add WARN_ON() to outer_disable()
Add WARN_ON() conditions to outer_disable() to ensure that its requirements aren't violated. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mm/l2c-common.c')
-rw-r--r--arch/arm/mm/l2c-common.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/arm/mm/l2c-common.c b/arch/arm/mm/l2c-common.c
new file mode 100644
index 000000000000..10a3cf28c362
--- /dev/null
+++ b/arch/arm/mm/l2c-common.c
@@ -0,0 +1,20 @@
+/*
+ * Copyright (C) 2010 ARM Ltd.
+ * Written by Catalin Marinas <catalin.marinas@arm.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ */
+#include <linux/bug.h>
+#include <linux/smp.h>
+#include <asm/outercache.h>
+
+void outer_disable(void)
+{
+ WARN_ON(!irqs_disabled());
+ WARN_ON(num_online_cpus() > 1);
+
+ if (outer_cache.disable)
+ outer_cache.disable();
+}