Unmask SError interrupt and clear SCR_EL3.EA bit
This patch disables routing of external aborts from lower exception levels to
EL3 and ensures that a SError interrupt generated as a result of execution in
EL3 is taken locally instead of a lower exception level.

The SError interrupt is enabled in the TSP code only when the operation has not
been directly initiated by the normal world. This is to prevent the possibility
of an asynchronous external abort which originated in normal world from being
taken when execution is in S-EL1.

Fixes ARM-software/tf-issues#153

Change-Id: I157b996c75996d12fd86d27e98bc73dd8bce6cd5
1 parent c1efc4c commit 0c8d4fef28768233f1f46b4d085f904293dffd2c
@Achin Gupta Achin Gupta authored on 4 Aug 2014
Showing 10 changed files
View
bl1/aarch64/bl1_arch_setup.c
View
bl1/aarch64/bl1_entrypoint.S
View
bl1/aarch64/bl1_exceptions.S
View
bl2/aarch64/bl2_entrypoint.S
View
bl31/aarch64/bl31_arch_setup.c
View
bl31/aarch64/bl31_entrypoint.S
View
bl31/aarch64/runtime_exceptions.S
View
bl32/tsp/aarch64/tsp_entrypoint.S
View
bl32/tsp/aarch64/tsp_exceptions.S
View
services/std_svc/psci/psci_entry.S