mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-18 22:54:00 +00:00
38 lines
1.4 KiB
Diff
38 lines
1.4 KiB
Diff
From 824d945bc3c3ec1a635ea078f6b4b19f0c780782 Mon Sep 17 00:00:00 2001
|
|
From: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
Date: Fri, 5 Sep 2014 15:43:56 -0600
|
|
Subject: [PATCH 4/4] fix mvsdio eMMC timing
|
|
|
|
These changes from Globalscale change the MMC timing to allow the eMMC versions
|
|
of the Mirabox and SMILE Plug to work.
|
|
|
|
Signed-off-by: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
---
|
|
drivers/mmc/host/mvsdio.c | 4 +++-
|
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/mmc/host/mvsdio.c b/drivers/mmc/host/mvsdio.c
|
|
index 6b4c5ad..9f50234 100644
|
|
--- a/drivers/mmc/host/mvsdio.c
|
|
+++ b/drivers/mmc/host/mvsdio.c
|
|
@@ -97,7 +97,7 @@ static int mvsd_setup_data(struct mvsd_host *host, struct mmc_data *data)
|
|
tmout_index = fls(tmout - 1) - 12;
|
|
if (tmout_index < 0)
|
|
tmout_index = 0;
|
|
- if (tmout_index > MVSD_HOST_CTRL_TMOUT_MAX)
|
|
+// if (tmout_index > MVSD_HOST_CTRL_TMOUT_MAX) //by steven, try to setup the timeout to maximum value
|
|
tmout_index = MVSD_HOST_CTRL_TMOUT_MAX;
|
|
|
|
dev_dbg(host->dev, "data %s at 0x%08x: blocks=%d blksz=%d tmout=%u (%d)\n",
|
|
@@ -614,6 +614,8 @@ static void mvsd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
|
|
u32 m = DIV_ROUND_UP(host->base_clock, ios->clock) - 1;
|
|
if (m > MVSD_BASE_DIV_MAX)
|
|
m = MVSD_BASE_DIV_MAX;
|
|
+ if(ios->clock==50000000 ) //by steven
|
|
+ m=1;
|
|
mvsd_write(MVSD_CLK_DIV, m);
|
|
host->clock = ios->clock;
|
|
host->ns_per_clk = 1000000000 / (host->base_clock / (m+1));
|
|
--
|
|
1.9.0
|
|
|