GitXplorerGitXplorer
r

svd2icicle

public
5 stars
2 forks
0 issues

Commits

List of commits on branch main.
Verified
af90ec637c8504df52573716528f3f40e2d722d6

Include basic documentation

rrbran committed a year ago
Verified
be308d9c35d0779befc964417cc0bdc077a48f3e

Improve page handling of arrays

rrbran committed a year ago
Verified
5d2157c846eedb9d6dbb2c59694d21430a913ded

Fix registers/clusters not using the peripheral page offset

rrbran committed a year ago
Verified
2d1b1f67adac38b8bc4d8133599f9e13c417246a

Fix alignment in the todo message

rrbran committed a year ago
Verified
c72bc8f994b8b7cb8db5d88d0018d318055f511c

Enumerate values use Into instead of repr(u*)

rrbran committed a year ago
Verified
826df02c9721f40d25193358458ab0d3c893c3e1

Make fields order constrant betwwen executions

rrbran committed a year ago

README

The README file for this repository.

Svd2Icicle

This project convert multiple svd files into a single peripheral struct compatible with icicle-emu.

How to use

To generate the files use the compiled binary, the first arguments should be the output lib.rs file, all other arguments are svd files used to generate the peripheral struct.

The output file is not formatted, is possible prettify it using cargo-fmt, it's also possible to split the file using the form command.

cargo run "YOUR_PROJECT_HERE/src/lib.rs" "svd_file1.svd" "svd_file2.svd" "svd_fileN.svd"
cd YOUR_PROJECT_HERE
form -i src/lib.rs -o src
cargo fmt

The result files should can be edited afterwards to implemented the required behavior.

Example

The project icicle-nrf52832 is an example of a partial implementation of a nrf52832 VM generated using this tool.