summaryrefslogtreecommitdiffstats
path: root/arch/arm/cpu/cpu.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2018-03-09 15:11:53 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2018-03-21 12:23:01 +0100
commit1bcae8275dc8a5c750b05bdd6811007f300986ee (patch)
treec2696eb21a8508e5791d911f5e2e4c27e3ea2983 /arch/arm/cpu/cpu.c
parente697222e86e9fb6b5bcb1926bbb113a662dfa70f (diff)
downloadbarebox-1bcae8275dc8a5c750b05bdd6811007f300986ee.tar.gz
barebox-1bcae8275dc8a5c750b05bdd6811007f300986ee.tar.xz
ARM: shutdown: Fix compiler warning
On aarch64 we get a unused variable warning. Move the variable declaration into the #ifdef where the variable is used. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/arm/cpu/cpu.c')
-rw-r--r--arch/arm/cpu/cpu.c28
1 files changed, 17 insertions, 11 deletions
diff --git a/arch/arm/cpu/cpu.c b/arch/arm/cpu/cpu.c
index bf604fd60d..0e70a23260 100644
--- a/arch/arm/cpu/cpu.c
+++ b/arch/arm/cpu/cpu.c
@@ -89,6 +89,22 @@ void mmu_disable(void)
}
#endif
+static void disable_interrupts(void)
+{
+#if __LINUX_ARM_ARCH__ <= 7
+ uint32_t r;
+
+ /*
+ * barebox normally does not use interrupts, but some functionalities
+ * (eg. OMAP4_USBBOOT) require them enabled. So be sure interrupts are
+ * disabled before exiting.
+ */
+ __asm__ __volatile__("mrs %0, cpsr" : "=r"(r));
+ r |= PSR_I_BIT;
+ __asm__ __volatile__("msr cpsr, %0" : : "r"(r));
+#endif
+}
+
/**
* Disable MMU and D-cache, flush caches
* @return 0 (always)
@@ -98,23 +114,13 @@ void mmu_disable(void)
*/
static void arch_shutdown(void)
{
- uint32_t r;
#ifdef CONFIG_MMU
mmu_disable();
#endif
icache_invalidate();
-#if __LINUX_ARM_ARCH__ <= 7
- /*
- * barebox normally does not use interrupts, but some functionalities
- * (eg. OMAP4_USBBOOT) require them enabled. So be sure interrupts are
- * disabled before exiting.
- */
- __asm__ __volatile__("mrs %0, cpsr" : "=r"(r));
- r |= PSR_I_BIT;
- __asm__ __volatile__("msr cpsr, %0" : : "r"(r));
-#endif
+ disable_interrupts();
}
archshutdown_exitcall(arch_shutdown);