diff --git a/README.txt b/README.txt index 9559ba7485..f45f4eb9fe 100644 --- a/README.txt +++ b/README.txt @@ -68,6 +68,10 @@ ENVIRONMENTS the time as Cygwin, perhaps 20 minutes for the basic Ubuntu install (vs. more than a day for the complete Cygwin install). + There have been even more recent ports of Linux environment to + Windows. I need to update this section to include some mention of + these alternatives. + - The MSYS environment. I have no experience using the MSYS environment and that configuration will not be discussed in this README file. See http://www.mingw.org/wiki/MSYS if you are interested in @@ -76,6 +80,17 @@ ENVIRONMENTS is that it is closer to a native Windows environment and uses only a minimal of add-on POSIX-land tools. + - Other POSIX environments. Check out: + + UnxUtils: https://sourceforge.net/projects/unxutils/, + https://en.wikipedia.org/wiki/UnxUtils + MobaXterm: https://mobaxterm.mobatek.net/ + Gow`: https://github.com/bmatzelle/gow/wiki + + Disclaimer: In priniple, these should work. However, I have never + used any of these environments and cannot guarantee that there is + not some less-than-obvious issues. + NuttX can also be installed and built on a native Windows system, but with some potential tool-related issues (see the discussion "Native Windows Build" under "Building NuttX" below). GNUWin32 is used to provide diff --git a/arch/arm/src/stm32/Kconfig b/arch/arm/src/stm32/Kconfig index 241068fc4c..dfe43b1241 100644 --- a/arch/arm/src/stm32/Kconfig +++ b/arch/arm/src/stm32/Kconfig @@ -7602,6 +7602,15 @@ config STM32_SDIO_CARD Build in additional support needed only for SDIO cards (vs. SD memory cards) +config STM32_SDIO_PULLUP + bool "Enable internal Pull-Ups" + default n + ---help--- + If you are using an external SDCard module that does not have the + pull-up resistors for the SDIO interface (like the Gadgeteer SD Card + Module) then enable this option to activate the internal pull-up + resistors. + config STM32_SDIO_DMA bool "Support DMA data transfers" default y if STM32_DMA2 diff --git a/arch/arm/src/stm32/stm32_sdio.c b/arch/arm/src/stm32/stm32_sdio.c index 4480a302dd..88cb13eeb6 100644 --- a/arch/arm/src/stm32/stm32_sdio.c +++ b/arch/arm/src/stm32/stm32_sdio.c @@ -151,6 +151,14 @@ # undef CONFIG_SDIO_XFRDEBUG #endif +/* Enable the SDIO pull-up resistors if needed */ + +#ifdef CONFIG_STM32_SDIO_PULLUP +# define SDIO_PULLUP_ENABLE GPIO_PULLUP +#else +# define SDIO_PULLUP_ENABLE 0 +#endif + /* Friendly CLKCR bit re-definitions ****************************************/ #define SDIO_CLKCR_RISINGEDGE (0) @@ -3038,14 +3046,14 @@ FAR struct sdio_dev_s *sdio_initialize(int slotno) */ #ifndef CONFIG_SDIO_MUXBUS - stm32_configgpio(GPIO_SDIO_D0); + stm32_configgpio(GPIO_SDIO_D0 | SDIO_PULLUP_ENABLE); #ifndef CONFIG_STM32_SDIO_WIDTH_D1_ONLY - stm32_configgpio(GPIO_SDIO_D1); - stm32_configgpio(GPIO_SDIO_D2); - stm32_configgpio(GPIO_SDIO_D3); + stm32_configgpio(GPIO_SDIO_D1 | SDIO_PULLUP_ENABLE); + stm32_configgpio(GPIO_SDIO_D2 | SDIO_PULLUP_ENABLE); + stm32_configgpio(GPIO_SDIO_D3 | SDIO_PULLUP_ENABLE); #endif - stm32_configgpio(GPIO_SDIO_CK); - stm32_configgpio(GPIO_SDIO_CMD); + stm32_configgpio(GPIO_SDIO_CK | SDIO_PULLUP_ENABLE); + stm32_configgpio(GPIO_SDIO_CMD | SDIO_PULLUP_ENABLE); #endif /* Reset the card and assure that it is in the initial, unconfigured