RK3576 单板机系统使用手册:配置、升级与组件安装指南(一)

前 言

本文为RK3576单板机配套Linux系统使用说明,内容主要包含系统存储分区说明、系统启动配置、系统常规操作、系统升级流程等内容。

开发环境

Windows开发环境:Windows10 64bit、Windows7 64bit

Linux开发环境:VMware16.2.5、Ubuntu22.04.5 64bit

系统版本:Tronlong-Desktop 22.04(类Ubuntu)、Linux-6.1.115、U-Boot-2017.09

备注:本文基于2GByte LPDDR4X、16GByte eMMC配置单板机进行演示。

术语表

为便于阅读,下表对文档出现的关键术语进行解释;对于广泛认同释义的术语,在此不做注释。

注意事项

无特殊说明情况下,本文默认从eMMC启动系统,使用DEBUG作为调试串口,使用HDMI显示屏作为显示输出。

1系统启动说明

1.1启动方式

系统上电后,由CPU内部BootRom的引导代码依次从eMMC/SD卡、USB接口检测SPL启动程序,从第一个包含SPL启动程序的设备开始启动。SPL启动后,将优先从SD系统卡(非常规SD卡)引导U-Boot镜像,否则,将从原启动设备引导U-Boot镜像。

系统启动后自动登录root用户,调试串口终端会打印如下类似启动信息。"Bootdev(atags):mmc 0"表示从eMMC启动,"Bootdev(atags):mmc 1"表示从系统启动卡启动。

图 1

1.2打印信息说明

(1)Bootloader阶段打印信息

图 2

图 3

如上打印信息可知,单板机内存容量为2GByte,内存速率最高为2112MHz。

(2)Kernel阶段打印信息

图 4

如上打印信息可知,内核版本为6.1.115-rt16-g83ef0b8fb56a,根文件系统位于eMMC的mmcblk0p6存储分区。打印信息解析如下表所示:

(3)Rootfs阶段打印信息

图 5

如上打印信息可知,文件系统版本为Tronlong-Desktop 22.04。

2内存与存储分区说明

2.1内存分区

我司提供的系统已对单板机DDR内存进行划分,具体配置说明如下表。

(1)执行如下命令,可查看内核管理的内存空间。下图为2GByte容量LPDDR4X配置单板机的查询结果。

Target# cat /sys/kernel/debug/memblock/memory

图 6

(2)执行如下命令查看内核已经分配的内存。

Target# cat /sys/kernel/debug/memblock/reserved

图 7

图 8

编号4为CMA(连续内存区管理)空间,其余为内核管理空间。CMA的地址范围一般由内核自动分配,CMA内存空间为分配给驱动使用,应用层不可使用。

备注:单板机上电启动后,调试串口终端打印系统分配的CMA内存地址、大小信息与上图查询结果不一致,原因是Reserved节点将CMA与相邻连续的Reserved memory合并显示。因此,实际的CMA内存地址、大小信息以系统启动打印信息为准。

图 9

图 10

2.2存储分区

相关推荐
2601_951643882 小时前
C语言长文整理,关键字和数据类型
c语言·数据类型·关键字·嵌入式开发·格式化输出
Deepoch6 小时前
VLA多模态架构加持 采摘机器人实现精细化智能采收
人工智能·机器人·开发板·具身模型·deepoc·采摘
意法半导体STM327 小时前
【官方原创】如何为STM32CubeMX2配置Visual Studio Code配置方案
vscode·stm32·单片机·嵌入式硬件·策略模式·stm32cubemx·嵌入式开发
凡人叶枫1 天前
Effective C++ 条款39:明智而审慎地使用 private 继承
java·数据库·c++·嵌入式开发
凡人叶枫1 天前
Effective C++ 条款40:明智而审慎地使用多重继承
java·数据库·c++·嵌入式开发·effective c++
2023自学中1 天前
imx6ull开发板,sd卡启动运行linux,手动给开发板的 emmc 做分区、烧系统
linux·嵌入式·开发板
俊基科技1 天前
工业实战:DA-03音频模组在智慧矿山广播与应急通信系统中的应用
嵌入式开发·数模转换·da-03
凡人叶枫2 天前
Effective C++ 条款33:避免遮掩继承而来的名字
linux·服务器·开发语言·c++·嵌入式开发
凡人叶枫2 天前
Effective C++ 条款31:将文件间的编译依存关系降至最低
linux·开发语言·c++·php·嵌入式开发·effective c++
凡人叶枫2 天前
Effective C++ 条款32:确定你的 public 继承塑模出 is-a(是一种)关系
java·linux·开发语言·c++·嵌入式开发