求助!!u-boot出问题了!!
我移植的u-boot-2010-06,通过tftp命令下载内核和文件系统都OK,但是通过菜单下载时,文件系统正常,但是内核就出问题了!如下面所示好像是说地址没有对齐,我的默认分区如下:
#define MTDPARTS_DEFAULT "mtdparts=nandflash0:256k@0(bios)," \
"128k(params)," \
"128k(toc)," \
"512k(eboot)," \
"1024k(logo)," \
"3m(kernel)," \
"-(root)"
和天嵌光盘的u-boot一样,查了好几天还是没搞定,请问怎么解决啊?
你用什么命令写数据到nand的?错误信息提示和你的nand写命令有关哦。 亚瑟王 发表于 2012-10-9 14:38 static/image/common/back.gif
你用什么命令写数据到nand的?错误信息提示和你的nand写命令有关哦。
下载菜单里用的这句,strcpy(cmd_buf, "tftp 0x30000000 zImage.bin; nand erase kernel; nand write.jffs2 0x30000000 kernel $(filesize)"); 和天嵌光盘里的u-boot-1.1.6源码一样的,我移植的u-boot-1.1.6也是这样写的,完全正确。但是不用菜单,单独用tftp命令(tftp 0x30000000 zImage.bin)下载就没问题,单独用tftp命令如下三步(1)tftp 0x30000000 zImage.bin (2)nand erase 0x200000 0x300000(3)nand write 0x30000000 0x200000 0x300000
希望能得到你的帮助!谢谢~~~ 亚瑟王 发表于 2012-10-9 14:38 static/image/common/back.gif
你用什么命令写数据到nand的?错误信息提示和你的nand写命令有关哦。
突然想到这样改不知道行不行,把strcpy(cmd_buf, "tftp 0x30000000 zImage.bin; nand erase kernel; nand write 0x30000000 kernel $(filesize)");就是把write.jffs2改成write,不知道这样行不行,先去试试!! xujiangyu0619 发表于 2012-10-10 11:33 static/image/common/back.gif
突然想到这样改不知道行不行,把strcpy(cmd_buf, "tftp 0x30000000 zImage.bin; nand erase kernel; nand ...
可以的。反正写kernel是不需要ecc和oob的。 亚瑟王 发表于 2012-10-10 14:29 static/image/common/back.gif
可以的。反正写kernel是不需要ecc和oob的。
nand write不行! 也一样出错,下载失败!!!
现在真知道从哪儿下手解决了~~~请帮忙解决下!! xujiangyu0619 发表于 2012-10-10 20:05 static/image/common/back.gif
nand write不行! 也一样出错,下载失败!!!
现在真知道从哪儿下手解决了~~~请帮忙解决下!!
你用的驱动从哪里来的?我移植过u-boot-2011版本的,没有发现你说的这个问题。根据你的错误信息去找具体代码,看是什么条件引起错误的,然后解决。 本帖最后由 xujiangyu0619 于 2012-10-11 19:14 编辑
亚瑟王 发表于 2012-10-10 21:33 static/image/common/back.gif
你用的驱动从哪里来的?我移植过u-boot-2011版本的,没有发现你说的这个问题。根据你的错误信息去找具体代 ...
驱动是在网上找的,能把你移植的2011源码给我参考下么? 或者我给你我移植的源码!你帮我看看!
问题出在drivers/mtd/nand/nand_util.c文件中
/* Reject writes, which are not page aligned */
if ((offset & (nand->writesize - 1)) != 0 ||
(*length & (nand->writesize - 1)) != 0) {
printf ("Attempt to write non page aligned data\n");
return -EINVAL;
}
我注释掉这段代码还是不行!然后就不知道去哪儿找了! xujiangyu0619 发表于 2012-10-11 19:13 static/image/common/back.gif
驱动是在网上找的,能把你移植的2011源码给我参考下么? 或者我给你我移植的源码!你帮我看看!
问题出在 ...
分别把offset,length,writesize的值打印出来看一下。 本帖最后由 xujiangyu0619 于 2012-10-12 18:47 编辑
亚瑟王 发表于 2012-10-12 16:34 static/image/common/back.gif
分别把offset,length,writesize的值打印出来看一下。
好的,我试试!!
write.jffs2命令是不需要页对齐的!
xujiangyu0619 发表于 2012-10-12 18:46 static/image/common/back.gif
好的,我试试!!
write.jffs2命令是不需要页对齐的!
理论上所有对nand操作的命令都要页对齐的。
页:
[1]