Setup Nicer MCU Support - #546
Draft
dchansen06 wants to merge 17 commits into
Draft
Conversation
Signed-off-by: Daniel Hansen <dchansen06@gmail.com>
Signed-off-by: Daniel Hansen <dchansen06@gmail.com>
Signed-off-by: Daniel Hansen <dchansen06@gmail.com>
Signed-off-by: Daniel Hansen <dchansen06@gmail.com>
Signed-off-by: Daniel Hansen <dchansen06@gmail.com>
Signed-off-by: Daniel Hansen <dchansen06@gmail.com>
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.
Nicer CubeMX MCU Support
Problem and Scope
Manually copied CMSIS, HAL/LL drivers, and linking layer means that only @dchansen06 and @Th3will fully understand how to add new boards and such
Description
Use
FetchContentbuilt into CMake to automate adding CMSIS, HAL/LL drivers, and the required layer; use sparse checkout to just get the needed filesSimplify the CMake of each project
Simplify the root CMake
Reprove that HOOTL testing works
Gotchas and Limitations
Linker scripts are automatically made by CubeMX only when configured for CMake and are not available from STM32 or Arm
SVD files will also need to be fully manual with https://www.st.com/content/st_com/en/search.html#q=svd-t=resources-page=1 or something
Testing
Testing Details
Test support for all available boards and HOOTL
Larger Impact
Crazy reduction in internal design complexity if a few functions can take care of it
Additional Context and Ticket
Part of #526
Resolves #525