stm32f407xG.icf 3.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. /*###ICF### Section handled by ICF editor, don't touch! ****/
  2. /*-Editor annotation file-*/
  3. /* IcfEditorFile="$TOOLKIT_DIR$\config\linker\ST\IcfEditor\stm32f40x_fsmc.xml" */
  4. /*-Specials-*/
  5. define symbol __ICFEDIT_intvec_start__ = 0x08000000;
  6. /*-Memory Regions-*/
  7. define symbol __ICFEDIT_region_FLASH_start__ = 0x08000000;
  8. define symbol __ICFEDIT_region_FLASH_end__ = 0x08003FFF;
  9. define symbol __ICFEDIT_region_FSMC11_start__ = 0x0;
  10. define symbol __ICFEDIT_region_FSMC11_end__ = 0x0;
  11. define symbol __ICFEDIT_region_FSMC12_start__ = 0x0;
  12. define symbol __ICFEDIT_region_FSMC12_end__ = 0x0;
  13. define symbol __ICFEDIT_region_FSMC13_start__ = 0x0;
  14. define symbol __ICFEDIT_region_FSMC13_end__ = 0x0;
  15. define symbol __ICFEDIT_region_FSMC14_start__ = 0x0;
  16. define symbol __ICFEDIT_region_FSMC14_end__ = 0x0;
  17. define symbol __ICFEDIT_region_NAND1_start__ = 0x0;
  18. define symbol __ICFEDIT_region_NAND1_end__ = 0x0;
  19. define symbol __ICFEDIT_region_NAND2_start__ = 0x0;
  20. define symbol __ICFEDIT_region_NAND2_end__ = 0x0;
  21. define symbol __ICFEDIT_region_PCARD_start__ = 0x0;
  22. define symbol __ICFEDIT_region_PCARD_end__ = 0x0;
  23. define symbol __ICFEDIT_region_CCRAM_start__ = 0x10000040;
  24. define symbol __ICFEDIT_region_CCRAM_end__ = 0x1000FFFF;
  25. define symbol __ICFEDIT_region_SRAM1_start__ = 0x20000000;
  26. define symbol __ICFEDIT_region_SRAM1_end__ = 0x2001BFFF;
  27. define symbol __ICFEDIT_region_SRAM2_start__ = 0x2001C000;
  28. define symbol __ICFEDIT_region_SRAM2_end__ = 0x2001FFFF;
  29. define symbol __ICFEDIT_region_BKPR_start__ = 0x40024000;
  30. define symbol __ICFEDIT_region_BKPR_end__ = 0x40024FFF;
  31. /*-Sizes-*/
  32. define symbol __ICFEDIT_size_cstack__ = 0x2000;
  33. define symbol __ICFEDIT_size_heap__ = 0x2000;
  34. /**** End of ICF editor section. ###ICF###*/
  35. define memory mem with size = 4G;
  36. define region FLASH_region = mem:[from __ICFEDIT_region_FLASH_start__ to __ICFEDIT_region_FLASH_end__ ];
  37. define region FSMC_region = mem:[from __ICFEDIT_region_FSMC11_start__ to __ICFEDIT_region_FSMC11_end__]
  38. | mem:[from __ICFEDIT_region_FSMC12_start__ to __ICFEDIT_region_FSMC12_end__]
  39. | mem:[from __ICFEDIT_region_FSMC13_start__ to __ICFEDIT_region_FSMC13_end__]
  40. | mem:[from __ICFEDIT_region_FSMC14_start__ to __ICFEDIT_region_FSMC14_end__];
  41. define region NAND_region = mem:[from __ICFEDIT_region_NAND1_start__ to __ICFEDIT_region_NAND1_end__ ]
  42. | mem:[from __ICFEDIT_region_NAND2_start__ to __ICFEDIT_region_NAND2_end__ ];
  43. define region PCARD_region = mem:[from __ICFEDIT_region_PCARD_start__ to __ICFEDIT_region_PCARD_end__ ];
  44. define region CCRAM_region = mem:[from __ICFEDIT_region_CCRAM_start__ to __ICFEDIT_region_CCRAM_end__ ];
  45. define region SRAM_region = mem:[from __ICFEDIT_region_SRAM1_start__ to __ICFEDIT_region_SRAM1_end__ ]
  46. | mem:[from __ICFEDIT_region_SRAM2_start__ to __ICFEDIT_region_SRAM2_end__ ];
  47. define region BKPR_region = mem:[from __ICFEDIT_region_BKPR_start__ to __ICFEDIT_region_BKPR_end__ ];
  48. define region noinit_region = mem:[from __ICFEDIT_region_CCRAM_start__ - 0x40 to __ICFEDIT_region_CCRAM_start__ - 0x01 ];
  49. define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
  50. define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
  51. initialize by copy { readwrite };
  52. //initialize by copy with packing = none { section __DLIB_PERTHREAD }; // Required in a multi-threaded application
  53. do not initialize { section .noinit };
  54. place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
  55. place in FLASH_region { readonly };
  56. place in PCARD_region { readonly section application_specific_ro };
  57. place in CCRAM_region { section .ccram };
  58. place in SRAM_region { readwrite, block CSTACK, block HEAP };
  59. place in BKPR_region { section .backup_sram };
  60. place in noinit_region { readwrite section .noinit };