diff options
-rw-r--r-- | include/sound/hdaudio.h | 1 | ||||
-rw-r--r-- | sound/pci/hda/hda_controller.c | 8 | ||||
-rw-r--r-- | sound/pci/hda/hda_controller.h | 1 |
3 files changed, 5 insertions, 5 deletions
diff --git a/include/sound/hdaudio.h b/include/sound/hdaudio.h index 15bc039de78d..dbeb195eb4e8 100644 --- a/include/sound/hdaudio.h +++ b/include/sound/hdaudio.h @@ -390,6 +390,7 @@ struct hdac_stream { bool opened:1; bool running:1; + bool prepared:1; bool no_period_wakeup:1; bool locked:1; diff --git a/sound/pci/hda/hda_controller.c b/sound/pci/hda/hda_controller.c index 9bc8eaf0e5ac..14ffb6bd986c 100644 --- a/sound/pci/hda/hda_controller.c +++ b/sound/pci/hda/hda_controller.c @@ -145,7 +145,7 @@ static int azx_pcm_hw_free(struct snd_pcm_substream *substream) snd_hda_codec_cleanup(apcm->codec, hinfo, substream); err = chip->ops->substream_free_pages(chip, substream); - azx_dev->prepared = 0; + azx_stream(azx_dev)->prepared = 0; dsp_unlock(azx_dev); return err; } @@ -214,7 +214,7 @@ static int azx_pcm_prepare(struct snd_pcm_substream *substream) unlock: if (!err) - azx_dev->prepared = 1; + azx_stream(azx_dev)->prepared = 1; dsp_unlock(azx_dev); return err; } @@ -240,7 +240,7 @@ static int azx_pcm_trigger(struct snd_pcm_substream *substream, int cmd) else sync_reg = AZX_REG_SSYNC; - if (dsp_is_locked(azx_dev) || !azx_dev->prepared) + if (dsp_is_locked(azx_dev) || !hstr->prepared) return -EPIPE; switch (cmd) { @@ -843,7 +843,7 @@ int snd_hda_codec_load_dsp_prepare(struct hda_codec *codec, unsigned int format, return err; } - azx_dev->prepared = 0; + hstr->prepared = 0; return err; } EXPORT_SYMBOL_GPL(snd_hda_codec_load_dsp_prepare); diff --git a/sound/pci/hda/hda_controller.h b/sound/pci/hda/hda_controller.h index 407cba6577b8..173bf7c85b6e 100644 --- a/sound/pci/hda/hda_controller.h +++ b/sound/pci/hda/hda_controller.h @@ -62,7 +62,6 @@ struct azx_dev { struct hdac_stream core; unsigned int irq_pending:1; - unsigned int prepared:1; /* * For VIA: * A flag to ensure DMA position is 0 |