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: RedBoot


>Perhaps the cygwin tools aren't in the path. Have you installed the .reg
>file mentioned in "Updated configuration tools for Windows" at
>http://sources.redhat.com/ecos/anoncvs.html ?

I'll give that a try. I didn't notice the reg file back when I switched to
ConfigTool 1.3.1.2.

>> Not being able to run the tests, I tried to get more insight as to where
my
>> application was failing.  I find that it is failing in the function
>> quicc_eth_init in if_quicc.c.  This is called from cyg_net_init, in the
for
>> loop after the thread (cyg_netint) is created and started.  I have had
some
>> troubles with GDB crashing while stepping through various parts of the
>> quicc_eth_init routine - once it crashed when stepping over
HAL_DCACHE_SYNC.
>> It seems to have problems with the cyg_drv_interrupt_unmask function
call.



>Looking at it, the problem may be that the interrupts are set up so near
>the start. This means that any interrupts received before the init function
>finishes could lead to problems because the rest of the driver hasn't been
>initialised. And if RedBoot had been using the eth device, interrupts
>_would_ already be enabled.

>Try setting up the interrupt handling much closer to the end, or perhaps
>just try turning off interrupts throughout that function just to see if
>that helps.


I'll move the interrupt creation and unmasking to the end of the
quicc_eth_init function and see what happens. I'm not sure about that
because I have seen it fail at various points through that routine.  If that
doesn't work I'll give globally turning off interrupts a try and see where
that leads - although, won't that have an effect on GDB's communication?

I'm a little confused how the Ethernet switch over occurs since I'm
debugging over the Ethernet port as well.  Basically, RedBoot is receiving
debug packets from GDB over the Ethernet port while I am stepping through
the quicc_eth_init routine to setup control of the same Ethernet port for
the application.

--Anthony


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