diff options
author | px4dev <px4@purgatory.org> | 2013-04-20 15:20:33 -0700 |
---|---|---|
committer | px4dev <px4@purgatory.org> | 2013-04-20 15:20:33 -0700 |
commit | f45e15615a55f8c6070c2598aa10b1dc8ea971b1 (patch) | |
tree | ba8a339abc11726ef42f9af24f84b66c91e5a8f6 /src/drivers | |
parent | 7e0f8b3edaf584a48cd3bc3351e3205fd0106cdc (diff) | |
parent | b149b834c835190fbb3f7e1914346d5e0620036d (diff) | |
download | px4-firmware-f45e15615a55f8c6070c2598aa10b1dc8ea971b1.tar.gz px4-firmware-f45e15615a55f8c6070c2598aa10b1dc8ea971b1.tar.bz2 px4-firmware-f45e15615a55f8c6070c2598aa10b1dc8ea971b1.zip |
Merge commit 'b149b834c835190fbb3f7e1914346d5e0620036d' into fmuv2_bringup
Diffstat (limited to 'src/drivers')
-rw-r--r-- | src/drivers/boards/px4fmuv2/px4fmu_init.c | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/drivers/boards/px4fmuv2/px4fmu_init.c b/src/drivers/boards/px4fmuv2/px4fmu_init.c index 2fd3a2c1b..03ec5a255 100644 --- a/src/drivers/boards/px4fmuv2/px4fmu_init.c +++ b/src/drivers/boards/px4fmuv2/px4fmu_init.c @@ -55,6 +55,7 @@ #include <nuttx/arch.h> #include <nuttx/spi.h> #include <nuttx/i2c.h> +#include <nuttx/sdio.h> #include <nuttx/mmcsd.h> #include <nuttx/analog/adc.h> @@ -128,6 +129,7 @@ __EXPORT void stm32_boardinitialize(void) static struct spi_dev_s *spi1; static struct spi_dev_s *spi2; +static struct sdio_dev_s *sdio; #include <math.h> @@ -226,5 +228,28 @@ __EXPORT int nsh_archinitialize(void) message("[boot] Successfully initialized SPI port 2\n"); + #ifdef CONFIG_MMCSD + /* First, get an instance of the SDIO interface */ + + sdio = sdio_initialize(CONFIG_NSH_MMCSDSLOTNO); + if (!sdio) { + message("nsh_archinitialize: Failed to initialize SDIO slot %d\n", + CONFIG_NSH_MMCSDSLOTNO); + return -ENODEV; + } + + /* Now bind the SDIO interface to the MMC/SD driver */ + int ret = mmcsd_slotinitialize(CONFIG_NSH_MMCSDMINOR, sdio); + if (ret != OK) { + message("nsh_archinitialize: Failed to bind SDIO to the MMC/SD driver: %d\n", ret); + return ret; + } + + /* Then let's guess and say that there is a card in the slot. There is no card detect GPIO. */ + sdio_mediachange(sdio, true); + + message("[boot] Initialized SDIO\n"); + #endif + return OK; } |