Hi,
attached patch changes the bootblock generation for CBFS images.
It uses coreboot.rom (padded and all), but defaults to smaller fallback/normal
image sizes.
It requires changes to each CBFS aware mainboard config (and requires adaption
on conversion), but it fixes using normal image (as the offsets are calculated
correctly).
I tried to get rid of ROM_IMAGE_SIZE and friends, but that'll have to wait
until non-CBFS images are gone - maintaining two separate build configurations
in a single build system isn't fun.
If this gets accepted, I'll propose a patch for the (few) CBFS boards, and
commit them together.
Signed-off-by: Patrick Georgi <[email protected]>
Patrick
Index: src/config/nofailovercalculation.lb
===================================================================
--- src/config/nofailovercalculation.lb (Revision 1768)
+++ src/config/nofailovercalculation.lb (Revision 1769)
@@ -6,8 +6,13 @@
default ROM_SECTION_SIZE = FALLBACK_SIZE
default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
else
- default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE )
- default ROM_SECTION_OFFSET = 0
+ if CONFIG_CBFS
+ default ROM_SECTION_SIZE = FALLBACK_SIZE
+ default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FALLBACK_SIZE )
+ else
+ default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE )
+ default ROM_SECTION_OFFSET = 0
+ end
end
##
Index: src/config/failovercalculation.lb
===================================================================
--- src/config/failovercalculation.lb (Revision 1768)
+++ src/config/failovercalculation.lb (Revision 1769)
@@ -10,8 +10,13 @@
default ROM_SECTION_SIZE = FALLBACK_SIZE
default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
else
- default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
- default ROM_SECTION_OFFSET = 0
+ if CONFIG_CBFS
+ default ROM_SECTION_SIZE = FALLBACK_SIZE
+ default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
+ else
+ default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE - FAILOVER_SIZE )
+ default ROM_SECTION_OFFSET = 0
+ end
end
end
Index: src/config/nofailovercalculation128.lb
===================================================================
--- src/config/nofailovercalculation128.lb (Revision 1768)
+++ src/config/nofailovercalculation128.lb (Revision 1769)
@@ -6,8 +6,13 @@
default ROM_SECTION_SIZE = FALLBACK_SIZE
default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE )
else
- default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE )
- default ROM_SECTION_OFFSET = 0
+ if CONFIG_CBFS
+ default ROM_SECTION_SIZE = FALLBACK_SIZE
+ default ROM_SECTION_OFFSET = ( ROM_SIZE - FALLBACK_SIZE - FALLBACK_SIZE )
+ else
+ default ROM_SECTION_SIZE = ( ROM_SIZE - FALLBACK_SIZE )
+ default ROM_SECTION_OFFSET = 0
+ end
end
##
Index: util/newconfig/config.g
===================================================================
--- util/newconfig/config.g (Revision 1768)
+++ util/newconfig/config.g (Revision 1769)
@@ -2297,7 +2297,7 @@
# build the bootblock here.
file.write("\n\tcat")
for j in i.roms:
- file.write(" %s/coreboot.strip " % j)
+ file.write(" %s/coreboot.rom " % j)
file.write("> %s.bootblock\n\n" %i.name)
file.write("\t./cbfstool %s create %s %s %s.bootblock\n"
%(i.name, romsize, bootblocksize, i.name))
--
coreboot mailing list: [email protected]
http://www.coreboot.org/mailman/listinfo/coreboot