1. 30 9月, 2014 5 次提交
  2. 23 9月, 2014 4 次提交
  3. 22 9月, 2014 3 次提交
  4. 17 9月, 2014 1 次提交
    • R
      ALSA: hda - Replace strnicmp with strncasecmp · 8bb1ffdf
      Rasmus Villemoes 提交于
      The kernel used to contain two functions for length-delimited,
      case-insensitive string comparison, strnicmp with correct semantics
      and a slightly buggy strncasecmp. The latter is the POSIX name, so
      strnicmp was renamed to strncasecmp, and strnicmp made into a wrapper
      for the new strncasecmp to avoid breaking existing users.
      
      To allow the compat wrapper strnicmp to be removed at some point in
      the future, and to avoid the extra indirection cost, do
      s/strnicmp/strncasecmp/g.
      Signed-off-by: NRasmus Villemoes <linux@rasmusvillemoes.dk>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      8bb1ffdf
  5. 16 9月, 2014 4 次提交
    • T
      ALSA: hda - Use standard hda_jack infrastructure for CA0132 driver · f8fb1170
      Takashi Iwai 提交于
      For its headphone, mic and DSP responses, we can use the standard
      hda_jack infrastructure in CA0132 driver, too.  The only point to
      handle carefully is the delayed headphone jack handling.  It tries to
      react after a certain delay.  Here we use the existing block_report
      flag in hda_jack_tbl (that was implemented for HDMI).
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      f8fb1170
    • T
      ALSA: hda - Remove superfluous hooks from VIA driver · 7c3008c4
      Takashi Iwai 提交于
      Like the previous fix for STAC/IDT codecs, the automute hooks in VIA
      driver can be also removed by enabling the power control callback for
      all pins.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7c3008c4
    • T
      ALSA: hda - Remove superfluous callbacks from STAC/IDT codecs · aa699c49
      Takashi Iwai 提交于
      Now we can register multiple callbacks to each jack, most of hooks
      used in STAC/IDT codecs can be removed by enabling the powermap update
      callback for all relevant pins.  Along with this, the call of
      stac_init_power_map() can be moved back to stac_parse_auto_config()
      and the own build_controls callback can be removed, too.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      aa699c49
    • T
      ALSA: hda - Allow multiple callbacks for jack · 1a4f69d5
      Takashi Iwai 提交于
      So far, hda_jack infrastructure allows only one callback per jack, and
      this makes things slightly complicated when a driver wants to assign
      multiple tasks to a jack, e.g. the standard auto-mute with a power
      up/down sequence.  This can be simplified if the hda_jack accepts
      multiple callbacks.
      
      This patch is such an extension: the callback-specific part (the
      function and private_data) is split to another struct from
      hda_jack_tbl, and multiple such objects can be assigned to a single
      hda_jack_tbl entry.
      
      The new struct hda_jack_callback is passed to each callback function
      now, thus the patch became bigger than expected.  But these changes
      are mostly trivial.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      1a4f69d5
  6. 15 9月, 2014 7 次提交
  7. 11 9月, 2014 4 次提交
    • T
      ALSA: hda - Make snd_hda_jack_tbl_new() static · 81965f1f
      Takashi Iwai 提交于
      It's called only in hda_jack.c, so make it local.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      81965f1f
    • T
      ALSA: hda - Get rid of action field from struct hda_jack_tbl · 62f949bf
      Takashi Iwai 提交于
      The action value assigned to each hda_jack_tbl entry is mostly
      superfluous.  The actually used values are either the widget NID or a
      value specific to the callback.
      
      The former case can be simply replaced by a reference to widget NID
      itself.  The only place doing the latter is STAC/IDT codec driver for
      the powermap handling.  But, the code doesn't need to check the action
      field at all -- the function jack_update_power() is called either with
      a specific pin or with NULL.  So the check of jack->action can be
      removed completely there, too.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      62f949bf
    • T
      Merge branch 'for-linus' into for-next · 998052b7
      Takashi Iwai 提交于
      Merging for-linus branch for syncing the latest STAC/IDT codec
      changes to be affected by the upcoming hda-jack rewrites.
      998052b7
    • T
      ALSA: hda - Fix invalid pin powermap without jack detection · 7a9744cb
      Takashi Iwai 提交于
      When a driver is set up without the jack detection explicitly (either
      by passing a model option or via a specific fixup), the pin powermap
      of IDT/STAC codecs is set up wrongly, resulting in the silence
      output.  It's because of a logic failure in stac_init_power_map().
      It tries to avoid creating a callback for the pins that have other
      auto-hp and auto-mic callbacks, but the check is done in a wrong way
      at a wrong time.  The stac_init_power_map() should be called after
      creating other jack detection ctls, and the jack callback should be
      created only for jack-detectable widgets.
      
      This patch fixes the check in stac_init_power_map() and its callee
      at the right place, after snd_hda_gen_build_controls().
      Reported-by: NAdam Richter <adam_richter2004@yahoo.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7a9744cb
  8. 09 9月, 2014 1 次提交
  9. 08 9月, 2014 8 次提交
  10. 03 9月, 2014 3 次提交
    • T
      Merge tag 'asoc-v3.17-rc3' of... · 05244d16
      Takashi Iwai 提交于
      Merge tag 'asoc-v3.17-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
      
      ASoC: Fixes for v3.17
      
      A few more driver specific fixes on top of the currently pending fixes
      (which are already in your tree but not Linus').
      05244d16
    • T
      ALSA: hda - Add TLV_DB_SCALE_MUTE bit for relevant controls · d89c6c0c
      Takashi Iwai 提交于
      The DACs on Sigmatel/IDT codecs do mute at the lowest volume level,
      and in the earlier drivers, we passed TLV_DB_SCALE_MUTE bit for each
      volume control element like Speaker and Headphone as well as Master.
      Along with the translation to the generic parser, however, the TLV bit
      was lost for the slave controls (e.g. Speaker) but set only to
      Master.  In theory this should have sufficed, but apps, particularly
      PA, do care the slave volume bits, so we seem to see a regression in
      the volume controls.
      
      This patch adds a flag to hda_gen_spec to specify the DAC mute
      feature, and adds the TLV bit properly for all relevant volume
      controls.  Also, the TLV bit for vmaster is set in hda_generic.c, so
      that we can get rid of all tricks from the codec driver side.
      
      As the similar hack is applied to Conexant 5051 stuff, we can get rid
      of it as well.
      
      BugLink: https://bugs.launchpad.net/bugs/1357928Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      d89c6c0c
    • T
      ALSA: pcm: Uninline snd_pcm_stream_lock() and _unlock() · 7af142f7
      Takashi Iwai 提交于
      The previous commit for the non-atomic PCM ops added more codes to
      snd_pcm_stream_lock() and its variants.  Since they are inlined
      functions, it resulted in a significant code size bloat.  For reducing
      the size bloat, this patch changes the inline functions to the normal
      function calls.  The export of rwlock and rwsem are removed as well,
      since they are referred only in pcm_native.c now.
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      7af142f7