summaryrefslogtreecommitdiff
path: root/bsp/allwinner/d1/README.md
blob: afd01088dd889154af8836cf02dcfd878575ff73 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
# RT-Thread全志D1移植

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

## 编译环境搭建

- 拉取 RT-Thread Smart的代码仓库 `git clone https://gitee.com/guozhanxin/rtthread-smart.git`

### windows 环境

- 打开 RT-Thread ENV 工具

- 进入 tools 目录 `cd tools`

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

- 返回上级目录 `cd ..`

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

### ubuntu 环境

- 打开 ubuntu shell 终端

- 进入 tools 目录 `cd tools`

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

- 返回上级目录 `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

## 运行效果

```c
## 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 />

```

## 参考文档

- [https://club.rt-thread.org/ask/article/389ac36250b57737.html](https://club.rt-thread.org/ask/article/389ac36250b57737.html)