A10芯片SD_MMC卡启动详解:原理与实战指南

需积分: 50 7 下载量 135 浏览量 更新于2024-08-29 收藏 124KB DOC 举报
本文档主要探讨了AllWinner全志A10芯片与SD/MMC卡的启动过程,重点集中在SD卡的使用和配置上。首先,文章提到了开启u-boot对SD/MMC卡的支持,这通常在u-boot的配置文件`sun4i.h`中实现。u-boot是一个开放源代码的低级固件,它负责引导操作系统并管理硬件设备,包括SD卡。 分区管理是启动流程的关键环节。文档提到,SD卡上的分区表被安排在6号分区(通常包含引导文件如`boot.img`),分区表占用前两个扇区(512*2),即8KB的空间。接下来,大约4608个扇区用于存放引导程序boot0和boot1,这占据了大约36MB的空间。其中,boot0位于8KB偏移处,而boot1的大小为128KB,但可能存在定制或修改。 `sys_config1.fex`中的`storage_type=1`表明系统将从SD卡(card0)启动,这是通过设置引导顺序来决定的,0代表从NAND闪存启动,1表示SD卡,2则可能指SD卡2。这种配置允许用户根据实际需求选择合适的启动源。 在硬件层面,涉及到的二进制代码执行可能依赖于BROM(Basic Runtime Environment)的引导,这是一种嵌入式固件,可以在没有操作系统的情况下直接运行。文档推荐了Rhombus-Tech提供的资源,如<a href="http://rhombus-tech.net/allwinner_a10/a10_boot_process/">A10 Boot Process</a>,用以理解更深入的启动过程。 此外,文档还提到了升级镜像文件的工具,如Linux下的LiveSuit_images,以及使用USB协议进行Linux环境下SD卡升级的<a href="https://github.com/Ithamar/awutils">awutils</a>工具和相关资料。这些工具对于管理和优化AllWinner A10芯片的系统更新至关重要。 总结来说,本文档详细阐述了AllWinner全志A10芯片的SD/MMC卡启动机制,包括分区布局、引导流程和配置选项,为开发者和维护者提供了实用的信息和技术指导。无论是了解如何设置引导路径,还是进行固件升级,都具有很强的实际操作价值。