MTD: SPI-based driver for Macronix MX25L3233F or MX25L6433F.

This commit is contained in:
Aleksandr Vyhovanec
2016-09-02 11:00:04 -06:00
committed by Gregory Nutt
parent 3f40541b21
commit b0f973d901
4 changed files with 1109 additions and 4 deletions
+35 -1
View File
@@ -456,6 +456,41 @@ config M25P_SUBSECTOR_ERASE
endif # MTD_M25P endif # MTD_M25P
config MTD_MX25L
bool "SPI-based MX25L3233F / MX25L6433F"
default n
select SPI
---help---
SPI-based driver for Macronix MX25L3233F or MX25L6433F.
if MTD_MX25L
config MX25L_SPIMODE
int "MX25L SPI mode"
default 0
config MX25L_SPIFREQUENCY
int "MX25L SPI Frequency"
default 20000000
config MX25L_SECTOR512
bool "Simulate 512 byte Erase Blocks"
default n
config MX25L_SUBSECTOR_ERASE
bool "Sub-Sector Erase"
default n
---help---
Some devices (such as the EON EN25F80) support a smaller erase block
size (4K vs 64K). This option enables support for sub-sector erase.
The SMART file system can take advantage of this option if it is enabled.
config MX25L_DEBUG
bool "Enable driver debug features"
default n
endif # MTD_MX25L
config MTD_S25FL1 config MTD_S25FL1
bool "QuadSPI-based S25FL1 FLASH" bool "QuadSPI-based S25FL1 FLASH"
default n default n
@@ -514,7 +549,6 @@ config MTD_N25QXXX
---help--- ---help---
Support the N25Q016A, N25Q032A, N25Q064A, N25Q128A, N25Q256A Support the N25Q016A, N25Q032A, N25Q064A, N25Q128A, N25Q256A
if MTD_N25QXXX if MTD_N25QXXX
config N25QXXX_QSPIMODE config N25QXXX_QSPIMODE
+9 -1
View File
@@ -39,7 +39,7 @@
ifeq ($(CONFIG_MTD),y) ifeq ($(CONFIG_MTD),y)
CSRCS += at45db.c ftl.c m25px.c ramtron.c mtd_config.c CSRCS += at45db.c ftl.c ramtron.c mtd_config.c
ifeq ($(CONFIG_MTD_PARTITION),y) ifeq ($(CONFIG_MTD_PARTITION),y)
CSRCS += mtd_partition.c CSRCS += mtd_partition.c
@@ -104,6 +104,14 @@ ifeq ($(CONFIG_MTD_AT25),y)
CSRCS += at25.c CSRCS += at25.c
endif endif
ifeq ($(CONFIG_MTD_M25P),y)
CSRCS += m25px.c
endif
ifeq ($(CONFIG_MTD_M25L),y)
CSRCS += m25lx.c
endif
ifeq ($(CONFIG_MTD_S25FL1),y) ifeq ($(CONFIG_MTD_S25FL1),y)
CSRCS += s25fl1.c CSRCS += s25fl1.c
endif endif
+1052
View File
File diff suppressed because it is too large Load Diff
+13 -2
View File
@@ -515,7 +515,7 @@ FAR struct mtd_dev_s *w25_initialize(FAR struct spi_dev_s *dev);
* Name: s25fl1_initialize * Name: s25fl1_initialize
* *
* Description: * Description:
* Create an initialize MTD device instance for the QuadSPI-based ST24FL1 * Create an initialized MTD device instance for the QuadSPI-based ST24FL1
* FLASH part. * FLASH part.
* *
****************************************************************************/ ****************************************************************************/
@@ -524,11 +524,22 @@ struct qspi_dev_s; /* Forward reference */
FAR struct mtd_dev_s *s25fl1_initialize(FAR struct qspi_dev_s *qspi, FAR struct mtd_dev_s *s25fl1_initialize(FAR struct qspi_dev_s *qspi,
bool unprotect); bool unprotect);
/****************************************************************************
* Name: mx25l_initialize_spi
*
* Description:
* Create an initialized MTD device instance for the SPI-based MX25Lx
* FLASH part.
*
****************************************************************************/
FAR struct mtd_dev_s *mx25l_initialize_spi(FAR struct spi_dev_s *dev);
/**************************************************************************** /****************************************************************************
* Name: n25qxxx_initialize * Name: n25qxxx_initialize
* *
* Description: * Description:
* Create an initialize MTD device instance for the QuadSPI-based N25Qxxx * Create an initialized MTD device instance for the QuadSPI-based N25Qxxx
* FLASH part from Micron. * FLASH part from Micron.
* *
****************************************************************************/ ****************************************************************************/