|
根据U-BOOT1.1.6的选项[8] Boot the system对应的启动内核的文件lib_arm/boot_zImage.c进行修改的!
出现如下错误信息:
Enter your selection: 8 选择启动系统
Start Linux ...
Copy linux kernel from 0x00200000 to 0x30008000, size = 0x00300000 ... Copy Kernel to SDRAM done,zImage magic = 0x016f2818
linux command line is: "noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0"
MACH_TYPE = 168
NOW, Booting Linux......
data abort
pc : [<3000b420>] lr : [<0000005c>]
sp : 30246608 ip : 30007fff fp : 30246624
r10: 40000000 r9 : 30000000 r8 : 30008000
r7 : 30007fff r6 : 30007fff r5 : 30007fff r4 : 3023d164
r3 : 000000a8 r2 : 30256628 r1 : 30246628 r0 : 30256628
Flags: nzCv IRQs off FIQs off Mode SVC_32
Resetting CPU ...
(自动重新启动)
U-Boot 1.3.4 (Nov 28 2012 - 21:21:24)
主要修改如下,nand_read_whole函数是启动代码搬移用到的函数。
static inline int copy_kernel_img(ulong src, ulong dst, size_t size)
{
int ret = 0;
#if 0
ret = nand_read_ll_lp_lcd((unsigned long)src,(unsigned char *)dst,(int)size);
#else //NAND 地址 SDRAM地址 大小
ret = nand_read_whole(src,(unsigned char *)dst,size);
#endif
return ret;
}
|
|