立创tspi训练营笔记-rk3566修改编译设备树即编译内核(使用WSL、docker)
2024年3月 · 预计阅读时间: 2 分钟
关于什么是设备树,设备树的语法,单独编译设备树的方法可以查看立创开发板训练营-Linux设备树的文档。
本文主要讲解使用WSL2与Docker修改设备树文件,编译内核并下载到开发板上。
关于WSL2、Docker的安装可以参考我之前的笔记:
立创泰山派tspi-训练营笔记-WSL2安装使用Docker(Win11)
立创泰山派tspi-训练营笔记-WSL2使用Docker编译泰山派tspi的SDK(Win11)
#
修改设备树文件我们就以立创训练营的作业选几个为例来修改设备树:
- 修改设备树失能泰山派上的三色用户LED灯
- 修改设备树失能和使能HDMI输出
- 关闭网口解决串口因寻不到网口频繁打印日志问题
- 调试串口的波特率目前是1500000,尝试把波特率改成115200
如果使用WSL可以直接使用vscode打开SDK的文件夹:
第一次打开会有个弹窗,点允许就可以。
在右侧找到设备树文件,如图进入这个目录,拉到最下面
修改设备树失能泰山派上的三色用户LED灯
在
tspi-rk3566-user-v10-linux.dts
文件中设置三色灯状态为disabledLED默认还是亮,这是因为disabled仅仅是不能闪烁和操作了,而在驱动中LED被默认点亮了。
RGB LED原理图如下所示:
因此如果想熄灭LED,我们可以把上面的
status = "okay";
改回来,然后把打开时间blink-delay-on
改为0即可
修改设备树失能和使能HDMI输出
在开头写的很清楚:
可以选择注释掉或者如下图进去设置状态为
disabled
:关闭网口解决串口因寻不到网口频繁打印日志问题
同样把网口注释掉就行
调试串口的波特率目前是1500000,尝试把波特率改成115200
修改
tspi-rk3566-core-v10.dtsi
中的串口波特率属性,如下图所示
#
编译内核(包括设备树)windows需要先打开docker
然后如下图,在命令行启动并进入docker:
编译内核:
#
拷贝boot.img到windows查看rockchip目录,boot.img -> /home/lckfb/kernel/boot.img
,我们接下来只需要把/home/lckfb/kernel/boot.img
拷贝到windows,注意这里是docker目录。
我们先退出到docker(一定要先退出docker,如果容器正在运行,则复制的文件可能会被锁定),然后使用dockcer cp
命令:
lckfb_xly_container
:容器名称
/home/lckfb/kernel/boot.img
:容器内文件的路径,这里记得修改为你自己的boot.img
路径哦
/mnt/c/Users/whc/Desktop/
:要拷贝到的容器外的路径,因为WSL2自动把windows的盘符挂载到/mnt
目录下,我们可以直接拷贝到windows的桌面上,这里记得修改为你自己的路径哦
#
下载到开发板这一部分就参考立创教程,烧录boot.img就行
- 烧录工具、驱动、配置文件都要下载安装好
- 导入配置
Tspi_Linux_config.cfg
- 按住开发板的REC键,点击RST键,进入LOADER设备模式
- 烧录工具仅选中boot,选择自己的boot.img,我的刚才放在桌面了
- 勾选强制按地址写
- 点击执行
查看结果:
就可以使用串口,波特率为115200连接了。串口也不会打印频繁打印网口日志问题,HDMI插上也没有输出的。
大家可以尝试RGB三个灯同时闪烁就变成了,白色的呼吸灯效果,表示系统运行的“心跳”