Isaac Christensen (isaac.christensen@se-eng.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/6906
-gerrit
commit 64ba575201f06d54cd30d6051e8bcab29163547b Author: Stefan Reinauer reinauer@chromium.org Date: Wed Nov 13 15:28:01 2013 -0800
libpayload: Add vboot handoff parsing on ARM
This is needed by depthcharge on ARM if coreboot is loading its ramstage from the RW section of the ROM.
Change-Id: I96c6c04a0cee39854b45f2eda169e93461da0694 Signed-off-by: Stefan Reinauer reinauer@google.com Reviewed-on: https://chromium-review.googlesource.com/176757 Reviewed-by: Gabe Black gabeblack@chromium.org Commit-Queue: Stefan Reinauer reinauer@chromium.org Tested-by: Stefan Reinauer reinauer@chromium.org (cherry picked from commit cf26be4cb527b0fc4212d401a8c77ceb1c7992d0) Signed-off-by: Isaac Christensen isaac.christensen@se-eng.com --- payloads/libpayload/arch/arm/coreboot.c | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/payloads/libpayload/arch/arm/coreboot.c b/payloads/libpayload/arch/arm/coreboot.c index 1397fc1..b91db32 100644 --- a/payloads/libpayload/arch/arm/coreboot.c +++ b/payloads/libpayload/arch/arm/coreboot.c @@ -79,6 +79,14 @@ static void cb_parse_serial(void *ptr, struct sysinfo_t *info) }
#ifdef CONFIG_LP_CHROMEOS +static void cb_parse_vboot_handoff(unsigned char *ptr, struct sysinfo_t *info) +{ + struct cb_range *vbho = (struct cb_range *)ptr; + + info->vboot_handoff = (void *)(uintptr_t)vbho->range_start; + info->vboot_handoff_size = vbho->range_size; +} + static void cb_parse_vbnv(unsigned char *ptr, struct sysinfo_t *info) { struct lb_range *vbnv = (struct lb_range *)ptr; @@ -267,6 +275,9 @@ static int cb_parse_header(void *addr, int len, struct sysinfo_t *info) case CB_TAG_VBNV: cb_parse_vbnv(ptr, info); break; + case CB_TAG_VBOOT_HANDOFF: + cb_parse_vboot_handoff(ptr, info); + break; #endif case CB_TAG_DMA: cb_parse_dma(ptr);