How to build an ecos application "redboot-aware"

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

How to build an ecos application "redboot-aware"

Davide Pippa
Hi!

I'm trying to use redboot with a TWR-K70F120M board.
I've succeeded in doing the following:
- got a rom with redboot compiled and running;
- can connect to redboot console thru osbdm usb virtual serial port
(using P&E micro terminal);
- can connect to redboot console thru ethernet (I set the IP to
12.13.14.216 and connect to port 9000);
Now I'm trying to use GDB to debug an application.
I've tried with an application I used to work with (a simple demo
blinking leds and sending udp packets),
but I cannot successfully load it thru gdb, i see that:

$ arm-eabi-gdb demo1.elf
GNU gdb (eCos GNU Tools 4.6.3-20120623) 7.4.1
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-pc-cygwin --target=arm-eabi".
For bug reporting instructions, please see:
<http://bugs.ecos.sourceware.org/>...
Reading symbols from /cygdrive/h/Works/Arm/PyIde/proj/demo1/Debug/demo1.elf...do
ne.
(gdb) target remote 12.13.14.216:9000
Remote debugging using 12.13.14.216:9000
update_arp_entry (netif=0x0, ipaddr=0x0, ethaddr=0x0, flags=<optimized out>)
    at /cygdrive/h/Works/Arm/PyIde/build/ecos/packages/net/lwip_tcpip/current/sr
c/netif/etharp.c:480
480           ip_addr_ismulticast(ipaddr)) {
(gdb) load
Loading section .rom_vectors, size 0x8 lma 0x0
Loading section .kinetis_misc, size 0x3b0 lma 0x8
Loading section .flash_conf, size 0x10 lma 0x400
Loading section .ARM.exidx, size 0x8 lma 0x410
Loading section .text, size 0x11f10 lma 0x418
Ignoring packet error, continuing...
Ignoring packet error, continuing...
Remote communication error.  Target disconnected.: Connection reset by peer.
(gdb)
(gdb)

I suppose some problem comes from the fact that this application was
compiled to work "stand-alone",
without any redboot support (I mean I used to download the image with
openocd, without any redboot
thing build and debugging with openocd only).
What kind of configuration change should I do to make an application
"redboot-aware"?
Is there any of the available templates (for the TWR-K70F120M) already
built for that?
Or, can I start from the usual template (I use the lwip_eth template)
and modify it to
support redboot?
Or am I missing something else?

Thanks!

Pyper

--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss

Reply | Threaded
Open this post in threaded view
|

Re: How to build an ecos application "redboot-aware"

Ilija Kocho [Илија Кочо]
Hi David

Probably you are using default startup type that is ROM(Platform). For
RedBoot you need to select RAM startup. All other startups than RAM you
can debug by menas of JTAG (OSBDM, etc).

There's no special template for RedBoot. Every configuration is, to
quote you "RedBoot aware" when you select RAM startup.

Ilija


On 06.04.2013 11:49, Davide Pippa wrote:

> Hi!
>
> I'm trying to use redboot with a TWR-K70F120M board.
> I've succeeded in doing the following:
> - got a rom with redboot compiled and running;
> - can connect to redboot console thru osbdm usb virtual serial port
> (using P&E micro terminal);
> - can connect to redboot console thru ethernet (I set the IP to
> 12.13.14.216 and connect to port 9000);
> Now I'm trying to use GDB to debug an application.
> I've tried with an application I used to work with (a simple demo
> blinking leds and sending udp packets),
> but I cannot successfully load it thru gdb, i see that:
>
> $ arm-eabi-gdb demo1.elf
> GNU gdb (eCos GNU Tools 4.6.3-20120623) 7.4.1
> Copyright (C) 2012 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "--host=i686-pc-cygwin --target=arm-eabi".
> For bug reporting instructions, please see:
> <http://bugs.ecos.sourceware.org/>...
> Reading symbols from /cygdrive/h/Works/Arm/PyIde/proj/demo1/Debug/demo1.elf...do
> ne.
> (gdb) target remote 12.13.14.216:9000
> Remote debugging using 12.13.14.216:9000
> update_arp_entry (netif=0x0, ipaddr=0x0, ethaddr=0x0, flags=<optimized out>)
>     at /cygdrive/h/Works/Arm/PyIde/build/ecos/packages/net/lwip_tcpip/current/sr
> c/netif/etharp.c:480
> 480           ip_addr_ismulticast(ipaddr)) {
> (gdb) load
> Loading section .rom_vectors, size 0x8 lma 0x0
> Loading section .kinetis_misc, size 0x3b0 lma 0x8
> Loading section .flash_conf, size 0x10 lma 0x400
> Loading section .ARM.exidx, size 0x8 lma 0x410
> Loading section .text, size 0x11f10 lma 0x418
> Ignoring packet error, continuing...
> Ignoring packet error, continuing...
> Remote communication error.  Target disconnected.: Connection reset by peer.
> (gdb)
> (gdb)
>
> I suppose some problem comes from the fact that this application was
> compiled to work "stand-alone",
> without any redboot support (I mean I used to download the image with
> openocd, without any redboot
> thing build and debugging with openocd only).
> What kind of configuration change should I do to make an application
> "redboot-aware"?
> Is there any of the available templates (for the TWR-K70F120M) already
> built for that?
> Or, can I start from the usual template (I use the lwip_eth template)
> and modify it to
> support redboot?
> Or am I missing something else?
>
> Thanks!
>
> Pyper
>


--
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss