Files
bootloader/targets/common/linker/iar/MK66F18/K66FN2Mxxx18_flashloader_loader.icf
2016-08-10 01:45:15 +02:00

46 lines
2.2 KiB
Plaintext

/*###ICF### Section handled by ICF editor, don't touch! ****/
/*-Editor annotation file-*/
/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
/*-Memory Regions-*/
define symbol __ICFEDIT_region_FLASH_start__ = 0x0;
define symbol __ICFEDIT_region_FLASH_end__ = __ICFEDIT_region_FLASH_start__ + (2048*1024) - 1;
define symbol __ICFEDIT_region_RAM_end__ = 0x20000000;
define symbol __ICFEDIT_region_RAM_start__ = __ICFEDIT_region_RAM_end__ - (64*1024);
/*-Specials-*/
define symbol __ICFEDIT_intvec_start__ = __ICFEDIT_region_FLASH_start__;
/*-Sizes-*/
define symbol __ICFEDIT_size_cstack__ = (512);
define symbol __ICFEDIT_size_heap__ = (0*1024);
/**** End of ICF editor section. ###ICF###*/
define symbol __region_RAM2_start__ = 0x20000000;
define symbol __region_RAM2_end__ = __region_RAM2_start__ + ((192*1024)) - 1;
define exported symbol __VECTOR_TABLE = 0x00000000;
define exported symbol __VECTOR_RAM = __ICFEDIT_region_RAM_start__;
define exported symbol __BOOT_STACK_ADDRESS = __region_RAM2_end__ - 8;
define memory mem with size = 4G;
define region FLASH_region = mem:[from __ICFEDIT_region_FLASH_start__ to __ICFEDIT_region_FLASH_end__];
define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__] | mem:[from __region_RAM2_start__ to __region_RAM2_end__];
define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
initialize manually { readwrite };
initialize manually { section .data};
initialize manually { section .textrw };
do not initialize { section .noinit };
define block USBGlobal {section m_usb_bdt, section m_usb_global};
define block CodeRelocate { section .textrw_init };
define block CodeRelocateRam { section .textrw };
define block ApplicationFlash { readonly, block CodeRelocate };
define block ApplicationRam { readwrite, block CodeRelocateRam, block USBGlobal, block CSTACK, block HEAP };
place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec, readonly section .noinit };
place in FLASH_region { block ApplicationFlash };
place at end of RAM_region { block ApplicationRam };