Expand description
Startup code for aarch64 Cortex-A processors.
Macros§
- enable_
mmu - Generates assembly code to enable the MMU and caches with the given initial pagetable before any Rust code is run.
- entry
- Marks the main function of the binary and reserves space for the boot stack.
- exception_
handlers - Registers an implementation of the
ExceptionHandlerstrait to handle exceptions. - initial_
pagetable - Provides an initial pagetable which can be used before any Rust code is run.
Structs§
- Initial
Pagetable - A hardcoded pagetable.
- Register
State - The register state saved before calling the exception handler.
- Register
State Ref - A reference to the register state saved when an exception happened.
- Stack
- A stack for some CPU core.
Constants§
- DEFAULT_
MAIR - The default value used for MAIR_ELx.
- DEFAULT_
SCTLR - The default value used for SCTLR_ELx.
- DEFAULT_
TCR_ EL1 - The default value used for TCR_EL1.
- DEFAULT_
TCR_ EL2 - The default value used for TCR_EL2.
- DEFAULT_
TCR_ EL3 - The default value used for TCR_EL3.
Traits§
- Exception
Handlers - Functions to handle aarch64 exceptions.
Functions§
- enable_
mmu ⚠ - Enables the MMU and caches with the initial pagetable.
- secondary_
entry ⚠ - An assembly entry point for secondary cores.
- set_
exception_ vector - Sets the appropriate vbar to point to our
vector_table, if theexceptionsfeature is enabled. - start_
core ⚠ - Issues a PSCI CPU_ON call to start the CPU core with the given MPIDR.