ALSA: hda - hdmi: Fix reported channel map on common default layouts
authorAnssi Hannula <anssi.hannula@iki.fi>
Fri, 4 Oct 2013 23:25:38 +0000 (02:25 +0300)
committerTakashi Iwai <tiwai@suse.de>
Mon, 7 Oct 2013 10:46:00 +0000 (12:46 +0200)
commit56cac413dd6d43af8355f5d1f90a199b540f73fc
tree9c28952233f7edcd91d847ee803eee7c365ff72a
parent05c79b772f0236b857abf8034d9b0af2ecae901c
ALSA: hda - hdmi: Fix reported channel map on common default layouts

hdmi_setup_fake_chmap() is supposed to set the reported channel map when
the channel map is not specified by the user.

However, the function indexes channel_allocations[] with a wrong value
and extracts the wrong nibble from hdmi_channel_mapping[], causing wrong
channel maps to be shown.

Fix those issues.

Tested on Intel HDMI to correctly generate various channel maps, for
example 3,4,14,15,7,8,5,6 (instead of incorrect 3,4,8,7,5,6,14,0) for
standard 7.1 channel audio. (Note that the side and rear channels are
reported as RL/RR and RLC/RRC, respectively, as per the CEA-861
standard, instead of the more traditional SL/SR and RL/RR.)

Note that this only fixes the layouts that only contain traditional 7.1
speakers (2.0, 2.1, 4.0, 5.1, 7.1, etc.). E.g. the rear center of 6.1
is still being shown wrongly due to an issue with from_cea_slot()
which will be fixed in a later patch.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c
This page took 0.025369 seconds and 5 git commands to generate.