summaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_hdmi.c
diff options
context:
space:
mode:
authorWang Xingchao <xingchao.wang@intel.com>2012-09-06 10:02:38 +0800
committerTakashi Iwai <tiwai@suse.de>2012-09-06 08:50:35 +0200
commit2d7e887cbba8272a46c42d228d3ffd9a2de04168 (patch)
treea752f8a107496729af3952711f4a995f41dab1ee /sound/pci/hda/patch_hdmi.c
parent433968da4d93a194b79da552f4ca707f979ef33b (diff)
ALSA: HDMI - Setup channel mapping for non_pcm audio
For HBR stream test, use straight channel mapping way. when switched back to "speaker-test -c8", even the audio infoframe is up-to-date, there should be correct channel mapping setup. Signed-off-by: Wang Xingchao <xingchao.wang@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_hdmi.c')
-rw-r--r--sound/pci/hda/patch_hdmi.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index a6835bd9d9b..5361298be4d 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -780,6 +780,11 @@ static void hdmi_setup_audio_infoframe(struct hda_codec *codec, int pin_idx,
hdmi_fill_audio_infoframe(codec, pin_nid,
ai.bytes, sizeof(ai));
hdmi_start_infoframe_trans(codec, pin_nid);
+ } else {
+ /* For non-pcm audio switch, setup new channel mapping
+ * accordingly */
+ if (per_cvt->non_pcm != non_pcm)
+ hdmi_setup_channel_mapping(codec, pin_nid, cvt_nid, non_pcm, ca);
}
per_cvt->non_pcm = non_pcm;