This is the mail archive of the ecos-discuss@sourceware.org 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: Problem in FIQ with ecos for arm(at91sam7x)


Hi,

Mervin J wrote:

static cyg_uint32 ui32FiqIsr(cyg_vector_t vector, cyg_addrword_t word)
{
   ade_int_proc_fp++;
   // Tell the processor that we have received
   // the interrupt.
   cyg_interrupt_acknowledge(vector);
   return(CYG_ISR_HANDLED);
}

Can you please look at the stackpointer just before exiting of the FIQ? Is it constant every time? And is its address correct?
In FIQ mode some registers are shadowed and eCos tries to convert a fiq to an irq in vectors.S. However - maybe there is a seldom occurring bug. (However - most times the bug is in the user program.)


What happens in the user program when ade_int_proc_fp++ overflows? Might this be a problem?

Greetings,
 Martin L.


-- 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]