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