[alsa-devel] [PATCH] Sony Vaio with stac9872
Takashi Iwai
tiwai at suse.de
Tue Feb 28 08:29:35 CET 2012
At Tue, 28 Feb 2012 07:26:25 +0300,
107 at mail.ru wrote:
>
> 2012/2/27 Takashi Iwai <tiwai at suse.de>:
> > At Fri, 24 Feb 2012 16:41:43 +0400,
> > 107 wrote:
> >>
> >> Hello, I have no sound on my Sony Vaio SZ4XRN laptop with newest kernels.
> >> Sound: hda-intel, sigmatel - STAC9872
> >>
> >> To solve this issue I make this patch for sound/pci/hda/patch_sigmatel.c:
> >>
> >> --- patch_sigmatel.c.bak 2012-02-23 21:01:28.577515317 +0400
> >> +++ patch_sigmatel.c 2012-02-23 21:53:21.035605216 +0400
> >> @@ -6357,7 +6357,16 @@
> >> */
> >>
> >> static const struct hda_verb stac9872_core_init[] = {
> >> - {0x15, AC_VERB_SET_CONNECT_SEL, 0x1}, /* mic-sel: 0a,0d,14,02 */
> >> + {0x0a, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_HP }, /* HP <- 0x2 */
> >> + {0x0f, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_OUT }, /* Speaker <- 0x5 */
> >> + {0x0d, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, /* Mic? (<- 0x2) */
> >> + {0x0e, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_IN }, /* CD */
> >> + {0x14, AC_VERB_SET_PIN_WIDGET_CONTROL, PIN_VREF80 }, /* Mic? */
> >> + {0x15, AC_VERB_SET_CONNECT_SEL, 0x2 /*0x1*/ }, /* mic-sel: 0a,0d,14,02 */
> >> + {0x02, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE}, /* HP */
> >> + {0x05, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_MUTE}, /* Speaker */
> >> + {0x09, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_MUTE(0)}, /* capture sw/vol -> 0x8 */
> >> + {0x07, AC_VERB_SET_AMP_GAIN_MUTE, AMP_IN_UNMUTE(0)}, /* CD-in -> 0x6 */
> >> {0x15, AC_VERB_SET_AMP_GAIN_MUTE, AMP_OUT_UNMUTE}, /* Mic-in -> 0x9 */
> >> {}
> >> };
> >>
> >>
> >> Constants got from old kernel (2.6.22).
> >> With this patch sound works fine. Thank you.
> >
> > Most of verbs above must be superfluous, but some of them might be
> > needed in your case. Could you give alsa-info.sh outputs (run with
> > --no-upload option) on both working and non-working cases?
> >
> >
> > thanks,
> >
> > Takashi
> >
>
> Yes of course, here is my alsa-info-nosound.txt on default kernel and
> alsa-info-work.txt with patch (see attach).
Thanks. Could you check whether the one-liner below fixes your
problem?
Takashi
---
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 8c346ac..5988dbd 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -4638,7 +4638,7 @@ static void stac92xx_hp_detect(struct hda_codec *codec)
unsigned int val = AC_PINCTL_OUT_EN | AC_PINCTL_HP_EN;
if (no_hp_sensing(spec, i))
continue;
- if (presence)
+ if (1 /*presence*/)
stac92xx_set_pinctl(codec, cfg->hp_pins[i], val);
#if 0 /* FIXME */
/* Resetting the pinctl like below may lead to (a sort of) regressions
More information about the Alsa-devel
mailing list