2024-07-01 10:56:07 +08:00
|
|
|
|
# ROC-RK3566-PC 简要说明
|
|
|
|
|
|
|
|
|
|
## 1. 常用连接
|
|
|
|
|
|
|
|
|
|
1. [产品说明](https://www.t-firefly.com/product/industry/rocrk3566pc.html?theme=pc)
|
|
|
|
|
2. [购买链接](https://item.taobao.com/item.htm?ft=t&id=645236303484)
|
|
|
|
|
3. [资源下载](https://www.t-firefly.com/doc/download/106.html)
|
|
|
|
|
4. [Linux SDK 提取码:1234](https://www.t-firefly.com/doc/download/106.html#other_447)
|
2024-07-01 18:36:04 +08:00
|
|
|
|
5. [Firefly Linux 开发指南](https://wiki.t-firefly.com/zh_CN/Firefly-Linux-Guide/index.html)
|
|
|
|
|
6. [Firefly Linux Buildroot 开发](https://wiki.t-firefly.com/zh_CN/Firefly-Linux-Guide/manual_buildroot.html#buildroot-kai-fa)
|
2024-07-01 10:56:07 +08:00
|
|
|
|
|
|
|
|
|
## 2. 镜像烧录
|
|
|
|
|
|
|
|
|
|
### 2.1. Loader 模式
|
|
|
|
|
|
|
|
|
|
一种方式是断开 Type-C 数据线
|
|
|
|
|
|
|
|
|
|
1. 按住设备上的 RECOVERY (恢复)键(靠近耳机处)并保持。
|
|
|
|
|
2. 连接 Type-C 数据线(电源)
|
|
|
|
|
3. 大约两秒钟后,松开 RECOVERY 键。
|
|
|
|
|
|
|
|
|
|
另一种方式是接上 Type-C 数据线
|
|
|
|
|
|
|
|
|
|
1. 按住设备上的 RECOVERY (恢复)键并保持。
|
|
|
|
|
2. 短按一下 RESET(复位)键。
|
|
|
|
|
3. 大约两秒钟后,松开 RECOVERY 键。
|
|
|
|
|
|
|
|
|
|
然后使用 RKDevTool 进行烧录。
|
|
|
|
|
|
|
|
|
|
### 2.2. MaskRom 模式
|
|
|
|
|
|
|
|
|
|
操作步骤如下:
|
|
|
|
|
|
|
|
|
|
1. 设备断开 Type-C 数据线(电源)
|
|
|
|
|
2. 按住 设备上的 Maskrom 按键 。
|
|
|
|
|
3. 设备插入Type-C 数据线(电源)。
|
|
|
|
|
4. 稍候片刻,之后松开按键。
|
|
|
|
|
|
|
|
|
|
然后使用 RKDevTool 进行烧录。
|
|
|
|
|
|
|
|
|
|
板子同时贴有 NOR Flash,若 EMMC 为空,而 NOR Flash 中有烧录过文件,则需要短接 NOR Flash 附近的 D0 和 GND 测试点进入 Maskrom 模式,下图为短接点。此时升级固件需要参考章节[《切换升级存储器》](https://wiki.t-firefly.com/zh_CN/ROC-RK3566-PC/03-upgrade_firmware_with_flash.html)
|
|
|
|
|
|
|
|
|
|
![MaskRom 短接点](./img/ROC-RK3566-PC_简要说明/maskrom_test_points_flash.jpg)
|
|
|
|
|
|
|
|
|
|
## 3. 调试串口
|
|
|
|
|
|
|
|
|
|
连接方式如图:
|
|
|
|
|
|
|
|
|
|
![调试串口连接](./img/ROC-RK3566-PC_简要说明/debug_connection.jpg)
|
|
|
|
|
|
|
|
|
|
参数:
|
|
|
|
|
|
|
|
|
|
- 波特率:1500000
|
|
|
|
|
- 数据位:8
|
|
|
|
|
- 停止位:1
|
|
|
|
|
- 奇偶校验:无
|
|
|
|
|
- 流控:无
|
|
|
|
|
|
|
|
|
|
## 4. SDK
|
|
|
|
|
|
|
|
|
|
推荐在 Ubuntu 18.04 系统环境下进行开发,若使用其它系统版本,可能需要对编译环境做相应调整。
|
|
|
|
|
|
2024-07-01 18:36:04 +08:00
|
|
|
|
安装依赖工具:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
sudo apt-get install repo git ssh make gcc libssl-dev liblz4-tool \
|
|
|
|
|
expect g++ patchelf chrpath gawk texinfo chrpath diffstat binfmt-support \
|
|
|
|
|
qemu-user-static live-build bison flex fakeroot cmake bc vim time rsync \
|
|
|
|
|
unzip device-tree-compiler python-pip ncurses-dev python-pyelftools
|
|
|
|
|
```
|
|
|
|
|
|
2024-07-01 10:56:07 +08:00
|
|
|
|
### 4.1. Linux 4.19 固件(v1.3.0b)
|
|
|
|
|
|
|
|
|
|
从参考连接中下载全部 rk356x_linux_release_v1.3.0b_20221213_firefly_split.* 文件。
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
# 解压
|
|
|
|
|
mkdir ~/proj/
|
|
|
|
|
cd ~/proj/
|
|
|
|
|
cat path/to/rk356x_linux_release_v1.3.0b_20221213_split_dir/*firefly_split* | tar -xzv
|
|
|
|
|
|
|
|
|
|
# 导出数据
|
|
|
|
|
.repo/repo/repo sync -l
|
|
|
|
|
.repo/repo/repo sync -c --no-tags
|
|
|
|
|
.repo/repo/repo start firefly --all
|
|
|
|
|
|
|
|
|
|
# 后续可以使用以下命令更新 SDK
|
|
|
|
|
.repo/repo/repo sync -c --no-tags
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
#### 4.1.1 Buildroot 固件
|
|
|
|
|
|
|
|
|
|
回到 SDK 根目:
|
|
|
|
|
|
|
|
|
|
```bash
|
2024-07-01 18:36:04 +08:00
|
|
|
|
# 配置环境变量
|
|
|
|
|
source envsetup.sh rockchip_rk3566
|
2024-07-01 10:56:07 +08:00
|
|
|
|
# 选择配置文件
|
|
|
|
|
./build.sh roc-rk3566-pc-buildroot.mk
|
|
|
|
|
# 全自动编译
|
|
|
|
|
./build.sh
|
|
|
|
|
# 部分编译:编译 u-boot
|
|
|
|
|
./build.sh uboot
|
|
|
|
|
# 部分编译:编译 kernel
|
|
|
|
|
./build.sh kernel
|
|
|
|
|
# 部分编译:编译 recovery
|
|
|
|
|
./build.sh recovery
|
|
|
|
|
# 部分编译:编译 Buildroot 根文件系统
|
|
|
|
|
# 注:确保作为普通用户编译 Buildroot 根文件系统,避免不必要的错误。
|
|
|
|
|
./build.sh buildroot
|
|
|
|
|
|
|
|
|
|
# 打包固件:更新各部分镜像链接到 rockdev/ 目录
|
|
|
|
|
./mkfirmware.sh
|
|
|
|
|
# 打包固件:生成 update image,完整固件会保存到 rockdev/pack/ 目录
|
|
|
|
|
./build.sh updateimg
|
|
|
|
|
```
|
2024-07-01 11:08:16 +08:00
|
|
|
|
|
|
|
|
|
## 5. 系统配置
|
|
|
|
|
|
|
|
|
|
### 5.1. Buildroot 系统
|
|
|
|
|
|
|
|
|
|
- 用户:root
|
|
|
|
|
- 密码:firefly
|
|
|
|
|
|
|
|
|
|
#### 5.1.1. 以太网配置
|
|
|
|
|
|
|
|
|
|
Buildroot 的网络配置需要使用到 /etc/network/interfaces 配置文件,配置完成之后,运行:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
/etc/init.d/S40network restart
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
即可重启网络。手动调试可以直接使用:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
ifdown -a
|
|
|
|
|
# 和
|
|
|
|
|
ifup -a
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
来重启网络。
|
|
|
|
|
|
|
|
|
|
配置文件举例:
|
|
|
|
|
|
|
|
|
|
如下配置文件将 eth0 网卡设置为动态 IP 地址,将 eth1 设置为静态 IP 地址
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
auto lo
|
|
|
|
|
iface lo inet loopback
|
|
|
|
|
|
|
|
|
|
auto eth0
|
|
|
|
|
iface eth0 inet dhcp
|
|
|
|
|
|
|
|
|
|
auto eth1
|
|
|
|
|
iface eth1 inet static
|
|
|
|
|
address 192.168.2.2
|
|
|
|
|
netmask 255.255.255.0
|
|
|
|
|
broadcast 192.168.2.255
|
|
|
|
|
gateway 192.168.2.1
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
注意:/etc/network/interfaces 的文件格式要求比较严格,如果遇到:
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
Error: either "local" is duplicate, or "/24" is a garbage.
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
那么很有可能是配置文件中多了一个空格。
|
|
|
|
|
|
|
|
|
|
#### 5.1.2. SSH
|
|
|
|
|
|
|
|
|
|
官方发布的 SDK 默认已开启 ssh,用户为”root”,密码为”firefly”。
|