summaryrefslogtreecommitdiff
path: root/utility/load_kernel_test.c
diff options
context:
space:
mode:
Diffstat (limited to 'utility/load_kernel_test.c')
-rw-r--r--utility/load_kernel_test.c33
1 files changed, 14 insertions, 19 deletions
diff --git a/utility/load_kernel_test.c b/utility/load_kernel_test.c
index 3e4fb90c..540d4382 100644
--- a/utility/load_kernel_test.c
+++ b/utility/load_kernel_test.c
@@ -22,6 +22,10 @@
#define LBA_BYTES 512
#define KERNEL_BUFFER_SIZE 0xA00000
+static uint8_t workbuf[VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE];
+static struct vb2_context *ctx;
+static struct vb2_shared_data *sd;
+
/* Global variables for stub functions */
static LoadKernelParams lkp;
static FILE *image_file = NULL;
@@ -225,31 +229,22 @@ int main(int argc, char* argv[])
lkp.kernel_buffer_size = KERNEL_BUFFER_SIZE;
/* Set up vboot context. */
- struct vb2_context ctx;
- memset(&ctx, 0, sizeof(ctx));
- /* No need to initialize ctx->nvdata[]; defaults are fine */
- /* TODO(chromium:441893): support dev-mode flag and external gpt flag */
- ctx.workbuf = malloc(VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE);
- if (!ctx.workbuf) {
- fprintf(stderr, "Can't allocate workbuf\n");
+ if (vb2api_init(&workbuf, sizeof(workbuf), &ctx)) {
+ fprintf(stderr, "Can't initialize workbuf\n");
return 1;
}
- ctx.workbuf_size = VB2_KERNEL_WORKBUF_RECOMMENDED_SIZE;
+ sd = vb2_get_sd(ctx);
+ sd->vbsd = shared;
+
+ /* No need to initialize ctx->nvdata[]; defaults are fine */
+ /* TODO(chromium:441893): support dev-mode flag and external gpt flag */
if (boot_flags & BOOT_FLAG_RECOVERY)
- ctx.flags |= VB2_CONTEXT_RECOVERY_MODE;
+ ctx->flags |= VB2_CONTEXT_RECOVERY_MODE;
if (boot_flags & BOOT_FLAG_DEVELOPER)
- ctx.flags |= VB2_CONTEXT_DEVELOPER_MODE;
- if (VB2_SUCCESS != vb2_init_context(&ctx)) {
- free(ctx.workbuf);
- fprintf(stderr, "Can't init context\n");
- return 1;
- }
-
- struct vb2_shared_data *sd = vb2_get_sd(&ctx);
- sd->vbsd = shared;
+ ctx->flags |= VB2_CONTEXT_DEVELOPER_MODE;
/* Call LoadKernel() */
- rv = LoadKernel(&ctx, &lkp);
+ rv = LoadKernel(ctx, &lkp);
printf("LoadKernel() returned %d\n", rv);
if (VB2_SUCCESS == rv) {