linux2.6移植

我照如下部分移植成功,引用部分后面讲过程中遇到的问题.

问题1

  生成的是zImage文件.如果直接烧入内存0x30008000,然后bootm 0x30008000肯定出错, 说bad magic num. 因为bootm只能引导uImage文件..区别请去网上查,关键字是0x40.  如果用go 0x30008000来执行,那么无法传递系统参数, 所以建议是zImage转成uImage,然后用bootm命令.

  方法如下, 在uboot编译完了以后会有一个mkimage的命令

 

问题2

  我的开发板定义是 boot   0x0~0x00040000 (256K)

                        kernel  0x00040000~0x00200000 (1.75M)

   如果烧录uImage文件到0x00040000~0x00200000这个空间,然后reset开发板, 发现提示

   nand read: device 0 offset 0x100000 ,size 0x300000 3145728 byte read :ok

   这个是uboot里面关于bootcommand的读取地址错误, 需要吧上面的改成你需要的kernel地址空间就可以了 好像是/include/configs/bs2410.h这个文件 好像 呵呵.

  改完后重新烧过,  出现错误 kernel panic -not syncing: VFS:unable to mount root fs on unknow-block

  这就是说kernel没有找到根文件系统.  呵呵.  貌似到了这一步说明linux移植成功了. 下一步 busybox来做根文件系统.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值