Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 1170 pads and select impls for HAL 0.5 #26

Merged
merged 10 commits into from
Nov 30, 2022
Merged

Add 1170 pads and select impls for HAL 0.5 #26

merged 10 commits into from
Nov 30, 2022

Conversation

mciantyre
Copy link
Member

Adds types and accessors for 1170 pads. It includes select pin implementations for those pads. There's just enough pin implementations to support the examples bundled with the proposed 0.5 HAL.

The PR changes the gpio::Pin trait. Some 1170 pads can be muxed to different GPIO peripherals, and the previous trait couldn't express that capability. This is a breaking change that also affects the 1010 and 1060 pins.

Finally, the PR introduces a CCM pin trait. CCMs can output clock frequencies on a pad, and the pin trait describes which pins support that feature. There's a 0.5 HAL example that uses this for testing clock frequencies.

This PR depends on #23.

Base automatically changed from iomuxc-from-svd to master November 25, 2022 18:34
Still usable with the EH02 HAL traits; just need to look at it
differently. This lets us define an ADC driver that more closely
resembles other peripheral drivers.
Some pins on the 1170 support two different GPIO modules. We couldn't
express that with the previous trait. This commit moves the module
number into a const generic argument so that the same pad can implement
multiple pin traits.

This removes the gpio::Pin trait bound on ADC, for convenience. It
doesn't seem like we need this bound; see inline notes.
Derived from the 1176 CM7 SVD. The pad definitions are exactly the same
in the CM4 SVD; confirmed by piping the iomuxc output into shasum and
comparing the checksums for the CM7- and CM4-based outputs.
This is incomplete. It's just enough to enable the debug console on the
1170 EVK.
Just enough support for very basic examples in imxrt-hal.
See previous commit for more context. Check for IOMUXC_LPSR, and
parse the daisy registers in that peripheral block.
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