I thought that romfs infrastructure is done now, but there were some

issues (see buildbot).
The romfs image was always built, and sometimes broke (because of
the different image layouts) for buildrom images. After the patch, these
issues are avoided by not adding payloads to the romfs image (they
wouldn't be read anyway). Both workarounds (in buildrom code for
romfs and vice-versa) aren't very pretty, but that's what our buildsystem
requires.
As I had to create a "communication channel" (via the romfs-support
files), I took the chance to also use it for compression
information, so if you configure lzma support, you'll get lzma
compressed payloads in romfs.

Signed-off-by: Patrick Georgi <patrick.georgi@coresystems.de>
Acked-by: Stefan Reinauer <stepan@coresystems.de>



git-svn-id: svn://svn.coreboot.org/coreboot/trunk@4054 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
Patrick Georgi 2009-04-03 16:17:05 +00:00
parent d107831182
commit f16fb73087
2 changed files with 3 additions and 2 deletions

View File

@ -80,7 +80,8 @@ if USE_FAILOVER_IMAGE
else else
makerule coreboot.rom makerule coreboot.rom
depends "coreboot.strip buildrom $(PAYLOAD-1)" depends "coreboot.strip buildrom $(PAYLOAD-1)"
action "PAYLOAD=$(PAYLOAD-1); if [ $(CONFIG_ROMFS) -eq 1 ]; then PAYLOAD=/dev/null; fi; ./buildrom $< $@ $$PAYLOAD $(ROM_IMAGE_SIZE) $(ROM_SECTION_SIZE)" action "PAYLOAD=$(PAYLOAD-1); if [ $(CONFIG_ROMFS) -eq 1 ]; then PAYLOAD=/dev/null; touch romfs-support; fi; ./buildrom $< $@ $$PAYLOAD $(ROM_IMAGE_SIZE) $(ROM_SECTION_SIZE)"
action "if [ $(CONFIG_COMPRESSED_PAYLOAD_LZMA) -eq 1 -a $(CONFIG_ROMFS) -eq 1 ]; then echo l > romfs-support; fi"
end end
end end

View File

@ -2275,7 +2275,7 @@ def writemakefile(path):
for j in i.roms: for j in i.roms:
#failover is a hack that will go away soon. #failover is a hack that will go away soon.
if (j != "failover") and (rommapping[j] != "/dev/null"): if (j != "failover") and (rommapping[j] != "/dev/null"):
file.write("\t $(TOP)/util/romtool/romtool %sfs add-payload %s %s/payload\n" % (i.name, rommapping[j], j)) file.write("\tif [ -f %s/romfs-support ]; then $(TOP)/util/romtool/romtool %sfs add-payload %s %s/payload `cat %s/romfs-support`; fi\n" % (j, i.name, rommapping[j], j, j))
file.write("\t $(TOP)/util/romtool/romtool %sfs print\n" % i.name) file.write("\t $(TOP)/util/romtool/romtool %sfs print\n" % i.name)
file.write(".PHONY: all clean romtool") file.write(".PHONY: all clean romtool")