I make changes in functions:

- arm7_9_set_breakpoint(),arm7_9_unset_breakpoint() – I think it's clear to
understand
- armv4_5_get_gdb_reg_list()  - registers in target->reg_cache variable are
stored in host endianes (little endian) so if target is configured to work
in big endian GDB expects data returned formatted in big endian. In original
version register values was always returned in little endian. I declared
additional variable tmp_regs[26] holding values converted to target
endiannes and returning it to upper layer (gdb_server.c). I also add
function armv4_5_get_real_reg() to transform tmp_regs[i] to real register
from target->reg_cache variable. Maybe it can be done in more clear way but
I'm beginner in openocd sources and I needed fast solution to debug my big
endian target.



2008/11/13 Øyvind Harboe <[EMAIL PROTECTED]>

> On Thu, Nov 13, 2008 at 9:49 AM, quba54 Gazeta.pl <[EMAIL PROTECTED]>
> wrote:
> > Hi,
> >
> > Recently I also had to debug big endian arm7 target (mac7111) and I make
> > some modifications in openocd source code. See attachment.
>
> Please explain a bit more what you have done and why.
>
> Thanks!
>
>
>
>
> --
> Øyvind Harboe
> http://www.zylin.com/zy1000.html
> ARM7 ARM9 XScale Cortex
> JTAG debugger and flash programmer
>
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to