@@ -92,11 +92,33 @@ MEMORY
9292 LINKER_DT_REGION_FROM_NODE (SRAM1, rw, DT_NODELABEL (sram1))
9393 LINKER_DT_REGION_FROM_NODE (SRAM2, rw, DT_NODELABEL (sram2))
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+
96+ #if DT_NODE_HAS_STATUS(DT_ALIAS(sramnocache), okay)
97+ DT_REGION_FROM_NODE_STATUS_OKAY (sramnocache, rw, DT_ALIAS (sramnocache))
98+
99+ #if !DT_SAME_NODE(DT_ALIAS(sramnocache), DT_NODELABEL(sram3))
100+ DT_REGION_FROM_NODE_STATUS_OKAY (SRAM3, rw, DT_NODELABEL (sram3))
101+ #endif
102+ #if !DT_SAME_NODE(DT_ALIAS(sramnocache), DT_NODELABEL(sram4))
103+ DT_REGION_FROM_NODE_STATUS_OKAY (SRAM4, rw, DT_NODELABEL (sram4))
104+ #endif
105+ #if !DT_SAME_NODE(DT_ALIAS(sramnocache), DT_NODELABEL(sdram1))
106+ DT_REGION_FROM_NODE_STATUS_OKAY (SDRAM1, rw, DT_NODELABEL (sdram1))
107+ #endif
108+ #if !DT_SAME_NODE(DT_ALIAS(sramnocache), DT_NODELABEL(sdram2))
109+ DT_REGION_FROM_NODE_STATUS_OKAY (SDRAM2, rw, DT_NODELABEL (sdram2))
110+ #endif
111+ #if !DT_SAME_NODE(DT_ALIAS(sramnocache), DT_NODELABEL(backup_sram))
112+ DT_REGION_FROM_NODE_STATUS_OKAY (BACKUP_SRAM, rw, DT_NODELABEL (backup_sram))
113+ #endif
114+
115+ #else
116+ DT_REGION_FROM_NODE_STATUS_OKAY (SRAM3, rw, DT_NODELABEL (sram3))
117+ DT_REGION_FROM_NODE_STATUS_OKAY (SRAM4, rw, DT_NODELABEL (sram4))
118+ DT_REGION_FROM_NODE_STATUS_OKAY (SDRAM1, rw, DT_NODELABEL (sdram1))
119+ DT_REGION_FROM_NODE_STATUS_OKAY (SDRAM2, rw, DT_NODELABEL (sdram2))
120+ DT_REGION_FROM_NODE_STATUS_OKAY (BACKUP_SRAM, rw, DT_NODELABEL (backup_sram))
121+ #endif
100122 /* Used by and documented in include/linker/intlist.ld */
101123 IDT_LIST (wx) : ORIGIN = 0xFFFFF7FF , LENGTH = 2K
102124 }
0 commit comments