ISR Argument Proposal Request
Joel Sherrill
joel.sherrill at OARcorp.com
Tue Feb 4 15:21:45 UTC 2003
gregory.menke at gsfc.nasa.gov wrote:
>
> Joel Sherrill writes:
> >
> > Till,
> >
> > I think that we are all as much in agreement over this as we
> > will ever be. Let's see if I can summarize and request that
> > you write up the API changes with a list of "key" area to
> > change.
> >
> > Some issues that must be resolved:
> >
> > + should rtems_interrupt_catch be backward compatable and
> > this functionality have a new entry point? I lean to yes.
> > + should this feature be optional and conditionally compiled?
> >
> > The development plan needs to have volunteers for each of
> > the following:
> >
> > + generic change from table of handlers to table of
> > handlers/arguments
> > + each port's irq handling
> > + API changes to original interrupt API, ppc, x86, and ARM
> > + documentation changes
> > + any work break down I am missing?
> >
> > NOTE: When you change a port, I would consider that to include
> > getting all the BSPs modified. Everything should still build.
> > I regularly build all BSPs so this is somethign I can provide
> > feedback on.
> >
> > We can't start this until we are confident all
> > the ports will get updated.
>
> I can work on the mips side and test it on our hardware once theres
> consensus on the implementation.
>
> I would like to preserve the ability to pass a pointer to the stack
> frame to the vector, preferably as an extra argument to the vector
> call itself. This is essential for some of our interrupt processing
> and avoids unpleasant hacks. In fact, we don't use the vector # at
> all at present.
I hesitated mentioning this but in fact a handful of
ports which pass a 2nd argument which is the address of the
exception/interrupt stack frame. The format of the data
at that pointer is port defined although I believe the
name of the data type is universal. So I would REALLY
like to see:
void _ISR_HANDLER( void *, frame * );
with better names. :)
The frame * is generally also known at ISR vectoring time.
> WRT backwards compatibility, as long as we can continue symbolically
> refer to bsp-specific interrupt lines when calling
> rtems_interrupt_catch, most any changes are fine with us.
>
> Gregm
--
Joel Sherrill, Ph.D. Director of Research & Development
joel at OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985
More information about the users
mailing list