diff options
author | Takashi Iwai <tiwai@suse.de> | 2019-08-06 14:03:56 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2019-08-16 10:13:56 +0200 |
commit | 34ea66aa1b0260977e8efe6638797e2fc724544c (patch) | |
tree | b1f4c4e9b6e7b6bd31cb7d4bcbe5410ceaf3b2f9 | |
parent | 065ddcefa28feadd5cc981d1f3b40af6e67ecad1 (diff) | |
download | linux-stable-34ea66aa1b0260977e8efe6638797e2fc724544c.tar.gz linux-stable-34ea66aa1b0260977e8efe6638797e2fc724544c.tar.bz2 linux-stable-34ea66aa1b0260977e8efe6638797e2fc724544c.zip |
ALSA: hda - Don't override global PCM hw info flag
commit c1c6c877b0c79fd7e05c931435aa42211eaeebaf upstream.
The commit bfcba288b97f ("ALSA - hda: Add support for link audio time
reporting") introduced the conditional PCM hw info setup, but it
overwrites the global azx_pcm_hw object. This will cause a problem if
any other HD-audio controller, as it'll inherit the same bit flag
although another controller doesn't support that feature.
Fix the bug by setting the PCM hw info flag locally.
Fixes: bfcba288b97f ("ALSA - hda: Add support for link audio time reporting")
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | sound/pci/hda/hda_controller.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/sound/pci/hda/hda_controller.c b/sound/pci/hda/hda_controller.c index a12e594d4e3b..750a4d235a12 100644 --- a/sound/pci/hda/hda_controller.c +++ b/sound/pci/hda/hda_controller.c @@ -609,11 +609,9 @@ static int azx_pcm_open(struct snd_pcm_substream *substream) } runtime->private_data = azx_dev; - if (chip->gts_present) - azx_pcm_hw.info = azx_pcm_hw.info | - SNDRV_PCM_INFO_HAS_LINK_SYNCHRONIZED_ATIME; - runtime->hw = azx_pcm_hw; + if (chip->gts_present) + runtime->hw.info |= SNDRV_PCM_INFO_HAS_LINK_SYNCHRONIZED_ATIME; runtime->hw.channels_min = hinfo->channels_min; runtime->hw.channels_max = hinfo->channels_max; runtime->hw.formats = hinfo->formats; |