summaryrefslogtreecommitdiffstats
path: root/bsps/arm/shared/start/start.S
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2019-07-26 07:59:27 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2019-07-26 08:00:48 +0200
commit0ee2125a9268c8480f6995a789f30a85ff4831a5 (patch)
treeb569594b8cade2f0b0aa4226d6762a998d2c66fb /bsps/arm/shared/start/start.S
parentbsps/arm: Remove register init for ARMv7-M (diff)
downloadrtems-0ee2125a9268c8480f6995a789f30a85ff4831a5.tar.bz2
bsps/arm: Move register init to start.S
This makes it easier to review changes in start.S. Update #3773.
Diffstat (limited to 'bsps/arm/shared/start/start.S')
-rw-r--r--bsps/arm/shared/start/start.S59
1 files changed, 55 insertions, 4 deletions
diff --git a/bsps/arm/shared/start/start.S b/bsps/arm/shared/start/start.S
index a7fd7eda62..1f6d38f564 100644
--- a/bsps/arm/shared/start/start.S
+++ b/bsps/arm/shared/start/start.S
@@ -146,7 +146,20 @@ _start:
mov r5, r1 /* machine type number or ~0 for DT boot */
mov r6, r2 /* physical address of ATAGs or DTB */
#else /* BSP_START_NEEDS_REGISTER_INITIALIZATION */
- bl bsp_start_init_registers_core
+ mov r0, #0
+ mov r1, #0
+ mov r2, #0
+ mov r3, #0
+ mov r4, #0
+ mov r5, #0
+ mov r6, #0
+ mov r7, #0
+ mov r8, #0
+ mov r9, #0
+ mov r10, #0
+ mov r11, #0
+ mov r12, #0
+ mov r13, #0
#endif
#ifdef RTEMS_SMP
@@ -204,7 +217,11 @@ _start:
sub r3, r3, r1
#ifdef BSP_START_NEEDS_REGISTER_INITIALIZATION
- bl bsp_start_init_registers_banked_fiq
+ mov r8, #0
+ mov r9, #0
+ mov r10, #0
+ mov r11, #0
+ mov r12, #0
#endif
/* Enter ABT mode and set up the ABT stack pointer */
@@ -271,8 +288,42 @@ _start:
vmsr FPEXC, r0
#ifdef BSP_START_NEEDS_REGISTER_INITIALIZATION
- bl bsp_start_init_registers_vfp
-#endif
+ mov r0, #0
+ vmov d0, r0, r0
+ vmov d1, r0, r0
+ vmov d2, r0, r0
+ vmov d3, r0, r0
+ vmov d4, r0, r0
+ vmov d5, r0, r0
+ vmov d6, r0, r0
+ vmov d7, r0, r0
+ vmov d8, r0, r0
+ vmov d9, r0, r0
+ vmov d10, r0, r0
+ vmov d11, r0, r0
+ vmov d12, r0, r0
+ vmov d13, r0, r0
+ vmov d14, r0, r0
+ vmov d15, r0, r0
+#ifdef ARM_MULTILIB_VFP_D32
+ vmov d16, r0, r0
+ vmov d17, r0, r0
+ vmov d18, r0, r0
+ vmov d19, r0, r0
+ vmov d20, r0, r0
+ vmov d21, r0, r0
+ vmov d22, r0, r0
+ vmov d23, r0, r0
+ vmov d24, r0, r0
+ vmov d25, r0, r0
+ vmov d26, r0, r0
+ vmov d27, r0, r0
+ vmov d28, r0, r0
+ vmov d29, r0, r0
+ vmov d30, r0, r0
+ vmov d31, r0, r0
+#endif /* ARM_MULTILIB_VFP_D32 */
+#endif /* BSP_START_NEEDS_REGISTER_INITIALIZATION */
#endif /* ARM_MULTILIB_VFP */