21 Aug, 2012

1 commit


20 Aug, 2012

5 commits

  • This is a series of fixes for CA0132, especially the missing SPDIF I/O
    and the mixer build errors.

    Takashi Iwai
     
  • It's possible that these amps are settable somehow, e g through
    secret codec verbs, but for now, don't create the controls (as
    they won't be working anyway, and cause errors in amixer).

    Cc: stable@kernel.org
    BugLink: https://bugs.launchpad.net/bugs/1038651
    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     
  • Convert a nonnegative error return code to a negative one, as returned
    elsewhere in the function.

    A simplified version of the semantic match that finds this problem is as
    follows: (http://coccinelle.lip6.fr/)

    //
    (
    if@p1 (\(ret < 0\|ret != 0\))
    { ... return ret; }
    |
    ret@p1 = 0
    )
    ... when != ret = e1
    when != &ret
    *if(...)
    {
    ... when != ret = e2
    when forall
    return ret;
    }

    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Takashi Iwai

    Julia Lawall
     
  • Initialize rc before returning on failure, as done elsewhere in the
    function.

    A simplified version of the semantic match that finds this problem is as
    follows: (http://coccinelle.lip6.fr/)

    //
    (
    if@p1 (\(ret < 0\|ret != 0\))
    { ... return ret; }
    |
    ret@p1 = 0
    )
    ... when != ret = e1
    when != &ret
    *if(...)
    {
    ... when != ret = e2
    when forall
    return ret;
    }

    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Takashi Iwai

    Julia Lawall
     
  • Initialize err before returning on failure, as done elsewhere in the
    function.

    A simplified version of the semantic match that finds this problem is as
    follows: (http://coccinelle.lip6.fr/)

    //
    (
    if@p1 (\(ret < 0\|ret != 0\))
    { ... return ret; }
    |
    ret@p1 = 0
    )
    ... when != ret = e1
    when != &ret
    *if(...)
    {
    ... when != ret = e2
    when forall
    return ret;
    }

    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Takashi Iwai

    Julia Lawall
     

16 Aug, 2012

1 commit


14 Aug, 2012

2 commits


13 Aug, 2012

1 commit


10 Aug, 2012

4 commits


09 Aug, 2012

1 commit


08 Aug, 2012

6 commits


07 Aug, 2012

3 commits


06 Aug, 2012

2 commits


03 Aug, 2012

1 commit

  • When period=1, the driver tries to allocate a bit bigger buffer than
    requested by the user due to the irq latency tolerance. This may lead
    to accesses over the actually allocated pages.

    This patch adds a check of the page index and assigns the silent page
    when it's over the given buffer size.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

02 Aug, 2012

1 commit


31 Jul, 2012

2 commits

  • The IDT codecs initializes the GPIO setup for mute LEDs via
    snd_hda_sync_vmaster_hook(). This works in most cases except for the
    very first call, which is called before PCM and control creations.
    Thus before Master switch is set manually via alsactl, the mute LED
    may show the wrong state, depending on the polarity.

    Now it's fixed by calling the LED-status update function manually when
    no vmaster is set yet.

    Cc: [v3.4+]
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • The commit a3e199732b made the LED working again on HP Mini 210 but
    with a wrong polarity. This patch fixes the polarity for this
    machine, and also introduce a new model string "hp-inv-led".

    Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=772923

    Cc: [v3.3+]
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

29 Jul, 2012

1 commit

  • On recent kernels, Realtek codec parser tries to optimize the routing
    aggressively and take the headphone output as primary at first. This
    caused a regression on VAIO Z with ALC889, the silent output from the
    speaker.

    The problem seems that the speaker pin must be connected to the first
    DAC (0x02) on this machine by some reason although the codec itself
    advertises the flexible routing with any DACs.

    This patch adds a fix-up for choosing the speaker pin as the primary
    so that the right DAC is assigned on this device.

    Reported-and-tested-by: Adam Williamson
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

28 Jul, 2012

1 commit


27 Jul, 2012

1 commit


26 Jul, 2012

1 commit

  • BIOS on HP Mini 210 doesn't provide the proper "HP_Mute_LED" DMI
    string, thus the driver doesn't initialize the GPIO, too. In the
    earlier kernel, the driver falls back to GPIO1, but since 3.3 we've
    stopped this due to other wrongly advertised machines.

    For fixing this particular case, add a new model type to specify the
    default polarity explicitly so that the fallback to GPIO1 is handled.

    Bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=772923

    Cc: [v3.3+]
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

25 Jul, 2012

1 commit

  • We've got a bug report about the silent output from the headphone on a
    mobo with VT2021, and spotted out that this was because of the wrong
    D3 state on the DAC for the headphone output. The bug is triggered by
    the incomplete check for this DAC in set_widgets_power_state_vt1718S().
    It checks only the connectivity of the primary output (0x27) but
    doesn't consider the path from the headphone pin (0x28).

    Now this patch fixes the problem by checking both pins for DAC 0x0b.

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

20 Jul, 2012

2 commits

  • Also add a model/fixup string "lenovo-dock", so that other Thinkpad
    users will be able to test this fixup easily, to see if it enables
    dock I/O for them as well.

    Cc: stable@kernel.org
    BugLink: https://bugs.launchpad.net/bugs/1026953
    Tested-by: John McCarron
    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     
  • Turn on the pin widget's PIN_OUT bit from playback prepare. The pin is
    enabled in open, but is disabled in hdmi_init_pin which is called during
    system resume. This causes a system suspend/resume during playback to
    mute HDMI/DP. Enabling the pin in prepare instead of open allows calling
    snd_pcm_prepare after a system resume to restore audio.

    Signed-off-by: Dylan Reid
    Cc:
    Signed-off-by: Takashi Iwai

    Dylan Reid
     

19 Jul, 2012

2 commits


18 Jul, 2012

1 commit