1. 11 2月, 2014 1 次提交
  2. 07 2月, 2014 1 次提交
    • T
      ALSA: hda - Fix inconsistent Mic mute LED · 7fe30711
      Takashi Iwai 提交于
      The current code for controlling mic mute LED in patch_sigmatel.c
      blindly assumes that there is a single capture switch.  But, there can
      be multiple multiple ones, and each of them flips the state, ended up
      in an inconsistent state.
      
      For fixing this problem, this patch adds kcontrol to be passed to the
      hook function so that the callee can check which switch is being
      accessed.  In stac_capture_led_hook(), the state is checked as a
      bitmask, and turns on the LED when all capture switches are off.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7fe30711
  3. 13 1月, 2014 1 次提交
  4. 11 12月, 2013 1 次提交
    • T
      ALSA: hda - Add static DAC/pin mapping for AD1986A codec · 3690739b
      Takashi Iwai 提交于
      AD1986A codec is a pretty old codec and has really many hidden
      restrictions.  One of such is that each DAC is dedicated to certain
      pin although there are possible connections.  Currently, the generic
      parser tries to assign individual DACs as much as possible, and this
      lead to two bad situations: connections where the sound actually
      doesn't work, and connections conflicting other channels.
      
      We may fix this by trying to find the best connections more harder,
      but as of now, it's easier to give some hints for paired DAC/pin
      connections and honor them if available, since such a hint is needed
      only for specific codecs (right now only AD1986A, and there will be
      unlikely any others in future).
      
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=64971
      Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=66621
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      3690739b
  5. 05 11月, 2013 1 次提交
  6. 29 7月, 2013 1 次提交
    • T
      ALSA: hda - Fix invalid multi-io creation on VAIO-Z laptops · da96fb5b
      Takashi Iwai 提交于
      VAIO-Z laptops need to use the specific DAC for the speaker output
      by some unknown reason although the codec itself supports the flexible
      connection.  So we implemented a workaround by a new flag,
      no_primary_hp, for assigning the speaker pin first.
      
      This worked until 3.8 kernel, but it got broken because the driver
      learned for a better multi-io pin mapping, and not it can assign two
      mic pins for multi-io.  Since the multi-io requires to be the primary
      output, the hp and two mic pins are assigned in prior to the speaker
      in the end.
      
      Although the machine has two mic pins, one of them is used as a noise-
      canceling headphone, thus it's no real retaskable mic jack.  Thus, at
      best, we can disable the multi-io assignment and make the parser
      behavior back to the state before the multi-io.
      
      This patch adds again a new flag, no_multi_io, to indicate that the
      device has no multi-io capability, and set it in the fixup for
      VAIO-Z.  The no_multi_io flag itself can be used generically, added
      via a helper line, too.
      Reported-by: NTormen <my.nl.abos@gmail.com>
      Reported-by: NAdam Williamson <awilliam@redhat.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      da96fb5b
  7. 25 6月, 2013 1 次提交
    • T
      ALSA: hda - Add auto_mute_via_amp flag to generic parser · 7eebffd3
      Takashi Iwai 提交于
      Add a new flag, auto_mute_via_amp, to determine the behavior of the
      headphone / line-out auto-mute.  When this flag is set, the generic
      driver mutes the speaker and line outputs via the amp mute of each
      pin, instead of changing the pin control values.
      
      This is introduced for devices that don't work expectedly with the pin
      control values; for example, some devices are known to keep enabling
      the speaker outputs no matter which pin control values are set on the
      speaker pins.
      
      The driver doesn't check actually whether the pins have the output amp
      caps, but assumes that the proper mixer (mute) controls are created on
      all these pins.  If not the case, you can't use this flag for your
      device.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7eebffd3
  8. 03 6月, 2013 1 次提交
  9. 22 3月, 2013 1 次提交
  10. 18 3月, 2013 1 次提交
  11. 08 3月, 2013 3 次提交
    • T
      ALSA: hda - Avoid automatic pin-ctl update for hp/mic when jack ctl exists · 8ba955ce
      Takashi Iwai 提交于
      When the headphone mic jack enum control is created (via explicitly
      specification by user), it doesn't make much sense to change the I/O
      direction dynamically per capture source change, since the I/O
      direction is rather controlled over the enum ctl.
      
      This also reduces the implicit dependency between the capture source
      and the hp mic jack enum ctls, which might confuse a program accessing
      the whole control elements at once like alsactl.
      
      In addition, this patch introduces update_hp_automute_hook() function
      to call the proper hook function.  It's just to remove the open codes
      in multiple places in hda_generic.c.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      8ba955ce
    • T
      ALSA: hda - Consolidate add_in_jack_modes and add_out_jack_modes hints · f811c3cf
      Takashi Iwai 提交于
      There is no big merit to distinguish these two hints.  Instead, just
      have a single flag, add_jack_modes, for creating the jack mode enum
      ctls for both I/O directions.
      
      The hint string parser code is left and translated as add_jack_modes
      just for keeping compatibility.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f811c3cf
    • T
      ALSA: hda - Add the generic Headphone Mic feature · 967303da
      Takashi Iwai 提交于
      This patch improves the generic parser code to allow to set up the
      headphone jack as a mic input.  User can enable this feature by giving
      hp_mic hint string.
      
      The former shared hp/mic feature for the single built-in mic is still
      retained.  This detection can be disabled now via hp_mic_detect hint
      string, too.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      967303da
  12. 07 2月, 2013 2 次提交
  13. 25 1月, 2013 1 次提交
  14. 24 1月, 2013 1 次提交
  15. 22 1月, 2013 1 次提交
  16. 21 1月, 2013 1 次提交
    • T
      ALSA: hda - Fix conflicts between Loopback Mixing and Independent HP · a1e908ed
      Takashi Iwai 提交于
      This patch eventually fixes two issues:
      - Handle the case where the primary output is a headphone and can have
        independent HP mode;
        so far we checked only the case where the headphone is the secondary
        output.
      
      - Fix the conflict of HP independent mode and aamix mode;
        when switched to aamix mode, the DAC might be also switched to
        another widget shared with other outputs.  Then even if we disable
        the DAC for the original output, it doesn't change -- because the
        active route is from another (shared) DAC to HP pin through aamix.
        So, in such a case, we have to prohibit the switch to aamix for HP
        routes.
      
      This fixes issues appearing on VT codecs.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      a1e908ed
  17. 18 1月, 2013 4 次提交
  18. 17 1月, 2013 7 次提交
  19. 16 1月, 2013 1 次提交
  20. 14 1月, 2013 1 次提交
  21. 12 1月, 2013 8 次提交