From: Takashi Iwai <tiwai@suse.de>
To: Nirbheek Chauhan <nirbheek.chauhan@gmail.com>
Cc: Jaroslav Kysela <perex@perex.cz>,
Kailang Yang <kailang@realtek.com>,
linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org,
arun@accosted.net
Subject: Re: [bisected] snd_hda_intel, 2.6.37: automuting on headphone connect broken; headphone connecter no longer shown in userspace
Date: Mon, 10 Jan 2011 14:54:25 +0100 [thread overview]
Message-ID: <s5hhbdgdfu6.wl%tiwai@suse.de> (raw)
In-Reply-To: <AANLkTi=Fza-mJyAKtsryAUMMgPoXur4oQ6F2keBmxF6B@mail.gmail.com>
At Wed, 5 Jan 2011 13:07:41 +0530,
Nirbheek Chauhan wrote:
>
> Hello,
>
> Upon upgrading to 2.6.37,
> auto-muting-laptop-speakers-on-headphone-connect stopped working, and
> the headphone connector completely disappeared from alsamixer as well
> as the pulseaudio volume control panel. The headphone jack was still
> transmitting sound, though.
>
> I bisected the problem, with 'good' being v2.6.36, and found the
> commit below as the first bad commit. Reverting it on v2.6.37 fixes
> the problem. I also tried the latest alsa-kernel master git tree,
> which had the same problem.
>
> alsa-info when 'good':
>
> http://www.alsa-project.org/db/?f=a0b5c95f764a0b01746be46f989685996e1f9210
>
> alsa-info when 'bad':
>
> http://www.alsa-project.org/db/?f=30f30ca5461f03b98ab6c7c611cf24ea4526f537
>
> Note: both were taken without X running, before pulseaudio came up.
>
> ================
> 03642c9a444079aa13f0864383a8f9ca04bfd198 is the first bad commit
> commit 03642c9a444079aa13f0864383a8f9ca04bfd198
> Author: Takashi Iwai <tiwai@suse.de>
> Date: Wed Sep 8 15:28:19 2010 +0200
>
> ALSA: hda - Clear left-over hp_pins in snd_hda_parse_pin_def_config()
>
> In snd_hda_parse_def_config(), some unused values may remain in hp_pins[]
> array during the headphone-reassignment workaround. This patch clears
> the unused array members.
>
> Signed-off-by: Takashi Iwai <tiwai@suse.de>
>
> :040000 040000 34724336a75f74263423f28d64450d65e5ed948d
> 8d136fce8661ad2df35ac3c4a9ca1c712c9833ed M sound
>
> ================
It seems that the driver worked casually in the earlier versions :)
Does the patch below fix your problem?
Note that the "Headphone" control will still not appear even with this
patch, but these two outputs are controlled by "Front" and "Surround"
controls. The lack of "Headphone" is no regression but simply it
shouldn't have been there.
I'll work on 2.6.38 tree for better handling of multi headphone
cases.
thanks,
Takashi
===
>From b2d0576055bd1cafcd91a23cf85064815f1396cd Mon Sep 17 00:00:00 2001
From: Takashi Iwai <tiwai@suse.de>
Date: Mon, 10 Jan 2011 14:47:35 +0100
Subject: [PATCH] ALSA: hda - Fix multi-headphone handling for Realtek codecs
When multiple headphone pins are defined without line-out pins, the
driver takes them as primary outputs. But it forgot to set line_out_type
to HP by assuming there is some rest of HP pins. This results in some
mis-handling of these pins for Realtek codec parser. It takes as if
these are pure line-out jacks.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Cc: <stable@kernel.org>
---
sound/pci/hda/hda_codec.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
index 98b6d02..05e5ec8 100644
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
@@ -4571,6 +4571,9 @@ int snd_hda_parse_pin_def_config(struct hda_codec *codec,
}
memset(cfg->hp_pins + cfg->hp_outs, 0,
sizeof(hda_nid_t) * (AUTO_CFG_MAX_OUTS - cfg->hp_outs));
+ if (!cfg->hp_outs)
+ cfg->line_out_type = AUTO_PIN_HP_OUT;
+
}
/* sort by sequence */
--
1.7.3.4
next prev parent reply other threads:[~2011-01-10 13:54 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-05 7:37 Nirbheek Chauhan
2011-01-10 13:54 ` Takashi Iwai [this message]
2011-01-10 14:49 ` Takashi Iwai
2011-01-10 18:01 ` Nirbheek Chauhan
2011-01-10 18:56 ` Takashi Iwai
2011-01-10 17:40 ` Nirbheek Chauhan
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=s5hhbdgdfu6.wl%tiwai@suse.de \
--to=tiwai@suse.de \
--cc=alsa-devel@alsa-project.org \
--cc=arun@accosted.net \
--cc=kailang@realtek.com \
--cc=linux-kernel@vger.kernel.org \
--cc=nirbheek.chauhan@gmail.com \
--cc=perex@perex.cz \
/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
all inboxes | Powered by JetHome®