I used to have this problem with my Gateway T6834c laptop with Ubuntu
9.04. Now I seem to have solved the issue with my own homebrewed patch
(in the attachment). I've sent this patch to the ALSA developers mail-
list and got accepted by Takashi Iwai.

The problem, as far as I can tell, is related to EAPD (external
amplifier power down), and can be diagnosed with this command (please
adjust the card and codec numbers in the command if necessary)

$ head -n 20 /proc/asound/card0/codec#0 
Codec: SigmaTel STAC9205
Address: 0
Function Id: 0x1
Vendor Id: 0x838476a0
Subsystem Id: 0x107b0560
Revision Id: 0x100204
No Modem Function Group found
Default PCM:
    rates [0x7e0]: 44100 48000 88200 96000 176400 192000
    bits [0xe]: 16 20 24
    formats [0x1]: PCM
Default Amp-In caps: ofs=0x00, nsteps=0x0f, stepsize=0x05, mute=0
Default Amp-Out caps: ofs=0x7f, nsteps=0x7f, stepsize=0x02, mute=1
GPIO: io=5, o=0, i=0, unsolicited=1, wake=1
  IO[0]: enable=1, dir=1, wake=0, sticky=0, data=1, unsol=0               ---- 
note this line
  IO[1]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[3]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
  IO[4]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
Analog Loopback: 0x00

Note the line IO[0] in the GPIO section, in STAC9502, this GPIO pin coincides 
with EAPD pin.
(see this pdf datasheet from manufacturer: 
http://www.idt.com/products/getDoc.cfm?docID=18693776)
And if you have the data=0 while your headphone is plugged-in, then the 
external amplifier is powered down,
which effectively mute your headphone.

This problem is already solved in the latest alsa-driver 1.0.20 for Gateway 
T1616, a special "eapd" model is
introduced to make sure that EAPD is always on (data=1). So if you can diagnose 
the same problem as above,
just try to force the kernel to use the "eapd" model. There are two ways to do 
that

1. the quick way, update to latest alsa-driver, and append this line to 
/etc/modprobe.d/alsa-base.conf
     options snd-hda-intel model=eapd position_fix=1
2. the once-for-all-and-everybody way, tell the kernel to probe for your 
Gateway audio chip and adjust to "eapd" model
   once the kernel knows how to do the job, no conf file tweaking will be 
necessary.
   that's what I did in my patch. add this line into the model probing code of 
the sigmatel STAC9205 driver
       SND_PCI_QUIRK(0x107b, 0x0560, "Gateway T6834c", STAC_9205_EAPD),
    the two numbers 0x107b and 0x0560 are from the "Subsystem Id" line from 
"/proc/asound/card0/codec#0"

I'm trying to write a "bigger" patch that supports more STAC9205 Gateway 
models, so please give me your
subsystem id and gateway model number if you diagnose the same problem on your 
system and you haven't
submitted these info above.

Thanks!

** Attachment added: "0001-ALSA-hda-Add-quirk-for-Gateway-T6834c-laptop.patch"
   
http://launchpadlibrarian.net/29272107/0001-ALSA-hda-Add-quirk-for-Gateway-T6834c-laptop.patch

-- 
SigmaTel STAC9205: Headphone Jack Not Working
https://bugs.launchpad.net/bugs/306755
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to