From 0a7ed2f37ca4a59d008d113cfc8f6b87afdbd66a Mon Sep 17 00:00:00 2001 From: Sylwester Nawrocki Date: Wed, 27 Feb 2019 10:54:37 +0100 Subject: [PATCH] ASoC: Revert "LOCAL / temporary workaround for i2s/prepare_lock deadlock" This reverts commit a146d53312cc7151d7aa5d517b808d2d1fdfd6c1. Revert temporarily in order to apply patches from the mainline cleanly. Change-Id: I2cce77968974c36d8ccbe4b2df75b77113e6d5bf Signed-off-by: Sylwester Nawrocki --- sound/soc/samsung/i2s.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c index cbfb9b7f03b5..f914ed45db7d 100644 --- a/sound/soc/samsung/i2s.c +++ b/sound/soc/samsung/i2s.c @@ -592,11 +592,11 @@ static int i2s_set_sysclk(struct snd_soc_dai *dai, writel(mod, i2s->addr + I2SMOD); spin_unlock_irqrestore(i2s->lock, flags); done: - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); return 0; err: - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); return ret; } @@ -680,7 +680,7 @@ static int i2s_set_fmt(struct snd_soc_dai *dai, if (any_active(i2s) && ((mod & (sdf_mask | lrp_rlow | mod_slave)) != tmp)) { spin_unlock_irqrestore(i2s->lock, flags); - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); dev_err(&i2s->pdev->dev, "%s:%d Other DAI busy\n", __func__, __LINE__); return -EAGAIN; @@ -690,7 +690,7 @@ static int i2s_set_fmt(struct snd_soc_dai *dai, mod |= tmp; writel(mod, i2s->addr + I2SMOD); spin_unlock_irqrestore(i2s->lock, flags); - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); return 0; } @@ -832,7 +832,7 @@ static void i2s_shutdown(struct snd_pcm_substream *substream, spin_unlock_irqrestore(&lock, flags); - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); } static int config_setup(struct i2s_dai *i2s) @@ -941,7 +941,7 @@ static int i2s_trigger(struct snd_pcm_substream *substream, } spin_unlock_irqrestore(i2s->lock, flags); - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); break; } @@ -959,13 +959,13 @@ static int i2s_set_clkdiv(struct snd_soc_dai *dai, pm_runtime_get_sync(dai->dev); if ((any_active(i2s) && div && (get_bfs(i2s) != div)) || (other && other->bfs && (other->bfs != div))) { - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); dev_err(&i2s->pdev->dev, "%s:%d Other DAI busy\n", __func__, __LINE__); return -EAGAIN; } i2s->bfs = div; - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); break; default: dev_err(&i2s->pdev->dev, @@ -1051,7 +1051,7 @@ static int samsung_i2s_dai_probe(struct snd_soc_dai *dai) if (!is_opened(other)) i2s_set_sysclk(dai, SAMSUNG_I2S_CDCLK, 0, SND_SOC_CLOCK_IN); - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); return 0; } @@ -1071,7 +1071,7 @@ static int samsung_i2s_dai_remove(struct snd_soc_dai *dai) } } - pm_runtime_put_sync(dai->dev); + pm_runtime_put(dai->dev); return 0; } -- 2.34.1