cpu/stm32l5: add initial support + add support for nucleo-l552ze-q board#15192
Merged
benpicco merged 12 commits intoRIOT-OS:masterfrom Oct 23, 2020
Merged
cpu/stm32l5: add initial support + add support for nucleo-l552ze-q board#15192benpicco merged 12 commits intoRIOT-OS:masterfrom
benpicco merged 12 commits intoRIOT-OS:masterfrom
Conversation
948266c to
9855965
Compare
Contributor
|
compile/tests/ztimer_periodic/native:llvm seems to be failing sporadically, it also failed once in #15191. |
9855965 to
fd9bb8a
Compare
fd9bb8a to
a1adec1
Compare
Contributor
|
Needs a rebase 😉 |
a1adec1 to
c46651c
Compare
Contributor
Author
|
rebased |
benpicco
reviewed
Oct 20, 2020
Contributor
benpicco
left a comment
There was a problem hiding this comment.
looks good, just some minor comments
cpu/stm32/stm32_mem_lengths.mk
Outdated
Comment on lines
+267
to
+269
| ifeq ($(STM32_MODEL2), 5) | ||
| RAM_LEN = 256K | ||
| else ifeq ($(STM32_MODEL2), 6) | ||
| RAM_LEN = 256K | ||
| endif |
Contributor
There was a problem hiding this comment.
should those be the same?
Contributor
Author
There was a problem hiding this comment.
This is not a copy paste issue but indeed both cases could be put in common.
c46651c to
f9fe235
Compare
Contributor
|
Looks good. If that's not a copy & paste error in |
f9fe235 to
ef07f8a
Compare
Contributor
Author
|
Squashed and adapted the |
benpicco
approved these changes
Oct 23, 2020
ef07f8a to
80518e6
Compare
This was referenced Oct 24, 2020
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Contribution description
This PR adds support to the stm32l5 family and in the meantime to the nucleo-l552ze-q. It's very similar to L4 (regarding clock configuration) but not all bifield defines are available. That's why there's a specific
stmclk_l5.cfile but the board uses the common l4 clock configuration header.Only the unsecure mode is available, adding support for TrustedZone and privileged peripheral access is more challenging but could be done in follow-up works.
I was not able to make it work very reliably unless idle thread support is added to the build. My intuition is that there's some sort of race condition at startup but I couldn't find the problem.
important: support in OpenOCD is not yet available upstream, you have to build OpenOCD with this patch to program the board.
Testing procedure
compile_and_test_for_board.pyscript and check the results:=> No big surprise.
Issues/PRs references