All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Lindgren <tony@atomide.com>
To: linux-arm-kernel@lists.infradead.org
Cc: linux-omap@vger.kernel.org, Madhusudhan Chikkature <madhu.cr@ti.com>
Subject: [PATCH 09/14] omap3630: Set omap3630 MMC1 I/O speed to 52Mhz
Date: Thu, 12 Nov 2009 16:08:58 -0800	[thread overview]
Message-ID: <20091113000858.9034.26488.stgit@localhost> (raw)
In-Reply-To: <20091113000444.9034.41293.stgit@localhost>

From: Madhu <madhu.cr@ti.com>

The speed ctrl bit for MMC I/O is part of CONTROL_PROG_IO1 register
in omap3630.This patch sets it up accordingly.

Signed-off-by: Madhusudhan Chikkature <madhu.cr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/mmc-twl4030.c         |   11 +++++++++--
 arch/arm/plat-omap/include/plat/control.h |    3 +++
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/mmc-twl4030.c b/arch/arm/mach-omap2/mmc-twl4030.c
index 7bef170..0c3c72d 100644
--- a/arch/arm/mach-omap2/mmc-twl4030.c
+++ b/arch/arm/mach-omap2/mmc-twl4030.c
@@ -213,7 +213,7 @@ static int twl4030_mmc_get_context_loss(struct device *dev)
 static int twl_mmc1_set_power(struct device *dev, int slot, int power_on,
 				int vdd)
 {
-	u32 reg;
+	u32 reg, prog_io;
 	int ret = 0;
 	struct twl_mmc_controller *c = &hsmmc[0];
 	struct omap_mmc_platform_data *mmc = dev->platform_data;
@@ -245,7 +245,14 @@ static int twl_mmc1_set_power(struct device *dev, int slot, int power_on,
 		}
 
 		reg = omap_ctrl_readl(control_pbias_offset);
-		reg |= OMAP2_PBIASSPEEDCTRL0;
+		if (cpu_is_omap3630()) {
+			/* Set MMC I/O to 52Mhz */
+			prog_io = omap_ctrl_readl(OMAP343X_CONTROL_PROG_IO1);
+			prog_io |= OMAP3630_PRG_SDMMC1_SPEEDCTRL;
+			omap_ctrl_writel(prog_io, OMAP343X_CONTROL_PROG_IO1);
+		} else {
+			reg |= OMAP2_PBIASSPEEDCTRL0;
+		}
 		reg &= ~OMAP2_PBIASLITEPWRDNZ0;
 		omap_ctrl_writel(reg, control_pbias_offset);
 
diff --git a/arch/arm/plat-omap/include/plat/control.h b/arch/arm/plat-omap/include/plat/control.h
index 79985e4..2ae8843 100644
--- a/arch/arm/plat-omap/include/plat/control.h
+++ b/arch/arm/plat-omap/include/plat/control.h
@@ -241,6 +241,9 @@
 #define OMAP2_PBIASLITEPWRDNZ0		(1 << 1)
 #define OMAP2_PBIASLITEVMODE0		(1 << 0)
 
+/* CONTROL_PROG_IO1 bits */
+#define OMAP3630_PRG_SDMMC1_SPEEDCTRL	(1 << 20)
+
 /* CONTROL_IVA2_BOOTMOD bits */
 #define OMAP3_IVA2_BOOTMOD_SHIFT	0
 #define OMAP3_IVA2_BOOTMOD_MASK		(0xf << 0)


WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 09/14] omap3630: Set omap3630 MMC1 I/O speed to 52Mhz
Date: Thu, 12 Nov 2009 16:08:58 -0800	[thread overview]
Message-ID: <20091113000858.9034.26488.stgit@localhost> (raw)
In-Reply-To: <20091113000444.9034.41293.stgit@localhost>

From: Madhu <madhu.cr@ti.com>

The speed ctrl bit for MMC I/O is part of CONTROL_PROG_IO1 register
in omap3630.This patch sets it up accordingly.

Signed-off-by: Madhusudhan Chikkature <madhu.cr@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
---
 arch/arm/mach-omap2/mmc-twl4030.c         |   11 +++++++++--
 arch/arm/plat-omap/include/plat/control.h |    3 +++
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/mmc-twl4030.c b/arch/arm/mach-omap2/mmc-twl4030.c
index 7bef170..0c3c72d 100644
--- a/arch/arm/mach-omap2/mmc-twl4030.c
+++ b/arch/arm/mach-omap2/mmc-twl4030.c
@@ -213,7 +213,7 @@ static int twl4030_mmc_get_context_loss(struct device *dev)
 static int twl_mmc1_set_power(struct device *dev, int slot, int power_on,
 				int vdd)
 {
-	u32 reg;
+	u32 reg, prog_io;
 	int ret = 0;
 	struct twl_mmc_controller *c = &hsmmc[0];
 	struct omap_mmc_platform_data *mmc = dev->platform_data;
@@ -245,7 +245,14 @@ static int twl_mmc1_set_power(struct device *dev, int slot, int power_on,
 		}
 
 		reg = omap_ctrl_readl(control_pbias_offset);
-		reg |= OMAP2_PBIASSPEEDCTRL0;
+		if (cpu_is_omap3630()) {
+			/* Set MMC I/O to 52Mhz */
+			prog_io = omap_ctrl_readl(OMAP343X_CONTROL_PROG_IO1);
+			prog_io |= OMAP3630_PRG_SDMMC1_SPEEDCTRL;
+			omap_ctrl_writel(prog_io, OMAP343X_CONTROL_PROG_IO1);
+		} else {
+			reg |= OMAP2_PBIASSPEEDCTRL0;
+		}
 		reg &= ~OMAP2_PBIASLITEPWRDNZ0;
 		omap_ctrl_writel(reg, control_pbias_offset);
 
diff --git a/arch/arm/plat-omap/include/plat/control.h b/arch/arm/plat-omap/include/plat/control.h
index 79985e4..2ae8843 100644
--- a/arch/arm/plat-omap/include/plat/control.h
+++ b/arch/arm/plat-omap/include/plat/control.h
@@ -241,6 +241,9 @@
 #define OMAP2_PBIASLITEPWRDNZ0		(1 << 1)
 #define OMAP2_PBIASLITEVMODE0		(1 << 0)
 
+/* CONTROL_PROG_IO1 bits */
+#define OMAP3630_PRG_SDMMC1_SPEEDCTRL	(1 << 20)
+
 /* CONTROL_IVA2_BOOTMOD bits */
 #define OMAP3_IVA2_BOOTMOD_SHIFT	0
 #define OMAP3_IVA2_BOOTMOD_MASK		(0xf << 0)

  parent reply	other threads:[~2009-11-13  0:08 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-13  0:07 [PATCH 00/14] Omap low-level device init updates for 2.6.33 Tony Lindgren
2009-11-13  0:07 ` Tony Lindgren
2009-11-13  0:07 ` [PATCH 01/14] omap: update plat/usb.h to allow ehci driver to build Tony Lindgren
2009-11-13  0:07   ` Tony Lindgren
2009-11-13  0:07 ` [PATCH 02/14] omap: Add platform init code for EHCI driver Tony Lindgren
2009-11-13  0:07   ` Tony Lindgren
2009-11-13  0:07 ` [PATCH 03/14] omap: iommu: avoid remapping if it's been mapped in MPU side Tony Lindgren
2009-11-13  0:07   ` Tony Lindgren
2009-11-13  0:08 ` [PATCH 04/14] omap: iovmm: remove cache flush operation Tony Lindgren
2009-11-13  0:08   ` Tony Lindgren
2009-11-13  0:08 ` [PATCH 05/14] omap: iommu: reorganize Tony Lindgren
2009-11-13  0:08   ` Tony Lindgren
2009-11-13  0:08 ` [PATCH 06/14] omap: McBSP: Do not use extensive spin locks for dma_op_mode Tony Lindgren
2009-11-13  0:08   ` Tony Lindgren
2009-11-13  0:08 ` [PATCH 07/14] omap3630: Add HSMMC related checks Tony Lindgren
2009-11-13  0:08   ` Tony Lindgren
2009-11-13  0:08 ` [PATCH 08/14] omap3630: Configure HSMMC1 to 4-bit Tony Lindgren
2009-11-13  0:08   ` Tony Lindgren
2009-11-13  0:08 ` Tony Lindgren [this message]
2009-11-13  0:08   ` [PATCH 09/14] omap3630: Set omap3630 MMC1 I/O speed to 52Mhz Tony Lindgren
2009-11-13  0:09 ` [PATCH 10/14] omap3: HSMMC2 8-bit mux configuration Tony Lindgren
2009-11-13  0:09   ` Tony Lindgren
2009-11-13  0:09 ` [PATCH 11/14] omap3: evm: make HSMMC driver built-in Tony Lindgren
2009-11-13  0:09   ` Tony Lindgren
2009-11-13  0:09 ` [PATCH 12/14] omap3: move check_revision above check_features Tony Lindgren
2009-11-13  0:09   ` Tony Lindgren
2009-11-13 20:55   ` [PATCH 12/14] omap3: move check_revision above check_features, v2 Tony Lindgren
2009-11-13 20:55     ` Tony Lindgren
2009-11-13  0:09 ` [PATCH 13/14] omap3: keep SoC features on the same line Tony Lindgren
2009-11-13  0:09   ` Tony Lindgren
2009-11-13  0:09 ` [PATCH 14/14] omap3: drop all IVA-related address base definitions Tony Lindgren
2009-11-13  0:09   ` Tony Lindgren

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=20091113000858.9034.26488.stgit@localhost \
    --to=tony@atomide.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=madhu.cr@ti.com \
    /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.