主题 : uboot for tiny210引导linux启动不了问题,及分析 复制链接 | 浏览器收藏 | 打印
级别: 骑士
UID: 61140
精华: 1
发帖: 213
金钱: 1125 两
威望: 225 点
贡献值: 1 点
综合积分: 446 分
注册时间: 2011-12-23
最后登录: 2016-11-20
楼主  发表于: 2012-03-19 02:00

 uboot for tiny210引导linux启动不了问题,及分析

在使用uboot for tiny210时,uboot运行正常~
但是在引导linux内核时总是(如下:),然后就不动了。。。。。
## Booting kernel from Legacy Image at 21000000 ...
   Image Name:   linux-2.6.35.7
   Created:      2012-03-18  17:11:05 UTC
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    4119260 Bytes = 3.9 MiB
   Load Address: 21000000
   Entry Point:  21000040
   Verifying Checksum ... OK
   XIP Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

找了好多资料,然后把内核又重新编译一般,加上debug信息,追查到(如下),应该是在内存配置上有问题~
Uncompressing Linux... done, booting the kernel.                                  
<6>Initializing cgroup subsys cpu                                                  
<5>Linux version 2.6.35.7-FriendlyARM (richardnee@ThinkPad) (gcc version 4.5.1 (ct2
CPU: ARMv7 Processor [412fc082] revision 2 (ARMv7), cr=10c53c7f                    
CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache              
Machine: MINI210                                                                  
Memory policy: ECC disabled, Data cache writeback                                  
<7>On node 0 totalpages: 131072                                                    
<7>free_area_init_node: node 0, pgdat c076e890, node_mem_map c0967000              
<7>  Normal zone: 1024 pages used for memmap                                      
<7>  Normal zone: 0 pages reserved                                                
<7>  Normal zone: 130048 pages, LIFO batch:31


当时uboot的commandline是:
root=/dev/mtdblock4 console=ttySAC0,115200 init=/linuxrc androidboot.console=s3c2410_serial0

所以我又把内存信息也加进去root=/dev/mtdblock4 console=ttySAC0,115200 init=/linuxrc androidboot.console=s3c2410_serial0 mem=512M
但是还是不行!!!
看了该贴:http://www.aiothome.net/read.php?tid-16001-fpage-0-toread--page-1.html
其中有
jnny_cn 7楼  发表于: 34天前
自己解决了,内存设置为单通道就可以了
并且跑起了xserver+gtk,运行quake2很流畅


我不知道怎么把uboot内存设置为单通道(或者还是linux,不懂啊)~~
但是把commandline的mem改为256M,居然linux kernel启动起来了~~

然而内存也初始化为256M,也不知道是不是这个原因,也导致后面的NAND Flash初始化不对,找不到nand设备,启动不了在nand上的根文件系统~
[    1.122476] S3C NAND Driver, (c) 2008 Samsung Electronics
[    1.127500] Unknown NAND Device.
。。。。
mount: mounting /dev/mtdblock4 on /r failed: No such device or address
/init: line 103: can't open /r/dev/console: no such file


当然,我现在还没试试能不能启动nfs上的根文件系统。。。


我的分析就是这样,希望对大家有用~~~
同时希望高手能够给点提示,提点下我这个菜鸟。。。。
多谢
级别: 骑士
UID: 61140
精华: 1
发帖: 213
金钱: 1125 两
威望: 225 点
贡献值: 1 点
综合积分: 446 分
注册时间: 2011-12-23
最后登录: 2016-11-20
1楼  发表于: 2012-03-19 11:12
对了,我是把MACH_TYPE_TINY210改为mini210的值3466来引导tiny210自带linux内核镜像的(因为友善tiny210的congfigure用的是mini210的。。。)~
咕唧咕唧
级别: 侠客
UID: 30422
精华: 1
发帖: 114
金钱: 620 两
威望: 124 点
贡献值: 1 点
综合积分: 248 分
注册时间: 2010-10-16
最后登录: 2016-05-27
2楼  发表于: 2012-03-21 18:43

 回 1楼(neechard) 的帖子

谢谢提出的问题,周末我会重新测试,如果有bug我会及时更新补丁,再次感谢你对u-boot for tiny210 的关注。
级别: 骑士
UID: 61140
精华: 1
发帖: 213
金钱: 1125 两
威望: 225 点
贡献值: 1 点
综合积分: 446 分
注册时间: 2011-12-23
最后登录: 2016-11-20
3楼  发表于: 2012-03-21 20:40

 回 2楼(liukunmcu) 的帖子

哈哈,期待liukunmcu兄能够分析出来
反正我现在已经阵亡了
咕唧咕唧
级别: 侠客
UID: 30422
精华: 1
发帖: 114
金钱: 620 两
威望: 124 点
贡献值: 1 点
综合积分: 248 分
注册时间: 2010-10-16
最后登录: 2016-05-27
4楼  发表于: 2012-05-19 22:16