aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonio Nino Diaz <antonio.ninodiaz@arm.com>2018-11-23 13:50:59 +0000
committerSandrine Bailleux <sandrine.bailleux@arm.com>2018-11-26 15:09:49 +0000
commit8c0f86b79847f10881fce5cc7cc1ef59e1877ec7 (patch)
tree56dc9158a42b1b7e28bb16b7bdd46c563c2b4b54
parentffe9da6050919bf068858aac723b20d814dda574 (diff)
downloadtf-a-tests-8c0f86b79847f10881fce5cc7cc1ef59e1877ec7.tar.gz
Expand MPID_MASK define to affinity level 3
Change-Id: If643498433dfa2007703227226064b9d12f4c242 Signed-off-by: Antonio Nino Diaz <antonio.ninodiaz@arm.com>
-rw-r--r--include/lib/aarch64/arch.h1
-rw-r--r--tftf/framework/aarch64/entrypoint.S5
-rw-r--r--tftf/tests/runtime_services/standard_service/sdei/system_tests/sdei_entrypoint.S9
3 files changed, 10 insertions, 5 deletions
diff --git a/include/lib/aarch64/arch.h b/include/lib/aarch64/arch.h
index de7d33b64..1b123c6f8 100644
--- a/include/lib/aarch64/arch.h
+++ b/include/lib/aarch64/arch.h
@@ -59,6 +59,7 @@
#define MPIDR_MAX_AFFLVL U(2)
#define MPID_MASK (MPIDR_MT_MASK | \
+ (MPIDR_AFFLVL_MASK << MPIDR_AFF3_SHIFT) | \
(MPIDR_AFFLVL_MASK << MPIDR_AFF2_SHIFT) | \
(MPIDR_AFFLVL_MASK << MPIDR_AFF1_SHIFT) | \
(MPIDR_AFFLVL_MASK << MPIDR_AFF0_SHIFT))
diff --git a/tftf/framework/aarch64/entrypoint.S b/tftf/framework/aarch64/entrypoint.S
index 1d524d221..34ba90f5f 100644
--- a/tftf/framework/aarch64/entrypoint.S
+++ b/tftf/framework/aarch64/entrypoint.S
@@ -142,7 +142,8 @@ func tftf_hotplug_entry
* --------------------------------------------------------------------
*/
mrs x0, mpidr_el1
- and x0, x0, #MPID_MASK
+ mov_imm x1, MPID_MASK
+ and x0, x0, x1
bl platform_get_core_pos
mov x1, x19
@@ -167,7 +168,7 @@ func save_primary_mpid
mov w2, #INVALID_MPID
cmp w0, w2
b.ne panic
- mov x2, #MPID_MASK
+ mov_imm x2, MPID_MASK
mrs x0, mpidr_el1
and x0, x0, x2
str w0, [x1, :lo12:tftf_primary_core]
diff --git a/tftf/tests/runtime_services/standard_service/sdei/system_tests/sdei_entrypoint.S b/tftf/tests/runtime_services/standard_service/sdei/system_tests/sdei_entrypoint.S
index aae85fcc2..27ffa39eb 100644
--- a/tftf/tests/runtime_services/standard_service/sdei/system_tests/sdei_entrypoint.S
+++ b/tftf/tests/runtime_services/standard_service/sdei/system_tests/sdei_entrypoint.S
@@ -35,7 +35,8 @@ func sdei_entrypoint_resume
/* Calculate address of event completion variable */
mrs x0, mpidr_el1
- and x0, x0, #MPID_MASK
+ mov_imm x1, MPID_MASK
+ and x0, x0, x1
bl platform_get_core_pos
lsl x0, x0, #2
adrp x1, event_handled
@@ -59,7 +60,8 @@ func sdei_handler_done
/* Calculate address of event completion variable */
mrs x0, mpidr_el1
- and x0, x0, #MPID_MASK
+ mov_imm x1, MPID_MASK
+ and x0, x0, x1
mov x29, x30
bl platform_get_core_pos
mov x30, x29
@@ -93,7 +95,8 @@ func sdei_state_entrypoint
/* Calculate address of event completion variable */
mrs x0, mpidr_el1
- and x0, x0, #MPID_MASK
+ mov_imm x1, MPID_MASK
+ and x0, x0, x1
bl platform_get_core_pos
lsl x0, x0, #2
adrp x1, event_handled