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: AIC on at91 port


David,

    It looks to me like using the AIC would remove
roughly 20 instructions plus the entire
hal_IRQ_handler() routine (2 LDRs, an AND, and a for
loop over up to 20 interrupt sources).  It would also
make the interrupt handling overhead the same for all
IRQ sources.  If I can still count cycles this late at
night, time wise, this is a ballpark 2 uSecs. Not huge
but nothing to sneeze at in IRQ handling.  The uniform
overhead in IRQs would be a nice benefit as well.

With the exception of the hal_IRQ_handler() routine,
it appears that all of the IRQ overhead is in the
hal/arm/arch tree instead of hal/arm/at91.  It looks
like adding use of the AIC vectoring would involve a
non-trivial bit of mucking around in vectors.s and
hal_intr.h.  In a one-off build where there is no
desire to merge the changes back into the main, these
changes would be reasonably straight-forward.  To do
it in a way consistent with the rest of the hal, one
would need to at least 
1) come up with a way for platforms to change any of
the standard ARM exception vector locations (0x04 -
0x1c);
2) turn the interrupt overhead (from IRQ to the
determination of the interrupt handler location) into
a macro or a callable function;
3) allow platforms to override the architecture based
registration of ISRs.

I assume that our friends at RedHat would have a lot
to say about whether it is done and how it should be
done.

Regards,
Rob
-----
Robert Martin
rmartin@sonoranfoothillseng.com


--- "Deli Geng (David)" <deli.geng@ncl.ac.uk> wrote:
> Hi, there,
> 
> it seems that eCos at91 port didn't utilize the on
> chip AIC for interrupt
> dispatch (it is used for interrupt config and
> control). Does anyone know the
> reason? and is it possible to make AIC dispatch the
> interrupt? It looks like
> more efficiency.
> 
> regards
> 
> David
> 
> 


__________________________________________________
Do You Yahoo!?
Send FREE video emails in Yahoo! Mail!
http://promo.yahoo.com/videomail/


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