rust-embedded / aarch64-cpu

Low level access to processors using the AArch64 execution state.
Apache License 2.0
73 stars 26 forks source link

Add pointer authentication registers #14

Closed usugur closed 1 year ago

usugur commented 1 year ago

Pointer Authentication comes with ARMv8.3-A. This commit adds support for reading and writing 128-bit key registers which are referenced in Arm Architecture Reference Manual for A-profile architecture section D13.2 General system control registers.

JaviMerino commented 1 year ago

I have checked these definitions against the Arm Architecture Reference Manual DDI 0487H.a. All good.

adamgreig commented 1 year ago

Please could you fix the rustfmt issues?

usugur commented 1 year ago

I couldn't see the format difference between the files added in this commit and the existing register files such as (tpidr_el2.rs). It seems that rustfmt complains about the new line between comments and the use keyword. This shouldn't be an issue as all of the register files are using the same format. Can you show that what is missing please?

JaviMerino commented 1 year ago

Can you show that what is missing please?

This task failed: https://github.com/rust-embedded/aarch64-cpu/actions/runs/4896918903/jobs/8892258745?pr=14

CI must pass for this PR to be merged.

usugur commented 1 year ago

The format related issue has been fixed with the latest update. Could you please review and approve to enable the workflow?

nchong-at-aws commented 1 year ago

We don't currently have any maintainers for this repository, so if anyone is interested in helping to review PRs and cut releases, please comment here or chat to me on Matrix, I'd be happy to get you set up.

@adamgreig Hi Adam! I'd be happy to help as a maintainer. I'm familiar with the architecture :)

adamgreig commented 1 year ago

@nchong-at-aws great, thank you for volunteering! As the crate is owned by the rust embedded working group, would it be OK for you to join? If you open a PR to https://github.com/rust-embedded/wg#the-cortex-a-team to add your name to the list, I will approve it and you will then get access to this repo and to the crate on crates.io. There's no other responsibility beyond this crate.