stbenn opened a new pull request, #16338:
URL: https://github.com/apache/nuttx/pull/16338

   Add arch files and Kconfig options to interface with the progmem driver on 
STM32G0 MCUs.
   
   ## Summary
   
   This PR adds the ability to program and erase blocks of flash memory using 
the progmem interface from application code. To do this, needed to enable 
selecting chip flash configuration in KConfig. The interface is enabled by 
selecting the menu option in the system type menu. Selecting it in system type 
will enable the proper MTD progmem option automatically.
   
   This driver assumes non-secure memory access. Does not check for memory 
protection mechanisms.
   
   Similar to implementation used for STM32H5.
   
   ## Impact
   
   This change only effects the G0 portion of the `stm32f0l0g0` directory. 
Other architectures in this directory may share similar flash interfaces, but I 
did not have the boards to test them so I isolated the G0.
   
   ## Testing
   
   This was tested with both STM32G071RB (single bank) and STM32G0B1RE (dual 
bank) chips, on Nucleo-G071RB and Nucleo-G0B1RE boards respectively.
   
   OS: Ubuntu 24.04 Docker container on Ubuntu 24.04 host
   MCU: STM32G071RB and STM32G0B1RE
   Compiler: Arm GNU Toolchain 13.3.Rel1 (Build arm-13.24)
   
   Testing was done using a custom application, called from NSH, to write and 
erase flash blocks. Breakpoints where placed between each erase/write step, and 
the flash memory was inspected through the debugger to verify that the writes 
and erases occurred as expected. 
   
   On STM32G071RB, the last flash erase block was tested. On STM32G0B1RE, the 
entire bank2 was tested.
   
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to