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: On ARM7 can one of FIQ/IRQ be used for non-eCos stuff?


On 2008-04-02, Andrew Lunn <andrew@lunn.ch> wrote:

>> I would think what you'd want to do is to provide a function to change 
>> the FIQ vector after eCos has started. 
>
> It already exists.
>
> void cyg_interrupt_get_vsr(cyg_vector_t vector, cyg_VSR_t** vsr);
>
> void cyg_interrupt_set_vsr(cyg_vector_t vector, cyg_VSR_t* vsr);
>
> with the vector CYGNUM_HAL_VECTOR_FIQ.

That would work.  It would save a few clock cycles to set the
vector in the actual vector table rather than in the secondary
indirect one, but I don't know if it's worth the extra hassle.

> The vsr function needs to be written in assembly and save and restore
> all registers etc.

Yup.

-- 
Grant Edwards                   grante             Yow! Don't SANFORIZE me!!
                                  at               
                               visi.com            


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