[POWERPC] Add powerpc/platforms/44x, disable platforms/4xx for now
authorDavid Gibson <david@gibson.dropbear.id.au>
Tue, 8 May 2007 02:59:30 +0000 (12:59 +1000)
committerPaul Mackerras <paulus@samba.org>
Tue, 8 May 2007 04:43:59 +0000 (14:43 +1000)
This prepares for Ebony/440 support by creating an
arch/powerpc/platforms/44x directory.  It is populated with a single
misc_44x.S file, into which is moved the 44x specific reset code from
head_44x.S (on the grounds that we should really stop clogging up the
head_* files with random asm helper routines).

At the same time, we disable the (empty save Kconfig and Makefile)
arch/powerpc/platforms/4xx directory from the arch/powerpc/platforms
Makefile.  Contrary to the comment in
arch/powerpc/platforms/4xx/Makefile, attempting to build such an empty
Makefile will fail, thus breaking compile for the 44x platforms we're
about to add.  It can go back in once we start porting some of the 40x
platforms (and thus it becomes non-empty).

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
arch/powerpc/kernel/head_44x.S
arch/powerpc/platforms/44x/44x.h [new file with mode: 0644]
arch/powerpc/platforms/44x/Makefile [new file with mode: 0644]
arch/powerpc/platforms/44x/misc_44x.S [new file with mode: 0644]
arch/powerpc/platforms/Makefile

index 9ee6773cf026b771080e937f31899025002f8525..a51026f0a9d7104c3bcc469af60c6256964b69fc 100644 (file)
@@ -709,16 +709,6 @@ _GLOBAL(giveup_fpu)
        blr
 #endif
 
-/*
- * extern void abort(void)
- *
- * At present, this routine just applies a system reset.
- */
-_GLOBAL(abort)
-        mfspr   r13,SPRN_DBCR0
-        oris    r13,r13,DBCR0_RST_SYSTEM@h
-        mtspr   SPRN_DBCR0,r13
-
 _GLOBAL(set_context)
 
 #ifdef CONFIG_BDI_SWITCH
diff --git a/arch/powerpc/platforms/44x/44x.h b/arch/powerpc/platforms/44x/44x.h
new file mode 100644 (file)
index 0000000..45f24b1
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef __POWERPC_PLATFORMS_44X_44X_H
+#define __POWERPC_PLATFORMS_44X_44X_H
+
+extern void ppc44x_reset_system(char *cmd);
+
+#endif /* __POWERPC_PLATFORMS_44X_44X_H */
diff --git a/arch/powerpc/platforms/44x/Makefile b/arch/powerpc/platforms/44x/Makefile
new file mode 100644 (file)
index 0000000..575fdde
--- /dev/null
@@ -0,0 +1 @@
+obj-$(CONFIG_44x)      := misc_44x.o
diff --git a/arch/powerpc/platforms/44x/misc_44x.S b/arch/powerpc/platforms/44x/misc_44x.S
new file mode 100644 (file)
index 0000000..52bde71
--- /dev/null
@@ -0,0 +1,26 @@
+/*
+ * This file contains miscellaneous low-level functions for PPC 44x.
+ *    Copyright 2007 David Gibson <dwg@au1.ibm.com>, IBM Corporation.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version
+ * 2 of the License, or (at your option) any later version.
+ *
+ */
+
+#include <asm/reg.h>
+#include <asm/ppc_asm.h>
+
+       .text
+
+/*
+ * void ppc44x_reset_system(char *cmd)
+ *
+ * At present, this routine just applies a system reset.
+ */
+_GLOBAL(ppc44x_reset_system)
+       mfspr   r13,SPRN_DBCR0
+       oris    r13,r13,DBCR0_RST_SYSTEM@h
+       mtspr   SPRN_DBCR0,r13
+       b       .                       /* Just in case the reset doesn't work */
index 452004283f1707b31625428f93da4ddc39fcafcf..d6e041a46d25ee21e148a1ef153d2e04f6fcee5d 100644 (file)
@@ -6,7 +6,8 @@ obj-$(CONFIG_PPC_PMAC)          += powermac/
 endif
 endif
 obj-$(CONFIG_PPC_CHRP)         += chrp/
-obj-$(CONFIG_4xx)              += 4xx/
+#obj-$(CONFIG_4xx)             += 4xx/
+obj-$(CONFIG_44x)              += 44x/
 obj-$(CONFIG_PPC_MPC52xx)      += 52xx/
 obj-$(CONFIG_PPC_8xx)          += 8xx/
 obj-$(CONFIG_PPC_82xx)         += 82xx/