本帖最后由 风精灵 于 2025-1-10 16:51 编辑

       在数字多媒体应用领域,RK3588处理器以其低功耗和高性能的特点,正逐渐成为众多基于ARM的设备核心。然而,设备的启动方式对于其整体性能和用户体验至关重要。TF卡(Micro SD卡)启动作为一种灵活、经济的解决方案。通过TF卡启动,开发者可以轻松地更换或更新系统镜像,提高设备的灵活性和适应性。本文将详细介绍如何在ELF 2设备上实现TF卡启动。
       为了更直观地观察启动现象,我们采用了以下配置:板卡通过eMMC启动的是基于Buildroot构建的文件系统,而通过TF卡启动的则是Desktop系统。

一、拷贝源码
程序源码:ELF 2开发板资料包\02-Linux源代码\02-0 SDK源码\ELF2-linux-source.tar.bz2.0*
图片1.png
在家目录下创建work工作目录。
elf@ubuntu:~$ mkdir work                                                   //按照顺序创建工作目录
将用户资料中的源码文件ELF2-linux-source.tar.bz2.0* 拷贝到虚拟机/home/elf/work目录。
elf@ubuntu:~$ cd work/                                                                //切换到工作目录
elf@ubuntu:~/work$ cat ELF2-linux-source.tar.bz2.0* > ELF2-linux-source.tar.bz2
elf@ubuntu:~/work$ tar -xvf ELF2-linux-source.tar.bz2                //在当前位置解压压缩包
运行命令后等待完成即可。

二、
修改设备树文件
TF卡中文件系统所在分区为/dev/mmcblk1p6
emmc文件系统所在分区为/dev/mmcblk0p6
TF卡启动需要修改在设备树文件,将设备树中定义的文件系统的分区改为/dev/mmcblk1p6
elf@ubuntu:~/work$ cd ELF2-linux-source/
elf@ubuntu:~/work/ELF2-linux-source$ vi kernel/arch/arm64/boot/dts/rockchip/elf2-kernel.dts
图片2.png
修改之后全编译,生成新的update.img制作启动卡。

三、编译
在源码路径内,提供了编译脚本build.sh,运行该脚本对整个源码进行编译,
elf@ubuntu: ~/work/ELF2-linux-source$ ./build.sh chip

图片3.png
①首先选择编译平台,输入 1 选择 ELF 2板卡;
②接着选择编译的文件系统:ELF2支持两种文件系统。若要编译Ubuntu 22.04文件系统,请输入1,选择对应的 elf2_desktop_defconfig 配置文件;若要编译buildroot来构建文件系统,请输入2,选择对应的 elf2_sdkbuild_defconfig 配置文件。
③选择之后,使用build.sh进行全编译。
elf@ubuntu: ~/work/ELF2-linux-source$ ./build.sh
编译时间比较久,请耐心等待,编译成功后,系统镜像将在rockdev文件夹下生成
图片5.png
rockdev文件夹中的镜像文件均为软链接,目标文件所在路径如下:
update.img
ELF2-linux-source/output/update/Image/update.img
uboot.img
ELF2-linux-source/u-boot/uboot.img
boot.img
ELF2-linux-source/kernel/boot.img
rootfs.img
Ubuntu22.04文件系统:ELF2-linux-source/ubuntu/jammy-rootfs.img
Buildroot文件系统:ELF2-linux-source/buildroot/output/elf2_fs/images/rootfs.ext2

四、制作启动卡
ELF 2开发板资料包\06-常用工具\06-3 烧写工具\TF卡烧写\SDDiskTool_v1.78.zip拷贝到windows任意目录。以管理员权限运行SD_Firmware_Tool.exe。
图片6.png
将TF卡通过读卡器连接至电脑的USB接口,选择磁盘设备,点击恢复磁盘,会将磁盘设备格式化为FAT32格式。
注意:本次测试使用的为16GB的TF卡,建议使用32GB以下的TF卡。
图片7.png
格式化完成之后,勾选SD卡启动,选择全编译生成的固件update.img,点击开始创建。
图片8.png
图片9.png

五、TF卡启动
板卡默认是emmc,eMMC启动的是基于Buildroot构建的文件系统,如下图所示:
图片10.png
将制好的启动卡插到板卡上,重新启动,接上调试串口,显示的是elf2-desktop login,如下图所示,说明成功启动TF卡中的系统,
图片11.png
至此,就已完成了通过TF卡启动ELF 2学习板的介绍。
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Powered by Discuz! X3.5  © 2001-2013 Comsenz Inc.