1.概述
本节主要讲解如何快速更新bsp的方法,更新的方式多样,记录常见的方式。
2.硬件资源
- MYD-YA157C-V2开发板
- USB转ttl
- Type-C数据线
- 网线
3.软件资源
- PCUbuntu系统
- 串口调试软件
4.环境准备
无
5.操作步骤
5.1.使用sd卡更新BSP
1)对SD卡进行分区
使用sgdisk命令进行分区,分区表如下:
-
使用sgdisk命令进行分区,分区表如下:
-
使用烧录工具自动分区按照《MYD-YA157C_软件开发指南》的第4.2.2章操作一次,可实现SD卡的自动分区。将SD使用读卡器插入PC,可在ubuntu(虚拟机)系统下显示所有的分区信息。请注意分区信息sdX。
图5-1.分析信息
2)更新分区
更新tf-a
ddif=of=/dev/sdb1bs=1Mconv=fdatasyncddif=of=/dev/sdb2bs=1Mconv=fdatasync
更新u-boot
ddif=of=/dev/sdb3bs=1Mconv=fdatasync
更新bootfs分区
ddif=of=/dev/sdb4bs=8Mconv=fdatasync
更新vendors分区
ddif=of=/dev/sdb5bs=8Mconv=fdatasync
更新rootfs分区
ddif=of=/dev/sdb6bs=8Mconv=fdatasync
更新userfs分区
ddif=of=/dev/sdb7bs=8Mconv=fdatasync
3)更新内核和内核模块
更新内核与设备树,进入内核编译生成目录下/build
PC$>cdbuild/install_artifact/
PC$>cp-rboot/*/media/$USER/bootfs/
内核模块
PC$>cdbuild/install_artifact
PC$>rmlib/modules//sourcelib/modules//build
PC$>cp-rflib/modules/*/media/$USER/rootfs/lib/modules/
5.2.使用uboot的ums更新BSP
本小节主要介绍如何在u-boot中使用USBmassstorage更新系统的bsp
1)ums命令
在里面U-Boot中,可以直接将可用的块设备(SD/MMC/USB)导出为具有ums命令的USBmassstorage。
图5-2.ums信息
这U-Boot命令“ums”是无限循环(USB处理中的一个循环),U-Boot控制台将被阻塞,直到用户使用Ctrl+C。
2)导出储存设备
在MYD-YA157C-V2开发板上,OTGUSB控制器设备索引是0,SD卡的设备索引是“MMC0”,eMMC设备索引是“MMC1”。
需要先连接开发板OTG与PC端,本测试在PC端虚拟机上完成。如下图索引SD卡。
图5-3.ums命令
图5-4.虚拟机连接信息
图5-5.分区信息
5.3.使用SCP更新系统(包括内核,内核模块,文件系统)
Ubuntu下安装scp软件
PC$>sudoapt-getinstallopenssh-client
1)使用以太网通信方式
将开发板通过网线与PC端配置到同一网段下
更新内核与设备树
PC$>cdbuild/install_artifact/
PC$>scp-rboot/*root@a.b.c.d:/boot
更新内核模块
PC$>cp-rflib/modules/*root@a.b.c.d:/lib/modules/
2)使用USB虚拟网络通信方式
将开发板与PC通过OTG接口相连。
配置usb0ip地址
图5-6.配置ip地址
更新内核与设备树
PC$>cdbuild/install_artifact/
PC$>scp-rboot/*root@192.168.7.2:/boot
更新内核模块
PC$>cp-rflib/modules/*root@192.168.7.2:/lib/modules/
下载技术文档:应用开发笔记|MYD-YA157-V2 BSP多种方式的快速更新
本文来自米尔科技,原文地址: http://www.myir-tech.com/resource/605.asp,转载请注明出处。