From: Takashi Iwai <tiwai@suse.de>
To: Vasiliy Kovalev <kovalev@altlinux.org>
Cc: Takashi Iwai <tiwai@suse.com>, Jaroslav Kysela <perex@perex.cz>,
linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org,
bo liu <bo.liu@senarytech.com>
Subject: Re: [PATCH] ALSA: hda/conexant - Fix audio routing for HP EliteOne 1000 G2
Date: Wed, 09 Oct 2024 14:09:48 +0200 [thread overview]
Message-ID: <87v7y1tr3n.wl-tiwai@suse.de> (raw)
In-Reply-To: <20241009111207.655842-1-kovalev@altlinux.org>
On Wed, 09 Oct 2024 13:12:07 +0200,
Vasiliy Kovalev wrote:
>
> There is a problem with simultaneous audio output to headphones and
> speakers, and when headphones are turned off, the speakers also turn
> off and do not turn them on.
>
> However, it was found that if you boot linux immediately after windows,
> there are no such problems. When comparing alsa-info, the only difference
> is the different configuration of Node 0x1d:
>
> working conf. (windows): Pin-ctls: 0x80: HP
> not working (linux): Pin-ctls: 0xc0: OUT HP
>
> This patch disable the AC_PINCTL_OUT_EN bit of Node 0x1d and fixes the
> described problem.
>
> Signed-off-by: Vasiliy Kovalev <kovalev@altlinux.org>
Interesting, is this pin not used by any routes, but it has to be set
up? A bit more comments would be helpful for the quirk function.
In anyway, please give alsa-info.sh output. Run the script with
--no-upload option and attach the output.
thanks,
Takashi
> ---
> sound/pci/hda/patch_conexant.c | 17 +++++++++++++++++
> 1 file changed, 17 insertions(+)
>
> diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c
> index b61ce5e6f5ec5..47d1929184b2a 100644
> --- a/sound/pci/hda/patch_conexant.c
> +++ b/sound/pci/hda/patch_conexant.c
> @@ -303,6 +303,7 @@ enum {
> CXT_FIXUP_HP_SPECTRE,
> CXT_FIXUP_HP_GATE_MIC,
> CXT_FIXUP_MUTE_LED_GPIO,
> + CXT_FIXUP_HP_ELITEONE_OUT_DIS,
> CXT_FIXUP_HP_ZBOOK_MUTE_LED,
> CXT_FIXUP_HEADSET_MIC,
> CXT_FIXUP_HP_MIC_NO_PRESENCE,
> @@ -320,6 +321,17 @@ static void cxt_fixup_stereo_dmic(struct hda_codec *codec,
> spec->gen.inv_dmic_split = 1;
> }
>
> +static void cxt_fixup_out_disable(struct hda_codec *codec,
> + const struct hda_fixup *fix, int action)
> +{
> + if (action == HDA_FIXUP_ACT_PROBE) {
> + unsigned int val;
> +
> + val = snd_hda_codec_get_pin_target(codec, 0x1d);
> + snd_hda_set_pin_ctl(codec, 0x1d, val & (~AC_PINCTL_OUT_EN));
> + }
> +}
> +
> static void cxt5066_increase_mic_boost(struct hda_codec *codec,
> const struct hda_fixup *fix, int action)
> {
> @@ -971,6 +983,10 @@ static const struct hda_fixup cxt_fixups[] = {
> .type = HDA_FIXUP_FUNC,
> .v.func = cxt_fixup_mute_led_gpio,
> },
> + [CXT_FIXUP_HP_ELITEONE_OUT_DIS] = {
> + .type = HDA_FIXUP_FUNC,
> + .v.func = cxt_fixup_out_disable,
> + },
> [CXT_FIXUP_HP_ZBOOK_MUTE_LED] = {
> .type = HDA_FIXUP_FUNC,
> .v.func = cxt_fixup_hp_zbook_mute_led,
> @@ -1061,6 +1077,7 @@ static const struct snd_pci_quirk cxt5066_fixups[] = {
> SND_PCI_QUIRK(0x103c, 0x83b2, "HP EliteBook 840 G5", CXT_FIXUP_HP_DOCK),
> SND_PCI_QUIRK(0x103c, 0x83b3, "HP EliteBook 830 G5", CXT_FIXUP_HP_DOCK),
> SND_PCI_QUIRK(0x103c, 0x83d3, "HP ProBook 640 G4", CXT_FIXUP_HP_DOCK),
> + SND_PCI_QUIRK(0x103c, 0x83e5, "HP EliteOne 1000 G2", CXT_FIXUP_HP_ELITEONE_OUT_DIS),
> SND_PCI_QUIRK(0x103c, 0x8402, "HP ProBook 645 G4", CXT_FIXUP_MUTE_LED_GPIO),
> SND_PCI_QUIRK(0x103c, 0x8427, "HP ZBook Studio G5", CXT_FIXUP_HP_ZBOOK_MUTE_LED),
> SND_PCI_QUIRK(0x103c, 0x844f, "HP ZBook Studio G5", CXT_FIXUP_HP_ZBOOK_MUTE_LED),
> --
> 2.33.8
>
next prev parent reply other threads:[~2024-10-09 12:08 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-09 11:12 [PATCH] ALSA: hda/conexant - Fix audio routing for HP EliteOne 1000 G2 Vasiliy Kovalev
2024-10-09 12:09 ` Takashi Iwai [this message]
2024-10-09 12:28 ` Vasiliy Kovalev
2024-10-09 12:49 ` Takashi Iwai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87v7y1tr3n.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=bo.liu@senarytech.com \
--cc=kovalev@altlinux.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=perex@perex.cz \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox