diff mbox series

[1/2] ALSA: hda: Fix 2 channel swapping for Tegra

Message ID 20200825052415.20626-2-mkumard@nvidia.com (mailing list archive)
State New, archived
Headers show
Series Tegra HDA specific fixes | expand

Commit Message

Mohan Kumar Aug. 25, 2020, 5:24 a.m. UTC
The Tegra HDA codec HW implementation has an issue related to not
swapping the 2 channel Audio Sample Packet(ASP) channel mapping.
Whatever the FL and FR mapping specified the left channel always
comes out of left speaker and right channel on right speaker. So
add condition to disallow the swapping of FL,FR during the playback.

Signed-off-by: Mohan Kumar <mkumard@nvidia.com>
---
 sound/pci/hda/patch_hdmi.c | 5 +++++
 1 file changed, 5 insertions(+)

Comments

Takashi Iwai Aug. 25, 2020, 7:36 a.m. UTC | #1
On Tue, 25 Aug 2020 07:24:14 +0200,
Mohan Kumar wrote:
> 
> The Tegra HDA codec HW implementation has an issue related to not
> swapping the 2 channel Audio Sample Packet(ASP) channel mapping.
> Whatever the FL and FR mapping specified the left channel always
> comes out of left speaker and right channel on right speaker. So
> add condition to disallow the swapping of FL,FR during the playback.
> 
> Signed-off-by: Mohan Kumar <mkumard@nvidia.com>

Thanks, applied.


Takashi
diff mbox series

Patch

diff --git a/sound/pci/hda/patch_hdmi.c b/sound/pci/hda/patch_hdmi.c
index b8c8490e568b..3259d713ace9 100644
--- a/sound/pci/hda/patch_hdmi.c
+++ b/sound/pci/hda/patch_hdmi.c
@@ -3734,6 +3734,7 @@  static int tegra_hdmi_build_pcms(struct hda_codec *codec)
 
 static int patch_tegra_hdmi(struct hda_codec *codec)
 {
+	struct hdmi_spec *spec;
 	int err;
 
 	err = patch_generic_hdmi(codec);
@@ -3741,6 +3742,10 @@  static int patch_tegra_hdmi(struct hda_codec *codec)
 		return err;
 
 	codec->patch_ops.build_pcms = tegra_hdmi_build_pcms;
+	spec = codec->spec;
+	spec->chmap.ops.chmap_cea_alloc_validate_get_type =
+		nvhdmi_chmap_cea_alloc_validate_get_type;
+	spec->chmap.ops.chmap_validate = nvhdmi_chmap_validate;
 
 	return 0;
 }