diff --git a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_hyper.c b/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_hyper.c index 124ec5cce133ef902a161ce2e17ce915dec69288..1db7f743e9aad0fba8a42170b64d50bbec1f440c 100644 --- a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_hyper.c +++ b/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_hyper.c @@ -461,4 +461,3 @@ SECTION("itcm") int rt_hw_flexspi_init(void) rt_hw_interrupt_enable(level); return 0; } -INIT_PREV_EXPORT(rt_hw_flexspi_init); diff --git a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_nor.c b/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_nor.c index af8247cd8846f89ffc226fbc2ba3e16f5476263f..e9efbfd72416b32e21ca2a53a562ade4eeff188b 100644 --- a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_nor.c +++ b/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi_nor.c @@ -385,4 +385,3 @@ SECTION("itcm") int rt_hw_flexspi_init(void) rt_hw_interrupt_enable(level); return 0; } -INIT_PREV_EXPORT(rt_hw_flexspi_init); diff --git a/bsp/imxrt/imxrt1050-ArchMix/drivers/SConscript b/bsp/imxrt/imxrt1050-ArchMix/drivers/SConscript index f4557be7f05a633149dc0ab3ff54cebcc9e53738..3d9c8e1b4f37abf566681df0ddc8ee748dbd799c 100644 --- a/bsp/imxrt/imxrt1050-ArchMix/drivers/SConscript +++ b/bsp/imxrt/imxrt1050-ArchMix/drivers/SConscript @@ -5,6 +5,7 @@ cwd = GetCurrentDir() # add the general drivers. src = Split(""" board.c +drv_flexspi.c """) CPPPATH = [cwd] diff --git a/bsp/imxrt/imxrt1050-ArchMix/drivers/drv_flexspi.c b/bsp/imxrt/imxrt1050-ArchMix/drivers/drv_flexspi.c new file mode 100644 index 0000000000000000000000000000000000000000..8bd49adc03d03b1daac556273ff141c7ec53a2f9 --- /dev/null +++ b/bsp/imxrt/imxrt1050-ArchMix/drivers/drv_flexspi.c @@ -0,0 +1,5 @@ +#include +#include + +INIT_PREV_EXPORT(rt_hw_flexspi_init); + diff --git a/bsp/imxrt/imxrt1050-ArchMix/drivers/drv_flexspi.h b/bsp/imxrt/imxrt1050-ArchMix/drivers/drv_flexspi.h new file mode 100644 index 0000000000000000000000000000000000000000..b209b47a70c29d1e15e3203e0bf2f1d1a3901064 --- /dev/null +++ b/bsp/imxrt/imxrt1050-ArchMix/drivers/drv_flexspi.h @@ -0,0 +1,18 @@ +#ifndef __DRV_FLEXSPI_H__ +#define __DRV_FLEXSPI_H__ +#include "fsl_flexspi.h" +#include "fsl_common.h" +#ifdef BOARD_USING_QSPIFLASH +#define FLASH_SIZE 0x2000 /* 64Mb/KByte */ +#define FLASH_PAGE_SIZE 256 +#define FLEXSPI_NOR_SECTOR_SIZE 0x1000 /* 4K */ +#elif defined(BOARD_USING_HYPERFLASH) +#define FLASH_SIZE 0x10000 /* 512Mb/KByte */ +#define FLASH_PAGE_SIZE 512 +#define FLEXSPI_NOR_SECTOR_SIZE 0x40000 /* 256K */ +#endif +#define FLEXSPI_AMBA_BASE FlexSPI_AMBA_BASE +extern int rt_hw_flexspi_init(void); +extern status_t flexspi_nor_flash_erase_sector(FLEXSPI_Type *base, uint32_t address); +extern status_t flexspi_nor_flash_page_program(FLEXSPI_Type *base, uint32_t address, const uint32_t *src); +#endif diff --git a/bsp/imxrt/imxrt1050-evk/drivers/SConscript b/bsp/imxrt/imxrt1050-evk/drivers/SConscript index a7090a02d313d194523435296eba897ee27d9376..3c78eb06d388f4f13090bcbe9238096bbbcc3c84 100644 --- a/bsp/imxrt/imxrt1050-evk/drivers/SConscript +++ b/bsp/imxrt/imxrt1050-evk/drivers/SConscript @@ -5,6 +5,7 @@ cwd = GetCurrentDir() # add the general drivers. src = Split(""" board.c +drv_flexspi.c """) CPPPATH = [cwd] diff --git a/bsp/imxrt/imxrt1050-evk/drivers/drv_flexspi.c b/bsp/imxrt/imxrt1050-evk/drivers/drv_flexspi.c new file mode 100644 index 0000000000000000000000000000000000000000..8bd49adc03d03b1daac556273ff141c7ec53a2f9 --- /dev/null +++ b/bsp/imxrt/imxrt1050-evk/drivers/drv_flexspi.c @@ -0,0 +1,5 @@ +#include +#include + +INIT_PREV_EXPORT(rt_hw_flexspi_init); + diff --git a/bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi.h b/bsp/imxrt/imxrt1050-evk/drivers/drv_flexspi.h similarity index 100% rename from bsp/imxrt/Libraries/imxrt1050/drivers/drv_flexspi.h rename to bsp/imxrt/imxrt1050-evk/drivers/drv_flexspi.h