Skip to content

Commit a7df7f9

Browse files
perexgtiwai
authored andcommitted
ALSA: hda: improve bass speaker support for ASUS Zenbook UM5606WA
This hardware has ALC294 codec with speaker NID 0x17 and bass speaker NID 0x15. This patch removes DAC NID 0x06 (without volume control) from the connection list for bass speaker NID 0x15. Both speaker PINs are routed to DAC NID 0x03 with this change. Link: alsa-project/alsa-ucm-conf#467 Signed-off-by: Jaroslav Kysela <perex@perex.cz> Link: https://patch.msgid.link/20241128112145.3409492-1-perex@perex.cz Signed-off-by: Takashi Iwai <tiwai@suse.de>
1 parent ca0f79f commit a7df7f9

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

sound/pci/hda/patch_realtek.c

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6491,6 +6491,16 @@ static void alc285_fixup_speaker2_to_dac1(struct hda_codec *codec,
64916491
}
64926492
}
64936493

6494+
/* disable DAC3 (0x06) selection on NID 0x15 - share Speaker/Bass Speaker DAC 0x03 */
6495+
static void alc294_fixup_bass_speaker_15(struct hda_codec *codec,
6496+
const struct hda_fixup *fix, int action)
6497+
{
6498+
if (action == HDA_FIXUP_ACT_PRE_PROBE) {
6499+
static const hda_nid_t conn[] = { 0x02, 0x03 };
6500+
snd_hda_override_conn_list(codec, 0x15, ARRAY_SIZE(conn), conn);
6501+
}
6502+
}
6503+
64946504
/* Hook to update amp GPIO4 for automute */
64956505
static void alc280_hp_gpio4_automute_hook(struct hda_codec *codec,
64966506
struct hda_jack_callback *jack)
@@ -7773,6 +7783,7 @@ enum {
77737783
ALC245_FIXUP_CLEVO_NOISY_MIC,
77747784
ALC269_FIXUP_VAIO_VJFH52_MIC_NO_PRESENCE,
77757785
ALC233_FIXUP_MEDION_MTL_SPK,
7786+
ALC294_FIXUP_BASS_SPEAKER_15,
77767787
};
77777788

77787789
/* A special fixup for Lenovo C940 and Yoga Duet 7;
@@ -10081,6 +10092,10 @@ static const struct hda_fixup alc269_fixups[] = {
1008110092
{ }
1008210093
},
1008310094
},
10095+
[ALC294_FIXUP_BASS_SPEAKER_15] = {
10096+
.type = HDA_FIXUP_FUNC,
10097+
.v.func = alc294_fixup_bass_speaker_15,
10098+
},
1008410099
};
1008510100

1008610101
static const struct hda_quirk alc269_fixup_tbl[] = {
@@ -10590,6 +10605,7 @@ static const struct hda_quirk alc269_fixup_tbl[] = {
1059010605
SND_PCI_QUIRK(0x1043, 0x1d42, "ASUS Zephyrus G14 2022", ALC289_FIXUP_ASUS_GA401),
1059110606
SND_PCI_QUIRK(0x1043, 0x1d4e, "ASUS TM420", ALC256_FIXUP_ASUS_HPE),
1059210607
SND_PCI_QUIRK(0x1043, 0x1da2, "ASUS UP6502ZA/ZD", ALC245_FIXUP_CS35L41_SPI_2),
10608+
SND_PCI_QUIRK(0x1043, 0x1df3, "ASUS UM5606WA", ALC294_FIXUP_BASS_SPEAKER_15),
1059310609
SND_PCI_QUIRK(0x1043, 0x1e02, "ASUS UX3402ZA", ALC245_FIXUP_CS35L41_SPI_2),
1059410610
SND_PCI_QUIRK(0x1043, 0x1e11, "ASUS Zephyrus G15", ALC289_FIXUP_ASUS_GA502),
1059510611
SND_PCI_QUIRK(0x1043, 0x1e12, "ASUS UM3402", ALC287_FIXUP_CS35L41_I2C_2),

0 commit comments

Comments
 (0)