rust-embedded / svd2rust

Generate Rust register maps (`struct`s) from SVD files
Apache License 2.0
687 stars 149 forks source link

Support multi-level derive #610

Closed burrbull closed 2 years ago

burrbull commented 2 years ago

Some SVDs in CI (Fujitsu and Spansion, for ex. https://raw.githubusercontent.com/posborne/cmsis-svd/master/data/Spansion/MB9BF36xx.svd) contains registers with sequences of deriveFrom

        <register derivedFrom="DDR1">
          <name>PDIR1</name>
          <description>Port input data register 1</description>
          <addressOffset>0x304</addressOffset>
        </register>
...
        <register derivedFrom="PFR1">
          <name>DDR1</name>
          <description>Port input/output direction setting register 1</description>
          <addressOffset>0x204</addressOffset>
        </register>

Now this is processed in incorrect way.

Emilgardis commented 2 years ago

Fixed with #631