Skip to content

Commit f035182

Browse files
ZhaoxiangJinmmahadevan108
authored andcommitted
sdk_ng: Add boards from mcuxsdk-ng 24.12.00 release
Signed-off-by: Zhaoxiang Jin <[email protected]>
1 parent a8ac3f6 commit f035182

File tree

71 files changed

+10402
-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.

71 files changed

+10402
-0
lines changed

mcux/mcux-sdk-ng/boards/evkbimxrt1050/dcd.c

Lines changed: 314 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
* Copyright 2020 NXP
3+
* All rights reserved.
4+
*
5+
* SPDX-License-Identifier: BSD-3-Clause
6+
*/
7+
8+
/***********************************************************************************************************************
9+
* This file was generated by the MCUXpresso Config Tools. Any manual edits made to this file
10+
* will be overwritten if the respective MCUXpresso Config Tools is used to update this file.
11+
**********************************************************************************************************************/
12+
13+
#ifndef __DCD__
14+
#define __DCD__
15+
16+
#include <stdint.h>
17+
18+
/*! @name Driver version */
19+
/*@{*/
20+
/*! @brief XIP_BOARD driver version 2.0.1. */
21+
#define FSL_XIP_BOARD_DRIVER_VERSION (MAKE_VERSION(2, 0, 1))
22+
/*@}*/
23+
24+
/*************************************
25+
* DCD Data
26+
*************************************/
27+
#define DCD_TAG_HEADER (0xD2)
28+
#define DCD_VERSION (0x41)
29+
#define DCD_TAG_HEADER_SHIFT (24)
30+
#define DCD_ARRAY_SIZE 1
31+
32+
#endif /* __DCD__ */
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
if (CONFIG_MCUX_COMPONENT_board.boot_header)
2+
mcux_add_source(
3+
SOURCES ${board}_flexspi_nor_config.c
4+
${board}_flexspi_nor_config.h
5+
)
6+
7+
mcux_add_include(
8+
INCLUDES .
9+
)
10+
11+
mcux_add_source(
12+
BASE_PATH ${CMAKE_CURRENT_LIST_DIR}/..
13+
SOURCES dcd.c
14+
dcd.h
15+
)
16+
endif()
17+
18+
if (CONFIG_MCUX_PRJSEG_module.board.suite)
19+
20+
mcux_add_configuration(
21+
TARGETS flexspi_nor_debug flexspi_nor_release
22+
flexspi_nor_sdram_debug flexspi_nor_sdram_release
23+
CC "-DXIP_BOOT_HEADER_ENABLE=1"
24+
)
25+
26+
mcux_add_mdk_configuration(
27+
TARGETS flexspi_nor_debug flexspi_nor_release
28+
flexspi_nor_sdram_debug flexspi_nor_sdram_release
29+
LD "--predefine=\"-DXIP_BOOT_HEADER_ENABLE=1\""
30+
)
31+
32+
mcux_add_configuration(
33+
TARGETS flexspi_nor_sdram_debug flexspi_nor_sdram_release
34+
CC "-DXIP_BOOT_HEADER_DCD_ENABLE=1"
35+
)
36+
37+
mcux_add_mdk_configuration(
38+
TARGETS flexspi_nor_sdram_debug flexspi_nor_sdram_release
39+
LD "--predefine=\"-DXIP_BOOT_HEADER_DCD_ENABLE=1\""
40+
)
41+
endif()
Lines changed: 181 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,181 @@
1+
/*
2+
* Copyright 2017-2020 NXP
3+
* All rights reserved.
4+
*
5+
* SPDX-License-Identifier: BSD-3-Clause
6+
*/
7+
8+
#include "evkbimxrt1050_flexspi_nor_config.h"
9+
10+
/* Component ID definition, used by tools. */
11+
#ifndef FSL_COMPONENT_ID
12+
#define FSL_COMPONENT_ID "platform.drivers.xip_board"
13+
#endif
14+
15+
/*******************************************************************************
16+
* Code
17+
******************************************************************************/
18+
#if defined(XIP_BOOT_HEADER_ENABLE) && (XIP_BOOT_HEADER_ENABLE == 1)
19+
#if defined(__CC_ARM) || defined(__ARMCC_VERSION) || defined(__GNUC__)
20+
__attribute__((section(".boot_hdr.conf"), used))
21+
#elif defined(__ICCARM__)
22+
#pragma location = ".boot_hdr.conf"
23+
#endif
24+
25+
const flexspi_nor_config_t
26+
hyperflash_config =
27+
{
28+
.memConfig =
29+
{
30+
.tag = FLEXSPI_CFG_BLK_TAG,
31+
.version = FLEXSPI_CFG_BLK_VERSION,
32+
.readSampleClkSrc = kFlexSPIReadSampleClk_ExternalInputFromDqsPad,
33+
.csHoldTime = 3u,
34+
.csSetupTime = 3u,
35+
.columnAddressWidth = 3u,
36+
// Enable DDR mode, Wordaddassable, Safe configuration, Differential clock
37+
.controllerMiscOption =
38+
(1u << kFlexSpiMiscOffset_DdrModeEnable) | (1u << kFlexSpiMiscOffset_WordAddressableEnable) |
39+
(1u << kFlexSpiMiscOffset_SafeConfigFreqEnable) | (1u << kFlexSpiMiscOffset_DiffClkEnable),
40+
.deviceType = kFlexSpiDeviceType_SerialNOR,
41+
.sflashPadType = kSerialFlash_8Pads,
42+
.serialClkFreq = kFlexSpiSerialClk_133MHz,
43+
.lutCustomSeqEnable = 0x1,
44+
.sflashA1Size = 64u * 1024u * 1024u,
45+
.dataValidTime = {15u, 0u},
46+
.busyOffset = 15u,
47+
.busyBitPolarity = 1u,
48+
.lookupTable =
49+
{
50+
// Read LUTs
51+
[0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0xA0, RADDR_DDR, FLEXSPI_8PAD, 0x18),
52+
[1] = FLEXSPI_LUT_SEQ(CADDR_DDR, FLEXSPI_8PAD, 0x10, DUMMY_DDR, FLEXSPI_8PAD, 0x0C),
53+
[2] = FLEXSPI_LUT_SEQ(READ_DDR, FLEXSPI_8PAD, 0x04, STOP, FLEXSPI_1PAD, 0x0),
54+
55+
// Read Status LUTs
56+
// 0
57+
[4 * 1 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
58+
[4 * 1 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
59+
[4 * 1 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
60+
[4 * 1 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x70),
61+
62+
// 1
63+
[4 * 2 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0xA0, RADDR_DDR, FLEXSPI_8PAD, 0x18),
64+
[4 * 2 + 1] =
65+
FLEXSPI_LUT_SEQ(CADDR_DDR, FLEXSPI_8PAD, 0x10, DUMMY_RWDS_DDR, FLEXSPI_8PAD, 0x0B),
66+
[4 * 2 + 2] = FLEXSPI_LUT_SEQ(READ_DDR, FLEXSPI_8PAD, 0x4, STOP, FLEXSPI_1PAD, 0x0),
67+
68+
// Write Enable LUTs
69+
// 0
70+
[4 * 3 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
71+
[4 * 3 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
72+
[4 * 3 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
73+
[4 * 3 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
74+
75+
// 1
76+
[4 * 4 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
77+
[4 * 4 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x55),
78+
[4 * 4 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x02),
79+
[4 * 4 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x55),
80+
81+
// Erase Sector LUTs
82+
// 0
83+
[4 * 5 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
84+
[4 * 5 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
85+
[4 * 5 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
86+
[4 * 5 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x80),
87+
88+
// 1
89+
[4 * 6 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
90+
[4 * 6 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
91+
[4 * 6 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
92+
[4 * 6 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
93+
94+
// 2
95+
[4 * 7 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
96+
[4 * 7 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x55),
97+
[4 * 7 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x02),
98+
[4 * 7 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x55),
99+
100+
// 3
101+
[4 * 8 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, RADDR_DDR, FLEXSPI_8PAD, 0x18),
102+
[4 * 8 + 1] = FLEXSPI_LUT_SEQ(CADDR_DDR, FLEXSPI_8PAD, 0x10, CMD_DDR, FLEXSPI_8PAD, 0x0),
103+
[4 * 8 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x30, STOP, FLEXSPI_1PAD, 0x0),
104+
105+
// Page Program LUTs
106+
// 0
107+
[4 * 9 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
108+
[4 * 9 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
109+
[4 * 9 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
110+
[4 * 9 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xA0),
111+
112+
// 1
113+
[4 * 10 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, RADDR_DDR, FLEXSPI_8PAD, 0x18),
114+
[4 * 10 + 1] =
115+
FLEXSPI_LUT_SEQ(CADDR_DDR, FLEXSPI_8PAD, 0x10, WRITE_DDR, FLEXSPI_8PAD, 0x80),
116+
117+
// Erase Chip LUTs
118+
// 0
119+
[4 * 11 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
120+
[4 * 11 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
121+
[4 * 11 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
122+
[4 * 11 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x80),
123+
124+
// 1
125+
[4 * 12 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
126+
[4 * 12 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
127+
[4 * 12 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
128+
[4 * 12 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
129+
130+
// 2
131+
[4 * 13 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
132+
[4 * 13 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x55),
133+
[4 * 13 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x02),
134+
[4 * 13 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x55),
135+
136+
// 3
137+
[4 * 14 + 0] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x0),
138+
[4 * 14 + 1] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0xAA),
139+
[4 * 14 + 2] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x05),
140+
[4 * 14 + 3] = FLEXSPI_LUT_SEQ(CMD_DDR, FLEXSPI_8PAD, 0x0, CMD_DDR, FLEXSPI_8PAD, 0x10),
141+
},
142+
// LUT customized sequence
143+
.lutCustomSeq = {{
144+
.seqNum = 0,
145+
.seqId = 0,
146+
.reserved = 0,
147+
},
148+
{
149+
.seqNum = 2,
150+
.seqId = 1,
151+
.reserved = 0,
152+
},
153+
{
154+
.seqNum = 2,
155+
.seqId = 3,
156+
.reserved = 0,
157+
},
158+
{
159+
.seqNum = 4,
160+
.seqId = 5,
161+
.reserved = 0,
162+
},
163+
{
164+
.seqNum = 2,
165+
.seqId = 9,
166+
.reserved = 0,
167+
},
168+
{
169+
.seqNum = 4,
170+
.seqId = 11,
171+
.reserved = 0,
172+
}},
173+
},
174+
.pageSize = 512u,
175+
.sectorSize = 256u * 1024u,
176+
.ipcmdSerialClkFreq = 1u,
177+
.serialNorType = 1u,
178+
.blockSize = 256u * 1024u,
179+
.isUniformBlockSize = true,
180+
};
181+
#endif /* XIP_BOOT_HEADER_ENABLE */

0 commit comments

Comments
 (0)