]> git.sur5r.net Git - freertos/blob - FreeRTOS/Demo/lwIP_MCF5235_GCC/m5235-rom.ld
Add FreeRTOS-Plus directory.
[freertos] / FreeRTOS / Demo / lwIP_MCF5235_GCC / m5235-rom.ld
1 STARTUP(system/crt0.o)\r
2 INPUT(system/vector.o)\r
3 OUTPUT_ARCH(m68k)\r
4 SEARCH_DIR(.)\r
5 GROUP(-lc -lgcc)\r
6 \r
7 __DYNAMIC  =  0;\r
8 \r
9 MEMORY\r
10 {\r
11   flash  (rwx) : ORIGIN = 0x00000000, LENGTH = 0x00200000\r
12   sdram  (rwx) : ORIGIN = 0x01000000, LENGTH = 0x01000000\r
13   sram   (rwx) : ORIGIN = 0x20000000, LENGTH = 0x00010000\r
14   ipsbar (rwx) : ORIGIN = 0x40000000, LENGTH = 0x40000000\r
15 }\r
16 \r
17 PROVIDE (__stack = 0x2000FFFC);\r
18 \r
19 SECTIONS\r
20 {\r
21   .sdram      : {} > sdram\r
22   .ipsbar     : {} > ipsbar\r
23   .sram (NOLOAD) : { *(.vector_ram); *(.nbuf) } > sram\r
24   .flash      : {} > flash\r
25 \r
26   .text :\r
27   {\r
28     __text_start = . ;\r
29     *(.vector_rom)\r
30     . = ALIGN (0x100);\r
31     *(.text)\r
32     . = ALIGN (16);\r
33 \r
34     *(.eh_frame)\r
35     . = ALIGN (16);\r
36 \r
37     *(.gnu.linkonce.t.*) \r
38 \r
39     . = ALIGN(0x4);\r
40      __CTOR_LIST__ = .;\r
41     ___CTOR_LIST__ = .;\r
42     LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)\r
43     *(.ctors)\r
44     LONG(0)\r
45     __CTOR_END__ = .;\r
46     __DTOR_LIST__ = .;\r
47     ___DTOR_LIST__ = .;\r
48     LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)\r
49     *(.dtors)\r
50      LONG(0)\r
51     __DTOR_END__ = .;\r
52     *(.rodata)\r
53     *(.rodata.*)\r
54     *(.gcc_except_table) \r
55 \r
56     . = ALIGN(0x2);\r
57     __INIT_SECTION__ = . ;\r
58     LONG (0x4e560000)   /* linkw %fp,#0 */\r
59     *(.init)\r
60     SHORT (0x4e5e)      /* unlk %fp */\r
61     SHORT (0x4e75)      /* rts */\r
62 \r
63     __FINI_SECTION__ = . ;\r
64     LONG (0x4e560000)   /* linkw %fp,#0 */\r
65     *(.fini)\r
66     SHORT (0x4e5e)      /* unlk %fp */\r
67     SHORT (0x4e75)      /* rts */\r
68 \r
69     *(.lit)\r
70     . = ALIGN(16);\r
71     _etext = .;\r
72     etext = .;\r
73 \r
74   } > flash\r
75   . = ALIGN(2);\r
76 \r
77   .data : AT (ADDR (.text) + SIZEOF (.text))\r
78   {\r
79     copy_start = .;\r
80     *(.shdata)\r
81     *(.data)\r
82     *(.gnu.linkonce.d.*)\r
83     . = ALIGN (16);\r
84     _edata = .;\r
85     copy_end = .;\r
86   } > sdram\r
87   __data_load_start = LOADADDR(.data);\r
88   __data_load_end = __data_load_start + SIZEOF(.data);\r
89 \r
90   .bss :\r
91   {\r
92     . = ALIGN(0x4);\r
93     __bss_start = . ;\r
94     *(.shbss)\r
95     *(.bss)\r
96     *(COMMON)\r
97     _end =  ALIGN (0x8);\r
98     __end = _end;\r
99   } > sdram\r
100 \r
101   .stab 0 (NOLOAD) :\r
102   {\r
103     *(.stab)\r
104   }\r
105 \r
106   .stabstr 0 (NOLOAD) :\r
107   {\r
108     *(.stabstr)\r
109   }\r
110 }\r
111 \r
112 __IPSBAR            = ADDR(.ipsbar);\r
113 \r
114 __SDRAM             = ADDR(.sdram);\r
115 __SDRAM_SIZE        = SIZEOF(.sdram);\r
116 \r
117 __SRAM              = ADDR(.sram);\r
118 __SRAM_SIZE         = SIZEOF(.sram);\r
119 \r
120 __FLASH             = ADDR(.flash);\r
121 __FLASH_SIZE        = SIZEOF(.flash);\r