aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/pci/hda/patch_intelhdmi.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/sound/pci/hda/patch_intelhdmi.c b/sound/pci/hda/patch_intelhdmi.c
index 3564f4e4b74c..a8643509e2af 100644
--- a/sound/pci/hda/patch_intelhdmi.c
+++ b/sound/pci/hda/patch_intelhdmi.c
@@ -419,14 +419,18 @@ static int hdmi_setup_channel_allocation(struct hda_codec *codec,
419 /* 419 /*
420 * CA defaults to 0 for basic stereo audio 420 * CA defaults to 0 for basic stereo audio
421 */ 421 */
422 if (!eld->eld_ver)
423 return 0;
424 if (!eld->spk_alloc)
425 return 0;
426 if (channels <= 2) 422 if (channels <= 2)
427 return 0; 423 return 0;
428 424
429 /* 425 /*
426 * HDMI sink's ELD info cannot always be retrieved for now, e.g.
427 * in console or for audio devices. Assume the highest speakers
428 * configuration, to _not_ prohibit multi-channel audio playback.
429 */
430 if (!eld->spk_alloc)
431 eld->spk_alloc = 0xffff;
432
433 /*
430 * expand ELD's speaker allocation mask 434 * expand ELD's speaker allocation mask
431 * 435 *
432 * ELD tells the speaker mask in a compact(paired) form, 436 * ELD tells the speaker mask in a compact(paired) form,