Skip to content

Commit

Permalink
k230 canmv release v0.6
Browse files Browse the repository at this point in the history
  • Loading branch information
wuwentao committed Apr 29, 2024
1 parent 70adbd2 commit db3d1e9
Show file tree
Hide file tree
Showing 182 changed files with 1,888 additions and 28,623 deletions.
42 changes: 35 additions & 7 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,17 +56,31 @@ dev_release:
extends:
- .sync_github_gitee

# schedule daily build sync
download_release:
# schedule daily build sync and release sync
download_dir_release:
stage: publish
rules:
# daily build
- if: $CI_PIPELINE_SOURCE == "schedule"
# release
- if: $CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_TAG =~ /^v\d+\.\d+.*$/
extends:
- .release_download_dir

# sdk image publish with tag
release_image_publish:
stage: publish
rules:
- if: $CI_PIPELINE_SOURCE == "push" && $CI_COMMIT_TAG =~ /^v\d+\.\d+.*$/
parallel:
matrix:
- CONF: [k230_canmv_defconfig]
extends:
- .sync_download_dir
- .sync_release_image

.sync_github_gitee:
timeout: 30m
retry: 2
script:
- cd $CI_PROJECT_DIR
- ls -alht
Expand All @@ -91,16 +105,30 @@ download_release:
- echo "---push to github---"
- git push --atomic --tags -u -f github ${BRANCH} || git push --atomic --tags -u -f github ${BRANCH} || git push --atomic --tags -u -f github ${BRANCH}

.sync_download_dir:
.release_download_dir:
timeout: 60m
retry: 2
script:
- cd $CI_PROJECT_DIR
- ls -alht
- wget -qc https://ai.b-bug.org/k230/test_resources/ci/release/sync_file.sh -O ./sync_file.sh
- chmod +x ./sync_file.sh
- time ./sync_file.sh || time ./sync_file.sh
- wget -qc https://ai.b-bug.org/k230/test_resources/ci/release/release_download_dir.sh -O ./release_download_dir.sh
- chmod +x ./release_download_dir.sh
- time ./release_download_dir.sh || time ./release_download_dir.sh
- echo "all file synced"

.sync_release_image:
timeout: 60m
retry: 2
script:
- cd $CI_PROJECT_DIR
- ls -alht
- wget -qc https://ai.b-bug.org/k230/test_resources/ci/release/release_k230_canmv_image.sh -O ./release_k230_canmv_image.sh
- chmod +x ./release_k230_canmv_image.sh
- echo $CI_COMMIT_TAG || exit 1
- echo $CONF || exit 1
- time ./release_k230_canmv_image.sh $CI_COMMIT_TAG $CONF || time ./release_k230_canmv_image.sh $CI_COMMIT_TAG $CONF
- echo "all release file synced"

.show_vars: &show_vars
- echo "${JOB_TYPE}"
- echo "${DST_BASE}"
Expand Down
6 changes: 6 additions & 0 deletions Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,17 @@ choice BOARD
bool "k230 evb"
config K230_CANMV
bool "k230 pi canmv"
config K230_CANMV_01studio
bool "k230 canmv 01studio"
config K230D_CANMV
bool "k230d canmv 128M ddr"
endchoice

config BOARD
string
default "k230_evb" if K230_EVB
default "k230_canmv" if K230_CANMV
default "k230_canmv_01studio" if K230_CANMV_01studio
default "k230d_canmv" if K230D_CANMV

# source "micropython_port/Kconfig"
1 change: 1 addition & 0 deletions configs/k230_canmv_01studio_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CONFIG_K230_CANMV_01studio=y
1 change: 1 addition & 0 deletions configs/k230_canmv_only_rtt_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CONFIG_K230_CANMV=y
1 change: 1 addition & 0 deletions configs/k230d_canmv_only_rtt_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
CONFIG_K230D_CANMV=y
2 changes: 1 addition & 1 deletion k230_sdk
Submodule k230_sdk updated 1911 files
74 changes: 19 additions & 55 deletions k230_sdk_overlay/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ SHELL=/bin/bash
BUILD_TYPE ?= product

MPP_SRC_DIR="${K230_SDK_ROOT}/src/big/mpp"
MIDDLEWARE_SRC_DIR="${K230_SDK_ROOT}/src/big/middleware"
CDK_SRC_DIR="${K230_SDK_ROOT}/src/common/cdk"
BUILDROOT_EXT_SRC_PATH="src/little/buildroot-ext"
POST_COPY_ROOTFS_PATH=board/common/post_copy_rootfs
Expand Down Expand Up @@ -44,7 +43,6 @@ export PATH=$(TMP_PATH)
export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH)
export CDK_SRC_DIR=$(K230_SDK_ROOT)/$(CDK_SRC_PATH)
export MPP_SRC_DIR=$(K230_SDK_ROOT)/$(MPP_SRC_PATH)
export MIDDLEWARE_SRC_DIR=$(K230_SDK_ROOT)/src/big/middleware



Expand All @@ -69,12 +67,10 @@ endef

.PHONY: all
ifeq ($(CONFIG_SUPPORT_RTSMART)$(CONFIG_SUPPORT_LINUX),yy)
all .DEFAULT: check_src prepare_memory linux mpp middleware cdk-kernel cdk-kernel-install cdk-user cdk-user-install rt-smart-apps rt-smart-kernel big-core-opensbi little-core-opensbi buildroot uboot
else ifeq ($(CONFIG_SUPPORT_RTSMART),y)
all .DEFAULT: check_src prepare_memory mpp middleware rt-smart-apps rt-smart-kernel big-core-opensbi uboot
else ifeq ($(CONFIG_SUPPORT_LINUX),y)
all .DEFAULT: check_src prepare_memory linux little-core-opensbi buildroot uboot
endif
all .DEFAULT: check_src prepare_memory linux mpp mpp-middleware cdk-kernel cdk-kernel-install cdk-user cdk-user-install rt-smart-apps rt-smart-kernel big-core-opensbi little-core-opensbi buildroot uboot
else ifeq ($(CONFIG_SUPPORT_RTSMART),y)
all .DEFAULT: check_src prepare_memory mpp mpp-middleware rt-smart-apps rt-smart-kernel big-core-opensbi uboot
endif

.PHONY: download_toolchain
download_toolchain:
Expand Down Expand Up @@ -106,8 +102,8 @@ prepare_sourcecode:prepare_toolchain
#ai
@echo "download nncase sdk"
@rm -rf src/big/utils/; rm -rf src/big/ai;
@wget -q --show-progress $(DOWNLOAD_URL)/downloads/kmodel/kmodel_v2.8.0.1.tgz -O - | tar -xzC src/big/
@wget -q --show-progress $(DOWNLOAD_URL)/downloads/nncase/nncase_k230_v2.8.0.tgz -O - | tar -xzC src/big/
@wget -q --show-progress $(DOWNLOAD_URL)/downloads/kmodel/kmodel_v2.8.1.tgz -O - | tar -xzC src/big/
@wget -q --show-progress $(DOWNLOAD_URL)/downloads/nncase/nncase_k230_v2.8.1.tgz -O - | tar -xzC src/big/

#big utils
@echo "download big utils"
Expand Down Expand Up @@ -173,7 +169,7 @@ prepare_memory: defconfig .config tools/menuconfig_to_code.sh parse.mak
@./tools/kconfig/conf --silentoldconfig --olddefconfig $(KCONFIG_CFG)
@cp include/generated/autoconf.h src/little/uboot/board/canaan/common/sdk_autoconf.h
@cp include/generated/autoconf.h src/big/mpp/include/comm/k_autoconf_comm.h

@cp include/generated/autoconf.h src/big/rt-smart/kernel/bsp/maix3/k_autoconf_comm.h
# #@cp include/generated/autoconf.h src/little/buildroot-ext/package/feature_opreation/src/sdk_autoconf.h
@rm -rf include;
@./tools/menuconfig_to_code.sh
Expand Down Expand Up @@ -202,7 +198,6 @@ mpp-apps:check_src
cd $(MPP_SRC_DIR); \
make -C userapps/src || exit $?; \
mkdir -p $(RTSMART_SRC_DIR)/userapps/root/bin/; \
cp $(RTSMART_SRC_DIR)/init.sh $(RTSMART_SRC_DIR)/userapps/root/bin/; \
cd -;

.PHONY: mpp-apps-clean
Expand All @@ -220,29 +215,20 @@ mpp: mpp-kernel mpp-apps
.PHONY: mpp-clean
mpp-clean: mpp-kernel-clean mpp-apps-clean

.PHONY: poc
poc:check_src
.PHONY: mpp-middleware
mpp-middleware:
@export PATH=$(RTT_EXEC_PATH):$(PATH); \
export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH); \
cd $(K230_SDK_ROOT)/src/reference/business_poc/doorlock/big; \
mkdir -p build; cd build; cmake ../; \
make && make install; rm ./* -rf; \
cd $(MPP_SRC_DIR); \
make -C middleware || exit $?; \
cd -;

.PHONY: mpp-middleware-clean
mpp-middleware-clean:
@export PATH=$(RTT_EXEC_PATH):$(PATH); \
export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH); \
cd $(K230_SDK_ROOT)/src/reference/business_poc/doorlock_ov9286/big; \
mkdir -p build; cd build; cmake ../; \
make && make install; rm ./* -rf; \
cd -;

.PHONY: peephole
peephole:check_src
@export PATH=$(RTT_EXEC_PATH):$(PATH); \
export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH); \
cd $(K230_SDK_ROOT)/src/reference/business_poc/peephole/big; \
mkdir -p build; cd build; cmake ../; \
make && make install; rm ./* -rf; \
cd $(MPP_SRC_DIR); \
make clean -C middleware; \
cd -;

.PHONY: cdk-kernel
Expand Down Expand Up @@ -285,29 +271,6 @@ cdk-user-clean:
@export PATH=$(RTT_EXEC_PATH):$(LINUX_EXEC_PATH):$(PATH);export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH);export LINUX_BUILD_DIR=$(LINUX_BUILD_DIR); \
cd $(CDK_SRC_PATH)/user/;make clean;cd -;


.PHONY: middleware-mp4
middleware-mp4: check_src
@export PATH=$(RTT_EXEC_PATH):$(PATH); \
export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH); \
cd $(MIDDLEWARE_SRC_DIR); \
make -C mp4_format || exit $?; \
cd -;

.PHONY: middleware-mp4-clean
middleware-mp4-clean:
@export PATH=$(RTT_EXEC_PATH):$(PATH); \
export RTSMART_SRC_DIR=$(K230_SDK_ROOT)/$(RT-SMART_SRC_PATH); \
cd $(MIDDLEWARE_SRC_DIR); \
make clean -C mp4_format; \
cd -;

.PHONY: middleware
middleware: middleware-mp4

.PHONY: middleware-clean
middleware-clean: middleware-mp4-clean

.PHONY: rt-smart-apps
rt-smart-apps: defconfig prepare_memory check_src
@export RTT_CC=$(RTT_CC); \
Expand Down Expand Up @@ -368,6 +331,7 @@ linux-menuconfig:
linux-savedefconfig:
cd $(LINUX_SRC_PATH); \
make O=$(LINUX_BUILD_DIR) CROSS_COMPILE=$(LINUX_EXEC_PATH)/$(LINUX_CC_PREFIX) ARCH=riscv savedefconfig; \
cp $(LINUX_BUILD_DIR)/defconfig arch/riscv/configs/$(LINUX_KERNEL_DEFCONFIG);\
cd -

.PHONY: linux
Expand All @@ -391,7 +355,7 @@ big-core-opensbi: rt-smart-kernel
export PLATFORM=kendryte/fpgac908; \
make FW_FDT_PATH=hw.dtb FW_PAYLOAD_PATH=rtthread.bin O=$(BIG_OPENSBI_BUILD_DIR) OPENSBI_QUIET=1 || exit $?; \
cd -
rtt_update_romfs:
rtt_update_romfs:
@export RTT_CC=$(RTT_CC); \
export RTT_CC_PREFIX=$(RTT_CC_PREFIX); \
export RTT_EXEC_PATH=$(RTT_EXEC_PATH); \
Expand All @@ -408,7 +372,7 @@ rtt_update_romfs:
export PLATFORM=kendryte/fpgac908; \
$(MAKE) FW_FDT_PATH=hw.dtb FW_PAYLOAD_PATH=rtthread.bin O=$(BIG_OPENSBI_BUILD_DIR) OPENSBI_QUIET=1 || exit $?; \
cd -

.PHONY: big-core-opensbi-clean
big-core-opensbi-clean:
rm -rf $(BIG_OPENSBI_BUILD_DIR); \
Expand Down Expand Up @@ -511,7 +475,7 @@ build-image: defconfig prepare_memory check_src
cd $(K230_SDK_ROOT);

.PHONY: clean
clean: uboot-clean little-core-opensbi-clean linux-clean rt-smart-clean buildroot-clean
clean: uboot-clean little-core-opensbi-clean linux-clean rt-smart-clean buildroot-clean mpp-middleware-clean
@rm -rf defconfig
@rm -rf prepare_memory
@rm -rf $(BUILD_DIR)
Expand Down
4 changes: 2 additions & 2 deletions k230_sdk_overlay/board/common/gen_image_script/gen_image.sh
Original file line number Diff line number Diff line change
Expand Up @@ -125,8 +125,8 @@ gen_linux_bin_ramdisk ()
rm -rf rd;
}
copye_file_to_images;
if [ "${CONFIG_SUPPORT_LINUX}" = "y" ]; then
gen_version;
gen_version;
if [ "${CONFIG_SUPPORT_LINUX}" = "y" ]; then
add_dev_firmware;
shrink_rootfs;
gen_linux_bin_ramdisk;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,10 @@ gz_file_add_ver()
local storage="$(echo "$f" | sed -nE "s#[^-]*-([^\.]*).*#\1#p")"
local conf_name="${CONF%%_defconfig}"
local micropython_ver="v0.4";
cd ${K230_CANMV_ROOT};
git describe --tags `git rev-list --tags --max-count=1` && micropython_ver=$(git describe --tags `git rev-list --tags --max-count=1`)
git describe --tags --exact-match && micropython_ver=$(git describe --tags --exact-match)
cd -

cat ${sdk_ver_file} | grep v | cut -d- -f 1 > /dev/null && \
sdk_ver=$(cat ${sdk_ver_file} | grep v | cut -d- -f 1)

micropython_ver="$(awk -F- '/^micropython/ { print $1}' ${sdk_ver_file} | cut -d: -f2 )"
sdk_ver="$(awk -F- '/^sdk:/ { print $1}' ${sdk_ver_file} | cut -d: -f2 )"
cat ${nncase_ver_file} | grep NNCASE_VERSION -w | cut -d\" -f 2 > /dev/null && \
nncase_ver=$(cat ${nncase_ver_file} | grep NNCASE_VERSION -w | cut -d\" -f 2)
rm -rf ${conf_name}_${storage}_${sdk_ver}_nncase_v${nncase_ver}.img.gz;
Expand Down Expand Up @@ -88,34 +85,55 @@ gen_version()
local nncase_ver_file="${K230_SDK_ROOT}/src/big/nncase/riscv64/nncase/include/nncase/version.h"
cat ${nncase_ver_file} | grep NNCASE_VERSION -w | cut -d\" -f 2 > /dev/null && \
nncase_ver=$(cat ${nncase_ver_file} | grep NNCASE_VERSION -w | cut -d\" -f 2)
local sdk_ver="unkonwn"
local micropython_ver="unkonwn"


cd "${BUILD_DIR}/images/little-core/rootfs" ;
pushd ${BUILD_DIR}/images/little-core/rootfs
mkdir -p etc/version/

{ #sdk_ver;
set +e; commitid=$(awk -F- '/^sdk:/ { print $6}' ${post_copy_rootfs_dir}/${ver_file});set -e;
set +e; last_tag=$(awk -F- '/^sdk:/ { print $1}' ${post_copy_rootfs_dir}/${ver_file} | cut -d: -f2 ) ;set -e;


[ "${commitid}" != "" ] || commitid="unkonwn"
[ "${last_tag}" != "" ] || last_tag="unkonwn"


git rev-parse --short HEAD && commitid=$(git rev-parse --short HEAD)
git describe --tags `git rev-list --tags --max-count=1` && last_tag=$(git describe --tags `git rev-list --tags --max-count=1`)
git describe --tags --exact-match && last_tag=$(git describe --tags --exact-match)
sdk_ver="${last_tag}-$(date "+%Y%m%d-%H%M%S")-$(whoami)-$(hostname)-${commitid}"
}
{ #micropython;
set +e; commitid=$(awk -F- '/^micropython/ { print $6}' ${post_copy_rootfs_dir}/${ver_file});set -e;
set +e; last_tag=$(awk -F- '/^micropython/ { print $1}' ${post_copy_rootfs_dir}/${ver_file} | cut -d: -f2 ) ;set -e;


[ "${commitid}" != "" ] || commitid="unkonwn"
[ "${last_tag}" != "" ] || last_tag="unkonwn"

pushd ${K230_CANMV_ROOT}
git rev-parse --short HEAD && commitid=$(git rev-parse --short HEAD)
git describe --tags `git rev-list --tags --max-count=1` && last_tag=$(git describe --tags `git rev-list --tags --max-count=1`)
git describe --tags --exact-match && last_tag=$(git describe --tags --exact-match)
popd

micropython_ver="${last_tag}-$(date "+%Y%m%d-%H%M%S")-$(whoami)-$(hostname)-${commitid}"
}

set +e; commitid=$(awk -F- '/^[^#]/ { print $6}' ${post_copy_rootfs_dir}/${ver_file});set -e;
set +e; last_tag=$(awk -F- '/^[^#]/ { print $1}' ${post_copy_rootfs_dir}/${ver_file} | head -1 ) ;set -e;


[ "${commitid}" != "" ] || commitid="unkonwn"
[ "${last_tag}" != "" ] || last_tag="unkonwn"

git rev-parse --short HEAD && commitid=$(git rev-parse --short HEAD)
git describe --tags `git rev-list --tags --max-count=1` && last_tag=$(git describe --tags `git rev-list --tags --max-count=1`)
git describe --tags --exact-match && last_tag=$(git describe --tags --exact-match)

ver="${last_tag}-$(date "+%Y%m%d-%H%M%S")-$(whoami)-$(hostname)-${commitid}"
echo -e "#############SDK VERSION######################################" >${ver_file}
echo -e ${ver} >> ${ver_file}
echo -e "micropython:${micropython_ver}" >> ${ver_file}
echo -e "sdk:${sdk_ver}" >> ${ver_file}
echo -e "nncase:${nncase_ver}" >> ${ver_file}
echo -e "##############################################################" >>${ver_file}
echo "build version: ${ver}"
echo "build version: ${micropython_ver}"

mkdir -p ${post_copy_rootfs_dir}/etc/version/
cp -f ${ver_file} ${post_copy_rootfs_dir}/${ver_file}

cd -;
popd;
}

#增加外设的固件到文件系统
Expand Down
Loading

0 comments on commit db3d1e9

Please sign in to comment.