From 1f8836c1db4e67c100102320cb0a388181f9a639 Mon Sep 17 00:00:00 2001 From: Bernard Xiong Date: Sat, 22 Sep 2018 11:37:32 +0800 Subject: [PATCH 1/2] [BSP] Update project file for i.MXRT/i.MXRT1050-EVK. --- bsp/imxrt/imxrt1050-evk/.config | 11 +- ...rt1050_flexspi_nor.ini => flexspi_nor.ini} | 0 bsp/imxrt/imxrt1050-evk/flexspi_nor.scf | 125 + bsp/imxrt/imxrt1050-evk/project.uvoptx | 2352 ++++++++++++++++- bsp/imxrt/imxrt1050-evk/project.uvprojx | 593 ++--- bsp/imxrt/imxrt1050-evk/rtconfig.h | 4 + bsp/imxrt/imxrt1050-evk/template.uvoptx | 12 +- bsp/imxrt/imxrt1050-evk/template.uvprojx | 3 +- 8 files changed, 2698 insertions(+), 402 deletions(-) rename bsp/imxrt/imxrt1050-evk/{evkmimxrt1050_flexspi_nor.ini => flexspi_nor.ini} (100%) create mode 100644 bsp/imxrt/imxrt1050-evk/flexspi_nor.scf diff --git a/bsp/imxrt/imxrt1050-evk/.config b/bsp/imxrt/imxrt1050-evk/.config index 2f3c5d20be..59dd2aa52c 100644 --- a/bsp/imxrt/imxrt1050-evk/.config +++ b/bsp/imxrt/imxrt1050-evk/.config @@ -137,13 +137,15 @@ CONFIG_RT_PIPE_BUFSZ=512 CONFIG_RT_USING_SERIAL=y # CONFIG_RT_USING_CAN is not set # CONFIG_RT_USING_HWTIMER is not set -# CONFIG_RT_USING_CPUTIME is not set +CONFIG_RT_USING_CPUTIME=y +CONFIG_RT_USING_CPUTIME_CORTEXM=y CONFIG_RT_USING_I2C=y CONFIG_RT_USING_I2C_BITOPS=y CONFIG_RT_USING_PIN=y # CONFIG_RT_USING_PWM is not set # CONFIG_RT_USING_MTD_NOR is not set # CONFIG_RT_USING_MTD_NAND is not set +# CONFIG_RT_USING_MTD is not set CONFIG_RT_USING_RTC=y # CONFIG_RT_USING_SOFT_RTC is not set # CONFIG_RTC_SYNC_USING_NTP is not set @@ -175,8 +177,11 @@ CONFIG_RT_USING_SPI=y # POSIX layer and C standard library # CONFIG_RT_USING_LIBC=y -# CONFIG_RT_USING_PTHREADS is not set -# CONFIG_RT_USING_POSIX is not set +CONFIG_RT_USING_PTHREADS=y +CONFIG_RT_USING_POSIX=y +# CONFIG_RT_USING_POSIX_MMAP is not set +# CONFIG_RT_USING_POSIX_TERMIOS is not set +# CONFIG_RT_USING_POSIX_AIO is not set # CONFIG_RT_USING_MODULE is not set # diff --git a/bsp/imxrt/imxrt1050-evk/evkmimxrt1050_flexspi_nor.ini b/bsp/imxrt/imxrt1050-evk/flexspi_nor.ini similarity index 100% rename from bsp/imxrt/imxrt1050-evk/evkmimxrt1050_flexspi_nor.ini rename to bsp/imxrt/imxrt1050-evk/flexspi_nor.ini diff --git a/bsp/imxrt/imxrt1050-evk/flexspi_nor.scf b/bsp/imxrt/imxrt1050-evk/flexspi_nor.scf new file mode 100644 index 0000000000..5e0834cd48 --- /dev/null +++ b/bsp/imxrt/imxrt1050-evk/flexspi_nor.scf @@ -0,0 +1,125 @@ +#! armcc -E +/* +** ################################################################### +** Processors: MIMXRT1052CVL5A +** MIMXRT1052DVL6A +** +** Compiler: Keil ARM C/C++ Compiler +** Reference manual: IMXRT1050RM Rev.C, 08/2017 +** Version: rev. 0.1, 2017-01-10 +** Build: b170927 +** +** Abstract: +** Linker file for the Keil ARM C/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 +** +** ################################################################### +*/ + +#define m_flash_config_start 0x60000000 +#define m_flash_config_size 0x00001000 + +#define m_ivt_start 0x60001000 +#define m_ivt_size 0x00001000 + +#define m_text_start 0x60002000 +#define m_text_size 0x1F7FE000 + +#define m_data_start 0x20000000 +#define m_data_size 0x00020000 + +#define m_ncache_start 0x81E00000 +#define m_ncache_size 0x00200000 + +/* Sizes */ +#if (defined(__stack_size__)) + #define Stack_Size __stack_size__ +#else + #define Stack_Size 0x1000 +#endif + +#if (defined(__heap_size__)) + #define Heap_Size __heap_size__ +#else + #define Heap_Size 0x0400 +#endif + +#include "rtconfig.h" + +#if (defined(BOARD_USING_HYPERFLASH)) +LR_m_rom_config m_flash_config_start m_flash_config_size ; load region size_region +{ + RW_m_config_text m_flash_config_start m_flash_config_size ; load address = execution address + { + * (.boot_hdr.conf, +FIRST) + } +} + +LR_m_rom_ivt m_ivt_start m_ivt_size ; load region size_region +{ + RW_m_ivt_text m_ivt_start m_ivt_size ; load address = execution address + { + * (.boot_hdr.ivt, +FIRST) + * (.boot_hdr.boot_data) + * (.boot_hdr.dcd_data) + } +} +#endif + +#define RTT_HEAP_SIZE (m_data_size-ImageLength(RW_m_data)-ImageLength(ARM_LIB_HEAP)-ImageLength(ARM_LIB_STACK)) + +; load region size_region +LR_IROM1 m_text_start m_text_size +{ + ER_IROM1 m_text_start m_text_size ; load address = execution address + { + * (RESET,+FIRST) + * (InRoot$$Sections) + .ANY (+RO) + } + + RW_m_data m_data_start m_data_size-Stack_Size-Heap_Size ; RW data + { + .ANY (+RW +ZI) + } + + ARM_LIB_HEAP +0 EMPTY Heap_Size{} ; Heap region growing up + ARM_LIB_STACK +0 EMPTY Stack_Size{} ; Stack region growing down + RTT_HEAP +0 EMPTY RTT_HEAP_SIZE{} + + ; ncache RW data + RW_m_ncache m_ncache_start m_ncache_size + { + * (NonCacheable.init) + * (NonCacheable) + } +} diff --git a/bsp/imxrt/imxrt1050-evk/project.uvoptx b/bsp/imxrt/imxrt1050-evk/project.uvoptx index deca1cf444..4e51405293 100644 --- a/bsp/imxrt/imxrt1050-evk/project.uvoptx +++ b/bsp/imxrt/imxrt1050-evk/project.uvoptx @@ -73,7 +73,7 @@ 0 - 0 + 1 0 1 @@ -101,9 +101,7 @@ 0 0 1 - 0 - 0 - 3 + 2 @@ -113,7 +111,7 @@ - .\Libraries\arm\evkmimxrt1050_flexspi_nor.ini + .\flexspi_nor.ini BIN\CMSIS_AGDI.dll @@ -172,13 +170,2349 @@ - - - - + + Applications + 0 + 0 + 0 + 0 + + 1 + 1 + 1 + 0 + 0 + 0 + applications\lcd_init.c + lcd_init.c + 0 + 0 + + + 1 + 2 + 1 + 0 + 0 + 0 + applications\main.c + main.c + 0 + 0 + + + + + Drivers + 0 + 0 + 0 + 0 + + 2 + 3 + 1 + 0 + 0 + 0 + drivers\board.c + board.c + 0 + 0 + + + 2 + 4 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_uart.c + drv_uart.c + 0 + 0 + + + 2 + 5 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_cache.c + drv_cache.c + 0 + 0 + + + 2 + 6 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_sdram.c + drv_sdram.c + 0 + 0 + + + 2 + 7 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_pin.c + drv_pin.c + 0 + 0 + + + 2 + 8 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_rtc.c + drv_rtc.c + 0 + 0 + + + 2 + 9 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_spi_bus.c + drv_spi_bus.c + 0 + 0 + + + 2 + 10 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_i2c.c + drv_i2c.c + 0 + 0 + + + 2 + 11 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_lcd.c + drv_lcd.c + 0 + 0 + + + 2 + 12 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_sdio.c + drv_sdio.c + 0 + 0 + + + 2 + 13 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\drv_eth.c + drv_eth.c + 0 + 0 + + + 2 + 14 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\drivers\fsl_phy.c + fsl_phy.c + 0 + 0 + + + + + xip + 0 + 0 + 0 + 0 + + 3 + 15 + 1 + 0 + 0 + 0 + xip\fsl_flexspi_nor_boot.c + fsl_flexspi_nor_boot.c + 0 + 0 + + + 3 + 16 + 1 + 0 + 0 + 0 + xip\fsl_flexspi_nor_flash.c + fsl_flexspi_nor_flash.c + 0 + 0 + + + + + Kernel + 0 + 0 + 0 + 0 + + 4 + 17 + 1 + 0 + 0 + 0 + ..\..\..\src\clock.c + clock.c + 0 + 0 + + + 4 + 18 + 1 + 0 + 0 + 0 + ..\..\..\src\components.c + components.c + 0 + 0 + + + 4 + 19 + 1 + 0 + 0 + 0 + ..\..\..\src\device.c + device.c + 0 + 0 + + + 4 + 20 + 1 + 0 + 0 + 0 + ..\..\..\src\idle.c + idle.c + 0 + 0 + + + 4 + 21 + 1 + 0 + 0 + 0 + ..\..\..\src\ipc.c + ipc.c + 0 + 0 + + + 4 + 22 + 1 + 0 + 0 + 0 + ..\..\..\src\irq.c + irq.c + 0 + 0 + + + 4 + 23 + 1 + 0 + 0 + 0 + ..\..\..\src\kservice.c + kservice.c + 0 + 0 + + + 4 + 24 + 1 + 0 + 0 + 0 + ..\..\..\src\memheap.c + memheap.c + 0 + 0 + + + 4 + 25 + 1 + 0 + 0 + 0 + ..\..\..\src\object.c + object.c + 0 + 0 + + + 4 + 26 + 1 + 0 + 0 + 0 + ..\..\..\src\scheduler.c + scheduler.c + 0 + 0 + + + 4 + 27 + 1 + 0 + 0 + 0 + ..\..\..\src\signal.c + signal.c + 0 + 0 + + + 4 + 28 + 1 + 0 + 0 + 0 + ..\..\..\src\thread.c + thread.c + 0 + 0 + + + 4 + 29 + 1 + 0 + 0 + 0 + ..\..\..\src\timer.c + timer.c + 0 + 0 + + + + + CORTEX-M7 + 0 + 0 + 0 + 0 + + 5 + 30 + 1 + 0 + 0 + 0 + ..\..\..\libcpu\arm\cortex-m7\cpuport.c + cpuport.c + 0 + 0 + + + 5 + 31 + 2 + 0 + 0 + 0 + ..\..\..\libcpu\arm\cortex-m7\context_rvds.S + context_rvds.S + 0 + 0 + + + 5 + 32 + 1 + 0 + 0 + 0 + ..\..\..\libcpu\arm\common\backtrace.c + backtrace.c + 0 + 0 + + + 5 + 33 + 1 + 0 + 0 + 0 + ..\..\..\libcpu\arm\common\div0.c + div0.c + 0 + 0 + + + 5 + 34 + 1 + 0 + 0 + 0 + ..\..\..\libcpu\arm\common\showmem.c + showmem.c + 0 + 0 + + + + + Filesystem + 0 + 0 + 0 + 0 + + 6 + 35 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\src\dfs.c + dfs.c + 0 + 0 + + + 6 + 36 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\src\dfs_file.c + dfs_file.c + 0 + 0 + + + 6 + 37 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\src\dfs_fs.c + dfs_fs.c + 0 + 0 + + + 6 + 38 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\src\dfs_posix.c + dfs_posix.c + 0 + 0 + + + 6 + 39 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\src\poll.c + poll.c + 0 + 0 + + + 6 + 40 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\src\select.c + select.c + 0 + 0 + + + 6 + 41 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\filesystems\devfs\devfs.c + devfs.c + 0 + 0 + + + 6 + 42 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\filesystems\elmfat\dfs_elm.c + dfs_elm.c + 0 + 0 + + + 6 + 43 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\filesystems\elmfat\ff.c + ff.c + 0 + 0 + + + 6 + 44 + 1 + 0 + 0 + 0 + ..\..\..\components\dfs\filesystems\elmfat\option\ccsbcs.c + ccsbcs.c + 0 + 0 + + + + + DeviceDrivers + 0 + 0 + 0 + 0 + + 7 + 45 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\cputime\cputime.c + cputime.c + 0 + 0 + + + 7 + 46 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\cputime\cputime_cortexm.c + cputime_cortexm.c + 0 + 0 + + + 7 + 47 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\i2c\i2c_core.c + i2c_core.c + 0 + 0 + + + 7 + 48 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\i2c\i2c_dev.c + i2c_dev.c + 0 + 0 + + + 7 + 49 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\i2c\i2c-bit-ops.c + i2c-bit-ops.c + 0 + 0 + + + 7 + 50 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\misc\pin.c + pin.c + 0 + 0 + + + 7 + 51 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\rtc\rtc.c + rtc.c + 0 + 0 + + + 7 + 52 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\sdio\block_dev.c + block_dev.c + 0 + 0 + + + 7 + 53 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\sdio\mmcsd_core.c + mmcsd_core.c + 0 + 0 + + + 7 + 54 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\sdio\sd.c + sd.c + 0 + 0 + + + 7 + 55 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\sdio\sdio.c + sdio.c + 0 + 0 + + + 7 + 56 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\sdio\mmc.c + mmc.c + 0 + 0 + + + 7 + 57 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\serial\serial.c + serial.c + 0 + 0 + + + 7 + 58 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\spi\spi_core.c + spi_core.c + 0 + 0 + + + 7 + 59 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\spi\spi_dev.c + spi_dev.c + 0 + 0 + + + 7 + 60 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\completion.c + completion.c + 0 + 0 + + + 7 + 61 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\dataqueue.c + dataqueue.c + 0 + 0 + + + 7 + 62 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\pipe.c + pipe.c + 0 + 0 + + + 7 + 63 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\ringblk_buf.c + ringblk_buf.c + 0 + 0 + + + 7 + 64 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\ringbuffer.c + ringbuffer.c + 0 + 0 + + + 7 + 65 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\waitqueue.c + waitqueue.c + 0 + 0 + + + 7 + 66 + 1 + 0 + 0 + 0 + ..\..\..\components\drivers\src\workqueue.c + workqueue.c + 0 + 0 + + + + + finsh + 0 + 0 + 0 + 0 + + 8 + 67 + 1 + 0 + 0 + 0 + ..\..\..\components\finsh\shell.c + shell.c + 0 + 0 + + + 8 + 68 + 1 + 0 + 0 + 0 + ..\..\..\components\finsh\symbol.c + symbol.c + 0 + 0 + + + 8 + 69 + 1 + 0 + 0 + 0 + ..\..\..\components\finsh\cmd.c + cmd.c + 0 + 0 + + + 8 + 70 + 1 + 0 + 0 + 0 + ..\..\..\components\finsh\msh.c + msh.c + 0 + 0 + + + 8 + 71 + 1 + 0 + 0 + 0 + ..\..\..\components\finsh\msh_cmd.c + msh_cmd.c + 0 + 0 + + + 8 + 72 + 1 + 0 + 0 + 0 + ..\..\..\components\finsh\msh_file.c + msh_file.c + 0 + 0 + + + + + libc + 0 + 0 + 0 + 0 + + 9 + 73 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\compilers\armlibc\libc.c + libc.c + 0 + 0 + + + 9 + 74 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\compilers\armlibc\mem_std.c + mem_std.c + 0 + 0 + + + 9 + 75 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\compilers\armlibc\stdio.c + stdio.c + 0 + 0 + + + 9 + 76 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\compilers\armlibc\stubs.c + stubs.c + 0 + 0 + + + 9 + 77 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\compilers\armlibc\time.c + time.c + 0 + 0 + + + + + pthreads + 0 + 0 + 0 + 0 + + 10 + 78 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\mqueue.c + mqueue.c + 0 + 0 + + + 10 + 79 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread.c + pthread.c + 0 + 0 + + + 10 + 80 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_attr.c + pthread_attr.c + 0 + 0 + + + 10 + 81 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_barrier.c + pthread_barrier.c + 0 + 0 + + + 10 + 82 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_cond.c + pthread_cond.c + 0 + 0 + + + 10 + 83 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_mutex.c + pthread_mutex.c + 0 + 0 + + + 10 + 84 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_rwlock.c + pthread_rwlock.c + 0 + 0 + + + 10 + 85 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_spin.c + pthread_spin.c + 0 + 0 + + + 10 + 86 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\pthread_tls.c + pthread_tls.c + 0 + 0 + + + 10 + 87 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\sched.c + sched.c + 0 + 0 + + + 10 + 88 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\pthreads\semaphore.c + semaphore.c + 0 + 0 + + + 10 + 89 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\time\clock_time.c + clock_time.c + 0 + 0 + + + 10 + 90 + 1 + 0 + 0 + 0 + ..\..\..\components\libc\time\posix_sleep.c + posix_sleep.c + 0 + 0 + + + + + lwIP + 0 + 0 + 0 + 0 + + 11 + 91 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\arch\sys_arch.c + sys_arch.c + 0 + 0 + + + 11 + 92 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\api_lib.c + api_lib.c + 0 + 0 + + + 11 + 93 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\api_msg.c + api_msg.c + 0 + 0 + + + 11 + 94 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\err.c + err.c + 0 + 0 + + + 11 + 95 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\netbuf.c + netbuf.c + 0 + 0 + + + 11 + 96 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\netdb.c + netdb.c + 0 + 0 + + + 11 + 97 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\netifapi.c + netifapi.c + 0 + 0 + + + 11 + 98 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\sockets.c + sockets.c + 0 + 0 + + + 11 + 99 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\api\tcpip.c + tcpip.c + 0 + 0 + + + 11 + 100 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\def.c + def.c + 0 + 0 + + + 11 + 101 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\dns.c + dns.c + 0 + 0 + + + 11 + 102 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\inet_chksum.c + inet_chksum.c + 0 + 0 + + + 11 + 103 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\init.c + init.c + 0 + 0 + + + 11 + 104 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ip.c + ip.c + 0 + 0 + + + 11 + 105 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\memp.c + memp.c + 0 + 0 + + + 11 + 106 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\netif.c + netif.c + 0 + 0 + + + 11 + 107 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\pbuf.c + pbuf.c + 0 + 0 + + + 11 + 108 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\raw.c + raw.c + 0 + 0 + + + 11 + 109 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\stats.c + stats.c + 0 + 0 + + + 11 + 110 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\sys.c + sys.c + 0 + 0 + + + 11 + 111 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\tcp.c + tcp.c + 0 + 0 + + + 11 + 112 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\tcp_in.c + tcp_in.c + 0 + 0 + + + 11 + 113 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\tcp_out.c + tcp_out.c + 0 + 0 + + + 11 + 114 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\timeouts.c + timeouts.c + 0 + 0 + + + 11 + 115 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\udp.c + udp.c + 0 + 0 + + + 11 + 116 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\netif\ethernet.c + ethernet.c + 0 + 0 + + + 11 + 117 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\netif\ethernetif.c + ethernetif.c + 0 + 0 + + + 11 + 118 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\netif\lowpan6.c + lowpan6.c + 0 + 0 + + + 11 + 119 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\autoip.c + autoip.c + 0 + 0 + + + 11 + 120 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\dhcp.c + dhcp.c + 0 + 0 + + + 11 + 121 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\etharp.c + etharp.c + 0 + 0 + + + 11 + 122 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\icmp.c + icmp.c + 0 + 0 + + + 11 + 123 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\igmp.c + igmp.c + 0 + 0 + + + 11 + 124 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4.c + ip4.c + 0 + 0 + + + 11 + 125 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_addr.c + ip4_addr.c + 0 + 0 + + + 11 + 126 + 1 + 0 + 0 + 0 + ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_frag.c + ip4_frag.c + 0 + 0 + + + + + Libraries + 0 + 0 + 0 + 0 + + 12 + 127 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_adc.c + fsl_adc.c + 0 + 0 + + + 12 + 128 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_adc_etc.c + fsl_adc_etc.c + 0 + 0 + + + 12 + 129 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_aipstz.c + fsl_aipstz.c + 0 + 0 + + + 12 + 130 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_aoi.c + fsl_aoi.c + 0 + 0 + + + 12 + 131 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_bee.c + fsl_bee.c + 0 + 0 + + + 12 + 132 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_cache.c + fsl_cache.c + 0 + 0 + + + 12 + 133 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_clock.c + fsl_clock.c + 0 + 0 + + + 12 + 134 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_cmp.c + fsl_cmp.c + 0 + 0 + + + 12 + 135 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_common.c + fsl_common.c + 0 + 0 + + + 12 + 136 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_csi.c + fsl_csi.c + 0 + 0 + + + 12 + 137 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_dcdc.c + fsl_dcdc.c + 0 + 0 + + + 12 + 138 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_dcp.c + fsl_dcp.c + 0 + 0 + + + 12 + 139 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_dmamux.c + fsl_dmamux.c + 0 + 0 + + + 12 + 140 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_edma.c + fsl_edma.c + 0 + 0 + + + 12 + 141 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_elcdif.c + fsl_elcdif.c + 0 + 0 + + + 12 + 142 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_enc.c + fsl_enc.c + 0 + 0 + + + 12 + 143 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_enet.c + fsl_enet.c + 0 + 0 + + + 12 + 144 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_ewm.c + fsl_ewm.c + 0 + 0 + + + 12 + 145 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexcan.c + fsl_flexcan.c + 0 + 0 + + + 12 + 146 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio.c + fsl_flexio.c + 0 + 0 + + + 12 + 147 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_i2c_master.c + fsl_flexio_i2c_master.c + 0 + 0 + + + 12 + 148 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_i2s.c + fsl_flexio_i2s.c + 0 + 0 + + + 12 + 149 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_i2s_edma.c + fsl_flexio_i2s_edma.c + 0 + 0 + + + 12 + 150 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_spi.c + fsl_flexio_spi.c + 0 + 0 + + + 12 + 151 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_spi_edma.c + fsl_flexio_spi_edma.c + 0 + 0 + + + 12 + 152 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_uart.c + fsl_flexio_uart.c + 0 + 0 + + + 12 + 153 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_uart_edma.c + fsl_flexio_uart_edma.c + 0 + 0 + + + 12 + 154 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexram.c + fsl_flexram.c + 0 + 0 + + + 12 + 155 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexspi.c + fsl_flexspi.c + 0 + 0 + + + 12 + 156 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_gpc.c + fsl_gpc.c + 0 + 0 + + + 12 + 157 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_gpio.c + fsl_gpio.c + 0 + 0 + + + 12 + 158 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_gpt.c + fsl_gpt.c + 0 + 0 + + + 12 + 159 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_kpp.c + fsl_kpp.c + 0 + 0 + + + 12 + 160 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpi2c.c + fsl_lpi2c.c + 0 + 0 + + + 12 + 161 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpi2c_edma.c + fsl_lpi2c_edma.c + 0 + 0 + + + 12 + 162 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpspi.c + fsl_lpspi.c + 0 + 0 + + + 12 + 163 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpspi_edma.c + fsl_lpspi_edma.c + 0 + 0 + + + 12 + 164 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpuart.c + fsl_lpuart.c + 0 + 0 + + + 12 + 165 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpuart_edma.c + fsl_lpuart_edma.c + 0 + 0 + + + 12 + 166 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pit.c + fsl_pit.c + 0 + 0 + + + 12 + 167 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pmu.c + fsl_pmu.c + 0 + 0 + + + 12 + 168 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pwm.c + fsl_pwm.c + 0 + 0 + + + 12 + 169 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pxp.c + fsl_pxp.c + 0 + 0 + + + 12 + 170 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_qtmr.c + fsl_qtmr.c + 0 + 0 + + + 12 + 171 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_rtwdog.c + fsl_rtwdog.c + 0 + 0 + + + 12 + 172 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_sai.c + fsl_sai.c + 0 + 0 + + + 12 + 173 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_sai_edma.c + fsl_sai_edma.c + 0 + 0 + + + 12 + 174 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_semc.c + fsl_semc.c + 0 + 0 + + + 12 + 175 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_snvs_hp.c + fsl_snvs_hp.c + 0 + 0 + + + 12 + 176 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_snvs_lp.c + fsl_snvs_lp.c + 0 + 0 + + + 12 + 177 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_spdif.c + fsl_spdif.c + 0 + 0 + + + 12 + 178 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_spdif_edma.c + fsl_spdif_edma.c + 0 + 0 + + + 12 + 179 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_src.c + fsl_src.c + 0 + 0 + + + 12 + 180 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_trng.c + fsl_trng.c + 0 + 0 + + + 12 + 181 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_tsc.c + fsl_tsc.c + 0 + 0 + + + 12 + 182 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_usdhc.c + fsl_usdhc.c + 0 + 0 + + + 12 + 183 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_wdog.c + fsl_wdog.c + 0 + 0 + + + 12 + 184 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_xbara.c + fsl_xbara.c + 0 + 0 + + + 12 + 185 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_xbarb.c + fsl_xbarb.c + 0 + 0 + + + 12 + 186 + 1 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\system_MIMXRT1052.c + system_MIMXRT1052.c + 0 + 0 + + + 12 + 187 + 2 + 0 + 0 + 0 + ..\Libraries\imxrt1050\devices\MIMXRT1052\arm\startup_MIMXRT1052.s + startup_MIMXRT1052.s + 0 + 0 + + + ::CMSIS 0 diff --git a/bsp/imxrt/imxrt1050-evk/project.uvprojx b/bsp/imxrt/imxrt1050-evk/project.uvprojx index a9896eabdb..0edb6985f6 100644 --- a/bsp/imxrt/imxrt1050-evk/project.uvprojx +++ b/bsp/imxrt/imxrt1050-evk/project.uvprojx @@ -1,14 +1,16 @@ + 2.1 +
### uVision Project, (C) Keil Software
+ RT-Thread IMXRT1052 0x4 ARM-ADS - 5060528::V5.06 update 5 (build 528)::ARMCC - 0 + 5060422::V5.06 update 4 (build 422)::ARMCC MIMXRT1052:M7 @@ -16,28 +18,28 @@ NXP.iMXRT_DFP.1.0.2 http://mcuxpresso.nxp.com/cmsis_pack/repo/ IRAM(0x20000000,0x00060000) IRAM2(0x00000000,0x00020000) CPUTYPE("Cortex-M7") FPU3(SFPU) CLOCK(12000000) ELITTLE - - + + UL2CM3(-S0 -C0 -P0 -FD20000000 -FC1000 -FN1 -FF0RT1050 -FS060000000 -FL04000000 -FP0($$Device:MIMXRT1052$Flash\RT1050.FLM)) 0 $$Device:MIMXRT1052$Device\Include\MIMXRT1052.h - - - - - - - - - + + + + + + + + + $$Device:MIMXRT1052$SVD\MIMXRT1052.svd 0 0 - - - - - + + + + + 0 0 @@ -59,8 +61,8 @@ 0 0 - - + + 0 0 0 @@ -69,8 +71,8 @@ 0 0 - - + + 0 0 0 @@ -80,14 +82,14 @@ 1 0 fromelf --bin !L --output rtthread-mdk.bin - + 0 0 0 0 0 - + 0 @@ -101,8 +103,8 @@ 0 0 3 - - + + 1 @@ -135,11 +137,11 @@ 1 BIN\UL2CM3.DLL - - - - - + + + + + 0 @@ -172,7 +174,7 @@ 0 0 "Cortex-M7" - + 0 0 0 @@ -304,7 +306,7 @@ 0x20000 - + 1 @@ -332,8 +334,8 @@ --library_interface=armcc --library_type=standardlib --diag_suppress=66,1296,186 SKIP_SYSCLK_INIT, FSL_SDK_ENABLE_DRIVER_CACHE_CONTROL=1, EVK_MCIMXRM, FSL_FEATURE_PHYKSZ8081_USE_RMII50M_MODE, CPU_MIMXRT1052DVL6B, RT_USING_ARM_LIBC - - applications;.;drivers;..\Libraries\imxrt1050\drivers;xip;..\..\..\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\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\spi;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\finsh;..\..\..\components\libc\compilers\armlibc;..\..\..\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;..\..\..\components\net\lwip-2.0.2\src\include\posix;..\Libraries\imxrt1050\CMSIS\Include;..\Libraries\imxrt1050\devices\MIMXRT1052;..\Libraries\imxrt1050\devices\MIMXRT1052\drivers;..\Libraries\imxrt1050\devices\MIMXRT1052\utilities + + applications;.;drivers;..\Libraries\imxrt1050\drivers;xip;..\..\..\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\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\spi;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\finsh;..\..\..\components\libc\compilers\armlibc;..\..\..\components\libc\pthreads;..\..\..\components\libc\time;..\..\..\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;..\..\..\components\net\lwip-2.0.2\src\include\posix;..\Libraries\imxrt1050\CMSIS\Include;..\Libraries\imxrt1050\devices\MIMXRT1052;..\Libraries\imxrt1050\devices\MIMXRT1052\drivers;..\Libraries\imxrt1050\devices\MIMXRT1052\utilities @@ -348,10 +350,10 @@ 0 0 - - - - + + + + @@ -363,13 +365,13 @@ 0 0x00000000 0x10000000 - - .\Libraries\arm\MIMXRT1052xxxxx_flexspi_nor.scf - - + + .\flexspi_nor.scf + + --keep=*(.boot_hdr.ivt)--keep=*(.boot_hdr.boot_data)--keep=*(.boot_hdr.dcd_data)--keep=*(.boot_hdr.conf) --keep *.o(.rti_fn.*) --keep *.o(FSymTab) - - + + @@ -382,8 +384,6 @@ 1 applications\lcd_init.c - - main.c 1 @@ -399,78 +399,56 @@ 1 drivers\board.c - - drv_uart.c 1 ..\Libraries\imxrt1050\drivers\drv_uart.c - - drv_cache.c 1 ..\Libraries\imxrt1050\drivers\drv_cache.c - - drv_sdram.c 1 ..\Libraries\imxrt1050\drivers\drv_sdram.c - - drv_pin.c 1 ..\Libraries\imxrt1050\drivers\drv_pin.c - - drv_rtc.c 1 ..\Libraries\imxrt1050\drivers\drv_rtc.c - - drv_spi_bus.c 1 ..\Libraries\imxrt1050\drivers\drv_spi_bus.c - - drv_i2c.c 1 ..\Libraries\imxrt1050\drivers\drv_i2c.c - - drv_lcd.c 1 ..\Libraries\imxrt1050\drivers\drv_lcd.c - - drv_sdio.c 1 ..\Libraries\imxrt1050\drivers\drv_sdio.c - - drv_eth.c 1 ..\Libraries\imxrt1050\drivers\drv_eth.c - - fsl_phy.c 1 @@ -486,8 +464,6 @@ 1 xip\fsl_flexspi_nor_boot.c - - fsl_flexspi_nor_flash.c 1 @@ -503,85 +479,61 @@ 1 ..\..\..\src\clock.c - - components.c 1 ..\..\..\src\components.c - - device.c 1 ..\..\..\src\device.c - - idle.c 1 ..\..\..\src\idle.c - - ipc.c 1 ..\..\..\src\ipc.c - - irq.c 1 ..\..\..\src\irq.c - - kservice.c 1 ..\..\..\src\kservice.c - - memheap.c 1 ..\..\..\src\memheap.c - - object.c 1 ..\..\..\src\object.c - - scheduler.c 1 ..\..\..\src\scheduler.c - - signal.c 1 ..\..\..\src\signal.c - - thread.c 1 ..\..\..\src\thread.c - - timer.c 1 @@ -597,29 +549,21 @@ 1 ..\..\..\libcpu\arm\cortex-m7\cpuport.c - - context_rvds.S 2 ..\..\..\libcpu\arm\cortex-m7\context_rvds.S - - backtrace.c 1 ..\..\..\libcpu\arm\common\backtrace.c - - div0.c 1 ..\..\..\libcpu\arm\common\div0.c - - showmem.c 1 @@ -635,50 +579,46 @@ 1 ..\..\..\components\dfs\src\dfs.c - - dfs_file.c 1 ..\..\..\components\dfs\src\dfs_file.c - - dfs_fs.c 1 ..\..\..\components\dfs\src\dfs_fs.c - - dfs_posix.c 1 ..\..\..\components\dfs\src\dfs_posix.c - - + + poll.c + 1 + ..\..\..\components\dfs\src\poll.c + + + select.c + 1 + ..\..\..\components\dfs\src\select.c + devfs.c 1 ..\..\..\components\dfs\filesystems\devfs\devfs.c - - dfs_elm.c 1 ..\..\..\components\dfs\filesystems\elmfat\dfs_elm.c - - ff.c 1 ..\..\..\components\dfs\filesystems\elmfat\ff.c - - ccsbcs.c 1 @@ -688,158 +628,186 @@
DeviceDrivers + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + 0 + + + + 2 + 0 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 0 + 2 + 2 + 2 + 2 + 0 + 0 + 2 + 2 + 2 + 2 + 2 + + + + + + + + + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + + + + + + + + + + + cputime.c + 1 + ..\..\..\components\drivers\cputime\cputime.c + + + cputime_cortexm.c + 1 + ..\..\..\components\drivers\cputime\cputime_cortexm.c + i2c_core.c 1 ..\..\..\components\drivers\i2c\i2c_core.c - - i2c_dev.c 1 ..\..\..\components\drivers\i2c\i2c_dev.c - - i2c-bit-ops.c 1 ..\..\..\components\drivers\i2c\i2c-bit-ops.c - - pin.c 1 ..\..\..\components\drivers\misc\pin.c - - rtc.c 1 ..\..\..\components\drivers\rtc\rtc.c - - block_dev.c 1 ..\..\..\components\drivers\sdio\block_dev.c - - mmcsd_core.c 1 ..\..\..\components\drivers\sdio\mmcsd_core.c - - sd.c 1 ..\..\..\components\drivers\sdio\sd.c - - sdio.c 1 ..\..\..\components\drivers\sdio\sdio.c - - mmc.c 1 ..\..\..\components\drivers\sdio\mmc.c - - serial.c 1 ..\..\..\components\drivers\serial\serial.c - - spi_core.c 1 ..\..\..\components\drivers\spi\spi_core.c - - spi_dev.c 1 ..\..\..\components\drivers\spi\spi_dev.c - - completion.c 1 ..\..\..\components\drivers\src\completion.c - - dataqueue.c 1 ..\..\..\components\drivers\src\dataqueue.c - - pipe.c 1 ..\..\..\components\drivers\src\pipe.c - - ringblk_buf.c 1 ..\..\..\components\drivers\src\ringblk_buf.c - - ringbuffer.c 1 ..\..\..\components\drivers\src\ringbuffer.c - - waitqueue.c 1 ..\..\..\components\drivers\src\waitqueue.c - - workqueue.c 1 ..\..\..\components\drivers\src\workqueue.c - - - - - - - - - - - - finsh @@ -849,36 +817,26 @@ 1 ..\..\..\components\finsh\shell.c - - symbol.c 1 ..\..\..\components\finsh\symbol.c - - cmd.c 1 ..\..\..\components\finsh\cmd.c - - msh.c 1 ..\..\..\components\finsh\msh.c - - msh_cmd.c 1 ..\..\..\components\finsh\msh_cmd.c - - msh_file.c 1 @@ -894,29 +852,21 @@ 1 ..\..\..\components\libc\compilers\armlibc\libc.c - - mem_std.c 1 ..\..\..\components\libc\compilers\armlibc\mem_std.c - - stdio.c 1 ..\..\..\components\libc\compilers\armlibc\stdio.c - - stubs.c 1 ..\..\..\components\libc\compilers\armlibc\stubs.c - - time.c 1 @@ -924,6 +874,76 @@ + + pthreads + + + mqueue.c + 1 + ..\..\..\components\libc\pthreads\mqueue.c + + + pthread.c + 1 + ..\..\..\components\libc\pthreads\pthread.c + + + pthread_attr.c + 1 + ..\..\..\components\libc\pthreads\pthread_attr.c + + + pthread_barrier.c + 1 + ..\..\..\components\libc\pthreads\pthread_barrier.c + + + pthread_cond.c + 1 + ..\..\..\components\libc\pthreads\pthread_cond.c + + + pthread_mutex.c + 1 + ..\..\..\components\libc\pthreads\pthread_mutex.c + + + pthread_rwlock.c + 1 + ..\..\..\components\libc\pthreads\pthread_rwlock.c + + + pthread_spin.c + 1 + ..\..\..\components\libc\pthreads\pthread_spin.c + + + pthread_tls.c + 1 + ..\..\..\components\libc\pthreads\pthread_tls.c + + + sched.c + 1 + ..\..\..\components\libc\pthreads\sched.c + + + semaphore.c + 1 + ..\..\..\components\libc\pthreads\semaphore.c + + + clock_time.c + 1 + ..\..\..\components\libc\time\clock_time.c + + + posix_sleep.c + 1 + ..\..\..\components\libc\time\posix_sleep.c + + + lwIP @@ -932,246 +952,176 @@ 1 ..\..\..\components\net\lwip-2.0.2\src\arch\sys_arch.c - - api_lib.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\api_lib.c - - api_msg.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\api_msg.c - - err.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\err.c - - netbuf.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\netbuf.c - - netdb.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\netdb.c - - netifapi.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\netifapi.c - - sockets.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\sockets.c - - tcpip.c 1 ..\..\..\components\net\lwip-2.0.2\src\api\tcpip.c - - def.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\def.c - - dns.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\dns.c - - inet_chksum.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\inet_chksum.c - - init.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\init.c - - ip.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ip.c - - memp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\memp.c - - netif.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\netif.c - - pbuf.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\pbuf.c - - raw.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\raw.c - - stats.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\stats.c - - sys.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\sys.c - - tcp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\tcp.c - - tcp_in.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\tcp_in.c - - tcp_out.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\tcp_out.c - - timeouts.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\timeouts.c - - udp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\udp.c - - ethernet.c 1 ..\..\..\components\net\lwip-2.0.2\src\netif\ethernet.c - - ethernetif.c 1 ..\..\..\components\net\lwip-2.0.2\src\netif\ethernetif.c - - lowpan6.c 1 ..\..\..\components\net\lwip-2.0.2\src\netif\lowpan6.c - - autoip.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\autoip.c - - dhcp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\dhcp.c - - etharp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\etharp.c - - icmp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\icmp.c - - igmp.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\igmp.c - - ip4.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4.c - - ip4_addr.c 1 ..\..\..\components\net\lwip-2.0.2\src\core\ipv4\ip4_addr.c - - ip4_frag.c 1 @@ -1187,421 +1137,301 @@ 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_adc.c - - fsl_adc_etc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_adc_etc.c - - fsl_aipstz.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_aipstz.c - - fsl_aoi.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_aoi.c - - fsl_bee.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_bee.c - - fsl_cache.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_cache.c - - fsl_clock.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_clock.c - - fsl_cmp.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_cmp.c - - fsl_common.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_common.c - - fsl_csi.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_csi.c - - fsl_dcdc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_dcdc.c - - fsl_dcp.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_dcp.c - - fsl_dmamux.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_dmamux.c - - fsl_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_edma.c - - fsl_elcdif.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_elcdif.c - - fsl_enc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_enc.c - - fsl_enet.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_enet.c - - fsl_ewm.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_ewm.c - - fsl_flexcan.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexcan.c - - fsl_flexio.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio.c - - fsl_flexio_i2c_master.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_i2c_master.c - - fsl_flexio_i2s.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_i2s.c - - fsl_flexio_i2s_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_i2s_edma.c - - fsl_flexio_spi.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_spi.c - - fsl_flexio_spi_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_spi_edma.c - - fsl_flexio_uart.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_uart.c - - fsl_flexio_uart_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexio_uart_edma.c - - fsl_flexram.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexram.c - - fsl_flexspi.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_flexspi.c - - fsl_gpc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_gpc.c - - fsl_gpio.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_gpio.c - - fsl_gpt.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_gpt.c - - fsl_kpp.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_kpp.c - - fsl_lpi2c.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpi2c.c - - fsl_lpi2c_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpi2c_edma.c - - fsl_lpspi.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpspi.c - - fsl_lpspi_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpspi_edma.c - - fsl_lpuart.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpuart.c - - fsl_lpuart_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_lpuart_edma.c - - fsl_pit.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pit.c - - fsl_pmu.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pmu.c - - fsl_pwm.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pwm.c - - fsl_pxp.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_pxp.c - - fsl_qtmr.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_qtmr.c - - fsl_rtwdog.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_rtwdog.c - - fsl_sai.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_sai.c - - fsl_sai_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_sai_edma.c - - fsl_semc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_semc.c - - fsl_snvs_hp.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_snvs_hp.c - - fsl_snvs_lp.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_snvs_lp.c - - fsl_spdif.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_spdif.c - - fsl_spdif_edma.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_spdif_edma.c - - fsl_src.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_src.c - - fsl_trng.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_trng.c - - fsl_tsc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_tsc.c - - fsl_usdhc.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_usdhc.c - - fsl_wdog.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_wdog.c - - fsl_xbara.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_xbara.c - - fsl_xbarb.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\drivers\fsl_xbarb.c - - system_MIMXRT1052.c 1 ..\Libraries\imxrt1050\devices\MIMXRT1052\system_MIMXRT1052.c - - startup_MIMXRT1052.s 2 @@ -1609,19 +1439,24 @@ + + ::CMSIS + + - + - + - + - + + diff --git a/bsp/imxrt/imxrt1050-evk/rtconfig.h b/bsp/imxrt/imxrt1050-evk/rtconfig.h index 6e35b4b71a..8e90cbeded 100644 --- a/bsp/imxrt/imxrt1050-evk/rtconfig.h +++ b/bsp/imxrt/imxrt1050-evk/rtconfig.h @@ -93,6 +93,8 @@ #define RT_USING_DEVICE_IPC #define RT_PIPE_BUFSZ 512 #define RT_USING_SERIAL +#define RT_USING_CPUTIME +#define RT_USING_CPUTIME_CORTEXM #define RT_USING_I2C #define RT_USING_I2C_BITOPS #define RT_USING_PIN @@ -111,6 +113,8 @@ /* POSIX layer and C standard library */ #define RT_USING_LIBC +#define RT_USING_PTHREADS +#define RT_USING_POSIX /* Network */ diff --git a/bsp/imxrt/imxrt1050-evk/template.uvoptx b/bsp/imxrt/imxrt1050-evk/template.uvoptx index deca1cf444..38055496d3 100644 --- a/bsp/imxrt/imxrt1050-evk/template.uvoptx +++ b/bsp/imxrt/imxrt1050-evk/template.uvoptx @@ -73,7 +73,7 @@ 0 - 0 + 1 0 1 @@ -101,9 +101,7 @@ 0 0 1 - 0 - 0 - 3 + 2 @@ -113,7 +111,7 @@ - .\Libraries\arm\evkmimxrt1050_flexspi_nor.ini + .\flexspi_nor.ini BIN\CMSIS_AGDI.dll @@ -172,10 +170,6 @@ - - - - diff --git a/bsp/imxrt/imxrt1050-evk/template.uvprojx b/bsp/imxrt/imxrt1050-evk/template.uvprojx index 30ff50525f..f6b254976b 100644 --- a/bsp/imxrt/imxrt1050-evk/template.uvprojx +++ b/bsp/imxrt/imxrt1050-evk/template.uvprojx @@ -11,7 +11,6 @@ 0x4 ARM-ADS 5060528::V5.06 update 5 (build 528)::ARMCC - 0 MIMXRT1052:M7 @@ -367,7 +366,7 @@ 0x00000000 0x10000000 - .\Libraries\arm\MIMXRT1052xxxxx_flexspi_nor.scf + .\flexspi_nor.scf From 82931384082547f76217b931195aaed32aa7a10b Mon Sep 17 00:00:00 2001 From: Bernard Xiong Date: Sat, 22 Sep 2018 11:57:48 +0800 Subject: [PATCH 2/2] [BSP] Update building script for gcc in i.MXRT/i.MXRT1050-EVK --- .../Libraries/imxrt1050/drivers/drv_pin.c | 2 +- bsp/imxrt/imxrt1050-evk/SConstruct | 20 +- bsp/imxrt/imxrt1050-evk/flexspi_nor.ld | 276 ++++++++++++++++++ bsp/imxrt/imxrt1050-evk/rtconfig.py | 6 +- 4 files changed, 281 insertions(+), 23 deletions(-) create mode 100644 bsp/imxrt/imxrt1050-evk/flexspi_nor.ld diff --git a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_pin.c b/bsp/imxrt/Libraries/imxrt1050/drivers/drv_pin.c index e834c1265f..3acc6ae609 100644 --- a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_pin.c +++ b/bsp/imxrt/Libraries/imxrt1050/drivers/drv_pin.c @@ -362,7 +362,7 @@ void GPIO5_Combined_0_15_IRQHandler(void) static IRQn_Type rt1052_get_irqnum(GPIO_Type *gpio, rt_uint32_t gpio_pin) { - IRQn_Type irq_num = -100; /* Invalid interrupt number */ + IRQn_Type irq_num = NotAvail_IRQn; /* Invalid interrupt number */ if(gpio == GPIO1) { diff --git a/bsp/imxrt/imxrt1050-evk/SConstruct b/bsp/imxrt/imxrt1050-evk/SConstruct index 679e8a2b47..5f99b4eed1 100644 --- a/bsp/imxrt/imxrt1050-evk/SConstruct +++ b/bsp/imxrt/imxrt1050-evk/SConstruct @@ -2,7 +2,6 @@ import os import sys import rtconfig - if os.getenv('RTT_ROOT'): RTT_ROOT = os.getenv('RTT_ROOT') else: @@ -42,26 +41,9 @@ Export('RTT_ROOT') Export('rtconfig') # prepare building environment -objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False) +objs = PrepareBuilding(env, RTT_ROOT) objs = objs + SConscript('../Libraries/imxrt1050/SConscript') # make a building DoBuilding(TARGET, objs) - -def Update_MDKFlashProgrammingAlgorithm(flash_dict): - import xml.etree.ElementTree as etree - from utils import xml_indent - - project_tree = etree.parse('project.uvoptx') - root = project_tree.getroot() - out = file('project.uvoptx', 'wb') - - for elem in project_tree.iterfind('.//Target/TargetOption/TargetDriverDllRegistry/SetRegEntry'): - Key = elem.find('Key') - if Key.text in flash_dict.keys(): - elem.find('Name').text = flash_dict[Key.text] - - xml_indent(root) - out.write(etree.tostring(root, encoding='utf-8')) - out.close() diff --git a/bsp/imxrt/imxrt1050-evk/flexspi_nor.ld b/bsp/imxrt/imxrt1050-evk/flexspi_nor.ld new file mode 100644 index 0000000000..b8c229ae3c --- /dev/null +++ b/bsp/imxrt/imxrt1050-evk/flexspi_nor.ld @@ -0,0 +1,276 @@ +/* +** ################################################################### +** 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_boot_data (RX) : ORIGIN = 0x60000000, LENGTH = 0x00001000 + m_image_vertor_table (RX) : ORIGIN = 0x60001000, LENGTH = 0x00001000 + + m_interrupts (RX) : ORIGIN = 0x60002000, LENGTH = 0x00000400 + m_text (RX) : ORIGIN = 0x60002400, LENGTH = 0x1F7FDC00 + + 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 */ +SECTIONS +{ + .boot_data : + { + KEEP(*(.boot_hdr.conf)) + } > m_boot_data + + .image_vertor_table : + { + KEEP(*(.boot_hdr.ivt)) + KEEP(*(.boot_hdr.boot_data)) + KEEP(*(.boot_hdr.dcd_data)) + } > m_image_vertor_table + + /* 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)) + . = 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 + + .ARM.extab : + { + *(.ARM.extab* .gnu.linkonce.armextab.*) + } > m_text + + .ARM : + { + __exidx_start = .; + *(.ARM.exidx*) + __exidx_end = .; + } > m_text + + .ctors : + { + PROVIDE(__ctors_start__ = .); + /* __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__ = .; */ + PROVIDE(__ctors_end__ = .); + } > m_text + + .dtors : + { + PROVIDE(__dtors_start__ = .); + /* __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__ = .; */ + PROVIDE(__dtors_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_dtcm + + __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_nocache + . = __noncachedata_init_end__; + .ncache : + { + *(NonCacheable) + . = ALIGN(4); + __noncachedata_end__ = .; /* define a global symbol at ncache data end */ + } > m_nocache + + __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_dtcm + + .stack : + { + . = ALIGN(8); + stack_start = .; + . += STACK_SIZE; + stack_end = .; + __StackTop = .; + } > m_dtcm + + .RTT_HEAP : + { + heap_start = .; + . = ALIGN(8); + } > m_dtcm + + PROVIDE(heap_end = ORIGIN(m_dtcm) + LENGTH(m_dtcm)); + + .ARM.attributes 0 : { *(.ARM.attributes) } + +} + diff --git a/bsp/imxrt/imxrt1050-evk/rtconfig.py b/bsp/imxrt/imxrt1050-evk/rtconfig.py index 086d884fe8..1b4257884f 100644 --- a/bsp/imxrt/imxrt1050-evk/rtconfig.py +++ b/bsp/imxrt/imxrt1050-evk/rtconfig.py @@ -42,8 +42,8 @@ if PLATFORM == 'gcc': DEVICE = ' -mcpu=cortex-m7 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -ffunction-sections -fdata-sections' CFLAGS = DEVICE + ' -std=c99 -Wall -D__FPU_PRESENT -eentry' - AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb ' - LFLAGS = DEVICE + ' -lm -lgcc -lc' + ' -nostartfiles -Wl,--gc-sections,-Map=rtthread-imxrt-gcc.map,-cref,-u,Reset_Handler -T ./Libraries/gcc/MIMXRT1052xxxxx_flexspi_nor.ld' + AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb -D__START=entry' + LFLAGS = DEVICE + ' -lm -lgcc -lc' + ' -nostartfiles -Wl,--gc-sections,-Map=rtthread-imxrt-gcc.map,-cref,-u,Reset_Handler -T flexspi_nor.ld' CPATH = '' LPATH = '' @@ -135,7 +135,7 @@ elif PLATFORM == 'iar': AFLAGS += ' --cpu Cortex-M7' AFLAGS += ' --fpu None' - LFLAGS = ' --config ./Libraries/iar/MIMXRT1052xxxxx_flexspi_nor.icf' + LFLAGS = ' --config flexspi_nor.icf' LFLAGS += ' --redirect _Printf=_PrintfTiny' LFLAGS += ' --redirect _Scanf=_ScanfSmall' LFLAGS += ' --entry __iar_program_start'