Statistics
| Branch: | Tag: | Revision:

amiro-os / modules / NUCLEO-F103RB / STM32F103xB.ld @ 437900eb

History | View | Annotate | Download (2.958 KB)

1 f4da707a Thomas Schöpping
/*
2 0f60c8ad Thomas Schöpping
AMiRo-OS is an operating system designed for the Autonomous Mini Robot (AMiRo) platform.
3
Copyright (C) 2016..2019  Thomas Schöpping et al.
4 f4da707a Thomas Schöpping
5 0f60c8ad Thomas Schöpping
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9 f4da707a Thomas Schöpping
10 0f60c8ad Thomas Schöpping
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
GNU General Public License for more details.
14 f4da707a Thomas Schöpping
15 0f60c8ad Thomas Schöpping
You should have received a copy of the GNU General Public License
16
along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 f4da707a Thomas Schöpping
*/
18
19
/*
20
 * ST32F103xB memory setup.
21
 */
22
MEMORY
23
{
24
    flash0  : org = 0x08000000, len = 128k
25
    flash1  : org = 0x00000000, len = 0
26
    flash2  : org = 0x00000000, len = 0
27
    flash3  : org = 0x00000000, len = 0
28
    flash4  : org = 0x00000000, len = 0
29
    flash5  : org = 0x00000000, len = 0
30
    flash6  : org = 0x00000000, len = 0
31
    flash7  : org = 0x00000000, len = 0
32
    ram0    : org = 0x20000000, len = 20k
33
    ram1    : org = 0x00000000, len = 0
34
    ram2    : org = 0x00000000, len = 0
35
    ram3    : org = 0x00000000, len = 0
36
    ram4    : org = 0x00000000, len = 0
37
    ram5    : org = 0x00000000, len = 0
38
    ram6    : org = 0x00000000, len = 0
39
    ram7    : org = 0x00000000, len = 0
40
}
41
42
/* For each data/text section two region are defined, a virtual region
43
   and a load region (_LMA suffix).*/
44
45
/* Flash region to be used for exception vectors.*/
46
REGION_ALIAS("VECTORS_FLASH", flash0);
47
REGION_ALIAS("VECTORS_FLASH_LMA", flash0);
48
49
/* Flash region to be used for constructors and destructors.*/
50
REGION_ALIAS("XTORS_FLASH", flash0);
51
REGION_ALIAS("XTORS_FLASH_LMA", flash0);
52
53
/* Flash region to be used for code text.*/
54
REGION_ALIAS("TEXT_FLASH", flash0);
55
REGION_ALIAS("TEXT_FLASH_LMA", flash0);
56
57
/* Flash region to be used for read only data.*/
58
REGION_ALIAS("RODATA_FLASH", flash0);
59
REGION_ALIAS("RODATA_FLASH_LMA", flash0);
60
61
/* Flash region to be used for various.*/
62
REGION_ALIAS("VARIOUS_FLASH", flash0);
63
REGION_ALIAS("VARIOUS_FLASH_LMA", flash0);
64
65
/* Flash region to be used for RAM(n) initialization data.*/
66
REGION_ALIAS("RAM_INIT_FLASH_LMA", flash0);
67
68
/* RAM region to be used for Main stack. This stack accommodates the processing
69
   of all exceptions and interrupts.*/
70
REGION_ALIAS("MAIN_STACK_RAM", ram0);
71
72
/* RAM region to be used for the process stack. This is the stack used by
73
   the main() function.*/
74
REGION_ALIAS("PROCESS_STACK_RAM", ram0);
75
76
/* RAM region to be used for data segment.*/
77
REGION_ALIAS("DATA_RAM", ram0);
78
REGION_ALIAS("DATA_RAM_LMA", flash0);
79
80
/* RAM region to be used for BSS segment.*/
81
REGION_ALIAS("BSS_RAM", ram0);
82
83
/* RAM region to be used for the default heap.*/
84
REGION_ALIAS("HEAP_RAM", ram0);
85
86
/* Generic rules inclusion.*/
87
INCLUDE rules.ld