wangxiaoyao 1fe1e58bd9 [api] API renaming; 3 jaren geleden
..
applications ad288e6d85 [bsp][d1] add interrupt manage, move c906 to libcpu 4 jaren geleden
drivers 1fe1e58bd9 [api] API renaming; 3 jaren geleden
libraries 6153edd246 [bsp][d1] add ARCH_MM_MMU config 4 jaren geleden
tools 8cdbfdfe5c [bsp/d1-allwinner-nezha] add compile tools script 3 jaren geleden
.config 985a85919b 修复编译问题 3 jaren geleden
.gitignore 6535d3ef45 windows 下 mkimage 脚本 3 jaren geleden
BUGS.md ad288e6d85 [bsp][d1] add interrupt manage, move c906 to libcpu 4 jaren geleden
Kconfig 30384f103d [rv64] add 32bit userspace limit config 4 jaren geleden
README.md db88d44891 bsp/qemu-virt64-riscv 修复CI编译 3 jaren geleden
SConscript 828dbeff9a [BSP] Add d1 nezha basic BSP 4 jaren geleden
SConstruct ad288e6d85 [bsp][d1] add interrupt manage, move c906 to libcpu 4 jaren geleden
generateimg.bat 6535d3ef45 windows 下 mkimage 脚本 3 jaren geleden
generateimg.sh 828dbeff9a [BSP] Add d1 nezha basic BSP 4 jaren geleden
link.lds 828dbeff9a [BSP] Add d1 nezha basic BSP 4 jaren geleden
link_stacksize.lds 828dbeff9a [BSP] Add d1 nezha basic BSP 4 jaren geleden
rtconfig.h 985a85919b 修复编译问题 3 jaren geleden
rtconfig.py 13a2c0105b [libcpu][c906] add fpu support 4 jaren geleden
sdcard.bat ad288e6d85 [bsp][d1] add interrupt manage, move c906 to libcpu 4 jaren geleden
smart-env.bat 6535d3ef45 windows 下 mkimage 脚本 3 jaren geleden
smart-env.sh 8cdbfdfe5c [bsp/d1-allwinner-nezha] add compile tools script 3 jaren geleden

README.md

RT-Thread全志D1移植

全志 d1-allwinner-nezha 属于 riscv64 平台

编译环境搭建

  • 拉取 RT-Thread 的代码仓库 git clone https://gitee.com/zhangsz0516/rt-thread.git

  • 切换到 rt-smart 分支 git checkout -b rt-smart origin/rt-smart

windows 环境

  • 打开 RT-Thread ENV 工具

  • 进入bsp目录 bsp/d1-allwinner-nezha

  • 进入 tools 目录 cd tools

  • 拉取 riscv64平台的编译工具 python get_toolchain.py riscv64

  • 返回 bsp 目录 cd ..

  • 设置环境变量 ./smart-env.bat

ubuntu 环境

  • 打开 ubuntu shell 终端

  • 进入bsp目录 bsp/d1-allwinner-nezha

  • 进入 tools 目录 cd tools

  • 拉取 riscv64平台的编译工具 python get_toolchain.py riscv64

  • 返回 bsp 目录 cd ..

  • 设置环境变量 source smart-env.sh riscv64

编译环境验证

  • 输入:riscv64-unknown-linux-musl-gcc -v

开发与编译

  • windows 下使用RT-Thread ENV 工具, menuconfig 配置工程,scons 编译工程

  • ubuntu 下 使用shell 终端: scons --menuconfig 配置工程, scons 编译工程

下载验证

  • 编译完后,通过:mkimage 生成 img 镜像文件,这个img 镜像文件可以使用 U-boot 引导启动

  • 启动方式一般有:SD卡启动、NandFlash启动、网络引导启动

  • windows 下使用全志的:AllwinnertechPhoeniSuitRelease20201225

  • 可以使用 xfel 工具进行烧写NandFlash

运行效果

## Booting kernel from Legacy Image at 45000000 ...
   Image Name:   
   Image Type:   RISC-V Linux Kernel Image (uncompressed)
   Data Size:    249576 Bytes = 243.7 KiB
   Load Address: 45000000
   Entry Point:  45000000
   Verifying Checksum ... OK
[01.861]
Starting kernel ...
heap: [0x45077bb0 - 0x48277bb0]
 \ | /
- RT -     Thread Smart Operating System
 / | \     5.0.0 build Jun 18 2022
 2006 - 2020 Copyright by rt-thread team
file system initialization done!
Hello RISC-V
msh />

参考文档