From: vm.rod25@gmail.com (vm.rod25 at gmail.com)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v8 7/9] davinci: MMC/SD support for Omapl138-Hawkboard
Date: Fri, 12 Nov 2010 16:38:53 -0600 [thread overview]
Message-ID: <1289601535-6746-8-git-send-email-vm.rod25@gmail.com> (raw)
In-Reply-To: <1289601535-6746-1-git-send-email-vm.rod25@gmail.com>
From: Victor Rodriguez <victor.rodriguez@sasken.com>
This patch adds MMC/SD support for the Hawkboard-L138 system
Signed-off-by: Victor Rodriguez <victor.rodriguez@sasken.com>
Tested-by: Rene Gonzalez <renegs.2378@gmail.com>
---
Notes:
This patch works with da8xx_omapl_defconfig
In order to test it select in menuconfig like insmodule
MMC/SD/SDIO card support --->
MMC block device driver
Use bounce buffer for simple hosts
TI DAVINCI Multimedia Card Interface support
arch/arm/mach-davinci/board-omapl138-hawk.c | 63 +++++++++++++++++++++++++++
1 files changed, 63 insertions(+), 0 deletions(-)
diff --git a/arch/arm/mach-davinci/board-omapl138-hawk.c b/arch/arm/mach-davinci/board-omapl138-hawk.c
index 115dac0..02e54fa 100644
--- a/arch/arm/mach-davinci/board-omapl138-hawk.c
+++ b/arch/arm/mach-davinci/board-omapl138-hawk.c
@@ -23,6 +23,8 @@
#include <mach/mux.h>
#define HAWKBOARD_PHY_ID "0:07"
+#define DA850_HAWK_MMCSD_CD_PIN GPIO_TO_PIN(3, 12)
+#define DA850_HAWK_MMCSD_WP_PIN GPIO_TO_PIN(3, 13)
static short omapl138_hawk_mii_pins[] __initdata = {
DA850_MII_TXEN, DA850_MII_TXCLK, DA850_MII_COL, DA850_MII_TXD_3,
@@ -143,6 +145,65 @@ static struct snd_platform_data omapl138_hawk_snd_data = {
.rxnumevt = 1,
};
+static const short hawk_mmcsd0_pins[] = {
+ DA850_MMCSD0_DAT_0, DA850_MMCSD0_DAT_1, DA850_MMCSD0_DAT_2,
+ DA850_MMCSD0_DAT_3, DA850_MMCSD0_CLK, DA850_MMCSD0_CMD,
+ DA850_GPIO3_12, DA850_GPIO3_13,
+ -1
+};
+
+static int da850_hawk_mmc_get_ro(int index)
+{
+ return gpio_get_value(DA850_HAWK_MMCSD_WP_PIN);
+}
+
+static int da850_hawk_mmc_get_cd(int index)
+{
+ return !gpio_get_value(DA850_HAWK_MMCSD_CD_PIN);
+}
+
+static struct davinci_mmc_config da850_mmc_config = {
+ .get_ro = da850_hawk_mmc_get_ro,
+ .get_cd = da850_hawk_mmc_get_cd,
+ .wires = 4,
+ .max_freq = 50000000,
+ .caps = MMC_CAP_MMC_HIGHSPEED | MMC_CAP_SD_HIGHSPEED,
+ .version = MMC_CTLR_VERSION_2,
+};
+
+static __init void omapl138_hawk_mmc_init(void)
+{
+ int ret;
+
+ ret = davinci_cfg_reg_list(hawk_mmcsd0_pins);
+ if (ret) {
+ pr_warning("%s: MMC/SD0 mux setup failed: %d\n",
+ __func__, ret);
+ return;
+ }
+
+ ret = gpio_request_one(DA850_HAWK_MMCSD_CD_PIN,
+ GPIOF_DIR_IN, "MMC CD");
+ if (ret < 0) {
+ pr_warning("%s: can not open GPIO %d\n",
+ __func__, DA850_HAWK_MMCSD_CD_PIN);
+ return;
+ }
+
+ ret = gpio_request_one(DA850_HAWK_MMCSD_WP_PIN,
+ GPIOF_DIR_IN, "MMC WP");
+ if (ret < 0) {
+ pr_warning("%s: can not open GPIO %d\n",
+ __func__, DA850_HAWK_MMCSD_WP_PIN);
+ return;
+ }
+
+ ret = da8xx_register_mmcsd0(&da850_mmc_config);
+ if (ret)
+ pr_warning("%s: MMC/SD0 registration failed: %d\n",
+ __func__, ret);
+}
+
static struct davinci_uart_config omapl138_hawk_uart_config __initdata = {
.enabled_uarts = 0x7,
};
@@ -173,6 +234,8 @@ static __init void omapl138_hawk_init(void)
pr_warning("%s: mcasp mux setup failed: %d\n", __func__, ret);
da8xx_register_mcasp(0, &omapl138_hawk_snd_data);
+ omapl138_hawk_mmc_init();
+
ret = da8xx_register_watchdog();
if (ret)
pr_warning("omapl138_hawk_init: "
--
1.7.0.4
next prev parent reply other threads:[~2010-11-12 22:38 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1289601535-6746-1-git-send-email-vm.rod25@gmail.com>
2010-11-12 22:38 ` [PATCH v8 1/9] davinci: EMAC support for Omapl138-Hawkboard vm.rod25 at gmail.com
2010-11-12 22:38 ` [PATCH v8 2/9] davinci: EDMA " vm.rod25 at gmail.com
2010-11-12 22:38 ` [PATCH v8 3/9] davinci: ASoC " vm.rod25
2010-11-12 22:38 ` [PATCH v8 4/9] davinci: McASP configuration " vm.rod25 at gmail.com
2010-11-15 11:10 ` Nori, Sekhar
2010-11-15 12:16 ` Sergei Shtylyov
2010-11-15 13:07 ` Nori, Sekhar
2010-11-15 14:31 ` Victor Rodriguez
2010-11-15 15:47 ` Sergei Shtylyov
2010-11-16 15:58 ` Victor Rodriguez
2010-11-16 16:04 ` Sergei Shtylyov
2010-11-16 16:37 ` Nori, Sekhar
2010-11-16 16:45 ` Victor Rodriguez
2010-11-16 20:42 ` Michael Williamson
2010-11-16 21:19 ` Victor Rodriguez
2010-11-16 21:21 ` Victor Rodriguez
2010-11-18 16:21 ` Nori, Sekhar
2010-11-18 16:38 ` Victor Rodriguez
2010-11-18 16:47 ` Nori, Sekhar
2010-11-18 23:57 ` Kevin Hilman
2010-11-19 0:17 ` Victor Rodriguez
2010-11-19 16:23 ` Victor Rodriguez
2010-12-01 13:32 ` Nori, Sekhar
2010-12-01 15:20 ` Victor Rodriguez
2010-12-01 16:04 ` Nori, Sekhar
2010-12-01 16:13 ` Victor Rodriguez
2010-12-01 16:32 ` Sergei Shtylyov
2010-12-01 16:41 ` Victor Rodriguez
2010-11-12 22:38 ` [PATCH v8 5/9] davinci: Audio support " vm.rod25 at gmail.com
2010-11-12 22:38 ` [PATCH v8 6/9] davinci: MMC/SD and USB-OHCI configuration " vm.rod25 at gmail.com
2010-11-12 22:38 ` vm.rod25 at gmail.com [this message]
2010-11-12 22:38 ` [PATCH v8 8/9] davinci: USB clocks " vm.rod25 at gmail.com
2010-11-12 22:38 ` [PATCH v8 9/9] davinci: USB1.1 support " vm.rod25 at gmail.com
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1289601535-6746-8-git-send-email-vm.rod25@gmail.com \
--to=vm.rod25@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.