Crate aarch64_rt

Crate aarch64_rt 

Source
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 ExceptionHandlers trait to handle exceptions.
initial_pagetable
Provides an initial pagetable which can be used before any Rust code is run.

Structs§

InitialPagetable
A hardcoded pagetable.
RegisterState
The register state saved before calling the exception handler.
RegisterStateRef
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§

ExceptionHandlers
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 the exceptions feature is enabled.
start_core
Issues a PSCI CPU_ON call to start the CPU core with the given MPIDR.