summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAlexander Shiyan <shc_work@mail.ru>2013-05-10 09:39:08 +0400
committerSascha Hauer <s.hauer@pengutronix.de>2013-05-30 12:18:27 +0200
commit425bf8b5c9f5ad37ada501fe8ea05b04f31aed84 (patch)
treea9504837ee27ab7384995e84832bcb0638f09e1b /arch
parent2821446cbeb840e3dc20b4999b107705bdc3f47a (diff)
downloadbarebox-425bf8b5c9f5ad37ada501fe8ea05b04f31aed84.tar.gz
barebox-425bf8b5c9f5ad37ada501fe8ea05b04f31aed84.tar.xz
ARM: OMAP MCI: Move TWL6030 power initialization into OMAP directory
Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mach-omap/omap4_twl6030_mmc.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/arch/arm/mach-omap/omap4_twl6030_mmc.c b/arch/arm/mach-omap/omap4_twl6030_mmc.c
index 7d71eb868a..3d34a44631 100644
--- a/arch/arm/mach-omap/omap4_twl6030_mmc.c
+++ b/arch/arm/mach-omap/omap4_twl6030_mmc.c
@@ -16,7 +16,7 @@
#include <common.h>
#include <io.h>
-#include <mci/twl6030.h>
+#include <mfd/twl6030.h>
/* MMC voltage */
#define OMAP4_CONTROL_PBIASLITE 0x4A100600
@@ -24,6 +24,16 @@
#define OMAP4_MMC1_PBIASLITE_PWRDNZ (1<<22)
#define OMAP4_MMC1_PWRDNZ (1<<26)
+static void twl6030_mci_write(u8 address, u8 data)
+{
+ int ret;
+ struct twl6030 *twl6030 = twl6030_get();
+
+ ret = twl6030_reg_write(twl6030, address, data);
+ if (ret != 0)
+ printf("TWL6030 Write[0x%x] Error %d\n", address, ret);
+}
+
void set_up_mmc_voltage_omap4(void)
{
u32 value;
@@ -32,7 +42,11 @@ void set_up_mmc_voltage_omap4(void)
value &= ~(OMAP4_MMC1_PBIASLITE_PWRDNZ | OMAP4_MMC1_PWRDNZ);
writel(value, OMAP4_CONTROL_PBIASLITE);
- twl6030_mci_power_init();
+ twl6030_mci_write(TWL6030_PMCS_VMMC_CFG_VOLTAGE,
+ TWL6030_VMMC_VSEL_0 | TWL6030_VMMC_VSEL_2 |
+ TWL6030_VMMC_VSEL_4);
+ twl6030_mci_write(TWL6030_PMCS_VMMC_CFG_STATE,
+ TWL6030_VMMC_STATE0 | TWL6030_VMMC_GRP_APP);
value = readl(OMAP4_CONTROL_PBIASLITE);
value |= (OMAP4_MMC1_PBIASLITE_VMODE | OMAP4_MMC1_PBIASLITE_PWRDNZ |