12 Jan, 2012

1 commit


11 Jan, 2012

1 commit

  • When multiple headphone or other detectable output pins are present,
    the power-map has to be updated after resume appropriately, but the
    current driver doesn't check all pins but only the first pin (since
    it's enough to check it for the mute-behavior). This resulted in the
    silent output from the secondary outputs after PM resume.

    This patch fixes the problem by checking all pins at (re-)init time.

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

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

10 Jan, 2012

4 commits

  • Currently the driver checks only the out_mix_path[] for the primary
    output route for judging whether to create the loopback-mixing control
    or not. But, there are cases where aamix-routing is available only on
    headphone or speaker paths but not on the primary output path. So, the
    driver ignores such cases inappropriately.

    This patch fixes the check of the loopback-mixing control by testing
    all mix-routing paths.

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • When an invalid NID is given, get_wcaps() returns zero as the error,
    but get_wcaps_type() takes it as the normal value and returns a bogus
    AC_WID_AUD_OUT value. This confuses the parser.

    With this patch, get_wcaps_type() returns -1 when value 0 is given,
    i.e. an invalid NID is passed to get_wcaps().

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

    Cc:
    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • These laptops can work well with the auto-parser and their BIOS setups,
    and in addition, the auto-parser fixes the problem with S3/S4 where
    the unsol event handling is killed after resume due to fallback to the
    single-cmd mode.

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

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

    Takashi Iwai
     
  • This early 2011 model just need to have headphones on GPI02
    instead of GPI01, and use BIOS pincfgs.
    It is detected by codec SSID.
    The iMac12,1 model is known to work the same way, although maybe
    not with the same codec SSID.

    Signed-off-by: Jérémy Lal
    Signed-off-by: Takashi Iwai

    Jérémy Lal
     

08 Jan, 2012

6 commits


01 Jan, 2012

1 commit


20 Dec, 2011

3 commits


19 Dec, 2011

1 commit

  • module_param(bool) used to counter-intuitively take an int. In
    fddd5201 (mid-2009) we allowed bool or int/unsigned int using a messy
    trick.

    It's time to remove the int/unsigned int option. For this version
    it'll simply give a warning, but it'll break next kernel version.

    Signed-off-by: Rusty Russell
    Signed-off-by: Takashi Iwai

    Rusty Russell
     

15 Dec, 2011

1 commit


14 Dec, 2011

3 commits


13 Dec, 2011

2 commits


12 Dec, 2011

2 commits

  • With the auto-parser we can choose the dac nid for vmaster from
    the DACs we already know, instead of hard-coding it. This is more
    future-proof and was actually wrong on one machine.

    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     
  • For the Asus 1101HA, reporting position by reading the DMA position
    buffer map seems unstable and often wrong. The reporter says that
    position_fix=LPIB works much better (although not 100%, but this is
    probably due to other issues).

    The controller chip is an Intel Poulsbo 8086:811b (rev 07) controller,
    and complete alsa-info is available here:
    https://launchpadlibrarian.net/86691768/alsa-info.txt.1TNwyE5Ea7

    Cc: stable@kernel.org (3.0+)
    BugLink: http://bugs.launchpad.net/bugs/825709
    Tested-by: Stefano Lodi
    Signed-off-by: David Henningsson
    Signed-off-by: Takashi Iwai

    David Henningsson
     

08 Dec, 2011

4 commits

  • Conflicts:
    sound/pci/hda/patch_realtek.c

    Takashi Iwai
     
  • When there are the same or more number of HP pins are available, HP pins
    are used as the primary outputs instead of the speaker pins. But, in
    some cases (especially with ALC663 & co), some DACs are available only
    with a later pin and it's assigned to a speaker, and since the driver
    parses the pins from the lower NID, such a DAC was skipped eventually
    without assignments. This resulted in a regression, the missing speaker
    volume control in the new parser.

    As a workaround for this, now the driver retries the pin->DAC mapping
    again after restoring the speaker-pins as primary. This is still an ad
    hoc fix, but it works so far for most of Realtek codecs.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • On systems with two speaker pins, the secondary speaker pin is mostly
    assigned to a bass speaker instead of a surround. Thus it makes more
    sense to rename the control properly.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • The multiple headphone or speaker pins are usually provided to
    output the same stream unlike line-out jacks (which are supposed
    to be multi-channel surrounds). Thus giving a mixer name like
    "Headphone Surround" is rather confusing. Instead, when multiple
    headphone volumes are available, use index with the same "Headphone"
    name.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

06 Dec, 2011

3 commits


02 Dec, 2011

2 commits


01 Dec, 2011

2 commits


29 Nov, 2011

2 commits

  • This quirk sould be reverted. It has the following probems:

    1) The quirk was intended to "ASUS MV2-MX SE" motherboards only, but the
    ID used matches a much broader range, potentially all boards containing a
    VIA chipset model in the family of vendor VIA 0x1106 and audio device ID
    0x3288, which encompasses VIA-VT82xx, VIA-VT1xx and VIA-VT20xx chipsets.

    2) VIA chipsets rely on azx_via_get_position() to handle correctly dma
    transfers during capture. Using POS_FIX_LPIB instead of POS_FIX_VIACOMBO
    leads to partially corrupted input buffers during capture. The effects
    of this bug are not immediately visible, it took strong DSP expertise,
    some expensive signal generator and a spectrum analyzer to identify it
    and verify correct behaviour using original default.

    3) It's almost certain that the quirk did not fix the real problem,
    if there was one. Refer to original submission:
    http://mailman.alsa-project.org/pipermail/alsa-devel/2010-February/025109.html

    Signed-of-by: Marc Vertes
    Signed-off-by: Takashi Iwai

    Marc Vertes
     
  • Some HP laptops use a pin VREF for controlling the mute LED, and such a
    pin shouldn't be powered off.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

28 Nov, 2011

2 commits

  • VT1708 has no support for unsolicited events per jack-plug, the driver
    implements the workq for polling the jack-detection. The mixer element
    "Jack Detect" was supposed to control this behavior on/off, but this
    doesn't work properly as is now. The workq is always started and the
    HP automute is always enabled.

    This patch fixes the jack-detect control behavior by triggering / stopping
    the work appropriately at the state change. Also the work checks the
    internal state to continue scheduling or not.

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

    Takashi Iwai
     
  • The CS420X_IMAC27 was copied from the line before but CS420X_APPLE
    was clearly intented.

    Signed-off-by: Dan Carpenter
    Signed-off-by: Takashi Iwai

    Dan Carpenter