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: Questions about vectors.s


Hi Gary,
It seems we have fixed this issue finally.  It was a
simple matter of restoring sp_irq at the end of the
IRQ routine.  Not restoring it was causing the BIOS
IRQ routine to save registers on the supervisor stack
due to the stack switch at the very end of the eCos
IRQ routine (move sp,ip) -- here, sp_irq becomes part
of sp_svc.  This of course doesn't affect normal ARM
platforms because the first instruction that gets
executed upon interrupt is loading sp_irq with a fresh
stack pointer, but the with the Gameboy Advance, the
BIOS was getting first dibs -- so you were correct. 
Darn that BIOS. 

Thank you for your help and patience.  This one had us
scrambling for quite awhile!

yours,
--bill
   
--- Gary Thomas <gthomas@redhat.com> wrote:
> While I intend to comment on your questions later
> (when I have more 
> time), it would be much easier for me to analyze
> your changes if 
> you either send the file (vectors.S) as an
> attachment or as context
> diffs.  The version provided is horribly wrapped by
> [at least my]
> email reader as to be totally useless.  The best
> form for diffs
> is "diff -u5 -p -N" - again make sure that they
> don't get wrapped.
> 
> I'll comment on the rest later, probably after you
> provide a more
> useful file to look at.
> 
> 
> 


__________________________________________________
Do You Yahoo!?
Make a great connection at Yahoo! Personals.
http://personals.yahoo.com


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