[U-Boot] mpc8313 and bdi2000, core register access fails

Peter Vollmer pvollmer-u-boot at innominate.com
Wed Apr 7 18:56:44 CEST 2010


Hi all,

I am currently trying to bring up u-boot on our mpc83xx board (MPC8313,  
64MB DDR2 RAM, 128MB 8bit large page NAND flash) using a BDI2000 (please  
see attached bdi2000 configuration). This is the bdi console log during  
powerup:

BDI>reset
- TARGET: processing user reset request
- BDI asserts HRESET
- Reset JTAG controller passed
- Bypass check: 0x00000001 => 0x00000001
- JTAG exists check passed
- IDCODE is 0x3687001D
- BDI overrides HRCW (0xA0140000 0x65040000)
- BDI removes HRESET
- PVR is 0x80850010
- SVR is 0x80B00021
- BDI sets breakpoint at 0x00000100
- BDI resumes program execution
- COP status is 0x05
- Waiting for target stop failed
- TARGET: Break at boot vector failed, freeze forced
- TARGET: Target PVR is 0x80850010
- TARGET: resetting target passed
- TARGET: processing target startup ....
- TARGET: processing target startup passed

I've seen the "COP status is 0x05" part of the log in the list archives a  
couple of times, but so far failed to understand the real meaning of  
status 0x05. Could somebody please shed light on this ?
The RCW sets the boot memory space to 0x00000100, and the BDI sets the  
breakpoint, so what's going wrong here ... ?

The main problem however is that I fail to write to any general purpose  
register except GPR00 and GPR01, the register dump after powerup and after  
each register modification always shows:
BDI> rm 0 0x00
BDI> rm 1 0x01
BDI> rm 3 0x03
BDI>rd
GPR00: 00000000 00000001 0000004f 0000004f
GPR04: 0000004f 0000004f 0000004f 0000004f
GPR08: 0000004f 0000004f 0000004f 0000004f
GPR12: 0000004f 0000004f 0000004f 0000004f
GPR16: 0000004f 0000004f 0000004f 0000004f
GPR20: 0000004f 0000004f 0000004f 0000004f
GPR24: 0000004f 0000004f 0000004f 0000004f
GPR28: 0000004f 0000004f 0000004f 0000004f
CR   : 0000004f     MSR: 00001002

Trying to do a single step instruction trace also fails:
BDI>ti
     Target CPU        : MPC83xx (e300c3)
     Target state      : debug mode
     Debug entry cause : COP halt
     Current PC        : 0x00000100
     Current CR        : 0x0000004f
     Current MSR       : 0x0000004f
     Current LR        : 0x0000004f
# Step timeout detected

Using the same bdi configuration, I can access an MPC8313ERDB without  
problems (only the core registers, since the RAM timings do not fit). The  
prototype board is also fully accessible with a Lauterbach debugger, so I  
suppose that the CPU should have a valid clock. But somehow it seems to me  
as if the core is not ticking ... any ideas why and how to solve this ?

Any help is very much appreciated.

Best regards
-- 
Peter Vollmer
Innominate Security Technologies AG
Berlin / Germany
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bdi.cnf
Type: application/octet-stream
Size: 6937 bytes
Desc: not available
Url : http://lists.denx.de/pipermail/u-boot/attachments/20100407/8099a95e/attachment.obj 


More information about the U-Boot mailing list