stm32f4: add stm32f446ze variant and variant specific linker selection

Adds an STM32F4 BSP variant with a variant linker script.
This commit is contained in:
Santosh Bala
2026-01-10 10:37:32 +05:30
committed by Gedare Bloom
parent c893731d11
commit c014ab9b2d
6 changed files with 77 additions and 2 deletions

View File

@@ -0,0 +1,24 @@
MEMORY {
RAM_INT : ORIGIN = 0x20000000, LENGTH = 128k
ROM_INT : ORIGIN = 0x08000000, LENGTH = 512K
}
REGION_ALIAS ("REGION_START", ROM_INT);
REGION_ALIAS ("REGION_VECTOR", RAM_INT);
REGION_ALIAS ("REGION_TEXT", ROM_INT);
REGION_ALIAS ("REGION_TEXT_LOAD", ROM_INT);
REGION_ALIAS ("REGION_RODATA", ROM_INT);
REGION_ALIAS ("REGION_RODATA_LOAD", ROM_INT);
REGION_ALIAS ("REGION_DATA", RAM_INT);
REGION_ALIAS ("REGION_DATA_LOAD", ROM_INT);
REGION_ALIAS ("REGION_FAST_TEXT", RAM_INT);
REGION_ALIAS ("REGION_FAST_TEXT_LOAD", ROM_INT);
REGION_ALIAS ("REGION_FAST_DATA", RAM_INT);
REGION_ALIAS ("REGION_FAST_DATA_LOAD", ROM_INT);
REGION_ALIAS ("REGION_BSS", RAM_INT);
REGION_ALIAS ("REGION_WORK", RAM_INT);
REGION_ALIAS ("REGION_STACK", RAM_INT);
REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
INCLUDE linkcmds.armv7m

View File

@@ -0,0 +1,19 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
arch: arm
bsp: stm32f446ze
build-type: bsp
cflags: []
cppflags: []
enabled-by: true
family: stm32f4
includes: []
install: []
links:
- role: build-dependency
uid: ../../opto2
- role: build-dependency
uid: ../../tstsmallmem
- role: build-dependency
uid: grp
source: []
type: build

View File

@@ -51,9 +51,11 @@ links:
- role: build-dependency
uid: optusartbaud
- role: build-dependency
uid: ../../optconsoleirq
uid: optlinkcmds
- role: build-dependency
uid: ../../linkcmds
uid: linkcmds
- role: build-dependency
uid: ../../optconsoleirq
- role: build-dependency
uid: ../../obj
- role: build-dependency

View File

@@ -0,0 +1,9 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
build-type: config-file
content: |
INCLUDE ${STM32F4_LINKCMDS}
enabled-by: true
install-path: ${BSP_LIBDIR}
links: []
target: linkcmds
type: build

View File

@@ -37,6 +37,8 @@ install:
source:
- bsps/arm/stm32f4/start/linkcmds.stm32f105rc
- bsps/arm/stm32f4/start/linkcmds.stm32f4
- bsps/arm/stm32f4/start/linkcmds.stm32f446ze
links: []
source:
- bsps/arm/shared/clock/clock-armv7m.c

View File

@@ -0,0 +1,19 @@
SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause
actions:
- get-string: null
- env-assign: null
build-type: option
default:
- enabled-by: arm/stm32f446ze
value: linkcmds.stm32f446ze
- enabled-by: arm/stm32f105rc
value: linkcmds.stm32f105rc
- enabled-by: true
value: linkcmds.stm32f4
description: |
The default linker command file based on the BSP variant.
enabled-by: true
format: '{}'
links: []
name: STM32F4_LINKCMDS
type: build