diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2005-11-23 17:58:13 +1100 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2006-01-09 14:49:58 +1100 |
commit | d7f3945420b5d8114f2d4d85e90abe5063cc196a (patch) | |
tree | ed09dbc5b91827c09d62af225ff826e2153e42af /arch/powerpc/kernel/head_32.S | |
parent | 51d3082fe6e55aecfa17113dbe98077c749f724c (diff) | |
download | linux-d7f3945420b5d8114f2d4d85e90abe5063cc196a.tar.gz linux-d7f3945420b5d8114f2d4d85e90abe5063cc196a.tar.bz2 linux-d7f3945420b5d8114f2d4d85e90abe5063cc196a.zip |
[PATCH] powerpc: Add back support for booting from BootX (#2)
ARCH=powerpc couldn't boot from BootX as it uses a "different" way of
getting in the kernel. This patch adds the necessary trampolines,
creating a flattened device-tree from the tree passed from MacOS, and
initializing the btext engine early for really-early debugging.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch/powerpc/kernel/head_32.S')
-rw-r--r-- | arch/powerpc/kernel/head_32.S | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/head_32.S b/arch/powerpc/kernel/head_32.S index fdd34dbd8797..6359e364fe66 100644 --- a/arch/powerpc/kernel/head_32.S +++ b/arch/powerpc/kernel/head_32.S @@ -125,6 +125,19 @@ __start: bl prom_init trap +/* + * Check for BootX signature when supporting PowerMac and branch to + * appropriate trampoline if it's present + */ +#ifdef CONFIG_PPC_PMAC +1: lis r31,0x426f + ori r31,r31,0x6f58 + cmpw 0,r3,r31 + bne 1f + bl bootx_init + trap +#endif /* CONFIG_PPC_PMAC */ + 1: mr r31,r3 /* save parameters */ mr r30,r4 li r24,0 /* cpu # */ |