armv8 0.0.1

A library to program armv8-a (aarch64/aarch32) hardware. Contains armv8-a specific data structure definitions, data-tables, and functions to access architectural registers.
Documentation
  • Coverage
  • 0%
    0 out of 1 items documented0 out of 0 items with examples
  • Size
  • Source code size: 3.23 MB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 973.11 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 11s Average build duration of successful builds.
  • all releases: 11s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • achreto/rust-armv8
    3 1 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • gz achreto

Rust ARMv8 (aarch64/aarch32)

Rust library to program ARMv8-A hardware. It provides access and construction functions for ARMv8 hardware-defined state and data structures.

Acknowledgements

The library closely follows the structure of rust-x86, and borrows some of its code.

Supports

  • architectural registers (generated from arm xml spec)
  • paging definitions (4k granule)

Todo's

  • AArch32 support
  • Paging granules 16k and 64k

Register Binding Generation

To generate/update the Rust register bindings execute:

    $ bash tools/generate-register-bindings.sh

Dependencies for the Rust register binding generations:

    # apt-get install python3-plumbum