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/

相关推荐
旅行的橘子汽水14 分钟前
【嵌入式-stm32电位器控制以及旋转编码器控制LED亮暗】
stm32·单片机·嵌入式硬件
小王努力学编程17 分钟前
【Linux系统编程】进程概念,进程状态
linux·运维·服务器·c++
【云轩】1 小时前
《信号革命:从模拟到数字的通信进化史诗》
人工智能·嵌入式硬件·语音识别
liuliu03231 小时前
戴尔笔记本 ubuntu 22.04 开机后进入initramfs界面
linux·运维·ubuntu
矿渣渣1 小时前
ARM Cortex-A7处理器中`ISB`汇编指令解析
汇编·arm开发
sukalot3 小时前
Windows 图形显示驱动开发-WDDM 2.4功能-基于 IOMMU 的 GPU 隔离(二)
windows·驱动开发
DADIAN_GONG3 小时前
incomplete command on Huawei switch
linux·运维·华为
水星灭绝3 小时前
orangepi zero烧录及SSH联网
运维·ssh
kfepiza3 小时前
Debian编译安装mysql8.0.41源码包 笔记250401
数据库·笔记·mysql·debian·database
緣起緣落3 小时前
Linux(CentOS 7) 部署 redis 集群
linux·运维·服务器·redis·centos·集成学习