当前位置: 技术问答>linux和unix
uboot加载内核成功,但是运行不起来的问题--
来源: 互联网 发布时间:2016-10-11
本文导语: 现象: CPU: MPC885ZPnn at 132.779 MHz [40.0...133.0 MHz] 8 kB I-Cache 8 kB D-Cache FEC present DRAM: 64 MB FLASH: 32 MB In: serial Out: serial Err: serial Net: FEC ETHERNET run to main.c : main_loop():284 ### main_loo...
现象:
CPU: MPC885ZPnn at 132.779 MHz [40.0...133.0 MHz]
8 kB I-Cache 8 kB D-Cache FEC present
DRAM: 64 MB
FLASH: 32 MB
In: serial
Out: serial
Err: serial
Net: FEC ETHERNET
run to main.c : main_loop():284
### main_loop: bootcmd="bootm 0xfc080000 0xfc280000"
Hit any key to stop autoboot: 2 1 0
run to hush.c : parse_stream_outer():3168
run to cmd_bootm.c : do_bootm():617
run to cmd_bootm.c : bootm_start():203
* kernel: cmdline image address = 0xfc080000
## Booting kernel from Legacy Image at fc080000 ...
Image Name: Linux-2.6.29
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1282669 Bytes = 1.2 MB
Load Address: 00400000
Entry Point: 00400460
Verifying Checksum ... OK
run to cmd_bootm.c : boot_get_kernel():920
kernel data at 0xfc080040, len = 0x0013926d (1282669)
run to cmd_bootm.c : bootm_start():296
## Loading init Ramdisk from Legacy Image at fc280000 ...
Image Name: Ram disk
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 3159720 Bytes = 3 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
run to cmd_bootm.c : bootm_load_os():342
##ready to load OS !!
Uncompressing Kernel Image ... OK
run to cmd_bootm.c : do_bootm():706
run to bootm.c : do_bootm_linux():334
run to bootm.c : boot_body_linux():243
Loading Ramdisk to 038a9000, end 03bac6a8 ... OK
run to bootm.c : boot_body_linux():259
## Transferring control to Linux (at address 00400460) ...
Booting using board info...
cmd_start= 7fff00
cmd_end= 7fff03
,initrd_start= 38a9000
,initrd_end= 3bac6a8
kbd= 7ffec0
Machine check in kernel mode.
Caused by (from msr): regs 03bacae8 Unknown values in msr
NIP: 004057EC XER: 80008508 LR: 004057D4 REGS: 03bacae8 TRAP: 0200 DAR: FA200284
MSR: 00001002 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 004057D4 03BACBD8 03BACF8C FA200000 00000000 FFFFFFFF 00000000 00000000
GPR08: FA200000 00000000 FA204000 00000000 FA200000 00000000 03FFF000 00000000
GPR16: 0000001B 00000000 00000000 00000000 00000000 00000000 03FF90F8 00000000
GPR24: 00400460 007FFF03 007FFF00 007FFEC0 038A9000 00989680 00412B18 03FFC300
Call backtrace:
machine check
到此重启。。。。。。。。。。。。。。。。。。。。
搞了好久,郁闷了!!!!!!!!!!
run to main.c : main_loop():284 等 是我加的调试信息。
CPU: MPC885ZPnn at 132.779 MHz [40.0...133.0 MHz]
8 kB I-Cache 8 kB D-Cache FEC present
DRAM: 64 MB
FLASH: 32 MB
In: serial
Out: serial
Err: serial
Net: FEC ETHERNET
run to main.c : main_loop():284
### main_loop: bootcmd="bootm 0xfc080000 0xfc280000"
Hit any key to stop autoboot: 2 1 0
run to hush.c : parse_stream_outer():3168
run to cmd_bootm.c : do_bootm():617
run to cmd_bootm.c : bootm_start():203
* kernel: cmdline image address = 0xfc080000
## Booting kernel from Legacy Image at fc080000 ...
Image Name: Linux-2.6.29
Image Type: PowerPC Linux Kernel Image (gzip compressed)
Data Size: 1282669 Bytes = 1.2 MB
Load Address: 00400000
Entry Point: 00400460
Verifying Checksum ... OK
run to cmd_bootm.c : boot_get_kernel():920
kernel data at 0xfc080040, len = 0x0013926d (1282669)
run to cmd_bootm.c : bootm_start():296
## Loading init Ramdisk from Legacy Image at fc280000 ...
Image Name: Ram disk
Image Type: PowerPC Linux RAMDisk Image (gzip compressed)
Data Size: 3159720 Bytes = 3 MB
Load Address: 00000000
Entry Point: 00000000
Verifying Checksum ... OK
run to cmd_bootm.c : bootm_load_os():342
##ready to load OS !!
Uncompressing Kernel Image ... OK
run to cmd_bootm.c : do_bootm():706
run to bootm.c : do_bootm_linux():334
run to bootm.c : boot_body_linux():243
Loading Ramdisk to 038a9000, end 03bac6a8 ... OK
run to bootm.c : boot_body_linux():259
## Transferring control to Linux (at address 00400460) ...
Booting using board info...
cmd_start= 7fff00
cmd_end= 7fff03
,initrd_start= 38a9000
,initrd_end= 3bac6a8
kbd= 7ffec0
Machine check in kernel mode.
Caused by (from msr): regs 03bacae8 Unknown values in msr
NIP: 004057EC XER: 80008508 LR: 004057D4 REGS: 03bacae8 TRAP: 0200 DAR: FA200284
MSR: 00001002 EE: 0 PR: 0 FP: 0 ME: 1 IR/DR: 00
GPR00: 004057D4 03BACBD8 03BACF8C FA200000 00000000 FFFFFFFF 00000000 00000000
GPR08: FA200000 00000000 FA204000 00000000 FA200000 00000000 03FFF000 00000000
GPR16: 0000001B 00000000 00000000 00000000 00000000 00000000 03FF90F8 00000000
GPR24: 00400460 007FFF03 007FFF00 007FFEC0 038A9000 00989680 00412B18 03FFC300
Call backtrace:
machine check
到此重启。。。。。。。。。。。。。。。。。。。。
搞了好久,郁闷了!!!!!!!!!!
run to main.c : main_loop():284 等 是我加的调试信息。
|
用powerpc的难得啊,很郁闷为什么还有那么多公司用很老的mpc8xx
你在main_loop后面加调试信息倒是无妨
应该还是寄存器配置上的细微差别,既然有成功的uboot,那就参照好的uboot修改那个中重要的配置用的.h 文件
你在main_loop后面加调试信息倒是无妨
应该还是寄存器配置上的细微差别,既然有成功的uboot,那就参照好的uboot修改那个中重要的配置用的.h 文件
|
从 Caused by (from msr): regs 03bacae8 Unknown values in msr 来看,
貌似是 03bacae8 这个地址的内容配置错误。 你在uboot 里找找看 。
貌似是 03bacae8 这个地址的内容配置错误。 你在uboot 里找找看 。
|
"Machine check in kernel mode."
不会是你的内核要检查芯片的ID,而那个寄存器的内容不是内核期待的值
不会是你的内核要检查芯片的ID,而那个寄存器的内容不是内核期待的值