0d7366c912
- Moves definition of BOARD_FLASH_SIZE and other header files related to flash configuration into the Makefile. - Adds board specific clock_config.h. - Adds board.h, pin_mux.h, and peripherals.h as they are required by NXP MCU SDK in order to use our own clock_config.h. - Renames board specific FlexSPI configuration files. - Updates flash frequency of MIMXRT1020_EVK - Creates separated flash_config files for QSPI NOR and QSPI Hyper flash. - Unifies VFS start address to be @ 1M for 1010 and 1020 boards. - Unifies 1050EVK boards - Adds support to both NOR and HyperFlash on boards with both capabilities. - Adds automatic FlexRAM initialization to start-up code based on linker script and NXP HAL. - Applies code formatting to all files in mimxrt port. With this change the flash configuration is restructured and organized. This simplifies the configuration process and provides a better overview of each board's settings. With the integration of clock_config.h, board.h, pin_mux.h, and peripherals.h we gain better control of the settings and clock configurations. Furthermore the implementation of an explicit FlexRAM setup improves the system performance and allows for performance tuning. Signed-off-by: Philipp Ebensberger
42 lines
1.3 KiB
Plaintext
42 lines
1.3 KiB
Plaintext
/* Memory configuration */
|
|
#if BOARD_FLASH_RESERVED
|
|
reserved_size = BOARD_FLASH_RESERVED;
|
|
#endif
|
|
|
|
#if BOARD_FLASH_TYPE==qspi_nor
|
|
flash_start = 0x60000000;
|
|
#elif BOARD_FLASH_TYPE==hyperflash
|
|
flash_start = 0x60000000;
|
|
#elif BOARD_FLASH_TYPE==internal
|
|
flash_start = 0x70000000;
|
|
#else
|
|
#error Unknown BOARD_FLASH_TYPE
|
|
#endif
|
|
flash_size = BOARD_FLASH_SIZE;
|
|
flash_end = DEFINED(reserved_size) ? ((flash_start) + (flash_size - reserved_size)) : ((flash_start) + (flash_size));
|
|
flash_config_start = flash_start;
|
|
flash_config_size = 0x00001000;
|
|
ivt_start = flash_start + 0x00001000;
|
|
ivt_size = 0x00001000;
|
|
interrupts_start = flash_start + 0x00002000;
|
|
interrupts_size = 0x00000400;
|
|
text_start = flash_start + 0x00002400;
|
|
vfs_start = flash_start + 0x00100000;
|
|
text_size = ((vfs_start) - (text_start));
|
|
vfs_size = ((flash_end) - (vfs_start));
|
|
itcm_start = 0x00000000;
|
|
itcm_size = 0x00020000;
|
|
dtcm_start = 0x20000000;
|
|
dtcm_size = 0x00020000;
|
|
ocrm_start = 0x20200000;
|
|
ocrm_size = 0x000C0000;
|
|
|
|
/* 24kiB stack. */
|
|
__stack_size__ = 0x6000;
|
|
_estack = __StackTop;
|
|
_sstack = __StackLimit;
|
|
|
|
/* Use second OCRAM bank for GC heap. */
|
|
_gc_heap_start = ORIGIN(m_ocrm);
|
|
_gc_heap_end = ORIGIN(m_ocrm) + LENGTH(m_ocrm);
|