[PATCH] powerpc: Make early xmon logic immune to location of early parsing

Currently early_xmon() calls directly into debugger() if xmon=early is passed.
This ties the invocation of early xmon to the location of parse_early_param(),
which might change.

Tested on P5 LPAR and F50.

Signed-off-by: Michael Ellerman <michael@ellerman.id.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
Michael Ellerman 2006-05-17 18:00:41 +10:00 committed by Paul Mackerras
parent 9dabbfbab3
commit 480f6f35a1
4 changed files with 9 additions and 1 deletions

View File

@ -443,6 +443,7 @@ void __init smp_setup_cpu_maps(void)
}
#endif /* CONFIG_SMP */
int __initdata do_early_xmon;
#ifdef CONFIG_XMON
static int __init early_xmon(char *p)
{
@ -456,7 +457,7 @@ static int __init early_xmon(char *p)
return 0;
}
xmon_init(1);
debugger(NULL);
do_early_xmon = 1;
return 0;
}

View File

@ -4,5 +4,6 @@
void check_for_initrd(void);
void do_init_bootmem(void);
void setup_panic(void);
extern int do_early_xmon;
#endif /* _POWERPC_KERNEL_SETUP_H */

View File

@ -297,6 +297,9 @@ void __init setup_arch(char **cmdline_p)
parse_early_param();
if (do_early_xmon)
debugger(NULL);
/* set up the bootmem stuff with available memory */
do_init_bootmem();
if ( ppc_md.progress ) ppc_md.progress("setup_arch: bootmem", 0x3eab);

View File

@ -419,6 +419,9 @@ void __init setup_system(void)
parse_early_param();
if (do_early_xmon)
debugger(NULL);
check_smt_enabled();
smp_setup_cpu_maps();