summaryrefslogtreecommitdiff
path: root/common/bl_common.c
diff options
context:
space:
mode:
authorJuan Castillo <juan.castillo@arm.com>2014-06-05 09:45:36 +0100
committerJuan Castillo <juan.castillo@arm.com>2014-07-28 12:20:16 +0100
commitd3280beb700321b0ef47b4f61d84667ba501bc61 (patch)
tree8a6c3f70a6f8d289256ac3fb940ea07a339072a1 /common/bl_common.c
parent592dd7cbe658cc33ae2818c9ed543ac57e97f784 (diff)
Rework incorrect use of assert() and panic() in codebase
Assert a valid security state using the macro sec_state_is_valid(). Replace assert() with panic() in those cases that might arise because of runtime errors and not programming errors. Replace panic() with assert() in those cases that might arise because of programming errors. Fixes ARM-software/tf-issues#96 Change-Id: I51e9ef0439fd5ff5e0edfef49050b69804bf14d5
Diffstat (limited to 'common/bl_common.c')
-rw-r--r--common/bl_common.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/common/bl_common.c b/common/bl_common.c
index 60b63f18..d2c60eff 100644
--- a/common/bl_common.c
+++ b/common/bl_common.c
@@ -61,12 +61,11 @@ void change_security_state(unsigned int target_security_state)
{
unsigned long scr = read_scr();
+ assert(sec_state_is_valid(target_security_state));
if (target_security_state == SECURE)
scr &= ~SCR_NS_BIT;
- else if (target_security_state == NON_SECURE)
- scr |= SCR_NS_BIT;
else
- assert(0);
+ scr |= SCR_NS_BIT;
write_scr(scr);
}