ALSA: x86: Drop unused stream.running field
The pcm_stream_info.running field is only set in the PCM trigger
callback but never referred, thus it can be safely removed.
Also, properly cover the spinlock in both the trigger START and STOP
to protect had_enable_audio() calls.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
diff --git a/sound/x86/intel_hdmi_audio.c b/sound/x86/intel_hdmi_audio.c
index 015d57c..9889cdf 100644
--- a/sound/x86/intel_hdmi_audio.c
+++ b/sound/x86/intel_hdmi_audio.c
@@ -1168,6 +1168,7 @@
intelhaddata = snd_pcm_substream_chip(substream);
+ spin_lock(&intelhaddata->had_spinlock);
switch (cmd) {
case SNDRV_PCM_TRIGGER_START:
case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
@@ -1180,8 +1181,6 @@
break;
}
- intelhaddata->stream_info.running = true;
-
/* Enable Audio */
had_ack_irqs(intelhaddata); /* FIXME: do we need this? */
had_enable_audio(intelhaddata, true);
@@ -1189,13 +1188,6 @@
case SNDRV_PCM_TRIGGER_STOP:
case SNDRV_PCM_TRIGGER_PAUSE_PUSH:
- case SNDRV_PCM_TRIGGER_SUSPEND:
- spin_lock(&intelhaddata->had_spinlock);
-
- /* Stop reporting BUFFER_DONE/UNDERRUN to above layers */
-
- intelhaddata->stream_info.running = false;
- spin_unlock(&intelhaddata->had_spinlock);
/* Disable Audio */
had_enable_audio(intelhaddata, false);
intelhaddata->need_reset = true;
@@ -1204,6 +1196,7 @@
default:
retval = -EINVAL;
}
+ spin_unlock(&intelhaddata->had_spinlock);
return retval;
}