public inbox for ecos-discuss@sourceware.org
 help / color / mirror / Atom feed
* [ECOS] remote debugging
@ 2002-07-22  9:35 Vinayak P Risbud
  2002-07-22  9:43 ` [ECOS] " Mark Salter
  2002-07-22  9:43 ` [ECOS] " Gary Thomas
  0 siblings, 2 replies; 3+ messages in thread
From: Vinayak P Risbud @ 2002-07-22  9:35 UTC (permalink / raw)
  To: Ecos-Discuss; +Cc: gdb

        Hi,
            I am trying to use remote debugging using LAN (Tcp/Ip) on
Redboot
            What I understood till now is,
                    1.  the main polls net_io_test function during idle
time
                    2.  The function net_io_test checks for
                                        tcp_sock.state == _ESTABLISHED
                    3.   If established, the control calls
net_io_assume_console
                         to setup debug channel.

                But,  after this, how the flow goes,  I am not able to
trace.
                my gdb client on remote PC sends $Hc-1#09 command,
                over tcp/ip link.
                I am not able to trace, where and how exactly this gdb
                command is read and processed (i.e trap is generated ?)

                Can any one help in tracing the flow ?

            Thanks in advance
                Vinayak



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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [ECOS] remote debugging
  2002-07-22  9:35 [ECOS] remote debugging Vinayak P Risbud
  2002-07-22  9:43 ` [ECOS] " Mark Salter
@ 2002-07-22  9:43 ` Gary Thomas
  1 sibling, 0 replies; 3+ messages in thread
From: Gary Thomas @ 2002-07-22  9:43 UTC (permalink / raw)
  To: Vinayak P Risbud; +Cc: eCos Discussion, gdb

On Mon, 2002-07-22 at 10:34, Vinayak P Risbud wrote:
>         Hi,
>             I am trying to use remote debugging using LAN (Tcp/Ip) on
> Redboot
>             What I understood till now is,
>                     1.  the main polls net_io_test function during idle
> time
>                     2.  The function net_io_test checks for
>                                         tcp_sock.state == _ESTABLISHED
>                     3.   If established, the control calls
> net_io_assume_console
>                          to setup debug channel.

More than that - at this point, all "console" I/O to RedBoot now goes
through the TCP/IP connection.

> 
>                 But,  after this, how the flow goes,  I am not able to
> trace.
>                 my gdb client on remote PC sends $Hc-1#09 command,
>                 over tcp/ip link.
>                 I am not able to trace, where and how exactly this gdb
>                 command is read and processed (i.e trap is generated ?)

As soon as RedBoot sees a "$" at the start of a command line, it 
switches to GDB (via a call to 'breakpoint()').  This happens whether 
you are using serial or network I/O.  GDB will then continue to use the
network connection for it's I/O to the target device.



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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [ECOS] Re: remote debugging
  2002-07-22  9:35 [ECOS] remote debugging Vinayak P Risbud
@ 2002-07-22  9:43 ` Mark Salter
  2002-07-22  9:43 ` [ECOS] " Gary Thomas
  1 sibling, 0 replies; 3+ messages in thread
From: Mark Salter @ 2002-07-22  9:43 UTC (permalink / raw)
  To: vinayak; +Cc: ecos-discuss

>>>>> Vinayak P Risbud writes:

>         Hi,
>             I am trying to use remote debugging using LAN (Tcp/Ip) on
> Redboot
>             What I understood till now is,
>                     1.  the main polls net_io_test function during idle
> time
>                     2.  The function net_io_test checks for
>                                         tcp_sock.state == _ESTABLISHED
>                     3.   If established, the control calls
> net_io_assume_console
>                          to setup debug channel.

>                 But,  after this, how the flow goes,  I am not able to
> trace.

The above happens during TCP connection establishment and not for
debugging per se.

>                 my gdb client on remote PC sends $Hc-1#09 command,
>                 over tcp/ip link.
>                 I am not able to trace, where and how exactly this gdb
>                 command is read and processed (i.e trap is generated ?)

When RedBoot sees the '$' character in the input stream, it executes
a breakpoint instruction which in turn gives control to the GDB stub.

See the interpreter loop in main.c where there is a test:

            if (res == _GETS_GDB) {
               ...
            }

--Mark



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

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-07-22 16:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-07-22  9:35 [ECOS] remote debugging Vinayak P Risbud
2002-07-22  9:43 ` [ECOS] " Mark Salter
2002-07-22  9:43 ` [ECOS] " Gary Thomas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).