Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, chiptool generated PAC are missing top level peripherals and interrupt
definitions when used from a pure YAML workflow, i.e. without an SVD file, as in
the following command:
chiptool gen-block --input xmc4800.yml --output src/lib.rs
Such an approach is useful if no well-written SVD file is available for
the target MCU. For example, the XMC4800 SVD file calls all enumerated values
value1
,value2
and so on resulting in a de-facto unusable PAC.Since all IR already implements
Serialize
andDeserialize
traits,this workflow is enabled by reading/writing the IR
Device
blockfrom/to YAML as well as done in the PR.
A minimum working YAML looks like:
Without this PR, this YAML fails to load with
Unknown kind "device" at line 2 column 1
.Is this a suitable approach or did I miss a reason
why
Device
was intentionally not read/written from/to YAML?