AnsweredAssumed Answered

Secondary bootloader vector table

Question asked by Wouter Dhondt on Sep 4, 2017
Latest reply on Sep 7, 2017 by Kan_Li

Working on the PN7462 I'm in the process of creating a secondary bootloader. Right now, I have the bootloader at 0x203000 and the application at 0x209000 . All I do in the secondary bootloader right now is load the stack and application entry addresses, and start the main application using these addresses.

 

I know the main application is run as I set a LED at startup. So this seems to work fine. The problem starts is when trying to run a real application (e.g. the door access example). The interrupts in the vector table are still pointing to the 0x203000 region, i.e. the secondary bootloader. So of course everything stops working when the first interrupt happens. Is there any way to remap the vector table? Things I've tried:

 

- loading the vector table in ram, but there is no way to remap the reading to this

- adjust the VTOR (virtual table offset register at 0xE000ED08) but this is read only I believe?

 

How do you use a full blown application in conjunction with a secondary bootloader?

Outcomes