summaryrefslogtreecommitdiffstats
path: root/bsps/aarch64/xilinx-zynqmp/start
diff options
context:
space:
mode:
Diffstat (limited to 'bsps/aarch64/xilinx-zynqmp/start')
-rw-r--r--bsps/aarch64/xilinx-zynqmp/start/bspstarthooks.c12
-rw-r--r--bsps/aarch64/xilinx-zynqmp/start/bspstartmmu.c5
2 files changed, 12 insertions, 5 deletions
diff --git a/bsps/aarch64/xilinx-zynqmp/start/bspstarthooks.c b/bsps/aarch64/xilinx-zynqmp/start/bspstarthooks.c
index ad688088e5..14f2bcc280 100644
--- a/bsps/aarch64/xilinx-zynqmp/start/bspstarthooks.c
+++ b/bsps/aarch64/xilinx-zynqmp/start/bspstarthooks.c
@@ -47,6 +47,11 @@
BSP_START_TEXT_SECTION void bsp_start_hook_0( void )
{
+ /* do nothing */
+}
+
+BSP_START_TEXT_SECTION void bsp_start_hook_1( void )
+{
#ifdef RTEMS_SMP
uint32_t cpu_index_self;
@@ -72,13 +77,10 @@ BSP_START_TEXT_SECTION void bsp_start_hook_0( void )
_SMP_Start_multitasking_on_secondary_processor(
_Per_CPU_Get_by_index( cpu_index_self )
);
+ /* Unreached */
}
+#endif /* RTEMS_SMP */
-#endif
-}
-
-BSP_START_TEXT_SECTION void bsp_start_hook_1( void )
-{
AArch64_start_set_vector_base();
bsp_start_copy_sections();
zynqmp_setup_mmu_and_cache();
diff --git a/bsps/aarch64/xilinx-zynqmp/start/bspstartmmu.c b/bsps/aarch64/xilinx-zynqmp/start/bspstartmmu.c
index 09012c9db5..e727f9b1de 100644
--- a/bsps/aarch64/xilinx-zynqmp/start/bspstartmmu.c
+++ b/bsps/aarch64/xilinx-zynqmp/start/bspstartmmu.c
@@ -37,6 +37,7 @@
#include <bsp.h>
#include <bsp/start.h>
#include <bsp/aarch64-mmu.h>
+#include <libcpu/mmu-vmsav8-64.h>
BSP_START_DATA_SECTION static const aarch64_mmu_config_entry
zynqmp_mmu_config_table[] = {
@@ -49,6 +50,10 @@ zynqmp_mmu_config_table[] = {
.begin = 0xfd000000U,
.end = 0xffc00000U,
.flags = AARCH64_MMU_DEVICE
+ }, {
+ .begin = 0x80000000U,
+ .end = 0x80100000U,
+ .flags = 0
}
};