aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Morrissey <james.morrissey@arm.com>2014-02-10 14:24:36 +0000
committerDan Handley <dan.handley@arm.com>2014-02-17 18:51:43 +0000
commit40a6f64795847f2b96ec24e9b11cb7002f0b48bf (patch)
tree114e57eca37970dddbb35e33538f7a75da515ca5
parentdf64a55b3a675a61b88bb4d0a357ba7085000cdc (diff)
Fix asserts appearing in release builds
Also fix warnings generated in release builds when assert code is absent. Change-Id: I45b9173d3888f9e93e98eb5b4fdc06727ba5cbf4
-rw-r--r--Makefile2
-rw-r--r--bl1/bl1_main.c2
-rw-r--r--common/bl_common.c5
-rw-r--r--common/psci/psci_common.c7
-rw-r--r--common/psci/psci_setup.c5
-rw-r--r--plat/fvp/aarch64/plat_common.c5
6 files changed, 17 insertions, 9 deletions
diff --git a/Makefile b/Makefile
index 7938318..f64a700 100644
--- a/Makefile
+++ b/Makefile
@@ -154,6 +154,8 @@ ifneq (${DEBUG}, 0)
CFLAGS += -g
# -save-temps -fverbose-asm
ASFLAGS += -g -Wa,--gdwarf-2
+else
+CFLAGS += -DNDEBUG=1
endif
diff --git a/bl1/bl1_main.c b/bl1/bl1_main.c
index df92374..06ab4e5 100644
--- a/bl1/bl1_main.c
+++ b/bl1/bl1_main.c
@@ -47,7 +47,9 @@ void bl1_arch_next_el_setup(void);
******************************************************************************/
void bl1_main(void)
{
+#if DEBUG
unsigned long sctlr_el3 = read_sctlr();
+#endif
unsigned long bl2_base;
unsigned int load_type = TOP_LOAD, spsr;
meminfo *bl1_tzram_layout;
diff --git a/common/bl_common.c b/common/bl_common.c
index 0a0c5cd..d401f8c 100644
--- a/common/bl_common.c
+++ b/common/bl_common.c
@@ -272,8 +272,9 @@ unsigned long load_image(meminfo *mem_layout,
unsigned int load_type,
unsigned long fixed_addr)
{
- unsigned long temp_image_base, image_base;
- long offset;
+ unsigned long temp_image_base = 0;
+ unsigned long image_base = 0;
+ long offset = 0;
int image_flen;
/* Find the size of the image */
diff --git a/common/psci/psci_common.c b/common/psci/psci_common.c
index e6be2f8..193655d 100644
--- a/common/psci/psci_common.c
+++ b/common/psci/psci_common.c
@@ -37,6 +37,7 @@
#include <psci.h>
#include <psci_private.h>
#include <runtime_svc.h>
+#include "debug.h"
/*******************************************************************************
* Arrays that contains information needs to resume a cpu's execution when woken
@@ -511,7 +512,8 @@ void psci_afflvl_power_on_finish(unsigned long mpidr,
start_afflvl,
end_afflvl,
mpidr_nodes);
- assert (rc == PSCI_E_SUCCESS);
+ if (rc != PSCI_E_SUCCESS)
+ panic();
/*
* This function acquires the lock corresponding to each affinity
@@ -529,7 +531,8 @@ void psci_afflvl_power_on_finish(unsigned long mpidr,
end_afflvl,
pon_handlers,
mpidr);
- assert (rc == PSCI_E_SUCCESS);
+ if (rc != PSCI_E_SUCCESS)
+ panic();
/*
* This loop releases the lock corresponding to each affinity level
diff --git a/common/psci/psci_setup.c b/common/psci/psci_setup.c
index c0d29f2..4c32b41 100644
--- a/common/psci/psci_setup.c
+++ b/common/psci/psci_setup.c
@@ -255,7 +255,7 @@ static unsigned int psci_init_aff_map(unsigned long mpidr,
******************************************************************************/
void psci_setup(unsigned long mpidr)
{
- int afflvl, affmap_idx, rc, max_afflvl;
+ int afflvl, affmap_idx, max_afflvl;
aff_map_node *node;
/* Initialize psci's internal state */
@@ -314,8 +314,7 @@ void psci_setup(unsigned long mpidr)
psci_set_state(node, PSCI_STATE_ON);
}
- rc = platform_setup_pm(&psci_plat_pm_ops);
- assert(rc == 0);
+ platform_setup_pm(&psci_plat_pm_ops);
assert(psci_plat_pm_ops);
return;
diff --git a/plat/fvp/aarch64/plat_common.c b/plat/fvp/aarch64/plat_common.c
index 8568bfe..5b53aaf 100644
--- a/plat/fvp/aarch64/plat_common.c
+++ b/plat/fvp/aarch64/plat_common.c
@@ -35,6 +35,7 @@
#include <bl_common.h>
/* Included only for error codes */
#include <psci.h>
+#include "debug.h"
unsigned char platform_normal_stacks[PLATFORM_STACK_SIZE][PLATFORM_CORE_COUNT]
__attribute__ ((aligned(PLATFORM_CACHE_LINE_SIZE),
@@ -534,8 +535,8 @@ int platform_config_setup(void)
bld = (sys_id >> SYS_ID_BLD_SHIFT) & SYS_ID_BLD_MASK;
arch = (sys_id >> SYS_ID_ARCH_SHIFT) & SYS_ID_ARCH_MASK;
- assert(rev == REV_FVP);
- assert(arch == ARCH_MODEL);
+ if ((rev != REV_FVP) || (arch != ARCH_MODEL))
+ panic();
/*
* The build field in the SYS_ID tells which variant of the GIC