mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-24 13:55:56 +00:00
Merge pull request #351 from davwan01/davwan01/docs-update
Some minor fixes to interrupt-framework-design.md
This commit is contained in:
commit
c905376f96
1 changed files with 8 additions and 6 deletions
|
@ -629,11 +629,13 @@ for the following:
|
||||||
When an interrupt is received by the handler, it could check its id
|
When an interrupt is received by the handler, it could check its id
|
||||||
to ensure it has been configured as a secure interrupt at the
|
to ensure it has been configured as a secure interrupt at the
|
||||||
interrupt controller. A non-secure interrupt should never be handed
|
interrupt controller. A non-secure interrupt should never be handed
|
||||||
to the secure interrupt handler. If the routing model chosen is such
|
to the secure interrupt handler. A routing model could be chosen
|
||||||
that Secure-EL1 interrupts are not routed to EL3 when execution is
|
where Secure-EL1 interrupts are routed to S-EL1 instead of EL3 when
|
||||||
in non-secure state, then a Secure-EL1 interrupt generated in the
|
execution is in secure state. If the handler receives a Secure-EL1
|
||||||
secure state would be invalid. The handler could use the security
|
interrupt it should check which security state has the interrupt
|
||||||
state flag to check this.
|
originated from. A Secure-EL1 interrupt generated when execution is in
|
||||||
|
secure state would be invalid in this routing model. The handler could
|
||||||
|
use the security state flag to check this.
|
||||||
|
|
||||||
The SPD service should use the platform API:
|
The SPD service should use the platform API:
|
||||||
`plat_ic_get_interrupt_type()` to determine the type of interrupt for the
|
`plat_ic_get_interrupt_type()` to determine the type of interrupt for the
|
||||||
|
@ -770,7 +772,7 @@ in `tspd_smc_handler()` function upon receiving this SMC:
|
||||||
assertion is raised otherwise.
|
assertion is raised otherwise.
|
||||||
|
|
||||||
2. Checks whether the TSP needs a resume i.e check if it was preempted. It
|
2. Checks whether the TSP needs a resume i.e check if it was preempted. It
|
||||||
then saves the system register context for the secure state by calling
|
then saves the system register context for the non-secure state by calling
|
||||||
`cm_el1_sysregs_context_save(NON_SECURE)`.
|
`cm_el1_sysregs_context_save(NON_SECURE)`.
|
||||||
|
|
||||||
3. Restores the secure context by calling
|
3. Restores the secure context by calling
|
||||||
|
|
Loading…
Add table
Reference in a new issue