Files
base/devices/E3106/linker/iar/ram_flashdebug.icf
2025-11-07 09:57:14 +08:00

52 lines
2.7 KiB
Plaintext

/*###ICF### Section handled by ICF editor, don't touch! ****/
/*-Editor annotation file-*/
/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\a_v1_0.xml" */
/*-Specials-*/
define symbol __ICFEDIT_intvec_start__ = 0x00504000;
/*-Memory Regions-*/
define symbol __ICFEDIT_region_RAM_start__ = 0x00504000;
define symbol __ICFEDIT_region_RAM_end__ = 0x0057FFFF;
define symbol __ICFEDIT_region_TCM_start__ = 0x00000040;
define symbol __ICFEDIT_region_TCM_end__ = 0x0001FFFF;
define symbol __ICFEDIT_region_RAMECC_start__ = 0x004E0000;
define symbol __ICFEDIT_region_RAMECC_end__ = 0x004FFFFF;
define symbol __ICFEDIT_region_SFS_start__ = 0x10000000;
/*-Sizes-*/
define symbol __ICFEDIT_size_cstack__ = 0x1000;
define symbol __ICFEDIT_size_svcstack__ = 0x1000;
define symbol __ICFEDIT_size_irqstack__ = 0x80;
define symbol __ICFEDIT_size_fiqstack__ = 0x1000;
define symbol __ICFEDIT_size_undstack__ = 0x80;
define symbol __ICFEDIT_size_abtstack__ = 0x80;
/**** End of ICF editor section. ###ICF###*/
define memory mem with size = 4G;
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
define region TCM_region = mem:[from __ICFEDIT_region_TCM_start__ to __ICFEDIT_region_TCM_end__];
define region RAMECC_region = mem:[from __ICFEDIT_region_RAMECC_start__ to __ICFEDIT_region_RAMECC_end__];
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
define block SVC_STACK with alignment = 8, size = __ICFEDIT_size_svcstack__ { };
define block IRQ_STACK with alignment = 8, size = __ICFEDIT_size_irqstack__ { };
define block FIQ_STACK with alignment = 8, size = __ICFEDIT_size_fiqstack__ { };
define block UND_STACK with alignment = 8, size = __ICFEDIT_size_undstack__ { };
define block ABT_STACK with alignment = 8, size = __ICFEDIT_size_abtstack__ { };
define block HEAP with alignment = 8, expanding size { section .heap };
define block COMMANDS { section .commands };
define block TCMCODE with alignment = 4 { section .tcmcode};
define block TCMDATA with alignment = 4 { section .tcmdata};
define block NONEECCDATA with alignment = 4 { section .noneeccdata};
initialize by copy { section .tcmcode, section .tcmdata};
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
place in RAM_region { readonly };
place in RAM_region { readwrite,
block COMMANDS, block HEAP };
place in TCM_region { block CSTACK, block SVC_STACK, block IRQ_STACK, block FIQ_STACK,
block UND_STACK, block ABT_STACK, block TCMCODE, block TCMDATA};
place in RAMECC_region { block NONEECCDATA};
place at address mem:__ICFEDIT_region_SFS_start__ { section SFS_BIN };