[wip] Enable aarch64 exceptions
This commit is contained in:
parent
cb8932d68e
commit
185f6916ac
|
@ -0,0 +1,44 @@
|
|||
// Interrupt handling
|
||||
|
||||
|
||||
// The base address is given by VBAR_ELn and each entry has a defined offset from this
|
||||
// base address. Each table has 16 entries, with each entry being 128 bytes (32 instructions)
|
||||
// in size. The table effectively consists of 4 sets of 4 entries.
|
||||
|
||||
VBAR_EL1, VBAR_EL2, VBAR_EL3
|
||||
|
||||
CurrentEL with SP0: +0x0
|
||||
|
||||
Synchronous
|
||||
IRQ/vIRQ
|
||||
FIQ
|
||||
SError/vSError
|
||||
|
||||
CurrentEL with SPx: +0x200
|
||||
|
||||
Synchronous
|
||||
IRQ/vIRQ
|
||||
FIQ
|
||||
SError/vSError
|
||||
|
||||
Lower EL using AArch64: +0x400
|
||||
|
||||
Synchronous
|
||||
IRQ/vIRQ
|
||||
FIQ
|
||||
SError/vSError
|
||||
|
||||
Lower EL using AArch32: +0x600
|
||||
|
||||
Synchronous
|
||||
IRQ/vIRQ
|
||||
FIQ
|
||||
SError/vSError
|
||||
|
||||
// When the processor takes an exception to AArch64 execution state,
|
||||
// all of the PSTATE interrupt masks is set automatically. This means
|
||||
// that further exceptions are disabled. If software is to support
|
||||
// nested exceptions, for example, to allow a higher priority interrupt
|
||||
// to interrupt the handling of a lower priority source, then software needs
|
||||
// to explicitly re-enable interrupts
|
||||
|
Loading…
Reference in New Issue