aboutsummaryrefslogtreecommitdiffstats
path: root/boot/bootmeth_cros.c
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2023-07-30 11:17:02 -0600
committerSimon Glass <sjg@chromium.org>2023-08-11 07:33:40 -0600
commitdaffb0be2c839f3abe431cd68c772fae0e7e49ca (patch)
treee351ce439869f04cb35adad5fa0bd8854807c059 /boot/bootmeth_cros.c
parentc279224ea6686a992b258b01e07fcadb7f0c7ecb (diff)
downloadu-boot-daffb0be2c839f3abe431cd68c772fae0e7e49ca.tar.gz
bootstd: cros: Add ARM support
Support booting ChromiumOS on ARM devices using FIT. Add an entry into the boot implementation which does not require a command line. This can be expanded over time as the bootm code is refactored. Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'boot/bootmeth_cros.c')
-rw-r--r--boot/bootmeth_cros.c16
1 files changed, 10 insertions, 6 deletions
diff --git a/boot/bootmeth_cros.c b/boot/bootmeth_cros.c
index 6c28feb34fe..1776fb1838c 100644
--- a/boot/bootmeth_cros.c
+++ b/boot/bootmeth_cros.c
@@ -419,13 +419,17 @@ static int cros_boot(struct udevice *dev, struct bootflow *bflow)
if (ret)
return log_msg_ret("rd", ret);
}
-#ifdef CONFIG_X86
- zboot_start(map_to_sysmem(bflow->buf), bflow->size, 0, 0,
- map_to_sysmem(bflow->x86_setup),
- bflow->cmdline);
-#endif
- return log_msg_ret("go", -EFAULT);
+ if (IS_ENABLED(CONFIG_X86)) {
+ ret = zboot_start(map_to_sysmem(bflow->buf), bflow->size, 0, 0,
+ map_to_sysmem(bflow->x86_setup),
+ bflow->cmdline);
+ } else {
+ ret = bootm_boot_start(map_to_sysmem(bflow->buf),
+ bflow->cmdline);
+ }
+
+ return log_msg_ret("go", ret);
}
static int cros_bootmeth_bind(struct udevice *dev)