ALSA: hda - Do not wrongly restrict min_channels based on ELD
authorAnssi Hannula <anssi.hannula@iki.fi>
Tue, 7 Dec 2010 16:41:35 +0000 (18:41 +0200)
committerTakashi Iwai <tiwai@suse.de>
Tue, 7 Dec 2010 19:12:58 +0000 (20:12 +0100)
commit4b0dbdb17f846a8887e5f7fbeea2deb0703236bd
treed95f36978e3dbb762c05ef4335327e45005418b5
parentdd5a089edfa51a74692604b4b427953d8e16bc35
ALSA: hda - Do not wrongly restrict min_channels based on ELD

Commit bbbe33900d1f3c added functionality to restrict PCM parameters
based on ELD info (derived from EDID data) of the audio sink.

However, it wrongly assumes that the bits 0-2 of the first byte of
CEA Short Audio Descriptors mean a supported number of channels. In
reality, they mean the maximum number of channels (as per CEA-861-D
7.5.2). This means that the channel count can only be used to restrict
max_channels, not min_channels.

Restricting min_channels causes us to deny opening the device in stereo
mode if the sink only has SADs that declare larger numbers of channels
(like Primare SP32 AV Processor does).

Fix that by not restricting min_channels based on ELD information.

Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
Reported-by: Jean-Yves Avenard <jyavenard@gmail.com>
Tested-by: Jean-Yves Avenard <jyavenard@gmail.com>
Cc: stable@kernel.org
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/hda_eld.c
sound/pci/hda/patch_hdmi.c