aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Gibson <david@gibson.dropbear.id.au>2007-05-07 22:59:30 -0400
committerPaul Mackerras <paulus@samba.org>2007-05-08 00:43:59 -0400
commit2cd976477035716af52a6eff6625f32e5813c02b (patch)
tree56a725e3c27afef3eabb227256236635025a0470
parent05af7bd2d75e5098021864d83fbb831111755fa0 (diff)
[POWERPC] Add powerpc/platforms/44x, disable platforms/4xx for now
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>
-rw-r--r--arch/powerpc/kernel/head_44x.S10
-rw-r--r--arch/powerpc/platforms/44x/44x.h6
-rw-r--r--arch/powerpc/platforms/44x/Makefile1
-rw-r--r--arch/powerpc/platforms/44x/misc_44x.S26
-rw-r--r--arch/powerpc/platforms/Makefile3
5 files changed, 35 insertions, 11 deletions
diff --git a/arch/powerpc/kernel/head_44x.S b/arch/powerpc/kernel/head_44x.S
index 9ee6773cf026..a51026f0a9d7 100644
--- a/arch/powerpc/kernel/head_44x.S
+++ b/arch/powerpc/kernel/head_44x.S
@@ -709,16 +709,6 @@ _GLOBAL(giveup_fpu)
709 blr 709 blr
710#endif 710#endif
711 711
712/*
713 * extern void abort(void)
714 *
715 * At present, this routine just applies a system reset.
716 */
717_GLOBAL(abort)
718 mfspr r13,SPRN_DBCR0
719 oris r13,r13,DBCR0_RST_SYSTEM@h
720 mtspr SPRN_DBCR0,r13
721
722_GLOBAL(set_context) 712_GLOBAL(set_context)
723 713
724#ifdef CONFIG_BDI_SWITCH 714#ifdef CONFIG_BDI_SWITCH
diff --git a/arch/powerpc/platforms/44x/44x.h b/arch/powerpc/platforms/44x/44x.h
new file mode 100644
index 000000000000..45f24b166f4d
--- /dev/null
+++ b/arch/powerpc/platforms/44x/44x.h
@@ -0,0 +1,6 @@
1#ifndef __POWERPC_PLATFORMS_44X_44X_H
2#define __POWERPC_PLATFORMS_44X_44X_H
3
4extern void ppc44x_reset_system(char *cmd);
5
6#endif /* __POWERPC_PLATFORMS_44X_44X_H */
diff --git a/arch/powerpc/platforms/44x/Makefile b/arch/powerpc/platforms/44x/Makefile
new file mode 100644
index 000000000000..575fdde5c905
--- /dev/null
+++ b/arch/powerpc/platforms/44x/Makefile
@@ -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
index 000000000000..52bde71485bd
--- /dev/null
+++ b/arch/powerpc/platforms/44x/misc_44x.S
@@ -0,0 +1,26 @@
1/*
2 * This file contains miscellaneous low-level functions for PPC 44x.
3 * Copyright 2007 David Gibson <dwg@au1.ibm.com>, IBM Corporation.
4 *
5 * This program is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU General Public License
7 * as published by the Free Software Foundation; either version
8 * 2 of the License, or (at your option) any later version.
9 *
10 */
11
12#include <asm/reg.h>
13#include <asm/ppc_asm.h>
14
15 .text
16
17/*
18 * void ppc44x_reset_system(char *cmd)
19 *
20 * At present, this routine just applies a system reset.
21 */
22_GLOBAL(ppc44x_reset_system)
23 mfspr r13,SPRN_DBCR0
24 oris r13,r13,DBCR0_RST_SYSTEM@h
25 mtspr SPRN_DBCR0,r13
26 b . /* Just in case the reset doesn't work */
diff --git a/arch/powerpc/platforms/Makefile b/arch/powerpc/platforms/Makefile
index 452004283f17..d6e041a46d25 100644
--- a/arch/powerpc/platforms/Makefile
+++ b/arch/powerpc/platforms/Makefile
@@ -6,7 +6,8 @@ obj-$(CONFIG_PPC_PMAC) += powermac/
6endif 6endif
7endif 7endif
8obj-$(CONFIG_PPC_CHRP) += chrp/ 8obj-$(CONFIG_PPC_CHRP) += chrp/
9obj-$(CONFIG_4xx) += 4xx/ 9#obj-$(CONFIG_4xx) += 4xx/
10obj-$(CONFIG_44x) += 44x/
10obj-$(CONFIG_PPC_MPC52xx) += 52xx/ 11obj-$(CONFIG_PPC_MPC52xx) += 52xx/
11obj-$(CONFIG_PPC_8xx) += 8xx/ 12obj-$(CONFIG_PPC_8xx) += 8xx/
12obj-$(CONFIG_PPC_82xx) += 82xx/ 13obj-$(CONFIG_PPC_82xx) += 82xx/