From: Wu Fengguang <fengguang.wu@intel.com>
To: Takashi Iwai <tiwai@suse.de>
Cc: "alsa-devel@alsa-project.org" <alsa-devel@alsa-project.org>,
"Lin, Ming M" <ming.m.lin@intel.com>
Subject: Re: [PATCH] hda: enable speaker output for Compaq 6530s/6531s
Date: Wed, 19 Aug 2009 16:58:59 +0800 [thread overview]
Message-ID: <20090819085859.GA13895@localhost> (raw)
In-Reply-To: <s5hocqcchlq.wl%tiwai@suse.de>
On Wed, Aug 19, 2009 at 04:50:41PM +0800, Takashi Iwai wrote:
> At Wed, 19 Aug 2009 16:01:51 +0800,
> Wu Fengguang wrote:
> >
> > On Wed, Aug 19, 2009 at 03:56:59PM +0800, Wu Fengguang wrote:
> > > On Tue, Aug 18, 2009 at 02:33:43PM +0800, Takashi Iwai wrote:
> > > > At Mon, 17 Aug 2009 08:46:14 +0200,
> > > > I wrote:
> > > > >
> > > > > At Sun, 16 Aug 2009 19:01:10 +0800,
> > > > > Wu Fengguang wrote:
> > > > > >
> > > > > > On Sun, Aug 16, 2009 at 05:22:23PM +0800, Takashi Iwai wrote:
> > > > > > > At Sun, 16 Aug 2009 16:53:17 +0800,
> > > > > > > Wu Fengguang wrote:
> > > > > > > >
> > > > > > > > There are 3 causes to the silence of Compaq 6530s' internal speaker:
> > > > > > > > - HP pin 0x11 always return 0xffff,ffff (pin_presence=1),
> > > > > > > > which automutes the speaker at module loading time.
> > > > > > >
> > > > > > > This is odd. Is the sense-trigger issued before reading the pin sense?
> > > > > >
> > > > > > Sorry, what do you mean? The facts I explored are:
> > > > > > - ad1884a_hp_automute() will be explicitly called by ad1884a_hp_init()
> > > > > > - ad1884a_hp_unsol_event() is never called on plug events
> > > > > > - I tried manually execute AC_VERB_SET_PIN_SENSE then read pin sense,
> > > > > > it takes effect on the impedance, but pin_presence still remains 1.
> > > > >
> > > > > The fact that it returns only -1 sounds rather like a hardware issue.
> > > > > Or, at least, reading a wrong place or so.
> > > >
> > > > BTW, could you give alsa-info.sh output on both machines?
> > >
> > > I'm now testing 6531s. All verbs/states seem OK.
> >
> > In fact for 6531s, the speaker can produce sound on fresh boot.
> > However after a while the sound disappeared. No single write verb
> > was executed during the time! And then I found the 0x1c trick can
> > be applied to 6530s as well as 6531s, and magically make the speaker
> > work by applying this patch.
>
> OK, I'm going to apply your fix.
>
> > @@ -4003,6 +4005,8 @@ static struct snd_pci_quirk ad1884a_cfg_
> > SND_PCI_QUIRK(0x103c, 0x3030, "HP", AD1884A_MOBILE),
> > SND_PCI_QUIRK(0x103c, 0x3037, "HP 2230s", AD1884A_LAPTOP),
> > SND_PCI_QUIRK(0x103c, 0x3056, "HP", AD1884A_MOBILE),
> > + SND_PCI_QUIRK(0x103c, 0x30e8, "HP Compaq 6530s", AD1884A_LAPTOP),
> > + SND_PCI_QUIRK(0x103c, 0x30e9, "HP Compaq 6531s", AD1884A_LAPTOP),
> > SND_PCI_QUIRK_MASK(0x103c, 0xfff0, 0x3070, "HP", AD1884A_MOBILE),
> > SND_PCI_QUIRK_MASK(0x103c, 0xfff0, 0x30d0, "HP laptop", AD1884A_LAPTOP),
> > SND_PCI_QUIRK_MASK(0x103c, 0xfff0, 0x30e0, "HP laptop", AD1884A_LAPTOP),
>
> These entries are unnecessary because they match with model=laptop
> with the masked entry 013c:30e* (the last one in the chunk above).
Yes I was aware of this. Just that printing the exact names may make
some users feel better :)
> Could you remove it and repost?
Sure.
---
hda: enable speaker output for Compaq 6530s/6531s
HP Compaq 6530s and 6531s internal speaker is silence or becomes silence
within 1 minute after fresh boot. It is found that pin 0x1c must be set to
PIN_OUT mode to make the speaker work. This is weird - line-in pin 0x1c and
speaker pin 0x16 seem to be unrelated.
The codec differences before/after patch are:
@@ Node 0x17 [Pin Complex] wcaps 0x40020b:
Pin Default 0x41a6e130: [N/A] Mic at Ext Rear
Conn = Digital, Color = White
DefAssociation = 0x3, Sequence = 0x0
Misc = NO_PRESENCE
- Pin-ctls: 0x24: IN
+ Pin-ctls: 0x40: OUT
@@ Node 0x1c [Pin Complex] wcaps 0x40018d:
Pin Default 0x41813021: [N/A] Line In at Ext Rear
Conn = 1/8, Color = Blue
DefAssociation = 0x2, Sequence = 0x1
- Pin-ctls: 0x24: IN VREF_80
+ Pin-ctls: 0x40: OUT VREF_HIZ
Unsolicited: tag=00, enabled=0
Connection: 1
0x24
Tests show that it won't impact (external) Mic recording.
Reported-by: "Lin, Ming M" <ming.m.lin@intel.com>
Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
---
sound/pci/hda/patch_analog.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
--- sound-2.6.orig/sound/pci/hda/patch_analog.c 2009-08-19 16:56:11.000000000 +0800
+++ sound-2.6/sound/pci/hda/patch_analog.c 2009-08-19 16:56:12.000000000 +0800
@@ -3836,9 +3836,11 @@ static struct hda_verb ad1884a_laptop_ve
/* Port-F (int speaker) mixer - route only from analog mixer */
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)},
{0x0b, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(1)},
- /* Port-F pin */
- {0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP},
+ /* Port-F (int speaker) pin */
+ {0x16, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
{0x16, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE},
+ /* required for compaq 6530s/6531s speaker output */
+ {0x1c, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT},
/* Port-C pin - internal mic-in */
{0x15, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80},
{0x14, AC_VERB_SET_AMP_GAIN_MUTE, 0x7002}, /* raise mic as default */
next prev parent reply other threads:[~2009-08-19 8:59 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-16 8:53 [PATCH] hda: enable speaker output for Compaq 6530s/6531s Wu Fengguang
2009-08-16 9:05 ` [PATCH] hda: enable speaker output of HP 2510p Wu Fengguang
2009-08-16 9:24 ` Takashi Iwai
2009-08-16 11:03 ` Wu Fengguang
2009-08-16 9:22 ` [PATCH] hda: enable speaker output for Compaq 6530s/6531s Takashi Iwai
2009-08-16 11:01 ` Wu Fengguang
2009-08-17 6:46 ` Takashi Iwai
2009-08-18 6:33 ` Takashi Iwai
2009-08-18 7:06 ` Wu Fengguang
2009-08-19 7:56 ` Wu Fengguang
2009-08-19 8:01 ` Wu Fengguang
2009-08-19 8:50 ` Takashi Iwai
2009-08-19 8:58 ` Wu Fengguang [this message]
2009-08-19 10:12 ` Takashi Iwai
2009-08-19 8:27 ` Wu Fengguang
2009-08-19 8:47 ` 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=20090819085859.GA13895@localhost \
--to=fengguang.wu@intel.com \
--cc=alsa-devel@alsa-project.org \
--cc=ming.m.lin@intel.com \
--cc=tiwai@suse.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.