[PATCH 16/47] bsp/tms570: Avoid vector overlay memory region
Sebastian Huber
sebastian.huber at embedded-brains.de
Thu Dec 21 14:37:49 UTC 2023
Reserve the space in a section. This makes it possible to use a common
memory region definition.
---
.../arm/tms570/start/linkcmds.tms570ls3137_hdk_intram | 11 ++++++++---
bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_sdram | 11 ++++++++---
.../start/linkcmds.tms570ls3137_hdk_with_loader | 11 ++++++++---
3 files changed, 24 insertions(+), 9 deletions(-)
diff --git a/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_intram b/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_intram
index c5f2d1cfaf..cf7dbb6521 100644
--- a/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_intram
+++ b/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_intram
@@ -1,8 +1,7 @@
MEMORY {
ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 3M
- RAM_INT_VEC : ORIGIN = 0x08000000, LENGTH = 256
- RAM_INT (AIWX) : ORIGIN = 0x08000100, LENGTH = 256k - 256
+ RAM_INT (AIWX) : ORIGIN = 0x08000100, LENGTH = 256k
RAM_EXT (AIW) : ORIGIN = 0x80000000, LENGTH = 8M
}
@@ -25,6 +24,12 @@ REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
bsp_vector_table_in_start_section = 1;
-bsp_int_vec_overlay_start = ORIGIN(RAM_INT_VEC);
+
+SECTIONS {
+ .int_vec_overlay : ALIGN_WITH_INPUT {
+ bsp_int_vec_overlay_start = .;
+ . += 256;
+ } > RAM_INT AT > RAM_INT
+}
INCLUDE linkcmds.armv4
diff --git a/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_sdram b/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_sdram
index fa8365bad1..d5cbd45a87 100644
--- a/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_sdram
+++ b/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_sdram
@@ -1,8 +1,7 @@
MEMORY {
ROM_INT (RX) : ORIGIN = 0x00000000, LENGTH = 3M
- RAM_INT_VEC : ORIGIN = 0x08000000, LENGTH = 256
- RAM_INT (AIWX) : ORIGIN = 0x08000100, LENGTH = 256k - 256
+ RAM_INT (AIWX) : ORIGIN = 0x08000100, LENGTH = 256k
RAM_EXT (AIWX) : ORIGIN = 0x80000000, LENGTH = 8M
}
@@ -25,6 +24,12 @@ REGION_ALIAS ("REGION_NOCACHE", RAM_EXT);
REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_EXT);
bsp_vector_table_in_start_section = 1;
-bsp_int_vec_overlay_start = ORIGIN(RAM_INT_VEC);
+
+SECTIONS {
+ .int_vec_overlay : ALIGN_WITH_INPUT {
+ bsp_int_vec_overlay_start = .;
+ . += 256;
+ } > RAM_INT AT > RAM_INT
+}
INCLUDE linkcmds.armv4
diff --git a/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_with_loader b/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_with_loader
index 86b602b1f1..6e633975fb 100644
--- a/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_with_loader
+++ b/bsps/arm/tms570/start/linkcmds.tms570ls3137_hdk_with_loader
@@ -2,8 +2,7 @@
MEMORY {
ROM_BOOT(RX) : ORIGIN = 0x00000000, LENGTH = 256k
ROM_INT (RX) : ORIGIN = 0x00040000, LENGTH = 3M-256k
- RAM_INT_VEC : ORIGIN = 0x08000000, LENGTH = 256
- RAM_INT (AIWX) : ORIGIN = 0x08000100, LENGTH = 256k - 256
+ RAM_INT (AIWX) : ORIGIN = 0x08000100, LENGTH = 256k
RAM_EXT (AIWX) : ORIGIN = 0x80000000, LENGTH = 8M
}
@@ -26,6 +25,12 @@ REGION_ALIAS ("REGION_NOCACHE", RAM_INT);
REGION_ALIAS ("REGION_NOCACHE_LOAD", RAM_INT);
bsp_vector_table_in_start_section = 1;
-bsp_int_vec_overlay_start = ORIGIN(RAM_INT_VEC);
+
+SECTIONS {
+ .int_vec_overlay : ALIGN_WITH_INPUT {
+ bsp_int_vec_overlay_start = .;
+ . += 256;
+ } > RAM_INT AT > RAM_INT
+}
INCLUDE linkcmds.armv4
--
2.35.3
More information about the devel
mailing list