summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bsps/aarch64/shared/start/start.S15
-rw-r--r--spec/build/bsps/aarch64/xilinx-versal/grp_qemu.yml2
-rw-r--r--spec/build/bsps/aarch64/xilinx-versal/grp_vck190.yml2
-rw-r--r--spec/build/bsps/aarch64/xilinx-zynqmp/grp_zu3eg.yml2
-rw-r--r--spec/build/bsps/optstartmon.yml16
5 files changed, 8 insertions, 29 deletions
diff --git a/bsps/aarch64/shared/start/start.S b/bsps/aarch64/shared/start/start.S
index 338c51f7d0..bc1fb00d70 100644
--- a/bsps/aarch64/shared/start/start.S
+++ b/bsps/aarch64/shared/start/start.S
@@ -98,7 +98,13 @@ _start:
#endif
msr SCTLR_EL1, x0
-#ifdef BSP_START_IN_EL3_MONITOR_MODE_SUPPORT
+ mrs x0, CurrentEL
+ cmp x0, #(1<<2)
+ b.eq _el1_start
+ cmp x0, #(2<<2)
+ b.eq _el2_start
+
+_el3_start:
/* Drop from EL3 to EL2 */
/* Initialize HCR_EL2 and SCTLR_EL2 */
@@ -131,12 +137,7 @@ _start:
#endif
msr ELR_EL3, x0
eret
-#endif
-#if defined(BSP_START_IN_HYP_SUPPORT) || \
- ( defined(BSP_START_IN_EL3_MONITOR_MODE_SUPPORT) && \
- defined(AARCH64_IS_NONSECURE) \
- )
_el2_start:
/* Drop from EL2 to EL1 */
@@ -159,8 +160,8 @@ _el2_start:
adr x0, _el1_start
msr ELR_EL2, x0
eret
+
_el1_start:
-#endif
#ifdef RTEMS_SMP
/* Read MPIDR and get current processor index */
diff --git a/spec/build/bsps/aarch64/xilinx-versal/grp_qemu.yml b/spec/build/bsps/aarch64/xilinx-versal/grp_qemu.yml
index 71d8c9ac49..5a98190ee3 100644
--- a/spec/build/bsps/aarch64/xilinx-versal/grp_qemu.yml
+++ b/spec/build/bsps/aarch64/xilinx-versal/grp_qemu.yml
@@ -10,8 +10,6 @@ links:
- role: build-dependency
uid: grp
- role: build-dependency
- uid: ../../optstartmon
-- role: build-dependency
uid: tstqemu
type: build
use-after: []
diff --git a/spec/build/bsps/aarch64/xilinx-versal/grp_vck190.yml b/spec/build/bsps/aarch64/xilinx-versal/grp_vck190.yml
index c10f2a725f..d47895b489 100644
--- a/spec/build/bsps/aarch64/xilinx-versal/grp_vck190.yml
+++ b/spec/build/bsps/aarch64/xilinx-versal/grp_vck190.yml
@@ -10,8 +10,6 @@ links:
- role: build-dependency
uid: grp
- role: build-dependency
- uid: ../../optstarthyp
-- role: build-dependency
uid: tstvck190
type: build
use-after: []
diff --git a/spec/build/bsps/aarch64/xilinx-zynqmp/grp_zu3eg.yml b/spec/build/bsps/aarch64/xilinx-zynqmp/grp_zu3eg.yml
index 801195cdf5..fa6347b2e4 100644
--- a/spec/build/bsps/aarch64/xilinx-zynqmp/grp_zu3eg.yml
+++ b/spec/build/bsps/aarch64/xilinx-zynqmp/grp_zu3eg.yml
@@ -10,8 +10,6 @@ links:
- role: build-dependency
uid: grp
- role: build-dependency
- uid: ../../optstarthyp
-- role: build-dependency
uid: tstzu3eg
type: build
use-after: []
diff --git a/spec/build/bsps/optstartmon.yml b/spec/build/bsps/optstartmon.yml
deleted file mode 100644
index 9c48aad926..0000000000
--- a/spec/build/bsps/optstartmon.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
-actions:
-- get-boolean: null
-- define-condition: null
-build-type: option
-copyrights:
-- Copyright (C) 2021 Gedare Bloom <gedare@rtems.org>
-default: true
-default-by-variant: []
-description: |
- If set to true, then a system start in monitor mode (EL3) is
- supported, otherwise it is unsupported.
-enabled-by: true
-links: []
-name: BSP_START_IN_EL3_MONITOR_MODE_SUPPORT
-type: build