[U-Boot-Users] decoding 'program check exception trap'

Amit Shah shahamit at gmail.com
Mon Aug 16 18:02:15 CEST 2004


Hi all,

I have u-boot working on a custom board based on the MV64360 with a PPC
750GX processor. I've set the autoboot timeout to 3 secs, with the bootcmd
to 'go 0x40004'. I have a 'serial_getc' in main_loop so that I can transfer
a binary to the 40004 mem. location using a PCI interface via the host
machine.


On timeout, u-boot tries to transfer control to the binary, but it seems
there's some problem:

## Starting application at 0x00040004 ...
NIP: 00040004 XER: 00000000 LR: 0FFE7824 REGS: 0ff9db70 TRAP: 0700 DAR:
3DFEFEF7
MSR: 00088030 EE: 1 PR: 0 FP: 0 ME: 0 IR/DR: 11

GPR262144: 0FFE7814 0FF9DC60 00000080 00000001 0FF9DE94 00000010 FFFFFFFE
00000004
GPR08: 00000041 00000000 FFFFFFFF F1009010 00000000 00040000 00040000
00040000
GPR262144: 00040000 00040000 15DB7FF4 F79EFBFF 7EBBBBEF 00000001 DFEFBF6F
00000001
GPR24: 80006200 0FF9DE90 00000000 00000001 00040000 0FF9DF98 10005058
00040000
696e6720: ff ff ff fe 3f ff ff df ff fe ff 696e6720 ff ff ff ff
0003fff0: ff df 7f ff f7 ff ed ff ff ff bf ff 77 ff f6 fd
00040000: 00 d0 696e6720 696e6720 696e6720 d0 00 d0 ff f5 696e6720 696e6720
bf 696e6720 696e6720 696e6720
696e6720: 696e6720 696e6720 696e6720 696e6720 eb df bf ff 696e6720 696e6720
696e6720 fd fa fe ff ff
00040020: f7 ff 77 df ff ef 7f ff 3f 9f ff 4f ff ff f9 df
00040030: ef fe ef fe ff ff ff ff bf f7 fb 696e6720 696e6720 696e6720 fe ff
00040040: ff ff 77 ff 7f 5f 696e6720 696e6720 fb 696e6720 696e6720 696e6720
696e6720 696e6720 696e6720 696e6720
696e6720: 696e6720 ff bf ef cf ef ff 7f fe fe ff ff 696e6720 696e6720 ff ff
00040060: f7 ff ff df f6 ff 7f ff 35 ff f5 ff b7 7f e7 ff
00040070: ff ff ef af df ff fe 696e6720 696e6720 696e6720 fe fa ef f7 fe
696e6720
696e6720: 696e6720 696e6720 696e6720 696e6720 696e6720 696e6720 696e6720
696e6720 696e6720 696e6720 696e6720 ff 7f e6 696e6720 696e6720

696e6720: 696e6720 696e6720 ab 696e6720 696e6720 696e6720 696e6720 696e6720
696e6720 696e6720 696e6720 696e6720 fe ff 6f ff
000400a0: ff ff ff ed 696e6720 696e6720 ff 7f d7 df fd ff ff 77 f5 bf
000400b0: fa bf ff ff ff bf ff 7d fe ff bb bb ff fe ef ff
000400c0: 696e6720 696e6720 ff ef d4 696e6720 df ff df f7 df ff eb 7f 69 bf
000400d0: fb ff ff ff fe ef fe ff eb ff fa ff f7 fb ae 63
Call backtrace:
Program Check Exception

Since the 'call backtrace' has no pointers, I can't use the 'backtrace'
script to decode stuff. Anyways, I think that won't help here, since I know
what the control flow is.

Is SRR1 stored anywhere? That could help me why exception 0x700 is being
caused.

Also, can this be due to some caching? It should not, 'cos there shouldn't
have been any access to this location earlier for the data at that location
to be cached, but one possibility that I can think of right now.

Any help appreciated.

Thanks,
Amit.
-- 
Amit Shah
http://amitshah.nav.to/





More information about the U-Boot mailing list