米尔MYD-YA15XC-T 应用开发笔记 BSP 多种方式的快速更新

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进行处理,非常感谢!

上一篇 2022年2月21日
下一篇 2022年2月21日

相关推荐