diff options
author | David P <megver83@parabola.nu> | 2019-11-01 14:11:08 -0300 |
---|---|---|
committer | David P <megver83@parabola.nu> | 2019-11-01 14:11:08 -0300 |
commit | 0457acee40729d790b44ff7b91e6dabc7531051d (patch) | |
tree | 13b49fbf0a3af95202ab1a9717d4484fbc4a0208 /libre-testing/linux-libre-lts/0004-fix-mvsdio-eMMC-timing.patch | |
parent | b888190204c8a18863a841245ea4d672749b256c (diff) | |
download | abslibre-0457acee40729d790b44ff7b91e6dabc7531051d.tar.gz abslibre-0457acee40729d790b44ff7b91e6dabc7531051d.tar.bz2 abslibre-0457acee40729d790b44ff7b91e6dabc7531051d.zip |
addpkg: libre-testing/linux-libre-lts 4.19.81_gnu-1
Signed-off-by: David P <megver83@parabola.nu>
Diffstat (limited to 'libre-testing/linux-libre-lts/0004-fix-mvsdio-eMMC-timing.patch')
-rw-r--r-- | libre-testing/linux-libre-lts/0004-fix-mvsdio-eMMC-timing.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/libre-testing/linux-libre-lts/0004-fix-mvsdio-eMMC-timing.patch b/libre-testing/linux-libre-lts/0004-fix-mvsdio-eMMC-timing.patch new file mode 100644 index 000000000..19ef6c0ac --- /dev/null +++ b/libre-testing/linux-libre-lts/0004-fix-mvsdio-eMMC-timing.patch @@ -0,0 +1,38 @@ +From 43be8213a90dae909f838dedbc5e8a1e82b9572d 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/9] 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 e22bbff89c8d..6b30c850ce07 100644 +--- a/drivers/mmc/host/mvsdio.c ++++ b/drivers/mmc/host/mvsdio.c +@@ -93,7 +93,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", +@@ -616,6 +616,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)); +-- +2.19.0 + |