diff options
| author | meng-plus <[email protected]> | 2023-06-06 12:02:54 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2023-06-06 00:02:54 -0400 |
| commit | dd4a068e765cd98bbda41985c9ecb1cd4db0e45b (patch) | |
| tree | 20cdc65073ee84e4639d8e65fa01e9935a21629b /bsp/lpc408x/drivers | |
| parent | ff8064c02edd5522ec56bfde275d7aeeaa2a9097 (diff) | |
[bsp][LPC4088] 增加IAR环境的支持 (#7611)
Diffstat (limited to 'bsp/lpc408x/drivers')
| -rw-r--r-- | bsp/lpc408x/drivers/linker_scripts/link.icf | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/bsp/lpc408x/drivers/linker_scripts/link.icf b/bsp/lpc408x/drivers/linker_scripts/link.icf new file mode 100644 index 0000000000..58b721f2f5 --- /dev/null +++ b/bsp/lpc408x/drivers/linker_scripts/link.icf @@ -0,0 +1,51 @@ +/*###ICF### Section handled by ICF editor, don't touch! ****/
+/*-Editor annotation file-*/
+/* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v1_0.xml" */
+/*-Specials-*/
+define symbol __ICFEDIT_intvec_start__ = 0x00000000;
+/*-Memory Regions-*/
+define symbol __ICFEDIT_region_ROM_start__ = 0x00000000;
+define symbol __ICFEDIT_region_ROM_end__ = 0x0007FFFF;
+define symbol __ICFEDIT_region_RAM_start__ = 0x10000000;
+define symbol __ICFEDIT_region_RAM_end__ = 0x1000FFDF;
+define symbol __ICFEDIT_region_SDRAM_start__ = 0xA0000000;
+define symbol __ICFEDIT_region_SDRAM_end__ = 0xA3FFFFFF;
+
+define symbol _AHB_RAM_start__ = 0x20000000;
+define symbol _AHB_RAM_end__ = 0x20007FFF;
+
+/*-Sizes-*/
+define symbol __ICFEDIT_size_cstack__ = 0x1C00;
+define symbol __ICFEDIT_size_heap__ = 0x000;
+/**** End of ICF editor section. ###ICF###*/
+
+define symbol __CRP_start__ = 0x000002FC;
+define symbol __CRP_end__ = 0x000002FF;
+
+define memory mem with size = 4G;
+define region ROM_region = mem:[from __ICFEDIT_region_ROM_start__ to __ICFEDIT_region_ROM_end__] - mem:[from __CRP_start__ to __CRP_end__];
+define region CRP_region = mem:[from __CRP_start__ to __CRP_end__];
+define region RAM_region = mem:[from __ICFEDIT_region_RAM_start__ to __ICFEDIT_region_RAM_end__];
+define region SDRAM_region = mem:[from __ICFEDIT_region_SDRAM_start__ to __ICFEDIT_region_SDRAM_end__];
+define region AHB_RAM_region = mem:[from _AHB_RAM_start__ to _AHB_RAM_end__];
+
+define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
+define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
+
+initialize by copy { readwrite };
+do not initialize { section .noinit };
+do not initialize { section USB_DMA_RAM };
+
+place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
+place in ROM_region { readonly };
+place in RAM_region { readwrite,
+ block CSTACK,
+ block HEAP};
+place in AHB_RAM_region
+ { readwrite data section AHB_RAM_MEMORY, section USB_DMA_RAM, section EMAC_DMA_RAM};
+
+place in SDRAM_region {section SDRAM,section EXFLASH_RAM};
+
+place in CRP_region { section .crp };
+
+define exported symbol SDRAM_BASE_ADDR = __ICFEDIT_region_SDRAM_start__;
\ No newline at end of file |
