From 1aaaadde17a5954b0dec30c7bdaff799670e4f6d Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Thu, 25 Jan 2024 22:28:59 +0800
Subject: [PATCH] Yocto:Image:IGKBoard-All:Add machine learnning image support
---
bootloader/build.sh | 72 ++++++++++++++++++++++++++----------
1 files changed, 52 insertions(+), 20 deletions(-)
diff --git a/bootloader/build.sh b/bootloader/build.sh
index 0e19266..664b894 100755
--- a/bootloader/build.sh
+++ b/bootloader/build.sh
@@ -1,5 +1,8 @@
#!/bin/bash
+# Build Cortex-M FreeRTOS SDK or not
+#BUILD_MCORE=yes
+
# this project absolute path
PRJ_PATH=$(cd $(dirname "${BASH_SOURCE[0]}") && pwd)
@@ -54,16 +57,21 @@
export BOARD=`jq -r ".bsp.board" $CONF_FILE | tr 'A-Z' 'a-z'`
export BSP_VER=`jq -r ".bsp.version" $CONF_FILE | tr 'A-Z' 'a-z'`
export GIT_URL=`jq -r ".bsp.giturl" $CONF_FILE | tr 'A-Z' 'a-z'`
- export CROSS_COMPILE=`jq -r ".bsp.cortexAtool" $CONF_FILE | tr 'A-Z' 'a-z'`
- export MCORE_COMPILE=`jq -r ".bsp.cortexMtool" $CONF_FILE | tr 'A-Z' 'a-z'`
+ export CROSS_COMPILE=`jq -r ".bsp.cortexAtool" $CONF_FILE`
+ export MCORE_COMPILE=`jq -r ".bsp.cortexMtool" $CONF_FILE`
- export SRCS="imx-atf uboot-imx imx-mkimage"
export BRANCH=$BSP_VER
export JOBS=`cat /proc/cpuinfo | grep processor | wc -l`
export ARCH=arm
+ # i.MX6ULL only need uboot-imx
+ if [[ $BOARD =~ mx6ull ]] ; then
+ export SRCS="uboot-imx"
+ return ;
+ fi
+
+ export SRCS="uboot-imx imx-atf imx-mkimage"
export_fmver
- export SRCS="imx-atf uboot-imx imx-mkimage"
if [[ $BOARD =~ mx8mp ]] ; then
@@ -108,6 +116,10 @@
fi
done
+ # i.MX6ULL only need uboot-imx
+ if [[ $BOARD =~ mx6ull ]] ; then
+ return ;
+ fi
mkdir -p $FMW_PATH && cd $FMW_PATH
@@ -144,25 +156,29 @@
function build_cortexM()
{
SRC=mcore-sdk
- DEMO_PATH=boards/$MCORE_BOARD/multicore_examples/rpmsg_lite_str_echo_rtos/armgcc
+
+ if [ "$BUILD_MCORE" != "yes" ] ; then
+ pr_warn "Skip build Cortex-M core SDK source code '$SRC'"
+ return 0;
+ fi
+
+ if [[ $BOARD =~ mx8mp ]] ; then
+ EVK=evkmimx8mp
+ fi
+ DEMO_PATH=boards/$EVK/multicore_examples/rpmsg_lite_str_echo_rtos/armgcc
DEMO_BIN=release/rpmsg_lite_str_echo_rtos.bin
- export ARMGCC_DIR=$(echo $MCORE_COMPILE | sed 's\/bin/.*\\')
+ MCORE_IMAGE=cortexM-${BOARD}.bin
if [ ! -d $PRJ_PATH/$SRC ] ; then
- if [ "$MCORE_BUILD" == "yes" ] ; then
- pr_error "INFO: Please download $BOARD SDK from https://mcuxpresso.nxp.com"
- pr_error " by manual and decompress it to folder '$SRC'"
- exit;
- else
- pr_warn "Skip build Cortex-M core SDK source code '$SRC'"
- return ;
- fi
+ pr_error "INFO: Please download $BOARD SDK from https://mcuxpresso.nxp.com by manual and"
+ pr_error " decompress it to folder '$PRJ_PATH/$SRC'"
+ exit;
fi
pr_warn "start build $SRC"
- cd $PRJ_PATH/${SRC}
- cd $DEMO_PATH
+ cd $PRJ_PATH/${SRC}/$DEMO_PATH
+ export ARMGCC_DIR=$(echo $MCORE_COMPILE | sed 's\/bin/.*\\')
#bash clean.sh
if [ ! -s $DEMO_BIN ] ; then
@@ -170,7 +186,7 @@
fi
set -x
- cp $DEMO_BIN $MKIMG_BIN_PATH/$MCORE_IMAGE
+ cp $DEMO_BIN $PRFX_PATH/$MCORE_IMAGE
set +x
}
@@ -193,6 +209,16 @@
make ARCH=arm ${BOARD}_defconfig
fi
make -j${JOBS} CROSS_COMPILE=${CROSS_COMPILE} ARCH=arm
+
+ # i.MX6ULL only need uboot-imx
+ if [[ $BOARD =~ mx6ull ]] ; then
+ cp u-boot-dtb.imx u-boot-${BOARD}.imx
+ chmod a+x u-boot-${BOARD}.imx
+ set -x
+ cp u-boot-${BOARD}.imx $PRFX_PATH
+ set +x
+ return 0;
+ fi
set -x
cp u-boot.bin $MKIMG_BIN_PATH
@@ -270,9 +296,15 @@
cd $PRJ_PATH
mkdir -p $PRFX_PATH
- build_atf
- #build_cortexM
build_uboot
+
+ # i.MX6ULL only need uboot-imx
+ if [[ ${BOARD} =~ mx6ull ]] ; then
+ return ;
+ fi
+
+ build_atf
+ build_cortexM
build_imxboot
}
@@ -286,7 +318,7 @@
if [[ -n "$INST_PATH" && -w $INST_PATH ]] ; then
pr_info "install bootloader to '$INST_PATH'"
- cp $PRFX_PATH/u-boot-${BOARD}.imx $INST_PATH
+ cp $PRFX_PATH/* $INST_PATH
#sz $PRFX_PATH/u-boot-${BOARD}.imx
fi
}
--
Gitblit v1.9.1