adamgreen / mri

MRI - Monitor for Remote Inspection. The gdb compatible debug monitor for Cortex-M devices.
Apache License 2.0
155 stars 58 forks source link

Board support: WeAct Studio MiniF4 #44

Closed ALTracer closed 1 year ago

ALTracer commented 1 year ago

Description

Add platform code to support WeAct Studio minimal system development boards with STM32F411CEU6 chips.

I used relevant code from the stm32f429i-disco platform already supported by MRI.

Because there is no STLINK/V2-B onboard, a built-in gdbstub provided by MRI would be very helpful for debugging simple no-RTOS STM32CubeFW_F4 projects.

This is in the hope that it will be useful. I tested it on my blackpill with one of two USARTs available on UFQFN48 package. I might try to integrate this with Blackmagic Debug Probe firmware (for +15-20k flash footprint) to be able to debug the BMD itself without a second upstream debugger.

adamgreen commented 1 year ago

Thanks so much for the PR.

I see that you have added a few more commits since your initial PR. Are you done with all of your testing at this point and think it is ready for me to code review, test, and merge?

ALTracer commented 1 year ago

It's ready for review, and you'd need a blackpill for testing. The first 5 commits contain files I morphed from stm32f429 back in April 2023, it's only now that I considered contributing them back because I haven't used/tested this for more than a couple days since then. It worked with arm-none-eabi-gdb/gdb-multiarch over pl2303, and that was good enough.

The nRF52 commit contains a separate proposed change to build this on Linux via a simple make.

The other two either import standard headers I already had in CubeFW and enable the make to actually build for blackpill.

Actually, just now I noticed copyrights are wrong. This may be a thing I'll fix after your review. CubeFW/HAL/CMSIS were committed as-is, with all the dirty whitespace and CR/LF -- I keep them unpacked read-only. They are a separate version compared to F429.

Do you need my CubeMX project sources for testing?