From ac4b9dbb3c9b056008e00ee3d02fe3dad65641b7 Mon Sep 17 00:00:00 2001 From: Zoltan Herpai Date: Thu, 6 Mar 2014 00:09:30 +0000 Subject: sunxi: driver refresh for 3.13 - update gmac / mmc / usb / ahci drivers to follow mainline dev trees - add driver for spi - update clock support - update a31 support - move to new DT compats where appropriate - re-order patchqueue where needed - verified working a20 smp - move most DTSes off files/ - update defconfig Signed-off-by: Zoltan HERPAI SVN-Revision: 39782 --- .../170-3-mmc-dont-set-mmc_clk-in-lowpower.patch | 49 ++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 target/linux/sunxi/patches-3.13/170-3-mmc-dont-set-mmc_clk-in-lowpower.patch (limited to 'target/linux/sunxi/patches-3.13/170-3-mmc-dont-set-mmc_clk-in-lowpower.patch') diff --git a/target/linux/sunxi/patches-3.13/170-3-mmc-dont-set-mmc_clk-in-lowpower.patch b/target/linux/sunxi/patches-3.13/170-3-mmc-dont-set-mmc_clk-in-lowpower.patch new file mode 100644 index 0000000000..843d39ef62 --- /dev/null +++ b/target/linux/sunxi/patches-3.13/170-3-mmc-dont-set-mmc_clk-in-lowpower.patch @@ -0,0 +1,49 @@ +From 0a6ec6db90c73b037428bf3a94a6281754007c25 Mon Sep 17 00:00:00 2001 +From: Hans de Goede +Date: Mon, 17 Feb 2014 16:55:54 +0100 +Subject: [PATCH] sunxi-mmc: Don't set mmc clk in low power mode + +The android driver uses an io-flag to descern whether a controller is +hooked up to a sdcard slot, or to an onboard sdio dev. And for sdcard slots +it sets the clock in a low-power mode. + +This is causing transmission errors when talking to the sdio-wifi on the +cubietruck, and this may be the cause of problems with some type sdcards +too. This patch fixes things by simply never setting the clk in low power +mode. + +Signed-off-by: Hans de Goede +--- + drivers/mmc/host/sunxi-mmc.c | 3 --- + drivers/mmc/host/sunxi-mmc.h | 1 - + 2 files changed, 4 deletions(-) + +diff --git a/drivers/mmc/host/sunxi-mmc.c b/drivers/mmc/host/sunxi-mmc.c +index f4bfaf0..c1a9d8a 100644 +--- a/drivers/mmc/host/sunxi-mmc.c ++++ b/drivers/mmc/host/sunxi-mmc.c +@@ -400,9 +400,6 @@ static void sunxi_mmc_oclk_onoff(struct sunxi_mmc_host *host, u32 oclk_en) + if (oclk_en) + rval |= SDXC_CARD_CLOCK_ON; + +- if (!host->io_flag) +- rval |= SDXC_LOW_POWER_ON; +- + mci_writel(host, REG_CLKCR, rval); + + rval = SDXC_START | SDXC_UPCLK_ONLY | SDXC_WAIT_PRE_OVER; +diff --git a/drivers/mmc/host/sunxi-mmc.h b/drivers/mmc/host/sunxi-mmc.h +index cbd6d49..a738850 100644 +--- a/drivers/mmc/host/sunxi-mmc.h ++++ b/drivers/mmc/host/sunxi-mmc.h +@@ -211,7 +211,6 @@ struct sunxi_mmc_host { + + /* flags */ + u32 power_on:1; +- u32 io_flag:1; + u32 wait_dma:1; + + dma_addr_t sg_dma; +-- +1.8.5.5 + -- cgit v1.2.3