From f675fa3778ff5496012693393a86918c8fdd682c Mon Sep 17 00:00:00 2001 From: Shengjiu Wang Date: Tue, 19 May 2015 13:34:32 +0800 Subject: MLK-10903-1: ASoC: fsl_spdif: remove cache only in suspend/resume In imx6qp, there is no mega fast. After suspend, but before resume, there will be spdif interrupt, if set cache only in suspend, then we can't clear the interrupt, because regmap_write only write to cache. So the system will hang for the interrupt can't be cleared. Signed-off-by: Shengjiu Wang (cherry picked from commit 2a6a522c86d6c0fe80023c4327ca7ce4792035c8) --- sound/soc/fsl/fsl_spdif.c | 3 --- 1 file changed, 3 deletions(-) (limited to 'sound/soc/fsl/fsl_spdif.c') diff --git a/sound/soc/fsl/fsl_spdif.c b/sound/soc/fsl/fsl_spdif.c index b8ddefa763a1..9dca6a1e430f 100644 --- a/sound/soc/fsl/fsl_spdif.c +++ b/sound/soc/fsl/fsl_spdif.c @@ -1317,7 +1317,6 @@ static int fsl_spdif_suspend(struct device *dev) regmap_read(spdif_priv->regmap, REG_SPDIF_SRPC, &spdif_priv->regcache_srpc); - regcache_cache_only(spdif_priv->regmap, true); regcache_mark_dirty(spdif_priv->regmap); return 0; @@ -1327,8 +1326,6 @@ static int fsl_spdif_resume(struct device *dev) { struct fsl_spdif_priv *spdif_priv = dev_get_drvdata(dev); - regcache_cache_only(spdif_priv->regmap, false); - regmap_update_bits(spdif_priv->regmap, REG_SPDIF_SRPC, SRPC_CLKSRC_SEL_MASK | SRPC_GAINSEL_MASK, spdif_priv->regcache_srpc); -- cgit v1.2.3