有些朋友会发现,按照上面的步骤操作,可能会出现以下错误提示:
Error: Executable TestApp_Memory/executable.elf does not contain start address..
我在遇到这个错误之后查了一些资料,并按working harddfen照资料所述的修改办法来修改,都没有作用,最后是在朋友的安装了sp的edk环境中将ACE文件生成成功的。因此,我怀疑可能是edk无 sp的9.1版本的bug。如果你和我一样头疼于sp的下载,还在使用没有sp的环境……恭喜你,或者想办法去下载sp,或者就找安装了sp的机器来生成吧。其实基于windows的sp比较好找,主要是基于Linux的sp太难下了……默哀ing,如果有哪位Linuxer知道有别的方法能够修正这个错误,烦请告知,谢谢了。
我比较懒,还比较性急,不喜欢看着bit+elf这么大的文件通过9600速度的串口下载到板子上……所以直接使用了最简单的第三种方法,打开xmd,connect ppc hw,dow zImage.elf, con,然后就OK了。终端显示的信息如下:
loaded at: 00400000 0066D19C
board data at: 0066B120 0066B19C
relocated to: 00404060 004040DC
zimage at: 00404ED5 0066A3DD
avail ram: 0066E000 08000000
Linux/PPC load: console=ttyS0,9600 root=/dev/xsysace/disc0/part3 rw
Uncompressing Linux…done.
Now booting the kernel
……..(以下信息省略)
这就表示基本内核建立成功了,我们可以接下去创建root文件系统了。呵呵,我认为最艰难的一步已经被你搞定了,恭喜。
如果遇到错误……
很多朋友都会遇到下面这种错误
inflate returned FFFFFFFB, error is caused by the size of the uncompressed image
这表示你的内核解压缩之后大小超过了你的存储空间,通常这种情况出现在你的存储空间定位于bram上。怎么解决呢?很简单,修改ld,把程序定位到ddr上不就行了~~
还有的朋友会遇到下面这种错误:
Linux/PPC load: console=ttyS0,9600
Uncompressing Linux…done.
Now booting the kernel
loaded at: 00400000 005331A0
board data at: 40000000 4000007C
relocated to: 00404084 00404100
zimage at: 00404EB9 00530A50
avail ram: 00534000 00000000
Linux/PPC load: console=ttyS0,9600
Uncompressing Linux…oops… out of memory
pause
这个时候检查一下
arch/ppc/boot/simple/embed_config.c 中vertex的支持代码是否已经被编译进去(搜索ML403) 如果没有配置的话,板级信息就不会正确建立 。
|