summaryrefslogtreecommitdiff
path: root/bl1
diff options
context:
space:
mode:
authorYatharth Kochar <yatharth.kochar@arm.com>2016-09-23 10:48:29 +0100
committerYatharth Kochar <yatharth.kochar@arm.com>2016-09-23 14:34:29 +0100
commitfabf3017cfbd37d19563b4cb4c3204f09785397b (patch)
treea2672626b99ff919597bc9ec047da79cca4148fe /bl1
parent03a3042b0430d962641694a49c41d3b166a64d0d (diff)
AArch32: Fix detection of virtualization support
The Virtualization field in the ID_PFR1 register has only 2 valid values (0 or 1) but it was incorrectly checked against unrelated value tied to the SPSR register instead. This patch fixes the detection of virtualization support by using the valid values in BL1 context management code. Change-Id: If12592e343770e1da90f0f5fecf0a3376047ac29
Diffstat (limited to 'bl1')
-rw-r--r--bl1/aarch32/bl1_context_mgmt.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/bl1/aarch32/bl1_context_mgmt.c b/bl1/aarch32/bl1_context_mgmt.c
index c7d3c12e..a3690973 100644
--- a/bl1/aarch32/bl1_context_mgmt.c
+++ b/bl1/aarch32/bl1_context_mgmt.c
@@ -142,7 +142,7 @@ void bl1_prepare_next_image(unsigned int image_id)
SPSR_E_LITTLE, DISABLE_ALL_EXCEPTIONS);
} else {
/* Use HYP mode if supported else use SVC. */
- if (GET_VIRT_EXT(read_id_pfr1()) == MODE32_hyp) {
+ if (GET_VIRT_EXT(read_id_pfr1())) {
next_bl_ep->spsr = SPSR_MODE32(MODE32_hyp, SPSR_T_ARM,
SPSR_E_LITTLE, DISABLE_ALL_EXCEPTIONS);
} else {