aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/setup-common.c
diff options
context:
space:
mode:
authorPaul Mackerras <paulus@samba.org>2005-11-08 06:55:08 -0500
committerPaul Mackerras <paulus@samba.org>2005-11-08 06:55:08 -0500
commitfca5dcd4835ed09bb1a48a355344aff7a25c76e0 (patch)
treeb596fad4509d3208ef974b9e22b2326ecfd85b83 /arch/powerpc/kernel/setup-common.c
parent3825ac0ee66b50cb0208ee74796fe65f3040e67c (diff)
powerpc: Simplify and clean up the xmon terminal I/O
This factors out the common bits of arch/powerpc/xmon/start_*.c into a new nonstdio.c, and removes some stuff that was supposed to make xmon's I/O routines somewhat stdio-like but was never used. It also makes the parsing of the xmon= command line option common, so that ppc32 can now use xmon={off,on,early} also. Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/setup-common.c')
-rw-r--r--arch/powerpc/kernel/setup-common.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/setup-common.c b/arch/powerpc/kernel/setup-common.c
index e22856ecb5a..26bb1fe6384 100644
--- a/arch/powerpc/kernel/setup-common.c
+++ b/arch/powerpc/kernel/setup-common.c
@@ -51,6 +51,7 @@
51#include <asm/page.h> 51#include <asm/page.h>
52#include <asm/mmu.h> 52#include <asm/mmu.h>
53#include <asm/lmb.h> 53#include <asm/lmb.h>
54#include <asm/xmon.h>
54 55
55#undef DEBUG 56#undef DEBUG
56 57
@@ -559,3 +560,23 @@ void __init smp_setup_cpu_maps(void)
559#endif /* CONFIG_PPC64 */ 560#endif /* CONFIG_PPC64 */
560} 561}
561#endif /* CONFIG_SMP */ 562#endif /* CONFIG_SMP */
563
564#ifdef CONFIG_XMON
565static int __init early_xmon(char *p)
566{
567 /* ensure xmon is enabled */
568 if (p) {
569 if (strncmp(p, "on", 2) == 0)
570 xmon_init(1);
571 if (strncmp(p, "off", 3) == 0)
572 xmon_init(0);
573 if (strncmp(p, "early", 5) != 0)
574 return 0;
575 }
576 xmon_init(1);
577 debugger(NULL);
578
579 return 0;
580}
581early_param("xmon", early_xmon);
582#endif