arm1136/arm1176: Merge cache handling code
authorAlexander Stein <alexanders83@web.de>
Fri, 24 Jul 2015 07:22:10 +0000 (09:22 +0200)
committerLothar Waßmann <LW@KARO-electronics.de>
Thu, 10 Sep 2015 06:25:46 +0000 (08:25 +0200)
As both cores are similar merge the cache handling code for both CPUs
to arm11 directory.

Signed-off-by: Alexander Stein <alexanders83@web.de>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Tested-by: Stephen Warren <swarren@wwwdotorg.org>
[trini: Add hunk to arch/arm/cpu/arm1136/Makefile]
Signed-off-by: Tom Rini <trini@konsulko.com>
arch/arm/cpu/arm11/Makefile [new file with mode: 0644]
arch/arm/cpu/arm11/cpu.c [moved from arch/arm/cpu/arm1136/cpu.c with 100% similarity]
arch/arm/cpu/arm1136/Makefile
arch/arm/cpu/arm1176/Makefile
arch/arm/cpu/arm1176/cpu.c [deleted file]

diff --git a/arch/arm/cpu/arm11/Makefile b/arch/arm/cpu/arm11/Makefile
new file mode 100644 (file)
index 0000000..2379b0f
--- /dev/null
@@ -0,0 +1,8 @@
+#
+# (C) Copyright 2000-2006
+# Wolfgang Denk, DENX Software Engineering, wd@denx.de.
+#
+# SPDX-License-Identifier:     GPL-2.0+
+#
+
+obj-y  = cpu.o
index d2b4898..6a0b8a2 100644 (file)
@@ -6,7 +6,7 @@
 #
 
 extra-y        = start.o
-obj-y  = cpu.o
 
+obj-y += ../arm11/
 obj-$(CONFIG_SOC_MX31) += mx31/
 obj-$(CONFIG_SOC_MX35) += mx35/
index 480e130..cd6dc9c 100644 (file)
@@ -8,7 +8,7 @@
 # SPDX-License-Identifier:     GPL-2.0+
 #
 
+obj- += dummy.o
 extra-y        = start.o
-obj-y  = cpu.o
 
-obj-$(CONFIG_BCM2835) += bcm2835/
+obj-y += ../arm11/
diff --git a/arch/arm/cpu/arm1176/cpu.c b/arch/arm/cpu/arm1176/cpu.c
deleted file mode 100644 (file)
index 2d81651..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * (C) Copyright 2004 Texas Insturments
- *
- * (C) Copyright 2002
- * Sysgo Real-Time Solutions, GmbH <www.elinos.com>
- * Marius Groeger <mgroeger@sysgo.de>
- *
- * (C) Copyright 2002
- * Gary Jennejohn, DENX Software Engineering, <garyj@denx.de>
- *
- * SPDX-License-Identifier:    GPL-2.0+
- */
-
-/*
- * CPU specific code
- */
-
-#include <common.h>
-#include <command.h>
-#include <asm/system.h>
-
-static void cache_flush (void);
-
-int cleanup_before_linux (void)
-{
-       /*
-        * this function is called just before we call linux
-        * it prepares the processor for linux
-        *
-        * we turn off caches etc ...
-        */
-
-       disable_interrupts ();
-
-       /* turn off I/D-cache */
-       icache_disable();
-       dcache_disable();
-       /* flush I/D-cache */
-       cache_flush();
-
-       return 0;
-}
-
-/* flush I/D-cache */
-static void cache_flush (void)
-{
-       /* invalidate both caches and flush btb */
-       asm ("mcr p15, 0, %0, c7, c7, 0": :"r" (0));
-       /* mem barrier to sync things */
-       asm ("mcr p15, 0, %0, c7, c10, 4": :"r" (0));
-}