Alsa-Devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: "Daniele (Mastro)" <daniele.bilug@gmail.com>
Cc: alsa-devel@alsa-project.org
Subject: Re: Notebook Toshiba satellite x200-21g with realtek snd-hda-intel audio device still not supported (codec ALC268)
Date: Mon, 11 Feb 2008 17:09:14 +0100	[thread overview]
Message-ID: <s5htzkfv5jp.wl%tiwai@suse.de> (raw)
In-Reply-To: <47B06DEF.4070609@gmail.com>

At Mon, 11 Feb 2008 16:46:55 +0100,
Daniele (Mastro) wrote:
> 
> Tobin Davis ha scritto:
> > Ok, I'm going to dive into this one this weekend.  I have a test board
> > ready to run.
> > 
> > Daniele, please email me off list to keep the noise level down.  I'm
> > also tracking this in bugzilla.
> 
> since 16/01 i haven't any news from Tobin Davis in private email..
> 
> i sent him 3 mails in 3 weeks waiting for a reply without gettin any one
> 
> you can find all the news at the bug report:
> 
> https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3659
> 
> the last time i sent him an email with some remind on what's are, still, 
> my problems..
> 
> can someone else take care of this problem? i'll try to help as best as 
> i can...
> you can find on the bug report the debug ( detect ) info with "test" 
> module parameter
> 
> note: things still missing.. microphone don't work in recording, the 56k 
> modem isn't recognized and i've some error in dmesg:

Note that these are no errors but just debug information.

Try the patch below.  This should fix the capture source problem on
ALC268.

The modem is a different problem.  There are only certain model chips
that can work with slmodemd.  Non si3054-compatible (typically
conexant ones) don't work.


Takashi

---

diff -r 29ae582df0ee pci/hda/patch_realtek.c
--- a/pci/hda/patch_realtek.c	Mon Feb 11 16:35:02 2008 +0100
+++ b/pci/hda/patch_realtek.c	Mon Feb 11 17:06:19 2008 +0100
@@ -238,6 +238,7 @@ struct alc_spec {
 	/* capture */
 	unsigned int num_adc_nids;
 	hda_nid_t *adc_nids;
+	hda_nid_t *capsrc_nids;
 	hda_nid_t dig_in_nid;		/* digital-in NID; optional */
 
 	/* capture source */
@@ -291,6 +292,7 @@ struct alc_config_preset {
 	hda_nid_t hp_nid;		/* optional */
 	unsigned int num_adc_nids;
 	hda_nid_t *adc_nids;
+	hda_nid_t *capsrc_nids;
 	hda_nid_t dig_in_nid;
 	unsigned int num_channel_mode;
 	const struct hda_channel_mode *channel_mode;
@@ -337,9 +339,10 @@ static int alc_mux_enum_put(struct snd_k
 	struct alc_spec *spec = codec->spec;
 	unsigned int adc_idx = snd_ctl_get_ioffidx(kcontrol, &ucontrol->id);
 	unsigned int mux_idx = adc_idx >= spec->num_mux_defs ? 0 : adc_idx;
+	hda_nid_t capsrc = spec->capsrc_nids ?
+		spec->capsrc_nids[adc_idx] : spec->adc_nids[adc_idx];
 	return snd_hda_input_mux_put(codec, &spec->input_mux[mux_idx], ucontrol,
-				     spec->adc_nids[adc_idx],
-				     &spec->cur_mux[adc_idx]);
+				     capsrc, &spec->cur_mux[adc_idx]);
 }
 
 
@@ -708,6 +711,7 @@ static void setup_preset(struct alc_spec
 
 	spec->num_adc_nids = preset->num_adc_nids;
 	spec->adc_nids = preset->adc_nids;
+	spec->capsrc_nids = preset->capsrc_nids;
 	spec->dig_in_nid = preset->dig_in_nid;
 
 	spec->unsol_event = preset->unsol_event;
@@ -9527,6 +9531,10 @@ static hda_nid_t alc268_adc_nids_alt[1] 
 	0x08
 };
 
+static hda_nid_t alc268_capsrc_nids[2] = {
+	0x23, 0x24
+};
+
 static struct snd_kcontrol_new alc268_base_mixer[] = {
 	/* output mixer control */
 	HDA_CODEC_VOLUME("Front Playback Volume", 0x2, 0x0, HDA_OUTPUT),
@@ -10140,6 +10148,7 @@ static struct alc_config_preset alc268_p
 		.dac_nids = alc268_dac_nids,
                 .num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt),
                 .adc_nids = alc268_adc_nids_alt,
+		.capsrc_nids = alc268_capsrc_nids,
 		.hp_nid = 0x03,
 		.dig_out_nid = ALC268_DIGOUT_NID,
 		.num_channel_mode = ARRAY_SIZE(alc268_modes),
@@ -10154,6 +10163,7 @@ static struct alc_config_preset alc268_p
 		.dac_nids = alc268_dac_nids,
 		.num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt),
 		.adc_nids = alc268_adc_nids_alt,
+		.capsrc_nids = alc268_capsrc_nids,
 		.hp_nid = 0x03,
 		.num_channel_mode = ARRAY_SIZE(alc268_modes),
 		.channel_mode = alc268_modes,
@@ -10169,6 +10179,7 @@ static struct alc_config_preset alc268_p
 		.dac_nids = alc268_dac_nids,
 		.num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt),
 		.adc_nids = alc268_adc_nids_alt,
+		.capsrc_nids = alc268_capsrc_nids,
 		.hp_nid = 0x02,
 		.num_channel_mode = ARRAY_SIZE(alc268_modes),
 		.channel_mode = alc268_modes,
@@ -10197,6 +10208,7 @@ static struct alc_config_preset alc268_p
 		.dac_nids = alc268_dac_nids,
 		.num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt),
 		.adc_nids = alc268_adc_nids_alt,
+		.capsrc_nids = alc268_capsrc_nids,
 		.hp_nid = 0x03,
 		.dig_out_nid = ALC268_DIGOUT_NID,
 		.num_channel_mode = ARRAY_SIZE(alc268_modes),
@@ -10214,6 +10226,7 @@ static struct alc_config_preset alc268_p
 		.dac_nids = alc268_dac_nids,
 		.num_adc_nids = ARRAY_SIZE(alc268_adc_nids_alt),
 		.adc_nids = alc268_adc_nids_alt,
+		.capsrc_nids = alc268_capsrc_nids,
 		.hp_nid = 0x03,
 		.dig_out_nid = ALC268_DIGOUT_NID,
 		.num_channel_mode = ARRAY_SIZE(alc268_modes),
@@ -10289,6 +10302,7 @@ static int patch_alc268(struct hda_codec
 				alc268_capture_mixer;
 			spec->num_mixers++;
 		}
+		spec->capsrc_nids = alc268_capsrc_nids;
 	}
 
 	spec->vmaster_nid = 0x02;

  reply	other threads:[~2008-02-11 16:09 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-18  2:09 Notebook Toshiba satellite x200-21g with realtek snd-hda-intel audio device still not supported (codec ALC268) Daniele (Mastro)
2007-12-19 12:47 ` Daniele (Mastro)
2007-12-20  8:46   ` Daniele (Mastro)
2007-12-20 14:03     ` Takashi Iwai
2007-12-21  0:04       ` Daniele (Mastro)
2007-12-21  1:10         ` Tobin Davis
2007-12-21 10:14           ` Daniele (Mastro)
2007-12-24 20:40           ` Daniele (Mastro)
2007-12-26 16:08       ` Daniele (Mastro)
2007-12-26 21:13         ` Tobin Davis
2007-12-28  4:15         ` Tobin Davis
2008-02-11 15:46           ` Daniele (Mastro)
2008-02-11 16:09             ` Takashi Iwai [this message]
2008-02-11 16:31               ` Takashi Iwai
2008-02-11 22:58               ` Daniele (Mastro)
2008-02-12 10:23                 ` Takashi Iwai
2008-02-13  0:32                   ` Daniele (Mastro)
2008-02-15 17:56                     ` Daniele (Mastro)
2008-02-18 18:06                       ` Daniele (Mastro)
2008-02-19 14:02                         ` Takashi Iwai
2008-02-19 14:18                           ` Daniele (Mastro)
2008-02-19 14:34                             ` Takashi Iwai
2008-02-19 15:03                               ` Daniele (Mastro)
2008-02-19 15:10                                 ` Takashi Iwai
2008-02-19 15:55                                   ` Daniele (Mastro)
2008-02-19 16:15                                     ` Takashi Iwai
2008-02-19 17:29                                       ` Daniele (Mastro)
2008-02-19 18:16                                         ` Tobin Davis
2008-02-19 18:52                                           ` Daniele (Mastro)
2008-02-19 19:01                                             ` Tobin Davis
  -- strict thread matches above, loose matches on Subject: below --
2007-12-16 14:35 Daniele (Mastro)
2007-12-17 10:03 ` Takashi Iwai
2007-12-17 14:13   ` Daniele (Mastro)

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=s5htzkfv5jp.wl%tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=alsa-devel@alsa-project.org \
    --cc=daniele.bilug@gmail.com \
    /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