mirror of
https://github.com/apache/nuttx.git
synced 2025-01-13 08:38:38 +08:00
arch/arm/src/stm32: Add internal pull-up option for SDIO pins (also picks up an unrelated change to a README.txt file)
This commit is contained in:
parent
33a1e73bab
commit
df3d9dd357
3 changed files with 38 additions and 6 deletions
15
README.txt
15
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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue