Merge pull request #1080 from TanekLiang/imxrt
[bsp] update i.mx rt bsp
This commit is contained in:
commit
749fa2b73a
|
@ -8,12 +8,15 @@
|
||||||
#
|
#
|
||||||
CONFIG_RT_NAME_MAX=8
|
CONFIG_RT_NAME_MAX=8
|
||||||
CONFIG_RT_ALIGN_SIZE=4
|
CONFIG_RT_ALIGN_SIZE=4
|
||||||
|
# CONFIG_RT_THREAD_PRIORITY_8 is not set
|
||||||
|
CONFIG_RT_THREAD_PRIORITY_32=y
|
||||||
|
# CONFIG_RT_THREAD_PRIORITY_256 is not set
|
||||||
CONFIG_RT_THREAD_PRIORITY_MAX=32
|
CONFIG_RT_THREAD_PRIORITY_MAX=32
|
||||||
CONFIG_RT_TICK_PER_SECOND=100
|
CONFIG_RT_TICK_PER_SECOND=100
|
||||||
CONFIG_RT_DEBUG=y
|
CONFIG_RT_DEBUG=y
|
||||||
CONFIG_RT_USING_OVERFLOW_CHECK=y
|
CONFIG_RT_USING_OVERFLOW_CHECK=y
|
||||||
CONFIG_RT_DEBUG_INIT=0
|
CONFIG_RT_DEBUG_INIT=0
|
||||||
# CONFIG_RT_DEBUG_THREAD is not set
|
CONFIG_RT_DEBUG_THREAD=0
|
||||||
CONFIG_RT_USING_HOOK=y
|
CONFIG_RT_USING_HOOK=y
|
||||||
CONFIG_IDLE_THREAD_STACK_SIZE=256
|
CONFIG_IDLE_THREAD_STACK_SIZE=256
|
||||||
# CONFIG_RT_USING_TIMER_SOFT is not set
|
# CONFIG_RT_USING_TIMER_SOFT is not set
|
||||||
|
@ -32,15 +35,18 @@ CONFIG_RT_USING_MESSAGEQUEUE=y
|
||||||
# Memory Management
|
# Memory Management
|
||||||
#
|
#
|
||||||
# CONFIG_RT_USING_MEMPOOL is not set
|
# CONFIG_RT_USING_MEMPOOL is not set
|
||||||
# CONFIG_RT_USING_MEMHEAP is not set
|
CONFIG_RT_USING_MEMHEAP=y
|
||||||
CONFIG_RT_USING_HEAP=y
|
# CONFIG_RT_USING_NOHEAP is not set
|
||||||
CONFIG_RT_USING_SMALL_MEM=y
|
# CONFIG_RT_USING_SMALL_MEM is not set
|
||||||
# CONFIG_RT_USING_SLAB is not set
|
# CONFIG_RT_USING_SLAB is not set
|
||||||
|
CONFIG_RT_USING_MEMHEAP_AS_HEAP=y
|
||||||
|
CONFIG_RT_USING_HEAP=y
|
||||||
|
|
||||||
#
|
#
|
||||||
# Kernel Device Object
|
# Kernel Device Object
|
||||||
#
|
#
|
||||||
CONFIG_RT_USING_DEVICE=y
|
CONFIG_RT_USING_DEVICE=y
|
||||||
|
# CONFIG_RT_USING_INTERRUPT_INFO is not set
|
||||||
CONFIG_RT_USING_CONSOLE=y
|
CONFIG_RT_USING_CONSOLE=y
|
||||||
CONFIG_RT_CONSOLEBUF_SIZE=128
|
CONFIG_RT_CONSOLEBUF_SIZE=128
|
||||||
CONFIG_RT_CONSOLE_DEVICE_NAME="uart1"
|
CONFIG_RT_CONSOLE_DEVICE_NAME="uart1"
|
||||||
|
@ -78,8 +84,13 @@ CONFIG_FINSH_USING_MSH_DEFAULT=y
|
||||||
CONFIG_RT_USING_DFS=y
|
CONFIG_RT_USING_DFS=y
|
||||||
CONFIG_DFS_USING_WORKDIR=y
|
CONFIG_DFS_USING_WORKDIR=y
|
||||||
CONFIG_DFS_FILESYSTEMS_MAX=2
|
CONFIG_DFS_FILESYSTEMS_MAX=2
|
||||||
|
CONFIG_DFS_FILESYSTEM_TYPES_MAX=2
|
||||||
CONFIG_DFS_FD_MAX=4
|
CONFIG_DFS_FD_MAX=4
|
||||||
CONFIG_RT_USING_DFS_ELMFAT=y
|
CONFIG_RT_USING_DFS_ELMFAT=y
|
||||||
|
|
||||||
|
#
|
||||||
|
# elm-chan's FatFs, Generic FAT Filesystem Module
|
||||||
|
#
|
||||||
CONFIG_RT_DFS_ELM_CODE_PAGE=437
|
CONFIG_RT_DFS_ELM_CODE_PAGE=437
|
||||||
CONFIG_RT_DFS_ELM_WORD_ACCESS=y
|
CONFIG_RT_DFS_ELM_WORD_ACCESS=y
|
||||||
CONFIG_RT_DFS_ELM_USE_LFN_0=y
|
CONFIG_RT_DFS_ELM_USE_LFN_0=y
|
||||||
|
@ -94,6 +105,9 @@ CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512
|
||||||
CONFIG_RT_DFS_ELM_REENTRANT=y
|
CONFIG_RT_DFS_ELM_REENTRANT=y
|
||||||
CONFIG_RT_USING_DFS_DEVFS=y
|
CONFIG_RT_USING_DFS_DEVFS=y
|
||||||
# CONFIG_RT_USING_DFS_NET is not set
|
# CONFIG_RT_USING_DFS_NET is not set
|
||||||
|
# CONFIG_RT_USING_DFS_ROMFS is not set
|
||||||
|
# CONFIG_RT_USING_DFS_RAMFS is not set
|
||||||
|
# CONFIG_RT_USING_DFS_UFFS is not set
|
||||||
# CONFIG_RT_USING_DFS_NFS is not set
|
# CONFIG_RT_USING_DFS_NFS is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -111,6 +125,11 @@ CONFIG_RT_USING_SERIAL=y
|
||||||
CONFIG_RT_USING_SDIO=y
|
CONFIG_RT_USING_SDIO=y
|
||||||
# CONFIG_RT_USING_SPI is not set
|
# CONFIG_RT_USING_SPI is not set
|
||||||
# CONFIG_RT_USING_WDT is not set
|
# CONFIG_RT_USING_WDT is not set
|
||||||
|
# CONFIG_RT_USING_WIFI is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# Using USB
|
||||||
|
#
|
||||||
# CONFIG_RT_USING_USB_HOST is not set
|
# CONFIG_RT_USING_USB_HOST is not set
|
||||||
# CONFIG_RT_USING_USB_DEVICE is not set
|
# CONFIG_RT_USING_USB_DEVICE is not set
|
||||||
|
|
||||||
|
@ -118,10 +137,8 @@ CONFIG_RT_USING_SDIO=y
|
||||||
# POSIX layer and C standard library
|
# POSIX layer and C standard library
|
||||||
#
|
#
|
||||||
CONFIG_RT_USING_LIBC=y
|
CONFIG_RT_USING_LIBC=y
|
||||||
CONFIG_RT_USING_PTHREADS=y
|
# CONFIG_RT_USING_PTHREADS is not set
|
||||||
CONFIG_RT_USING_POSIX=y
|
# CONFIG_RT_USING_POSIX is not set
|
||||||
# CONFIG_RT_USING_POSIX_MMAP is not set
|
|
||||||
# CONFIG_RT_USING_POSIX_TERMIOS is not set
|
|
||||||
|
|
||||||
#
|
#
|
||||||
# Network stack
|
# Network stack
|
||||||
|
@ -141,6 +158,13 @@ CONFIG_RT_LWIP_DHCP=y
|
||||||
CONFIG_IP_SOF_BROADCAST=1
|
CONFIG_IP_SOF_BROADCAST=1
|
||||||
CONFIG_IP_SOF_BROADCAST_RECV=1
|
CONFIG_IP_SOF_BROADCAST_RECV=1
|
||||||
# CONFIG_LWIP_USING_DHCPD is not set
|
# CONFIG_LWIP_USING_DHCPD is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# Static IPv4 Address
|
||||||
|
#
|
||||||
|
CONFIG_RT_LWIP_IPADDR="192.168.1.30"
|
||||||
|
CONFIG_RT_LWIP_GWADDR="192.168.1.1"
|
||||||
|
CONFIG_RT_LWIP_MSKADDR="255.255.255.0"
|
||||||
CONFIG_RT_LWIP_UDP=y
|
CONFIG_RT_LWIP_UDP=y
|
||||||
CONFIG_RT_LWIP_TCP=y
|
CONFIG_RT_LWIP_TCP=y
|
||||||
# CONFIG_RT_LWIP_RAW is not set
|
# CONFIG_RT_LWIP_RAW is not set
|
||||||
|
@ -178,6 +202,17 @@ CONFIG_LWIP_SO_RCVBUF=1
|
||||||
#
|
#
|
||||||
# CONFIG_RT_USING_GUIENGINE is not set
|
# CONFIG_RT_USING_GUIENGINE is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# VBUS(Virtual Software BUS)
|
||||||
|
#
|
||||||
|
# CONFIG_RT_USING_VBUS is not set
|
||||||
|
|
||||||
|
#
|
||||||
|
# Utilities
|
||||||
|
#
|
||||||
|
# CONFIG_RT_USING_LOGTRACE is not set
|
||||||
|
# CONFIG_RT_USING_RYM is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# RT-Thread online packages
|
# RT-Thread online packages
|
||||||
#
|
#
|
||||||
|
@ -187,24 +222,30 @@ CONFIG_LWIP_SO_RCVBUF=1
|
||||||
#
|
#
|
||||||
# CONFIG_PKG_USING_PARTITION is not set
|
# CONFIG_PKG_USING_PARTITION is not set
|
||||||
# CONFIG_PKG_USING_SQLITE is not set
|
# CONFIG_PKG_USING_SQLITE is not set
|
||||||
|
# CONFIG_PKG_USING_RTI is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# IoT - internet of things
|
# IoT - internet of things
|
||||||
#
|
#
|
||||||
# CONFIG_PKG_USING_CJSON is not set
|
|
||||||
# CONFIG_PKG_USING_PAHOMQTT is not set
|
# CONFIG_PKG_USING_PAHOMQTT is not set
|
||||||
# CONFIG_PKG_USING_WEBCLIENT is not set
|
# CONFIG_PKG_USING_WEBCLIENT is not set
|
||||||
# CONFIG_PKG_USING_MONGOOSE is not set
|
# CONFIG_PKG_USING_MONGOOSE is not set
|
||||||
# CONFIG_PKG_USING_WEB_TERMINAL is not set
|
# CONFIG_PKG_USING_WEBTERMINAL is not set
|
||||||
|
# CONFIG_PKG_USING_CJSON is not set
|
||||||
|
# CONFIG_PKG_USING_EZXML is not set
|
||||||
|
# CONFIG_PKG_USING_NANOPB is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# security packages
|
# security packages
|
||||||
#
|
#
|
||||||
|
# CONFIG_PKG_USING_MBEDTLS is not set
|
||||||
|
# CONFIG_PKG_USING_libsodium is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# language packages
|
# language packages
|
||||||
#
|
#
|
||||||
# CONFIG_PKG_USING_JERRYSCRIPT is not set
|
# CONFIG_PKG_USING_JERRYSCRIPT is not set
|
||||||
|
# CONFIG_PKG_USING_MICROPYTHON is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# multimedia packages
|
# multimedia packages
|
||||||
|
@ -214,15 +255,18 @@ CONFIG_LWIP_SO_RCVBUF=1
|
||||||
# tools packages
|
# tools packages
|
||||||
#
|
#
|
||||||
# CONFIG_PKG_USING_CMBACKTRACE is not set
|
# CONFIG_PKG_USING_CMBACKTRACE is not set
|
||||||
# CONFIG_PKG_USING_ELOG is not set
|
# CONFIG_PKG_USING_EASYLOGGER is not set
|
||||||
|
# CONFIG_PKG_USING_SYSTEMVIEW is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# miscellaneous packages
|
# miscellaneous packages
|
||||||
#
|
#
|
||||||
# CONFIG_PKG_USING_HELLO is not set
|
# CONFIG_PKG_USING_FASTLZ is not set
|
||||||
|
# CONFIG_PKG_USING_MINILZO is not set
|
||||||
|
|
||||||
#
|
#
|
||||||
# BSP_SPECIAL CONFIG
|
# example package: hello
|
||||||
#
|
#
|
||||||
|
# CONFIG_PKG_USING_HELLO is not set
|
||||||
CONFIG_RT_USING_UART=y
|
CONFIG_RT_USING_UART=y
|
||||||
CONFIG_RT_USING_UART1=y
|
CONFIG_RT_USING_UART1=y
|
||||||
|
|
|
@ -45,20 +45,20 @@
|
||||||
** ###################################################################
|
** ###################################################################
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define m_interrupts_start 0x60002000
|
#define m_text_start 0x60002000
|
||||||
#define m_interrupts_size 0x00000400
|
#define m_text_size 0x1F7FE000
|
||||||
|
|
||||||
#define m_text_start 0x60002400
|
|
||||||
#define m_text_size 0x1F7FDC00
|
|
||||||
|
|
||||||
#define m_data_start 0x20000000
|
#define m_data_start 0x20000000
|
||||||
#define m_data_size 0x00020000
|
#define m_data_size 0x00020000
|
||||||
|
|
||||||
|
#define m_ncache_start 0x81E00000
|
||||||
|
#define m_ncache_size 0x00200000
|
||||||
|
|
||||||
/* Sizes */
|
/* Sizes */
|
||||||
#if (defined(__stack_size__))
|
#if (defined(__stack_size__))
|
||||||
#define Stack_Size __stack_size__
|
#define Stack_Size __stack_size__
|
||||||
#else
|
#else
|
||||||
#define Stack_Size 0x0400
|
#define Stack_Size 0x1000
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if (defined(__heap_size__))
|
#if (defined(__heap_size__))
|
||||||
|
@ -69,23 +69,22 @@
|
||||||
|
|
||||||
LR_m_text m_text_start m_text_size { ; load region size_region
|
LR_m_text m_text_start m_text_size { ; load region size_region
|
||||||
ER_m_text m_text_start m_text_size { ; load address = execution address
|
ER_m_text m_text_start m_text_size { ; load address = execution address
|
||||||
|
* (RESET,+FIRST)
|
||||||
* (InRoot$$Sections)
|
* (InRoot$$Sections)
|
||||||
.ANY (+RO)
|
.ANY (+RO)
|
||||||
}
|
}
|
||||||
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
|
RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size { ; RW data
|
||||||
.ANY (+RW +ZI)
|
.ANY (+RW +ZI)
|
||||||
* (NonCacheable.init)
|
|
||||||
* (NonCacheable)
|
|
||||||
}
|
}
|
||||||
ARM_LIB_HEAP +0 EMPTY Heap_Size { ; Heap region growing up
|
ARM_LIB_HEAP +0 EMPTY Heap_Size { ; Heap region growing up
|
||||||
}
|
}
|
||||||
ARM_LIB_STACK m_data_start+m_data_size EMPTY -Stack_Size { ; Stack region growing down
|
ARM_LIB_STACK +0 EMPTY Stack_Size { ; Stack region growing down
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
LR_m_interrupts m_interrupts_start m_interrupts_size {
|
RW_m_ncache m_ncache_start m_ncache_size { ; ncache RW data
|
||||||
VECTOR_ROM m_interrupts_start m_interrupts_size { ; load address = execution address
|
* (NonCacheable.init)
|
||||||
* (RESET,+FIRST)
|
* (NonCacheable)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,45 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2017 NXP
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
* are permitted provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* o Redistributions of source code must retain the above copyright notice, this list
|
||||||
|
* of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* o Redistributions in binary form must reproduce the above copyright notice, this
|
||||||
|
* list of conditions and the following disclaimer in the documentation and/or
|
||||||
|
* other materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* o Neither the name of the copyright holder nor the names of its
|
||||||
|
* contributors may be used to endorse or promote products derived from this
|
||||||
|
* software without specific prior written permission.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
||||||
|
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
||||||
|
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
||||||
|
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
||||||
|
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||||
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||||
|
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
|
||||||
|
FUNC void Setup (void) {
|
||||||
|
|
||||||
|
SP = _RDWORD(0x60002000); // Setup Stack Pointer
|
||||||
|
PC = _RDWORD(0x60002004); // Setup Program Counter
|
||||||
|
_WDWORD(0xE000ED08, 0x60002000); // Setup Vector Table Offset Register
|
||||||
|
}
|
||||||
|
|
||||||
|
FUNC void OnResetExec (void) { // executes upon software RESET
|
||||||
|
Setup(); // Setup for Running
|
||||||
|
}
|
||||||
|
|
||||||
|
LOAD %L INCREMENTAL // Download
|
||||||
|
|
||||||
|
Setup(); // Setup for Running
|
||||||
|
|
||||||
|
// g, main
|
|
@ -53,14 +53,33 @@ STACK_SIZE = DEFINED(__stack_size__) ? __stack_size__ : 0x0400;
|
||||||
/* Specify the memory areas */
|
/* Specify the memory areas */
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
|
m_boot_data (RX) : ORIGIN = 0x60000000, LENGTH = 0x00000400
|
||||||
|
m_image_vertor_table (RX) : ORIGIN = 0x60001000, LENGTH = 0x00000400
|
||||||
|
|
||||||
m_interrupts (RX) : ORIGIN = 0x60002000, LENGTH = 0x00000400
|
m_interrupts (RX) : ORIGIN = 0x60002000, LENGTH = 0x00000400
|
||||||
m_text (RX) : ORIGIN = 0x60002400, LENGTH = 0x1F7FDC00
|
m_text (RX) : ORIGIN = 0x60002400, LENGTH = 0x1F7FDC00
|
||||||
m_data (RW) : ORIGIN = 0x20000000, LENGTH = 0x00020000
|
|
||||||
|
m_itcm (RW) : ORIGIN = 0x00000000, LENGTH = 0x00020000
|
||||||
|
m_dtcm (RW) : ORIGIN = 0x20000000, LENGTH = 0x00020000
|
||||||
|
m_ocram (RW) : ORIGIN = 0x20200000, LENGTH = 0x00040000
|
||||||
|
|
||||||
|
m_sdram (RW) : ORIGIN = 0x80000000, LENGTH = 0x01E00000
|
||||||
|
m_nocache (RW) : ORIGIN = 0x81E00000, LENGTH = 0x00200000
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Define output sections */
|
/* Define output sections */
|
||||||
SECTIONS
|
SECTIONS
|
||||||
{
|
{
|
||||||
|
.boot_data :
|
||||||
|
{
|
||||||
|
KEEP(*(.bootdata))
|
||||||
|
} > m_boot_data
|
||||||
|
|
||||||
|
.image_vertor_table :
|
||||||
|
{
|
||||||
|
KEEP(*(.ivt))
|
||||||
|
} > m_image_vertor_table
|
||||||
|
|
||||||
/* The startup code goes first into internal RAM */
|
/* The startup code goes first into internal RAM */
|
||||||
.interrupts :
|
.interrupts :
|
||||||
{
|
{
|
||||||
|
@ -87,6 +106,23 @@ SECTIONS
|
||||||
KEEP (*(.init))
|
KEEP (*(.init))
|
||||||
KEEP (*(.fini))
|
KEEP (*(.fini))
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
/* section information for finsh shell */
|
||||||
|
. = ALIGN(4);
|
||||||
|
__fsymtab_start = .;
|
||||||
|
KEEP(*(FSymTab))
|
||||||
|
__fsymtab_end = .;
|
||||||
|
. = ALIGN(4);
|
||||||
|
__vsymtab_start = .;
|
||||||
|
KEEP(*(VSymTab))
|
||||||
|
__vsymtab_end = .;
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
/* section information for initial. */
|
||||||
|
. = ALIGN(4);
|
||||||
|
__rt_init_start = .;
|
||||||
|
KEEP(*(SORT(.rti_fn*)))
|
||||||
|
__rt_init_end = .;
|
||||||
} > m_text
|
} > m_text
|
||||||
|
|
||||||
.ARM.extab :
|
.ARM.extab :
|
||||||
|
@ -173,7 +209,7 @@ SECTIONS
|
||||||
KEEP(*(.jcr*))
|
KEEP(*(.jcr*))
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__data_end__ = .; /* define a global symbol at data end */
|
__data_end__ = .; /* define a global symbol at data end */
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
|
|
||||||
__NDATA_ROM = __DATA_ROM + (__data_end__ - __data_start__);
|
__NDATA_ROM = __DATA_ROM + (__data_end__ - __data_start__);
|
||||||
.ncache.init : AT(__NDATA_ROM)
|
.ncache.init : AT(__NDATA_ROM)
|
||||||
|
@ -182,14 +218,14 @@ SECTIONS
|
||||||
*(NonCacheable.init)
|
*(NonCacheable.init)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__noncachedata_init_end__ = .; /* create a global symbol at initialized ncache data end */
|
__noncachedata_init_end__ = .; /* create a global symbol at initialized ncache data end */
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
. = __noncachedata_init_end__;
|
. = __noncachedata_init_end__;
|
||||||
.ncache :
|
.ncache :
|
||||||
{
|
{
|
||||||
*(NonCacheable)
|
*(NonCacheable)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__noncachedata_end__ = .; /* define a global symbol at ncache data end */
|
__noncachedata_end__ = .; /* define a global symbol at ncache data end */
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
|
|
||||||
__DATA_END = __NDATA_ROM + (__noncachedata_init_end__ - __noncachedata_start__);
|
__DATA_END = __NDATA_ROM + (__noncachedata_init_end__ - __noncachedata_start__);
|
||||||
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
||||||
|
@ -209,32 +245,22 @@ SECTIONS
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__bss_end__ = .;
|
__bss_end__ = .;
|
||||||
__END_BSS = .;
|
__END_BSS = .;
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
|
|
||||||
.heap :
|
|
||||||
{
|
|
||||||
. = ALIGN(8);
|
|
||||||
__end__ = .;
|
|
||||||
PROVIDE(end = .);
|
|
||||||
__HeapBase = .;
|
|
||||||
. += HEAP_SIZE;
|
|
||||||
__HeapLimit = .;
|
|
||||||
__heap_limit = .; /* Add for _sbrk */
|
|
||||||
} > m_data
|
|
||||||
|
|
||||||
.stack :
|
.stack :
|
||||||
{
|
{
|
||||||
. = ALIGN(8);
|
. = ALIGN(8);
|
||||||
|
stack_start = .;
|
||||||
. += STACK_SIZE;
|
. += STACK_SIZE;
|
||||||
} > m_data
|
stack_end = .;
|
||||||
|
heap_start = .;
|
||||||
|
} > m_dtcm
|
||||||
|
|
||||||
/* Initializes stack on the end of block */
|
/* Initializes stack on the end of block */
|
||||||
__StackTop = ORIGIN(m_data) + LENGTH(m_data);
|
__StackTop = stack_end;
|
||||||
__StackLimit = __StackTop - STACK_SIZE;
|
|
||||||
PROVIDE(__stack = __StackTop);
|
PROVIDE(__stack = __StackTop);
|
||||||
|
|
||||||
.ARM.attributes 0 : { *(.ARM.attributes) }
|
.ARM.attributes 0 : { *(.ARM.attributes) }
|
||||||
|
|
||||||
ASSERT(__StackLimit >= __HeapLimit, "region m_data overflowed with stack and heap")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -54,8 +54,14 @@ STACK_SIZE = DEFINED(__stack_size__) ? __stack_size__ : 0x0400;
|
||||||
MEMORY
|
MEMORY
|
||||||
{
|
{
|
||||||
m_interrupts (RX) : ORIGIN = 0x00000000, LENGTH = 0x00000400
|
m_interrupts (RX) : ORIGIN = 0x00000000, LENGTH = 0x00000400
|
||||||
m_text (RX) : ORIGIN = 0x00000400, LENGTH = 0x0001FC00
|
m_text (RX) : ORIGIN = 0x00000400, LENGTH = 0x00020000
|
||||||
m_data (RW) : ORIGIN = 0x20000000, LENGTH = 0x00020000
|
|
||||||
|
/* m_itcm (RW) : ORIGIN = 0x00000000, LENGTH = 0x00020000 */
|
||||||
|
m_dtcm (RW) : ORIGIN = 0x20000000, LENGTH = 0x00020000
|
||||||
|
/* m_ocram (RW) : ORIGIN = 0x20200000, LENGTH = 0x00040000 */
|
||||||
|
|
||||||
|
/* m_sdram (RW) : ORIGIN = 0x80000000, LENGTH = 0x01E00000 */
|
||||||
|
/* m_nocache (RW) : ORIGIN = 0x81E00000, LENGTH = 0x00200000 */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Define output sections */
|
/* Define output sections */
|
||||||
|
@ -87,6 +93,23 @@ SECTIONS
|
||||||
KEEP (*(.init))
|
KEEP (*(.init))
|
||||||
KEEP (*(.fini))
|
KEEP (*(.fini))
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
/* section information for finsh shell */
|
||||||
|
. = ALIGN(4);
|
||||||
|
__fsymtab_start = .;
|
||||||
|
KEEP(*(FSymTab))
|
||||||
|
__fsymtab_end = .;
|
||||||
|
. = ALIGN(4);
|
||||||
|
__vsymtab_start = .;
|
||||||
|
KEEP(*(VSymTab))
|
||||||
|
__vsymtab_end = .;
|
||||||
|
. = ALIGN(4);
|
||||||
|
|
||||||
|
/* section information for initial. */
|
||||||
|
. = ALIGN(4);
|
||||||
|
__rt_init_start = .;
|
||||||
|
KEEP(*(SORT(.rti_fn*)))
|
||||||
|
__rt_init_end = .;
|
||||||
} > m_text
|
} > m_text
|
||||||
|
|
||||||
.ARM.extab :
|
.ARM.extab :
|
||||||
|
@ -173,7 +196,7 @@ SECTIONS
|
||||||
KEEP(*(.jcr*))
|
KEEP(*(.jcr*))
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__data_end__ = .; /* define a global symbol at data end */
|
__data_end__ = .; /* define a global symbol at data end */
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
|
|
||||||
__NDATA_ROM = __DATA_ROM + (__data_end__ - __data_start__);
|
__NDATA_ROM = __DATA_ROM + (__data_end__ - __data_start__);
|
||||||
.ncache.init : AT(__NDATA_ROM)
|
.ncache.init : AT(__NDATA_ROM)
|
||||||
|
@ -182,14 +205,14 @@ SECTIONS
|
||||||
*(NonCacheable.init)
|
*(NonCacheable.init)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__noncachedata_init_end__ = .; /* create a global symbol at initialized ncache data end */
|
__noncachedata_init_end__ = .; /* create a global symbol at initialized ncache data end */
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
. = __noncachedata_init_end__;
|
. = __noncachedata_init_end__;
|
||||||
.ncache :
|
.ncache :
|
||||||
{
|
{
|
||||||
*(NonCacheable)
|
*(NonCacheable)
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__noncachedata_end__ = .; /* define a global symbol at ncache data end */
|
__noncachedata_end__ = .; /* define a global symbol at ncache data end */
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
|
|
||||||
__DATA_END = __NDATA_ROM + (__noncachedata_init_end__ - __noncachedata_start__);
|
__DATA_END = __NDATA_ROM + (__noncachedata_init_end__ - __noncachedata_start__);
|
||||||
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
||||||
|
@ -209,32 +232,21 @@ SECTIONS
|
||||||
. = ALIGN(4);
|
. = ALIGN(4);
|
||||||
__bss_end__ = .;
|
__bss_end__ = .;
|
||||||
__END_BSS = .;
|
__END_BSS = .;
|
||||||
} > m_data
|
} > m_dtcm
|
||||||
|
|
||||||
.heap :
|
|
||||||
{
|
|
||||||
. = ALIGN(8);
|
|
||||||
__end__ = .;
|
|
||||||
PROVIDE(end = .);
|
|
||||||
__HeapBase = .;
|
|
||||||
. += HEAP_SIZE;
|
|
||||||
__HeapLimit = .;
|
|
||||||
__heap_limit = .; /* Add for _sbrk */
|
|
||||||
} > m_data
|
|
||||||
|
|
||||||
.stack :
|
.stack :
|
||||||
{
|
{
|
||||||
. = ALIGN(8);
|
. = ALIGN(8);
|
||||||
|
stack_start = .;
|
||||||
. += STACK_SIZE;
|
. += STACK_SIZE;
|
||||||
} > m_data
|
stack_end = .;
|
||||||
|
heap_start = .;
|
||||||
|
} > m_dtcm
|
||||||
|
|
||||||
/* Initializes stack on the end of block */
|
/* Initializes stack on the end of block */
|
||||||
__StackTop = ORIGIN(m_data) + LENGTH(m_data);
|
__StackTop = stack_end;
|
||||||
__StackLimit = __StackTop - STACK_SIZE;
|
|
||||||
PROVIDE(__stack = __StackTop);
|
PROVIDE(__stack = __StackTop);
|
||||||
|
|
||||||
.ARM.attributes 0 : { *(.ARM.attributes) }
|
.ARM.attributes 0 : { *(.ARM.attributes) }
|
||||||
|
|
||||||
ASSERT(__StackLimit >= __HeapLimit, "region m_data overflowed with stack and heap")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -36,6 +36,10 @@
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Version: GCC for ARM Embedded Processors */
|
/* Version: GCC for ARM Embedded Processors */
|
||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
|
|
||||||
|
#define __STARTUP_INITIALIZE_NONCACHEDATA
|
||||||
|
#define __STARTUP_CLEAR_BSS
|
||||||
|
|
||||||
.syntax unified
|
.syntax unified
|
||||||
.arch armv7-m
|
.arch armv7-m
|
||||||
|
|
||||||
|
|
|
@ -47,14 +47,23 @@
|
||||||
define symbol m_interrupts_start = 0x60002000;
|
define symbol m_interrupts_start = 0x60002000;
|
||||||
define symbol m_interrupts_end = 0x600023FF;
|
define symbol m_interrupts_end = 0x600023FF;
|
||||||
|
|
||||||
define symbol m_text_start = 0x60002400;
|
define symbol m_itcm_start = 0x00000000;
|
||||||
define symbol m_text_end = 0x7F7FFFFF;
|
define symbol m_itcm_end = 0x0001FFFF;
|
||||||
|
|
||||||
define symbol m_data_start = 0x20000000;
|
define symbol m_spiflash_start = 0x60002400;
|
||||||
define symbol m_data_end = 0x2001FFFF;
|
define symbol m_spiflash_end = 0x7F7FFFFF;
|
||||||
|
|
||||||
define symbol m_data2_start = 0x20200000;
|
define symbol m_dtcm_start = 0x20000000;
|
||||||
define symbol m_data2_end = 0x2023FFFF;
|
define symbol m_dtcm_end = 0x2001FFFF;
|
||||||
|
|
||||||
|
define symbol m_ocram_start = 0x20200000;
|
||||||
|
define symbol m_ocram_end = 0x2023FFFF;
|
||||||
|
|
||||||
|
define symbol m_sdram_start = 0x80000000;
|
||||||
|
define symbol m_sdram_end = 0x81DFFFFF;
|
||||||
|
|
||||||
|
define symbol m_ncache_start = 0x81E00000;
|
||||||
|
define symbol m_ncache_end = 0x81FFFFFF;
|
||||||
|
|
||||||
/* Sizes */
|
/* Sizes */
|
||||||
if (isdefinedsymbol(__stack_size__)) {
|
if (isdefinedsymbol(__stack_size__)) {
|
||||||
|
@ -75,11 +84,13 @@ define exported symbol __RAM_VECTOR_TABLE_SIZE = 0x0;
|
||||||
|
|
||||||
define memory mem with size = 4G;
|
define memory mem with size = 4G;
|
||||||
define region TEXT_region = mem:[from m_interrupts_start to m_interrupts_end]
|
define region TEXT_region = mem:[from m_interrupts_start to m_interrupts_end]
|
||||||
| mem:[from m_text_start to m_text_end];
|
| mem:[from m_spiflash_start to m_spiflash_end];
|
||||||
|
|
||||||
define region DATA_region = mem:[from m_data_start to m_data_end-__size_cstack__];
|
define region ITCM_region = mem:[from m_itcm_start to m_itcm_end];
|
||||||
define region DATA2_region = mem:[from m_data2_start to m_data2_end];
|
define region DTCM_region = mem:[from m_dtcm_start to m_dtcm_end];
|
||||||
define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_end];
|
define region OCRAM_region = mem:[from m_ocram_start to m_ocram_end];
|
||||||
|
define region NCACHE_region = mem:[from m_ncache_start to m_ncache_end];
|
||||||
|
define region SDRAM_region = mem:[from m_sdram_start to m_sdram_end];
|
||||||
|
|
||||||
define block CSTACK with alignment = 8, size = __size_cstack__ { };
|
define block CSTACK with alignment = 8, size = __size_cstack__ { };
|
||||||
define block HEAP with alignment = 8, size = __size_heap__ { };
|
define block HEAP with alignment = 8, size = __size_heap__ { };
|
||||||
|
@ -92,10 +103,14 @@ do not initialize { section .noinit };
|
||||||
|
|
||||||
place at address mem: m_interrupts_start { readonly section .intvec };
|
place at address mem: m_interrupts_start { readonly section .intvec };
|
||||||
|
|
||||||
place in TEXT_region { readonly };
|
keep { section FSymTab };
|
||||||
place in DATA_region { block RW };
|
keep { section VSymTab };
|
||||||
place in DATA_region { block ZI };
|
keep { section .rti_fn* };
|
||||||
place in DATA_region { last block HEAP };
|
|
||||||
place in DATA_region { block NCACHE_VAR };
|
place in TEXT_region { readonly };
|
||||||
place in CSTACK_region { block CSTACK };
|
place in DTCM_region { block RW };
|
||||||
|
place in DTCM_region { block ZI };
|
||||||
|
place in DTCM_region { last block HEAP };
|
||||||
|
place in DTCM_region { block CSTACK };
|
||||||
|
place in NCACHE_region { block NCACHE_VAR };
|
||||||
|
|
||||||
|
|
|
@ -116,6 +116,8 @@ void SystemInit (void) {
|
||||||
SCB_EnableDCache();
|
SCB_EnableDCache();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
extern void rt_lowlevel_init(void);
|
||||||
|
rt_lowlevel_init();
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------------
|
/* ----------------------------------------------------------------------------
|
||||||
|
|
|
@ -30,13 +30,13 @@
|
||||||
#include <dfs_file.h>
|
#include <dfs_file.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef RT_USING_DEVICE
|
||||||
|
#include <rtdevice.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <board.h>
|
#include <board.h>
|
||||||
|
|
||||||
RT_USED MPU_Type *mpu = MPU;
|
void dump_clock(void)
|
||||||
RT_USED IOMUXC_GPR_Type *iomuxc_gpr = IOMUXC_GPR;
|
|
||||||
|
|
||||||
|
|
||||||
static void dump_clock(void)
|
|
||||||
{
|
{
|
||||||
rt_kprintf("CPU clock: %d\n", CLOCK_GetFreq(kCLOCK_CpuClk));
|
rt_kprintf("CPU clock: %d\n", CLOCK_GetFreq(kCLOCK_CpuClk));
|
||||||
rt_kprintf("AHB clock : %d\n", CLOCK_GetFreq(kCLOCK_AhbClk));
|
rt_kprintf("AHB clock : %d\n", CLOCK_GetFreq(kCLOCK_AhbClk));
|
||||||
|
@ -63,29 +63,82 @@ static void dump_clock(void)
|
||||||
rt_kprintf("Video PLLCLK : %d\n", CLOCK_GetFreq(kCLOCK_VideoPllClk));
|
rt_kprintf("Video PLLCLK : %d\n", CLOCK_GetFreq(kCLOCK_VideoPllClk));
|
||||||
}
|
}
|
||||||
|
|
||||||
void dump_tcm(void)
|
void dump_cc_info(void)
|
||||||
{
|
{
|
||||||
#define DUMP_REG(__REG) \
|
#if defined(__CC_ARM)
|
||||||
rt_kprintf("%s(%08p): %08x\n", #__REG, &(__REG), __REG)
|
rt_kprintf("using armcc, version: %d\n", __ARMCC_VERSION);
|
||||||
|
#elif defined(__ICCARM__)
|
||||||
|
rt_kprintf("using iccarm, version: %d\n", __VER__);
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
rt_kprintf("using gcc, version: %d.%d\n", __GNUC__, __GNUC_MINOR__);
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
DUMP_REG(IOMUXC_GPR->GPR14);
|
void dump_link_info(void)
|
||||||
DUMP_REG(IOMUXC_GPR->GPR16);
|
{
|
||||||
DUMP_REG(IOMUXC_GPR->GPR17);
|
#if defined(__CC_ARM)
|
||||||
|
|
||||||
|
#elif defined(__ICCARM__)
|
||||||
|
|
||||||
|
#elif defined(__GNUC__)
|
||||||
|
#define DUMP_SYMBOL(__SYM) \
|
||||||
|
extern int __SYM; \
|
||||||
|
rt_kprintf("%s: %p\n", #__SYM, &__SYM)
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__fsymtab_start);
|
||||||
|
DUMP_SYMBOL(__fsymtab_end);
|
||||||
|
DUMP_SYMBOL(__vsymtab_start);
|
||||||
|
DUMP_SYMBOL(__vsymtab_end);
|
||||||
|
DUMP_SYMBOL(__rt_init_start);
|
||||||
|
DUMP_SYMBOL(__rt_init_end);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__exidx_start);
|
||||||
|
DUMP_SYMBOL(__exidx_end);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__etext);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__data_start__);
|
||||||
|
DUMP_SYMBOL(__data_end__);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__noncachedata_start__);
|
||||||
|
DUMP_SYMBOL(__noncachedata_init_end__);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__noncachedata_end__);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(__bss_start__);
|
||||||
|
DUMP_SYMBOL(__bss_end__);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(stack_start);
|
||||||
|
DUMP_SYMBOL(stack_end);
|
||||||
|
|
||||||
|
DUMP_SYMBOL(heap_start);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
int main(void)
|
int main(void)
|
||||||
{
|
{
|
||||||
|
rt_uint32_t result;
|
||||||
//dump_clock();
|
//dump_clock();
|
||||||
//dump_tcm();
|
dump_cc_info();
|
||||||
|
dump_link_info();
|
||||||
|
|
||||||
rt_thread_delay(RT_TICK_PER_SECOND * 2);
|
rt_kprintf("build time: %s %s\n", __DATE__, __TIME__);
|
||||||
|
|
||||||
|
#if defined(RT_USING_DFS) && defined(RT_USING_SDIO)
|
||||||
|
result = mmcsd_wait_cd_changed(RT_TICK_PER_SECOND);
|
||||||
|
if (result == MMCSD_HOST_PLUGED)
|
||||||
|
{
|
||||||
/* mount sd card fat partition 1 as root directory */
|
/* mount sd card fat partition 1 as root directory */
|
||||||
if (dfs_mount("sd0", "/", "elm", 0, 0) == 0)
|
if (dfs_mount("sd0", "/", "elm", 0, 0) == 0)
|
||||||
rt_kprintf("File System initialized!\n");
|
rt_kprintf("File System initialized!\n");
|
||||||
else
|
else
|
||||||
rt_kprintf("File System init failed!\n");
|
rt_kprintf("File System init failed!\n");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rt_kprintf("sdcard init fail or timeout: %d!\n", result);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
while (1)
|
while (1)
|
||||||
{
|
{
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
/*
|
||||||
|
* File : clock.c
|
||||||
|
* This file is part of RT-Thread RTOS
|
||||||
|
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Change Logs:
|
||||||
|
* Date Author Notes
|
||||||
|
* 2017-12-05 Tanek first version
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <rtthread.h>
|
||||||
|
|
||||||
|
static void mem_dump(uint32_t buffer, uint32_t length)
|
||||||
|
{
|
||||||
|
uint32_t *buf = (uint32_t *)buffer;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
for (i = 0; i < length / 4; i++)
|
||||||
|
{
|
||||||
|
rt_kprintf("0x%08X,", buf[i]);
|
||||||
|
|
||||||
|
if (i % 8 == 7)
|
||||||
|
{
|
||||||
|
rt_kprintf("\n");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
rt_kprintf(" ");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef RT_USING_FINSH
|
||||||
|
#include <finsh.h>
|
||||||
|
FINSH_FUNCTION_EXPORT(mem_dump, dump memory);
|
||||||
|
#endif
|
|
@ -1,95 +0,0 @@
|
||||||
/*
|
|
||||||
** ###################################################################
|
|
||||||
** Processor: MIMXRT1052DVL6A
|
|
||||||
** Compiler: IAR ANSI C/C++ Compiler for ARM
|
|
||||||
** Reference manual: i.MX 6RT for ROM
|
|
||||||
** Version: rev. 0.1, 2017-01-10
|
|
||||||
** Build: b170608
|
|
||||||
**
|
|
||||||
** Abstract:
|
|
||||||
** Linker file for the IAR ANSI C/C++ Compiler for ARM
|
|
||||||
**
|
|
||||||
** Copyright 2016 Freescale Semiconductor, Inc.
|
|
||||||
** Copyright 2016-2017 NXP
|
|
||||||
** Redistribution and use in source and binary forms, with or without modification,
|
|
||||||
** are permitted provided that the following conditions are met:
|
|
||||||
**
|
|
||||||
** 1. Redistributions of source code must retain the above copyright notice, this list
|
|
||||||
** of conditions and the following disclaimer.
|
|
||||||
**
|
|
||||||
** 2. Redistributions in binary form must reproduce the above copyright notice, this
|
|
||||||
** list of conditions and the following disclaimer in the documentation and/or
|
|
||||||
** other materials provided with the distribution.
|
|
||||||
**
|
|
||||||
** 3. Neither the name of the copyright holder nor the names of its
|
|
||||||
** contributors may be used to endorse or promote products derived from this
|
|
||||||
** software without specific prior written permission.
|
|
||||||
**
|
|
||||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
||||||
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
|
||||||
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
||||||
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
**
|
|
||||||
** http: www.nxp.com
|
|
||||||
** mail: support@nxp.com
|
|
||||||
**
|
|
||||||
** ###################################################################
|
|
||||||
*/
|
|
||||||
|
|
||||||
define symbol m_interrupts_start = 0x00000000;
|
|
||||||
define symbol m_interrupts_end = 0x000003FF;
|
|
||||||
|
|
||||||
define symbol m_text_start = 0x00000400;
|
|
||||||
define symbol m_text_end = 0x0001FFFF;
|
|
||||||
|
|
||||||
define symbol m_data_start = 0x80020000;
|
|
||||||
define symbol m_data_end = 0x800FFFFF;
|
|
||||||
|
|
||||||
/* Sizes */
|
|
||||||
if (isdefinedsymbol(__stack_size__)) {
|
|
||||||
define symbol __size_cstack__ = __stack_size__;
|
|
||||||
} else {
|
|
||||||
define symbol __size_cstack__ = 0x0400;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (isdefinedsymbol(__heap_size__)) {
|
|
||||||
define symbol __size_heap__ = __heap_size__;
|
|
||||||
} else {
|
|
||||||
define symbol __size_heap__ = 0x0400;
|
|
||||||
}
|
|
||||||
|
|
||||||
define exported symbol __VECTOR_TABLE = m_interrupts_start;
|
|
||||||
define exported symbol __VECTOR_RAM = m_interrupts_start;
|
|
||||||
define exported symbol __RAM_VECTOR_TABLE_SIZE = 0x0;
|
|
||||||
|
|
||||||
define memory mem with size = 4G;
|
|
||||||
define region TEXT_region = mem:[from m_interrupts_start to m_interrupts_end]
|
|
||||||
| mem:[from m_text_start to m_text_end];
|
|
||||||
define region DATA_region = mem:[from m_data_start to m_data_end-__size_cstack__];
|
|
||||||
define region CSTACK_region = mem:[from m_data_end-__size_cstack__+1 to m_data_end];
|
|
||||||
|
|
||||||
define block CSTACK with alignment = 8, size = __size_cstack__ { };
|
|
||||||
define block HEAP with alignment = 8, size = __size_heap__ { };
|
|
||||||
define block RW { readwrite };
|
|
||||||
define block ZI { zi };
|
|
||||||
define block RTT_INIT_FUNC with fixed order { readonly section .rti_fn* };
|
|
||||||
|
|
||||||
initialize by copy { readwrite, section .textrw };
|
|
||||||
do not initialize { section .noinit };
|
|
||||||
|
|
||||||
keep { section FSymTab };
|
|
||||||
keep { section VSymTab };
|
|
||||||
keep { section .rti_fn* };
|
|
||||||
place at address mem: m_interrupts_start { readonly section .intvec };
|
|
||||||
place in TEXT_region { readonly, block RTT_INIT_FUNC };
|
|
||||||
place in DATA_region { block RW };
|
|
||||||
place in DATA_region { block ZI };
|
|
||||||
place in DATA_region { last block HEAP };
|
|
||||||
place in CSTACK_region { block CSTACK };
|
|
||||||
|
|
|
@ -8,6 +8,8 @@ cwd = os.path.join(str(Dir('#')), 'drivers')
|
||||||
src = Split("""
|
src = Split("""
|
||||||
board.c
|
board.c
|
||||||
usart.c
|
usart.c
|
||||||
|
hyper_flash_boot.c
|
||||||
|
drv_sdram.c
|
||||||
""")
|
""")
|
||||||
|
|
||||||
CPPPATH = [cwd]
|
CPPPATH = [cwd]
|
||||||
|
|
|
@ -18,6 +18,8 @@
|
||||||
#include "board.h"
|
#include "board.h"
|
||||||
#include "usart.h"
|
#include "usart.h"
|
||||||
|
|
||||||
|
static struct rt_memheap system_heap;
|
||||||
|
|
||||||
/* ARM PLL configuration for RUN mode */
|
/* ARM PLL configuration for RUN mode */
|
||||||
const clock_arm_pll_config_t armPllConfig = { .loopDivider = 100U };
|
const clock_arm_pll_config_t armPllConfig = { .loopDivider = 100U };
|
||||||
|
|
||||||
|
@ -29,14 +31,14 @@ const clock_usb_pll_config_t usb1PllConfig = { .loopDivider = 0U };
|
||||||
|
|
||||||
static void BOARD_BootClockGate(void)
|
static void BOARD_BootClockGate(void)
|
||||||
{
|
{
|
||||||
/* Disable all unused peripheral clock */
|
// /* Disable all unused peripheral clock */
|
||||||
CCM->CCGR0 = 0x00C0000FU;
|
// CCM->CCGR0 = 0x00C0000FU;
|
||||||
CCM->CCGR1 = 0x30000000U;
|
// CCM->CCGR1 = 0x30000000U;
|
||||||
CCM->CCGR2 = 0x003F0030U;
|
// CCM->CCGR2 = 0x003F0030U;
|
||||||
CCM->CCGR3 = 0xF0000330U;
|
// CCM->CCGR3 = 0xF0000330U;
|
||||||
CCM->CCGR4 = 0x0000FF3CU;
|
// CCM->CCGR4 = 0x0000FF3CU;
|
||||||
CCM->CCGR5 = 0xF000330FU;
|
// CCM->CCGR5 = 0xF000330FU;
|
||||||
CCM->CCGR6 = 0x00FC0300U;
|
// CCM->CCGR6 = 0x00FC0300U;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void BOARD_BootClockRUN(void)
|
static void BOARD_BootClockRUN(void)
|
||||||
|
@ -83,6 +85,64 @@ static void BOARD_BootClockRUN(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* MPU configuration. */
|
||||||
|
static void BOARD_ConfigMPU(void)
|
||||||
|
{
|
||||||
|
/* Disable I cache and D cache */
|
||||||
|
SCB_DisableICache();
|
||||||
|
SCB_DisableDCache();
|
||||||
|
|
||||||
|
/* Disable MPU */
|
||||||
|
ARM_MPU_Disable();
|
||||||
|
|
||||||
|
/* Region 0 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(0, 0xC0000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 2, 0, 0, 0, 0, ARM_MPU_REGION_SIZE_512MB);
|
||||||
|
|
||||||
|
/* Region 1 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(1, 0x80000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 2, 0, 0, 0, 0, ARM_MPU_REGION_SIZE_1GB);
|
||||||
|
|
||||||
|
/* Region 2 setting */
|
||||||
|
// spi flash: normal type, cacheable, no bufferable, no shareable
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(2, 0x60000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 0, 0, ARM_MPU_REGION_SIZE_512MB);
|
||||||
|
|
||||||
|
/* Region 3 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(3, 0x00000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 2, 0, 0, 0, 0, ARM_MPU_REGION_SIZE_1GB);
|
||||||
|
|
||||||
|
/* Region 4 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(4, 0x00000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_128KB);
|
||||||
|
|
||||||
|
/* Region 5 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(5, 0x20000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_128KB);
|
||||||
|
|
||||||
|
/* Region 6 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(6, 0x20200000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_256KB);
|
||||||
|
|
||||||
|
#if defined(SDRAM_MPU_INIT)
|
||||||
|
/* Region 7 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(7, 0x80000000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 0, 0, 1, 1, 0, ARM_MPU_REGION_SIZE_32MB);
|
||||||
|
|
||||||
|
/* Region 8 setting */
|
||||||
|
MPU->RBAR = ARM_MPU_RBAR(8, 0x81E00000U);
|
||||||
|
MPU->RASR = ARM_MPU_RASR(0, ARM_MPU_AP_FULL, 1, 1, 0, 0, 0, ARM_MPU_REGION_SIZE_2MB);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Enable MPU */
|
||||||
|
ARM_MPU_Enable(MPU_CTRL_PRIVDEFENA_Msk);
|
||||||
|
|
||||||
|
/* Enable I cache and D cache */
|
||||||
|
SCB_EnableDCache();
|
||||||
|
SCB_EnableICache();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This is the timer interrupt service routine.
|
* This is the timer interrupt service routine.
|
||||||
*
|
*
|
||||||
|
@ -98,6 +158,14 @@ void SysTick_Handler(void)
|
||||||
rt_interrupt_leave();
|
rt_interrupt_leave();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void rt_lowlevel_init(void)
|
||||||
|
{
|
||||||
|
BOARD_ConfigMPU();
|
||||||
|
|
||||||
|
extern int imxrt_sdram_init(void);
|
||||||
|
imxrt_sdram_init();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This function will initial LPC8XX board.
|
* This function will initial LPC8XX board.
|
||||||
*/
|
*/
|
||||||
|
@ -105,10 +173,8 @@ void rt_hw_board_init()
|
||||||
{
|
{
|
||||||
BOARD_BootClockRUN();
|
BOARD_BootClockRUN();
|
||||||
|
|
||||||
SysTick_Config(SystemCoreClock / RT_TICK_PER_SECOND);
|
|
||||||
|
|
||||||
extern int imxrt_hw_usart_init(void);
|
SysTick_Config(SystemCoreClock / RT_TICK_PER_SECOND);
|
||||||
imxrt_hw_usart_init();
|
|
||||||
|
|
||||||
#ifdef RT_USING_COMPONENTS_INIT
|
#ifdef RT_USING_COMPONENTS_INIT
|
||||||
rt_components_board_init();
|
rt_components_board_init();
|
||||||
|
@ -119,7 +185,11 @@ void rt_hw_board_init()
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef RT_USING_HEAP
|
#ifdef RT_USING_HEAP
|
||||||
rt_system_heap_init((void*)HEAP_BEGIN, (void*)HEAP_END);
|
rt_kprintf("sdram heap, begin: 0x%p, end: 0x%p\n", SDRAM_BEGIN, SDRAM_END);
|
||||||
|
rt_system_heap_init((void*)SDRAM_BEGIN, (void*)SDRAM_END);
|
||||||
|
|
||||||
|
rt_kprintf("sram heap, begin: 0x%p, end: 0x%p\n", HEAP_BEGIN, HEAP_END);
|
||||||
|
rt_memheap_init(&system_heap, "system", (void *)HEAP_BEGIN, HEAP_SIZE);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,18 +21,26 @@
|
||||||
#include <fsl_iomuxc.h>
|
#include <fsl_iomuxc.h>
|
||||||
|
|
||||||
#ifdef __CC_ARM
|
#ifdef __CC_ARM
|
||||||
extern int Image$$RW_m_data$$ZI$$Limit;
|
extern int Image$$ARM_LIB_STACK$$ZI$$Limit;
|
||||||
#define HEAP_BEGIN (&Image$$RW_m_data$$ZI$$Limit)
|
#define HEAP_BEGIN (&Image$$ARM_LIB_STACK$$ZI$$Limit)
|
||||||
|
#define HEAP_END (0x2001FFFFu)
|
||||||
|
|
||||||
#elif __ICCARM__
|
#elif __ICCARM__
|
||||||
#pragma section="HEAP"
|
#pragma section="HEAP"
|
||||||
#define HEAP_BEGIN (__segment_end("HEAP"))
|
#define HEAP_BEGIN (__segment_end("HEAP"))
|
||||||
|
#define HEAP_END (0x2001FFFFu)
|
||||||
|
|
||||||
#else
|
#else
|
||||||
extern int __data_end__;
|
extern int heap_start;
|
||||||
#define HEAP_BEGIN (&__data_end__)
|
#define HEAP_BEGIN (&heap_start)
|
||||||
|
#define HEAP_END (0x2001FFFFu)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define HEAP_END 0x81DFFFFF
|
#define HEAP_SIZE ((uint32_t)HEAP_END - (uint32_t)HEAP_BEGIN)
|
||||||
//#define HEAP_END 0x2001FFFF
|
|
||||||
|
#define SDRAM_MPU_INIT
|
||||||
|
#define SDRAM_BEGIN (0x80000000u)
|
||||||
|
#define SDRAM_END (0x81E00000u)
|
||||||
|
|
||||||
void rt_hw_board_init(void);
|
void rt_hw_board_init(void);
|
||||||
|
|
||||||
|
|
|
@ -36,16 +36,17 @@
|
||||||
|
|
||||||
#define PHY_ADDRESS 0x02u
|
#define PHY_ADDRESS 0x02u
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* debug option */
|
/* debug option */
|
||||||
//#define DEBUG
|
|
||||||
//#define ETH_RX_DUMP
|
//#define ETH_RX_DUMP
|
||||||
//#define ETH_TX_DUMP
|
//#define ETH_TX_DUMP
|
||||||
|
|
||||||
#ifdef DEBUG
|
#define DBG_ENABLE
|
||||||
#define ETH_PRINTF rt_kprintf
|
#define DBG_SECTION_NAME "[ETH]"
|
||||||
#else
|
#define DBG_COLOR
|
||||||
#define ETH_PRINTF(...)
|
#define DBG_LEVEL DBG_INFO
|
||||||
#endif
|
#include <rtdbg.h>
|
||||||
|
|
||||||
#define MAX_ADDR_LEN 6
|
#define MAX_ADDR_LEN 6
|
||||||
|
|
||||||
|
@ -380,13 +381,11 @@ static void _enet_config(void)
|
||||||
|
|
||||||
/* Set SMI to get PHY link status. */
|
/* Set SMI to get PHY link status. */
|
||||||
sysClock = CLOCK_GetFreq(kCLOCK_AhbClk);
|
sysClock = CLOCK_GetFreq(kCLOCK_AhbClk);
|
||||||
status = PHY_Init(imxrt_eth_device.enet_base, PHY_ADDRESS, sysClock);
|
|
||||||
while (status != kStatus_Success)
|
|
||||||
{
|
|
||||||
ETH_PRINTF("\r\nPHY Auto-negotiation failed. Please check the cable connection and link partner setting.\r\n");
|
|
||||||
status = PHY_Init(imxrt_eth_device.enet_base, PHY_ADDRESS, sysClock);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
status = PHY_Init(imxrt_eth_device.enet_base, PHY_ADDRESS, sysClock);
|
||||||
|
|
||||||
|
if (status == kStatus_Success)
|
||||||
|
{
|
||||||
PHY_GetLinkStatus(imxrt_eth_device.enet_base, PHY_ADDRESS, &link);
|
PHY_GetLinkStatus(imxrt_eth_device.enet_base, PHY_ADDRESS, &link);
|
||||||
if (link)
|
if (link)
|
||||||
{
|
{
|
||||||
|
@ -397,6 +396,18 @@ static void _enet_config(void)
|
||||||
config.miiDuplex = (enet_mii_duplex_t)duplex;
|
config.miiDuplex = (enet_mii_duplex_t)duplex;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
dbg_log(DBG_LOG, "PHY Auto-negotiation success.\n");
|
||||||
|
eth_device_linkchange(&imxrt_eth_device.parent, RT_TRUE);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
config.miiSpeed = kENET_MiiSpeed10M;
|
||||||
|
config.miiDuplex = kENET_MiiHalfDuplex;
|
||||||
|
|
||||||
|
dbg_log(DBG_WARNING, "PHY Auto-negotiation failed. Please check the cable connection and link partner setting.\n");
|
||||||
|
eth_device_linkchange(&imxrt_eth_device.parent, RT_FALSE);
|
||||||
|
}
|
||||||
|
|
||||||
ENET_Init(imxrt_eth_device.enet_base, &imxrt_eth_device.enet_handle, &config, &buffConfig, &imxrt_eth_device.dev_addr[0], sysClock);
|
ENET_Init(imxrt_eth_device.enet_base, &imxrt_eth_device.enet_handle, &config, &buffConfig, &imxrt_eth_device.dev_addr[0], sysClock);
|
||||||
ENET_SetCallback(&imxrt_eth_device.enet_handle, _enet_callback, &imxrt_eth_device);
|
ENET_SetCallback(&imxrt_eth_device.enet_handle, _enet_callback, &imxrt_eth_device);
|
||||||
ENET_ActiveRead(imxrt_eth_device.enet_base);
|
ENET_ActiveRead(imxrt_eth_device.enet_base);
|
||||||
|
@ -416,33 +427,33 @@ static rt_err_t rt_imxrt_eth_init(rt_device_t dev)
|
||||||
|
|
||||||
static rt_err_t rt_imxrt_eth_open(rt_device_t dev, rt_uint16_t oflag)
|
static rt_err_t rt_imxrt_eth_open(rt_device_t dev, rt_uint16_t oflag)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("rt_imxrt_eth_open...\n");
|
dbg_log(DBG_LOG, "rt_imxrt_eth_open...\n");
|
||||||
return RT_EOK;
|
return RT_EOK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static rt_err_t rt_imxrt_eth_close(rt_device_t dev)
|
static rt_err_t rt_imxrt_eth_close(rt_device_t dev)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("rt_imxrt_eth_close...\n");
|
dbg_log(DBG_LOG, "rt_imxrt_eth_close...\n");
|
||||||
return RT_EOK;
|
return RT_EOK;
|
||||||
}
|
}
|
||||||
|
|
||||||
static rt_size_t rt_imxrt_eth_read(rt_device_t dev, rt_off_t pos, void* buffer, rt_size_t size)
|
static rt_size_t rt_imxrt_eth_read(rt_device_t dev, rt_off_t pos, void* buffer, rt_size_t size)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("rt_imxrt_eth_read...\n");
|
dbg_log(DBG_LOG, "rt_imxrt_eth_read...\n");
|
||||||
rt_set_errno(-RT_ENOSYS);
|
rt_set_errno(-RT_ENOSYS);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static rt_size_t rt_imxrt_eth_write (rt_device_t dev, rt_off_t pos, const void* buffer, rt_size_t size)
|
static rt_size_t rt_imxrt_eth_write (rt_device_t dev, rt_off_t pos, const void* buffer, rt_size_t size)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("rt_imxrt_eth_write...\n");
|
dbg_log(DBG_LOG, "rt_imxrt_eth_write...\n");
|
||||||
rt_set_errno(-RT_ENOSYS);
|
rt_set_errno(-RT_ENOSYS);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static rt_err_t rt_imxrt_eth_control(rt_device_t dev, int cmd, void *args)
|
static rt_err_t rt_imxrt_eth_control(rt_device_t dev, int cmd, void *args)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("rt_imxrt_eth_control...\n");
|
dbg_log(DBG_LOG, "rt_imxrt_eth_control...\n");
|
||||||
switch(cmd)
|
switch(cmd)
|
||||||
{
|
{
|
||||||
case NIOCTL_GADDR:
|
case NIOCTL_GADDR:
|
||||||
|
@ -468,7 +479,7 @@ rt_err_t rt_imxrt_eth_tx( rt_device_t dev, struct pbuf* p)
|
||||||
RT_ASSERT(p != NULL);
|
RT_ASSERT(p != NULL);
|
||||||
RT_ASSERT(enet_handle != RT_NULL);
|
RT_ASSERT(enet_handle != RT_NULL);
|
||||||
|
|
||||||
ETH_PRINTF("rt_imxrt_eth_tx: %d\n", p->len);
|
dbg_log(DBG_LOG, "rt_imxrt_eth_tx: %d\n", p->len);
|
||||||
|
|
||||||
#ifdef ETH_TX_DUMP
|
#ifdef ETH_TX_DUMP
|
||||||
{
|
{
|
||||||
|
@ -477,11 +488,11 @@ rt_err_t rt_imxrt_eth_tx( rt_device_t dev, struct pbuf* p)
|
||||||
buf = (uint8_t *)p->payload;
|
buf = (uint8_t *)p->payload;
|
||||||
for (i = 0; i < p->len; i++)
|
for (i = 0; i < p->len; i++)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("%02X ", buf[i]);
|
dbg_log(DBG_LOG, "%02X ", buf[i]);
|
||||||
if (i % 16 == 15)
|
if (i % 16 == 15)
|
||||||
ETH_PRINTF("\n");
|
dbg_log(DBG_LOG, "\n");
|
||||||
}
|
}
|
||||||
ETH_PRINTF("\n");
|
dbg_log(DBG_LOG, "\n");
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -532,28 +543,28 @@ struct pbuf *rt_imxrt_eth_rx(rt_device_t dev)
|
||||||
buf = (uint8_t *)p->payload;
|
buf = (uint8_t *)p->payload;
|
||||||
for (i = 0; i < p->len; i++)
|
for (i = 0; i < p->len; i++)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("%02X ", buf[i]);
|
dbg_log(DBG_LOG, "%02X ", buf[i]);
|
||||||
if (i % 16 == 15)
|
if (i % 16 == 15)
|
||||||
ETH_PRINTF("\n");
|
dbg_log(DBG_LOG, "\n");
|
||||||
}
|
}
|
||||||
ETH_PRINTF("\n");
|
dbg_log(DBG_LOG, "\n");
|
||||||
#endif
|
#endif
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ETH_PRINTF(" A frame read failed\n");
|
dbg_log(DBG_LOG, " A frame read failed\n");
|
||||||
pbuf_free(p);
|
pbuf_free(p);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ETH_PRINTF(" pbuf_alloc faild\n");
|
dbg_log(DBG_LOG, " pbuf_alloc faild\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (status == kStatus_ENET_RxFrameError)
|
else if (status == kStatus_ENET_RxFrameError)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("ENET_GetRxFrameSize: kStatus_ENET_RxFrameError\n");
|
dbg_log(DBG_WARNING, "ENET_GetRxFrameSize: kStatus_ENET_RxFrameError\n");
|
||||||
/* Update the received buffer when error happened. */
|
/* Update the received buffer when error happened. */
|
||||||
/* Get the error information of the received g_frame. */
|
/* Get the error information of the received g_frame. */
|
||||||
ENET_GetRxErrBeforeReadFrame(enet_handle, error_statistic);
|
ENET_GetRxErrBeforeReadFrame(enet_handle, error_statistic);
|
||||||
|
@ -591,20 +602,20 @@ static int rt_hw_imxrt_eth_init(void)
|
||||||
imxrt_eth_device.parent.eth_rx = rt_imxrt_eth_rx;
|
imxrt_eth_device.parent.eth_rx = rt_imxrt_eth_rx;
|
||||||
imxrt_eth_device.parent.eth_tx = rt_imxrt_eth_tx;
|
imxrt_eth_device.parent.eth_tx = rt_imxrt_eth_tx;
|
||||||
|
|
||||||
ETH_PRINTF("sem init: tx_wait\r\n");
|
dbg_log(DBG_LOG, "sem init: tx_wait\r\n");
|
||||||
/* init tx semaphore */
|
/* init tx semaphore */
|
||||||
rt_sem_init(&imxrt_eth_device.tx_wait, "tx_wait", 0, RT_IPC_FLAG_FIFO);
|
rt_sem_init(&imxrt_eth_device.tx_wait, "tx_wait", 0, RT_IPC_FLAG_FIFO);
|
||||||
|
|
||||||
/* register eth device */
|
/* register eth device */
|
||||||
ETH_PRINTF("eth_device_init start\r\n");
|
dbg_log(DBG_LOG, "eth_device_init start\r\n");
|
||||||
state = eth_device_init(&(imxrt_eth_device.parent), "e0");
|
state = eth_device_init(&(imxrt_eth_device.parent), "e0");
|
||||||
if (RT_EOK == state)
|
if (RT_EOK == state)
|
||||||
{
|
{
|
||||||
ETH_PRINTF("eth_device_init success\r\n");
|
dbg_log(DBG_LOG, "eth_device_init success\r\n");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ETH_PRINTF("eth_device_init faild: %d\r\n", state);
|
dbg_log(DBG_LOG, "eth_device_init faild: %d\r\n", state);
|
||||||
}
|
}
|
||||||
return state;
|
return state;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,195 @@
|
||||||
|
/*
|
||||||
|
* File : board.c
|
||||||
|
* This file is part of RT-Thread RTOS
|
||||||
|
* COPYRIGHT (C) 2009 RT-Thread Develop Team
|
||||||
|
*
|
||||||
|
* The license and distribution terms for this file may be
|
||||||
|
* found in the file LICENSE in this distribution or at
|
||||||
|
* http://www.rt-thread.org/license/LICENSE
|
||||||
|
*
|
||||||
|
* Change Logs:
|
||||||
|
* Date Author Notes
|
||||||
|
* 2017-12-04 Tanek first implementation
|
||||||
|
*/
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <rthw.h>
|
||||||
|
#include <rtthread.h>
|
||||||
|
|
||||||
|
static uint32_t _RDWORD(uint32_t address)
|
||||||
|
{
|
||||||
|
return *((uint32_t *)address);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void _WDWORD(uint32_t address, uint32_t value)
|
||||||
|
{
|
||||||
|
*((uint32_t *)address) = value;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void SDRAM_WaitIpCmdDone(void)
|
||||||
|
{
|
||||||
|
unsigned long reg;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
reg = _RDWORD(0x402F003C);
|
||||||
|
}while((reg & 0x3) == 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void _clock_init(void)
|
||||||
|
{
|
||||||
|
// Enable all clocks
|
||||||
|
_WDWORD(0x400FC068,0xffffffff);
|
||||||
|
_WDWORD(0x400FC06C,0xffffffff);
|
||||||
|
_WDWORD(0x400FC070,0xffffffff);
|
||||||
|
_WDWORD(0x400FC074,0xffffffff);
|
||||||
|
_WDWORD(0x400FC078,0xffffffff);
|
||||||
|
_WDWORD(0x400FC07C,0xffffffff);
|
||||||
|
_WDWORD(0x400FC080,0xffffffff);
|
||||||
|
|
||||||
|
_WDWORD(0x400D8030,0x00002001);
|
||||||
|
_WDWORD(0x400D8100,0x001d0000);
|
||||||
|
_WDWORD(0x400FC014,0x00010D40);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void _sdr_Init(void)
|
||||||
|
{
|
||||||
|
// Config IOMUX
|
||||||
|
_WDWORD(0x401F8014, 0x00000000);
|
||||||
|
_WDWORD(0x401F8018, 0x00000000);
|
||||||
|
_WDWORD(0x401F801C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8020, 0x00000000);
|
||||||
|
_WDWORD(0x401F8024, 0x00000000);
|
||||||
|
_WDWORD(0x401F8028, 0x00000000);
|
||||||
|
_WDWORD(0x401F802C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8030, 0x00000000);
|
||||||
|
_WDWORD(0x401F8034, 0x00000000);
|
||||||
|
_WDWORD(0x401F8038, 0x00000000);
|
||||||
|
_WDWORD(0x401F803C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8040, 0x00000000);
|
||||||
|
_WDWORD(0x401F8044, 0x00000000);
|
||||||
|
_WDWORD(0x401F8048, 0x00000000);
|
||||||
|
_WDWORD(0x401F804C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8050, 0x00000000);
|
||||||
|
_WDWORD(0x401F8054, 0x00000000);
|
||||||
|
_WDWORD(0x401F8058, 0x00000000);
|
||||||
|
_WDWORD(0x401F805C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8060, 0x00000000);
|
||||||
|
_WDWORD(0x401F8064, 0x00000000);
|
||||||
|
_WDWORD(0x401F8068, 0x00000000);
|
||||||
|
_WDWORD(0x401F806C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8070, 0x00000000);
|
||||||
|
_WDWORD(0x401F8074, 0x00000000);
|
||||||
|
_WDWORD(0x401F8078, 0x00000000);
|
||||||
|
_WDWORD(0x401F807C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8080, 0x00000000);
|
||||||
|
_WDWORD(0x401F8084, 0x00000000);
|
||||||
|
_WDWORD(0x401F8088, 0x00000000);
|
||||||
|
_WDWORD(0x401F808C, 0x00000000);
|
||||||
|
_WDWORD(0x401F8090, 0x00000000);
|
||||||
|
_WDWORD(0x401F8094, 0x00000000);
|
||||||
|
_WDWORD(0x401F8098, 0x00000000);
|
||||||
|
_WDWORD(0x401F809C, 0x00000000);
|
||||||
|
_WDWORD(0x401F80A0, 0x00000000);
|
||||||
|
_WDWORD(0x401F80A4, 0x00000000);
|
||||||
|
_WDWORD(0x401F80A8, 0x00000000);
|
||||||
|
_WDWORD(0x401F80AC, 0x00000000);
|
||||||
|
_WDWORD(0x401F80B0, 0x00000010); // EMC_39, DQS PIN, enable SION
|
||||||
|
_WDWORD(0x401F80B4, 0x00000000);
|
||||||
|
_WDWORD(0x401F80B8, 0x00000000);
|
||||||
|
|
||||||
|
// PAD ctrl
|
||||||
|
// drive strength = 0x7 to increase drive strength
|
||||||
|
// otherwise the data7 bit may fail.
|
||||||
|
_WDWORD(0x401F8204, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8208, 0x000110F9);
|
||||||
|
_WDWORD(0x401F820C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8210, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8214, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8218, 0x000110F9);
|
||||||
|
_WDWORD(0x401F821C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8220, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8224, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8228, 0x000110F9);
|
||||||
|
_WDWORD(0x401F822C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8230, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8234, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8238, 0x000110F9);
|
||||||
|
_WDWORD(0x401F823C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8240, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8244, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8248, 0x000110F9);
|
||||||
|
_WDWORD(0x401F824C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8250, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8254, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8258, 0x000110F9);
|
||||||
|
_WDWORD(0x401F825C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8260, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8264, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8268, 0x000110F9);
|
||||||
|
_WDWORD(0x401F826C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8270, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8274, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8278, 0x000110F9);
|
||||||
|
_WDWORD(0x401F827C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8280, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8284, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8288, 0x000110F9);
|
||||||
|
_WDWORD(0x401F828C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8290, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8294, 0x000110F9);
|
||||||
|
_WDWORD(0x401F8298, 0x000110F9);
|
||||||
|
_WDWORD(0x401F829C, 0x000110F9);
|
||||||
|
_WDWORD(0x401F82A0, 0x000110F9);
|
||||||
|
_WDWORD(0x401F82A4, 0x000110F9);
|
||||||
|
_WDWORD(0x401F82A8, 0x000110F9);
|
||||||
|
|
||||||
|
// Config SDR Controller Registers/
|
||||||
|
_WDWORD(0x402F0000,0x10000004); // MCR
|
||||||
|
_WDWORD(0x402F0008,0x00030524); // BMCR0
|
||||||
|
_WDWORD(0x402F000C,0x06030524); // BMCR1
|
||||||
|
_WDWORD(0x402F0010,0x8000001B); // BR0, 32MB
|
||||||
|
_WDWORD(0x402F0014,0x8200001B); // BR1, 32MB
|
||||||
|
_WDWORD(0x402F0018,0x8400001B); // BR2, 32MB
|
||||||
|
_WDWORD(0x402F001C,0x8600001B); // BR3, 32MB
|
||||||
|
_WDWORD(0x402F0020,0x90000021); // BR4,
|
||||||
|
_WDWORD(0x402F0024,0xA0000019); // BR5,
|
||||||
|
_WDWORD(0x402F0028,0xA8000017); // BR6,
|
||||||
|
_WDWORD(0x402F002C,0xA900001B); // BR7,
|
||||||
|
_WDWORD(0x402F0030,0x00000021); // BR8,
|
||||||
|
_WDWORD(0x402F0004,0x000079A8); //IOCR,SEMC_CCSX0 as NOR CE, SEMC_CSX1 as PSRAM CE, SEMC_CSX2 as NAND CE, SEMC_CSX3 as DBI CE.
|
||||||
|
|
||||||
|
// _WDWORD(0x402F0004,0x00000008); // IOCR, SEMC_CCSX0 as SDRAM_CS1
|
||||||
|
_WDWORD(0x402F0040,0x00000F31); // SDRAMCR0
|
||||||
|
_WDWORD(0x402F0044,0x00652922); // SDRAMCR1
|
||||||
|
_WDWORD(0x402F0048,0x00010920); // SDRAMCR2
|
||||||
|
_WDWORD(0x402F004C,0x50210A08); // SDRAMCR3
|
||||||
|
|
||||||
|
_WDWORD(0x402F0080,0x00000021); // DBICR0
|
||||||
|
_WDWORD(0x402F0084,0x00888888); // DBICR1
|
||||||
|
_WDWORD(0x402F0094,0x00000002); // IPCR1
|
||||||
|
_WDWORD(0x402F0098,0x00000000); // IPCR2
|
||||||
|
|
||||||
|
_WDWORD(0x402F0090,0x80000000); // IPCR0
|
||||||
|
_WDWORD(0x402F009C,0xA55A000F); // IPCMD, SD_CC_IPREA
|
||||||
|
SDRAM_WaitIpCmdDone();
|
||||||
|
_WDWORD(0x402F0090,0x80000000); // IPCR0
|
||||||
|
_WDWORD(0x402F009C,0xA55A000C); // SD_CC_IAF
|
||||||
|
SDRAM_WaitIpCmdDone();
|
||||||
|
_WDWORD(0x402F0090,0x80000000); // IPCR0
|
||||||
|
_WDWORD(0x402F009C,0xA55A000C); // SD_CC_IAF
|
||||||
|
SDRAM_WaitIpCmdDone();
|
||||||
|
_WDWORD(0x402F00A0,0x00000033); // IPTXDAT
|
||||||
|
_WDWORD(0x402F0090,0x80000000); // IPCR0
|
||||||
|
_WDWORD(0x402F009C,0xA55A000A); // SD_CC_IMS
|
||||||
|
SDRAM_WaitIpCmdDone();
|
||||||
|
_WDWORD(0x402F004C,0x50210A09 ); // enable sdram self refresh again after initialization done.
|
||||||
|
}
|
||||||
|
|
||||||
|
int imxrt_sdram_init(void)
|
||||||
|
{
|
||||||
|
_clock_init();
|
||||||
|
_sdr_Init();
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*@}*/
|
|
@ -29,12 +29,13 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "fsl_phy.h"
|
#include "fsl_phy.h"
|
||||||
|
#include <rtthread.h>
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Definitions
|
* Definitions
|
||||||
******************************************************************************/
|
******************************************************************************/
|
||||||
|
|
||||||
/*! @brief Defines the timeout macro. */
|
/*! @brief Defines the timeout macro. */
|
||||||
#define PHY_TIMEOUT_COUNT 0x3FFFFFFU
|
#define PHY_TIMEOUT_COUNT 0xFFFFU
|
||||||
|
|
||||||
/*******************************************************************************
|
/*******************************************************************************
|
||||||
* Prototypes
|
* Prototypes
|
||||||
|
@ -90,7 +91,7 @@ status_t PHY_Init(ENET_Type *base, uint32_t phyAddr, uint32_t srcClock_Hz)
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Reset PHY. */
|
/* Reset PHY. */
|
||||||
counter = PHY_TIMEOUT_COUNT;
|
counter = 6;
|
||||||
result = PHY_Write(base, phyAddr, PHY_BASICCONTROL_REG, PHY_BCTL_RESET_MASK);
|
result = PHY_Write(base, phyAddr, PHY_BASICCONTROL_REG, PHY_BCTL_RESET_MASK);
|
||||||
if (result == kStatus_Success)
|
if (result == kStatus_Success)
|
||||||
{
|
{
|
||||||
|
@ -137,6 +138,9 @@ status_t PHY_Init(ENET_Type *base, uint32_t phyAddr, uint32_t srcClock_Hz)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
rt_kprintf("[PHY] wait autonegotiation complete...\n");
|
||||||
|
rt_thread_delay(RT_TICK_PER_SECOND);
|
||||||
|
|
||||||
if (!counter)
|
if (!counter)
|
||||||
{
|
{
|
||||||
return kStatus_PHY_AutoNegotiateFail;
|
return kStatus_PHY_AutoNegotiateFail;
|
||||||
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
/*
|
||||||
|
* File : clock.c
|
||||||
|
* This file is part of RT-Thread RTOS
|
||||||
|
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; either version 2 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program; if not, write to the Free Software Foundation, Inc.,
|
||||||
|
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||||
|
*
|
||||||
|
* Change Logs:
|
||||||
|
* Date Author Notes
|
||||||
|
* 2017-12-05 Tanek first version
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <rtthread.h>
|
||||||
|
|
||||||
|
// enter serial download mode, and run command:
|
||||||
|
// finsh /> mem_dump(0x60000000, 512)
|
||||||
|
#if defined (__ICCARM__ )
|
||||||
|
RT_USED static const uint32_t boot_data[] @(0x60000000u) =
|
||||||
|
#elif defined ( __GNUC__ )
|
||||||
|
RT_USED static const uint32_t boot_data[] __attribute__((section (".bootdata"))) =
|
||||||
|
#elif defined ( __CC_ARM )
|
||||||
|
RT_USED static const uint32_t boot_data[] __attribute__((at(0x60000000u))) =
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
0x42464346, 0x56010400, 0x00000000, 0x03030303, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000059, 0x01080800, 0x00000000, 0x00000000, 0x04000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x0000000F, 0x0001000F,
|
||||||
|
0x8B1887A0, 0xA7048F10, 0x00000000, 0x00000000, 0x87008700, 0x87AA8700, 0x87058700, 0x87708700,
|
||||||
|
0x8B1887A0, 0xB70B8F10, 0x0000A704, 0x00000000, 0x87008700, 0x87AA8700, 0x87058700, 0x87AA8700,
|
||||||
|
0x87008700, 0x87558700, 0x87028700, 0x87558700, 0x87008700, 0x87AA8700, 0x87058700, 0x87808700,
|
||||||
|
0x87008700, 0x87AA8700, 0x87058700, 0x87AA8700, 0x87008700, 0x87558700, 0x87028700, 0x87558700,
|
||||||
|
0x8B188700, 0x87008F10, 0x00008730, 0x00000000, 0x87008700, 0x87AA8700, 0x87058700, 0x87A08700,
|
||||||
|
0x8B188700, 0xA3808F10, 0x00000000, 0x00000000, 0x87008700, 0x87AA8700, 0x87058700, 0x87808700,
|
||||||
|
0x87008700, 0x87AA8700, 0x87058700, 0x87AA8700, 0x87008700, 0x87558700, 0x87028700, 0x87558700,
|
||||||
|
0x87008700, 0x87AA8700, 0x87058700, 0x87108700, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000102, 0x00000302, 0x00000504, 0x00000902, 0x00000B04, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000200, 0x00040000, 0x00000008, 0x00000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
};
|
||||||
|
|
||||||
|
// finsh /> mem_dump(0x60001000, 16)
|
||||||
|
#if defined (__ICCARM__ )
|
||||||
|
RT_USED static const uint32_t image_vector_table[] @(0x60001000u) =
|
||||||
|
#elif defined ( __GNUC__ )
|
||||||
|
RT_USED static const uint32_t image_vector_table[] __attribute__((section (".ivt"))) =
|
||||||
|
#elif defined ( __CC_ARM )
|
||||||
|
RT_USED static const uint32_t image_vector_table[] __attribute__((at(0x60001000u))) =
|
||||||
|
#endif
|
||||||
|
{
|
||||||
|
0x412000D1, 0x60002000, 0x00000000, 0x00000000, 0x60001020, 0x60001000, 0x00000000, 0x00000000,
|
||||||
|
0x60000000, 0x00800000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
|
||||||
|
};
|
|
@ -350,7 +350,6 @@ int imxrt_hw_usart_init(void)
|
||||||
struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT;
|
struct serial_configure config = RT_SERIAL_CONFIG_DEFAULT;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
|
|
||||||
for (i = 0; i < sizeof(uarts) / sizeof(uarts[0]); i++)
|
for (i = 0; i < sizeof(uarts) / sizeof(uarts[0]); i++)
|
||||||
{
|
{
|
||||||
uarts[i].serial->ops = &imxrt_uart_ops;
|
uarts[i].serial->ops = &imxrt_uart_ops;
|
||||||
|
|
|
@ -1,259 +0,0 @@
|
||||||
/*
|
|
||||||
** ###################################################################
|
|
||||||
** Processors: MIMXRT1052CVL5A
|
|
||||||
** MIMXRT1052DVL6A
|
|
||||||
**
|
|
||||||
** Compiler: GNU C Compiler
|
|
||||||
** Reference manual: IMXRT1050RM Rev.C, 08/2017
|
|
||||||
** Version: rev. 0.1, 2017-01-10
|
|
||||||
** Build: b170927
|
|
||||||
**
|
|
||||||
** Abstract:
|
|
||||||
** Linker file for the GNU C Compiler
|
|
||||||
**
|
|
||||||
** Copyright 2016 Freescale Semiconductor, Inc.
|
|
||||||
** Copyright 2016-2017 NXP
|
|
||||||
** Redistribution and use in source and binary forms, with or without modification,
|
|
||||||
** are permitted provided that the following conditions are met:
|
|
||||||
**
|
|
||||||
** 1. Redistributions of source code must retain the above copyright notice, this list
|
|
||||||
** of conditions and the following disclaimer.
|
|
||||||
**
|
|
||||||
** 2. Redistributions in binary form must reproduce the above copyright notice, this
|
|
||||||
** list of conditions and the following disclaimer in the documentation and/or
|
|
||||||
** other materials provided with the distribution.
|
|
||||||
**
|
|
||||||
** 3. Neither the name of the copyright holder nor the names of its
|
|
||||||
** contributors may be used to endorse or promote products derived from this
|
|
||||||
** software without specific prior written permission.
|
|
||||||
**
|
|
||||||
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
||||||
** ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
||||||
** WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
||||||
** DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
|
|
||||||
** ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
||||||
** (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
||||||
** LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
|
|
||||||
** ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
||||||
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
||||||
** SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
||||||
**
|
|
||||||
** http: www.nxp.com
|
|
||||||
** mail: support@nxp.com
|
|
||||||
**
|
|
||||||
** ###################################################################
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Entry Point */
|
|
||||||
ENTRY(Reset_Handler)
|
|
||||||
|
|
||||||
HEAP_SIZE = DEFINED(__heap_size__) ? __heap_size__ : 0x0400;
|
|
||||||
STACK_SIZE = DEFINED(__stack_size__) ? __stack_size__ : 0x0400;
|
|
||||||
|
|
||||||
/* Specify the memory areas */
|
|
||||||
MEMORY
|
|
||||||
{
|
|
||||||
m_interrupts (RX) : ORIGIN = 0x80000000, LENGTH = 0x80000400
|
|
||||||
m_text (RX) : ORIGIN = 0x80000400, LENGTH = 0x8007FC00
|
|
||||||
m_data (RW) : ORIGIN = 0x80000000, LENGTH = 0x01600000
|
|
||||||
m_ncache (RW) : ORIGIN = 0x81E00000, LENGTH = 0x00200000
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Define output sections */
|
|
||||||
SECTIONS
|
|
||||||
{
|
|
||||||
/* The startup code goes first into internal RAM */
|
|
||||||
.interrupts :
|
|
||||||
{
|
|
||||||
__VECTOR_TABLE = .;
|
|
||||||
. = ALIGN(4);
|
|
||||||
KEEP(*(.isr_vector)) /* Startup code */
|
|
||||||
. = ALIGN(4);
|
|
||||||
} > m_interrupts
|
|
||||||
|
|
||||||
__VECTOR_RAM = __VECTOR_TABLE;
|
|
||||||
__RAM_VECTOR_TABLE_SIZE_BYTES = 0x0;
|
|
||||||
|
|
||||||
/* The program code and other data goes into internal RAM */
|
|
||||||
.text :
|
|
||||||
{
|
|
||||||
. = ALIGN(4);
|
|
||||||
*(.text) /* .text sections (code) */
|
|
||||||
*(.text*) /* .text* sections (code) */
|
|
||||||
*(.rodata) /* .rodata sections (constants, strings, etc.) */
|
|
||||||
*(.rodata*) /* .rodata* sections (constants, strings, etc.) */
|
|
||||||
*(.glue_7) /* glue arm to thumb code */
|
|
||||||
*(.glue_7t) /* glue thumb to arm code */
|
|
||||||
*(.eh_frame)
|
|
||||||
KEEP (*(.init))
|
|
||||||
KEEP (*(.fini))
|
|
||||||
|
|
||||||
/* section information for finsh shell */
|
|
||||||
. = ALIGN(4);
|
|
||||||
__fsymtab_start = .;
|
|
||||||
KEEP(*(FSymTab))
|
|
||||||
__fsymtab_end = .;
|
|
||||||
. = ALIGN(4);
|
|
||||||
__vsymtab_start = .;
|
|
||||||
KEEP(*(VSymTab))
|
|
||||||
__vsymtab_end = .;
|
|
||||||
. = ALIGN(4);
|
|
||||||
|
|
||||||
/* section information for initial. */
|
|
||||||
. = ALIGN(4);
|
|
||||||
__rt_init_start = .;
|
|
||||||
KEEP(*(SORT(.rti_fn*)))
|
|
||||||
__rt_init_end = .;
|
|
||||||
|
|
||||||
. = ALIGN(4);
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.ARM.extab :
|
|
||||||
{
|
|
||||||
*(.ARM.extab* .gnu.linkonce.armextab.*)
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.ARM :
|
|
||||||
{
|
|
||||||
__exidx_start = .;
|
|
||||||
*(.ARM.exidx*)
|
|
||||||
__exidx_end = .;
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.ctors :
|
|
||||||
{
|
|
||||||
__CTOR_LIST__ = .;
|
|
||||||
/* gcc uses crtbegin.o to find the start of
|
|
||||||
the constructors, so we make sure it is
|
|
||||||
first. Because this is a wildcard, it
|
|
||||||
doesn't matter if the user does not
|
|
||||||
actually link against crtbegin.o; the
|
|
||||||
linker won't look for a file to match a
|
|
||||||
wildcard. The wildcard also means that it
|
|
||||||
doesn't matter which directory crtbegin.o
|
|
||||||
is in. */
|
|
||||||
KEEP (*crtbegin.o(.ctors))
|
|
||||||
KEEP (*crtbegin?.o(.ctors))
|
|
||||||
/* We don't want to include the .ctor section from
|
|
||||||
from the crtend.o file until after the sorted ctors.
|
|
||||||
The .ctor section from the crtend file contains the
|
|
||||||
end of ctors marker and it must be last */
|
|
||||||
KEEP (*(EXCLUDE_FILE(*crtend?.o *crtend.o) .ctors))
|
|
||||||
KEEP (*(SORT(.ctors.*)))
|
|
||||||
KEEP (*(.ctors))
|
|
||||||
__CTOR_END__ = .;
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.dtors :
|
|
||||||
{
|
|
||||||
__DTOR_LIST__ = .;
|
|
||||||
KEEP (*crtbegin.o(.dtors))
|
|
||||||
KEEP (*crtbegin?.o(.dtors))
|
|
||||||
KEEP (*(EXCLUDE_FILE(*crtend?.o *crtend.o) .dtors))
|
|
||||||
KEEP (*(SORT(.dtors.*)))
|
|
||||||
KEEP (*(.dtors))
|
|
||||||
__DTOR_END__ = .;
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.preinit_array :
|
|
||||||
{
|
|
||||||
PROVIDE_HIDDEN (__preinit_array_start = .);
|
|
||||||
KEEP (*(.preinit_array*))
|
|
||||||
PROVIDE_HIDDEN (__preinit_array_end = .);
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.init_array :
|
|
||||||
{
|
|
||||||
PROVIDE_HIDDEN (__init_array_start = .);
|
|
||||||
KEEP (*(SORT(.init_array.*)))
|
|
||||||
KEEP (*(.init_array*))
|
|
||||||
PROVIDE_HIDDEN (__init_array_end = .);
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
.fini_array :
|
|
||||||
{
|
|
||||||
PROVIDE_HIDDEN (__fini_array_start = .);
|
|
||||||
KEEP (*(SORT(.fini_array.*)))
|
|
||||||
KEEP (*(.fini_array*))
|
|
||||||
PROVIDE_HIDDEN (__fini_array_end = .);
|
|
||||||
} > m_text
|
|
||||||
|
|
||||||
__etext = .; /* define a global symbol at end of code */
|
|
||||||
__DATA_ROM = .; /* Symbol is used by startup for data initialization */
|
|
||||||
|
|
||||||
.data : AT(__DATA_ROM)
|
|
||||||
{
|
|
||||||
. = ALIGN(4);
|
|
||||||
__DATA_RAM = .;
|
|
||||||
__data_start__ = .; /* create a global symbol at data start */
|
|
||||||
*(m_usb_dma_init_data)
|
|
||||||
*(.data) /* .data sections */
|
|
||||||
*(.data*) /* .data* sections */
|
|
||||||
KEEP(*(.jcr*))
|
|
||||||
. = ALIGN(4);
|
|
||||||
__data_end__ = .; /* define a global symbol at data end */
|
|
||||||
} > m_data
|
|
||||||
|
|
||||||
__NDATA_ROM = __DATA_ROM + (__data_end__ - __data_start__);
|
|
||||||
.ncache.init : AT(__NDATA_ROM)
|
|
||||||
{
|
|
||||||
__noncachedata_start__ = .; /* create a global symbol at ncache data start */
|
|
||||||
*(NonCacheable.init)
|
|
||||||
. = ALIGN(4);
|
|
||||||
__noncachedata_init_end__ = .; /* create a global symbol at initialized ncache data end */
|
|
||||||
} > m_ncache
|
|
||||||
. = __noncachedata_init_end__;
|
|
||||||
.ncache :
|
|
||||||
{
|
|
||||||
*(NonCacheable)
|
|
||||||
. = ALIGN(4);
|
|
||||||
__noncachedata_end__ = .; /* define a global symbol at ncache data end */
|
|
||||||
} > m_ncache
|
|
||||||
|
|
||||||
__DATA_END = __NDATA_ROM + (__noncachedata_init_end__ - __noncachedata_start__);
|
|
||||||
text_end = ORIGIN(m_text) + LENGTH(m_text);
|
|
||||||
ASSERT(__DATA_END <= text_end, "region m_text overflowed with text and data")
|
|
||||||
|
|
||||||
/* Uninitialized data section */
|
|
||||||
.bss :
|
|
||||||
{
|
|
||||||
/* This is used by the startup in order to initialize the .bss section */
|
|
||||||
. = ALIGN(4);
|
|
||||||
__START_BSS = .;
|
|
||||||
__bss_start__ = .;
|
|
||||||
*(m_usb_dma_noninit_data)
|
|
||||||
*(.bss)
|
|
||||||
*(.bss*)
|
|
||||||
*(COMMON)
|
|
||||||
. = ALIGN(4);
|
|
||||||
__bss_end__ = .;
|
|
||||||
__END_BSS = .;
|
|
||||||
} > m_data
|
|
||||||
|
|
||||||
.heap :
|
|
||||||
{
|
|
||||||
. = ALIGN(8);
|
|
||||||
__end__ = .;
|
|
||||||
PROVIDE(end = .);
|
|
||||||
__HeapBase = .;
|
|
||||||
. += HEAP_SIZE;
|
|
||||||
__HeapLimit = .;
|
|
||||||
__heap_limit = .; /* Add for _sbrk */
|
|
||||||
} > m_data
|
|
||||||
|
|
||||||
.stack :
|
|
||||||
{
|
|
||||||
. = ALIGN(8);
|
|
||||||
. += STACK_SIZE;
|
|
||||||
} > m_data
|
|
||||||
|
|
||||||
/* Initializes stack on the end of block */
|
|
||||||
__StackTop = ORIGIN(m_data) + LENGTH(m_data);
|
|
||||||
__StackLimit = __StackTop - STACK_SIZE;
|
|
||||||
PROVIDE(__stack = __StackTop);
|
|
||||||
|
|
||||||
.ARM.attributes 0 : { *(.ARM.attributes) }
|
|
||||||
|
|
||||||
ASSERT(__StackLimit >= __HeapLimit, "region m_data overflowed with stack and heap")
|
|
||||||
}
|
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
<name>C-SPY</name>
|
<name>C-SPY</name>
|
||||||
<archiveVersion>2</archiveVersion>
|
<archiveVersion>2</archiveVersion>
|
||||||
<data>
|
<data>
|
||||||
<version>28</version>
|
<version>29</version>
|
||||||
<wantNonLocal>1</wantNonLocal>
|
<wantNonLocal>1</wantNonLocal>
|
||||||
<debug>1</debug>
|
<debug>1</debug>
|
||||||
<option>
|
<option>
|
||||||
|
@ -48,7 +48,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>RunToEnable</name>
|
<name>RunToEnable</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>RunToName</name>
|
<name>RunToName</name>
|
||||||
|
@ -76,7 +76,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OCDownloadVerifyAll</name>
|
<name>OCDownloadVerifyAll</name>
|
||||||
<state>0</state>
|
<state>1</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OCProductVersion</name>
|
<name>OCProductVersion</name>
|
||||||
|
@ -84,15 +84,15 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OCDynDriverList</name>
|
<name>OCDynDriverList</name>
|
||||||
<state>ARMSIM_ID</state>
|
<state>JLINK_ID</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OCLastSavedByProductVersion</name>
|
<name>OCLastSavedByProductVersion</name>
|
||||||
<state>8.11.2.13604</state>
|
<state>8.20.1.14181</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>UseFlashLoader</name>
|
<name>UseFlashLoader</name>
|
||||||
<state>0</state>
|
<state>1</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CLowLevel</name>
|
<name>CLowLevel</name>
|
||||||
|
@ -112,7 +112,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>FlashLoadersV3</name>
|
<name>FlashLoadersV3</name>
|
||||||
<state>$TOOLKIT_DIR$\config\flashloader\</state>
|
<state>$TOOLKIT_DIR$\config\flashloader\NXP\FlashIMXRT1050_EVK_FlexSPI.board</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>OCImagesSuppressCheck1</name>
|
<name>OCImagesSuppressCheck1</name>
|
||||||
|
@ -210,6 +210,10 @@
|
||||||
<name>OCAttachSlave</name>
|
<name>OCAttachSlave</name>
|
||||||
<state>0</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
|
<option>
|
||||||
|
<name>MassEraseBeforeFlashing</name>
|
||||||
|
<state>0</state>
|
||||||
|
</option>
|
||||||
</data>
|
</data>
|
||||||
</settings>
|
</settings>
|
||||||
<settings>
|
<settings>
|
||||||
|
@ -288,7 +292,7 @@
|
||||||
<option>
|
<option>
|
||||||
<name>CMSISDAPResetList</name>
|
<name>CMSISDAPResetList</name>
|
||||||
<version>1</version>
|
<version>1</version>
|
||||||
<state>10</state>
|
<state>4</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CMSISDAPHWResetDuration</name>
|
<name>CMSISDAPHWResetDuration</name>
|
||||||
|
@ -308,7 +312,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CMSISDAPInterfaceRadio</name>
|
<name>CMSISDAPInterfaceRadio</name>
|
||||||
<state>0</state>
|
<state>1</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CMSISDAPInterfaceCmdLine</name>
|
<name>CMSISDAPInterfaceCmdLine</name>
|
||||||
|
@ -373,31 +377,31 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchMMERR</name>
|
<name>CatchMMERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchNOCPERR</name>
|
<name>CatchNOCPERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchCHKERR</name>
|
<name>CatchCHKERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchSTATERR</name>
|
<name>CatchSTATERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchBUSERR</name>
|
<name>CatchBUSERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchINTERR</name>
|
<name>CatchINTERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchHARDERR</name>
|
<name>CatchHARDERR</name>
|
||||||
<state>1</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CatchDummy</name>
|
<name>CatchDummy</name>
|
||||||
|
@ -425,7 +429,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CMSISDAPSelectedCPUBehaviour</name>
|
<name>CMSISDAPSelectedCPUBehaviour</name>
|
||||||
<state>0</state>
|
<state></state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>ICpuName</name>
|
<name>ICpuName</name>
|
||||||
|
@ -721,7 +725,7 @@
|
||||||
<debug>1</debug>
|
<debug>1</debug>
|
||||||
<option>
|
<option>
|
||||||
<name>CCCatchSFERR</name>
|
<name>CCCatchSFERR</name>
|
||||||
<state>0</state>
|
<state>1</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>JLinkSpeed</name>
|
<name>JLinkSpeed</name>
|
||||||
|
@ -822,12 +826,12 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CCJLinkInterfaceRadio</name>
|
<name>CCJLinkInterfaceRadio</name>
|
||||||
<state>0</state>
|
<state>1</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CCJLinkResetList</name>
|
<name>CCJLinkResetList</name>
|
||||||
<version>6</version>
|
<version>6</version>
|
||||||
<state>5</state>
|
<state>8</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CCJLinkInterfaceCmdLine</name>
|
<name>CCJLinkInterfaceCmdLine</name>
|
||||||
|
@ -1402,6 +1406,10 @@
|
||||||
<file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
|
<file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
|
||||||
<loadFlag>0</loadFlag>
|
<loadFlag>0</loadFlag>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<file>$EW_DIR$\common\plugins\TargetAccessServer\TargetAccessServer.ENU.ewplugin</file>
|
||||||
|
<loadFlag>0</loadFlag>
|
||||||
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
|
<file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
|
||||||
<loadFlag>0</loadFlag>
|
<loadFlag>0</loadFlag>
|
||||||
|
@ -1418,7 +1426,7 @@
|
||||||
<name>C-SPY</name>
|
<name>C-SPY</name>
|
||||||
<archiveVersion>2</archiveVersion>
|
<archiveVersion>2</archiveVersion>
|
||||||
<data>
|
<data>
|
||||||
<version>28</version>
|
<version>29</version>
|
||||||
<wantNonLocal>1</wantNonLocal>
|
<wantNonLocal>1</wantNonLocal>
|
||||||
<debug>0</debug>
|
<debug>0</debug>
|
||||||
<option>
|
<option>
|
||||||
|
@ -1617,6 +1625,10 @@
|
||||||
<name>OCAttachSlave</name>
|
<name>OCAttachSlave</name>
|
||||||
<state>0</state>
|
<state>0</state>
|
||||||
</option>
|
</option>
|
||||||
|
<option>
|
||||||
|
<name>MassEraseBeforeFlashing</name>
|
||||||
|
<state>0</state>
|
||||||
|
</option>
|
||||||
</data>
|
</data>
|
||||||
</settings>
|
</settings>
|
||||||
<settings>
|
<settings>
|
||||||
|
@ -2809,6 +2821,10 @@
|
||||||
<file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
|
<file>$EW_DIR$\common\plugins\Orti\Orti.ENU.ewplugin</file>
|
||||||
<loadFlag>0</loadFlag>
|
<loadFlag>0</loadFlag>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<file>$EW_DIR$\common\plugins\TargetAccessServer\TargetAccessServer.ENU.ewplugin</file>
|
||||||
|
<loadFlag>0</loadFlag>
|
||||||
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
|
<file>$EW_DIR$\common\plugins\uCProbe\uCProbePlugin.ENU.ewplugin</file>
|
||||||
<loadFlag>0</loadFlag>
|
<loadFlag>0</loadFlag>
|
||||||
|
|
|
@ -171,7 +171,6 @@
|
||||||
<state>FSL_SDK_ENABLE_DRIVER_CACHE_CONTROL=1</state>
|
<state>FSL_SDK_ENABLE_DRIVER_CACHE_CONTROL=1</state>
|
||||||
<state>RT_USING_DLIBC</state>
|
<state>RT_USING_DLIBC</state>
|
||||||
<state>_DLIB_FILE_DESCRIPTOR</state>
|
<state>_DLIB_FILE_DESCRIPTOR</state>
|
||||||
<state>_DLIB_THREAD_SUPPORT</state>
|
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CCPreprocFile</name>
|
<name>CCPreprocFile</name>
|
||||||
|
@ -301,31 +300,27 @@
|
||||||
<option>
|
<option>
|
||||||
<name>CCIncludePath2</name>
|
<name>CCIncludePath2</name>
|
||||||
<state />
|
<state />
|
||||||
<state>$PROJ_DIR$\..\..\components\libc\compilers\dlib</state>
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src</state>
|
||||||
<state>$PROJ_DIR$\Libraries</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\include</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\netif</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\libcpu\arm\common</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\net</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\drivers\include</state>
|
|
||||||
<state>$PROJ_DIR$\Libraries\drivers</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src</state>
|
|
||||||
<state>$PROJ_DIR$\drivers</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\ipv4</state>
|
|
||||||
<state>$PROJ_DIR$\.</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\libcpu\arm\cortex-m7</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\include</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\devfs</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\net\socket</state>
|
|
||||||
<state>$PROJ_DIR$\Libraries\CMSIS\Include</state>
|
<state>$PROJ_DIR$\Libraries\CMSIS\Include</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\include</state>
|
||||||
|
<state>$PROJ_DIR$\drivers</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\libc\compilers\dlib</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\include\netif</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\libcpu\arm\cortex-m7</state>
|
||||||
<state>$PROJ_DIR$\Libraries\utilities</state>
|
<state>$PROJ_DIR$\Libraries\utilities</state>
|
||||||
|
<state>$PROJ_DIR$\.</state>
|
||||||
|
<state>$PROJ_DIR$\Libraries</state>
|
||||||
<state>$PROJ_DIR$\applications</state>
|
<state>$PROJ_DIR$\applications</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\net\select</state>
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\include</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\finsh</state>
|
<state>$PROJ_DIR$\..\..\components\dfs\include</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\include\ipv4</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\drivers\include</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\elmfat</state>
|
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\elmfat</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\libc\pthreads</state>
|
<state>$PROJ_DIR$\..\..\libcpu\arm\common</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\arch\include</state>
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\arch\include</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\finsh</state>
|
||||||
|
<state>$PROJ_DIR$\Libraries\drivers</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\devfs</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CCStdIncCheck</name>
|
<name>CCStdIncCheck</name>
|
||||||
|
@ -722,7 +717,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>IlinkIcfFile</name>
|
<name>IlinkIcfFile</name>
|
||||||
<state>$PROJ_DIR$\imxrt1052_sdram.icf</state>
|
<state>$PROJ_DIR$\Libraries\iar\MIMXRT1052xxxxx_flexspi_nor.icf</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>IlinkIcfFileSlave</name>
|
<name>IlinkIcfFileSlave</name>
|
||||||
|
@ -1245,31 +1240,27 @@
|
||||||
<option>
|
<option>
|
||||||
<name>CCIncludePath2</name>
|
<name>CCIncludePath2</name>
|
||||||
<state />
|
<state />
|
||||||
<state>$PROJ_DIR$\..\..\components\libc\compilers\dlib</state>
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src</state>
|
||||||
<state>$PROJ_DIR$\Libraries</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\include</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\netif</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\libcpu\arm\common</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\net</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\drivers\include</state>
|
|
||||||
<state>$PROJ_DIR$\Libraries\drivers</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src</state>
|
|
||||||
<state>$PROJ_DIR$\drivers</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\include\ipv4</state>
|
|
||||||
<state>$PROJ_DIR$\.</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\libcpu\arm\cortex-m7</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\include</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\devfs</state>
|
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\net\socket</state>
|
|
||||||
<state>$PROJ_DIR$\Libraries\CMSIS\Include</state>
|
<state>$PROJ_DIR$\Libraries\CMSIS\Include</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\include</state>
|
||||||
|
<state>$PROJ_DIR$\drivers</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\libc\compilers\dlib</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\include\netif</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\libcpu\arm\cortex-m7</state>
|
||||||
<state>$PROJ_DIR$\Libraries\utilities</state>
|
<state>$PROJ_DIR$\Libraries\utilities</state>
|
||||||
|
<state>$PROJ_DIR$\.</state>
|
||||||
|
<state>$PROJ_DIR$\Libraries</state>
|
||||||
<state>$PROJ_DIR$\applications</state>
|
<state>$PROJ_DIR$\applications</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\net\select</state>
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\include</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\finsh</state>
|
<state>$PROJ_DIR$\..\..\components\dfs\include</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\include\ipv4</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\drivers\include</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\elmfat</state>
|
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\elmfat</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\libc\pthreads</state>
|
<state>$PROJ_DIR$\..\..\libcpu\arm\common</state>
|
||||||
<state>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\arch\include</state>
|
<state>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\arch\include</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\finsh</state>
|
||||||
|
<state>$PROJ_DIR$\Libraries\drivers</state>
|
||||||
|
<state>$PROJ_DIR$\..\..\components\dfs\filesystems\devfs</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>CCStdIncCheck</name>
|
<name>CCStdIncCheck</name>
|
||||||
|
@ -1892,6 +1883,9 @@
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\applications\main.c</name>
|
<name>$PROJ_DIR$\applications\main.c</name>
|
||||||
</file>
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\applications\mem_dump.c</name>
|
||||||
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\applications\mem_test.c</name>
|
<name>$PROJ_DIR$\applications\mem_test.c</name>
|
||||||
</file>
|
</file>
|
||||||
|
@ -1907,6 +1901,12 @@
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\drivers\usart.c</name>
|
<name>$PROJ_DIR$\drivers\usart.c</name>
|
||||||
</file>
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\drivers\hyper_flash_boot.c</name>
|
||||||
|
</file>
|
||||||
|
<file>
|
||||||
|
<name>$PROJ_DIR$\drivers\drv_sdram.c</name>
|
||||||
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\drivers\drv_eth.c</name>
|
<name>$PROJ_DIR$\drivers\drv_eth.c</name>
|
||||||
</file>
|
</file>
|
||||||
|
@ -2127,7 +2127,7 @@
|
||||||
<name>$PROJ_DIR$\..\..\src\kservice.c</name>
|
<name>$PROJ_DIR$\..\..\src\kservice.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\src\mem.c</name>
|
<name>$PROJ_DIR$\..\..\src\memheap.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\src\object.c</name>
|
<name>$PROJ_DIR$\..\..\src\object.c</name>
|
||||||
|
@ -2177,12 +2177,6 @@
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\src\dfs_posix.c</name>
|
<name>$PROJ_DIR$\..\..\components\dfs\src\dfs_posix.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\src\poll.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\src\select.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\devfs\devfs.c</name>
|
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\devfs\devfs.c</name>
|
||||||
</file>
|
</file>
|
||||||
|
@ -2192,15 +2186,6 @@
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\elmfat\ff.c</name>
|
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\elmfat\ff.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\net\dfs_net.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\net\net_netdb.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\dfs\filesystems\net\net_sockets.c</name>
|
|
||||||
</file>
|
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<name>DeviceDrivers</name>
|
<name>DeviceDrivers</name>
|
||||||
|
@ -2329,153 +2314,111 @@
|
||||||
</file>
|
</file>
|
||||||
</group>
|
</group>
|
||||||
<group>
|
<group>
|
||||||
<name>pthreads</name>
|
<name>LwIP</name>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\clock_time.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\api_lib.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\mqueue.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\api_msg.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\err.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_attr.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\netbuf.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_barrier.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\netdb.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_cond.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\netifapi.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_mutex.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\sockets.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_rwlock.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\api\tcpip.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_spin.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\arch\sys_arch.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\pthread_tls.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\def.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\sched.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\dhcp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\libc\pthreads\semaphore.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\dns.c</name>
|
||||||
</file>
|
|
||||||
</group>
|
|
||||||
<group>
|
|
||||||
<name>lwIP</name>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\arch\sys_arch.c</name>
|
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\api_lib.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\init.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\api_msg.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\memp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\err.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\netif.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\netbuf.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\pbuf.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\netdb.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\raw.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\netifapi.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\stats.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\sockets.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\sys.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\api\tcpip.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\tcp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\def.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\tcp_in.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\dns.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\tcp_out.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\inet_chksum.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\timers.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\init.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\udp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ip.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\autoip.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\memp.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\icmp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\netif.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\igmp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\pbuf.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\inet.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\raw.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\inet_chksum.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\stats.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\ip.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\sys.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\ip_addr.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\tcp.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\core\ipv4\ip_frag.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\tcp_in.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\netif\etharp.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\tcp_out.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\netif\ethernetif.c</name>
|
||||||
</file>
|
</file>
|
||||||
<file>
|
<file>
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\timeouts.c</name>
|
<name>$PROJ_DIR$\..\..\components\net\lwip-1.4.1\src\netif\slipif.c</name>
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\udp.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\netif\ethernet.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\netif\ethernetif.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\netif\lowpan6.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\autoip.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\dhcp.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\etharp.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\icmp.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\igmp.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_addr.c</name>
|
|
||||||
</file>
|
|
||||||
<file>
|
|
||||||
<name>$PROJ_DIR$\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_frag.c</name>
|
|
||||||
</file>
|
</file>
|
||||||
</group>
|
</group>
|
||||||
</project>
|
</project>
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -10,13 +10,14 @@
|
||||||
<TargetName>RT-Thread IMXRT1052</TargetName>
|
<TargetName>RT-Thread IMXRT1052</TargetName>
|
||||||
<ToolsetNumber>0x4</ToolsetNumber>
|
<ToolsetNumber>0x4</ToolsetNumber>
|
||||||
<ToolsetName>ARM-ADS</ToolsetName>
|
<ToolsetName>ARM-ADS</ToolsetName>
|
||||||
<pCCUsed>5060528::V5.06 update 5 (build 528)::ARMCC</pCCUsed>
|
<pCCUsed>5060750::V5.06 update 6 (build 750)::ARMCC</pCCUsed>
|
||||||
<uAC6>0</uAC6>
|
<uAC6>0</uAC6>
|
||||||
<TargetOption>
|
<TargetOption>
|
||||||
<TargetCommonOption>
|
<TargetCommonOption>
|
||||||
<Device>MIMXRT1052:M7</Device>
|
<Device>MIMXRT1052:M7</Device>
|
||||||
<Vendor>NXP</Vendor>
|
<Vendor>NXP</Vendor>
|
||||||
<PackID>NXP.iMXRT_DFP.1.0.1</PackID>
|
<PackID>NXP.iMXRT_DFP.1.0.2</PackID>
|
||||||
|
<PackURL>http://mcuxpresso.nxp.com/cmsis_pack/repo/</PackURL>
|
||||||
<Cpu>IRAM(0x20000000,0x00060000) IRAM2(0x00000000,0x00020000) CPUTYPE("Cortex-M7") FPU3(SFPU) CLOCK(12000000) ELITTLE</Cpu>
|
<Cpu>IRAM(0x20000000,0x00060000) IRAM2(0x00000000,0x00020000) CPUTYPE("Cortex-M7") FPU3(SFPU) CLOCK(12000000) ELITTLE</Cpu>
|
||||||
<FlashUtilSpec></FlashUtilSpec>
|
<FlashUtilSpec></FlashUtilSpec>
|
||||||
<StartupFile></StartupFile>
|
<StartupFile></StartupFile>
|
||||||
|
@ -48,12 +49,12 @@
|
||||||
<InvalidFlash>1</InvalidFlash>
|
<InvalidFlash>1</InvalidFlash>
|
||||||
</TargetStatus>
|
</TargetStatus>
|
||||||
<OutputDirectory>.\build\</OutputDirectory>
|
<OutputDirectory>.\build\</OutputDirectory>
|
||||||
<OutputName>rtthread-lpc</OutputName>
|
<OutputName>rtthread-imxrt</OutputName>
|
||||||
<CreateExecutable>1</CreateExecutable>
|
<CreateExecutable>1</CreateExecutable>
|
||||||
<CreateLib>0</CreateLib>
|
<CreateLib>0</CreateLib>
|
||||||
<CreateHexFile>0</CreateHexFile>
|
<CreateHexFile>0</CreateHexFile>
|
||||||
<DebugInformation>1</DebugInformation>
|
<DebugInformation>1</DebugInformation>
|
||||||
<BrowseInformation>1</BrowseInformation>
|
<BrowseInformation>0</BrowseInformation>
|
||||||
<ListingPath>.\build\</ListingPath>
|
<ListingPath>.\build\</ListingPath>
|
||||||
<HexFormatSelection>1</HexFormatSelection>
|
<HexFormatSelection>1</HexFormatSelection>
|
||||||
<Merge32K>0</Merge32K>
|
<Merge32K>0</Merge32K>
|
||||||
|
@ -79,9 +80,9 @@
|
||||||
<nStopB2X>0</nStopB2X>
|
<nStopB2X>0</nStopB2X>
|
||||||
</BeforeMake>
|
</BeforeMake>
|
||||||
<AfterMake>
|
<AfterMake>
|
||||||
<RunUserProg1>0</RunUserProg1>
|
<RunUserProg1>1</RunUserProg1>
|
||||||
<RunUserProg2>0</RunUserProg2>
|
<RunUserProg2>0</RunUserProg2>
|
||||||
<UserProg1Name></UserProg1Name>
|
<UserProg1Name>fromelf --bin !L --output rtthread-mdk.bin</UserProg1Name>
|
||||||
<UserProg2Name></UserProg2Name>
|
<UserProg2Name></UserProg2Name>
|
||||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||||
|
@ -332,10 +333,10 @@
|
||||||
<v6WtE>0</v6WtE>
|
<v6WtE>0</v6WtE>
|
||||||
<v6Rtti>0</v6Rtti>
|
<v6Rtti>0</v6Rtti>
|
||||||
<VariousControls>
|
<VariousControls>
|
||||||
<MiscControls>--library_interface=armcc --library_type=standardlib --diag_suppress=66,1296,186</MiscControls>
|
<MiscControls>--library_interface=armcc --library_type=standardlib --diag_suppress=66</MiscControls>
|
||||||
<Define>SKIP_SYSCLK_INIT, CPU_MIMXRT1052DVL6A, FSL_SDK_ENABLE_DRIVER_CACHE_CONTROL=1, EVK_MCIMXRM, FSL_FEATURE_PHYKSZ8081_USE_RMII50M_MODE, RT_USING_ARM_LIBC</Define>
|
<Define>SKIP_SYSCLK_INIT, CPU_MIMXRT1052DVL6A, FSL_SDK_ENABLE_DRIVER_CACHE_CONTROL=1, EVK_MCIMXRM, FSL_FEATURE_PHYKSZ8081_USE_RMII50M_MODE, RT_USING_ARM_LIBC</Define>
|
||||||
<Undefine></Undefine>
|
<Undefine></Undefine>
|
||||||
<IncludePath>applications;.;drivers;Libraries;Libraries\drivers;Libraries\utilities;Libraries\CMSIS\Include;..\..\include;..\..\libcpu\arm\cortex-m7;..\..\libcpu\arm\common;..\..\components\dfs\include;..\..\components\dfs\filesystems\devfs;..\..\components\dfs\filesystems\elmfat;..\..\components\dfs\filesystems\net;..\..\components\dfs\filesystems\net\select;..\..\components\dfs\filesystems\net\socket;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\finsh;..\..\components\libc\compilers\armlibc;..\..\components\libc\pthreads;..\..\components\net\lwip-2.0.2\src;..\..\components\net\lwip-2.0.2\src\include;..\..\components\net\lwip-2.0.2\src\include\ipv4;..\..\components\net\lwip-2.0.2\src\arch\include;..\..\components\net\lwip-2.0.2\src\include\netif</IncludePath>
|
<IncludePath>applications;.;drivers;Libraries;Libraries\drivers;Libraries\utilities;Libraries\CMSIS\Include;..\..\include;..\..\libcpu\arm\cortex-m7;..\..\libcpu\arm\common;..\..\components\dfs\include;..\..\components\dfs\filesystems\devfs;..\..\components\dfs\filesystems\elmfat;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\finsh;..\..\components\libc\compilers\armlibc;..\..\components\net\lwip-1.4.1\src;..\..\components\net\lwip-1.4.1\src\include;..\..\components\net\lwip-1.4.1\src\include\ipv4;..\..\components\net\lwip-1.4.1\src\arch\include;..\..\components\net\lwip-1.4.1\src\include\netif</IncludePath>
|
||||||
</VariousControls>
|
</VariousControls>
|
||||||
</Cads>
|
</Cads>
|
||||||
<Aads>
|
<Aads>
|
||||||
|
@ -366,10 +367,10 @@
|
||||||
<TextAddressRange>0x00000000</TextAddressRange>
|
<TextAddressRange>0x00000000</TextAddressRange>
|
||||||
<DataAddressRange>0x10000000</DataAddressRange>
|
<DataAddressRange>0x10000000</DataAddressRange>
|
||||||
<pXoBase></pXoBase>
|
<pXoBase></pXoBase>
|
||||||
<ScatterFile>.\imxrt1052_sdram.sct</ScatterFile>
|
<ScatterFile>.\Libraries\arm\MIMXRT1052xxxxx_flexspi_nor.scf</ScatterFile>
|
||||||
<IncludeLibs></IncludeLibs>
|
<IncludeLibs></IncludeLibs>
|
||||||
<IncludeLibsPath></IncludeLibsPath>
|
<IncludeLibsPath></IncludeLibsPath>
|
||||||
<Misc> --keep *.o(.rti_fn.*) --keep *.o(FSymTab) --keep *.o(VSymTab) </Misc>
|
<Misc>--keep *.o(.rti_fn.*) --keep *.o(FSymTab) --keep *.o(VSymTab)</Misc>
|
||||||
<LinkerInputFile></LinkerInputFile>
|
<LinkerInputFile></LinkerInputFile>
|
||||||
<DisabledWarnings></DisabledWarnings>
|
<DisabledWarnings></DisabledWarnings>
|
||||||
</LDads>
|
</LDads>
|
||||||
|
@ -389,6 +390,11 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>applications\main.c</FilePath>
|
<FilePath>applications\main.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>mem_dump.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>applications\mem_dump.c</FilePath>
|
||||||
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>mem_test.c</FileName>
|
<FileName>mem_test.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
|
@ -414,6 +420,16 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>drivers\usart.c</FilePath>
|
<FilePath>drivers\usart.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>hyper_flash_boot.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>drivers\hyper_flash_boot.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>drv_sdram.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>drivers\drv_sdram.c</FilePath>
|
||||||
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>drv_eth.c</FileName>
|
<FileName>drv_eth.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
|
@ -780,9 +796,9 @@
|
||||||
<FilePath>..\..\src\kservice.c</FilePath>
|
<FilePath>..\..\src\kservice.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>mem.c</FileName>
|
<FileName>memheap.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\src\mem.c</FilePath>
|
<FilePath>..\..\src\memheap.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>object.c</FileName>
|
<FileName>object.c</FileName>
|
||||||
|
@ -864,16 +880,6 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\dfs\src\dfs_posix.c</FilePath>
|
<FilePath>..\..\components\dfs\src\dfs_posix.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
|
||||||
<FileName>poll.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\dfs\src\poll.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>select.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\dfs\src\select.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
<File>
|
||||||
<FileName>devfs.c</FileName>
|
<FileName>devfs.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
|
@ -889,21 +895,6 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\dfs\filesystems\elmfat\ff.c</FilePath>
|
<FilePath>..\..\components\dfs\filesystems\elmfat\ff.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
|
||||||
<FileName>dfs_net.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\dfs\filesystems\net\dfs_net.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>net_netdb.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\dfs\filesystems\net\net_netdb.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>net_sockets.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\dfs\filesystems\net\net_sockets.c</FilePath>
|
|
||||||
</File>
|
|
||||||
</Files>
|
</Files>
|
||||||
</Group>
|
</Group>
|
||||||
<Group>
|
<Group>
|
||||||
|
@ -1084,255 +1075,190 @@
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\libc\compilers\armlibc\stubs.c</FilePath>
|
<FilePath>..\..\components\libc\compilers\armlibc\stubs.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
</Files>
|
|
||||||
</Group>
|
|
||||||
<Group>
|
|
||||||
<GroupName>pthreads</GroupName>
|
|
||||||
<Files>
|
|
||||||
<File>
|
<File>
|
||||||
<FileName>clock_time.c</FileName>
|
<FileName>time.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\libc\pthreads\clock_time.c</FilePath>
|
<FilePath>..\..\components\libc\compilers\armlibc\time.c</FilePath>
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>mqueue.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\mqueue.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_attr.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_attr.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_barrier.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_barrier.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_cond.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_cond.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_mutex.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_mutex.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_rwlock.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_rwlock.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_spin.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_spin.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pthread_tls.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\pthread_tls.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>sched.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\sched.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>semaphore.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\libc\pthreads\semaphore.c</FilePath>
|
|
||||||
</File>
|
</File>
|
||||||
</Files>
|
</Files>
|
||||||
</Group>
|
</Group>
|
||||||
<Group>
|
<Group>
|
||||||
<GroupName>lwIP</GroupName>
|
<GroupName>LwIP</GroupName>
|
||||||
<Files>
|
<Files>
|
||||||
<File>
|
|
||||||
<FileName>sys_arch.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\arch\sys_arch.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
<File>
|
||||||
<FileName>api_lib.c</FileName>
|
<FileName>api_lib.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\api_lib.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\api_lib.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>api_msg.c</FileName>
|
<FileName>api_msg.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\api_msg.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\api_msg.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>err.c</FileName>
|
<FileName>err.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\err.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\err.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>netbuf.c</FileName>
|
<FileName>netbuf.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\netbuf.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\netbuf.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>netdb.c</FileName>
|
<FileName>netdb.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\netdb.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\netdb.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>netifapi.c</FileName>
|
<FileName>netifapi.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\netifapi.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\netifapi.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>sockets.c</FileName>
|
<FileName>sockets.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\sockets.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\sockets.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>tcpip.c</FileName>
|
<FileName>tcpip.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\api\tcpip.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\api\tcpip.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>sys_arch.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\arch\sys_arch.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>def.c</FileName>
|
<FileName>def.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\def.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\def.c</FilePath>
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>dns.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\dns.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>inet_chksum.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\inet_chksum.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>init.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\init.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>ip.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ip.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>memp.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\memp.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>netif.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\netif.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>pbuf.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\pbuf.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>raw.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\raw.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>stats.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\stats.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>sys.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\sys.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>tcp.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\tcp.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>tcp_in.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\tcp_in.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>tcp_out.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\tcp_out.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>timeouts.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\timeouts.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>udp.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\udp.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>ethernet.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\netif\ethernet.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>ethernetif.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\netif\ethernetif.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>lowpan6.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\netif\lowpan6.c</FilePath>
|
|
||||||
</File>
|
|
||||||
<File>
|
|
||||||
<FileName>autoip.c</FileName>
|
|
||||||
<FileType>1</FileType>
|
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\autoip.c</FilePath>
|
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>dhcp.c</FileName>
|
<FileName>dhcp.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\dhcp.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\dhcp.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>etharp.c</FileName>
|
<FileName>dns.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\etharp.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\dns.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>init.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\init.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>memp.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\memp.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>netif.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\netif.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>pbuf.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\pbuf.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>raw.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\raw.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>stats.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\stats.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>sys.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\sys.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>tcp.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\tcp.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>tcp_in.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\tcp_in.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>tcp_out.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\tcp_out.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>timers.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\timers.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>udp.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\udp.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>autoip.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\autoip.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>icmp.c</FileName>
|
<FileName>icmp.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\icmp.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\icmp.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>igmp.c</FileName>
|
<FileName>igmp.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\igmp.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\igmp.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>ip4.c</FileName>
|
<FileName>inet.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\inet.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>ip4_addr.c</FileName>
|
<FileName>inet_chksum.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_addr.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\inet_chksum.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
<File>
|
<File>
|
||||||
<FileName>ip4_frag.c</FileName>
|
<FileName>ip.c</FileName>
|
||||||
<FileType>1</FileType>
|
<FileType>1</FileType>
|
||||||
<FilePath>..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_frag.c</FilePath>
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\ip.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>ip_addr.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\ip_addr.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>ip_frag.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\core\ipv4\ip_frag.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>etharp.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\netif\etharp.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>ethernetif.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\netif\ethernetif.c</FilePath>
|
||||||
|
</File>
|
||||||
|
<File>
|
||||||
|
<FileName>slipif.c</FileName>
|
||||||
|
<FileType>1</FileType>
|
||||||
|
<FilePath>..\..\components\net\lwip-1.4.1\src\netif\slipif.c</FilePath>
|
||||||
</File>
|
</File>
|
||||||
</Files>
|
</Files>
|
||||||
</Group>
|
</Group>
|
||||||
|
|
|
@ -8,12 +8,15 @@
|
||||||
|
|
||||||
#define RT_NAME_MAX 8
|
#define RT_NAME_MAX 8
|
||||||
#define RT_ALIGN_SIZE 4
|
#define RT_ALIGN_SIZE 4
|
||||||
|
/* RT_THREAD_PRIORITY_8 is not set */
|
||||||
|
#define RT_THREAD_PRIORITY_32
|
||||||
|
/* RT_THREAD_PRIORITY_256 is not set */
|
||||||
#define RT_THREAD_PRIORITY_MAX 32
|
#define RT_THREAD_PRIORITY_MAX 32
|
||||||
#define RT_TICK_PER_SECOND 100
|
#define RT_TICK_PER_SECOND 100
|
||||||
#define RT_DEBUG
|
#define RT_DEBUG
|
||||||
#define RT_USING_OVERFLOW_CHECK
|
#define RT_USING_OVERFLOW_CHECK
|
||||||
#define RT_DEBUG_INIT 1
|
#define RT_DEBUG_INIT 0
|
||||||
/* RT_DEBUG_THREAD is not set */
|
#define RT_DEBUG_THREAD 0
|
||||||
#define RT_USING_HOOK
|
#define RT_USING_HOOK
|
||||||
#define IDLE_THREAD_STACK_SIZE 256
|
#define IDLE_THREAD_STACK_SIZE 256
|
||||||
/* RT_USING_TIMER_SOFT is not set */
|
/* RT_USING_TIMER_SOFT is not set */
|
||||||
|
@ -30,14 +33,17 @@
|
||||||
/* Memory Management */
|
/* Memory Management */
|
||||||
|
|
||||||
/* RT_USING_MEMPOOL is not set */
|
/* RT_USING_MEMPOOL is not set */
|
||||||
/* RT_USING_MEMHEAP is not set */
|
#define RT_USING_MEMHEAP
|
||||||
#define RT_USING_HEAP
|
/* RT_USING_NOHEAP is not set */
|
||||||
#define RT_USING_SMALL_MEM
|
/* RT_USING_SMALL_MEM is not set */
|
||||||
/* RT_USING_SLAB is not set */
|
/* RT_USING_SLAB is not set */
|
||||||
|
#define RT_USING_MEMHEAP_AS_HEAP
|
||||||
|
#define RT_USING_HEAP
|
||||||
|
|
||||||
/* Kernel Device Object */
|
/* Kernel Device Object */
|
||||||
|
|
||||||
#define RT_USING_DEVICE
|
#define RT_USING_DEVICE
|
||||||
|
/* RT_USING_INTERRUPT_INFO is not set */
|
||||||
#define RT_USING_CONSOLE
|
#define RT_USING_CONSOLE
|
||||||
#define RT_CONSOLEBUF_SIZE 128
|
#define RT_CONSOLEBUF_SIZE 128
|
||||||
#define RT_CONSOLE_DEVICE_NAME "uart1"
|
#define RT_CONSOLE_DEVICE_NAME "uart1"
|
||||||
|
@ -63,16 +69,20 @@
|
||||||
#define FINSH_CMD_SIZE 80
|
#define FINSH_CMD_SIZE 80
|
||||||
/* FINSH_USING_AUTH is not set */
|
/* FINSH_USING_AUTH is not set */
|
||||||
#define FINSH_USING_MSH
|
#define FINSH_USING_MSH
|
||||||
//#define FINSH_USING_MSH_DEFAULT
|
#define FINSH_USING_MSH_DEFAULT
|
||||||
//#define FINSH_USING_MSH_ONLY
|
/* FINSH_USING_MSH_ONLY is not set */
|
||||||
|
|
||||||
/* Device virtual file system */
|
/* Device virtual file system */
|
||||||
|
|
||||||
#define RT_USING_DFS
|
#define RT_USING_DFS
|
||||||
#define DFS_USING_WORKDIR
|
#define DFS_USING_WORKDIR
|
||||||
#define DFS_FILESYSTEMS_MAX 2
|
#define DFS_FILESYSTEMS_MAX 2
|
||||||
|
#define DFS_FILESYSTEM_TYPES_MAX 2
|
||||||
#define DFS_FD_MAX 4
|
#define DFS_FD_MAX 4
|
||||||
#define RT_USING_DFS_ELMFAT
|
#define RT_USING_DFS_ELMFAT
|
||||||
|
|
||||||
|
/* elm-chan's FatFs, Generic FAT Filesystem Module */
|
||||||
|
|
||||||
#define RT_DFS_ELM_CODE_PAGE 437
|
#define RT_DFS_ELM_CODE_PAGE 437
|
||||||
#define RT_DFS_ELM_WORD_ACCESS
|
#define RT_DFS_ELM_WORD_ACCESS
|
||||||
#define RT_DFS_ELM_USE_LFN_0
|
#define RT_DFS_ELM_USE_LFN_0
|
||||||
|
@ -86,7 +96,10 @@
|
||||||
/* RT_DFS_ELM_USE_ERASE is not set */
|
/* RT_DFS_ELM_USE_ERASE is not set */
|
||||||
#define RT_DFS_ELM_REENTRANT
|
#define RT_DFS_ELM_REENTRANT
|
||||||
#define RT_USING_DFS_DEVFS
|
#define RT_USING_DFS_DEVFS
|
||||||
#define RT_USING_DFS_NET
|
/* RT_USING_DFS_NET is not set */
|
||||||
|
/* RT_USING_DFS_ROMFS is not set */
|
||||||
|
/* RT_USING_DFS_RAMFS is not set */
|
||||||
|
/* RT_USING_DFS_UFFS is not set */
|
||||||
/* RT_USING_DFS_NFS is not set */
|
/* RT_USING_DFS_NFS is not set */
|
||||||
|
|
||||||
/* Device Drivers */
|
/* Device Drivers */
|
||||||
|
@ -101,27 +114,27 @@
|
||||||
/* RT_USING_MTD_NAND is not set */
|
/* RT_USING_MTD_NAND is not set */
|
||||||
/* RT_USING_RTC is not set */
|
/* RT_USING_RTC is not set */
|
||||||
#define RT_USING_SDIO
|
#define RT_USING_SDIO
|
||||||
//#define RT_MMCSD_DBG
|
|
||||||
/* RT_USING_SPI is not set */
|
/* RT_USING_SPI is not set */
|
||||||
/* RT_USING_WDT is not set */
|
/* RT_USING_WDT is not set */
|
||||||
|
/* RT_USING_WIFI is not set */
|
||||||
|
|
||||||
|
/* Using USB */
|
||||||
|
|
||||||
/* RT_USING_USB_HOST is not set */
|
/* RT_USING_USB_HOST is not set */
|
||||||
/* RT_USING_USB_DEVICE is not set */
|
/* RT_USING_USB_DEVICE is not set */
|
||||||
|
|
||||||
/* POSIX layer and C standard library */
|
/* POSIX layer and C standard library */
|
||||||
|
|
||||||
#define RT_USING_LIBC
|
#define RT_USING_LIBC
|
||||||
#define RT_USING_PTHREADS
|
/* RT_USING_PTHREADS is not set */
|
||||||
#define RT_USING_POSIX
|
/* RT_USING_POSIX is not set */
|
||||||
/* RT_USING_POSIX_MMAP is not set */
|
|
||||||
/* RT_USING_POSIX_TERMIOS is not set */
|
|
||||||
|
|
||||||
/* Network stack */
|
/* Network stack */
|
||||||
|
|
||||||
/* light weight TCP/IP stack */
|
/* light weight TCP/IP stack */
|
||||||
|
|
||||||
#define RT_USING_LWIP
|
#define RT_USING_LWIP
|
||||||
#define RT_USING_LWIP202
|
#define RT_USING_LWIP141
|
||||||
//#define RT_LWIP_DEBUG
|
|
||||||
/* RT_USING_LWIP202 is not set */
|
/* RT_USING_LWIP202 is not set */
|
||||||
/* RT_LWIP_IGMP is not set */
|
/* RT_LWIP_IGMP is not set */
|
||||||
#define RT_LWIP_ICMP
|
#define RT_LWIP_ICMP
|
||||||
|
@ -131,6 +144,12 @@
|
||||||
#define IP_SOF_BROADCAST 1
|
#define IP_SOF_BROADCAST 1
|
||||||
#define IP_SOF_BROADCAST_RECV 1
|
#define IP_SOF_BROADCAST_RECV 1
|
||||||
/* LWIP_USING_DHCPD is not set */
|
/* LWIP_USING_DHCPD is not set */
|
||||||
|
|
||||||
|
/* Static IPv4 Address */
|
||||||
|
|
||||||
|
#define RT_LWIP_IPADDR "192.168.1.30"
|
||||||
|
#define RT_LWIP_GWADDR "192.168.1.1"
|
||||||
|
#define RT_LWIP_MSKADDR "255.255.255.0"
|
||||||
#define RT_LWIP_UDP
|
#define RT_LWIP_UDP
|
||||||
#define RT_LWIP_TCP
|
#define RT_LWIP_TCP
|
||||||
/* RT_LWIP_RAW is not set */
|
/* RT_LWIP_RAW is not set */
|
||||||
|
@ -156,18 +175,6 @@
|
||||||
#define LWIP_SO_RCVTIMEO 1
|
#define LWIP_SO_RCVTIMEO 1
|
||||||
#define LWIP_SO_SNDTIMEO 1
|
#define LWIP_SO_SNDTIMEO 1
|
||||||
#define LWIP_SO_RCVBUF 1
|
#define LWIP_SO_RCVBUF 1
|
||||||
#define RT_LWIP_IPADDR0 192
|
|
||||||
#define RT_LWIP_IPADDR1 168
|
|
||||||
#define RT_LWIP_IPADDR2 10
|
|
||||||
#define RT_LWIP_IPADDR3 30
|
|
||||||
#define RT_LWIP_GWADDR0 192
|
|
||||||
#define RT_LWIP_GWADDR1 168
|
|
||||||
#define RT_LWIP_GWADDR2 10
|
|
||||||
#define RT_LWIP_GWADDR3 1
|
|
||||||
#define RT_LWIP_MSKADDR0 255
|
|
||||||
#define RT_LWIP_MSKADDR1 255
|
|
||||||
#define RT_LWIP_MSKADDR2 255
|
|
||||||
#define RT_LWIP_MSKADDR3 0
|
|
||||||
|
|
||||||
/* Modbus master and slave stack */
|
/* Modbus master and slave stack */
|
||||||
|
|
||||||
|
@ -178,40 +185,59 @@
|
||||||
|
|
||||||
/* RT_USING_GUIENGINE is not set */
|
/* RT_USING_GUIENGINE is not set */
|
||||||
|
|
||||||
|
/* VBUS(Virtual Software BUS) */
|
||||||
|
|
||||||
|
/* RT_USING_VBUS is not set */
|
||||||
|
|
||||||
|
/* Utilities */
|
||||||
|
|
||||||
|
/* RT_USING_LOGTRACE is not set */
|
||||||
|
/* RT_USING_RYM is not set */
|
||||||
|
|
||||||
/* RT-Thread online packages */
|
/* RT-Thread online packages */
|
||||||
|
|
||||||
/* system packages */
|
/* system packages */
|
||||||
|
|
||||||
/* PKG_USING_PARTITION is not set */
|
/* PKG_USING_PARTITION is not set */
|
||||||
/* PKG_USING_SQLITE is not set */
|
/* PKG_USING_SQLITE is not set */
|
||||||
|
/* PKG_USING_RTI is not set */
|
||||||
|
|
||||||
/* IoT - internet of things */
|
/* IoT - internet of things */
|
||||||
|
|
||||||
/* PKG_USING_CJSON is not set */
|
|
||||||
/* PKG_USING_PAHOMQTT is not set */
|
/* PKG_USING_PAHOMQTT is not set */
|
||||||
/* PKG_USING_WEBCLIENT is not set */
|
/* PKG_USING_WEBCLIENT is not set */
|
||||||
/* PKG_USING_MONGOOSE is not set */
|
/* PKG_USING_MONGOOSE is not set */
|
||||||
/* PKG_USING_WEB_TERMINAL is not set */
|
/* PKG_USING_WEBTERMINAL is not set */
|
||||||
|
/* PKG_USING_CJSON is not set */
|
||||||
|
/* PKG_USING_EZXML is not set */
|
||||||
|
/* PKG_USING_NANOPB is not set */
|
||||||
|
|
||||||
/* security packages */
|
/* security packages */
|
||||||
|
|
||||||
|
/* PKG_USING_MBEDTLS is not set */
|
||||||
|
/* PKG_USING_libsodium is not set */
|
||||||
|
|
||||||
/* language packages */
|
/* language packages */
|
||||||
|
|
||||||
/* PKG_USING_JERRYSCRIPT is not set */
|
/* PKG_USING_JERRYSCRIPT is not set */
|
||||||
|
/* PKG_USING_MICROPYTHON is not set */
|
||||||
|
|
||||||
/* multimedia packages */
|
/* multimedia packages */
|
||||||
|
|
||||||
/* tools packages */
|
/* tools packages */
|
||||||
|
|
||||||
/* PKG_USING_CMBACKTRACE is not set */
|
/* PKG_USING_CMBACKTRACE is not set */
|
||||||
/* PKG_USING_ELOG is not set */
|
/* PKG_USING_EASYLOGGER is not set */
|
||||||
|
/* PKG_USING_SYSTEMVIEW is not set */
|
||||||
|
|
||||||
/* miscellaneous packages */
|
/* miscellaneous packages */
|
||||||
|
|
||||||
|
/* PKG_USING_FASTLZ is not set */
|
||||||
|
/* PKG_USING_MINILZO is not set */
|
||||||
|
|
||||||
|
/* example package: hello */
|
||||||
|
|
||||||
/* PKG_USING_HELLO is not set */
|
/* PKG_USING_HELLO is not set */
|
||||||
|
|
||||||
/* BSP_SPECIAL CONFIG */
|
|
||||||
|
|
||||||
#define RT_USING_UART
|
#define RT_USING_UART
|
||||||
#define RT_USING_UART1
|
#define RT_USING_UART1
|
||||||
|
|
||||||
|
|
|
@ -41,16 +41,18 @@ if PLATFORM == 'gcc':
|
||||||
STRIP = PREFIX + 'strip'
|
STRIP = PREFIX + 'strip'
|
||||||
|
|
||||||
DEVICE = ' -std=c99 -mcpu=cortex-m7 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=softfp -ffunction-sections -fdata-sections'
|
DEVICE = ' -std=c99 -mcpu=cortex-m7 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=softfp -ffunction-sections -fdata-sections'
|
||||||
CFLAGS = DEVICE + ' -g -Wall -DUSE_HAL_DRIVER -D__ASSEMBLY__ -D__FPU_USED -eentry'
|
CFLAGS = DEVICE + ' -g -Wall -DUSE_HAL_DRIVER -D__ASSEMBLY__ -D__FPU_PRESENT -eentry'
|
||||||
AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb '
|
AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb '
|
||||||
LFLAGS = DEVICE + ' -lm -lgcc -lc' + ' -nostartfiles -Wl,--gc-sections,-Map=imxrt1052_sdram.map,-cref,-u,Reset_Handler -T imxrt1052_sdram.ld'
|
LFLAGS = DEVICE + ' -lm -lgcc -lc' + ' -nostartfiles -Wl,--gc-sections,-Map=imxrt1052_sdram.map,-cref,-u,Reset_Handler -T ./Libraries/gcc/MIMXRT1052xxxxx_flexspi_nor.ld'
|
||||||
|
|
||||||
CPATH = ''
|
CPATH = ''
|
||||||
LPATH = ''
|
LPATH = ''
|
||||||
|
|
||||||
if BUILD == 'debug':
|
CFLAGS += ' -gdwarf-2'
|
||||||
CFLAGS += ' -O0 -gdwarf-2'
|
|
||||||
AFLAGS += ' -gdwarf-2'
|
AFLAGS += ' -gdwarf-2'
|
||||||
|
|
||||||
|
if BUILD == 'debug':
|
||||||
|
CFLAGS += ' -O0'
|
||||||
else:
|
else:
|
||||||
CFLAGS += ' -O2 -Os'
|
CFLAGS += ' -O2 -Os'
|
||||||
|
|
||||||
|
|
|
@ -690,7 +690,7 @@
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>IlinkIcfFile</name>
|
<name>IlinkIcfFile</name>
|
||||||
<state>$PROJ_DIR$\imxrt1052_sdram.icf</state>
|
<state>$PROJ_DIR$\Libraries\iar\MIMXRT1052xxxxx_flexspi_nor.icf</state>
|
||||||
</option>
|
</option>
|
||||||
<option>
|
<option>
|
||||||
<name>IlinkIcfFileSlave</name>
|
<name>IlinkIcfFileSlave</name>
|
||||||
|
|
|
@ -16,7 +16,8 @@
|
||||||
<TargetCommonOption>
|
<TargetCommonOption>
|
||||||
<Device>MIMXRT1052:M7</Device>
|
<Device>MIMXRT1052:M7</Device>
|
||||||
<Vendor>NXP</Vendor>
|
<Vendor>NXP</Vendor>
|
||||||
<PackID>NXP.iMXRT_DFP.1.0.1</PackID>
|
<PackID>NXP.iMXRT_DFP.1.0.2</PackID>
|
||||||
|
<PackURL>http://mcuxpresso.nxp.com/cmsis_pack/repo/</PackURL>
|
||||||
<Cpu>IRAM(0x20000000,0x00060000) IRAM2(0x00000000,0x00020000) CPUTYPE("Cortex-M7") FPU3(SFPU) CLOCK(12000000) ELITTLE</Cpu>
|
<Cpu>IRAM(0x20000000,0x00060000) IRAM2(0x00000000,0x00020000) CPUTYPE("Cortex-M7") FPU3(SFPU) CLOCK(12000000) ELITTLE</Cpu>
|
||||||
<FlashUtilSpec></FlashUtilSpec>
|
<FlashUtilSpec></FlashUtilSpec>
|
||||||
<StartupFile></StartupFile>
|
<StartupFile></StartupFile>
|
||||||
|
@ -48,12 +49,12 @@
|
||||||
<InvalidFlash>1</InvalidFlash>
|
<InvalidFlash>1</InvalidFlash>
|
||||||
</TargetStatus>
|
</TargetStatus>
|
||||||
<OutputDirectory>.\build\</OutputDirectory>
|
<OutputDirectory>.\build\</OutputDirectory>
|
||||||
<OutputName>rtthread-lpc</OutputName>
|
<OutputName>rtthread-imxrt</OutputName>
|
||||||
<CreateExecutable>1</CreateExecutable>
|
<CreateExecutable>1</CreateExecutable>
|
||||||
<CreateLib>0</CreateLib>
|
<CreateLib>0</CreateLib>
|
||||||
<CreateHexFile>0</CreateHexFile>
|
<CreateHexFile>0</CreateHexFile>
|
||||||
<DebugInformation>1</DebugInformation>
|
<DebugInformation>1</DebugInformation>
|
||||||
<BrowseInformation>1</BrowseInformation>
|
<BrowseInformation>0</BrowseInformation>
|
||||||
<ListingPath>.\build\</ListingPath>
|
<ListingPath>.\build\</ListingPath>
|
||||||
<HexFormatSelection>1</HexFormatSelection>
|
<HexFormatSelection>1</HexFormatSelection>
|
||||||
<Merge32K>0</Merge32K>
|
<Merge32K>0</Merge32K>
|
||||||
|
@ -79,9 +80,9 @@
|
||||||
<nStopB2X>0</nStopB2X>
|
<nStopB2X>0</nStopB2X>
|
||||||
</BeforeMake>
|
</BeforeMake>
|
||||||
<AfterMake>
|
<AfterMake>
|
||||||
<RunUserProg1>0</RunUserProg1>
|
<RunUserProg1>1</RunUserProg1>
|
||||||
<RunUserProg2>0</RunUserProg2>
|
<RunUserProg2>0</RunUserProg2>
|
||||||
<UserProg1Name></UserProg1Name>
|
<UserProg1Name>fromelf --bin !L --output rtthread-mdk.bin</UserProg1Name>
|
||||||
<UserProg2Name></UserProg2Name>
|
<UserProg2Name></UserProg2Name>
|
||||||
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
<UserProg1Dos16Mode>0</UserProg1Dos16Mode>
|
||||||
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
<UserProg2Dos16Mode>0</UserProg2Dos16Mode>
|
||||||
|
@ -366,7 +367,7 @@
|
||||||
<TextAddressRange>0x00000000</TextAddressRange>
|
<TextAddressRange>0x00000000</TextAddressRange>
|
||||||
<DataAddressRange>0x10000000</DataAddressRange>
|
<DataAddressRange>0x10000000</DataAddressRange>
|
||||||
<pXoBase></pXoBase>
|
<pXoBase></pXoBase>
|
||||||
<ScatterFile>.\imxrt1052_sdram.sct</ScatterFile>
|
<ScatterFile>.\Libraries\arm\MIMXRT1052xxxxx_flexspi_nor.scf</ScatterFile>
|
||||||
<IncludeLibs></IncludeLibs>
|
<IncludeLibs></IncludeLibs>
|
||||||
<IncludeLibsPath></IncludeLibsPath>
|
<IncludeLibsPath></IncludeLibsPath>
|
||||||
<Misc></Misc>
|
<Misc></Misc>
|
||||||
|
|
Loading…
Reference in New Issue