All of lore.kernel.org
 help / color / mirror / Atom feed
From: Veli-Matti Lintu <veli-matti.lintu@opinsys.fi>
To: alsa-devel@alsa-project.org
Subject: Re: Patch for Intel-HDA ALC262 on FSC Lifebook C1410
Date: Fri, 12 Oct 2007 15:57:16 +0300	[thread overview]
Message-ID: <1192193836.29174.57.camel@localhost> (raw)
In-Reply-To: <s5h1wc4vdm6.wl%tiwai@suse.de>

ti, 2007-10-09 kello 11:30 +0200, Takashi Iwai kirjoitti:
> At Mon, 8 Oct 2007 13:59:41 +0300 (EEST),
> Veli-Matti Lintu wrote:
> > 
> > Hello,
> > 
> > After error and trial I got sound working on Fujitsu-Siemens Computers Lifebook C1410. Attached is a patch that works for me, but probably needs some cleaning.
> > 
> > The laptop uses an ALC262 chip that is also used on other FSC models, but the needed settings seem to be somewhat different from the existing Fujitsu-settings in patch_realtek.c. If I understand correctly, the chips use same subsystem ids, so the patch does not automatically detect the correct chipset. Maybe someone more knowledgeable can help with this? The patch names the internal mic as Int Mic and external mic that can be plugged in as Ext Mic.
> > 
> > There's some more background information in Ubuntu's Launchpad:
> > https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/125790
> > 
> > 
> > The patch is tested with kernel 2.6.22.9. I am not really familiar with alsa development, so I cannot say which version of the alsa drivers that kernel version uses. The environment where the testing was done is running Ubuntu 7.04 with alsa version 1.0.13. Only updated component is the kernel.
> > -------------------------------------------------------------------
> > lspci -nv (on C1410)
> > 
> > 00:1b.0 0403: 8086:27d8 (rev 02)
> >         Subsystem: 10cf:1397
> >         Flags: bus master, fast devsel, latency 0, IRQ 22
> >         Memory at f0640000 (64-bit, non-prefetchable) [size=16K]
> >         Capabilities: [50] Power Management version 2
> >         Capabilities: [60] Message Signalled Interrupts: Mask- 64bit+ Queue=0/0 Enable-
> >         Capabilities: [70] Express Unknown type IRQ 0
> >         Capabilities: [100] Virtual Channel
> >         Capabilities: [130] Unknown (5)
> > -------------------------------------------------------------------
> > 
> > I hope someone with more knowledge about alsa drivers could have a look at this. The patch has been in internal use for a few weeks and people seem to be happy with it, so I hope also others can get their sound working.
> 
> First, thanks for the patch.
> 
> I think we can simply extend the existing fujitsu model.  The internal
> mic is likely a missing feature in that model, too.
> 
> So, could you check whether the latest ALSA driver does work for you
> "as is" (in a certain level)?  If not, could you just add
> alc262_EAPD_verbs to the initialization verbs for ALC262_FUTJISU?

Thanks for looking at this. I tested this against kernel 2.6.22.9 from
kernel.org and the patch seems to do the trick. Without
alc262_EAPD_verbs sound does not work and the mic settings need to be
added to get the mic working.

I do not have any other laptops using the same chip available for
testing, so I cannot say whether this affects other models using the
same chip.

Below is the diff from the actual sources that I used to test this:

-----------------------------------------------------------------------
--- pci/hda/patch_realtek.c 2007-09-26 21:03:01.000000000 +0300
+++ pci/hda/patch_realtek.c 2007-10-11 21:07:30.000000000 +0300
@@ -7064,6 +7064,7 @@
        .num_items = 2,
        .items = {
                { "Mic", 0x0 },
+               { "Int Mic", 0x1 },
                { "CD", 0x4 },
        },
 };
@@ -7179,6 +7180,9 @@
        HDA_CODEC_VOLUME("Mic Boost", 0x18, 0, HDA_INPUT),
        HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT),
        HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT),
+       HDA_CODEC_VOLUME("Int Mic Boost", 0x19, 0, HDA_INPUT),
+       HDA_CODEC_VOLUME("Int Mic Playback Volume", 0x0b, 0x1,
HDA_INPUT),
+       HDA_CODEC_MUTE("Int Mic Playback Switch", 0x0b, 0x1, HDA_INPUT),
        { } /* end */
 };

@@ -7649,7 +7653,8 @@
        },
        [ALC262_FUJITSU] = {
                .mixers = { alc262_fujitsu_mixer },
-               .init_verbs = { alc262_init_verbs,
alc262_fujitsu_unsol_verbs },
+               .init_verbs = { alc262_init_verbs, alc262_EAPD_verbs,
+                               alc262_fujitsu_unsol_verbs },
                .num_dacs = ARRAY_SIZE(alc262_dac_nids),
                .dac_nids = alc262_dac_nids,
                .hp_nid = 0x03,
-----------------------------------------------------------------------

Veli-Matti


> A patch I hacked quickly is below.  Try it as a reference, too.
> 
> 
> Takashi
> 
> diff -r a4cf3aa3dc5b pci/hda/patch_realtek.c
> --- a/pci/hda/patch_realtek.c	Tue Oct 09 10:34:06 2007 +0200
> +++ b/pci/hda/patch_realtek.c	Tue Oct 09 11:28:26 2007 +0200
> @@ -7810,6 +7810,7 @@ static struct hda_input_mux alc262_fujit
>  	.num_items = 2,
>  	.items = {
>  		{ "Mic", 0x0 },
> +		{ "Int Mic", 0x1 },
>  		{ "CD", 0x4 },
>  	},
>  };
> @@ -7915,6 +7916,9 @@ static struct snd_kcontrol_new alc262_fu
>  	HDA_CODEC_VOLUME("Mic Boost", 0x18, 0, HDA_INPUT),
>  	HDA_CODEC_VOLUME("Mic Playback Volume", 0x0b, 0x0, HDA_INPUT),
>  	HDA_CODEC_MUTE("Mic Playback Switch", 0x0b, 0x0, HDA_INPUT),
> +	HDA_CODEC_VOLUME("Int Mic Boost", 0x19, 0, HDA_INPUT),
> +	HDA_CODEC_VOLUME("Int Mic Playback Volume", 0x0b, 0x1, HDA_INPUT),
> +	HDA_CODEC_MUTE("Int Mic Playback Switch", 0x0b, 0x1, HDA_INPUT),
>  	{ } /* end */
>  };
>  
> @@ -8411,7 +8415,8 @@ static struct alc_config_preset alc262_p
>  	},
>  	[ALC262_FUJITSU] = {
>  		.mixers = { alc262_fujitsu_mixer },
> -		.init_verbs = { alc262_init_verbs, alc262_fujitsu_unsol_verbs },
> +		.init_verbs = { alc262_init_verbs, alc262_EAPD_verbs,
> +				alc262_fujitsu_unsol_verbs },
>  		.num_dacs = ARRAY_SIZE(alc262_dac_nids),
>  		.dac_nids = alc262_dac_nids,
>  		.hp_nid = 0x03,

  reply	other threads:[~2007-10-12 12:57 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <32444606.17521191841076426.JavaMail.root@intra>
2007-10-08 10:59 ` Patch for Intel-HDA ALC262 on FSC Lifebook C1410 Veli-Matti Lintu
2007-10-09  9:30   ` Takashi Iwai
2007-10-12 12:57     ` Veli-Matti Lintu [this message]
2007-10-12 13:01       ` 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=1192193836.29174.57.camel@localhost \
    --to=veli-matti.lintu@opinsys.fi \
    --cc=alsa-devel@alsa-project.org \
    /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.