u-boot for tiny210 ver2.2.1(by liukun321咕唧咕唧)

这次更新没有增加具体功能,只修复了小bug。另外用一定篇幅说明如何解决u-boot for tiny210 在启动友善提供的mini210 linux内核/android出现卡死在Uncompressing Linux... done, booting the kernel.阶段。在这里再次感谢CSDN网友niyufeng 提出的问题。

ver2.2的基本功能:

1. SD boot,基于linaro u-boot的SPL功能实现

2. 从SD卡的FAT分区上加载文件到SDRAM

3. 将环境变量保存至SD卡

4. 添加DM9000网卡驱动,开启网络功能(例如:tftp,nfs等)

5. 添加TAB键命令自动补全功能

6.修复bug:

修复bug 1:SD卡保存环境变量出现Writing to MMC(0)... mmc_send_cmd: error during transfer: 0x00208001 mmc write failed。

修复bug 2:每次启动只能保存一次环境变量。

7.添加NandFlash驱动,开启所有Nand cmd。

8.添加Yaffs文件系统烧写支持。

+9.修复bug:uboot for tiny210在tftp时经常出现超时现象,出现TTTT#######TTTTTT,然后Retry count exceeded; starting again问题。 

本次更新对源码改动较小,只需按下面提供内容修改即可完成,故本次更新不提供源码下载。

新版本及历史版本源码下载:

ver3.1源码下载: u-boot for tiny210 ver3.1

ver3.0源码下载:u-boot for tiny 210 ver3.0

ver2.2源码下载:  u-boot for tiny210 ver2.2

ver2.1源码下载:u-boot for tiny210 ver2.2

ver2.1源码下载:u-boot for tiny210 ver2.1

ver2.0源码下载:u-boot for tiny210 ver2.0

各版本修改分析链接: ver2.0    ver2.1   ver2.2  ver2.2.1  ver2.2.2  ver 3.0

 

解决tftp超时,以及总出现ARP Retry count exceeded; starting again 的重复提示 bug: 

修改步骤:

1.在u-boot for tiny210 源码net/tftp.c18:

#define TIMEOUT         50000UL 

 2.在net/net.c中

#define ARP_TIMEOUT         50000UL 

 

解决卡死在Uncompressing Linux... done, booting the kernel:

PS:解决u-boot for tiny210 在启动友善提供的mini210 linux内核/android出现卡死在Uncompressing Linux... done, booting the kernel.  

1.由于友善提供的内核时mini210的,第一步先修改u-boot for tiny210的机器码,使之与内核机器码匹配。

修改include/configs/tiny210.h

#define MACH_TYPE_TINY210 3466 

2.友善提供的是mini210的内核,根据内核和mini210 uboot里的配置(我手里没有mini210开发板),可以知道mini210的DDR2ram

和tiny210DDR2ram在bank的挂载方式是不同的,详见我的http://blog.csdn.net/liukun321/article/details/7270426 ,故需要修改内核

源码的arch/arm/mach-s5pv210/include/mach/memory.h文件26,27行内容,将Maximum of 256MiB in one bank的限制改为Maximum

 of 512MiB in one bank  作如下修改:

#define SECTION_SIZE_BITS    29
#define NODE_MEM_SIZE_BITS    29 

通过上述两步修改u-boot for tiny210即可成功引导linux/android.

你可能感兴趣的:(网络,cmd,linux内核)