[alsa-devel] snd-hda-intel: Fix volume-wheel and microphone on Fujitsu-Siemens Amilo M3438G
lists.mg at googlemail.com
Thu Feb 7 00:02:21 CET 2008
On Feb 6, 2008 5:36 PM, Takashi Iwai <tiwai at suse.de> wrote:
> At Wed, 6 Feb 2008 17:14:37 +0100,
> M G wrote:
> > Currently the default model that gets selected on this hardware is "F1734".
> > Using this model neither the volume-wheel nor microphone (internal or
> > external) work.
> Thanks for your patch.
> > The first part of my patch changes the default model to "fujitsu", this
> > enables the volume wheel on the left side of the laptop.
> The concern is whether you lose any functionality by this rename.
> The support of the volume knob control with the existing F1734 model
> would be easy. You'd need to add a proper verb to enable the
> unsolicited event and register the handler, such as, uniwill_p53 one.
> > The second part changes the capture settings and thus makes it possible to
> > record from microphones. Now when capturing from the external microphone I
> > can hear myself talking but its quite quiet. I can improve this a little by
> > raising the capture volume, but if I raise it above 40 I can no longer
> > record anything.
> Using 6stack_capture_source looks wrong to me. It is actually for
> desktops. But yours isn't, I guess.
> The recording quality might be improved by setting the proper pin VREF
> Anyway, it'd be more helpful if you can show the detailed information,
> e.g. the output of alsa-info.sh script.
No, it's a Laptop. The standard capture source has front mic at 0x3
while the 6stack capture source has front mic at 0x1; this is the only
difference but this seems to be what makes it work, I don't know why.
(Btw: It is always front mic, no matter what microphone I use. As soon
as I plug the external mic the internal one gets muted and the
external one takes over it's channel)
About the technical stuff: I don't know what an unsolicited event or a
VREF is, I'm not a programmer. I just fiddled around with stuff until
it was working but don't understand it :)
I have uploaded the output of alsa-info.sh twice. First with normal
alsa und then with my patch (don't know is this is important)
> > Questions:
> > Is this patch any good or is there a better way to fix my problems?
> > Why is the recording so quiet and why can't I record with capture value
> > above 40?
> > Patch:
> > diff -r c4c5e6ced12f pci/hda/patch_realtek.c
> > --- a/pci/hda/patch_realtek.c Wed Feb 06 15:48:06 2008 +0100
> > +++ b/pci/hda/patch_realtek.c Wed Feb 06 15:59:28 2008 +0100
> > @@ -2917,7 +2917,7 @@ static struct snd_pci_quirk alc880_cfg_t
> > SND_PCI_QUIRK(0x161f, 0x203d, "W810", ALC880_W810),
> > SND_PCI_QUIRK(0x1695, 0x400d, "EPoX", ALC880_5ST_DIG),
> > SND_PCI_QUIRK(0x1695, 0x4012, "EPox EP-5LDA", ALC880_5ST_DIG),
> > - SND_PCI_QUIRK(0x1734, 0x107c, "FSC F1734", ALC880_F1734),
> > + SND_PCI_QUIRK(0x1734, 0x107c, "FSC F1734", ALC880_FUJITSU),
> > SND_PCI_QUIRK(0x1734, 0x10ac, "FSC", ALC880_UNIWILL),
> > SND_PCI_QUIRK(0x1734, 0x10b0, "Fujitsu", ALC880_FUJITSU),
> > SND_PCI_QUIRK(0x1854, 0x0018, "LG LW20", ALC880_LG_LW),
> > @@ -3161,7 +3161,7 @@ static struct alc_config_preset alc880_p
> > .dig_out_nid = ALC880_DIGOUT_NID,
> > .num_channel_mode = ARRAY_SIZE(alc880_2_jack_modes),
> > .channel_mode = alc880_2_jack_modes,
> > - .input_mux = &alc880_capture_source,
> > + .input_mux = &alc880_6stack_capture_source,
> > .unsol_event = alc880_uniwill_p53_unsol_event,
> > .init_hook = alc880_uniwill_p53_hp_automute,
> > },
> > _______________________________________________
> > Alsa-devel mailing list
> > Alsa-devel at alsa-project.org
> > http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
More information about the Alsa-devel