ISR Argument Proposal Request
gregory.menke at gsfc.nasa.gov
gregory.menke at gsfc.nasa.gov
Tue Feb 4 17:53:53 UTC 2003
Valette Eric writes:
> gregory.menke at gsfc.nasa.gov wrote:
>
> > At present cpu.h provides a per-cpu #define for conditionally
> > including the 2nd stack frame parameter- its not accessible by
> > configure. Perhaps that approach could stay if people desire it- a
> > 2nd parameter is inexpensive on mips, but not necessarily elsewhere.
> >
> > I've come into this discussion a bit late, my interpretation of the
> > discussion is people are contemplating changing the vector table to an
> > array of structs, one per vector, which contain the vector address and
> > a user-supplied void * which is passed with the vector call. Each bsp
> > will index into the array as it suits the architecture- the advantage
> > of the structs being it allows the programmer to supply something
> > useful rather than having to interpret a vector # or creating a pile
> > of small functions to do it. Is this right?
> >
> > On the mips, we vector exceptions from the same table as interrupts,
> > which I think is a wash in this case as we would set the void * to the
> > exception #.
>
> I think you should have a look at the PPC implementation of irq handling
> because we are discussing different things here. The handler table and
> the irq handler argument do not need to be in the same table, just on
> many arch it will save instructions to do so as the hdl and its argument
> are "close".
>
I'm not wedded to our vectoring implementation. It was a convenient
choice at the time given the state of the mips support in RTEMS, but
something more sophisticated would be fine.
I've been messing around in the PPC bsp a bit, and from my fairly
short exposure, I think something like that would be OK. I'm willing
to deal with the local tweaks we might need to pass additional state
around and the enhanced portability would be a big help.
Gregm
More information about the users
mailing list