Skip to content

Commit a63b97e

Browse files
Rbb666shannon2000
andauthored
[bsp][nxp]support FRDM-MCXA156 (#9971)
support FRDM-MCXA156 Co-authored-by: shannon <[email protected]>
1 parent 8629c95 commit a63b97e

File tree

146 files changed

+135645
-0
lines changed

Some content is hidden

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

146 files changed

+135645
-0
lines changed

.github/workflows/bsp_buildings.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,7 @@ jobs:
234234
- "nxp/mcx/mcxn/frdm-mcxn947"
235235
- "nxp/mcx/mcxn/frdm-mcxn236"
236236
- "nxp/mcx/mcxa/frdm-mcxa153"
237+
- "nxp/mcx/mcxa/frdm-mcxa156"
237238
- "renesas/ebf_qi_min_6m5"
238239
- "renesas/ra6m4-cpk"
239240
- "renesas/ra6m4-iot"

bsp/nxp/mcx/mcxa/Libraries/MCXA156/MCXA156/MCXA156.h

Lines changed: 38660 additions & 0 deletions
Large diffs are not rendered by default.

bsp/nxp/mcx/mcxa/Libraries/MCXA156/MCXA156/MCXA156_features.h

Lines changed: 793 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
#!armclang --target=arm-arm-none-eabi -march=armv8-m.main -E -x c
2+
/*
3+
** ###################################################################
4+
** Processors: MCXA156VLL
5+
** MCXA156VMP
6+
** MCXA156VPJ
7+
**
8+
** Compiler: Keil ARM C/C++ Compiler
9+
** Reference manual: MCXA18 User manual
10+
** Version: rev. 1.0, 2022-03-29
11+
** Build: b240104
12+
**
13+
** Abstract:
14+
** Linker file for the Keil ARM C/C++ Compiler
15+
**
16+
** Copyright 2016 Freescale Semiconductor, Inc.
17+
** Copyright 2016-2024 NXP
18+
** SPDX-License-Identifier: BSD-3-Clause
19+
**
20+
** http: www.nxp.com
21+
22+
**
23+
** ###################################################################
24+
*/
25+
26+
27+
/* Sizes */
28+
#if (defined(__stack_size__))
29+
#define Stack_Size __stack_size__
30+
#else
31+
#define Stack_Size 0x0400
32+
#endif
33+
34+
#if (defined(__heap_size__))
35+
#define Heap_Size __heap_size__
36+
#else
37+
#define Heap_Size 0x0400
38+
#endif
39+
40+
#define m_interrupts_start 0x00000000
41+
#define m_interrupts_size 0x00000200
42+
43+
#define m_text_start 0x00000200
44+
#define m_text_size 0x000FFE00
45+
46+
#define m_data_start 0x20000000
47+
#define m_data_size 0x0001E000
48+
49+
#define m_sramx0_start 0x04000000;
50+
#define m_sramx0_size 0x00002000;
51+
52+
LR_m_text m_interrupts_start m_interrupts_size+m_text_size { ; load region size_region
53+
54+
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
55+
* (.isr_vector,+FIRST)
56+
}
57+
58+
ER_m_text m_text_start FIXED m_text_size { ; load address = execution address
59+
* (InRoot$$Sections)
60+
.ANY (+RO)
61+
}
62+
63+
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
64+
.ANY (+RW +ZI)
65+
}
66+
ARM_LIB_HEAP +0 EMPTY Heap_Size { ; Heap region growing up
67+
}
68+
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
69+
}
70+
71+
}
Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
#!armclang --target=arm-arm-none-eabi -march=armv8-m.main -E -x c
2+
/*
3+
** ###################################################################
4+
** Processors: MCXA156VLL
5+
** MCXA156VMP
6+
** MCXA156VPJ
7+
**
8+
** Compiler: Keil ARM C/C++ Compiler
9+
** Reference manual: MCXA18 User manual
10+
** Version: rev. 1.0, 2022-03-29
11+
** Build: b240104
12+
**
13+
** Abstract:
14+
** Linker file for the Keil ARM C/C++ Compiler
15+
**
16+
** Copyright 2016 Freescale Semiconductor, Inc.
17+
** Copyright 2016-2024 NXP
18+
** SPDX-License-Identifier: BSD-3-Clause
19+
**
20+
** http: www.nxp.com
21+
22+
**
23+
** ###################################################################
24+
*/
25+
26+
27+
/* Sizes */
28+
#if (defined(__stack_size__))
29+
#define Stack_Size __stack_size__
30+
#else
31+
#define Stack_Size 0x0400
32+
#endif
33+
34+
#if (defined(__heap_size__))
35+
#define Heap_Size __heap_size__
36+
#else
37+
#define Heap_Size 0x0400
38+
#endif
39+
40+
#define m_interrupts_start 0x20000000
41+
#define m_interrupts_size 0x00000200
42+
43+
#define m_text_start 0x20000200
44+
#define m_text_size 0x00005E00
45+
46+
#define m_data_start 0x20006000
47+
#define m_data_size 0x00018000
48+
49+
LR_m_text m_interrupts_start m_interrupts_size+m_text_size { ; load region size_region
50+
51+
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
52+
* (.isr_vector,+FIRST)
53+
}
54+
55+
ER_m_text m_text_start FIXED m_text_size { ; load address = execution address
56+
* (InRoot$$Sections)
57+
.ANY (+RO)
58+
}
59+
60+
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
61+
.ANY (+RW +ZI)
62+
}
63+
ARM_LIB_HEAP +0 EMPTY Heap_Size { ; Heap region growing up
64+
}
65+
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
66+
}
67+
68+
}
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
// <<< Use Configuration Wizard in Context Menu >>>
2+
3+
// <o0> SWO pin
4+
// <i> The SWO (Serial Wire Output) pin optionally provides data from the ITM
5+
// <i> for an external debug tool to evaluate.
6+
// <0=> PIO0_10
7+
// <1=> PIO0_8
8+
SWO_Pin = 0;
9+
//
10+
11+
// <h>Debug Configuration
12+
// <o.0> StopAfterBootloader <i> Stop after Bootloader
13+
// </h>
14+
Dbg_CR = 0x00000001;
15+
//
16+
17+
18+
// <<< end of configuration section >>>
18.8 KB
Binary file not shown.

0 commit comments

Comments
 (0)