I am using NXP S32K148 and trying to boot from a different address other than 0x00 after power-On-reset. I know I can change the VTOR, but that would be zeroed on reset so eventually the core will boot from 0x00. Is there any other way to boot from a different address after reset?
Also the reference manual mentions BOOT ROM, but no details about how to program it, use it or even its address. Is there any other document I should be looking at that I am missing?
Thanks
Solved! Go to Solution.
Hello,
@El-Mohr wrote:
I am using NXP S32K148 and trying to boot from a different address other than 0x00 after power-On-reset. I know I can change the VTOR, but that would be zeroed on reset so eventually the core will boot from 0x00. Is there any other way to boot from a different address after reset?
There is no possibility to change VTOR reset values. So table will always start after boot at 0x0.
@El-Mohr wrote:
Also the reference manual mentions BOOT ROM, but no details about how to program it, use it or even its address. Is there any other document I should be looking at that I am missing?
When Chip startup from BOOT ROM then jump to flash... You cannot program the boot address as it is done by VTOR. If you want to change you start of code in flash then you can set 0x4 address and the PC will start there.
It represents the boot from flash.
best regards,
Peter
Thanks Peter for your reply.
I think I get the first part that on reset the core will boot from 0x00.
However for the second part I am still not sure how is the ROM involved? Is there an actual separate ROM or the word ROM is used interchangeably with the flash?
In the reference manual it says "When Chip startup from BOOT ROM then jump to flash", so it seems there are two different entities, however there is no information stated about that ROM in the reference manual, that's why I am confused.
Hello,
Boot ROM is not accessible for user. Therefore you cannot do anything with it.
best regards,
Peter
Hello,
@El-Mohr wrote:
I am using NXP S32K148 and trying to boot from a different address other than 0x00 after power-On-reset. I know I can change the VTOR, but that would be zeroed on reset so eventually the core will boot from 0x00. Is there any other way to boot from a different address after reset?
There is no possibility to change VTOR reset values. So table will always start after boot at 0x0.
@El-Mohr wrote:
Also the reference manual mentions BOOT ROM, but no details about how to program it, use it or even its address. Is there any other document I should be looking at that I am missing?
When Chip startup from BOOT ROM then jump to flash... You cannot program the boot address as it is done by VTOR. If you want to change you start of code in flash then you can set 0x4 address and the PC will start there.
It represents the boot from flash.
best regards,
Peter