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: Virtual Vector Configuration


"Stefan Sommerfeld" <sommerfeld@mikrom.de> writes:

> Hello,
> 
> I'm searching for the right eCos configuration to replace all virtual
> vector functions from the bootloader with the one's from a loaded
> application. Especially the exception code must be replace.
> 
> My problem is that the MIPS fpu exception code has some bugs (I'll do
> a patch soon), but the code is inside the redboot (it's in the
> flash). I don't want to exchange the bootloaders on many systems and
> another point would be that the code from flash runs slighly slower
> than from ram. I saw the option "initialize whole of virtual vector
> table" in the configtool, but I'm not sure if this will also initilize
> the exception functions. Another problem with it would be that I need
> the version vector from bootloader, which tells my information about
> the hardware.
> 
> Any suggestion what would be the right way?

What you want to do has nothing to do with the virtual vector
table. Instead you need to update the VSR table with a pointer to the
default exception VSR in your executable rather than the one in
RedBoot. You should be able to do this in C from your
hal_platform_init() routine. Something like:

    hal_vsr_table[CYGNUM_HAL_VECTOR_FPE] = __default_exception_vsr;

Add appropriate #includes and extern declarations to keep the compiler
happy.


-- 
Nick Garnett                                     eCos Kernel Architect
eCosCentric Limited     http://www.eCosCentric.com/   The eCos experts
Barnwell House, Barnwell Drive, Cambridge, UK.    Tel: +44 1223 245571
Registered in England and Wales: Reg No 4422071.


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