feat(plat/arm): add platform firmware error injection support
On RdN2 platform variants the platform firmware performs the error
injection operation. OS provides interface to the user to initiate the
error injection. The request is relayed to platform firmware which
programs the error injection registers and starts the injection. OS
programs GIC SPI interrupt to notify platform firmware about the error
injection event.
This patch adds platform firmware support to handle the error injection
event raised by OS. Unused SPI interrupt id (83) is used to notify the
injection event. Add new platform interrupt priority level and register
it with the ehf framework to support einj feature.
At init the platform programs the GIC_NSACR register and allows the
programming of desired SPI ID from non-secure software (OS). Platform
registers interrupt handler for interrupt id 83. EINJ ACPI spec defines
SET_ERROR_TYPE_WITH_ADDRESS action. Spec also defines data structure for
this action and is placed at firmware reserved memory region. OS
triggers the error injection event and populates the associated
injection information to this structure. On einj interrupt event the
event handler consumes this data structure and injects appropriate
error.
Signed-off-by:
Omkar Anand Kulkarni <omkar.kulkarni@arm.com>
Change-Id: I531742ca222fe8f9a4d7c79c9c2346552e05a049
Loading
Please register or sign in to comment