summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Rosenthal <jrosenth@chromium.org>2020-05-27 09:12:24 -0600
committerCommit Bot <commit-bot@chromium.org>2020-06-09 16:31:00 +0000
commit9a923c7dba003a5ddbc55937469c975689effa62 (patch)
treea693fb4906d0ebb8b53e40a5747a18d6bcf2d099
parent15651696684fce77f2e978c03342f3fe80fc546b (diff)
downloadvboot-stabilize-lazor-13278.B.tar.gz
crossystem: arm: switch to VBNV using flashrom from mosysstabilize-lazor-13278.B
Most ARM platforms will store VBNV in SPI flash by calling out to mosys, which in turn calls out to flashrom. The set of parent CLs to this commit port this functionality from mosys directly to vboot's host libraries. This CL switches to use the new functionality. (The CL to switch is provided as a separate CL for ARM only so it's an easy and clean revert should something go wrong.) BUG=chromium:1032351,chromium:1030473,chromium:789276 BRANCH=none TEST=On scarlet, read and write VBNV using crossystem Signed-off-by: Jack Rosenthal <jrosenth@chromium.org> Change-Id: I1949522b665170ebeb35f3c46177f1957980d6a3 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/vboot_reference/+/2218891 Reviewed-by: Joel Kitching <kitching@chromium.org>
-rw-r--r--host/arch/arm/lib/crossystem_arch.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/host/arch/arm/lib/crossystem_arch.c b/host/arch/arm/lib/crossystem_arch.c
index 43a59cf2..579be85d 100644
--- a/host/arch/arm/lib/crossystem_arch.c
+++ b/host/arch/arm/lib/crossystem_arch.c
@@ -431,11 +431,13 @@ int vb2_read_nv_storage(struct vb2_context *ctx)
if (!FdtPropertyExist(FDT_NVSTORAGE_TYPE_PROP))
return vb2_read_nv_storage_disk(ctx);
media = ReadFdtString(FDT_NVSTORAGE_TYPE_PROP);
+ if (!strcmp(media, "flash"))
+ return vb2_read_nv_storage_flashrom(ctx);
if (!strcmp(media, "disk"))
return vb2_read_nv_storage_disk(ctx);
- if (!strcmp(media, "cros-ec") || !strcmp(media, "mkbp") ||
- !strcmp(media, "flash"))
+ if (!strcmp(media, "cros-ec"))
return vb2_read_nv_storage_mosys(ctx);
+ fprintf(stderr, "Unsupported NVRAM storage type: %s\n", media);
return -1;
}
@@ -447,11 +449,13 @@ int vb2_write_nv_storage(struct vb2_context *ctx)
if (!FdtPropertyExist(FDT_NVSTORAGE_TYPE_PROP))
return vb2_write_nv_storage_disk(ctx);
media = ReadFdtString(FDT_NVSTORAGE_TYPE_PROP);
+ if (!strcmp(media, "flash"))
+ return vb2_write_nv_storage_flashrom(ctx);
if (!strcmp(media, "disk"))
return vb2_write_nv_storage_disk(ctx);
- if (!strcmp(media, "cros-ec") || !strcmp(media, "mkbp") ||
- !strcmp(media, "flash"))
+ if (!strcmp(media, "cros-ec"))
return vb2_write_nv_storage_mosys(ctx);
+ fprintf(stderr, "Unsupported NVRAM storage type: %s\n", media);
return -1;
}