Skip to content

[stm32f3] Implement initial support for stm32f3#35

Merged
AlexLanzano merged 1 commit intowolfSSL:mainfrom
AlexLanzano:stm32f3
Apr 22, 2026
Merged

[stm32f3] Implement initial support for stm32f3#35
AlexLanzano merged 1 commit intowolfSSL:mainfrom
AlexLanzano:stm32f3

Conversation

@AlexLanzano
Copy link
Copy Markdown
Member

No description provided.

@AlexLanzano AlexLanzano self-assigned this Apr 22, 2026
Copilot AI review requested due to automatic review settings April 22, 2026 19:29
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds initial STM32F3 platform enablement by introducing STM32F3 driver aliases (mostly reusing STM32F0/STM32WB implementations), a new STM32F3 RCC driver, and a NUCLEO-F302R8 board target wired into CI.

Changes:

  • Added STM32F3 “alias” headers and shim source files for GPIO/UART/SPI/I2C/Flash/IWDG/WWDG.
  • Implemented an initial STM32F3 RCC driver and a STM32F302R8 convenience platform header.
  • Added a new stm32f302r8_nucleo board (linker script, IVT/startup, board init, Makefile) and included it in boards CI.

Reviewed changes

Copilot reviewed 28 out of 28 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
wolfHAL/watchdog/stm32f3_wwdg.h STM32F3 WWDG alias to STM32F0 WWDG symbols/types.
wolfHAL/watchdog/stm32f3_iwdg.h STM32F3 IWDG alias to STM32F0/WB IWDG symbols/types.
wolfHAL/uart/stm32f3_uart.h STM32F3 UART alias to STM32F0 UART symbols/types.
wolfHAL/spi/stm32f3_spi.h STM32F3 SPI alias to STM32F0/WB SPI symbols/types.
wolfHAL/i2c/stm32f3_i2c.h STM32F3 I2C alias to STM32F0/WB I2C symbols/types.
wolfHAL/gpio/stm32f3_gpio.h STM32F3 GPIO alias to STM32F0/WB GPIO symbols/types and constants.
wolfHAL/flash/stm32f3_flash.h STM32F3 Flash alias to STM32F0 flash plus latency helpers.
wolfHAL/clock/stm32f3_rcc.h Public STM32F3 RCC configuration types and API.
wolfHAL/platform/st/stm32f302r8.h STM32F302R8 register-map + clock-gate convenience macros.
tests/gpio/test_stm32f3_gpio.c Reuses STM32F0/WB GPIO tests for STM32F3.
src/watchdog/stm32f3_wwdg.c STM32F3 WWDG build shim including STM32F0 implementation with mapping translation.
src/watchdog/stm32f3_iwdg.c STM32F3 IWDG build shim including STM32F0/WB implementation with mapping translation.
src/uart/stm32f3_uart.c STM32F3 UART build shim including STM32F0 implementation with mapping translation.
src/spi/stm32f3_spi.c STM32F3 SPI build shim including STM32F0/WB implementation.
src/i2c/stm32f3_i2c.c STM32F3 I2C build shim including STM32F0/WB implementation.
src/gpio/stm32f3_gpio.c STM32F3 GPIO build shim including STM32F0/WB implementation.
src/flash/stm32f3_flash.c STM32F3 Flash build shim including STM32F0 implementation with mapping translation.
src/clock/stm32f3_rcc.c New STM32F3 RCC implementation (SYSCLK + PLL + gating + I2C1 clock src).
src/spi/stm32wb_spi.c Extends direct API mapping conditions to recognize STM32F3 for shared SPI impl.
src/i2c/stm32wb_i2c.c Extends direct API mapping conditions to recognize STM32F3 for shared I2C impl.
src/gpio/stm32wb_gpio.c Extends direct API mapping conditions to recognize STM32F3 for shared GPIO impl.
boards/stm32f302r8_nucleo/linker.ld Linker script for STM32F302R8 memory layout.
boards/stm32f302r8_nucleo/ivt.c Startup/IVT for STM32F302R8 Nucleo target.
boards/stm32f302r8_nucleo/board.h Board-level device declarations and pin/flash constants.
boards/stm32f302r8_nucleo/board.c Board bring-up wiring for clock/gpio/timer/uart/spi/i2c/flash/watchdog.
boards/stm32f302r8_nucleo/Makefile.inc Build target integration for the STM32F302R8 Nucleo board.
boards/README.md Documents the new board in the supported boards list.
.github/workflows/boards.yml Adds stm32f302r8_nucleo to the CI board matrix.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread boards/stm32f302r8_nucleo/board.h Outdated
Comment thread boards/stm32f302r8_nucleo/board.c
@AlexLanzano AlexLanzano merged commit a0694ae into wolfSSL:main Apr 22, 2026
25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants