vboot: update vboot2 functions to use new vb2_error_t

To make explicit when vboot2 error codes should be returned,
use the new vb2_error_t type on all functions which return
VB2_ERROR_* constants.

Additionally, add required vboot submodule commit id e6700f4c:
    2019-07-31 14:12:30 +0800 - (vboot: update vboot2 functions to use new vb2_error_t)

NOTE: This patch was merged separately on the Chromium tree:
https://chromium-review.googlesource.com/c/1728499

BUG=b:124141368, chromium:988410
TEST=make clean && make test-abuild
BRANCH=none

Change-Id: I804c2b407e496d0c8eb9833be629b7c40118415c
Signed-off-by: Joel Kitching <kitching@google.com>
Cq-Depend: chromium:1728292
Reviewed-on: https://review.coreboot.org/c/coreboot/+/34860
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Julius Werner <jwerner@chromium.org>
This commit is contained in:
Joel Kitching
2019-07-31 14:19:00 +08:00
committed by Patrick Georgi
parent 057d1b9d7e
commit 220ac049ba
7 changed files with 35 additions and 30 deletions

View File

@ -55,11 +55,11 @@ void vb2ex_printf(const char *func, const char *fmt, ...)
return;
}
int vb2ex_read_resource(struct vb2_context *ctx,
enum vb2_resource_index index,
uint32_t offset,
void *buf,
uint32_t size)
vb2_error_t vb2ex_read_resource(struct vb2_context *ctx,
enum vb2_resource_index index,
uint32_t offset,
void *buf,
uint32_t size)
{
struct region_device rdev;
const char *name;
@ -88,19 +88,21 @@ int vb2ex_read_resource(struct vb2_context *ctx,
}
/* No-op stubs that can be overridden by SoCs with hardware crypto support. */
__weak int vb2ex_hwcrypto_digest_init(enum vb2_hash_algorithm hash_alg,
uint32_t data_size)
__weak vb2_error_t vb2ex_hwcrypto_digest_init(enum vb2_hash_algorithm hash_alg,
uint32_t data_size)
{
return VB2_ERROR_EX_HWCRYPTO_UNSUPPORTED;
}
__weak int vb2ex_hwcrypto_digest_extend(const uint8_t *buf, uint32_t size)
__weak vb2_error_t vb2ex_hwcrypto_digest_extend(const uint8_t *buf,
uint32_t size)
{
BUG(); /* Should never get called if init() returned an error. */
return VB2_ERROR_UNKNOWN;
}
__weak int vb2ex_hwcrypto_digest_finalize(uint8_t *digest, uint32_t digest_size)
__weak vb2_error_t vb2ex_hwcrypto_digest_finalize(uint8_t *digest,
uint32_t digest_size)
{
BUG(); /* Should never get called if init() returned an error. */
return VB2_ERROR_UNKNOWN;
@ -169,7 +171,8 @@ static int handle_digest_result(void *slot_hash, size_t slot_hash_sz)
return 0;
}
static int hash_body(struct vb2_context *ctx, struct region_device *fw_main)
static vb2_error_t hash_body(struct vb2_context *ctx,
struct region_device *fw_main)
{
uint64_t load_ts;
uint32_t expected_size;
@ -178,7 +181,7 @@ static int hash_body(struct vb2_context *ctx, struct region_device *fw_main)
const size_t hash_digest_sz = sizeof(hash_digest);
size_t block_size = sizeof(block);
size_t offset;
int rv;
vb2_error_t rv;
/* Clear the full digest so that any hash digests less than the
* max have trailing zeros. */
@ -313,7 +316,7 @@ void verstage_main(void)
{
struct vb2_context ctx;
struct region_device fw_main;
int rv;
vb2_error_t rv;
timestamp_add_now(TS_START_VBOOT);