diff --git a/services/std_svc/sdei/sdei_intr_mgmt.c b/services/std_svc/sdei/sdei_intr_mgmt.c index f12b2ca3d99ee922e29ecfb8e628d3553f40ca92..5d176c2092c6affa11cfefb82e0cb8735b2f1110 100644 --- a/services/std_svc/sdei/sdei_intr_mgmt.c +++ b/services/std_svc/sdei/sdei_intr_mgmt.c @@ -636,15 +636,15 @@ int sdei_dispatch_event(int ev_num) if (!can_sdei_state_trans(se, DO_DISPATCH)) return -1; - /* Activate the priority corresponding to the event being dispatched */ - ehf_activate_priority(sdei_event_priority(map)); - /* * Prepare for NS dispatch by restoring the Non-secure context and * marking that as active. */ ns_ctx = restore_and_resume_ns_context(); + /* Activate the priority corresponding to the event being dispatched */ + ehf_activate_priority(sdei_event_priority(map)); + /* Dispatch event synchronously */ setup_ns_dispatch(map, se, ns_ctx, &dispatch_jmp); begin_sdei_synchronous_dispatch(&dispatch_jmp);