diff options
author | Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com> | 2020-06-15 21:20:25 +0530 |
---|---|---|
committer | Chris Kay <chris@cjkay.com> | 2020-07-24 11:03:03 +0100 |
commit | 53af08f6c7a622127dd332de73d14fc59d6e90bd (patch) | |
tree | 92e2629f000f27b12755b87926f02064d7cd9ad0 /product/rddanielxlr/module | |
parent | c5d895d9378d20cf504467e25d51c365544487b6 (diff) |
rddanielxlr: mscp_rom: set vector table offset register
With the use of CMSIS from Commit afd75a9 ("Refactor the architecture
layer"), ROM firmware is expected to set the vector table offset
register to the RAM firmware's vector table before jumping to the RAM
firmware. This patch sets the VTOR register to the RAM firmware's vector
table for rddanielxlr platform.
Change-Id: I29d36131274bb32b315fcd48564ee5ea4196ea1d
Signed-off-by: Vijayenthiran Subramaniam <vijayenthiran.subramaniam@arm.com>
Diffstat (limited to 'product/rddanielxlr/module')
-rw-r--r-- | product/rddanielxlr/module/mscp_rom/src/mod_mscp_rom.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/product/rddanielxlr/module/mscp_rom/src/mod_mscp_rom.c b/product/rddanielxlr/module/mscp_rom/src/mod_mscp_rom.c index e0f2823b..095f36a5 100644 --- a/product/rddanielxlr/module/mscp_rom/src/mod_mscp_rom.c +++ b/product/rddanielxlr/module/mscp_rom/src/mod_mscp_rom.c @@ -14,6 +14,8 @@ #include <fwk_status.h> #include <fwk_thread.h> +#include <fmw_cmsis.h> + #include <stdint.h> #include <string.h> @@ -43,6 +45,9 @@ static void jump_to_ramfw(void) ramfw_reset_handler = (void (*)(void))*reset_base; + /* Set the vector table offset register to ramfw vector table */ + SCB->VTOR = rom_config->ramfw_ram_base; + /* * Execute the RAM firmware's reset handler to pass control from ROM * firmware to the RAM firmware. |