Skip to content

Releases: google/aarch64-rt

0.4.3

23 Feb 00:20

Choose a tag to compare

Improvements

  • Added suspend_core function to wrap PSCI CPU_SUSPEND call, with warm_boot_entry as the entry
    point and SuspendContext to pass to it.

Fixes

  • Marked .bss section as NOLOAD.

0.4.2

16 Dec 16:09

Choose a tag to compare

Fixes

  • Made enable_mmu unsafe.

0.4.1

16 Dec 16:03

Choose a tag to compare

Improvements

  • Made set_exception_vector public.
  • Made enable_mmu public.

0.4.0

04 Dec 18:00

Choose a tag to compare

Breaking changes

  • Added ExceptionHandlers trait and exception_handlers! macro to define exception handlers,
    rather than relying on global symbols.
  • Added RegisterStateRef parameter to exception handlers to access the saved register state, and
    removed ELR and SPSR parameters.
  • start_core now takes an FnOnce rather than an fn and an argument. This allows arbitrary
    context to be captured in the closure.

0.3.1

04 Dec 18:00

Choose a tag to compare

Bugfixes

  • Fixed bug with four-argument version of initial_pagetable! swapping TCR and SCTLR values.

0.3.0

04 Dec 18:00

Choose a tag to compare

Breaking changes

  • Changed order of parameters to initial-pagetable macro, to make TCR last.

Improvements

  • If the initial-pagetable or exceptions features are specified without any of the elX
    features, then the exception level will be checked at runtime and the appropriate registers for
    the current EL will be used. The el1 feature is no longer enabled by default, as this runtime
    detection should work instead. Note that different ELs have different TCR registers which aren't
    laid out entirely the same, so different values must be specified for TCR for each EL.
  • Exposed enable_mmu! macro to allow the MMU and caches to be enbled with an arbitrary initial
    pagetable, rather than using initial_pagetable! to declare the static.

Bugfixes

  • Stopped exposing unmangled symbols for set_exception_vector and rust_entry.

0.2.2

04 Dec 17:59

Choose a tag to compare

Improvements

  • Added optional parameters to initial_pagetable! to allow initial MAIR, TCR and SCTLR values to
    be specified. The default values are exposed as constants.

0.2.1

04 Dec 17:59

Choose a tag to compare

Bugfixes

  • Fixed build failure when psci feature was enabled without exceptions feature.

0.2.0

04 Dec 17:58

Choose a tag to compare

Breaking changes

  • vector_table renamed to vector_table_el1.
  • start_core now takes a type parameter to choose whether to use an HVC or SMC PSCI call.

Bugfixes

  • Save and restore correct ELR and SPSR registers when handling exceptions in EL2 or EL3. New vector
    tables vector_table_el2 and vector_table_el3 are provided for these.

0.1.3

04 Dec 17:58

Choose a tag to compare

Improvements

  • Set exception vector on secondary cores too.