summaryrefslogtreecommitdiff
path: root/bsp/rockchip/rk2108/README_CN.md
blob: 2e730415c969e25a35e07af50298ea488a42d424 (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
85
86
87
88
# Rockchip RK2108 BSP说明

---

**目录**

[TOC]

---

## 简介

本文档为Rockchip RK2108 (ARM Cortex-M4F with Cache)的BSP说明。目录结构如下:

```shell
bsp/rockchip
|-- common
|   |-- drivers                     # RT-Thread OS适配层通用驱动
|   |-- rk_hal                      # Rockchip HAL 硬件抽象层实现
|   |   |-- lib
|   |   |   |-- bsp                 # 芯片相关的初始化和功能实现
|   |   |   |-- CMSIS               # 标准CMSIS库
|   |   |   `-- hal                 # HAL 通用驱动
|-- rk2108
|   |-- application                 # 应用程序
|   |-- board                       # 板级支持
|   |   |-- common                  # 通用板级支持
|   |   `-- rk2108_evb              # rk2108_evb 板级支持
|   |-- driver                      # RK2108 私有驱动目录
|   `-- image                       # 存放打包固件
`-- tools                           # Rockchip 通用工具
```

## 开发流程

### 编译

在bsp/rockchip/rk2108下进行操作。

```shell
cd bsp/rockchip/rk2108
./mkimage.sh
```

### 打包

使用Rockchip工具resource_header_tool和firmware_merger进行固件打包,分区配置文件为setting.ini。固件打包命令在脚本mkimage.sh中一起完成。完成固件打包后能得到Firmware.img。

这里对loader相关文件进行说明:

- rk2108_loader.bin:用于启动引导的loader,将与rtthread.bin一起打包
- rk2108_loader_fake.bin:由于Rockchip固件打包时IDBlock格式要求固定需要两个bin文件,因此在没有外挂psram使用psram.bin的情况下需要增加一个没有实际作用的loader_fake.bin文件。
- rk2108_db_loader.bin:用于固件烧写的loader。

### 下载

保持maskrom按键按下的状态,然后重新上电或者按下reset按键,即可进入maskrom模式。

在Linux环境下,使用Rockchip工具upgrade_tool进行固件升级,脚本命令如下:

```shell
sudo ./upgrade_firmware.sh
```

如果没有sudo权限,请联系管理员修改rule.d,让Rockchip的设备节点有rw权限。请管理员在/etc/udev/rules.d下面创建文件70-usbboot.rules。注意,不同的系统版本70-usbboot.rules文件命名的前缀数字不同。

```shell
cd /etc/udev/rules.d
sudo touch 70-usbboot.rules
```

在70-usbboot.rules文件中增加以下内容,其中“2207”为Rockchip USB设备的VID。

```shell
SUBSYSTEM=="usb", ATTRS{idVendor}=="2207", GROUP="plugdev", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1"
```

完成以上修改后,普通用户使用Rockchip工具upgrade_tool进行固件升级,脚本命令如下:

```shell
./upgrade_firmware.sh
```

在Windows环境下,使用Rockchip工具RKDevTool进行固件升级,首次使用前需要安装驱动程序DriverAssitant。工具获取请联系Rockchip。

## 维护

Steven Liu : [email protected]