]> rtime.felk.cvut.cz Git - sysless.git/blob - board/h8300/h8mirosot/libs/h8canusb.ld-flash
Added support for H8Mirosot board.
[sysless.git] / board / h8300 / h8mirosot / libs / h8canusb.ld-flash
1 /* linker script for applications running from FLASH */
2
3 INCLUDE "h8canusb.ld-cfg"
4
5 /* PROVIDE ( sym = val ); */
6
7 PROVIDE( ___stack_top = ( __iram0_end & ~ 3 ) - 4 );
8 PROVIDE( ___heap_end = __ram_end );
9
10 STARTUP(crt0.o)
11
12 SECTIONS
13 {
14         .text :
15         {
16           . = ALIGN( 4 ) ;
17           text_start = . ;
18           LONG( ABSOLUTE( _start ) + 0x5a000000 ) /* JMP _start */
19 /*        KEEP (crt0.o(.text)) */
20           . = ALIGN( 4 ) ;
21           ___boot_fn_start = ALIGN( 0x4 ) ;
22           KEEP (*boot_fn.o(.text))
23           KEEP (*boot_fn.o(.rodata))
24           . = ALIGN( 4 ) ;
25           ___boot_fn_end = ALIGN( 0x4 ) ;
26           *(.text)
27           *(.rodata)
28           . = ALIGN( 4 ) ;
29           ___nls_str_start = ALIGN( 0x4 ) ;
30           *(.nls_str)                           
31           ___nls_str_end = ALIGN( 0x4 ) ;
32           *(.strings)
33           _etext = ALIGN( 0x10 ) ;
34         } > flashusr
35
36         .tors : 
37         {
38           ___ctors = . ;
39           *(.ctors)
40           ___ctors_end = . ;
41           ___dtors = . ;
42           *(.dtors)
43           ___dtors_end = . ;
44           . = ALIGN( 0x10 ) ;
45           ___data_lma = ALIGN( 0x10 ) ;
46         }  > flashusr
47
48         .data :
49             AT ( ADDR( .tors ) + SIZEOF( .tors ) )
50         {
51           _data_start = . ;
52           *(.data)
53           . = ALIGN( 0x4 ) ;
54           _edata = ALIGN( 0x4 ) ;
55         } > ram /*at> flashusr*/
56
57         /* ___data_lma = LOADADDR(.data) ; */
58
59         .bss :
60         {
61           _bss_start = ALIGN( 0x10 ) ;
62           *(.bss)
63           *(COMMON)
64           . = ALIGN( 0x4 ) ;
65           _end = ALIGN( 0x4 ) ;
66         } > ram
67
68         .tiny : 
69         {
70           *(.tiny)
71         }  > iram0
72         
73         .eight : 
74         {
75           *(.eight)
76         }  > eight
77
78         .stab  0 (NOLOAD) : 
79         {
80           [ .stab ]
81         }
82
83         .stabstr  0 (NOLOAD) :
84         {
85           [ .stabstr ]
86         }
87 }