ArmSoM-W3之RK3588 Debian11详解

1. 简介

  • RK3588从入门到精通
  • Debian 是⼀种完全⾃由开放并⼴泛⽤于各种设备的 Linux 操作系统。
  • Rockchip在官⽅Debian发⾏版的基础上构建和适配了相关硬件功能

2. 环境介绍

  • 硬件环境:

    ArmSoM-W3 RK3588开发板

  • 软件版本:

    OS:ArmSoM-W3 Debian11

3. Debian目录结构

debian

├── mk-base-debian.sh ##获取Debian基础包和编译

├── mk-rootfs-buster/bullseye.sh ##在Debian基础包的基础上适配Rockchip相关硬件加速包

├── mk-image.sh ##⽣成ext4的固件(生成linaro-rootfs.img)

├── mk-rootfs.sh ##指向具体Rootfs版本,⽬前有Buster、Bullseye两个版本。

├── overlay ##适配Rockchip平台共性配置⽂件。overlay目录会覆盖到根文件系统,来满足客制化的需求

├── overlay-debug ##系统常使⽤的调试⼯具

├── overlay-firmware ##⼀些设备firmware的存放,⽐如npu/dp等

├── packages ## 包含armhf arm64系统适配硬加速使⽤的预编译的包

├── packages-patches ##预编包,基于官⽅打上的补丁

├── scripts ## 编译,安装,打包的脚本

├── readme.md ## ⽂档指引

└── ubuntu-build-service ##从官⽅获取Debian发⾏版,可依赖包和定制安装相关包。

整个⽬录结构内容是通过Shell脚本来达到获取构建Linux Debian发⾏版源码,编译和安装适配Rockchip硬加速包的操作系统。

4. Debian编译和烧录

4.1 Debian编译方式1:

  • 最简单的方法就是SDK根目录下直接运行编译脚本

    bash 复制代码
    ./build.sh debian
  • 编译成功后会在rockdev目录下生成根文件镜像rootfs.img,用RKDevTool烧录即可。

4.2 Debian编译方式2:

  • 进⼊ debian/ ⽬录:

    bash 复制代码
    cd debian/
  • 第1步:构建64 位的基础 Debian 系统

    bash 复制代码
    RELEASE=bullseyeTARGET=desktop ARCH=arm64 ./mk-base-debian.sh

    编译完成会在 debian/ ⽬录下⽣成:linaro-bullseye-alip-xxxxx-1.tar.gz(xxxxx 表⽰⽣成时间戳)。

  • 第2步:构建 rk-debian rootfs (增加Rockchip相关配置适配包括相关硬件加速包)

    bash 复制代码
    VERSION=debug ARCH=arm64 ./mk-rootfs-bullseye.sh
  • 第3步:创建 ext4 镜像(linaro-rootfs.img),将编译后生成的binary根文件打包⽣成ext4的固件(生成linaro-rootfs.img)

    bash 复制代码
    ./mk-image.sh

4.3 build_debian函数

  • build.sh中的build_debian函数如下,可以看出是根据条件执行了mk-base-debian.sh和mk-rootfs-$RK_DEBIAN_VERSION.sh两个脚本,前者是Debian基础包和编译,后者是增加Rockchip相关配置适配。

    cpp 复制代码
    build_debian()
    {
    	ARCH=${RK_DEBIAN_ARCH:-${RK_KERNEL_ARCH}}
    	case $ARCH in
    		arm|armhf) ARCH=armhf ;;
    		*) ARCH=arm64 ;;
    	esac
    
    	echo "=========Start building debian ($ARCH) rootfs========="
    
    	cd debian
    	if [ ! -f linaro-$RK_DEBIAN_VERSION-alip-*.tar.gz ]; then
    		RELEASE=$RK_DEBIAN_VERSION TARGET=desktop ARCH=$ARCH ./mk-base-debian.sh
    		ln -rsf linaro-$RK_DEBIAN_VERSION-alip-*.tar.gz linaro-$RK_DEBIAN_VERSION-$ARCH.tar.gz
    	fi
    
    	VERSION=debug ARCH=$ARCH ./mk-rootfs-$RK_DEBIAN_VERSION.sh
    	./mk-image.sh
    
    	finish_build
    }

5. 系统基本信息查看

5.1 系统版本

cpp 复制代码
root@linaro-alip:~# cat /etc/debian_version 
11.6

5.2 如何查看Debian显⽰⽤X11还是Wayland?

在X11系统上:

bash 复制代码
$ echo $XDG_SESSION_TYPE
x11

Wayland系统上:

bash 复制代码
$ echo $XDG_SESSION_TYPE
wayland

5.3 如何查看系统分区情况

bash 复制代码
parted -l

ArmSoM 产品介绍: http://wiki.armsom.org/index.php/ArmSoM-w3

ArmSoM 技术论坛: http://forum.armsom.org/

相关推荐
木头左4 小时前
【Nginx】内网服务源 IP 白名单实战:动态域名解析放行网段 + 端口接管零改造
运维·nginx·白名单·反向代理
禁默5 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk81635 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
翔云1234566 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
国科安芯7 小时前
83 倍:ASC0108S 在推挽和开漏之间,差的不是速度,是回程
单片机·嵌入式硬件·架构·电平转换·抗辐射
爱莉希雅&&&7 小时前
GitLab 完整学习笔记
linux·运维·服务器
小杨爱科普8 小时前
制造业上自动化改造,改造部分的专利到底归谁
运维·经验分享·自动化
方便面不加香菜10 小时前
Docker Container --容器及容器的操作案例详解
运维·docker·容器
国科安芯10 小时前
从遥控到自治:ASP4644S2B支撑星载电源健康管理与容错配电
网络·单片机·嵌入式硬件·安全·dcdc·低轨卫星·商业航天
rhythm-ring10 小时前
《汽车热管理系统:电子水泵单线PWM双向诊断机制》
单片机·嵌入式硬件·汽车