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]
Other format: [Raw text]

Re: RedBoot/Basic test working... context not?


Hi,

found it. It was a pending GPIO edge detect IRQ. The LOAD_CONTEXT activated the IRQ's and crashed the system.

Bye...

----- Original Message ----- From: "Stefan Sommerfeld" <sommerfeld@mikrom.de>
To: <ecos-discuss@ecos.sourceware.org>
Sent: Donnerstag, 21. Juli 2005 19:38
Subject: Re: [ECOS] RedBoot/Basic test working... context not?



Hi,
>>
>> I'm using a XScale SO-DIMM module (Ka-Ro Triton270) and moving from >> the
>> development board to the destination plattform. If I run 'basic' or
>> 'cache'
>> test on the destination plattform, it works, but context does not. I
>> guess
>> context switching doesn't work, but i wonder what is the cause of >> this.
>> What is needed for context switching? I would think it's only >> timer/cpu
>> related stuff, so there couldn't be any influence from GPIO's.
>>
>> Any hints why context switch doesn't work?
>
> What do you mean by doesn't work? Does it give an error message? Does
> an assert fail? Send out smoke signals as the SO-DIMM modules melts?


I added some debug output and found the position where it stops:

HAL_THREAD_LOAD_CONTEXT( &sp[0] );

'context' executes this macro and stopped working (no output anymore).
There's also no output from entry0. I sure it's some hardware influence,
but why does the threading doesn't work?

Because this is much more complicated than the tests that you've already run! The biggest difference is that interrupts are normally enabled as part of the change of context. If you've got some I/O misconfigured (based on your query about GPIO), this could be the problem.

I agress with you, it sounds like an IRQ problem due to incorrect GPIO config, but why does the program start work and the new threads not. Event a program with a main() function doesn't work. Some test are working, like thread0 or intr0, others not like thread1. Is there a test where i can come a little closer to the problem?

Bye...

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



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


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