| 
71 | 71 | #define CCM_ADDR DT_REG_ADDR(DT_CHOSEN(zephyr_ccm))  | 
72 | 72 | #endif  | 
73 | 73 | 
 
  | 
 | 74 | +#if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_itcm), okay)  | 
 | 75 | +#define ITCM_SIZE DT_REG_SIZE(DT_CHOSEN(zephyr_itcm))  | 
 | 76 | +#define ITCM_ADDR DT_REG_ADDR(DT_CHOSEN(zephyr_itcm))  | 
 | 77 | +#endif  | 
 | 78 | + | 
74 | 79 | #if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_dtcm), okay)  | 
75 | 80 | #define DTCM_SIZE DT_REG_SIZE(DT_CHOSEN(zephyr_dtcm))  | 
76 | 81 | #define DTCM_ADDR DT_REG_ADDR(DT_CHOSEN(zephyr_dtcm))  | 
@@ -108,6 +113,9 @@ MEMORY  | 
108 | 113 | #if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_ccm), okay)  | 
109 | 114 |     CCM                   (rw) : ORIGIN = CCM_ADDR, LENGTH = CCM_SIZE  | 
110 | 115 | #endif  | 
 | 116 | +#if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_itcm), okay)  | 
 | 117 | +    ITCM                  (rw) : ORIGIN = ITCM_ADDR, LENGTH = ITCM_SIZE  | 
 | 118 | +#endif  | 
111 | 119 | #if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_dtcm), okay)  | 
112 | 120 |     DTCM                  (rw) : ORIGIN = DTCM_ADDR, LENGTH = DTCM_SIZE  | 
113 | 121 | #endif  | 
@@ -419,6 +427,23 @@ SECTIONS  | 
419 | 427 | 
 
  | 
420 | 428 |     GROUP_END(RAMABLE_REGION)  | 
421 | 429 | 
 
  | 
 | 430 | +#if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_itcm), okay)  | 
 | 431 | +GROUP_START(ITCM)  | 
 | 432 | + | 
 | 433 | +	SECTION_PROLOGUE(_ITCM_SECTION_NAME,,SUBALIGN(4))  | 
 | 434 | +	{  | 
 | 435 | +		__itcm_start = .;  | 
 | 436 | +		*(.itcm)  | 
 | 437 | +		*(".itcm.*")  | 
 | 438 | +		__itcm_end = .;  | 
 | 439 | +	} GROUP_LINK_IN(ITCM AT> ROMABLE_REGION)  | 
 | 440 | + | 
 | 441 | +	__itcm_size = __itcm_end - __itcm_start;  | 
 | 442 | +	__itcm_rom_start = LOADADDR(_ITCM_SECTION_NAME);  | 
 | 443 | + | 
 | 444 | +GROUP_END(ITCM)  | 
 | 445 | +#endif  | 
 | 446 | + | 
422 | 447 | #if DT_NODE_HAS_STATUS(DT_CHOSEN(zephyr_dtcm), okay)  | 
423 | 448 | GROUP_START(DTCM)  | 
424 | 449 | 
 
  | 
 | 
0 commit comments