日期:2014-05-16  浏览次数:20610 次

MPC8313ERDB从内存启动Linux系统

最近在做MPC8313ERDB的linux版本内核移植,原厂BSP里面的内核版本是2.6.23,现在想移植到2.6.32上面去。

这个事情还真心纠结啊,,,

linux源码里面虽然有MPC8313ERDB板子的配置选项,但是目前测试了一下,把代码加入到ltib里面,然后prep解压出来,再scbuild,然后scinstall,最后得到uImage,下载到板子上,启动的时候,竟然解压那一步就错了,,,没有办法,只能把编译配置加到lkc里面,整个编译下来,可以正常解压了,但是启动的时候,就没有任何的反应了,,,

看来下面应该要把2.6.23上面所有的patch包移植到2.6.32上面去,然后再把dts这个配置移植了,,,

说远了,下面看看怎么通过tftp下载文件系统,内核镜像和dtb文件吧。。

tftp 1000000 rootfs.ext2.gz.uboot     // 下载uboot可用的文件系统,在ltib目录下
tftp 200000 uImage                    // 下载内核镜像
tftp 800000 mpc8313erdb.dtb           // 下载dtb文件
bootm 200000 1000000 800000           // 启动
这里注意一点,就是uImage是下载到0x200000这个内存地址上的,dtb文件是在0x800000,也就是说内核的空间大小是0x600000,6MB。内核必须小于6MB,否则会溢出覆盖