[LinuxBIOS] [PATCH] v3: Kconfig payload options and README improvements
Stefan Reinauer
stepan at coresystems.de
Thu May 31 01:43:43 CEST 2007
* Uwe Hermann <uwe at hermann-uwe.de> [070530 22:46]:
> Rework payload handling to only provide two options:
>
> - Payload file
>
> - No payload
>
> Document the current procedure in the README. Minor cosmetic fixes.
>
> Signed-off-by: Uwe Hermann <uwe at hermann-uwe.de>
>
> Index: Kconfig
> ===================================================================
> --- Kconfig (Revision 338)
> +++ Kconfig (Arbeitskopie)
> @@ -78,69 +78,30 @@
> prompt "Payload type"
> default PAYLOAD_ELF
>
> -config PAYLOAD_FILO
> - bool "FILO"
> +config PAYLOAD_ELF
> + bool "An ELF executable payload file"
> help
> - TODO
> + Select this option if you have a payload image (an ELF file)
> + which LinuxBIOS should run as soon as the basic hardware
> + initialization is completed.
>
> -config PAYLOAD_ETHERBOOT
> - bool "Etherboot"
> - help
> - TODO
> + You will be able to specify the location and file name of the
> + payload image later.
>
> -config PAYLOAD_MEMTEST86
> - bool "Memtest86"
> +config PAYLOAD_NONE
> + bool "No payload"
> help
> - TODO
> + Select this option if you want to create an "empty" LinuxBIOS
> + ROM image for a certain mainboard, i.e. a LinuxBIOS ROM image
> + which does not yet contain a payload.
>
> -config PAYLOAD_LINUX
> - bool "Linux kernel"
> - help
> - TODO
> + For such an image to be useful, you have to use the 'lar' tool
> + to add a payload to the ROM image later.
>
> -config PAYLOAD_ELF
> - bool "Any ELF executable"
> - help
> - TODO
> -
> -config PAYLOAD_DUMMY
> - bool "Dummy payload"
> - help
> - For testing purposes only.
> -
> endchoice
>
> -config PAYLOAD_FILO_DIR
> - string "FILO source code directory"
> - depends PAYLOAD_FILO
> - default "/tmp/filo-0.5"
> - help
> - The directory where the FILO source code is located.
> -
> -config PAYLOAD_FILO_CONFIGFILE
> - string "Filename of the FILO 'Config' file"
> - depends PAYLOAD_FILO
> - default "Config"
> - help
> - The filename of the FILO 'Config' file to use. This file must reside
> - in the directory specified via PAYLOAD_FILO_DIR.
> -
> -config PAYLOAD_LINUX_DIR
> - string "Linux kernel source code directory"
> - depends PAYLOAD_LINUX
> - default "/usr/src/linux"
> - help
> - The directory where the Linux kernel source code is located.
> -
> -config PAYLOAD_LINUX_CONFIGFILE
> - string "Path and filename of the Linux .config file to use"
> - depends PAYLOAD_LINUX
> - default ".config" # FIXME!
> - help
> - The path and filename of the Linux .config file to use.
> -
> -config PAYLOAD_ELF_FILE
> - string "Path and filename of the ELF file to use as payload"
> +config PAYLOAD_FILE
> + string "Payload path and filename"
> depends PAYLOAD_ELF
> default "payload.elf"
> help
I think its fine up to here.
> Index: Makefile
> ===================================================================
> --- Makefile (Revision 338)
> +++ Makefile (Arbeitskopie)
> doxygen:
> $(Q)$(DOXYGEN) util/doxygen/Doxyfile.LinuxBIOS
>
> +payload:
> + $(Q)printf "Not yet implemented. This will invoke a helper tool.\n"
> +
I'd wait checking this stuff in until we really do something here.
> - $(Q)cp $(CONFIG_PAYLOAD) $(obj)/lar.tmp/normal/payload
> + $(Q)# TODO: Copy no payload or empty payload if CONFIG_PAYLOAD_NONE.
> + $(Q)cp $(CONFIG_PAYLOAD_FILE) $(obj)/lar.tmp/normal/payload
maybe something like
if [ -r $(CONFIG_PAYLOAD_FILE) ]; then cp .... ; fi
> -STAGE2_LIB_OBJ = stage2.o clog2.o mem.o malloc.o tables.o delay.o compute_ip_checksum.o
> +STAGE2_LIB_OBJ = stage2.o clog2.o mem.o malloc.o tables.o delay.o \
> + compute_ip_checksum.o
Uh oh, lots of unrelated whitespace stuff in this patch.
> +# TODO: Compress the payload (CONFIG_PAYLOAD_FILE) with the default compressor.
> #
> -# TODO: This is not implemented yet.
> -# TODO: This needs to be compressed with the default compressor.
> - $(Q)$(CC) -E $(LINUXBIOSINCLUDE) $< \
> - -o $(obj)/arch/x86/stage0_asm.s -DBOOTBLK=0x1f00 -DRESRVED=0xf0 \
> - -DDATE=\"`date +%Y/%m/%d`\"
> + $(Q)$(CC) -E $(LINUXBIOSINCLUDE) $< -o $(obj)/arch/x86/stage0_asm.s \
> + -DBOOTBLK=0x1f00 -DRESRVED=0xf0 -DDATE=\"`date +%Y/%m/%d`\"
... and reformatting.
--
coresystems GmbH • Brahmsstr. 16 • D-79104 Freiburg i. Br.
Tel.: +49 761 7668825 • Fax: +49 761 7664613
Email: info at coresystems.de • http://www.coresystems.de/
More information about the coreboot
mailing list