diff options
author | Aaron Durbin <adurbin@chromium.org> | 2017-09-15 11:15:07 -0600 |
---|---|---|
committer | Aaron Durbin <adurbin@chromium.org> | 2017-09-20 23:53:30 +0000 |
commit | 118a84f8f5e17fff8fb8c3f34648bfa4f8bd21e2 (patch) | |
tree | 46608820f59ab9e3593dbfcb6bd4385b1df4a3c3 /src/vboot | |
parent | 9fde0d780dd0abd24119ff6f7854b4b5939ce7d2 (diff) |
vboot: introduce vbnv_init()
Add vbnv_init() which is responsible for doing any vbnv initialization
and reading the vbnv contents. Having this function allows for
putting vbnv backing store specific support in the main vboot logic
path.
BUG=b:63054105
Change-Id: Id8f0344e5de5338417ae2e353ae473d6909c860a
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://review.coreboot.org/21550
Reviewed-by: Duncan Laurie <dlaurie@chromium.org>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Diffstat (limited to 'src/vboot')
-rw-r--r-- | src/vboot/vbnv.c | 5 | ||||
-rw-r--r-- | src/vboot/vbnv.h | 2 | ||||
-rw-r--r-- | src/vboot/vboot_logic.c | 4 |
3 files changed, 9 insertions, 2 deletions
diff --git a/src/vboot/vbnv.c b/src/vboot/vbnv.c index 6537bf04dc..6667825f46 100644 --- a/src/vboot/vbnv.c +++ b/src/vboot/vbnv.c @@ -146,3 +146,8 @@ int vboot_wants_oprom(void) vbnv_setup(); return (vbnv_data(BOOT_OFFSET) & BOOT_OPROM_NEEDED) ? 1 : 0; } + +void vbnv_init(uint8_t *vbnv_copy) +{ + read_vbnv(vbnv_copy); +} diff --git a/src/vboot/vbnv.h b/src/vboot/vbnv.h index 7a0bf92f40..5e5160a992 100644 --- a/src/vboot/vbnv.h +++ b/src/vboot/vbnv.h @@ -26,6 +26,8 @@ void regen_vbnv_crc(uint8_t *vbnv_copy); int get_recovery_mode_from_vbnv(void); void set_recovery_mode_into_vbnv(int recovery_reason); int vboot_wants_oprom(void); +/* Initialize and read vbnv. This is used in the main vboot logic path. */ +void vbnv_init(uint8_t *vbnv_copy); /* CMOS backend */ void read_vbnv_cmos(uint8_t *vbnv_copy); diff --git a/src/vboot/vboot_logic.c b/src/vboot/vboot_logic.c index 9145ad003e..d06faa740a 100644 --- a/src/vboot/vboot_logic.c +++ b/src/vboot/vboot_logic.c @@ -310,8 +310,8 @@ void verstage_main(void) /* Set up context and work buffer */ vb2_init_work_context(&ctx); - /* Read nvdata from a non-volatile storage. */ - read_vbnv(ctx.nvdata); + /* Initialize and read nvdata from non-volatile storage. */ + vbnv_init(ctx.nvdata); /* Set S3 resume flag if vboot should behave differently when selecting * which slot to boot. This is only relevant to vboot if the platform |