[coreboot-gerrit] Patch merged into coreboot/master: f780c40 CBFS: Correct ROM_SIZE for ARM boards, use CBFS_SIZE for cbfstool

gerrit at coreboot.org gerrit at coreboot.org
Tue Apr 14 09:01:24 CEST 2015


the following patch was just integrated into master:
commit f780c40f40306a21489f8ddd6e17c979ba0fd7a3
Author: Julius Werner <jwerner at chromium.org>
Date:   Mon Nov 10 13:11:50 2014 -0800

    CBFS: Correct ROM_SIZE for ARM boards, use CBFS_SIZE for cbfstool
    
    Some projects (like ChromeOS) put more content than described by CBFS
    onto their image. For top-aligned images (read: x86), this has
    traditionally been achieved with a CBFS_SIZE Kconfig (which denotes the
    area actually managed by CBFS, as opposed to ROM_SIZE) that is used to
    calculate the CBFS entry start offset. On bottom-aligned boards, many
    define a fake (smaller) ROM_SIZE for only the CBFS part, which is not
    consistently done and can be an issue because ROM_SIZE is expected to be
    a power of two.
    
    This patch changes all non-x86 boards to describe their actual
    (physical) ROM size via one of the BOARD_ROMSIZE_KB_xxx options as a
    mainboard Kconfig select (which is the correct place to declare
    unchangeable physical properties of the board). It also changes the
    cbfstool create invocation to use CBFS_SIZE as the -s parameter for
    those architectures, which defaults to ROM_SIZE but gets overridden for
    special use cases like ChromeOS. This has the advantage that cbfstool
    has a consistent idea of where the area it is responsible for ends,
    which offers better bounds-checking and is needed for a subsequent fix.
    
    Also change the FMAP offset to default to right behind the (now
    consistently known) CBFS region for non-x86 boards, which has emerged as
    a de-facto standard on those architectures and allows us to reduce the
    amount of custom configuration. In the future, the nightmare that is
    ChromeOS's image build system could be redesigned to enforce this
    automatically, and also confirm that it doesn't overwrite any space used
    by CBFS (which is now consistently defined as the file size of
    coreboot.rom on non-x86).
    
    CQ-DEPEND=CL:231576,CL:231475
    BRANCH=None
    BUG=chromium:422501
    TEST=Built and booted on Veyron_Pinky.
    
    Change-Id: I89aa5b30e25679e074d4cb5eee4c08178892ada6
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
    Original-Commit-Id: e707c67c69599274b890d0686522880aa2e16d71
    Original-Change-Id: I4fce5a56a8d72f4c4dd3a08c129025f1565351cc
    Original-Signed-off-by: Julius Werner <jwerner at chromium.org>
    Original-Reviewed-on: https://chromium-review.googlesource.com/229974
    Original-Reviewed-by: Aaron Durbin <adurbin at chromium.org>
    Reviewed-on: http://review.coreboot.org/9619
    Tested-by: build bot (Jenkins)
    Reviewed-by: Stefan Reinauer <stefan.reinauer at coreboot.org>


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

-gerrit



More information about the coreboot-gerrit mailing list