summaryrefslogtreecommitdiffstats
path: root/bsps/arm/raspberrypi/start/linkcmds.in
blob: d99b4fe23e4a4e87c676dcb5dd5fe1cfa83a039b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
/**
 * @file
 *
 * @ingroup raspberrypi_linker
 *
 * @brief Memory map
 */

/**
 * @defgroup raspberrypi_linker Raspberry Pi Memory Map
 *
 * @ingroup bsp_linker
 *
 * @brief Raspberry Pi memory map.
 */

MEMORY {
  RAM_MMU (AIW) : ORIGIN = 0x00100000, LENGTH = @RPI_RAM_MMU_LENGTH@
  RAM     (AIW) : ORIGIN = 0x00200000, LENGTH = @RPI_RAM_LENGTH_AVAILABLE@ - @RPI_RAM_NOCACHE_LENGTH@
}

REGION_ALIAS ("REGION_START",          RAM);
REGION_ALIAS ("REGION_VECTOR",         RAM);
REGION_ALIAS ("REGION_TEXT",           RAM);
REGION_ALIAS ("REGION_TEXT_LOAD",      RAM);
REGION_ALIAS ("REGION_RODATA",         RAM);
REGION_ALIAS ("REGION_RODATA_LOAD",    RAM);
REGION_ALIAS ("REGION_DATA",           RAM);
REGION_ALIAS ("REGION_DATA_LOAD",      RAM);
REGION_ALIAS ("REGION_FAST_TEXT",      RAM);
REGION_ALIAS ("REGION_FAST_TEXT_LOAD", RAM);
REGION_ALIAS ("REGION_FAST_DATA",      RAM);
REGION_ALIAS ("REGION_FAST_DATA_LOAD", RAM);
REGION_ALIAS ("REGION_BSS",            RAM);
REGION_ALIAS ("REGION_WORK",           RAM);
REGION_ALIAS ("REGION_STACK",          RAM);
REGION_ALIAS ("REGION_NOCACHE",        RAM);
REGION_ALIAS ("REGION_NOCACHE_LOAD",   RAM);

bsp_stack_abt_size = DEFINED (bsp_stack_abt_size) ? bsp_stack_abt_size : 1024;

bsp_section_rwbarrier_align = DEFINED (bsp_section_rwbarrier_align) ? bsp_section_rwbarrier_align : 1M;

bsp_vector_table_in_start_section = 1;

bsp_translation_table_base = ORIGIN (RAM_MMU);
bsp_translation_table_end = ORIGIN (RAM_MMU) + LENGTH (RAM_MMU);

INCLUDE linkcmds.armv4