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

L4+ support (focussed on L4P5 / L4Q5) #62

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

FerdinandvHagen
Copy link

@FerdinandvHagen FerdinandvHagen commented Oct 18, 2022

Currently draft - not tested but compiles on local stm32-rs version.

@David-OConnor appreciate any comments/reviews if stuff should be done differently.

On the Octo / Quad SPI: Would it make sense to have a separate module for Octo - compared to the Quad SPI.
There are a lot of functionality that seems to be missing on Quad SPI that is available on Octo SPI.

@David-OConnor
Copy link
Owner

Yea, send it. When I originally wrote this, the PAC for these wasn't out. Happy to merge once it works.

1 similar comment
@David-OConnor
Copy link
Owner

Yea, send it. When I originally wrote this, the PAC for these wasn't out. Happy to merge once it works.

@David-OConnor
Copy link
Owner

Re octo/quad - yes, probably. I put it in the way it is as a stopgap, since MCUs have one or the other, and just wanted the octo ones to work with basic functionality. Def needs work re Octo

@FerdinandvHagen
Copy link
Author

Hey @David-OConnor,

after some time away from embedded stuff I have picked up again working with embedded and the library.
The biggest issue with adding L4+ support at the moment however is that the underlying PAC is only available in the nightlies. Those nightlies however have the breaking changes I mentioned in #61.

My question is now how and if at all I should put time into this pull request for my HAL changes for L4+.

In my opinion merging changes for the L4+ only makes sense if at the same time the library gets based off a newer version of stm32-rs (aka nightlies) - as I'm not even sure it is even possible without doing so because L4+ is in the L4 crate and I think it's not possible to have two similar crates with different versions?.

Overall, I think the upcoming changes are very useful to implement as they shorten the code significantly (mainly due to being able to index arrays instead of those enums, etc.).

What are your plans around this? Have you already started incorporating changes from the nightlies?

@David-OConnor
Copy link
Owner

David-OConnor commented Jan 20, 2023

I think the answer is for stm32-rs to do a release of the l4 crate.

Because this HAL is intended to be used as a crate, it can't use dependencies that aren't on crates.io. (Not allowed by Cargo). It couldn't hurt to keep code ready for the new release, but I haven't done it. Overall, I think adding support for these MCUs is in scope and a good idea, but need to wait until the PACs are released in the l4 crate.

I'll ping the STM32-RS guys.

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.

2 participants