From f33a87a519444fd2b4618eb1713cb5cce2b6a007 Mon Sep 17 00:00:00 2001 From: Stefan Agner Date: Mon, 26 Mar 2018 22:50:38 +0200 Subject: u-boot-toradex: add inc to generate U-Boot default environment Including u-boot-toradex-env.inc will generate a uEnv.txt text file containing the default environment of the U-Boot binary. This is useful for Toradex Easy Installer to write the default environment using the "u_boot_env" property. Signed-off-by: Stefan Agner Acked-by: Marcel Ziswiler --- recipes-bsp/u-boot/u-boot-toradex-env.inc | 74 +++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 recipes-bsp/u-boot/u-boot-toradex-env.inc diff --git a/recipes-bsp/u-boot/u-boot-toradex-env.inc b/recipes-bsp/u-boot/u-boot-toradex-env.inc new file mode 100644 index 0000000..74c0b49 --- /dev/null +++ b/recipes-bsp/u-boot/u-boot-toradex-env.inc @@ -0,0 +1,74 @@ +# This provides uEnv.txt files containing default environment. + +do_compile_append() { + + if [ -n "${UBOOT_CONFIG}" ]; then + unset i j k + for config in ${UBOOT_MACHINE}; do + i=$(expr $i + 1); + for type in ${UBOOT_CONFIG}; do + j=$(expr $j + 1); + if [ $j -eq $i ]; then + cp ${B}/${config}/common/env_common.o ${TMPDIR}/uboot.env-${config} + ${OBJCOPY} -O binary -j ".rodata.default_environment" ${TMPDIR}/uboot.env-${config} + tr '\0' '\n' < ${TMPDIR}/uboot.env-${config} | sed -e '/^$/d' > ${B}/${config}/uEnv-${type}.txt + rm ${TMPDIR}/uboot.env-${config} + fi + done + unset j + done + unset i + else + cp ${B}/common/env_common.o ${TMPDIR}/uboot.env + ${OBJCOPY} -O binary -j ".rodata.default_environment" ${TMPDIR}/uboot.env + tr '\0' '\n' < ${TMPDIR}/uboot.env | sed -e '/^$/d' > ${B}/uEnv.txt + rm ${TMPDIR}/uboot.env + fi +} + + +do_install_append() { + if [ -n "${UBOOT_CONFIG}" ]; then + for config in ${UBOOT_MACHINE}; do + i=$(expr $i + 1); + for type in ${UBOOT_CONFIG}; do + j=$(expr $j + 1); + if [ $j -eq $i ]; then + install -d ${D}/boot + install -m 644 ${B}/${config}/uEnv-${type}.txt ${D}/boot/uEnv-${type}-${PV}-${PR}.txt + ln -sf uEnv-${type}-${PV}-${PR}.txt ${D}/boot/uEnv-${type}.txt + ln -sf uEnv-${type}-${PV}-${PR}.txt ${D}/boot/uEnv.txt + fi + done + unset j + done + unset i + else + install -d ${D}/boot + install -m 644 ${B}/uEnv.txt ${D}/boot/uEnv-${MACHINE}-${PV}-${PR}.txt + ln -sf uEnv-${MACHINE}-${PV}-${PR}.txt ${D}/boot/uEnv.txt + fi +} + +do_deploy_append() { + if [ -n "${UBOOT_CONFIG}" ]; then + for config in ${UBOOT_MACHINE}; do + i=$(expr $i + 1); + for type in ${UBOOT_CONFIG}; do + j=$(expr $j + 1); + if [ $j -eq $i ]; then + install -d ${DEPLOYDIR} + install -m 644 ${B}/${config}/uEnv-${type}.txt ${DEPLOYDIR}/uEnv-${type}-${PV}-${PR}.txt + ln -sf uEnv-${type}-${PV}-${PR}.txt ${DEPLOYDIR}/uEnv-${type}.txt + ln -sf uEnv-${type}-${PV}-${PR}.txt ${DEPLOYDIR}/uEnv.txt + fi + done + unset j + done + unset i + else + install -d ${DEPLOYDIR} + install -m 644 ${B}/uEnv.txt ${DEPLOYDIR}/uEnv-${MACHINE}-${PV}-${PR}.txt + ln -sf uEnv-${MACHINE}-${PV}-${PR}.txt ${DEPLOYDIR}/uEnv.txt + fi +} -- cgit v1.2.3