Most of the iomem.ld stuff can be moved in to native rust I think. (ping @farcaller).
We can just have them as rust statics that get changed to &'static references to their actual types. This is what I see for a lot of the newer register code.
Is there a downside to doing this @farcaller? As for #329, this would allow us to completely do away with mcu-specific linker scripts (with the exception of maybe k20).
Also kinda related to #403, as this, as long as it's 0-cost, will help us phase out a huge amount of our extern static usage.
yep, sounds like a perfect way to tackle it. The missing thing is that the current code for pointer casters doesn't support several registers of one type.
Most of the iomem.ld stuff can be moved in to native rust I think. (ping @farcaller).
We can just have them as rust statics that get changed to
&'static
references to their actual types. This is what I see for a lot of the newer register code.Is there a downside to doing this @farcaller? As for #329, this would allow us to completely do away with mcu-specific linker scripts (with the exception of maybe
k20
).Also kinda related to #403, as this, as long as it's 0-cost, will help us phase out a huge amount of our
extern static
usage.