S3C6410 SD启动支持教程:定制uboot配置与解决常见问题
下载需积分: 5 | DOC格式 | 29KB |
更新于2024-08-03
| 179 浏览量 | 举报
本文档主要介绍了如何针对三星S3C6410平台的嵌入式系统实现SD卡启动,使用的不是标准的U-Boot(统一固件加载器),而是由三星和Denx合作定制的s3c-u-boot-1.1.6版本。这个版本原本支持NAND启动,但目标是将其转变为SD启动(也称为movinand启动)。
首先,用户需要在configurations/smdk6410.h配置文件中进行修改。原有的NAND启动选项(如`#define CONFIG_BOOT_NAND`)需要注释掉,同时启用`#define CONFIG_BOOT_MOVINAND`来选择SD启动。这样,U-Boot将能够识别和处理SD卡作为启动设备。
然而,仅仅更改配置还不足以解决问题,因为U-Boot预设了从SD卡CH0(通道0)启动,而实际硬件可能使用的是CH1。因此,必须在include/movi.h文件中调整HSMMC_CHANNEL的值,将其设置为1,以便U-Boot能正确识别SD卡在不同通道上的存在。
接着,即使将修改后的U-Boot.bin文件烧写到SD卡上,直接使用IROM_Fusing_tools进行烧写会导致问题。正确的做法是先将大文件u-boot.bin拆分成两个部分:u-boot_256k.bin和u-boot_8k.bin,分别烧录到SD卡的不同区域。具体步骤如下:
1. 使用`cat u-boot.bin >> temp`命令将u-boot.bin追加到temp文件中。
2. 分割文件:`split -b 256k temp u-boot_256k.bin` 和 `split -b 8k temp u-boot_8k.bin`
3. 将u-boot_256k.bin复制到u-boot_mmc.binfile中:`mv xaa u-boot_256k.bin u-boot_mmc.bin`
4. 将u-boot_8k.bin复制到u-boot_mmc.bin的剩余部分:`mv xaa u-boot_8k.bin >> u-boot_mmc.bin`
通过以上操作,确保了U-Boot能在S3C6410平台正确识别并从SD卡启动,解决了启动时的硬件兼容性和文件布局问题。这对于开发基于S3C6410的嵌入式系统的开发者来说,是一个重要的实践指导,特别是对于那些需要在非标准硬件配置上部署U-Boot的项目。
相关推荐
智光实验室
- 粉丝: 927
最新资源
- Java2EE源码分享:航空订票系统深入解析
- R语言实现libsvm格式文件的高效读写操作
- MATLAB峰值检测工具Peakdet的功能与应用
- 嵌入式语音项目资源包:数字、字母及常用语
- Tableau透视分析:2020-2021纽约市花旗自行车数据可视化
- Virtualbox 5.2.38扩展包增强功能介绍
- 用 Clojure 和 Quil 创作基础太空入侵者游戏
- Yii2框架扩展:使用Slider Revolution的jQuery包装器
- 网络应用程序2的CSS实现与团队分工介绍
- 易语言实现移动物体识别源码解析
- 8路温度采集系统使用DS18B20与LCD1602显示教程
- Win8风格响应式HTML5手机网站模板
- LabView与51单片机打造的智能电子秤设计实现
- 探究压缩技术下的新型背包:DeadBackPacks
- 1FRUTAS1:霍拉·蒙多的最新准备成果
- 易语言实现的A星三维路径搜索算法源码解析