diff options
Diffstat (limited to 'sound/soc/samsung/i2s.c')
-rw-r--r-- | sound/soc/samsung/i2s.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/sound/soc/samsung/i2s.c b/sound/soc/samsung/i2s.c index 52f308b..ade047f 100644 --- a/sound/soc/samsung/i2s.c +++ b/sound/soc/samsung/i2s.c @@ -977,10 +977,10 @@ static int i2s_trigger(struct snd_pcm_substream *substream, goto exit_err; } - local_irq_save(flags); + spin_lock_irqsave(&lock, flags); if (config_setup(i2s)) { - local_irq_restore(flags); + spin_unlock_irqrestore(&lock, flags); return -EINVAL; } @@ -989,12 +989,12 @@ static int i2s_trigger(struct snd_pcm_substream *substream, else i2s_txctrl(i2s, 1, substream->stream); - local_irq_restore(flags); + spin_unlock_irqrestore(&lock, flags); break; case SNDRV_PCM_TRIGGER_STOP: case SNDRV_PCM_TRIGGER_SUSPEND: case SNDRV_PCM_TRIGGER_PAUSE_PUSH: - local_irq_save(flags); + spin_lock_irqsave(&lock, flags); if (capture) i2s_rxctrl(i2s, 0); @@ -1007,7 +1007,7 @@ static int i2s_trigger(struct snd_pcm_substream *substream, if (!srp_active(i2s, IS_RUNNING)) i2s_fifo(i2s, FIC_TXFLUSH, substream->stream); } - local_irq_restore(flags); + spin_unlock_irqrestore(&lock, flags); break; } |