[coreboot-gerrit] Patch merged into coreboot/master: 67a0a86 cbfstool: New image format w/ required FMAP and w/o CBFS master header

gerrit at coreboot.org gerrit at coreboot.org
Wed May 13 22:20:01 CEST 2015


the following patch was just integrated into master:
commit 67a0a864be0e8b81f22ebb9d6f090d77d1da2924
Author: Sol Boucher <solb at chromium.org>
Date:   Wed Mar 18 12:36:27 2015 -0700

    cbfstool: New image format w/ required FMAP and w/o CBFS master header
    
    These new-style firmware images use the FMAP of the root of knowledge
    about their layout, which allows them to have sections containing raw
    data whose offset and size can easily be determined at runtime or when
    modifying or flashing the image. Furthermore, they can even have
    multiple CBFSes, each of which occupies a different FMAP region. It is
    assumed that the first entry of each CBFS, including the primary one,
    will be located right at the start of its region. This means that the
    bootblock needs to be moved into its own FMAP region, but makes the
    CBFS master header obsolete because, with the exception of the version
    and alignment, all its fields are redundant once its CBFS has an entry
    in the FMAP. The version code will be addressed in a future commit
    before the new format comes into use, while the alignment will just be
    defined to 64 bytes in both cbfstool and coreboot itself, since
    there's almost no reason to ever change it in practice. The version
    code field and all necessary coreboot changes will come separately.
    
    BUG=chromium:470407
    TEST=Build panther and nyan_big coreboot.rom and image.bin images with
    and without this patch, diff their hexdumps, and note that no
    locations differ except for those that do between subsequent builds of
    the same codebase. Try working with new-style images: use fmaptool to
    produce an FMAP section from an fmd file having raw sections and
    multiple CBFSes, pass the resulting file to cbfstool create -M -F,
    then try printing its layout and CBFSes' contents, add and remove CBFS
    files, and read and write raw sections.
    BRANCH=None
    
    Change-Id: I7dd2578d2143d0cedd652fdba5b22221fcc2184a
    Signed-off-by: Sol Boucher <solb at chromium.org>
    Original-Commit-Id: 8a670322297f83135b929a5b20ff2bd0e7d2abd3
    Original-Change-Id: Ib86fb50edc66632f4e6f717909bbe4efb6c874e5
    Original-Signed-off-by: Sol Boucher <solb at chromium.org>
    Original-Reviewed-on: https://chromium-review.googlesource.com/265863
    Original-Reviewed-by: Aaron Durbin <adurbin at chromium.org>
    Reviewed-on: http://review.coreboot.org/10135
    Tested-by: build bot (Jenkins)


See http://review.coreboot.org/10135 for details.

-gerrit



More information about the coreboot-gerrit mailing list