Skip to content

Commit 7b2a388

Browse files
Jordan Yatescarlescufi
authored andcommitted
linker: remove manual name specification
As memory region names are now derived purely from devicetree, remove the `name` parameter from `DT_REGION_FROM_NODE_STATUS_OKAY`. Name is `zephyr,linker-region` if it exists, otherwise the node path. Signed-off-by: Jordan Yates <[email protected]>
1 parent 749b112 commit 7b2a388

File tree

5 files changed

+35
-31
lines changed

5 files changed

+35
-31
lines changed

include/arch/arm/aarch32/cortex_a_r/scripts/linker.ld

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ MEMORY
8181
{
8282
FLASH (rx) : ORIGIN = ROM_ADDR, LENGTH = ROM_SIZE
8383
SRAM (wx) : ORIGIN = RAM_ADDR, LENGTH = RAM_SIZE
84-
LINKER_DT_REGION_FROM_NODE(OCM, rw, DT_CHOSEN(zephyr_ocm))
84+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_ocm), rw)
8585
/* Used by and documented in include/linker/intlist.ld */
8686
IDT_LIST (wx) : ORIGIN = 0xFFFFF7FF, LENGTH = 2K
8787
}

include/arch/arm/aarch32/cortex_m/scripts/linker.ld

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -82,21 +82,21 @@ MEMORY
8282
FLASH (rx) : ORIGIN = ROM_ADDR, LENGTH = ROM_SIZE
8383
SRAM (wx) : ORIGIN = RAM_ADDR, LENGTH = RAM_SIZE
8484
/* TI CCFG Registers */
85-
LINKER_DT_REGION_FROM_NODE(FLASH_CCFG, rwx, DT_NODELABEL(ti_ccfg_partition))
85+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(ti_ccfg_partition), rwx)
8686
/* Data & Instruction Tightly Coupled Memory */
87-
LINKER_DT_REGION_FROM_NODE(ITCM, rw, DT_CHOSEN(zephyr_itcm))
88-
LINKER_DT_REGION_FROM_NODE(DTCM, rw, DT_CHOSEN(zephyr_dtcm))
87+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_itcm), rw)
88+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_dtcm), rw)
8989
/* STM32 Core Coupled Memory */
90-
LINKER_DT_REGION_FROM_NODE(CCM, rw, DT_CHOSEN(zephyr_ccm))
90+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_ccm), rw)
9191
/* STM32WB IPC RAM */
92-
LINKER_DT_REGION_FROM_NODE(SRAM1, rw, DT_NODELABEL(sram1))
93-
LINKER_DT_REGION_FROM_NODE(SRAM2, rw, DT_NODELABEL(sram2))
92+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(sram1), rw)
93+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(sram2), rw)
9494
/* STM32 alternate RAM configurations */
95-
LINKER_DT_REGION_FROM_NODE(SRAM3, rw, DT_NODELABEL(sram3))
96-
LINKER_DT_REGION_FROM_NODE(SRAM4, rw, DT_NODELABEL(sram4))
97-
LINKER_DT_REGION_FROM_NODE(SDRAM1, rw, DT_NODELABEL(sdram1))
98-
LINKER_DT_REGION_FROM_NODE(SDRAM2, rw, DT_NODELABEL(sdram2))
99-
LINKER_DT_REGION_FROM_NODE(BACKUP_SRAM, rw, DT_NODELABEL(backup_sram))
95+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(sram3), rw)
96+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(sram4), rw)
97+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(sdram1), rw)
98+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(sdram2), rw)
99+
LINKER_DT_REGION_FROM_NODE(DT_NODELABEL(backup_sram), rw)
100100
/* Used by and documented in include/linker/intlist.ld */
101101
IDT_LIST (wx) : ORIGIN = 0xFFFFF7FF, LENGTH = 2K
102102
}

include/arch/riscv/common/linker.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ MEMORY
8282
RAM (rwx) : ORIGIN = RAM_BASE, LENGTH = RAM_SIZE
8383

8484
/* Data & Instruction Tightly Coupled Memory */
85-
LINKER_DT_REGION_FROM_NODE(ITCM, rw, DT_CHOSEN(zephyr_itcm))
86-
LINKER_DT_REGION_FROM_NODE(DTCM, rw, DT_CHOSEN(zephyr_dtcm))
85+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_itcm), rw)
86+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_dtcm), rw)
8787

8888
/* Used by and documented in include/linker/intlist.ld */
8989
IDT_LIST (wx) : ORIGIN = 0xFFFFF7FF, LENGTH = 2K

include/linker/devicetree_regions.h

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -35,25 +35,29 @@
3535
#define LINKER_DT_NODE_REGION_NAME(node_id) \
3636
DT_PROP_OR(node_id, zephyr_memory_region, DT_NODE_PATH(node_id))
3737

38-
/* Declare a memory region */
39-
#define _REGION_DECLARE(name, attr, node) name(attr) : \
40-
ORIGIN = DT_REG_ADDR(node), \
41-
LENGTH = DT_REG_SIZE(node)
38+
/** @cond INTERNAL_HIDDEN */
4239

4340
/**
44-
* @brief Generate a linker memory region from a devicetree node
45-
*
46-
* If @p node_id refers to a node with status "okay", then this declares
47-
* a linker memory region named @p name with attributes from @p attr.
41+
* @brief Declare a memory region
4842
*
49-
* Otherwise, it doesn't expand to anything.
43+
* @param node_id devicetree node identifier
44+
* @param attr region attributes
45+
*/
46+
#define _REGION_DECLARE(node_id, attr) \
47+
LINKER_DT_NODE_REGION_NAME(node_id)(attr) : \
48+
ORIGIN = DT_REG_ADDR(node_id), \
49+
LENGTH = DT_REG_SIZE(node_id)
50+
51+
/** @endcond */
52+
53+
/**
54+
* @brief Generate a linker memory region from a devicetree node
5055
*
51-
* @param name name of the generated memory region
56+
* @param node_id devicetree node identifier with a \<reg\> property defining
57+
* region location and size
5258
* @param attr region attributes to use (rx, rw, ...)
53-
* @param node_id devicetree node identifier with a \<reg\> property
54-
* defining region location and size.
5559
*/
56-
#define LINKER_DT_REGION_FROM_NODE(name, attr, node_id) \
57-
COND_CODE_1(DT_NODE_HAS_STATUS(node_id, okay), \
58-
(_REGION_DECLARE(name, attr, node_id)), \
60+
#define LINKER_DT_REGION_FROM_NODE(node_id, attr) \
61+
COND_CODE_1(DT_NODE_HAS_STATUS(node_id, okay), \
62+
(_REGION_DECLARE(node_id, attr)), \
5963
())

soc/riscv/riscv-privilege/andes_v5/ae350/linker.ld

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,8 +88,8 @@ MEMORY
8888
RAM (rwx) : ORIGIN = RAM_BASE, LENGTH = RAM_SIZE
8989

9090
/* Data & Instruction Tightly Coupled Memory */
91-
LINKER_DT_REGION_FROM_NODE(ITCM, rw, DT_CHOSEN(zephyr_itcm))
92-
LINKER_DT_REGION_FROM_NODE(DTCM, rw, DT_CHOSEN(zephyr_dtcm))
91+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_itcm), rw)
92+
LINKER_DT_REGION_FROM_NODE(DT_CHOSEN(zephyr_dtcm), rw)
9393

9494
/* Used by and documented in include/linker/intlist.ld */
9595
IDT_LIST (wx) : ORIGIN = 0xFFFFF7FF, LENGTH = 2K

0 commit comments

Comments
 (0)