summaryrefslogtreecommitdiff
path: root/utility/load_kernel_test.c
diff options
context:
space:
mode:
authorGaurav Shah <gauravsh@chromium.org>2010-07-09 14:56:50 -0700
committerGaurav Shah <gauravsh@chromium.org>2010-07-09 14:56:50 -0700
commit2abbc4b6fdf97186531021d220c73a1f1b85ead6 (patch)
tree8b921c77f7e6ba1ee269e37714f885a114205b21 /utility/load_kernel_test.c
parent18b814d9bc7fcf0a7e5d7fca57eed8229f0e9aac (diff)
downloadvboot-2abbc4b6fdf97186531021d220c73a1f1b85ead6.tar.gz
Add an optional flag argument to load_kernel_test.
Review URL: http://codereview.chromium.org/2905006
Diffstat (limited to 'utility/load_kernel_test.c')
-rw-r--r--utility/load_kernel_test.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/utility/load_kernel_test.c b/utility/load_kernel_test.c
index 1f448579..7055dccb 100644
--- a/utility/load_kernel_test.c
+++ b/utility/load_kernel_test.c
@@ -82,8 +82,8 @@ int main(int argc, char* argv[]) {
lkp.bytes_per_lba = LBA_BYTES;
/* Read command line parameters */
- if (3 > argc) {
- fprintf(stderr, "usage: %s <drive_image> <sign_key>\n", argv[0]);
+ if (4 > argc) {
+ fprintf(stderr, "usage: %s <drive_image> <sign_key> [boot flag]\n", argv[0]);
return 1;
}
image_name = argv[1];
@@ -118,11 +118,14 @@ int main(int argc, char* argv[]) {
return 1;
}
- /* TODO: Option for boot mode - developer, recovery */
/* Need to skip the address check, since we're putting it somewhere on the
* heap instead of its actual target address in the firmware. */
- lkp.boot_flags = BOOT_FLAG_SKIP_ADDR_CHECK | BOOT_FLAG_RECOVERY;
-
+ if (argc == 4) {
+ lkp.boot_flags = atoi(argv[3]) | BOOT_FLAG_SKIP_ADDR_CHECK;
+ } else {
+ /* Default to recovery. */
+ lkp.boot_flags = BOOT_FLAG_SKIP_ADDR_CHECK | BOOT_FLAG_RECOVERY;
+ }
/* Call LoadKernel() */
rv = LoadKernel(&lkp);
printf("LoadKernel() returned %d\n", rv);