summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMing Liu <ming.liu@toradex.com>2020-08-05 19:25:20 +0200
committerMing Liu <ming.liu@toradex.com>2020-08-10 15:45:03 +0200
commit7c758ad91693bac28796d8e7b9d27c15f89b6cac (patch)
treeb656eb1940fccffddb81e23fcdfb92c9fded4c67
parent8a2e5df0404ac59a5f1e74638a4220274afb4867 (diff)
meta: change to use libubootenv to provide u-boot-fw-utils
The changes include: - Drop PREFERRED_PROVIDER_u-boot-fw-utils from machine conf. - Drop u-boot-toradex-fw-utils recipes. - Drop fw_unlock_mmc.sh, that's not needed for libubootenv. - Drop u-boot.inc, use default u-boot.inc from OE layer. - Add fw_env.config to uboot recipe. - Set UBOOT_INITIAL_ENV to u-boot-initial-env, which is being referred in libubootenv. Related-to: ELB-2552 Signed-off-by: Ming Liu <ming.liu@toradex.com>
-rw-r--r--conf/machine/apalis-imx8.conf2
-rw-r--r--conf/machine/apalis-imx8x.conf2
-rw-r--r--conf/machine/colibri-imx8x.conf2
-rw-r--r--conf/machine/verdin-imx8mm.conf2
-rw-r--r--recipes-bsp/u-boot/files/apalis-imx6/fw_unlock_mmc.sh6
-rw-r--r--recipes-bsp/u-boot/files/fw_unlock_mmc.sh6
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-common.inc7
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-common_2018.03.inc8
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-fw-utils_2018.03.bb52
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex-fw-utils_2019.07.bb76
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex_2018.03.bb3
-rw-r--r--recipes-bsp/u-boot/u-boot-toradex_2019.07.bb3
-rw-r--r--recipes-bsp/u-boot/u-boot.inc347
13 files changed, 16 insertions, 500 deletions
diff --git a/conf/machine/apalis-imx8.conf b/conf/machine/apalis-imx8.conf
index bfdf648..adf5edf 100644
--- a/conf/machine/apalis-imx8.conf
+++ b/conf/machine/apalis-imx8.conf
@@ -52,11 +52,9 @@ PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex-rt"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils"
# Currently we use the nxp 2018.03 downstream for mx8 as some features are
# not yet available in 2019.03.
PREFERRED_VERSION_u-boot-toradex = "2018.03"
-PREFERRED_VERSION_u-boot-toradex-fw-utils = "2018.03"
MACHINE_FIRMWARE_append = " linux-firmware-pcie8997"
MACHINE_FIRMWARE_append = " firmware-imx-vpu-imx8"
diff --git a/conf/machine/apalis-imx8x.conf b/conf/machine/apalis-imx8x.conf
index ab88230..e923fe4 100644
--- a/conf/machine/apalis-imx8x.conf
+++ b/conf/machine/apalis-imx8x.conf
@@ -47,11 +47,9 @@ PREFERRED_PROVIDER_u-boot-default-script = "u-boot-distro-boot"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex-rt"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils"
# Currently we use the nxp 2018.03 downstream for mx8 as some features are
# not yet available in 2019.03.
PREFERRED_VERSION_u-boot-toradex = "2018.03"
-PREFERRED_VERSION_u-boot-toradex-fw-utils = "2018.03"
MACHINE_FIRMWARE_append = " linux-firmware-usb8997"
MACHINE_FIRMWARE_append = " firmware-imx-vpu-imx8"
diff --git a/conf/machine/colibri-imx8x.conf b/conf/machine/colibri-imx8x.conf
index ba69996..464ea24 100644
--- a/conf/machine/colibri-imx8x.conf
+++ b/conf/machine/colibri-imx8x.conf
@@ -54,11 +54,9 @@ PREFERRED_PROVIDER_virtual/kernel_use-mainline-bsp_preempt-rt = "linux-toradex-m
PREFERRED_PROVIDER_virtual/dtb_use-mainline-bsp = "device-tree-overlays-mainline"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils"
# Currently we use the nxp 2018.03 downstream for mx8 as some features are
# not yet available in 2019.03.
PREFERRED_VERSION_u-boot-toradex = "2018.03"
-PREFERRED_VERSION_u-boot-toradex-fw-utils = "2018.03"
MACHINE_FIRMWARE_append = " linux-firmware-pcie8997"
MACHINE_FIRMWARE_append = " firmware-imx-vpu-imx8"
diff --git a/conf/machine/verdin-imx8mm.conf b/conf/machine/verdin-imx8mm.conf
index 4cd188d..a1c4182 100644
--- a/conf/machine/verdin-imx8mm.conf
+++ b/conf/machine/verdin-imx8mm.conf
@@ -64,11 +64,9 @@ MACHINE_FIRMWARE_append = " linux-firmware-ath10k linux-firmware-imx-sdma-imx7d"
PREFERRED_PROVIDER_virtual/kernel = "linux-toradex"
PREFERRED_PROVIDER_virtual/kernel_preempt-rt = "linux-toradex-rt"
PREFERRED_PROVIDER_virtual/bootloader = "u-boot-toradex"
-PREFERRED_PROVIDER_u-boot-fw-utils ?= "u-boot-toradex-fw-utils"
# Currently we use the nxp 2018.03 downstream for mx8 as some features are
# not yet available in 2019.03.
PREFERRED_VERSION_u-boot-toradex = "2018.03"
-PREFERRED_VERSION_u-boot-toradex-fw-utils = "2018.03"
MACHINE_FIRMWARE_append = " linux-firmware-sd8997"
MACHINE_FIRMWARE_append = " firmware-imx-vpu-imx8"
diff --git a/recipes-bsp/u-boot/files/apalis-imx6/fw_unlock_mmc.sh b/recipes-bsp/u-boot/files/apalis-imx6/fw_unlock_mmc.sh
deleted file mode 100644
index 130a425..0000000
--- a/recipes-bsp/u-boot/files/apalis-imx6/fw_unlock_mmc.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-# Give fw_setenv mmcblkXboot0 write permissions
-fw_setenv() {
- echo 0 > /sys/block/mmcblk2boot0/force_ro
- /sbin/fw_setenv "$@"
- echo 1 > /sys/block/mmcblk2boot0/force_ro
-}
diff --git a/recipes-bsp/u-boot/files/fw_unlock_mmc.sh b/recipes-bsp/u-boot/files/fw_unlock_mmc.sh
deleted file mode 100644
index 86d941c..0000000
--- a/recipes-bsp/u-boot/files/fw_unlock_mmc.sh
+++ /dev/null
@@ -1,6 +0,0 @@
-# Give fw_setenv mmcblk0boot0 write permissions
-fw_setenv() {
- echo 0 > /sys/block/mmcblk0boot0/force_ro
- /sbin/fw_setenv "$@"
- echo 1 > /sys/block/mmcblk0boot0/force_ro
-}
diff --git a/recipes-bsp/u-boot/u-boot-toradex-common.inc b/recipes-bsp/u-boot/u-boot-toradex-common.inc
index da75041..b8343f6 100644
--- a/recipes-bsp/u-boot/u-boot-toradex-common.inc
+++ b/recipes-bsp/u-boot/u-boot-toradex-common.inc
@@ -17,10 +17,15 @@ SRCBRANCH = "toradex_2019.07"
SRCREV_use-head-next = "${AUTOREV}"
SRCBRANCH_use-head-next = "toradex_2019.07-next"
-SRC_URI = "git://git.toradex.com/u-boot-toradex.git;protocol=https;branch=${SRCBRANCH}"
+SRC_URI = " \
+ git://git.toradex.com/u-boot-toradex.git;protocol=https;branch=${SRCBRANCH} \
+ file://fw_env.config \
+"
S = "${WORKDIR}/git"
+UBOOT_INITIAL_ENV = "u-boot-initial-env"
+
do_deploy_append_mx8m() {
# Deploy the mkimage, u-boot-nodtb.bin and fsl-imx8m*-XX.dtb for mkimage to generate boot binary
if [ -n "${UBOOT_CONFIG}" ]
diff --git a/recipes-bsp/u-boot/u-boot-toradex-common_2018.03.inc b/recipes-bsp/u-boot/u-boot-toradex-common_2018.03.inc
index 518a6e9..999ed4f 100644
--- a/recipes-bsp/u-boot/u-boot-toradex-common_2018.03.inc
+++ b/recipes-bsp/u-boot/u-boot-toradex-common_2018.03.inc
@@ -4,8 +4,10 @@ SECTION = "bootloaders"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://Licenses/gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-UBOOT_SRC ?= "git://git.toradex.com/u-boot-toradex.git;protocol=https"
-SRC_URI = "${UBOOT_SRC};branch=${SRCBRANCH}"
+SRC_URI = " \
+ git://git.toradex.com/u-boot-toradex.git;protocol=https;branch=${SRCBRANCH} \
+ file://fw_env.config \
+"
SRCREV = "548a7dcc242452d447634beef792447515c324f8"
SRCREV_use-head-next = "${AUTOREV}"
@@ -15,6 +17,8 @@ S = "${WORKDIR}/git"
inherit toradex-u-boot-localversion
+UBOOT_INITIAL_ENV = "u-boot-initial-env"
+
COMPATIBLE_MACHINE = "(mx8)"
PACKAGE_ARCH = "${MACHINE_ARCH}"
diff --git a/recipes-bsp/u-boot/u-boot-toradex-fw-utils_2018.03.bb b/recipes-bsp/u-boot/u-boot-toradex-fw-utils_2018.03.bb
deleted file mode 100644
index 2c46a73..0000000
--- a/recipes-bsp/u-boot/u-boot-toradex-fw-utils_2018.03.bb
+++ /dev/null
@@ -1,52 +0,0 @@
-require u-boot-toradex-common_${PV}.inc
-
-SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities"
-DEPENDS += "mtd-utils"
-
-SRC_URI += " \
- file://fw_env.config \
- file://fw_unlock_mmc.sh \
-"
-
-INSANE_SKIP_${PN} = "already-stripped"
-EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" V=1'
-EXTRA_OEMAKE_class-cross = 'HOSTCC="${CC} ${CFLAGS} ${LDFLAGS}" V=1'
-
-inherit uboot-config
-
-do_compile () {
- oe_runmake ${UBOOT_MACHINE}
- oe_runmake envtools
-}
-
-install_unlock_emmc() {
- install -d ${D}${sysconfdir}/profile.d/
- install -m 0644 ${WORKDIR}/fw_unlock_mmc.sh ${D}${sysconfdir}/profile.d/fw_unlock_mmc.sh
-}
-
-do_install_append_mx8() {
- install_unlock_emmc
-}
-
-do_install () {
- install -d ${D}${base_sbindir}
- install -d ${D}${sysconfdir}
- install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_printenv
- install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_setenv
- install -m 0644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
-}
-
-do_install_class-cross () {
- install -d ${D}${bindir_cross}
- install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_printenv
- install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_setenv
-}
-
-SYSROOT_DIRS_append_class-cross = " ${bindir_cross}"
-
-PROVIDES += "u-boot-fw-utils"
-RPROVIDES_${PN} += "u-boot-fw-utils"
-
-COMPATIBLE_MACHINE = "(mx8)"
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-BBCLASSEXTEND = "cross"
diff --git a/recipes-bsp/u-boot/u-boot-toradex-fw-utils_2019.07.bb b/recipes-bsp/u-boot/u-boot-toradex-fw-utils_2019.07.bb
deleted file mode 100644
index a1e1290..0000000
--- a/recipes-bsp/u-boot/u-boot-toradex-fw-utils_2019.07.bb
+++ /dev/null
@@ -1,76 +0,0 @@
-require u-boot-toradex-common.inc
-
-SUMMARY = "U-Boot bootloader fw_printenv/setenv utilities"
-DEPENDS += "mtd-utils"
-
-SRC_URI += " \
- file://fw_env.config \
- file://fw_unlock_mmc.sh \
-"
-
-INSANE_SKIP_${PN} = "already-stripped"
-EXTRA_OEMAKE_class-target = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${CC} ${CFLAGS} ${LDFLAGS}" HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" V=1'
-EXTRA_OEMAKE_class-cross = 'HOSTCC="${CC} ${CFLAGS} ${LDFLAGS}" V=1'
-
-inherit uboot-config
-
-do_compile () {
- oe_runmake ${UBOOT_MACHINE}
- oe_runmake envtools
-}
-
-do_install () {
- install -d ${D}${base_sbindir}
- install -d ${D}${sysconfdir}
- install -m 755 ${S}/tools/env/fw_printenv ${D}${base_sbindir}/fw_printenv
- ln -s fw_printenv ${D}${base_sbindir}/fw_setenv
-
- if [ -e ${WORKDIR}/fw_env.config ]; then
- install -m 0644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
- else
- install -m 0644 ${S}/tools/env/fw_env.config ${D}${sysconfdir}/fw_env.config
- fi
-}
-
-install_unlock_emmc() {
- install -d ${D}${sysconfdir}/profile.d/
- install -m 0644 ${WORKDIR}/fw_unlock_mmc.sh ${D}${sysconfdir}/profile.d/fw_unlock_mmc.sh
-}
-
-do_install_append_apalis-imx6() {
- install_unlock_emmc
-}
-
-do_install_append_colibri-imx6() {
- install_unlock_emmc
-}
-
-do_install_append_colibri-imx7-emmc() {
- install_unlock_emmc
-}
-
-do_install_append_apalis-imx8() {
- install_unlock_emmc
-}
-
-do_install_append_apalis-imx8x() {
- install_unlock_emmc
-}
-
-do_install_append_colibri-imx8x() {
- install_unlock_emmc
-}
-
-do_install_class-cross () {
- install -d ${D}${bindir_cross}
- install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_printenv
- install -m 755 ${S}/tools/env/fw_printenv ${D}${bindir_cross}/fw_setenv
-}
-
-SYSROOT_DIRS_append_class-cross = " ${bindir_cross}"
-
-PROVIDES += "u-boot-fw-utils"
-RPROVIDES_${PN} += "u-boot-fw-utils"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-BBCLASSEXTEND = "cross"
diff --git a/recipes-bsp/u-boot/u-boot-toradex_2018.03.bb b/recipes-bsp/u-boot/u-boot-toradex_2018.03.bb
index 520d7fd..6279286 100644
--- a/recipes-bsp/u-boot/u-boot-toradex_2018.03.bb
+++ b/recipes-bsp/u-boot/u-boot-toradex_2018.03.bb
@@ -1,9 +1,10 @@
require recipes-bsp/u-boot/u-boot.inc
-require recipes-bsp/u-boot/u-boot-toradex-initial-env.inc
require u-boot-toradex-common_${PV}.inc
SUMMARY = "U-Boot bootloader with support for Toradex i.MX 8 series SoMs"
+B = "${WORKDIR}/build"
+
PROVIDES += "u-boot"
DEPENDS_append = " dtc-native"
diff --git a/recipes-bsp/u-boot/u-boot-toradex_2019.07.bb b/recipes-bsp/u-boot/u-boot-toradex_2019.07.bb
index 668820b..b61ad37 100644
--- a/recipes-bsp/u-boot/u-boot-toradex_2019.07.bb
+++ b/recipes-bsp/u-boot/u-boot-toradex_2019.07.bb
@@ -1,6 +1,7 @@
require u-boot-toradex-common.inc
require recipes-bsp/u-boot/u-boot.inc
-require recipes-bsp/u-boot/u-boot-toradex-initial-env.inc
+
+B = "${WORKDIR}/build"
PROVIDES += "u-boot"
diff --git a/recipes-bsp/u-boot/u-boot.inc b/recipes-bsp/u-boot/u-boot.inc
deleted file mode 100644
index 947ecc3..0000000
--- a/recipes-bsp/u-boot/u-boot.inc
+++ /dev/null
@@ -1,347 +0,0 @@
-SUMMARY = "Universal Boot Loader for embedded devices"
-PROVIDES = "virtual/bootloader"
-
-B = "${WORKDIR}/build"
-
-PACKAGE_ARCH = "${MACHINE_ARCH}"
-
-DEPENDS += "kern-tools-native"
-
-inherit uboot-config uboot-extlinux-config uboot-sign deploy cml1 python3native
-
-DEPENDS += "swig-native"
-
-EXTRA_OEMAKE = 'CROSS_COMPILE=${TARGET_PREFIX} CC="${TARGET_PREFIX}gcc ${TOOLCHAIN_OPTIONS}" V=1'
-EXTRA_OEMAKE += 'HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}"'
-EXTRA_OEMAKE += 'STAGING_INCDIR=${STAGING_INCDIR_NATIVE} STAGING_LIBDIR=${STAGING_LIBDIR_NATIVE}'
-
-PACKAGECONFIG ??= "openssl"
-# u-boot will compile its own tools during the build, with specific
-# configurations (aka when CONFIG_FIT_SIGNATURE is enabled) openssl is needed as
-# a host build dependency.
-PACKAGECONFIG[openssl] = ",,openssl-native"
-
-# Allow setting an additional version string that will be picked up by the
-# u-boot build system and appended to the u-boot version. If the .scmversion
-# file already exists it will not be overwritten.
-UBOOT_LOCALVERSION ?= ""
-
-# Some versions of u-boot use .bin and others use .img. By default use .bin
-# but enable individual recipes to change this value.
-UBOOT_SUFFIX ??= "bin"
-UBOOT_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_SUFFIX}"
-UBOOT_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_SUFFIX}"
-UBOOT_MAKE_TARGET ?= "all"
-
-# Output the ELF generated. Some platforms can use the ELF file and directly
-# load it (JTAG booting, QEMU) additionally the ELF can be used for debugging
-# purposes.
-UBOOT_ELF ?= ""
-UBOOT_ELF_SUFFIX ?= "elf"
-UBOOT_ELF_IMAGE ?= "u-boot-${MACHINE}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}"
-UBOOT_ELF_BINARY ?= "u-boot.${UBOOT_ELF_SUFFIX}"
-UBOOT_ELF_SYMLINK ?= "u-boot-${MACHINE}.${UBOOT_ELF_SUFFIX}"
-
-# Some versions of u-boot build an SPL (Second Program Loader) image that
-# should be packaged along with the u-boot binary as well as placed in the
-# deploy directory. For those versions they can set the following variables
-# to allow packaging the SPL.
-SPL_BINARY ?= ""
-SPL_BINARYNAME ?= "${@os.path.basename(d.getVar("SPL_BINARY"))}"
-SPL_IMAGE ?= "${SPL_BINARYNAME}-${MACHINE}-${PV}-${PR}"
-SPL_SYMLINK ?= "${SPL_BINARYNAME}-${MACHINE}"
-
-# Additional environment variables or a script can be installed alongside
-# u-boot to be used automatically on boot. This file, typically 'uEnv.txt'
-# or 'boot.scr', should be packaged along with u-boot as well as placed in the
-# deploy directory. Machine configurations needing one of these files should
-# include it in the SRC_URI and set the UBOOT_ENV parameter.
-UBOOT_ENV_SUFFIX ?= "txt"
-UBOOT_ENV ?= ""
-UBOOT_ENV_BINARY ?= "${UBOOT_ENV}.${UBOOT_ENV_SUFFIX}"
-UBOOT_ENV_IMAGE ?= "${UBOOT_ENV}-${MACHINE}-${PV}-${PR}.${UBOOT_ENV_SUFFIX}"
-UBOOT_ENV_SYMLINK ?= "${UBOOT_ENV}-${MACHINE}.${UBOOT_ENV_SUFFIX}"
-
-# U-Boot EXTLINUX variables. U-Boot searches for /boot/extlinux/extlinux.conf
-# to find EXTLINUX conf file.
-UBOOT_EXTLINUX_INSTALL_DIR ?= "/boot/extlinux"
-UBOOT_EXTLINUX_CONF_NAME ?= "extlinux.conf"
-UBOOT_EXTLINUX_SYMLINK ?= "${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}-${PR}"
-
-# returns all the elements from the src uri that are .cfg files
-def find_cfgs(d):
- sources=src_patches(d, True)
- sources_list=[]
- for s in sources:
- if s.endswith('.cfg'):
- sources_list.append(s)
-
- return sources_list
-
-do_configure () {
- if [ -n "${UBOOT_CONFIG}" ]; then
- unset i j
- 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
- oe_runmake -C ${S} O=${B}/${config} ${config}
- merge_config.sh -m -O ${B}/${config} ${B}/${config}/.config ${@" ".join(find_cfgs(d))}
- oe_runmake -C ${S} O=${B}/${config} oldconfig
- fi
- done
- unset j
- done
- unset i
- else
- if [ -n "${UBOOT_MACHINE}" ]; then
- oe_runmake -C ${S} O=${B} ${UBOOT_MACHINE}
- else
- oe_runmake -C ${S} O=${B} oldconfig
- fi
- merge_config.sh -m .config ${@" ".join(find_cfgs(d))}
- cml1_do_configure
- fi
-}
-
-do_compile () {
- if [ "${@bb.utils.filter('DISTRO_FEATURES', 'ld-is-gold', d)}" ]; then
- sed -i 's/$(CROSS_COMPILE)ld$/$(CROSS_COMPILE)ld.bfd/g' ${S}/config.mk
- fi
-
- unset LDFLAGS
- unset CFLAGS
- unset CPPFLAGS
-
- if [ ! -e ${B}/.scmversion -a ! -e ${S}/.scmversion ]
- then
- echo ${UBOOT_LOCALVERSION} > ${B}/.scmversion
- echo ${UBOOT_LOCALVERSION} > ${S}/.scmversion
- fi
-
- 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
- oe_runmake -C ${S} O=${B}/${config} ${UBOOT_MAKE_TARGET}
- for binary in ${UBOOT_BINARIES}; do
- k=$(expr $k + 1);
- if [ $k -eq $i ]; then
- cp ${B}/${config}/${binary} ${B}/${config}/u-boot-${type}.${UBOOT_SUFFIX}
- fi
- done
- unset k
- fi
- done
- unset j
- done
- unset i
- else
- oe_runmake -C ${S} O=${B} ${UBOOT_MAKE_TARGET}
- fi
-
-}
-
-do_install () {
- 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}/u-boot-${type}.${UBOOT_SUFFIX} ${D}/boot/u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${D}/boot/${UBOOT_BINARY}
- fi
- done
- unset j
- done
- unset i
- else
- install -d ${D}/boot
- install -m 644 ${B}/${UBOOT_BINARY} ${D}/boot/${UBOOT_IMAGE}
- ln -sf ${UBOOT_IMAGE} ${D}/boot/${UBOOT_BINARY}
- fi
-
- if [ -n "${UBOOT_ELF}" ]
- then
- 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 -m 644 ${B}/${config}/${UBOOT_ELF} ${D}/boot/u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY}-${type}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${D}/boot/${UBOOT_BINARY}
- fi
- done
- unset j
- done
- unset i
- else
- install -m 644 ${B}/${UBOOT_ELF} ${D}/boot/${UBOOT_ELF_IMAGE}
- ln -sf ${UBOOT_ELF_IMAGE} ${D}/boot/${UBOOT_ELF_BINARY}
- fi
- fi
-
- if [ -e ${WORKDIR}/fw_env.config ] ; then
- install -d ${D}${sysconfdir}
- install -m 644 ${WORKDIR}/fw_env.config ${D}${sysconfdir}/fw_env.config
- fi
-
- if [ -n "${SPL_BINARY}" ]
- then
- 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 -m 644 ${B}/${config}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE}-${type}-${PV}-${PR}
- ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${D}/boot/${SPL_BINARYNAME}-${type}
- ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${D}/boot/${SPL_BINARYNAME}
- fi
- done
- unset j
- done
- unset i
- else
- install -m 644 ${B}/${SPL_BINARY} ${D}/boot/${SPL_IMAGE}
- ln -sf ${SPL_IMAGE} ${D}/boot/${SPL_BINARYNAME}
- fi
- fi
-
- if [ -n "${UBOOT_ENV}" ]
- then
- install -m 644 ${WORKDIR}/${UBOOT_ENV_BINARY} ${D}/boot/${UBOOT_ENV_IMAGE}
- ln -sf ${UBOOT_ENV_IMAGE} ${D}/boot/${UBOOT_ENV_BINARY}
- fi
-
- if [ "${UBOOT_EXTLINUX}" = "1" ]
- then
- install -Dm 0644 ${UBOOT_EXTLINUX_CONFIG} ${D}/${UBOOT_EXTLINUX_INSTALL_DIR}/${UBOOT_EXTLINUX_CONF_NAME}
- fi
-
-}
-
-FILES_${PN} = "/boot ${sysconfdir} ${datadir}"
-
-do_deploy () {
- 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}/u-boot-${type}.${UBOOT_SUFFIX} ${DEPLOYDIR}/u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX}
- cd ${DEPLOYDIR}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK}-${type}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_SYMLINK}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_BINARY}-${type}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_SUFFIX} ${UBOOT_BINARY}
- fi
- done
- unset j
- done
- unset i
- else
- install -d ${DEPLOYDIR}
- install -m 644 ${B}/${UBOOT_BINARY} ${DEPLOYDIR}/${UBOOT_IMAGE}
- cd ${DEPLOYDIR}
- rm -f ${UBOOT_BINARY} ${UBOOT_SYMLINK}
- ln -sf ${UBOOT_IMAGE} ${UBOOT_SYMLINK}
- ln -sf ${UBOOT_IMAGE} ${UBOOT_BINARY}
- fi
-
- if [ -n "${UBOOT_ELF}" ]
- then
- 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 -m 644 ${B}/${config}/${UBOOT_ELF} ${DEPLOYDIR}/u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}-${type}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}-${type}
- ln -sf u-boot-${type}-${PV}-${PR}.${UBOOT_ELF_SUFFIX} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}
- fi
- done
- unset j
- done
- unset i
- else
- install -m 644 ${B}/${UBOOT_ELF} ${DEPLOYDIR}/${UBOOT_ELF_IMAGE}
- ln -sf ${UBOOT_ELF_IMAGE} ${DEPLOYDIR}/${UBOOT_ELF_BINARY}
- ln -sf ${UBOOT_ELF_IMAGE} ${DEPLOYDIR}/${UBOOT_ELF_SYMLINK}
- fi
- fi
-
-
- if [ -n "${SPL_BINARY}" ]
- then
- 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 -m 644 ${B}/${config}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE}-${type}-${PV}-${PR}
- rm -f ${DEPLOYDIR}/${SPL_BINARYNAME} ${DEPLOYDIR}/${SPL_SYMLINK}-${type}
- ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_BINARYNAME}-${type}
- ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_BINARYNAME}
- ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_SYMLINK}-${type}
- ln -sf ${SPL_IMAGE}-${type}-${PV}-${PR} ${DEPLOYDIR}/${SPL_SYMLINK}
- fi
- done
- unset j
- done
- unset i
- else
- install -m 644 ${B}/${SPL_BINARY} ${DEPLOYDIR}/${SPL_IMAGE}
- rm -f ${DEPLOYDIR}/${SPL_BINARYNAME} ${DEPLOYDIR}/${SPL_SYMLINK}
- ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_BINARYNAME}
- ln -sf ${SPL_IMAGE} ${DEPLOYDIR}/${SPL_SYMLINK}
- fi
- fi
-
-
- if [ -n "${UBOOT_ENV}" ]
- then
- install -m 644 ${WORKDIR}/${UBOOT_ENV_BINARY} ${DEPLOYDIR}/${UBOOT_ENV_IMAGE}
- rm -f ${DEPLOYDIR}/${UBOOT_ENV_BINARY} ${DEPLOYDIR}/${UBOOT_ENV_SYMLINK}
- ln -sf ${UBOOT_ENV_IMAGE} ${DEPLOYDIR}/${UBOOT_ENV_BINARY}
- ln -sf ${UBOOT_ENV_IMAGE} ${DEPLOYDIR}/${UBOOT_ENV_SYMLINK}
- fi
-
- if [ "${UBOOT_EXTLINUX}" = "1" ]
- then
- install -m 644 ${UBOOT_EXTLINUX_CONFIG} ${DEPLOYDIR}/${UBOOT_EXTLINUX_SYMLINK}
- ln -sf ${UBOOT_EXTLINUX_SYMLINK} ${DEPLOYDIR}/${UBOOT_EXTLINUX_CONF_NAME}-${MACHINE}
- ln -sf ${UBOOT_EXTLINUX_SYMLINK} ${DEPLOYDIR}/${UBOOT_EXTLINUX_CONF_NAME}
- fi
-}
-
-addtask deploy before do_build after do_compile