diff options
4 files changed, 28 insertions, 2 deletions
diff --git a/meta-aspeed/conf/machine/include/aspeed.inc b/meta-aspeed/conf/machine/include/aspeed.inc index c3c5f18c2a..046553b164 100644 --- a/meta-aspeed/conf/machine/include/aspeed.inc +++ b/meta-aspeed/conf/machine/include/aspeed.inc @@ -14,7 +14,10 @@ INITRAMFS_IMAGE ?= "aspeed-image-initramfs" INITRAMFS_FSTYPES ?= "cpio.xz" WKS_FILE ?= "emmc-aspeed.wks.in" -WKS_FILE_DEPENDS ?= "virtual/kernel" +WKS_FILE_DEPENDS ?= " \ + virtual/bootloader \ + virtual/kernel \ +" WKS_HOSTFW_SIZE ?= "5G" IMAGE_BOOT_FILES ?= "fitImage-${INITRAMFS_IMAGE}-${MACHINE}-${MACHINE};fitImage" diff --git a/meta-aspeed/recipes-bsp/u-boot/files/u-boot-env-ast2600.txt b/meta-aspeed/recipes-bsp/u-boot/files/u-boot-env-ast2600.txt new file mode 100644 index 0000000000..47a474c92d --- /dev/null +++ b/meta-aspeed/recipes-bsp/u-boot/files/u-boot-env-ast2600.txt @@ -0,0 +1,9 @@ +bootargs=console=ttyS4,115200n8 +boota=setenv bootpart 2; setenv rootfs rofs-a; run setmmcargs; ext4load mmc 0:${bootpart} ${loadaddr} fitImage && bootm; echo Error loading kernel FIT image +bootb=setenv bootpart 3; setenv rootfs rofs-b; run setmmcargs; ext4load mmc 0:${bootpart} ${loadaddr} fitImage && bootm; echo Error loading kernel FIT image +bootcmd=if test "${bootside}" = "b"; then run bootb; run boota; else run boota; run bootb; fi +bootdelay=2 +bootside=a +loadaddr=0x83000000 +rootfs=rofs-a +setmmcargs=setenv bootargs ${bootargs} rootwait root=PARTLABEL=${rootfs} diff --git a/meta-aspeed/recipes-bsp/u-boot/u-boot-aspeed-sdk_2019.04.bb b/meta-aspeed/recipes-bsp/u-boot/u-boot-aspeed-sdk_2019.04.bb index 3ecd17ce6f..99bcafc09a 100644 --- a/meta-aspeed/recipes-bsp/u-boot/u-boot-aspeed-sdk_2019.04.bb +++ b/meta-aspeed/recipes-bsp/u-boot/u-boot-aspeed-sdk_2019.04.bb @@ -6,3 +6,17 @@ require u-boot-aspeed.inc PROVIDES += "u-boot" DEPENDS += "bc-native dtc-native" + +SRC_URI_append_df-phosphor-mmc = " file://u-boot-env-ast2600.txt" + +UBOOT_ENV_SIZE_df-phosphor-mmc = "0x10000" +UBOOT_ENV_df-phosphor-mmc = "u-boot-env" +UBOOT_ENV_SUFFIX_df-phosphor-mmc = "bin" + +do_compile_append() { + if [ -n "${UBOOT_ENV}" ] + then + # Generate redundant environment image + ${B}/tools/mkenvimage -r -s ${UBOOT_ENV_SIZE} -o ${WORKDIR}/${UBOOT_ENV_BINARY} ${WORKDIR}/u-boot-env-ast2600.txt + fi +} diff --git a/meta-aspeed/wic/emmc-aspeed.wks.in b/meta-aspeed/wic/emmc-aspeed.wks.in index 816352176a..ace5f47af3 100644 --- a/meta-aspeed/wic/emmc-aspeed.wks.in +++ b/meta-aspeed/wic/emmc-aspeed.wks.in @@ -21,7 +21,7 @@ bootloader --ptable gpt -part --align 4 --fixed-size 1M --label u-boot-env +part --align 4 --fixed-size 1M --source rawcopy --sourceparams="file=${DEPLOY_DIR_IMAGE}/u-boot-env.bin" part --fstype=ext4 --fixed-size 64M --source bootimg-partition --label boot-a part --fstype=ext4 --fixed-size 64M --source bootimg-partition --label boot-b part --fstype=ext4 --fixed-size 1G --source rootfs --label rofs-a |