armv8

Crates.ioarmv8
lib.rsarmv8
version0.0.1
sourcesrc
created_at2022-10-20 19:08:45.264703
updated_at2022-10-20 19:08:45.264703
descriptionA library to program armv8-a (aarch64/aarch32) hardware. Contains armv8-a specific data structure definitions, data-tables, and functions to access architectural registers.
homepagehttps://github.com/achreto/rust-armv8
repositoryhttps://github.com/achreto/rust-armv8
max_upload_size
id692821
size3,234,723
Reto Achermann (achreto)

documentation

README

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
Commit count: 27

cargo fmt