x86/boot: implement early command line parser in C
authorDaniel Kiper <daniel.kiper@oracle.com>
Fri, 20 Jan 2017 13:34:33 +0000 (14:34 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 20 Jan 2017 13:34:33 +0000 (14:34 +0100)
commitb44c43e42ab7ececf8b5a33e858d5cc9aed44ae1
tree9912f743639df983d020a3a7bf156811bd6c06cd
parent3afc5e4a5b750384a469c2b9ba27eb6bdd55b3b8
x86/boot: implement early command line parser in C

Current early command line parser implementation in assembler
is very difficult to change to relocatable stuff using segment
registers. This requires a lot of changes in very weird and
fragile code. So, reimplement this functionality in C. This
way code will be relocatable out of the box (without playing
with segment registers) and much easier to maintain.

Additionally, put all common cmdline.c and reloc.c definitions
into defs.h header. This way we do not duplicate needlessly
some stuff.

And finally remove unused xen/include/asm-x86/config.h
header from reloc.c dependencies.

Suggested-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Daniel Kiper <daniel.kiper@oracle.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Doug Goldstein <cardoe@cardoe.com>
12 files changed:
.gitignore
xen/arch/x86/Makefile
xen/arch/x86/boot/Makefile
xen/arch/x86/boot/build32.mk
xen/arch/x86/boot/cmdline.S [deleted file]
xen/arch/x86/boot/cmdline.c [new file with mode: 0644]
xen/arch/x86/boot/defs.h [new file with mode: 0644]
xen/arch/x86/boot/edd.S
xen/arch/x86/boot/head.S
xen/arch/x86/boot/reloc.c
xen/arch/x86/boot/trampoline.S
xen/arch/x86/boot/video.S