mirror of
https://github.com/fail0verflow/switch-coreboot.git
synced 2025-05-04 01:39:18 -04:00
Fix the config process so that pre-parsing of elf works again. It was broken
(I think) when the PAYLOAD_NONE change was put in. Signed-off-by: Ronald G. Minnich <rminnich@gmail.com> Acked-by: Stefan Reinauer <stepan@coresystems.de> git-svn-id: svn://coreboot.org/repository/LinuxBIOSv3@503 f3766cd6-281f-0410-b1cd-43a5c92072e9
This commit is contained in:
parent
573c0d783e
commit
a2b318b2c4
2 changed files with 21 additions and 21 deletions
40
Kconfig
40
Kconfig
|
@ -53,25 +53,6 @@ config LOCALVERSION
|
|||
help
|
||||
Append an extra string to the end of the LinuxBIOS version.
|
||||
|
||||
config NOELF
|
||||
bool "Don't use ELF for payloads"
|
||||
depends EXPERT
|
||||
default n
|
||||
help
|
||||
Until now, LinuxBIOS has used elf for the payload. There are many problems
|
||||
this, not least being the inefficiency -- the ELF has to be decompressed to
|
||||
memory and then the segments have to be copied. Plus, lar can't see the segments
|
||||
in the elf -- to see all segments, you have to extract the elf and run readelf on it.
|
||||
There are problems with collisions of the decompressed ELF location in memory
|
||||
and the segment locations in memory.
|
||||
Finally, validation of the ELF is done at run time, once you have flashed the
|
||||
FLASH and rebooted the machine. Boot time is really not the time you want to find
|
||||
out your ELF payload is broken.
|
||||
With this option, LinuxBIOS will direct lar to break each elf segment into a LAR
|
||||
entry. ELF will not be used at all. Note that (for now) LinuxBIOS is backward
|
||||
compatible -- if you put an ELF payload in, LinuxBIOS can still parse it. We hope
|
||||
to remove ELF entirely in the future.
|
||||
|
||||
config BEEPS
|
||||
bool "Enable beeps upon certain LinuxBIOS events"
|
||||
depends EXPERT
|
||||
|
@ -113,6 +94,25 @@ choice
|
|||
prompt "Payload type"
|
||||
default PAYLOAD_NONE
|
||||
|
||||
config PAYLOAD_PREPARSE_ELF
|
||||
bool "Pre-parse ELF file and convert ELF segments to LAR entries"
|
||||
depends EXPERT
|
||||
default n
|
||||
help
|
||||
Until now, LinuxBIOS has used elf for the payload. There are many problems
|
||||
this, not least being the inefficiency -- the ELF has to be decompressed to
|
||||
memory and then the segments have to be copied. Plus, lar can't see the segments
|
||||
in the elf -- to see all segments, you have to extract the elf and run readelf on it.
|
||||
There are problems with collisions of the decompressed ELF location in memory
|
||||
and the segment locations in memory.
|
||||
Finally, validation of the ELF is done at run time, once you have flashed the
|
||||
FLASH and rebooted the machine. Boot time is really not the time you want to find
|
||||
out your ELF payload is broken.
|
||||
With this option, LinuxBIOS will direct lar to break each elf segment into a LAR
|
||||
entry. ELF will not be used at all. Note that (for now) LinuxBIOS is backward
|
||||
compatible -- if you put an ELF payload in, LinuxBIOS can still parse it. We hope
|
||||
to remove ELF entirely in the future.
|
||||
|
||||
config PAYLOAD_ELF
|
||||
bool "An ELF executable payload file"
|
||||
help
|
||||
|
@ -137,7 +137,7 @@ endchoice
|
|||
|
||||
config PAYLOAD_FILE
|
||||
string "Payload path and filename"
|
||||
depends PAYLOAD_ELF
|
||||
depends PAYLOAD_ELF || PAYLOAD_PREPARSE_ELF
|
||||
default "payload.elf"
|
||||
help
|
||||
The path and filename of the ELF executable file to use as payload.
|
||||
|
|
|
@ -122,7 +122,7 @@ else
|
|||
endif
|
||||
endif
|
||||
|
||||
ifeq ($(CONFIG_NOELF), y)
|
||||
ifeq ($(CONFIG_PAYLOAD_PREPARSE_ELF), y)
|
||||
PARSEELF = -e
|
||||
else
|
||||
PARSEELF =
|
||||
|
|
Loading…
Add table
Reference in a new issue