diff options
Diffstat (limited to 'spec/build/bsps/arm/stm32h7/linkcmdssdram.yml')
-rw-r--r-- | spec/build/bsps/arm/stm32h7/linkcmdssdram.yml | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/spec/build/bsps/arm/stm32h7/linkcmdssdram.yml b/spec/build/bsps/arm/stm32h7/linkcmdssdram.yml new file mode 100644 index 0000000000..c017610cff --- /dev/null +++ b/spec/build/bsps/arm/stm32h7/linkcmdssdram.yml @@ -0,0 +1,49 @@ +build-type: script +do-build: | + bld.install_as("${BSP_LIBDIR}/linkcmds.sdram", "linkcmds.sdram") +do-configure: | + content = """INCLUDE linkcmds.memory + + REGION_ALIAS ("REGION_START", SDRAM_1); + REGION_ALIAS ("REGION_VECTOR", SDRAM_1); + REGION_ALIAS ("REGION_TEXT", SDRAM_1); + REGION_ALIAS ("REGION_TEXT_LOAD", SDRAM_1); + REGION_ALIAS ("REGION_RODATA", SDRAM_1); + REGION_ALIAS ("REGION_RODATA_LOAD", SDRAM_1); + REGION_ALIAS ("REGION_DATA", SDRAM_1); + REGION_ALIAS ("REGION_DATA_LOAD", SDRAM_1); + REGION_ALIAS ("REGION_FAST_TEXT", ITCM); + REGION_ALIAS ("REGION_FAST_TEXT_LOAD", SDRAM_1); + REGION_ALIAS ("REGION_FAST_DATA", DTCM); + REGION_ALIAS ("REGION_FAST_DATA_LOAD", SDRAM_1); + REGION_ALIAS ("REGION_BSS", SDRAM_1); + REGION_ALIAS ("REGION_WORK", SDRAM_1); + REGION_ALIAS ("REGION_STACK", SRAM_AXI); + REGION_ALIAS ("REGION_NOCACHE", SRAM_1); + REGION_ALIAS ("REGION_NOCACHE_LOAD", SDRAM_1); + + bsp_vector_table_in_start_section = 1; + """ + + if conf.env.STM32H7_ENABLE_MPU_ALIGNMENT: + content += """ + bsp_section_do_mpu_align = 1; + """ + + content += """ + INCLUDE linkcmds.armv7m + """ + f = conf.bldnode.make_node( + conf.env.VARIANT + "/linkcmds.sdram" + ) + f.parent.mkdir() + f.write(content) + conf.env.append_value("cfg_files", f.abspath()) +enabled-by: true +links: [] +prepare-build: null +prepare-configure: null +type: build +SPDX-License-Identifier: CC-BY-SA-4.0 OR BSD-2-Clause +copyrights: +- Copyright (C) 2020 embedded brains GmbH (http://www.embedded-brains.de) |