aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/samsung/i2s.c
diff options
context:
space:
mode:
Diffstat (limited to 'sound/soc/samsung/i2s.c')
-rw-r--r--sound/soc/samsung/i2s.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c
index 8766ebb0dc9b..e00974bc5616 100644
--- a/sound/soc/samsung/i2s.c
+++ b/sound/soc/samsung/i2s.c
@@ -1029,12 +1029,13 @@ static int samsung_i2s_dai_probe(struct snd_soc_dai *dai)
1029static int samsung_i2s_dai_remove(struct snd_soc_dai *dai) 1029static int samsung_i2s_dai_remove(struct snd_soc_dai *dai)
1030{ 1030{
1031 struct i2s_dai *i2s = snd_soc_dai_get_drvdata(dai); 1031 struct i2s_dai *i2s = snd_soc_dai_get_drvdata(dai);
1032 unsigned long flags;
1032 1033
1033 if (!is_secondary(i2s)) { 1034 if (!is_secondary(i2s)) {
1034 if (i2s->quirks & QUIRK_NEED_RSTCLR) { 1035 if (i2s->quirks & QUIRK_NEED_RSTCLR) {
1035 spin_lock(i2s->lock); 1036 spin_lock_irqsave(i2s->lock, flags);
1036 writel(0, i2s->addr + I2SCON); 1037 writel(0, i2s->addr + I2SCON);
1037 spin_unlock(i2s->lock); 1038 spin_unlock_irqrestore(i2s->lock, flags);
1038 } 1039 }
1039 } 1040 }
1040 1041