[U-Boot-Users] Debugging u-boot on a custom 8548 board

robert lazarski
2007-09-24T15:43:30Z

On 9/21/07, Demke Torsten-atd012 <torsten.demke@motorola.com> wrote:
>
>
> For a start I would use the 8548 cds linker script unchanged,
> build your u-boot image, flash it to 0xfff80000 and single-step
> with your BDI.
>

Hi all, I'm stuck again. I can now single step and hit some
breakpoints. However, I'm failing early in cpu/mpc85xx/start.S . I
keep on getting:

ATUM>bi 0xfffff0c0
Breakpoint identification is 0
ATUM>go
- TARGET: stopped
ATUM>rd
GPR00: fffff210 fffff0b4 00010001 00000000
GPR04: 0000000b fffff210 00000000 00000000
GPR08: 00000000 00000000 00000000 00000000
GPR12: 00000000 00000000 00000000 00000000
GPR16: 00000000 00000000 00000000 00000000
GPR20: 00000000 00000000 00000000 00000000
GPR24: 00000000 00000000 00000000 00000000
GPR28: 00000000 00000000 00000000 00000000
CR : 00000000 MSR: 00000200
ATUM>ti
- Core status is 0x0041
*** Core is stopped, no debugging possible
# PPC: timeout while waiting for halt
ATUM> Target CPU : MPC85xx (e500v2 rev.2)
Target state : running
# Step timeout detected

0xfffff0c0 maps as cpu/mpc85xx/start.S, line 163:

162
163 0: lwzu r6,4(r5)
164 lwzu r7,4(r5)

Output from powerpc-linux-objdump on b-boot.bin:

fffff0c0: 84 c5 00 04 lwzu r6,4(r5)

When this happens, I seemingly can't read any registers or do any
further analysis.
I spent the last few days trying to develop the exact cause, but I'm
getting inconsistent behavior from the bdi. The farthest I can go
consistently is set a breakpoint this far on line 163.

The code on Line 163 happens after "bl tlb1_entry" , which calls
my init.S . After trying a hundred times or so, once or twice I've
been able to step further or set a slightly further breakpoint than
line 163 - but not consistently. I've tried:

1) Doing 'ti' after reset, it gives 'Step timeout detected' at
different locations on every run.
2) Taking out the init section of the bdi.
3) General tweaking of the init section in the bdi.
4) Making the jtag clock slower in the bdi config.
5) Making my tlb1_entry bare bones.
6) Using the cds tlb1_entry .
7) Flashing the cds code into my flash.
8) Setting the breakpoint much further, board_init_f , and typing go
after reset.

Everything I've tried doesn't get me consistently past line 163 of
cpu/mpc85xx/start.S. However, I've tried single stepping slightly
before that and I've failed to single step consistently to line 163.
So I'm having a hard time developing a pattern of failure. Any ideas
on what I could try? I still haven't got as far as getting the serial
port working. Thanks!
Robert