summaryrefslogtreecommitdiff
path: root/services
diff options
context:
space:
mode:
authorJeenu Viswambharan <jeenu.viswambharan@arm.com>2017-11-16 12:06:34 +0000
committerJeenu Viswambharan <jeenu.viswambharan@arm.com>2017-11-20 08:15:46 +0000
commitf1a67d0565fcc774790030db6a98804d2ea91619 (patch)
tree6a017660cff4ba36bfbffa6d8e45f7dcd2d7fd54 /services
parentb968241faf9455f461fc896d9c62fbb902559311 (diff)
SDEI: Assert that dynamic events have Normal priority
The SDEI specification requires that binding a client interrupt dispatches SDEI Normal priority event. This means that dynamic events can't have Critical priority. Add asserts for this. Change-Id: I0bdd9e0e642fb2b61810cb9f4cbfbd35bba521d1 Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
Diffstat (limited to 'services')
-rw-r--r--services/std_svc/sdei/sdei_main.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/services/std_svc/sdei/sdei_main.c b/services/std_svc/sdei/sdei_main.c
index 4fe990ad..2f08c8ba 100644
--- a/services/std_svc/sdei/sdei_main.c
+++ b/services/std_svc/sdei/sdei_main.c
@@ -120,6 +120,7 @@ void sdei_class_init(sdei_class_t class)
/* Platform events are always bound, so set the bound flag */
if (is_map_dynamic(map)) {
assert(map->intr == SDEI_DYN_IRQ);
+ assert(is_event_normal(map));
num_dyn_shrd_slots++;
} else {
/* Shared mappings must be bound to shared interrupt */
@@ -171,6 +172,7 @@ void sdei_class_init(sdei_class_t class)
if (map->ev_num != SDEI_EVENT_0) {
if (is_map_dynamic(map)) {
assert(map->intr == SDEI_DYN_IRQ);
+ assert(is_event_normal(map));
num_dyn_priv_slots++;
} else {
/*