ALSA: hda - Fix regression on ATI HDMI audio
authorTakashi Iwai <tiwai@suse.de>
Wed, 11 May 2016 12:56:12 +0000 (14:56 +0200)
committerTakashi Iwai <tiwai@suse.de>
Wed, 11 May 2016 13:09:45 +0000 (15:09 +0200)
commit3966922548f0ea297a219c5a1c548058d2bd59f6
tree3e4f5b3dd0805938287f9fe09300c101c288bb94
parent3231e2053eaeee70bdfb216a78a30f11e88e2243
ALSA: hda - Fix regression on ATI HDMI audio

The HDMI/DP audio output on ATI/AMD chips got broken due to the recent
restructuring of chmap.  Fortunately, Daniel Exner could bisect, and
pointed the culprit commit [739ffee97ed5: ALSA: hda - Add hdmi chmap
verb programming ops to chmap object].

This commit moved some ops from hdmi_ops to chmap_ops, and reassigned
the ops in the embedded chmap object in hdmi_spec instead.
Unfortunately, the reassignment of these ops in patch_atihdmi() were
moved into an if block that is performed only for old chips.  Thus, on
newer chips, the generic ops is still used, which doesn't work for
such ATI/AMD chips.

This patch addresses the regression, simply by moving the assignment
of chmap ops to the right place.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=114981
Fixes: 739ffee97ed5 ('ALSA: hda - Add hdmi chmap verb programming ops to chmap object')
Reported-and-tested-by: Daniel Exner <dex@dragonslave.de>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/pci/hda/patch_hdmi.c