Rework the OpenBIOS internals so that boot, load and init-program now all use the...
commit33e7d29dc740ed9af60214cec8d05e20357cb2a4
authormcayland <mcayland@f158a5a8-5612-0410-a976-696ce0be7e32>
Sun, 1 Aug 2010 15:13:48 +0000 (1 15:13 +0000)
committermcayland <mcayland@f158a5a8-5612-0410-a976-696ce0be7e32>
Sun, 1 Aug 2010 15:13:48 +0000 (1 15:13 +0000)
treef8aef8516b7f65ddd0c8ba524d419cfdb34feb1f
parentbe6f41700a72c374897964bac71343a0cfa4e8b1
Rework the OpenBIOS internals so that boot, load and init-program now all use the unified libopenbios loader code with improved
IEEE-1275 spec compliance.

This patch implements the following:

1) Fix bootpath/bootargs handling so that default values are read from NVRAM, and allow multiple space-separated values to be
specified.
2) With correct bootargs handling in place, move the ELF loader over to the new libopenbios unified loaders.
3) Remove all the loader code from all architecture directories sine we don't need it anymore.
4) Simplify the boot word so it invokes platform-specific code where required, then calls load and go as per the specification.

Tested on all my available images for SPARC32, SPARC64 and PPC, and compile-tested on x86.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@siriusit.co.uk>
git-svn-id: svn://openbios.org/openbios/trunk/openbios-devel@828 f158a5a8-5612-0410-a976-696ce0be7e32
15 files changed:
arch/ppc/qemu/init.c
arch/ppc/qemu/main.c
arch/sparc32/boot.c
arch/sparc32/boot.h
arch/sparc32/openbios.c
arch/sparc64/boot.c
arch/sparc64/linux_load.c
arch/sparc64/openbios.c
arch/x86/boot.c
forth/admin/userboot.fs
forth/debugging/client.fs
include/libopenbios/elf_load.h
include/libopenbios/sys_info.h
libopenbios/elf_load.c
libopenbios/load.c