lkml.org 
[lkml]   [2009]   [May]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[patch 08/51] ALSA: hda - Fix line-in on Mac Mini Core2 Duo
    2.6.29-stable review patch.  If anyone has any objections, please let us know.

    ------------------

    From: Takashi Iwai <tiwai@suse.de>

    commit 5dd17cb992ef4c1ebb1a2d60cbef4b6967974673 upstream.

    BIOS on Mac Mini Core2 Duo sets both INPUT and OUTPUT pinctl bits to
    the line-in jack, and it confuses the driver as if it's a valid input.
    This patch adds the check of OUTPUT bit so that the driver fixes the
    invalid pin setup.

    Tested-by: Tino Keitel <tino.keitel@gmx.de>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    sound/pci/hda/patch_sigmatel.c | 7 ++++++-
    1 file changed, 6 insertions(+), 1 deletion(-)

    --- a/sound/pci/hda/patch_sigmatel.c
    +++ b/sound/pci/hda/patch_sigmatel.c
    @@ -4007,7 +4007,12 @@ static int stac92xx_init(struct hda_code
    pinctl = snd_hda_codec_read(codec, nid, 0,
    AC_VERB_GET_PIN_WIDGET_CONTROL, 0);
    /* if PINCTL already set then skip */
    - if (!(pinctl & AC_PINCTL_IN_EN)) {
    + /* Also, if both INPUT and OUTPUT are set,
    + * it must be a BIOS bug; need to override, too
    + */
    + if (!(pinctl & AC_PINCTL_IN_EN) ||
    + (pinctl & AC_PINCTL_OUT_EN)) {
    + pinctl &= ~AC_PINCTL_OUT_EN;
    pinctl |= AC_PINCTL_IN_EN;
    stac92xx_auto_set_pinctl(codec, nid,
    pinctl);



    \
     
     \ /
      Last update: 2009-05-15 00:47    [W:4.107 / U:0.668 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site