
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.