wolfBoot/hal
Patrik Dahlström 523051331e Add STM32F103 (Blue Pill) support
The Blue Pill board is typically fitted with a STM32F103C8T6, but
reports online seem to indicate that it sometimes can come with its
bigger sibling the STM32F103C8TB as is the case with my board.

This patch adds support for all low- to medium-density STM32F103
devices. All of these devices have their flash divided in 1 KB pages, up
to 128 KB. The high-density and connectivity line of devices, sometimes
called XL devices, use 2 KB pages and are not supported.

Similar to the STM32F4 support, the code will spin up the PLL for
maximum speed during init and turn it off just before booting the
application. the maxium speed is 72 MHz.

Signed-off-by: Patrik Dahlström <risca@dalakolonin.se>
2025-02-21 18:41:04 +01:00
..
spi Fix for building NXP LS1028A with SPI enabled. 2024-12-02 19:41:26 +01:00
uart Refactor to eliminate PLATFORM_ -> TARGET_. Fix CI errors. 2024-08-14 18:06:12 +02:00
armv8m_tz.h rp2350: custom ldscript + TZEN work in progress 2025-01-24 13:06:38 +01:00
aurix_tc3xx.c - support for wolfHSM ML-DSA on simulator and AURIX (DMA only) 2024-12-16 19:12:23 +01:00
cc26x2.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
cc26x2.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
hal.c Consolidate duplicate TEST_FLASH code. 2024-10-11 10:29:59 +02:00
hifive1.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
hifive1.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
imx_rt.c Remove unused variables in imx_rt.c 2025-01-16 07:07:58 +01:00
imx_rt.ld Added custom DCD for i.mx-RT10XX 2023-11-16 09:56:44 +01:00
imx_rt_hab.ld Add support for building for HAB for i.MX RT targets 2024-07-22 08:14:33 +02:00
kinetis.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
kinetis.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
kontron_vx3060_s2.c fsp: move TempRamInitExit and later APIs in stage2 2024-12-19 20:12:16 +01:00
kontron_vx3060_s2_loader.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
library.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
lpc.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
lpc.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
mcxa.c Added build test. Updated mcxa + mcxw to mcux-sdk 2025-02-18 14:43:37 +01:00
mcxa.ld Added support for NXP MCXA153 2024-03-29 10:25:08 +01:00
mcxw.c Fixes to hal after review 2025-02-20 16:18:40 +01:00
mcxw.ld Draft support for MCX W71 2025-02-18 14:42:39 +01:00
nrf52.c Support for the Nordic nRF5340 (application and network cores): 2024-10-11 10:29:59 +02:00
nrf52.h Support for the Nordic nRF5340 (application and network cores): 2024-10-11 10:29:59 +02:00
nrf52.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
nrf5340.c Support for SPU to write protect bootloader flash region on application startup. 2024-10-11 10:29:59 +02:00
nrf5340.h Support for SPU to write protect bootloader flash region on application startup. 2024-10-11 10:29:59 +02:00
nrf5340.ld Enable ECC384 and SHA384. Fix sleep_us. Add Cortex-M hard-fault handler support. 2024-10-11 10:29:59 +02:00
nrf5340_net.c Support for the Nordic nRF5340 (application and network cores): 2024-10-11 10:29:59 +02:00
nrf5340_net.ld Enable ECC384 and SHA384. Fix sleep_us. Add Cortex-M hard-fault handler support. 2024-10-11 10:29:59 +02:00
nxp_ls1028a-ocram.ld Fix build for ZCU102. Fix ARM ASM defaults. 2024-12-02 19:41:26 +01:00
nxp_ls1028a.c Fix for building NXP LS1028A with SPI enabled. 2024-12-02 19:41:26 +01:00
nxp_ls1028a.h Fixes for Xilinx Zynq UltraScale+ MPSoC: 2024-12-30 15:36:43 +01:00
nxp_ls1028a.ld Fixes for Xilinx Zynq UltraScale+ MPSoC: 2024-12-30 15:36:43 +01:00
nxp_p1021.c Consolidate duplicate TEST_FLASH code. 2024-10-11 10:29:59 +02:00
nxp_p1021.ld Fix build for ZCU102. Fix ARM ASM defaults. 2024-12-02 19:41:26 +01:00
nxp_p1021_stage1.bin Fixes and improvements for NXP QorIQ: 2023-08-04 16:31:09 +02:00
nxp_p1021_stage1.ld Added flag WOLFSSL_PKCS11_RW_TOKENS 2023-09-21 08:31:30 +02:00
nxp_ppc.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
nxp_ppc.h Refactor to eliminate PLATFORM_ -> TARGET_. Fix CI errors. 2024-08-14 18:06:12 +02:00
nxp_t1024.c Consolidate duplicate TEST_FLASH code. 2024-10-11 10:29:59 +02:00
nxp_t1024.ld Fixes for NXP T1024 and booting Integrity OS: 2024-01-17 14:16:15 +01:00
nxp_t1024_stage1.ld Refactor DDR law setup for use with stage 2 as stack. 2023-10-06 15:28:16 +02:00
nxp_t2080.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
nxp_t2080.ld Fixes for NXP T1024 and booting Integrity OS: 2024-01-17 14:16:15 +01:00
psoc6.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
psoc6.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
raspi3.c Cleanups after hybrid signing PR. 2024-10-31 11:23:52 +01:00
raspi3.ld add raspi3b uart 2024-09-02 14:02:36 +02:00
renesas-ra.c * Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler. 2024-07-17 06:08:31 +02:00
renesas-rx.c Consolidate duplicate TEST_FLASH code. 2024-10-11 10:29:59 +02:00
renesas-rx.h Fix to make sure wolfBoot leaves IRQ's disabled. The TSIP driver will leave IRQ's on which could cause customer issues. Added new `spi_flash_chip_erase` API for the SPI flash driver. 2024-07-23 18:37:06 +02:00
renesas-rz.c Merge pull request #444 from miyazakh/renesas_rz_rsip 2024-05-10 11:52:12 -07:00
rp2350-app.ld Cleanup initialization code for rp2350. 2025-01-27 12:36:19 +01:00
rp2350.c rp2350: Added flash driver 2025-01-27 17:33:45 +01:00
rp2350.ld Cleanup initialization code for rp2350. 2025-01-27 12:36:19 +01:00
rx65n.c * Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler. 2024-07-17 06:08:31 +02:00
rx65n.ld * Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler. 2024-07-17 06:08:31 +02:00
rx72n.c * Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler. 2024-07-17 06:08:31 +02:00
rx72n.ld * Added support for RX65N and RX72N with native Makefile and RX ELF GCC compiler. 2024-07-17 06:08:31 +02:00
sama5d3.c Fix potential integer overflow in shifts (cppcheck) 2024-10-14 10:14:48 +02:00
sama5d3.h SAMA5D3: Hal fixes, add DBGU, enable ARM_ASM 2024-10-14 10:14:48 +02:00
sama5d3.ld ARMASM. Macros for clocks+gpios. Set MAC pins. 2024-10-14 10:14:48 +02:00
same51.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
same51.ld Added support for Microchip SAM E51 2024-02-15 17:30:11 +01:00
samr21.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
samr21.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
sim.c update tests to properly simulate flash locks 2024-12-17 14:46:24 +01:00
sim.ld NXP QorIQ refactor for shared PPC (e500 / e6500) registers 2023-04-21 16:41:00 +02:00
skeleton.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32_tz.c rp2350: custom ldscript + TZEN work in progress 2025-01-24 13:06:38 +01:00
stm32c0.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32c0.ld Peer review cleanups and added CI test. 2023-10-13 14:34:01 +02:00
stm32f1.c Add STM32F103 (Blue Pill) support 2025-02-21 18:41:04 +01:00
stm32f1.ld Add STM32F103 (Blue Pill) support 2025-02-21 18:41:04 +01:00
stm32f4.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32f4.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
stm32f7.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32f7.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
stm32g0.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32g0.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
stm32h5-ns.ld STM32H5: added support for TrustZone 2024-05-09 16:33:40 +02:00
stm32h5.c Removed debug print, added PKCS11_SMALL, fixes 2024-07-09 10:22:43 -07:00
stm32h5.h Don't hide the bank swap registers behind `DUALBANK_SWAP`. 2024-07-09 10:22:43 -07:00
stm32h5.ld STM32H5: added support for TrustZone 2024-05-09 16:33:40 +02:00
stm32h7.c otp_keystore_primer: fixed provisioning + readonly 2024-05-20 10:58:43 +02:00
stm32h7.h Added instructions for STM32H5 demo to `docs/flash-OTP.md`. 2024-07-09 10:27:52 -07:00
stm32h7.ld Improvements and fixes for CMake 2022-12-15 00:56:57 -07:00
stm32l0.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32l0.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
stm32l0_chacha_ram.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
stm32l4.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32l4.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
stm32l4xx_hal_conf.h Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32l5-ns.ld Fixed merge of user_settings with new TPM logic 2023-09-21 08:31:28 +02:00
stm32l5.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32l5.h Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32l5.ld Fixed PKCS11 store functions. 2023-09-21 08:28:23 +02:00
stm32u5-ns.ld STM32H5: added support for TrustZone 2024-05-09 16:33:40 +02:00
stm32u5.c STM32U5: Only try and invalidate cache if enabled. 2024-06-25 21:57:54 +02:00
stm32u5.h STM32U5 cache support. Including cache invalidate on `nvm_select_fresh_sector`. ZD 18210 2024-06-25 18:12:47 +02:00
stm32u5.ld STM32H5: added support for TrustZone 2024-05-09 16:33:40 +02:00
stm32u5_partition.h Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32wb.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
stm32wb.ld Fixes for stm32wb test 2022-12-16 17:49:46 +01:00
stm32wbxx_hal_conf.h Added missing file for stm32wb55 hal configuration 2019-11-13 09:17:32 +01:00
ti_hercules.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
ti_hercules.ld wolfBoot cmake support 2022-12-07 13:00:10 -08:00
x86_64_efi.c Refactor to eliminate PLATFORM_ -> TARGET_. Fix CI errors. 2024-08-14 18:06:12 +02:00
x86_64_efi.ld support booting EFI application on x86_64 architecture 2021-11-30 18:43:50 +01:00
x86_fsp_qemu.c fsp: move TempRamInitExit and later APIs in stage2 2024-12-19 20:12:16 +01:00
x86_fsp_qemu.ld.in fsp: move TempRamInitExit and later APIs in stage2 2024-12-19 20:12:16 +01:00
x86_fsp_qemu_loader.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
x86_fsp_qemu_stage1.ld.in fsp: move TempRamInitExit and later APIs in stage2 2024-12-19 20:12:16 +01:00
x86_fsp_tgl.c Update license GPL2 -> GPL3 2024-04-16 16:46:15 +02:00
x86_fsp_tgl.ld.in fsp: move TempRamInitExit and later APIs in stage2 2024-12-19 20:12:16 +01:00
x86_fsp_tgl_stage1.ld.in fsp: move TempRamInitExit and later APIs in stage2 2024-12-19 20:12:16 +01:00
x86_uart.c x86: misc fixes 2024-06-19 09:47:06 +02:00
zynq.c Allow build-time adjustment of QSPI reference clock and divisor. Eliminate `ZCU102` macro (not needed). Add QSPI init message with ref clock, divisor, bus and IO mode (Poll or DMA). 2024-12-30 15:36:43 +01:00
zynq.h Avoid redefinition when using USE_BUILTIN_STARTUP. 2025-01-20 16:39:18 +01:00
zynq.ld Fixes for Xilinx Zynq UltraScale+ MPSoC: 2024-12-30 15:36:43 +01:00