diff options
author | Stephen Warren <swarren@nvidia.com> | 2015-07-21 17:49:41 -0600 |
---|---|---|
committer | Tom Warren <twarren@nvidia.com> | 2015-07-27 15:53:48 -0700 |
commit | 8b5c738b85d49bdc7c48e5f787938fc40320bb27 (patch) | |
tree | af9eccbc853d36ed8d5dd8ff708e835b002c9041 /common/cmd_pxe.c | |
parent | ba521994229cbb707d04fb7e30395bba7007c776 (diff) | |
download | u-boot-imx-8b5c738b85d49bdc7c48e5f787938fc40320bb27.zip u-boot-imx-8b5c738b85d49bdc7c48e5f787938fc40320bb27.tar.gz u-boot-imx-8b5c738b85d49bdc7c48e5f787938fc40320bb27.tar.bz2 |
pxe: add AArch64 image support
The sysboot and pxe commands currently support either U-Boot formats or
raw zImages. Add support for the AArch64 Linux port's native image format
too.
As with zImage support, there is no auto-detection of the native image
format. Rather, if the image is auto-detected as a U-Boot format, U-Boot
will try to interpret it as such. Otherwise, U-Boot will fall back to a
raw/native image format, if one is enabled.
My belief is that CONFIG_CMD_BOOTZ won't ever be enabled for any AArch64
port, hence there's never a need to differentiate between CONFIG_CMD_
_BOOTI and _BOOTZ at run-time; compile-time will do. Even if this isn't
true, we want to prefer _BOOTI over _BOOTZ when defined, since _BOOTI is
definitely the native format for AArch64.
Change-Id: I83c5cc7566032afd72516de46f4e5eb7a780284a
Signed-off-by: Stephen Warren <swarren@nvidia.com>
Signed-off-by: Tom Warren <twarren@nvidia.com>
Diffstat (limited to 'common/cmd_pxe.c')
-rw-r--r-- | common/cmd_pxe.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/common/cmd_pxe.c b/common/cmd_pxe.c index abf0941..080b376 100644 --- a/common/cmd_pxe.c +++ b/common/cmd_pxe.c @@ -793,8 +793,12 @@ static int label_boot(cmd_tbl_t *cmdtp, struct pxe_label *label) /* Try bootm for legacy and FIT format image */ if (genimg_get_format(buf) != IMAGE_FORMAT_INVALID) do_bootm(cmdtp, 0, bootm_argc, bootm_argv); -#ifdef CONFIG_CMD_BOOTZ - /* Try booting a zImage */ +#ifdef CONFIG_CMD_BOOTI + /* Try booting an AArch64 Linux kernel image */ + else + do_booti(cmdtp, 0, bootm_argc, bootm_argv); +#elif defined(CONFIG_CMD_BOOTZ) + /* Try booting a Image */ else do_bootz(cmdtp, 0, bootm_argc, bootm_argv); #endif |