Skip to content
This repository was archived by the owner on Oct 15, 2024. It is now read-only.

Commit 42b6d64

Browse files
committed
add a bootloader project for rt1062.
1 parent f544fde commit 42b6d64

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

44 files changed

+24640
-0
lines changed
Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
#! armcc -E
2+
/*
3+
** ###################################################################
4+
** Processors: MIMXRT1062CVL5A
5+
** MIMXRT1062DVL6A
6+
**
7+
** Compiler: Keil ARM C/C++ Compiler
8+
** Reference manual: IMXRT1050RM Rev.1, 03/2018
9+
** Version: rev. 0.1, 2017-01-10
10+
** Build: b180131
11+
**
12+
** Abstract:
13+
** Linker file for the Keil ARM C/C++ Compiler
14+
**
15+
** The Clear BSD License
16+
** Copyright 2016 Freescale Semiconductor, Inc.
17+
** Copyright 2016-2018 NXP
18+
** All rights reserved.
19+
**
20+
** Redistribution and use in source and binary forms, with or without
21+
** modification, are permitted (subject to the limitations in the
22+
** disclaimer below) provided that the following conditions are met:
23+
**
24+
** * Redistributions of source code must retain the above copyright
25+
** notice, this list of conditions and the following disclaimer.
26+
**
27+
** * Redistributions in binary form must reproduce the above copyright
28+
** notice, this list of conditions and the following disclaimer in the
29+
** documentation and/or other materials provided with the distribution.
30+
**
31+
** * Neither the name of the copyright holder nor the names of its
32+
** contributors may be used to endorse or promote products derived from
33+
** this software without specific prior written permission.
34+
**
35+
** NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE
36+
** GRANTED BY THIS LICENSE. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT
37+
** HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED
38+
** WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
39+
** MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
40+
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
41+
** LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
42+
** CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
43+
** SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
44+
** BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
45+
** WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
46+
** OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
47+
** IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
48+
**
49+
** http: www.nxp.com
50+
** mail: support@nxp.com
51+
**
52+
** ###################################################################
53+
*/
54+
55+
#define m_flash_config_start 0x60000000
56+
#define m_flash_config_size 0x00001000
57+
58+
#define m_ivt_start 0x60001000
59+
#define m_ivt_size 0x00001000
60+
61+
#define m_interrupts_start 0x60002000
62+
#define m_interrupts_size 0x00000400
63+
64+
#define m_text_start 0x60002400
65+
#define m_text_size 0x03FFDC00
66+
#define m_ram_interrupts_start 0x00000000
67+
#define m_ram_interrupts_size 0x00000400
68+
69+
#define m_ram_text_start 0x00000400
70+
#define m_ram_text_size 0x0001FC00
71+
72+
#define m_data_start 0x20000000
73+
#define m_data_size 0x00020000
74+
75+
#define m_ncache_start 0x81E00000
76+
#define m_ncache_size 0x00200000
77+
78+
#define m_data2_start 0x80000000
79+
#define m_data2_size 0x01E00000
80+
81+
#define m_data3_start 0x20200000
82+
#define m_data3_size 0x00040000
83+
84+
/* Sizes */
85+
#if (defined(__stack_size__))
86+
#define Stack_Size __stack_size__
87+
#else
88+
#define Stack_Size 0x0400
89+
#endif
90+
91+
#if (defined(__heap_size__))
92+
#define Heap_Size __heap_size__
93+
#else
94+
#define Heap_Size 0x0400
95+
#endif
96+
97+
LR_m_rom_config m_flash_config_start m_flash_config_size { ; load region size_region
98+
RW_m_config_text m_flash_config_start m_flash_config_size { ; load address = execution address
99+
* (.boot_hdr.conf, +FIRST)
100+
}
101+
}
102+
103+
LR_m_rom_ivt m_ivt_start m_ivt_size { ; load region size_region
104+
RW_m_ivt_text m_ivt_start m_ivt_size { ; load address = execution address
105+
* (.boot_hdr.ivt, +FIRST)
106+
* (.boot_hdr.boot_data)
107+
* (.boot_hdr.dcd_data)
108+
}
109+
}
110+
111+
LR_m_text m_interrupts_start m_text_start+m_text_size-m_interrupts_size { ; load region size_region
112+
113+
114+
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
115+
* (RESET,+FIRST)
116+
}
117+
118+
119+
ER_m_text m_text_start m_text_size { ; load address = execution address
120+
* (InRoot$$Sections)
121+
startup_mimxrt1062.o(+RO)
122+
system_mimxrt1062.o(+RO)
123+
}
124+
125+
126+
VECTOR_RAM m_ram_interrupts_start EMPTY m_ram_interrupts_size { ;execution address
127+
128+
129+
}
130+
131+
132+
ER_m_ram_text m_ram_text_start m_ram_text_size { ;execution address
133+
.ANY (+RO)
134+
}
135+
136+
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
137+
.ANY (+RW +ZI)
138+
*(m_usb_dma_init_data)
139+
*(m_usb_dma_noninit_data)
140+
}
141+
ARM_LIB_HEAP +0 EMPTY Heap_Size { ; Heap region growing up
142+
}
143+
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
144+
}
145+
RW_m_ncache m_ncache_start m_ncache_size { ; ncache RW data
146+
* (NonCacheable.init)
147+
* (NonCacheable)
148+
}
149+
}

0 commit comments

Comments
 (0)