On Fri, Dec 3, 2010 at 11:27 PM, Ian Lambert
<[email protected]> wrote:
> Hey guys. I've been using the Openocd-0.4.0 with the Olimex ARM-USB-TINY
> Jtag on the Luminary lm3s6965 chip (Running FreeRTOS) for a while, and
> I've noticed some major problems with stepping in GDB.
>
> If it's of any help, I am using the Codesourcery arm-2009q3 toolchain.
I do not think that this has any influence on the issue.


> Every time I try to step one line of code or to step into a function, I
> end up breaking in an ISR.
This is a bit strange, that every time you have same erroneous
behavior. Would suggest to a (buggy ?) feature.
>
> Has anyone experienced similar problems?
Yes, me. Try this :
1) Try using hardware breakpoints (put HW break on next instruction
and continue, delete it, put on next, and so on). This should work
even with caches turned on.
2) Turn off the caches, most of all D$ and try then. Hack around
FreeRTOS start-up not to turn on caches. Try software breakpoints.

Stepping uses SW breakpoint instruction, i.e. it substitutes actual
code on this address with "bkpt" assembly instruction. If it is not
written to the memory but is left hanging in the cache you can have
problems.

If this works (HW breaks with caches and stepping without caches),
then OpenOCD wrongly handles caches for your CPU/board.

Look around mailing lists for my previous posts about ARM946E and the
way that I solved it (patch contributed).

BR,
Drasko
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to