Add support for ADI MAX32690 microcontroller#9667
Merged
tannewt merged 39 commits intoadafruit:mainfrom Nov 27, 2024
Merged
Conversation
tannewt
requested changes
Sep 27, 2024
Member
tannewt
left a comment
There was a problem hiding this comment.
Thanks for the new port! I'm excited to try it. I've added a few comments. Nothing major.
Member
|
@Brandon-Hurst Do you want a review on this? I'm back from paternity leave for the time being. |
Author
|
It should be ready as far as all the requested changes and I've tested it pretty thoroughly. I had to rebase to fix the last erring CI check on the readthedocs task, and now it shows 300+ commits instead of like 30 so that may need to be fixed first 😅 sorry about that. |
…ent/unstub, but builds clean.
- Added simple status LED for initial testing - Generally cleaned up & implemented supervisor/port.c - Added some additional commenting from supervisor headers - Fixed a linkerscript issue copying .text into FLASH_ISR
- (build): added hex & bin targets for executable. - (build): temporarily modified .ld due to issue exiting MAX32 ROM code - (flash): added flash target for jlink & msdk, along with helper files under tools/ - Reorganized mpconfigport.mk for clarity - Moved flash driver & LED/PB definitions to board files (mpconfigboard._)
…Placed in supervisor/port.c - Moved LEDs & PBs from supervisor/port.c to boards/$(BOARD)/board.c for APARD - Reviewed Processor.c in common-hal/microcontroller - Prepared stubs for common-hal/microcontroller/Pin.c
…. - Enabled USB-based modules & dependencies in mpconfigport.mk
…umerates but has some issues starting interfaces for CDC/MSC/HID.
…be usable. - Had to adjust some shared modules to account for MAX32 devices not supporting IN/OUT endpoints on the same EP #
… Fixed bugs with Internal Flash filesystem. Files now write & read back correctly. - Added copyright headers for all files.
…h in microcontroller/Pin.c
…re. Added priority to remaining TODOs (low)
…h interrupt_after_ticks. - Move LED inidcator to STATUS_LED code.
… GPIO Port 4 (different on MAX32690). - Added MCR defs to max32_port.h.
…g pullup/pulldown
435ecc6 to
491b7bd
Compare
tannewt
requested changes
Nov 26, 2024
Member
tannewt
left a comment
There was a problem hiding this comment.
Two small things. I'm excited to get this merged in!
…c) and peripherals/max32690 (mcu-specific)
tannewt
approved these changes
Nov 27, 2024
Member
tannewt
left a comment
There was a problem hiding this comment.
Looks great! Thanks for working on this!
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.
Description
Add support for 2 boards: MAX32690EVKIT and AD-APARD32690-SL.
Status
At the moment, this port only includes
digitalioin addition to the supervisor and USB workflow required to get CircuitPython functioning. Pinouts listed are currently just the MCU pins; happy to change as needed to better match any requirements for form factor or pin function. I plan to follow this up with abusioPR soon, but will be more tied up in the next couple months. Still happy to make changes as needed to this PR though.USB Endpoint Enumeration Change
There is a small important bit I had to change to the way CircuitPython handles settings up USB Endpoints:
Many thanks to @tannewt and @dhalbert for the help :)