Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
buildroot-*/
output/
buildroot-*
.DS_Store
.DS_Store
dl/
43 changes: 43 additions & 0 deletions br-ext-chip-canaan/configs/k230_canmv_01studio_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
BR2_riscv=y
BR2_RISCV_ISA_RVC=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_DL_DIR="$(TOPDIR)/../../dl"
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/package/canaan_k230_sdk/canaan_k230_post-image.sh"



BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="300M"
BR2_PACKAGE_HOST_MOSQUITTO=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
BR2_OPENIPC_SOC_VENDOR="canaan"
BR2_OPENIPC_SOC_MODEL="k230"
BR2_OPENIPC_SOC_FAMILY="k230"






# Packages
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSONFILTER=y
BR2_PACKAGE_LIBCURL_OPENIPC=y
BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y
# BR2_PACKAGE_LIBCURL_OPENIPC_PROXY_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_COOKIES_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_EXTRA_PROTOCOLS_FEATURES is not set
BR2_PACKAGE_LIBEVENT_OPENIPC=y
BR2_PACKAGE_LIBOGG_OPENIPC=y
BR2_PACKAGE_MAJESTIC_FONTS=y
BR2_PACKAGE_MAJESTIC_WEBUI=y
#BR2_PACKAGE_MAJESTIC=y
BR2_PACKAGE_MBEDTLS_OPENIPC=y
BR2_PACKAGE_MOTORS=y
BR2_PACKAGE_OPUS_OPENIPC=y
#BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y
BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_CANAAN_K230_SDK=y
44 changes: 44 additions & 0 deletions br-ext-chip-canaan/configs/k230_canmv_lckfb_defconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
BR2_riscv=y
BR2_RISCV_ISA_RVC=y
BR2_TOOLCHAIN_BUILDROOT_CXX=y
BR2_DL_DIR="$(TOPDIR)/../../dl"
BR2_ROOTFS_POST_IMAGE_SCRIPT="$(BR2_EXTERNAL)/package/canaan_k230_sdk/canaan_k230_post-image.sh"



BR2_TARGET_ROOTFS_EXT2=y
BR2_TARGET_ROOTFS_EXT2_4=y
BR2_TARGET_ROOTFS_EXT2_SIZE="300M"
BR2_PACKAGE_HOST_MOSQUITTO=y
BR2_PACKAGE_HOST_UBOOT_TOOLS=y
BR2_OPENIPC_SOC_VENDOR="canaan"
BR2_OPENIPC_SOC_MODEL="k230"
BR2_OPENIPC_SOC_FAMILY="k230"






# Packages
BR2_PACKAGE_DROPBEAR_OPENIPC=y
BR2_PACKAGE_IPCTOOL=y
BR2_PACKAGE_JSONFILTER=y
BR2_PACKAGE_LIBCURL_OPENIPC=y
BR2_PACKAGE_LIBCURL_OPENIPC_CURL=y
# BR2_PACKAGE_LIBCURL_OPENIPC_PROXY_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_COOKIES_SUPPORT is not set
# BR2_PACKAGE_LIBCURL_OPENIPC_EXTRA_PROTOCOLS_FEATURES is not set
BR2_PACKAGE_LIBEVENT_OPENIPC=y
BR2_PACKAGE_LIBOGG_OPENIPC=y
BR2_PACKAGE_MAJESTIC_FONTS=y
BR2_PACKAGE_MAJESTIC_WEBUI=y
#BR2_PACKAGE_MAJESTIC=y
BR2_PACKAGE_MBEDTLS_OPENIPC=y
BR2_PACKAGE_MOTORS=y
BR2_PACKAGE_OPUS_OPENIPC=y
#BR2_PACKAGE_OPUS_OPENIPC_FIXED_POINT=y
BR2_PACKAGE_VTUND_OPENIPC=y
BR2_PACKAGE_YAML_CLI=y
BR2_PACKAGE_CANAAN_K230_SDK=y
BR2_PACKAGE_CANAAN_K230_SDK_CONF="k230_canmv_lckfb_defconfig"
1 change: 1 addition & 0 deletions general/package/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -109,6 +109,7 @@ source "$BR2_EXTERNAL_GENERAL_PATH/package/xiongmai-osdrv-xm530/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/xmdp/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/yaml-cli/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/zerotier-one/Config.in"
source "$BR2_EXTERNAL_GENERAL_PATH/package/canaan_k230_sdk/Config.in"

# Legacy
source "$BR2_EXTERNAL_GENERAL_PATH/package/legacy/ambarella-osdrv-s3l/Config.in"
Expand Down
25 changes: 25 additions & 0 deletions general/package/canaan_k230_sdk/Config.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
menuconfig BR2_PACKAGE_CANAAN_K230_SDK
bool "canaan k230 sdk"
default n
help
canaan k230 SoCs SDK

https://github.com/kendryte/k230_linux_sdk/

if BR2_PACKAGE_CANAAN_K230_SDK
config BR2_PACKAGE_CANAAN_K230_SDK_BUILD_FROM_SRC
bool "k230 sdk build from source"
default n
help
canaan k230 SoCs SDK

https://github.com/kendryte/k230_linux_sdk/

config BR2_PACKAGE_CANAAN_K230_SDK_CONF
string "k230 sdk config"
default "k230_canmv_01studio_defconfig"
help
canaan k230 SoCs SDK

https://github.com/kendryte/k230_linux_sdk/
endif
32 changes: 32 additions & 0 deletions general/package/canaan_k230_sdk/canaan_k230_post-image.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
#!/bin/bash
DATE=$(date +%y.%m.%d)
FILE=${TARGET_DIR}/usr/lib/os-release
set -e

echo OPENIPC_VERSION=${DATE:0:1}.${DATE:1} >> ${FILE}
date +GITHUB_VERSION="\"${GIT_BRANCH-local}+${GIT_HASH-build}, %Y-%m-%d"\" >> ${FILE}
echo BUILD_OPTION=${OPENIPC_VARIANT} >> ${FILE}
date +TIME_STAMP=%s >> ${FILE}


k230_openipc_img_replace_rootfs()
{
cd ${BINARIES_DIR}
ext4_pos="$(fdisk -l sysimage-sdcard.img | grep sysimage-sdcard.img2 | cut -d ' ' -f2)"
dd if=rootfs.ext4 of=sysimage-sdcard.img seek=${ext4_pos} conv=notrunc
gzip -k -f sysimage-sdcard.img
chmod a+r sysimage-sdcard.img.gz
cd -
echo -e "k230 image is \033[31m ${BINARIES_DIR}/sysimage-sdcard.img.gz \033[0m"
}
k230_openipc_img_env_replace()
{
cd ${BINARIES_DIR}
mkenvimage -s 0x10000 -o env.env ${BR2_EXTERNAL}/package/canaan_k230_sdk/k230_env.env

dd if=env.env of=sysimage-sdcard.img seek=3840 conv=notrunc
cd -;
}

k230_openipc_img_env_replace
k230_openipc_img_replace_rootfs
4 changes: 4 additions & 0 deletions general/package/canaan_k230_sdk/canaan_k230_sdk.hash
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
sha256 7dcf94f5b1d77d05f9d3b10a83ac7eaf31f544cac6e83812dcd2dc766679a763 k230_canmv_01studio_defconfig_rootfs.tar.xz
sha256 f3cdcb80fa81eb09609bb7155bfa764a99ee50be18936aa2c0ab744813827e62 k230_canmv_01studio_defconfig_sysimage-sdcard.img.gz
sha256 363caf60733e9939e5ef51583d80c99955befd49714f43d3b79e724371ceff41 k230_canmv_lckfb_defconfig_rootfs.tar.xz
sha256 073166c6a1dbca79313ee0de3980fcada804727f15ab7494c5e457f32cd86eeb k230_canmv_lckfb_defconfig_sysimage-sdcard.img.gz
33 changes: 33 additions & 0 deletions general/package/canaan_k230_sdk/canaan_k230_sdk.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
################################################################################
#
# canaan k230 sdk
#
################################################################################
CANAAN_K230_SDK_SITE =
CANAAN_K230_SDK_SOURCE =

k230_download_url := $(shell \
if curl --output /dev/null --silent --head --fail https://ai.b-bug.org/k230/downloads/dl/openipc ;then \
echo "https://ai.b-bug.org/k230/downloads/dl/openipc"; \
else \
echo "https://kendryte-download.canaan-creative.com/k230/dl/openipc";\
fi ; )


CANAAN_K230_SDK_EXTRA_DOWNLOADS := $(k230_download_url)/$(call qstrip ,$(BR2_PACKAGE_CANAAN_K230_SDK_CONF))_sysimage-sdcard.img.gz
CANAAN_K230_SDK_EXTRA_DOWNLOADS += $(k230_download_url)/$(call qstrip ,$(BR2_PACKAGE_CANAAN_K230_SDK_CONF))_rootfs.tar.xz

define CANAAN_K230_SDK_INSTALL_TARGET_CMDS
tar -xf $(CANAAN_K230_SDK_DL_DIR)/rootfs.tar.xz -C $(TARGET_DIR)
rm -rf $(TARGET_DIR)/var/run;
rm -rf $(TARGET_DIR)/etc/init.d/S30dbus;
rm -rf $(TARGET_DIR)/etc/init.d/S40bluetoothd;
rm -rf $(TARGET_DIR)/etc/init.d/S48sntp;
rm -rf $(TARGET_DIR)/etc/init.d/S49ntp;
rm -rf $(TARGET_DIR)/etc/init.d/S50crond;
rm -rf $(TARGET_DIR)/etc/init.d/S50sshd;
rm -rf $(TARGET_DIR)/etc/init.d/S50telnet;
gunzip -f -k -c $(CANAAN_K230_SDK_DL_DIR)/sysimage-sdcard.img.gz > $(BINARIES_DIR)/sysimage-sdcard.img
endef

$(eval $(generic-package))
34 changes: 34 additions & 0 deletions general/package/canaan_k230_sdk/k230_env.env
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
arch=riscv
autoload=0
baudrate=115200
board=k230
board_name=k230
bootcmd=run blinux;
bootcmd_baremetal= mmc dev ${mmc_boot_dev_num}; mmc read 0 0x5000 0xa000; boot_baremetal 1 0 1400000;
bootcmd_usb=run usb_load; bootm $kernel_addr - $dtb_addr
bootdelay=3
console_port=console=ttyS1,115200
cpu=k230
dtb_addr=0xa000000
fdt_high=0xa100000
fdtcontroladdr=80293880
gatewayip=10.99.105.254
ipaddr=10.99.105.44
kernel_addr=0xc100000
loadaddr=0xc000000
mmc_boot_dev_num=1
netmask=255.255.255.0
ramdisk_addr=0xa100000
serverip=10.10.1.94
vendor=canaan
quick_boot=false
k=Image
kilp32=Image_ilp32
nuttex=nuttx-7000000-uart2.bin
blinux=ext4load mmc ${mmc_boot_dev_num}:1 0x3000000 /fw_jump_add_uboot_head.bin && ext4load mmc ${mmc_boot_dev_num}:1 0x200000 /${k} && ext4load mmc ${mmc_boot_dev_num}:1 0x2200000 /k.dtb && bootm 0x3000000 - 0x2200000;
blinuxilp32= setenv k Image_ilp32 && run blinux;
bnuttx=ext4load mmc ${mmc_boot_dev_num}:1 0x7000000 /${nuttex} && boot_baremetal 0 0x${fileaddr} 0x${filesize};
ethaddr=22:22:22:22:22:22
wlandev=rtl8189fs-generic
wlanssid=H3C_wjx
wlanpass=123456789