|
|
|
@ -175,9 +175,10 @@ static int omap_pcm_trigger(struct snd_pcm_substream *substream, int cmd) |
|
|
|
|
{ |
|
|
|
|
struct snd_pcm_runtime *runtime = substream->runtime; |
|
|
|
|
struct omap_runtime_data *prtd = runtime->private_data; |
|
|
|
|
unsigned long flags; |
|
|
|
|
int ret = 0; |
|
|
|
|
|
|
|
|
|
spin_lock_irq(&prtd->lock); |
|
|
|
|
spin_lock_irqsave(&prtd->lock, flags); |
|
|
|
|
switch (cmd) { |
|
|
|
|
case SNDRV_PCM_TRIGGER_START: |
|
|
|
|
case SNDRV_PCM_TRIGGER_RESUME: |
|
|
|
@ -195,7 +196,7 @@ static int omap_pcm_trigger(struct snd_pcm_substream *substream, int cmd) |
|
|
|
|
default: |
|
|
|
|
ret = -EINVAL; |
|
|
|
|
} |
|
|
|
|
spin_unlock_irq(&prtd->lock); |
|
|
|
|
spin_unlock_irqrestore(&prtd->lock, flags); |
|
|
|
|
|
|
|
|
|
return ret; |
|
|
|
|
} |
|
|
|
|