This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: TCP/IP and rom startup mode


I've investigated on this problem by adding some tracing in eCos net package.
I've found the following:
When operating in ROM startup mode, the long delay (approx. 2 mn) for
completing
init_all_network_interfaces is due to the execution of the DHCP protocol
(function do_dhcp in file dhcp_prot.c),
where there are many iterations in the DHCP state machine. More precisely,
controls
goes repetedly to state "DHCPSTATE_SELECTING" where it fails receiving the
DHCPOFFER message
from the DHCP server, and then listen again without retransmitting but with a
longer time out in case of repetitive failure.
(whereas, in the case of RAM startup mode, DHCPOFFER is received at the first
attempt)
However, I've found that if I wait long enough (1mn) between pushing the
ureset and pushing the wakeup button
(this is a specific procedure for running a ROM application on the EDB7212
board), I don't have
this 2mn delay.

So my conclusion is that this seems to be a HW problem.
I'm happy with this, but I though it might be helpful for other EDB7212 board
users,
to get this info in case they face the same problem.
If somebody has an explanation for why the delay between resetting and waking
up the board
impacts on the reception of the DHCPOFFER message, I'll be happy to hear about
it.

Fano

Jonathan Larmour wrote:

> Fano Ramparany wrote:
> >
> > I'm using TCP/IP stack in a client application running on eCos (the
> > server runs
> > on a unix workstation). When running the client in "RAM startup" mode
> > (mode for debugging) everything works fine.
> > When running it in "ROM startup" mode I've noticed the following
> > problems:
> > 1- it takes about one minute for the function
> > "init_all_network_interfaces" to complete.
> >   whereas in "RAM startup" mode although it takes some time for gdb to
> > download
> >   the client code on the board,  once done,
> > "init_all_network_interfaces" completes
> >   immediately.
>
> It sounds like maybe BOOTP/DHCP is timing out. Except I don't know why this
> would be specific to ROM startup. Perhaps something else in this area of
> your configuration changed?
>
> > 2- I can establish a socket connection with the bootp server (the
> > argument
> >   of the tcpconnection function) only. If I my server runs on another
> > unix workstation,
> >   my client can't connect to it
>
> Perhaps it needs routing?
>
> Jifl
> --
> Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
> Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]