aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorDimitris Papastamos <dimitris.papastamos@arm.com>2018-05-17 14:35:34 +0100
committerGitHub <noreply@github.com>2018-05-17 14:35:34 +0100
commiteda9eadebeb6fc156d052b2d2a866428ae0f1f53 (patch)
tree0cf337fbc2a459813b97467685d9cb81bbbd94a1 /drivers
parenta54616a6685c8c2f08eaf9290e18da43b4c01782 (diff)
parent205cf6e7a52bc006cb625060b1dafcbd3d2a0d76 (diff)
downloadplatform_external_arm-trusted-firmware-eda9eadebeb6fc156d052b2d2a866428ae0f1f53.tar.gz
platform_external_arm-trusted-firmware-eda9eadebeb6fc156d052b2d2a866428ae0f1f53.tar.bz2
platform_external_arm-trusted-firmware-eda9eadebeb6fc156d052b2d2a866428ae0f1f53.zip
Merge pull request #1340 from Andre-ARM/sec-irqs-fixes
Fix support for systems without secure interrupts
Diffstat (limited to 'drivers')
-rw-r--r--drivers/arm/gic/v2/gicv2_main.c7
-rw-r--r--drivers/arm/gic/v3/gicv3_helpers.c6
-rw-r--r--drivers/arm/gic/v3/gicv3_main.c4
3 files changed, 6 insertions, 11 deletions
diff --git a/drivers/arm/gic/v2/gicv2_main.c b/drivers/arm/gic/v2/gicv2_main.c
index e25e501df..bbe73fb95 100644
--- a/drivers/arm/gic/v2/gicv2_main.c
+++ b/drivers/arm/gic/v2/gicv2_main.c
@@ -178,9 +178,6 @@ void gicv2_driver_init(const gicv2_driver_data_t *plat_driver_data)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
- /* The platform should provide a list of secure interrupts */
- assert(plat_driver_data->g0_interrupt_array);
-
/*
* If there are no interrupts of a particular type, then the
* number of interrupts of that type should be 0 and vice-versa.
@@ -195,8 +192,8 @@ void gicv2_driver_init(const gicv2_driver_data_t *plat_driver_data)
WARN("Please migrate to using an interrupt_prop_t array\n");
}
#else
- assert(plat_driver_data->interrupt_props != NULL);
- assert(plat_driver_data->interrupt_props_num > 0);
+ assert(plat_driver_data->interrupt_props_num > 0 ?
+ plat_driver_data->interrupt_props != NULL : 1);
#endif
/* Ensure that this is a GICv2 system */
diff --git a/drivers/arm/gic/v3/gicv3_helpers.c b/drivers/arm/gic/v3/gicv3_helpers.c
index 69c695128..020ec1b63 100644
--- a/drivers/arm/gic/v3/gicv3_helpers.c
+++ b/drivers/arm/gic/v3/gicv3_helpers.c
@@ -433,8 +433,7 @@ unsigned int gicv3_secure_spis_configure_props(uintptr_t gicd_base,
unsigned int ctlr_enable = 0;
/* Make sure there's a valid property array */
- assert(interrupt_props != NULL);
- assert(interrupt_props_num > 0);
+ assert(interrupt_props_num > 0 ? interrupt_props != NULL : 1);
for (i = 0; i < interrupt_props_num; i++) {
current_prop = &interrupt_props[i];
@@ -556,8 +555,7 @@ unsigned int gicv3_secure_ppi_sgi_configure_props(uintptr_t gicr_base,
unsigned int ctlr_enable = 0;
/* Make sure there's a valid property array */
- assert(interrupt_props != NULL);
- assert(interrupt_props_num > 0);
+ assert(interrupt_props_num > 0 ? interrupt_props != NULL : 1);
for (i = 0; i < interrupt_props_num; i++) {
current_prop = &interrupt_props[i];
diff --git a/drivers/arm/gic/v3/gicv3_main.c b/drivers/arm/gic/v3/gicv3_main.c
index d8fc7d683..82f43d085 100644
--- a/drivers/arm/gic/v3/gicv3_main.c
+++ b/drivers/arm/gic/v3/gicv3_main.c
@@ -103,8 +103,8 @@ void gicv3_driver_init(const gicv3_driver_data_t *plat_driver_data)
WARN("Please migrate to using interrupt_prop_t arrays\n");
}
#else
- assert(plat_driver_data->interrupt_props != NULL);
- assert(plat_driver_data->interrupt_props_num > 0);
+ assert(plat_driver_data->interrupt_props_num > 0 ?
+ plat_driver_data->interrupt_props != NULL : 1);
#endif
/* Check for system register support */