mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 01:24:27 +00:00

At present, any External Abort routed to EL3 is reported as an unhandled exception and cause a panic. This patch enables ARM Trusted Firmware to handle External Aborts routed to EL3. With this patch, when an External Abort is received at EL3, its handling is delegated to plat_ea_handler() function. Platforms can provide their own implementation of this function. This patch adds a weak definition of the said function that prints out a message and just panics. In order to support handling External Aborts at EL3, the build option HANDLE_EA_EL3_FIRST must be set to 1. Before this patch, HANDLE_EA_EL3_FIRST wasn't passed down to compilation; this patch fixes that too. Change-Id: I4d07b7e65eb191ff72d63b909ae9512478cd01a1 Signed-off-by: Jeenu Viswambharan <jeenu.viswambharan@arm.com>
18 lines
439 B
C
18 lines
439 B
C
/*
|
|
* Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef __EA_HANDLE_H__
|
|
#define __EA_HANDLE_H__
|
|
|
|
/* Constants indicating the reason for an External Abort */
|
|
|
|
/* External Abort received at SError vector */
|
|
#define ERROR_EA_ASYNC 0
|
|
|
|
/* Synchronous External Abort received at Synchronous exception vector */
|
|
#define ERROR_EA_SYNC 1
|
|
|
|
#endif /* __EA_HANDLE_H__ */
|