[PATCH] powerpc: Unify udbg (#2)
This patch unifies udbg for both ppc32 and ppc64 when building the merged achitecture. xmon now has a single "back end". The powermac udbg stuff gets enriched with some ADB capabilities and btext output. In addition, the early_init callback is now called on ppc32 as well, approx. in the same order as ppc64 regarding device-tree manipulations. The init sequences of ppc32 and ppc64 are getting closer, I'll unify them in a later patch. For now, you can force udbg to the scc using "sccdbg" or to btext using "btextdbg" on powermacs. I'll implement a cleaner way of forcing udbg output to something else than the autodetected OF output device in a later patch. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
committed by
Paul Mackerras
parent
463ce0e103
commit
51d3082fe6
@ -40,6 +40,7 @@
|
||||
#include <asm/xmon.h>
|
||||
#include <asm/time.h>
|
||||
#include <asm/serial.h>
|
||||
#include <asm/udbg.h>
|
||||
|
||||
#include "setup.h"
|
||||
|
||||
@ -173,12 +174,23 @@ void __init platform_init(void)
|
||||
*/
|
||||
void __init machine_init(unsigned long dt_ptr, unsigned long phys)
|
||||
{
|
||||
/* If btext is enabled, we might have a BAT setup for early display,
|
||||
* thus we do enable some very basic udbg output
|
||||
*/
|
||||
#ifdef CONFIG_BOOTX_TEXT
|
||||
udbg_putc = btext_drawchar;
|
||||
#endif
|
||||
|
||||
/* Do some early initialization based on the flat device tree */
|
||||
early_init_devtree(__va(dt_ptr));
|
||||
|
||||
/* Check default command line */
|
||||
#ifdef CONFIG_CMDLINE
|
||||
strlcpy(cmd_line, CONFIG_CMDLINE, sizeof(cmd_line));
|
||||
if (cmd_line[0] == 0)
|
||||
strlcpy(cmd_line, CONFIG_CMDLINE, sizeof(cmd_line));
|
||||
#endif /* CONFIG_CMDLINE */
|
||||
|
||||
/* Base init based on machine type */
|
||||
platform_init();
|
||||
|
||||
#ifdef CONFIG_6xx
|
||||
@ -294,21 +306,11 @@ void __init setup_arch(char **cmdline_p)
|
||||
|
||||
smp_setup_cpu_maps();
|
||||
|
||||
#ifdef CONFIG_BOOTX_TEXT
|
||||
init_boot_display();
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_PPC_PMAC
|
||||
/* This could be called "early setup arch", it must be done
|
||||
* now because xmon need it
|
||||
*/
|
||||
if (_machine == _MACH_Pmac)
|
||||
pmac_feature_init(); /* New cool way */
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_XMON_DEFAULT
|
||||
xmon_init(1);
|
||||
#endif
|
||||
/* Register early console */
|
||||
register_early_udbg_console();
|
||||
|
||||
#if defined(CONFIG_KGDB)
|
||||
if (ppc_md.kgdb_map_scc)
|
||||
|
Reference in New Issue
Block a user