- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.使用TIUniFlash工具通过USBRNDIS烧写
BeagleBone Black eMMC 烧写全记录(基于AM335x SDK06)
eMMC 存储介质目前越来越广泛的应用在嵌入式系统中,AM335x 的用户也越来越多
的使用EMMC 作为系统的主要存储介质。目前AM335x 的几款官方demo 板中,只有
BeagleBone Black 上加入了对eMMC 芯片的支持,很多用户也是参考BeagleBone Black 进
行自己AM335x 系统的eMMC 设计。笔者最近分别通过TI Uniflash 和SD 卡完成了
BeagleBone Black 上eMMC 芯片的烧写验证工作,软件基于AM335x Linux SDK06 ,总结出
来供大家参考。
1. 使用TI UniFlash 工具通过USB RNDIS 烧写
1.1 TI Uniflash 简介
Uniflash 是TI 开发的存储器烧写工具,可以支持AM335x 系统的NAND Flash,NOR
Flash, SPI Flash,eMMC 烧写。可以参考wiki 上的guide :
/index.php/Sitara_Uniflash_Quick_Start_Guide,在Windows 宿
主机上下载并安装Uniflash,并按照其中3.3 节所述在Windows 宿主机上安装USB RNDIS
驱动。
1.2 eMMC 烧写原理
本文介绍的验证方法是使用Uniflash 工具通过USB 对BeagleBone Black 上的eMMC 进
行烧写,原理是通过Romcode,SPL 和u-boot 三个阶段,将一个专门用于eMMC 烧写的
Linux 操作系统在BeagleBone Black 板上运行起来,并自动运行脚本进行烧写。
第一阶段,通过设置AM335x 的sysboot 管脚,使AM335x 的启动项包含USB0 启动。
BeagleBone Black 的默认启动设置为:MMC1-MMC0-UART0-USB0,MMC1 和MMC0 分
别连接了eMMC 和SD 卡,如果eMMC 为空,并且不插SD 卡,芯片上电后执行的
Romcode 就会执行USB 启动。Romcode 会初始化USB RNDIS 以太网络通信协议,通过
Windows 宿主机上Uniflash 自带的DHCP 服务器进程拿到分配的IP 地址,然后再通过
Windows 宿主机上Uniflash 自带的TFTP 服务器进程将Uniflash 设定的tftp 目录下用于
eMMC 烧写的特殊的SPL 下载到AM335x 的内部ram 中并运行。
第二阶段,用于eMMC 烧写的特殊的SPL 执行之后,会初始化USB RNDIS 以太网络通
信协议,并通过Windows 宿主机上Uniflash 自带的DHCP 服务器程序拿到分配的IP 地址,
然后再通过宿主机上Uniflash 自带的TFTP 服务器程序将Uniflash 设定的tftp 目录下用于
eMMC 烧写的特殊的U-boot.img 下载到板子上的DDR3 中并运行。
第三阶段,用于eMMC 烧写的特殊的U-boot.img 执行之后,通过执行u-boot 中的
DHCP 和TFTP 命令,将Windows 宿主机上Uniflash 设定的tftp 目录下的用于烧录eMMC
的Linux uImage 下载到板子的DDR3 中并运行。这个Linux uImage 会通过执行启动脚本,
通过tftp 的方式,将Windows 宿主机上Uniflash 设定的tftp 目录下名为debrick.sh 脚本下
载并执行,debrick.sh 可实现eMMC 的擦除和烧写。
1.3 eMMC 烧写流程
1.3.1 制作u-boot-spl-restore.bin 和u-boot-restore.img
用于烧录eMMC 的特殊的SPL 和u-boot.img 可以通过指定特定的编译参数编译SDK06
的U-boot 源码获得,在编译之前需要加几个patch 如下:
1) 延长USB RNDIS 连接等待时间的patch:
修改/drivers/usb/gadget/ether.c 文件:
index de880ff..926c6f2 100644
a/drivers/usb/
您可能关注的文档
最近下载
- 中华优秀传统文化主题单元的教学思考与实践-来源:教育视界(智慧教学版)(第2021009期)-江苏凤凰教育出版社有限公司.pdf VIP
- 新沪科版九年级全一册初中物理全册课时练(课后作业设计).doc
- 色卡对照表RAL劳尔色卡电子版色.pdf
- 汉语教学 《成功之路+进步篇+1》第5课课件.pptx VIP
- 人造柴油生产技术.docx
- MB670掘锚机培训资料.ppt
- 大单元教学:物理八上《第六章 质量与密度》大单元整体教学设计(人教版).docx
- 运筹学全部_975电子版清华课件.pdf
- 心内科教学查房课件.pptx
- 2018款长城哈弗H2-1.5T手动自动两驱红标蓝标_汽车使用手册用户操作图解驾驶车主车辆说明书电子版.pdf
文档评论(0)