Skip to content

Merge v0.6 into master, integrate 1180 support#60

Merged
mciantyre merged 6 commits intoimxrt-rs:masterfrom
mciantyre:v0.6-1180
Mar 31, 2026
Merged

Merge v0.6 into master, integrate 1180 support#60
mciantyre merged 6 commits intoimxrt-rs:masterfrom
mciantyre:v0.6-1180

Conversation

@mciantyre
Copy link
Copy Markdown
Member

The next -hal version expects support for the 1180 in the 0.6 release series. If we merge v0.6 back into master, we receive that support.

There are a few peripheral instances that have `NULL` as their base
address in the SVD. My guess is that `NULL` is a signal to humans to not
use this address. If I remember correctly , the peripherals tagged with
`NULL` require indirect access through ANATOP. Until this commit, we've
generated those peripheral instances, despite the silly address.

However, a runtime check in `NonNull` will panic when the core library
is built with debug assertions. Users may hit this panic if they build
their firmware with this configuration, then try to acquire the
individual peripheral instance or the `Instances` aggregate. The panic
in the latter case is inconvenient, especially when the user doesn't
care about these instances.

This commit removes these `NULL` instances from the public API. I'm
keeping the register blocks; pairing `core::mem::offset_of!` with
register blocks is useful.

For convenience / ease of implementation, I'm doing the filtering down
in the codegen step of `raltool`. It would be better to implement this
as a standard transform / cleanup step that kept the register block
while discarding the instances. We can try this later.

I plan to release this breaking change in the 0.5 and 0.6 series. This
will affect users who were relying on these incorrect symbols.
I updated the CHANGELOG in the previous commit.
The next -hal version expects support for the 1180 in the 0.6 release
series. If we merge back into master, we receive that support.
@mciantyre mciantyre merged commit b586d6c into imxrt-rs:master Mar 31, 2026
24 checks passed
@mciantyre mciantyre deleted the v0.6-1180 branch March 31, 2026 10:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant