* Re: 2.6.16-rc6: known regressions
[not found] ` <20060313144244.266d96ef.akpm@osdl.org>
@ 2006-03-14 1:06 ` Adrian Bunk
[not found] ` <20060314010621.GR13973@stusta.de>
1 sibling, 0 replies; 10+ messages in thread
From: Adrian Bunk @ 2006-03-14 1:06 UTC (permalink / raw)
To: Andrew Morton
Cc: linux-kernel, Parag Warudkar, Miguel Blanco, Mauro Tassinari,
perex, alsa-devel
On Mon, Mar 13, 2006 at 02:42:44PM -0800, Andrew Morton wrote:
> Adrian Bunk <bunk@stusta.de> wrote:
> >
> > This email lists some known regressions in 2.6.16-rc6 compared to 2.6.15.
> >
>
> We've also left a trail of wrecked machines behind us from earlier kernels.
>...
> Post-2.6.15:
> From: Parag Warudkar <kernel-stuff@comcast.net>
> Subject: Re: ALSA HDA Intel stoped to work in 2.6.16-*
Is this the interrupt problem from the "ALSA can't cherry-pick"
category?
>...
> XFS-related oopses:
> http://bugzilla.kernel.org/show_bug.cgi?id=6180
This was in my list.
>...
> Post-2.6.14:
> From: "Miguel Blanco" <mblancom@gmail.com>
> Subject: problem mounting a jffs2 filesystem
>
> (We might have fixed this?)
This was fixed with commit e96fb230cc97760e448327c0de612cfba94ca7bf.
>...
> Post-2.6.16-rc1:
> From: "Mauro Tassinari" <mtassinari@cmanet.it>
> Subject: Re: 2.6.16-rc3: more regressions
>
> (Radeon makes Xorg hang)
>...
This was fixed with commit 75c0141ca2fdae7c332d8f17412fbe0939dd005f.
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: Re: 2.6.16-rc6: known regressions
[not found] ` <20060314010621.GR13973@stusta.de>
@ 2006-03-14 13:32 ` Takashi Iwai
0 siblings, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2006-03-14 13:32 UTC (permalink / raw)
To: Adrian Bunk
Cc: Andrew Morton, linux-kernel, Parag Warudkar, Miguel Blanco,
Mauro Tassinari, perex, alsa-devel
At Tue, 14 Mar 2006 02:06:21 +0100,
Adrian Bunk wrote:
>
> On Mon, Mar 13, 2006 at 02:42:44PM -0800, Andrew Morton wrote:
> > Adrian Bunk <bunk@stusta.de> wrote:
> > >
> > > This email lists some known regressions in 2.6.16-rc6 compared to 2.6.15.
> > >
> >
> > We've also left a trail of wrecked machines behind us from earlier kernels.
> >...
> > Post-2.6.15:
> > From: Parag Warudkar <kernel-stuff@comcast.net>
> > Subject: Re: ALSA HDA Intel stoped to work in 2.6.16-*
>
> Is this the interrupt problem from the "ALSA can't cherry-pick"
> category?
This looks like a problem of the latest sigmatel codec code in
general. The author of original code is investigating.
Takashi
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
[not found] ` <20060317143642.GJ3914@stusta.de>
@ 2006-03-17 16:28 ` Takashi Iwai
2006-03-17 20:40 ` Takashi Iwai
0 siblings, 1 reply; 10+ messages in thread
From: Takashi Iwai @ 2006-03-17 16:28 UTC (permalink / raw)
To: Parag Warudkar
Cc: Linus Torvalds, Andrew Morton, Linux Kernel Mailing List,
Adrian Bunk, perex, alsa-devel
At Fri, 17 Mar 2006 15:36:42 +0100,
Adrian Bunk wrote:
>
>
> Subject : snd-intel-hda stopped working on a Dell E1705 Laptop
> References : http://lkml.org/lkml/2006/3/12/16
> Submitter : Parag Warudkar <kernel-stuff@comcast.net>
> Handled-By : Takashi Iwai <tiwai@suse.de>
> Status : Takashi Iwai: This looks like a problem of the latest sigmatel
> codec code in general. The author of original
> code is investigating.
Could you try the patch below?
It's a part of a patch in ALSA bugtrack #1843.
Takashi
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
index 4a6dd97..0ef5503 100644
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
@@ -1935,7 +1935,23 @@ static int is_in_nid_list(hda_nid_t nid,
return 0;
}
-/* parse all pin widgets and store the useful pin nids to cfg */
+/*
+ * Parse all pin widgets and store the useful pin nids to cfg
+ *
+ * The number of line-outs or any primary output is stored in line_outs,
+ * and the corresponding output pins are assigned to line_out_pins[],
+ * in the order of front, rear, CLFE, side, ...
+ *
+ * If more extra outputs (speaker and headphone) are found, the pins are
+ * assisnged to hp_pin and speaker_pin, respectively. If no line-out jack
+ * is detected, one of speaker of HP pins is assigned as the primary
+ * output, i.e. to line_out_pins[0]. So, line_outs is always positive
+ * if any analog output exists.
+ *
+ * The analog input pins are assigned to input_pins array.
+ * The digital input/output pins are assigned to dig_in_pin and dig_out_pin,
+ * respectively.
+ */
int snd_hda_parse_pin_def_config(struct hda_codec *codec, struct auto_pin_cfg *cfg,
hda_nid_t *ignore_nids)
{
@@ -2048,6 +2064,41 @@ int snd_hda_parse_pin_def_config(struct
break;
}
+ /*
+ * debug prints of the parsed results
+ */
+ snd_printd("autoconfig: line_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x)\n",
+ cfg->line_out_pins[0], cfg->line_out_pins[1],
+ cfg->line_out_pins[2], cfg->line_out_pins[3],
+ cfg->line_out_pins[4]);
+ snd_printd(" speaker=0x%x, hp=0x%x, dig_out=0x%x, din_in=0x%x\n",
+ cfg->speaker_pin, cfg->hp_pin, cfg->dig_out_pin,
+ cfg->dig_in_pin);
+ snd_printd(" inputs: mic=0x%x, fmic=0x%x, line=0x%x, fline=0x%x,"
+ " cd=0x%x, aux=0x%x\n",
+ cfg->input_pins[AUTO_PIN_MIC],
+ cfg->input_pins[AUTO_PIN_FRONT_MIC],
+ cfg->input_pins[AUTO_PIN_LINE],
+ cfg->input_pins[AUTO_PIN_FRONT_LINE],
+ cfg->input_pins[AUTO_PIN_CD],
+ cfg->input_pins[AUTO_PIN_AUX]);
+
+ /*
+ * FIX-UP: if no line-outs are detected, try to use speaker or HP pin
+ * as a primary output
+ */
+ if (! cfg->line_outs) {
+ if (cfg->speaker_pin) {
+ cfg->line_outs = 1;
+ cfg->line_out_pins[0] = cfg->speaker_pin;
+ cfg->speaker_pin = 0;
+ } else if (cfg->hp_pin) {
+ cfg->line_outs = 1;
+ cfg->line_out_pins[0] = cfg->hp_pin;
+ cfg->hp_pin = 0;
+ }
+ }
+
return 0;
}
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 35c2823..f9f9e5c 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -691,13 +691,7 @@ static int stac92xx_auto_fill_dac_nids(s
AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
}
- if (cfg->line_outs)
- spec->multiout.num_dacs = cfg->line_outs;
- else if (cfg->hp_pin) {
- spec->multiout.dac_nids[0] = snd_hda_codec_read(codec, cfg->hp_pin, 0,
- AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
- spec->multiout.num_dacs = 1;
- }
+ spec->multiout.num_dacs = cfg->line_outs;
return 0;
}
@@ -804,9 +798,6 @@ static int stac92xx_auto_create_analog_i
for (i = 0; i < AUTO_PIN_LAST; i++) {
int index = -1;
if (cfg->input_pins[i]) {
- /* Enable active pin widget as an input */
- stac92xx_auto_set_pinctl(codec, cfg->input_pins[i], AC_PINCTL_IN_EN);
-
imux->items[imux->num_items].label = auto_pin_cfg_labels[i];
for (j=0; j<spec->num_muxes; j++) {
@@ -855,10 +846,8 @@ static int stac92xx_parse_auto_config(st
if ((err = snd_hda_parse_pin_def_config(codec, &spec->autocfg, NULL)) < 0)
return err;
- if (! spec->autocfg.line_outs && ! spec->autocfg.hp_pin)
+ if (! spec->autocfg.line_outs)
return 0; /* can't find valid pin config */
- stac92xx_auto_init_multi_out(codec);
- stac92xx_auto_init_hp_out(codec);
if ((err = stac92xx_add_dyn_out_pins(codec, &spec->autocfg)) < 0)
return err;
if ((err = stac92xx_auto_fill_dac_nids(codec, &spec->autocfg)) < 0)
@@ -873,14 +862,10 @@ static int stac92xx_parse_auto_config(st
if (spec->multiout.max_channels > 2)
spec->surr_switch = 1;
- if (spec->autocfg.dig_out_pin) {
+ if (spec->autocfg.dig_out_pin)
spec->multiout.dig_out_nid = dig_out;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_out_pin, AC_PINCTL_OUT_EN);
- }
- if (spec->autocfg.dig_in_pin) {
+ if (spec->autocfg.dig_in_pin)
spec->dig_in_nid = dig_in;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_in_pin, AC_PINCTL_IN_EN);
- }
if (spec->kctl_alloc)
spec->mixers[spec->num_mixers++] = spec->kctl_alloc;
@@ -901,14 +886,13 @@ static int stac9200_parse_auto_config(st
if ((err = stac92xx_auto_create_analog_input_ctls(codec, &spec->autocfg)) < 0)
return err;
- if (spec->autocfg.dig_out_pin) {
+ if ((err = stac92xx_auto_create_hp_ctls(codec, &spec->autocfg)) < 0)
+ return err;
+
+ if (spec->autocfg.dig_out_pin)
spec->multiout.dig_out_nid = 0x05;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_out_pin, AC_PINCTL_OUT_EN);
- }
- if (spec->autocfg.dig_in_pin) {
+ if (spec->autocfg.dig_in_pin)
spec->dig_in_nid = 0x04;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_in_pin, AC_PINCTL_IN_EN);
- }
if (spec->kctl_alloc)
spec->mixers[spec->num_mixers++] = spec->kctl_alloc;
@@ -921,9 +905,31 @@ static int stac9200_parse_auto_config(st
static int stac92xx_init(struct hda_codec *codec)
{
struct sigmatel_spec *spec = codec->spec;
+ struct auto_pin_cfg *cfg = &spec->autocfg;
+ int i;
snd_hda_sequence_write(codec, spec->init);
+ /* set up pins */
+ if (spec->multiout.hp_nid) {
+ /* fake event to set up pins */
+ codec->patch_ops.unsol_event(codec, STAC_HP_EVENT << 26);
+ } else {
+ stac92xx_auto_init_multi_out(codec);
+ stac92xx_auto_init_hp_out(codec);
+ }
+ for (i = 0; i < AUTO_PIN_LAST; i++) {
+ if (cfg->input_pins[i])
+ stac92xx_auto_set_pinctl(codec, cfg->input_pins[i],
+ AC_PINCTL_IN_EN);
+ }
+ if (cfg->dig_out_pin)
+ stac92xx_auto_set_pinctl(codec, cfg->dig_out_pin,
+ AC_PINCTL_OUT_EN);
+ if (cfg->dig_in_pin)
+ stac92xx_auto_set_pinctl(codec, cfg->dig_in_pin,
+ AC_PINCTL_IN_EN);
+
return 0;
}
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-17 16:28 ` 2.6.16-rc6: known regressions (v2) Takashi Iwai
@ 2006-03-17 20:40 ` Takashi Iwai
2006-03-18 19:27 ` Parag Warudkar
0 siblings, 1 reply; 10+ messages in thread
From: Takashi Iwai @ 2006-03-17 20:40 UTC (permalink / raw)
To: Parag Warudkar
Cc: Linus Torvalds, Andrew Morton, Linux Kernel Mailing List,
Adrian Bunk, S. Umar, perex, alsa-devel
At Fri, 17 Mar 2006 17:28:38 +0100,
I wrote:
>
> At Fri, 17 Mar 2006 15:36:42 +0100,
> Adrian Bunk wrote:
> >
> >
> > Subject : snd-intel-hda stopped working on a Dell E1705 Laptop
> > References : http://lkml.org/lkml/2006/3/12/16
> > Submitter : Parag Warudkar <kernel-stuff@comcast.net>
> > Handled-By : Takashi Iwai <tiwai@suse.de>
> > Status : Takashi Iwai: This looks like a problem of the latest sigmatel
> > codec code in general. The author of original
> > code is investigating.
>
> Could you try the patch below?
> It's a part of a patch in ALSA bugtrack #1843.
The last patch seems incomplete. Please try the patch below instead.
(This time with a changelog :)
Takashi
[PATCH] Fix the output on laptops with STAC92xx codecs
Fix the output on laptops with STAC92xx codecs, such as Dell.
Also fixes the headphone jack sensing with STAC9200.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
---
diff --git a/sound/pci/hda/hda_codec.c b/sound/pci/hda/hda_codec.c
index 4a6dd97..0ef5503 100644
--- a/sound/pci/hda/hda_codec.c
+++ b/sound/pci/hda/hda_codec.c
@@ -1935,7 +1935,23 @@ static int is_in_nid_list(hda_nid_t nid,
return 0;
}
-/* parse all pin widgets and store the useful pin nids to cfg */
+/*
+ * Parse all pin widgets and store the useful pin nids to cfg
+ *
+ * The number of line-outs or any primary output is stored in line_outs,
+ * and the corresponding output pins are assigned to line_out_pins[],
+ * in the order of front, rear, CLFE, side, ...
+ *
+ * If more extra outputs (speaker and headphone) are found, the pins are
+ * assisnged to hp_pin and speaker_pin, respectively. If no line-out jack
+ * is detected, one of speaker of HP pins is assigned as the primary
+ * output, i.e. to line_out_pins[0]. So, line_outs is always positive
+ * if any analog output exists.
+ *
+ * The analog input pins are assigned to input_pins array.
+ * The digital input/output pins are assigned to dig_in_pin and dig_out_pin,
+ * respectively.
+ */
int snd_hda_parse_pin_def_config(struct hda_codec *codec, struct auto_pin_cfg *cfg,
hda_nid_t *ignore_nids)
{
@@ -2048,6 +2064,41 @@ int snd_hda_parse_pin_def_config(struct
break;
}
+ /*
+ * debug prints of the parsed results
+ */
+ snd_printd("autoconfig: line_outs=%d (0x%x/0x%x/0x%x/0x%x/0x%x)\n",
+ cfg->line_out_pins[0], cfg->line_out_pins[1],
+ cfg->line_out_pins[2], cfg->line_out_pins[3],
+ cfg->line_out_pins[4]);
+ snd_printd(" speaker=0x%x, hp=0x%x, dig_out=0x%x, din_in=0x%x\n",
+ cfg->speaker_pin, cfg->hp_pin, cfg->dig_out_pin,
+ cfg->dig_in_pin);
+ snd_printd(" inputs: mic=0x%x, fmic=0x%x, line=0x%x, fline=0x%x,"
+ " cd=0x%x, aux=0x%x\n",
+ cfg->input_pins[AUTO_PIN_MIC],
+ cfg->input_pins[AUTO_PIN_FRONT_MIC],
+ cfg->input_pins[AUTO_PIN_LINE],
+ cfg->input_pins[AUTO_PIN_FRONT_LINE],
+ cfg->input_pins[AUTO_PIN_CD],
+ cfg->input_pins[AUTO_PIN_AUX]);
+
+ /*
+ * FIX-UP: if no line-outs are detected, try to use speaker or HP pin
+ * as a primary output
+ */
+ if (! cfg->line_outs) {
+ if (cfg->speaker_pin) {
+ cfg->line_outs = 1;
+ cfg->line_out_pins[0] = cfg->speaker_pin;
+ cfg->speaker_pin = 0;
+ } else if (cfg->hp_pin) {
+ cfg->line_outs = 1;
+ cfg->line_out_pins[0] = cfg->hp_pin;
+ cfg->hp_pin = 0;
+ }
+ }
+
return 0;
}
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 35c2823..51ddf95 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -51,6 +51,7 @@ struct sigmatel_spec {
unsigned int line_switch: 1;
unsigned int mic_switch: 1;
unsigned int alt_switch: 1;
+ unsigned int hp_detect: 1;
/* playback */
struct hda_multi_out multiout;
@@ -691,13 +692,7 @@ static int stac92xx_auto_fill_dac_nids(s
AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
}
- if (cfg->line_outs)
- spec->multiout.num_dacs = cfg->line_outs;
- else if (cfg->hp_pin) {
- spec->multiout.dac_nids[0] = snd_hda_codec_read(codec, cfg->hp_pin, 0,
- AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
- spec->multiout.num_dacs = 1;
- }
+ spec->multiout.num_dacs = cfg->line_outs;
return 0;
}
@@ -766,11 +761,13 @@ static int stac92xx_auto_create_hp_ctls(
return 0;
wid_caps = get_wcaps(codec, pin);
- if (wid_caps & AC_WCAP_UNSOL_CAP)
+ if (wid_caps & AC_WCAP_UNSOL_CAP) {
/* Enable unsolicited responses on the HP widget */
snd_hda_codec_write(codec, pin, 0,
AC_VERB_SET_UNSOLICITED_ENABLE,
STAC_UNSOL_ENABLE);
+ spec->hp_detect = 1;
+ }
nid = snd_hda_codec_read(codec, pin, 0, AC_VERB_GET_CONNECT_LIST, 0) & 0xff;
for (i = 0; i < cfg->line_outs; i++) {
@@ -804,9 +801,6 @@ static int stac92xx_auto_create_analog_i
for (i = 0; i < AUTO_PIN_LAST; i++) {
int index = -1;
if (cfg->input_pins[i]) {
- /* Enable active pin widget as an input */
- stac92xx_auto_set_pinctl(codec, cfg->input_pins[i], AC_PINCTL_IN_EN);
-
imux->items[imux->num_items].label = auto_pin_cfg_labels[i];
for (j=0; j<spec->num_muxes; j++) {
@@ -855,10 +849,8 @@ static int stac92xx_parse_auto_config(st
if ((err = snd_hda_parse_pin_def_config(codec, &spec->autocfg, NULL)) < 0)
return err;
- if (! spec->autocfg.line_outs && ! spec->autocfg.hp_pin)
+ if (! spec->autocfg.line_outs)
return 0; /* can't find valid pin config */
- stac92xx_auto_init_multi_out(codec);
- stac92xx_auto_init_hp_out(codec);
if ((err = stac92xx_add_dyn_out_pins(codec, &spec->autocfg)) < 0)
return err;
if ((err = stac92xx_auto_fill_dac_nids(codec, &spec->autocfg)) < 0)
@@ -873,14 +865,10 @@ static int stac92xx_parse_auto_config(st
if (spec->multiout.max_channels > 2)
spec->surr_switch = 1;
- if (spec->autocfg.dig_out_pin) {
+ if (spec->autocfg.dig_out_pin)
spec->multiout.dig_out_nid = dig_out;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_out_pin, AC_PINCTL_OUT_EN);
- }
- if (spec->autocfg.dig_in_pin) {
+ if (spec->autocfg.dig_in_pin)
spec->dig_in_nid = dig_in;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_in_pin, AC_PINCTL_IN_EN);
- }
if (spec->kctl_alloc)
spec->mixers[spec->num_mixers++] = spec->kctl_alloc;
@@ -890,6 +878,29 @@ static int stac92xx_parse_auto_config(st
return 1;
}
+/* add playback controls for HP output */
+static int stac9200_auto_create_hp_ctls(struct hda_codec *codec,
+ struct auto_pin_cfg *cfg)
+{
+ struct sigmatel_spec *spec = codec->spec;
+ hda_nid_t pin = cfg->hp_pin;
+ unsigned int wid_caps;
+
+ if (! pin)
+ return 0;
+
+ wid_caps = get_wcaps(codec, pin);
+ if (wid_caps & AC_WCAP_UNSOL_CAP) {
+ /* Enable unsolicited responses on the HP widget */
+ snd_hda_codec_write(codec, pin, 0,
+ AC_VERB_SET_UNSOLICITED_ENABLE,
+ STAC_UNSOL_ENABLE);
+ spec->hp_detect = 1;
+ }
+
+ return 0;
+}
+
static int stac9200_parse_auto_config(struct hda_codec *codec)
{
struct sigmatel_spec *spec = codec->spec;
@@ -901,14 +912,13 @@ static int stac9200_parse_auto_config(st
if ((err = stac92xx_auto_create_analog_input_ctls(codec, &spec->autocfg)) < 0)
return err;
- if (spec->autocfg.dig_out_pin) {
+ if ((err = stac9200_auto_create_hp_ctls(codec, &spec->autocfg)) < 0)
+ return err;
+
+ if (spec->autocfg.dig_out_pin)
spec->multiout.dig_out_nid = 0x05;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_out_pin, AC_PINCTL_OUT_EN);
- }
- if (spec->autocfg.dig_in_pin) {
+ if (spec->autocfg.dig_in_pin)
spec->dig_in_nid = 0x04;
- stac92xx_auto_set_pinctl(codec, spec->autocfg.dig_in_pin, AC_PINCTL_IN_EN);
- }
if (spec->kctl_alloc)
spec->mixers[spec->num_mixers++] = spec->kctl_alloc;
@@ -921,9 +931,31 @@ static int stac9200_parse_auto_config(st
static int stac92xx_init(struct hda_codec *codec)
{
struct sigmatel_spec *spec = codec->spec;
+ struct auto_pin_cfg *cfg = &spec->autocfg;
+ int i;
snd_hda_sequence_write(codec, spec->init);
+ /* set up pins */
+ if (spec->hp_detect) {
+ /* fake event to set up pins */
+ codec->patch_ops.unsol_event(codec, STAC_HP_EVENT << 26);
+ } else {
+ stac92xx_auto_init_multi_out(codec);
+ stac92xx_auto_init_hp_out(codec);
+ }
+ for (i = 0; i < AUTO_PIN_LAST; i++) {
+ if (cfg->input_pins[i])
+ stac92xx_auto_set_pinctl(codec, cfg->input_pins[i],
+ AC_PINCTL_IN_EN);
+ }
+ if (cfg->dig_out_pin)
+ stac92xx_auto_set_pinctl(codec, cfg->dig_out_pin,
+ AC_PINCTL_OUT_EN);
+ if (cfg->dig_in_pin)
+ stac92xx_auto_set_pinctl(codec, cfg->dig_in_pin,
+ AC_PINCTL_IN_EN);
+
return 0;
}
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-17 20:40 ` Takashi Iwai
@ 2006-03-18 19:27 ` Parag Warudkar
2006-03-18 19:46 ` Parag Warudkar
0 siblings, 1 reply; 10+ messages in thread
From: Parag Warudkar @ 2006-03-18 19:27 UTC (permalink / raw)
To: Takashi Iwai
Cc: Linus Torvalds, Andrew Morton, Linux Kernel Mailing List, S. Umar,
perex, alsa-devel
On Friday 17 March 2006 15:40, Takashi Iwai wrote:
> The last patch seems incomplete. Please try the patch below instead.
> (This time with a changelog :)
>
>
> Takashi
Sound works with this patch but now only through the head phones - no sound
from built-in speakers. Jack sense doesn't seem to work the other way around
- removing head phone doesn't enable speaker output.
Let me know if you need any info.
Thanks!
Parag
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x110944&bid$1720&dat\x121642
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-18 19:27 ` Parag Warudkar
@ 2006-03-18 19:46 ` Parag Warudkar
2006-03-20 10:25 ` Takashi Iwai
0 siblings, 1 reply; 10+ messages in thread
From: Parag Warudkar @ 2006-03-18 19:46 UTC (permalink / raw)
To: Takashi Iwai, Adrian Bunk
Cc: Linus Torvalds, Andrew Morton, Linux Kernel Mailing List, S. Umar,
perex, alsa-devel
On Saturday 18 March 2006 14:27, Parag Warudkar wrote:
> On Friday 17 March 2006 15:40, Takashi Iwai wrote:
> > The last patch seems incomplete. Please try the patch below instead.
> > (This time with a changelog :)
> >
> >
> > Takashi
Additionally I get azx_get_response timeout in dmesg with the new patch.
Sound works ok despite of that though.
Parag
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x110944&bid$1720&dat\x121642
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-18 19:46 ` Parag Warudkar
@ 2006-03-20 10:25 ` Takashi Iwai
2006-03-20 10:47 ` Adrian Bunk
2006-03-20 10:59 ` Takashi Iwai
0 siblings, 2 replies; 10+ messages in thread
From: Takashi Iwai @ 2006-03-20 10:25 UTC (permalink / raw)
To: Parag Warudkar
Cc: Adrian Bunk, Linus Torvalds, Andrew Morton,
Linux Kernel Mailing List, S. Umar, perex, alsa-devel
At Sat, 18 Mar 2006 14:46:22 -0500,
Parag Warudkar wrote:
>
> On Saturday 18 March 2006 14:27, Parag Warudkar wrote:
> > On Friday 17 March 2006 15:40, Takashi Iwai wrote:
> > > The last patch seems incomplete. Please try the patch below instead.
> > > (This time with a changelog :)
> > >
> > >
> > > Takashi
>
> Additionally I get azx_get_response timeout in dmesg with the new patch.
> Sound works ok despite of that though.
That's why jack sensing doesn't work for you. The jack sensing and
auto-muting requies unsolicited events.
It's likely a problem of ACPI or whatever related with irq routing.
Takashi
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x110944&bid$1720&dat\x121642
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-20 10:25 ` Takashi Iwai
@ 2006-03-20 10:47 ` Adrian Bunk
2006-03-20 10:57 ` Takashi Iwai
2006-03-20 10:59 ` Takashi Iwai
1 sibling, 1 reply; 10+ messages in thread
From: Adrian Bunk @ 2006-03-20 10:47 UTC (permalink / raw)
To: Takashi Iwai
Cc: Parag Warudkar, Linus Torvalds, Andrew Morton,
Linux Kernel Mailing List, S. Umar, perex, alsa-devel,
Marcus Hartig
On Mon, Mar 20, 2006 at 11:25:30AM +0100, Takashi Iwai wrote:
> At Sat, 18 Mar 2006 14:46:22 -0500,
> Parag Warudkar wrote:
> >
> > On Saturday 18 March 2006 14:27, Parag Warudkar wrote:
> > > On Friday 17 March 2006 15:40, Takashi Iwai wrote:
> > > > The last patch seems incomplete. Please try the patch below instead.
> > > > (This time with a changelog :)
> > > >
> > > >
> > > > Takashi
> >
> > Additionally I get azx_get_response timeout in dmesg with the new patch.
> > Sound works ok despite of that though.
>
> That's why jack sensing doesn't work for you. The jack sensing and
> auto-muting requies unsolicited events.
>
> It's likely a problem of ACPI or whatever related with irq routing.
Both reporters said it worked in 2.6.15, so if the regression is related
to irq routing it should be visible in the dmesg.
Parag, Marcus, please send an email with both a dmesg of 2.6.15 and a
dmesg of 2.6.16-rc6 (or 2.6.16) attached.
> Takashi
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-20 10:47 ` Adrian Bunk
@ 2006-03-20 10:57 ` Takashi Iwai
0 siblings, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2006-03-20 10:57 UTC (permalink / raw)
To: Adrian Bunk
Cc: Parag Warudkar, Linus Torvalds, Andrew Morton,
Linux Kernel Mailing List, S. Umar, perex, alsa-devel,
Marcus Hartig
At Mon, 20 Mar 2006 11:47:08 +0100,
Adrian Bunk wrote:
>
> On Mon, Mar 20, 2006 at 11:25:30AM +0100, Takashi Iwai wrote:
> > At Sat, 18 Mar 2006 14:46:22 -0500,
> > Parag Warudkar wrote:
> > >
> > > On Saturday 18 March 2006 14:27, Parag Warudkar wrote:
> > > > On Friday 17 March 2006 15:40, Takashi Iwai wrote:
> > > > > The last patch seems incomplete. Please try the patch below instead.
> > > > > (This time with a changelog :)
> > > > >
> > > > >
> > > > > Takashi
> > >
> > > Additionally I get azx_get_response timeout in dmesg with the new patch.
> > > Sound works ok despite of that though.
> >
> > That's why jack sensing doesn't work for you. The jack sensing and
> > auto-muting requies unsolicited events.
> >
> > It's likely a problem of ACPI or whatever related with irq routing.
>
> Both reporters said it worked in 2.6.15, so if the regression is related
> to irq routing it should be visible in the dmesg.
>
> Parag, Marcus, please send an email with both a dmesg of 2.6.15 and a
> dmesg of 2.6.16-rc6 (or 2.6.16) attached.
Maybe it doesn't appear on 2.6.15 since the unsolicated events are not
used in the old stac9200 code.
Takashi
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid\x110944&bid$1720&dat\x121642
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: 2.6.16-rc6: known regressions (v2)
2006-03-20 10:25 ` Takashi Iwai
2006-03-20 10:47 ` Adrian Bunk
@ 2006-03-20 10:59 ` Takashi Iwai
1 sibling, 0 replies; 10+ messages in thread
From: Takashi Iwai @ 2006-03-20 10:59 UTC (permalink / raw)
To: Parag Warudkar
Cc: Adrian Bunk, Linus Torvalds, Andrew Morton,
Linux Kernel Mailing List, S. Umar, perex, alsa-devel
At Mon, 20 Mar 2006 11:25:30 +0100,
I wrote:
>
> At Sat, 18 Mar 2006 14:46:22 -0500,
> Parag Warudkar wrote:
> >
> > On Saturday 18 March 2006 14:27, Parag Warudkar wrote:
> > > On Friday 17 March 2006 15:40, Takashi Iwai wrote:
> > > > The last patch seems incomplete. Please try the patch below instead.
> > > > (This time with a changelog :)
> > > >
> > > >
> > > > Takashi
> >
> > Additionally I get azx_get_response timeout in dmesg with the new patch.
> > Sound works ok despite of that though.
>
> That's why jack sensing doesn't work for you. The jack sensing and
> auto-muting requies unsolicited events.
Also, there seem some models that show multiple speaker pins in the
configuration table, and this isn't supposed in the latest code.
This could be another reason of the remaining regression.
Working on this issue right now.
Takashi
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2006-03-20 10:59 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <Pine.LNX.4.64.0603111551330.18022@g5.osdl.org>
[not found] ` <20060313200544.GG13973@stusta.de>
[not found] ` <20060313144244.266d96ef.akpm@osdl.org>
2006-03-14 1:06 ` 2.6.16-rc6: known regressions Adrian Bunk
[not found] ` <20060314010621.GR13973@stusta.de>
2006-03-14 13:32 ` Takashi Iwai
[not found] ` <20060317143642.GJ3914@stusta.de>
2006-03-17 16:28 ` 2.6.16-rc6: known regressions (v2) Takashi Iwai
2006-03-17 20:40 ` Takashi Iwai
2006-03-18 19:27 ` Parag Warudkar
2006-03-18 19:46 ` Parag Warudkar
2006-03-20 10:25 ` Takashi Iwai
2006-03-20 10:47 ` Adrian Bunk
2006-03-20 10:57 ` Takashi Iwai
2006-03-20 10:59 ` Takashi Iwai
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox