rust-embedded / rust-embedded/aarch32
Consider using arm-sysregs
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 66
- Forks
- 25
- Avg merge
- 4d 6h
- Merged PRs (30d)
- 4
Description
arm-sysregs is a crate for reading/writing Arm system registers. It is automatically generated from a machine-readable description of the system registers, produced by Arm.
The aarch32-cpu crate currently supports some AArch32 registers, but certainly not all, and because it's been hand written, it may contain mistakes.
However, arm-sysregs currently does not have:
- A closure based read/modify/write API
- A useful
core::fmt::Debugimplementation, meaning the read values cannot be easily printed to the console (it prints raw hex) - A
defmt::Formatimplementation, meaning the read values cannot be printed over defmt
It also uses bitflags! which means the API is heavily based on unions and sets of bitflags, which doesn't make sense for many of the registers.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing aarch32-cpu register support and the arm-sysregs crate documentation linked in the issue. Determine whether the missing closure-based read/modify/write, Debug, and defmt::Format APIs and the bitflags-based interface can meet this crate's needs; done requires a decided integration or rejection path.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- embedded-iot
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100