arch/arm/src/lpc54xx: Add support for card detect and write protect to SDMMC driver. configs/lpcxpresso-lpc54628: Add logic to bring up SDMMC.

This commit is contained in:
Gregory Nutt
2017-12-20 10:52:05 -06:00
parent 5392955ec4
commit c867d42018
53 changed files with 231 additions and 247 deletions
-1
View File
@@ -214,7 +214,6 @@
#define SDMMC_INT_SDMMC (1 << 16) /* Bit 16: Mask SD/MMC interrupt */ #define SDMMC_INT_SDMMC (1 << 16) /* Bit 16: Mask SD/MMC interrupt */
/* Bits 17-31: Reserved */ /* Bits 17-31: Reserved */
#define SDMMC_INT_ALL (0x1ffff) #define SDMMC_INT_ALL (0x1ffff)
#define SDMMC_INT_RESET (0)
/* Command register CMD */ /* Command register CMD */
File diff suppressed because it is too large Load Diff
+1 -45
View File
@@ -66,7 +66,7 @@ extern "C"
* Name: lpc54_sdmmc_initialize * Name: lpc54_sdmmc_initialize
* *
* Description: * Description:
* Initialize SDIO for operation. * Initialize the SD/MMC peripheral for normal operation.
* *
* Input Parameters: * Input Parameters:
* slotno - Not used. * slotno - Not used.
@@ -79,49 +79,5 @@ extern "C"
struct lpc54_sdmmc_dev_s; /* See include/nuttx/sdio.h */ struct lpc54_sdmmc_dev_s; /* See include/nuttx/sdio.h */
FAR struct sdio_dev_s *lpc54_sdmmc_initialize(int slotno); FAR struct sdio_dev_s *lpc54_sdmmc_initialize(int slotno);
/****************************************************************************
* Name: lpc54_sdmmc_mediachange
*
* Description:
* Called by board-specific logic -- posssible from an interrupt handler --
* in order to signal to the driver that a card has been inserted or
* removed from the slot
*
* Input Parameters:
* dev - An instance of the SDIO driver device state structure.
* cardinslot - true is a card has been detected in the slot; false if a
* card has been removed from the slot. Only transitions
* (inserted->removed or removed->inserted should be reported)
*
* Returned Values:
* None
*
****************************************************************************/
void lpc54_sdmmc_mediachange(FAR struct sdio_dev_s *dev, bool cardinslot);
/****************************************************************************
* Name: lpc54_sdmmc_wrprotect
*
* Description:
* Called by board-specific logic to report if the card in the slot is
* mechanically write protected.
*
* Input Parameters:
* dev - An instance of the SDIO driver device state structure.
* wrprotect - true is a card is writeprotected.
*
* Returned Values:
* None
*
****************************************************************************/
void lpc54_sdmmc_wrprotect(FAR struct sdio_dev_s *dev, bool wrprotect);
#undef EXTERN
#if defined(__cplusplus)
}
#endif
#endif /* __ASSEMBLY__ */ #endif /* __ASSEMBLY__ */
#endif /* __ARCH_ARM_SRC_LPC54XX_LPC54_SDMMC_H */ #endif /* __ARCH_ARM_SRC_LPC54XX_LPC54_SDMMC_H */
+1 -1
View File
@@ -813,7 +813,7 @@ Configuration sub-directories
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot
CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers
CONFIG_MMCSD_HAVECARDDETECT=y : I/O1 module as a card detect GPIO CONFIG_MMCSD_HAVE_CARDDETECT=y : I/O1 module as a card detect GPIO
CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card
CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency
CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set # CONFIG_NSH_DISABLE_PS is not set
+1 -1
View File
@@ -453,7 +453,7 @@ SD Card Support
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -456,7 +456,7 @@ SD Card Support
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -286,7 +286,7 @@ HY-Mini specific Configuration Options
Default: Medium Default: Medium
CONFIG_STM32_SDIO_WIDTH_D1_ONLY - Select 1-bit transfer mode. Default: CONFIG_STM32_SDIO_WIDTH_D1_ONLY - Select 1-bit transfer mode. Default:
4-bit transfer mode. 4-bit transfer mode.
CONFIG_MMCSD_HAVECARDDETECT - Select if SDIO driver card detection CONFIG_MMCSD_HAVE_CARDDETECT - Select if SDIO driver card detection
is 100% accurate (it is on the HY-MiniSTM32V) is 100% accurate (it is on the HY-MiniSTM32V)
HY-MiniSTM32V CAN Configuration HY-MiniSTM32V CAN Configuration
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
CONFIG_ARCH_BOARD_HYMINI_STM32V=y CONFIG_ARCH_BOARD_HYMINI_STM32V=y
CONFIG_ARCH_BOARD="hymini-stm32v" CONFIG_ARCH_BOARD="hymini-stm32v"
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set # CONFIG_NSH_DISABLE_PS is not set
@@ -51,6 +51,12 @@
# include <nuttx/input/buttons.h> # include <nuttx/input/buttons.h>
#endif #endif
#ifdef CONFIG_LPC54_SDMMC
# include <nuttx/sdio.h>
# include <nuttx/mmcsd.h>
# include "lpc54_sdmmc.h"
#endif
#include "lpcxpresso-lpc54628.h" #include "lpcxpresso-lpc54628.h"
/**************************************************************************** /****************************************************************************
@@ -73,6 +79,9 @@
int lpc54_bringup(void) int lpc54_bringup(void)
{ {
#ifdef HAVE_MMCSD
struct sdio_dev_s *sdmmc;
#endif
int ret; int ret;
#ifdef CONFIG_FS_PROCFS #ifdef CONFIG_FS_PROCFS
@@ -85,6 +94,9 @@ int lpc54_bringup(void)
} }
#endif #endif
FAR struct sdio_dev_s *lpc54_sdmmc_initialize(int slotno);
#ifdef HAVE_I2CTOOL #ifdef HAVE_I2CTOOL
/* Register I2C drivers on behalf of the I2C tool */ /* Register I2C drivers on behalf of the I2C tool */
@@ -111,6 +123,28 @@ int lpc54_bringup(void)
} }
#endif #endif
#ifdef HAVE_MMCSD
/* Get an instance of the SDIO interface */
sdmmc = lpc54_sdmmc_initialize(0);
if (!sdmmc)
{
syslog(LOG_ERR, "ERROR: Failed to initialize SD/MMC\n");
}
else
{
/* Dind the SDIO interface to the MMC/SD driver */
ret = mmcsd_slotinitialize(MMCSD_MINOR, sdmmc);
if (ret != OK)
{
syslog(LOG_ERR,
"ERROR: Failed to bind SDIO to the MMC/SD driver: %d\n",
ret);
}
}
#endif
#ifdef CONFIG_BUTTONS_LOWER #ifdef CONFIG_BUTTONS_LOWER
/* Register the BUTTON driver */ /* Register the BUTTON driver */
@@ -51,6 +51,7 @@
#define HAVE_I2CTOOL 1 #define HAVE_I2CTOOL 1
#define HAVE_FT5x06 1 #define HAVE_FT5x06 1
#define HAVE_MMCSD 1
/* Do we need to register I2C drivers on behalf of the I2C tool? */ /* Do we need to register I2C drivers on behalf of the I2C tool? */
@@ -66,6 +67,21 @@
# undef HAVE_FT5x06 # undef HAVE_FT5x06
#endif #endif
/* MMC/SD support */
#if !defined(CONFIG_LPC54_SDMMC) || !defined(CONFIG_MMCSD) || \
!defined(CONFIG_MMCSD_SDIO) || defined(CONFIG_DISABLE_MOUNTPOINT)
# undef HAVE_MMCSD
#endif
/* Select the MMCSD minor number */
#ifdef CONFIG_NSH_MMCSDMINOR
# define MMCSD_MINOR CONFIG_NSH_MMCSDMINOR
#else
# define MMCSD_MINOR 0
#endif
/* Indices into a sparse I2C array. Used with lpc54_i2c_handle() */ /* Indices into a sparse I2C array. Used with lpc54_i2c_handle() */
#ifdef CONFIG_LPC54_I2C0_MASTER #ifdef CONFIG_LPC54_I2C0_MASTER
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_ARGCAT is not set # CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_ARGCAT is not set # CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_ARGCAT is not set # CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_SPI_CALLBACK is not set # CONFIG_SPI_CALLBACK is not set
# CONFIG_SPI_EXCHANGE is not set # CONFIG_SPI_EXCHANGE is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_ARGCAT is not set # CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
+1 -1
View File
@@ -98,7 +98,7 @@ microSD Card Interface
Device Drivers -> MMC/SD Driver Support Device Drivers -> MMC/SD Driver Support
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
# CONFIG_MMCSD_HAVECARDDETECT is not set : No card-detect GPIO # CONFIG_MMCSD_HAVE_CARDDETECT is not set : No card-detect GPIO
# CONFIG_MMCSD_MMCSUPPORT is not set : Interferes with some SD cards # CONFIG_MMCSD_MMCSUPPORT is not set : Interferes with some SD cards
# CONFIG_MMCSD_SPI is not set : No SPI-based MMC/SD support # CONFIG_MMCSD_SPI is not set : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -1,6 +1,6 @@
# CONFIG_DISABLE_OS_API is not set # CONFIG_DISABLE_OS_API is not set
# CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set # CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_NSH_DISABLE_CMP is not set # CONFIG_NSH_DISABLE_CMP is not set
# CONFIG_NSH_DISABLE_DD is not set # CONFIG_NSH_DISABLE_DD is not set
# CONFIG_NSH_DISABLE_DF is not set # CONFIG_NSH_DISABLE_DF is not set
+1 -1
View File
@@ -1,6 +1,6 @@
# CONFIG_DISABLE_OS_API is not set # CONFIG_DISABLE_OS_API is not set
# CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set # CONFIG_DISABLE_PSEUDOFS_OPERATIONS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_NSH_DISABLE_CMP is not set # CONFIG_NSH_DISABLE_CMP is not set
# CONFIG_NSH_DISABLE_DD is not set # CONFIG_NSH_DISABLE_DD is not set
# CONFIG_NSH_DISABLE_DF is not set # CONFIG_NSH_DISABLE_DF is not set
+1 -1
View File
@@ -103,7 +103,7 @@
*/ */
#ifdef NSH_HAVE_MMCSD #ifdef NSH_HAVE_MMCSD
# ifdef CONFIG_MMCSD_HAVECARDDETECT # ifdef CONFIG_MMCSD_HAVE_CARDDETECT
# define NSH_HAVE_MMCSD_CD 1 # define NSH_HAVE_MMCSD_CD 1
# ifdef CONFIG_LPC17_GPIOIRQ # ifdef CONFIG_LPC17_GPIOIRQ
# define NSH_HAVE_MMCSD_CDINT 1 # define NSH_HAVE_MMCSD_CDINT 1
+1 -1
View File
@@ -1,5 +1,5 @@
# CONFIG_ARCH_LEDS is not set # CONFIG_ARCH_LEDS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_ARGCAT is not set # CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
+1 -1
View File
@@ -1,5 +1,5 @@
# CONFIG_ARCH_RAMFUNCS is not set # CONFIG_ARCH_RAMFUNCS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_CONSOLE is not set # CONFIG_NSH_CONSOLE is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
+1 -1
View File
@@ -1,5 +1,5 @@
# CONFIG_ARCH_RAMFUNCS is not set # CONFIG_ARCH_RAMFUNCS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_SPI_CALLBACK is not set # CONFIG_SPI_CALLBACK is not set
# CONFIG_SPI_EXCHANGE is not set # CONFIG_SPI_EXCHANGE is not set
+1 -1
View File
@@ -438,7 +438,7 @@ Configurations
Device Drivers -> MMC/SD Driver Support Device Drivers -> MMC/SD Driver Support
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
CONFIG_SDIO_DMA=y : Use SDIO DMA CONFIG_SDIO_DMA=y : Use SDIO DMA
CONFIG_SDIO_BLOCKSETUP=y : Needs to know block sizes CONFIG_SDIO_BLOCKSETUP=y : Needs to know block sizes
+1 -1
View File
@@ -1,5 +1,5 @@
# CONFIG_ARCH_RAMFUNCS is not set # CONFIG_ARCH_RAMFUNCS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
+1 -1
View File
@@ -678,7 +678,7 @@ HSMCI
Device Drivers -> MMC/SD Driver Support Device Drivers -> MMC/SD Driver Support
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMCSD_NSLOTS=1 : One slot per driver instance CONFIG_MMCSD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : Probably works but is untested CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : Probably works but is untested
+1 -1
View File
@@ -525,7 +525,7 @@ Configuration sub-directories
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot
CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers
CONFIG_MMCSD_HAVECARDDETECT=y : I/O1 module as a card detect GPIO CONFIG_MMCSD_HAVE_CARDDETECT=y : I/O1 module as a card detect GPIO
CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card
CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency
CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required
@@ -197,7 +197,7 @@ int sam_hsmci_initialize(void);
* *
************************************************************************************/ ************************************************************************************/
#if defined(HAVE_HSMCI) && defined(CONFIG_MMCSD_HAVECARDDETECT) #if defined(HAVE_HSMCI) && defined(CONFIG_MMCSD_HAVE_CARDDETECT)
bool sam_cardinserted(int slotno); bool sam_cardinserted(int slotno);
#endif #endif
+4 -4
View File
@@ -94,7 +94,7 @@ static struct sam_hsmci_state_s g_hsmci;
* *
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_MMCSD_HAVECARDDETECT #ifdef CONFIG_MMCSD_HAVE_CARDDETECT
static int sam_hsmci_cardetect_int(int irq, void *regs, FAR void *arg) static int sam_hsmci_cardetect_int(int irq, void *regs, FAR void *arg)
{ {
bool inserted; bool inserted;
@@ -160,7 +160,7 @@ int sam_hsmci_initialize(void)
return ret; return ret;
} }
#ifdef CONFIG_MMCSD_HAVECARDDETECT #ifdef CONFIG_MMCSD_HAVE_CARDDETECT
/* Initialize card-detect GPIO. There is no write-protection GPIO. */ /* Initialize card-detect GPIO. There is no write-protection GPIO. */
sam_configgpio(GPIO_MCI_CD); sam_configgpio(GPIO_MCI_CD);
@@ -183,7 +183,7 @@ int sam_hsmci_initialize(void)
/* Enable card detect interrupts */ /* Enable card detect interrupts */
#ifdef CONFIG_MMCSD_HAVECARDDETECT #ifdef CONFIG_MMCSD_HAVE_CARDDETECT
sam_gpioirqenable(MCI_CD_IRQ); sam_gpioirqenable(MCI_CD_IRQ);
#endif #endif
} }
@@ -199,7 +199,7 @@ int sam_hsmci_initialize(void)
* *
****************************************************************************/ ****************************************************************************/
#ifdef CONFIG_MMCSD_HAVECARDDETECT #ifdef CONFIG_MMCSD_HAVE_CARDDETECT
bool sam_cardinserted(int slotno) bool sam_cardinserted(int slotno)
{ {
bool removed; bool removed;
+1 -1
View File
@@ -1129,7 +1129,7 @@ HSMCI Card Slots
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -1305,7 +1305,7 @@ HSMCI Card Slots
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -1675,7 +1675,7 @@ HSMCI Card Slots
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+2 -2
View File
@@ -57,7 +57,7 @@ STATUS/ISSUES
with the USART output on SERCOM4. Both symptoms imply some clock- with the USART output on SERCOM4. Both symptoms imply some clock-
related issue. related issue.
The configuration suggests CONFIG_MMCSD_HAVECARDDETECT=y, but as of The configuration suggests CONFIG_MMCSD_HAVE_CARDDETECT=y, but as of
this writing, there is no support for EIC pin interrupts. this writing, there is no support for EIC pin interrupts.
4. OLED1 module is untested. These instructions were just lifted from 4. OLED1 module is untested. These instructions were just lifted from
@@ -766,7 +766,7 @@ Configuration sub-directories
CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot
CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers
CONFIG_MMCSD_MMCSUPPORT=n : May interfere with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : May interfere with some SD cards
CONFIG_MMCSD_HAVECARDDETECT=y : I/O1 module as a card detect GPIO CONFIG_MMCSD_HAVE_CARDDETECT=y : I/O1 module as a card detect GPIO
CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card
CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency
CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required
+1 -1
View File
@@ -631,7 +631,7 @@ Configuration sub-directories
CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot
CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers
CONFIG_MMCSD_MMCSUPPORT=n : May interfere with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : May interfere with some SD cards
CONFIG_MMCSD_HAVECARDDETECT=y : I/O1 module as a card detect GPIO CONFIG_MMCSD_HAVE_CARDDETECT=y : I/O1 module as a card detect GPIO
CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card
CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency
CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required
+1 -1
View File
@@ -163,7 +163,7 @@ the SD slots can be enabled with the following settings:
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -798,7 +798,7 @@ Configuration sub-directories
CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot CONFIG_MMCSD_NSLOTS=1 : Only one MMC/SD card slot
CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers CONFIG_MMCSD_MULTIBLOCK_DISABLE=n : Should not need to disable multi-block transfers
CONFIG_MMCSD_MMCSUPPORT=n : May interfere with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : May interfere with some SD cards
CONFIG_MMCSD_HAVECARDDETECT=y : I/O1 module as a card detect GPIO CONFIG_MMCSD_HAVE_CARDDETECT=y : I/O1 module as a card detect GPIO
CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card CONFIG_MMCSD_SPI=y : Use the SPI interface to the MMC/SD card
CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency CONFIG_MMCSD_SPICLOCK=20000000 : This is a guess for the optimal MMC/SD frequency
CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required CONFIG_MMCSD_SPIMODE=0 : Mode 0 is required
+1 -1
View File
@@ -279,7 +279,7 @@ Enabling HSMCI support. The SAMV7-XULT provides a one, full-size SD memory card
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT) CONFIG_MMCSD_MULTIBLOCK_DISABLE=y : (REVISIT)
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
CONFIG_ARCH_BOARD_STM3210E_EVAL=y CONFIG_ARCH_BOARD_STM3210E_EVAL=y
CONFIG_ARCH_BOARD="stm3210e-eval" CONFIG_ARCH_BOARD="stm3210e-eval"
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set # CONFIG_NSH_DISABLE_PS is not set
+1 -1
View File
@@ -2,7 +2,7 @@
# CONFIG_EXAMPLES_NX_DEFAULT_FONT is not set # CONFIG_EXAMPLES_NX_DEFAULT_FONT is not set
# CONFIG_EXAMPLES_NXHELLO_DEFAULT_COLORS is not set # CONFIG_EXAMPLES_NXHELLO_DEFAULT_COLORS is not set
# CONFIG_EXAMPLES_NXHELLO_DEFAULT_FONT is not set # CONFIG_EXAMPLES_NXHELLO_DEFAULT_FONT is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set # CONFIG_NSH_DISABLE_PS is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
CONFIG_ARCH_BOARD_STM3210E_EVAL=y CONFIG_ARCH_BOARD_STM3210E_EVAL=y
CONFIG_ARCH_BOARD="stm3210e-eval" CONFIG_ARCH_BOARD="stm3210e-eval"
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set # CONFIG_NSH_DISABLE_PS is not set
+1 -1
View File
@@ -1,5 +1,5 @@
# CONFIG_DEV_CONSOLE is not set # CONFIG_DEV_CONSOLE is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_CONSOLE is not set # CONFIG_NSH_CONSOLE is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_CMDOPT_HEXDUMP is not set # CONFIG_NSH_CMDOPT_HEXDUMP is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
+1 -1
View File
@@ -1,6 +1,6 @@
# CONFIG_ARCH_FPU is not set # CONFIG_ARCH_FPU is not set
# CONFIG_DEV_CONSOLE is not set # CONFIG_DEV_CONSOLE is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_CONSOLE is not set # CONFIG_NSH_CONSOLE is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
+1 -1
View File
@@ -1,5 +1,5 @@
# CONFIG_ARCH_RAMFUNCS is not set # CONFIG_ARCH_RAMFUNCS is not set
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_DISABLE_IFCONFIG is not set # CONFIG_NSH_DISABLE_IFCONFIG is not set
# CONFIG_NSH_DISABLE_PS is not set # CONFIG_NSH_DISABLE_PS is not set
+1 -1
View File
@@ -276,7 +276,7 @@ microSD Card Interface
Device Drivers -> MMC/SD Driver Support Device Drivers -> MMC/SD Driver Support
CONFIG_MMCSD=y : Enable MMC/SD support CONFIG_MMCSD=y : Enable MMC/SD support
CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance CONFIG_MMSCD_NSLOTS=1 : One slot per driver instance
CONFIG_MMCSD_HAVECARDDETECT=y : Supports card-detect PIOs CONFIG_MMCSD_HAVE_CARDDETECT=y : Supports card-detect PIOs
CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards CONFIG_MMCSD_MMCSUPPORT=n : Interferes with some SD cards
CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support CONFIG_MMCSD_SPI=n : No SPI-based MMC/SD support
CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support CONFIG_MMCSD_SDIO=y : SDIO-based MMC/SD support
+1 -1
View File
@@ -1,4 +1,4 @@
# CONFIG_MMCSD_HAVECARDDETECT is not set # CONFIG_MMCSD_HAVE_CARDDETECT is not set
# CONFIG_MMCSD_MMCSUPPORT is not set # CONFIG_MMCSD_MMCSUPPORT is not set
# CONFIG_NSH_ARGCAT is not set # CONFIG_NSH_ARGCAT is not set
# CONFIG_NSH_CMDOPT_DF_H is not set # CONFIG_NSH_CMDOPT_DF_H is not set

Some files were not shown because too many files have changed in this diff Show More