主题 : U-Boot编译后的映像文件到底可否下到NandFlash中 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 9148
精华: 0
发帖: 17
金钱: 105 两
威望: 27 点
贡献值: 0 点
综合积分: 34 分
注册时间: 2009-09-18
最后登录: 2011-10-23
楼主  发表于: 2010-01-15 08:54

 U-Boot编译后的映像文件到底可否下到NandFlash中

管理提醒: 本帖被 qq2440 从 Linux技术交流专区 移动到本区(2010-02-08)
U-Boot编译后的映像文件到底可否下到NandFlash中?看见有人说:在未支持nand的时候,不能把u-boot.bin烧到nand里面,然后按复位看情况,这样串口是不能正常输出信息,u-boot只把前4k映射到ram,未编写nand驱动前,4k以后的代码是不能复制到ram中的,tq的有了nand的驱动,所以uboot用c拷到了ram,这期间就用到了nand的驱动,所以直接烧写到nand然后复位是没有结果了。问下u-boot初始化SDRAM的代码是否在前4KB已经完成,是的话为何我的2410的板子烧入NandFlash串口打印不出信息
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
1楼  发表于: 2010-01-15 09:43
能否烧到NAND Flash中取决于uboot前4K代码是否能够将NAND Flash中的完整程序镜像复制到SDRAM中并执行。当然,那样做的前提是代码的***前4K***中就包含NAND Flash驱动,至少是可以读取NAND Flash的驱动。
楼主留言:
为何烧写到Nand中可以,读取NandFlash却必须要驱动啊?不是初始化SDRAM就可以了啊?也就是说要是只初始化SDRAM,则只是把前4K搬移到SDRAM中,剩下的还是不能读取是不?U-Boot默认的没有驱动吗?
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 9148
精华: 0
发帖: 17
金钱: 105 两
威望: 27 点
贡献值: 0 点
综合积分: 34 分
注册时间: 2009-09-18
最后登录: 2011-10-23
2楼  发表于: 2010-01-15 10:40

 回 1楼(kasim) 的帖子

为何烧写到Nand中可以,读取NandFlash却必须要驱动啊?不是初始化SDRAM就可以了啊?也就是说要是只初始化SDRAM,则只是把前4K搬移到SDRAM中,剩下的还是不能读取是不?U-Boot默认的没有驱动吗?那么如果烧到NorFlash是否也需要驱动?不需要的话为什么
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
3楼  发表于: 2010-01-15 10:46
NAND Flash的读取和SDRAM不同,需要特定的驱动通过NAND Flash Controller去完成。我在这个帖子里解释过这个过程: http://www.aiothome.net/read.php?tid-4333.html
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 9148
精华: 0
发帖: 17
金钱: 105 两
威望: 27 点
贡献值: 0 点
综合积分: 34 分
注册时间: 2009-09-18
最后登录: 2011-10-23
4楼  发表于: 2010-01-15 10:51

 回 3楼(kasim) 的帖子

可是u-boot中不是有nand_spl启动支持Nandflash吗?难道这个文件夹也是在烧到NorFlash中启动u-boot后再烧写NandFlash?
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
5楼  发表于: 2010-01-15 10:56

 回 4楼(373061200) 的帖子

nand_spl在设计时的确是用来做NAND启动模式的,但很可惜现在只有很少的几个硬件(你可以看nand_spl/board/目录下的内容)平台采用了nand_spl, 这其中并不包括mini2440上所用的S3C2440A。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 9148
精华: 0
发帖: 17
金钱: 105 两
威望: 27 点
贡献值: 0 点
综合积分: 34 分
注册时间: 2009-09-18
最后登录: 2011-10-23
6楼  发表于: 2010-01-15 11:17

 回 5楼(kasim) 的帖子

意思是说要是不支持,只能从NorFlash启动了?除非自己在前4K编写驱动 斑斑
*無鈳取玳
级别: 论坛版主
UID: 27
精华: 12
发帖: 5398
金钱: 40120 两
威望: 17929 点
贡献值: 71 点
综合积分: 11036 分
注册时间: 2008-01-16
最后登录: 2014-11-22
7楼  发表于: 2010-01-15 13:06

 回 6楼(373061200) 的帖子

是的。事实上支持S3C2410/2440 NAND启动的U-Boot网上有一大堆,在上面给的帖子里就有一个。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
级别: 新手上路
UID: 9148
精华: 0
发帖: 17
金钱: 105 两
威望: 27 点
贡献值: 0 点
综合积分: 34 分
注册时间: 2009-09-18
最后登录: 2011-10-23
8楼  发表于: 2010-01-15 14:36

 回 7楼(kasim) 的帖子

谢谢斑斑,因为我有一个不是mini2440的板子,且比较老的,很多东西都不大一样