diff options
author | Hung-Te Lin <hungte@chromium.org> | 2011-07-19 16:16:54 +0800 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2011-08-29 10:59:01 -0700 |
commit | 0eaae2c7b2d0829bff40daa5452935b076916479 (patch) | |
tree | d079e8f1935a4798b0140fdebddf75c48b1895b4 /board/nvidia/seaboard | |
parent | 45d76b48590136d6316f9fbff5d9c6e92752c4cd (diff) |
CHROMIUM: fix and refine RO FMAP sections
To update firmware, GBB must be aligned to 4K, and FMAP should be
best aligned to as large as possible. Dummy "RECOVERY" section should
better also exist (even with zero size).
We also realized that FMAP section size should be increased to hold
current firmware image sections because current size (1k) cannot hold
all existing sections. 4K is a better size.
This CL tries to refine section location and size so that both GBB and
FMAP are aligned to >=4K location.
BUG=chromium-os:17646
TEST=build_packages; dump_fmap /build/tegra2_aebl/u-boot/image.bin
# seeing no errors, image size=4M, FMAP section=4K,
# GBB offset aligned to 4K
Change-Id: I806ded112d3f132dc1102f67d376226e7176b1d1
Reviewed-on: http://gerrit.chromium.org/gerrit/4295
Reviewed-by: Yung-Chieh Lo <yjlou%chromium.org@gtempaccount.com>
Tested-by: Hung-Te Lin <hungte@chromium.org>
Diffstat (limited to 'board/nvidia/seaboard')
-rw-r--r-- | board/nvidia/seaboard/flashmap-ro.dtsi | 50 |
1 files changed, 33 insertions, 17 deletions
diff --git a/board/nvidia/seaboard/flashmap-ro.dtsi b/board/nvidia/seaboard/flashmap-ro.dtsi index 46f1a9ab896..4c165350a7b 100644 --- a/board/nvidia/seaboard/flashmap-ro.dtsi +++ b/board/nvidia/seaboard/flashmap-ro.dtsi @@ -43,40 +43,56 @@ ro-boot@0 { label = "boot-stub"; - reg = <0x00000000 0x000bfb00>; /* ~785 KB */ + reg = <0x00000000 0x000bff00>; /* ~768 KB */ read-only; type = "blob signed"; }; - ro-firmware-id@bfb00 { - label = "ro-frid"; - reg = <0x000bfb00 0x00000100>; - read-only; - type = "blobstring fwid"; - }; - - ro-gbb@bfc00 { - label = "gbb"; - reg = <0x000bfc00 0x00020000>; + ro-recovery@bff00 { + /* Deprecated section */ + label = "recovery"; + reg = <0x000bff00 0x00000000>; read-only; - type = "blob gbb"; }; - ro-data@dfc00 { - label = "ro-data"; - reg = <0x000dfc00 0x00010000>; + ro-firmware-id@bff00 { + label = "ro-frid"; + reg = <0x000bff00 0x00000100>; read-only; + type = "blobstring fwid"; }; - ro-fmap@ffc00 { + ro-fmap@c0000 { label = "fmap"; - reg = <0x000efc00 0x00000400>; + + /* We encourage to align FMAP partition in as large + * block as possible so that flashrom can find it soon. + * For example, aligning to 512KB is better than to + * 256KB. */ + + reg = <0x000c0000 0x00001000>; read-only; type = "fmap"; ver-major = <1>; ver-minor = <0>; }; + ro-gbb@c1000 { + label = "gbb"; + + /* GBB offset must be aligned to 4K bytes */ + reg = <0x000c1000 0x00020000>; + read-only; + type = "blob gbb"; + }; + ro-data@e1000 { + /* Currently unused, simply for padding */ + label = "ro-data"; + reg = <0x000e1000 0x0000f000>; + read-only; + }; /* ---- Section: Vital-product data (VPD) ---- */ ro-vpd@f0000 { label = "ro-vpd"; + + /* VPD offset must be aligned to 4K bytes */ reg = <0x000f0000 0x00010000>; read-only; type = "wiped"; |