1. 概述
本节主要讲解如何快速更新 bsp 的方法,更新的方式多样,记录常见的方式。 2. 硬件资源
? MYD-YA15XC-T 开发板
? USB 转 ttl
? Type-C 数据线
? 线
3. 软件资源
? PC Ubuntu 系统
? 串口调试软件
4. 环境准备
无
5. 操作步骤
5.1. 使用 sd 卡更新 BSP
1) 对 SD 卡进行分区
? 使用 sgdisk 命令进行分区,分区表如下
表 5-1.分区信息
? 使用烧录工具自动分区
按照《MYD-YA15XC-T Linux 系统开发指南》的第 4.2 节操作一次,可实现 SD 卡的
自动分区。
将 SD 使用读卡器插入 PC,可在 ubuntu(虚拟机)系统下显示所有的分区信息。请
注意分区信息 sdX.
图 5-1.分析信息
2) 更新分区
更新 tf-a
dd if=<tf-a binary> of=/dev/sdb1 bs=1M conv=fdatasync
dd if=<tf-a binary> of=/dev/sdb2 bs=1M conv=fdatasync
更新 u-boot
dd if=<u-boot binary> of=/dev/sdb3 bs=1M conv=fdatasync
更新 bootfs 分区
dd if=<st-image-bootfs-xx.ext4> of=/dev/sdb4 bs=8M conv=fdatasync
更新 vendors 分区
dd if=<st-image-vendors-xx.ext4> of=/dev/sdb5 bs=8M conv=fdatasync
更新 rootfs 分区
dd if=<myir-image-full-rootfs-xx.ext4> of=/dev/sdb6 bs=8M conv=fdatasync
更新 userfs 分区
dd if=<st-image-userfs-xx.ext4> of=/dev/sdb7 bs=8M conv=fdatasync
3) 更新内核和内核模块
更新内核与设备树,进入内核编译生成目录下/build
PC$> cd build/install_artifact/
PC$> cp -r boot/* /media/$USER/bootfs/
内核模块
PC$> cd build/install_artifact
PC$> rm lib/modules/<kernel version>/source lib/modules/<kernel version>/buil
d
PC$> cp -rf lib/modules/* /media/$USER/rootfs/lib/modules/
5.2. 使用 uboot 的 ums 更新 BSP
本小节主要介绍如何在 u-boot 中使用 USB mass storage 更新系统的 bsp。适用于
eMMC 的开发板。
1) ums 命令
在里面 U-Boot 中,可以直接将可用的块设备(SD/MMC/USB)导出为具有 ums 命令的
USB mass storage。
图 5-2.ums 信息
这 U-Boot 命令“ums”是无限循环(USB 处理中的一个循环),U-Boot 控制台将被阻
塞,直到用户使用 Ctrl + C。
2) 导出储存设备
在 MYD-YA15XC-T 开发板上,OTG USB 控制器设备索引是 0,SD 卡的设备索引
是“MMC 0”,eMMC 设备索引是“MMC 1”。
需要先连接开发板 OTG 与 PC 端,本测试在 PC 端虚拟机上完成。
如下图索引 SD 卡。
图 5-3.ums 命令
图 5-4.虚拟机连接信息
图 5-5.分区信息
5.3. 使用 SCP 更新系统(包括内核,内核模块,文件系统)
Ubuntu 下安装 scp 软件
PC $> sudo apt-get install openssh-client
1) 使用以太 通信方式
将开发板通过 线与 PC 端配置到同一 段下
更新内核与设备树
PC$> cd build/install_artifact/
PC$> scp -r boot/* root@a.b.c.d:/boot
更新内核模块
PC$> cp -rf lib/modules/* root@a.b.c.d:/lib/modules/
2) 使用 USB 虚拟 络通信方式
将开发板与 PC 通过 OTG 接口相连。
配置 usb0 ip 地址
图 5-6.配置 ip 地址
更新内核与设备树
PC$> cd build/install_artifact/
PC$> scp -r boot/* root@192.168.7.2:/boot
更新内核模块
PC$> cp -rf lib/modules/* root@192.168.7.2:/lib/modules/
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!