linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: john@metanate.com (John Keeping)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] Revert "mmc: dw_mmc-rockchip: add runtime PM support"
Date: Mon, 23 Jan 2017 11:24:32 +0000	[thread overview]
Message-ID: <20170123112432.08337d26.john@metanate.com> (raw)
In-Reply-To: <fba28eda-51c7-2012-03ca-48b6f94e4a18@samsung.com>

Hi,

On Fri, 20 Jan 2017 15:08:57 +0900, Jaehoon Chung wrote:
> On 01/17/2017 10:38 PM, Romain Perier wrote:
> > In my case I can reproduce the issue on the rock2 and the firefly-rk3288. A workaround is to
> > 
> > comment the line ".pm = <&pm_ops_foo>" .  
> 
> Sorry for late. I'm checking runtime PM for this. 
> After that, i will decide whether revert or not.

I hit this problem on Rock2 when trying 4.10-rc4.  The following patch
fixes it for me.

I'm not sure if this is safe in general or whether it should be guarded
by a quirk that is enabled for RK3288.

-- >8 --
Subject: [PATCH] mmc: dw_mmc: restore CIU state on resume

At least on RK3288, asserting SDMMC_CTRL_RESET causes the CIU to reset
and disable the clock.  We need to send SDMMC_CMD_UPD_CLK after doing
this in order to avoid the MMC host hanging.

Signed-off-by: John Keeping <john@metanate.com>
---
 drivers/mmc/host/dw_mmc.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/mmc/host/dw_mmc.c b/drivers/mmc/host/dw_mmc.c
index b44306b886cb..e7504dabcfb6 100644
--- a/drivers/mmc/host/dw_mmc.c
+++ b/drivers/mmc/host/dw_mmc.c
@@ -3311,6 +3311,7 @@ int dw_mci_runtime_resume(struct device *dev)
 {
 	int i, ret = 0;
 	struct dw_mci *host = dev_get_drvdata(dev);
+	u32 sdmmc_cmd_bits = SDMMC_CMD_UPD_CLK | SDMMC_CMD_PRV_DAT_WAIT;
 
 	if (host->cur_slot &&
 	    (mmc_can_gpio_cd(host->cur_slot->mmc) ||
@@ -3357,6 +3358,9 @@ int dw_mci_runtime_resume(struct device *dev)
 		if (slot->mmc->pm_flags & MMC_PM_KEEP_POWER) {
 			dw_mci_set_ios(slot->mmc, &slot->mmc->ios);
 			dw_mci_setup_bus(slot, true);
+		} else {
+			/* restore CIU */
+			mci_send_cmd(slot, sdmmc_cmd_bits, 0);
 		}
 	}
 
-- 
2.11.0.197.gb556de5.dirty

  reply	other threads:[~2017-01-23 11:24 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CGME20161228153516epcas2p253c6bc0371ab0df464573b63218795ef@epcas2p2.samsung.com>
2016-12-28 15:34 ` [PATCH] Revert "mmc: dw_mmc-rockchip: add runtime PM support" Randy Li
2016-12-29  3:02   ` Jaehoon Chung
2016-12-29  7:13     ` Jaehoon Chung
2016-12-29  7:25       ` Shawn Lin
2016-12-29 10:25         ` Randy Li
2016-12-29 12:55           ` ayaka
2016-12-29 14:04             ` Jaehoon Chung
2016-12-29 15:07               ` ayaka
2016-12-30  2:35                 ` Jaehoon Chung
2016-12-30  2:44                   ` Randy Li
2016-12-30  2:50                     ` Jaehoon Chung
     [not found]                       ` <CABgxDo+3qMcHn6e2s_ZJy1crdi=ch5hQk6sy3W29Q12-ye33Qw@mail.gmail.com>
     [not found]                         ` <2cdd0b6c-a099-595d-1c0b-be7933b0d4a6@collabora.com>
2017-01-20  6:08                           ` Jaehoon Chung
2017-01-23 11:24                             ` John Keeping [this message]
2017-01-23 12:53                               ` Jaehoon Chung
2017-01-23 13:22                                 ` John Keeping

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=20170123112432.08337d26.john@metanate.com \
    --to=john@metanate.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).