1. 08 2月, 2015 1 次提交
  2. 03 2月, 2015 1 次提交
  3. 15 1月, 2015 1 次提交
  4. 09 1月, 2015 1 次提交
  5. 08 1月, 2015 1 次提交
  6. 22 12月, 2014 1 次提交
    • L
      ASoC: dapm: Simplify fully route card handling · 86d75003
      Lars-Peter Clausen 提交于
      For legacy reasons the ASoC framework assumes that a CODEC INPUT or OUTPUT
      widget that is not explicitly connected to a external source or sink is
      potentially connected to a source or a sink and hence the framework treats
      the widget itself as source (for INPUT) or sink (for OUTPUT). For this
      reason a INPUT or OUTPUT widget that is really not connected needs to be
      explicitly marked as so.
      
      Setting the card's fully_routed flag will cause the ASoC core, once that all
      widgets and routes have been registered, to go through the list of all
      widgets and mark all INPUT and OUTPUT that are not externally connected as
      non-connected. This essentially negates the default behaviour of treating
      INPUT or OUTPUT widgets without external routes as sources or sinks.
      
      This patch takes a different approach while getting the same result. Instead
      of first marking INPUT and OUTPUT widgets as sinks/sources and then later
      marking them as non-connected, just never mark them as a sink or a source if
      the fully_routed flag is set on a card.
      
      This requires a lot less code and also results in a slightly faster card
      initialization since there is no need to iterate over all widgets and check
      whether the INPUT and OUTPUT widgets are connected or not.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      86d75003
  7. 19 12月, 2014 1 次提交
  8. 05 12月, 2014 1 次提交
  9. 26 11月, 2014 1 次提交
  10. 25 11月, 2014 1 次提交
  11. 19 11月, 2014 1 次提交
  12. 18 11月, 2014 5 次提交
  13. 11 11月, 2014 1 次提交
  14. 09 11月, 2014 1 次提交
  15. 04 11月, 2014 2 次提交
  16. 03 11月, 2014 2 次提交
  17. 30 10月, 2014 1 次提交
    • L
      ASoC: Fix snd_soc_find_dai() matching component by name · 1ffae361
      Lars-Peter Clausen 提交于
      Commit 14621c7e ("ASoC: Consolidate CPU and CODEC DAI lookup")
      consolidated the lookup of CPU DAIs and CODEC DAIs into a single function.
      When matching a component by name for CODEC DAIs the code previous to the
      patch compared the name in the DAI link table with component->name. For CPU
      DAIs the code compared to dev_name(component->dev). The newly introduced
      function ended up using the later as well.
      
      For most components dev_name(component->dev) and component->name are the
      same. The main notable exception are I2C devices where the driver name and
      the device name are concatenated to form the component name. By using
      dev_name(component->dev) instead of component->name the patch broke the
      matching of I2C CODECs by name.
      
      This patch restores the original behavior by using component->name instead
      of dev_name(component->dev). This will be safe even for CPU DAIs since for
      CPU DAIs both are the same.
      
      Fixes: 14621c7e ("ASoC: Consolidate CPU and CODEC DAI lookup")
      Reported-by: NDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      1ffae361
  18. 29 10月, 2014 1 次提交
  19. 28 10月, 2014 2 次提交
  20. 22 10月, 2014 1 次提交
  21. 20 10月, 2014 1 次提交
  22. 07 10月, 2014 1 次提交
  23. 30 9月, 2014 1 次提交
  24. 28 9月, 2014 1 次提交
  25. 24 9月, 2014 1 次提交
  26. 23 9月, 2014 2 次提交
  27. 06 9月, 2014 1 次提交
  28. 05 9月, 2014 4 次提交
    • L
      ASoC: Always run default suspend/resume code · a8093297
      Lars-Peter Clausen 提交于
      We do a bit more than just running the callbacks during suspend and resume
      these days (e.g. call regcache_mark_dirty() during suspend). But this is
      only when suspend and resume callbacks are specified for the driver,
      otherwise nothing is done. This means that drivers which don't want to do
      anything special during suspend and resume, but still want the standard
      operations to run, need to provide empty suspend and resume callback
      functions (rather than no callbacks). This patch updates the suspend and
      resume code to always run standard sequence regardless of whether suspend
      and resume handlers are provided.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      a8093297
    • L
      ASoC: Add support for automatically going to BIAS_OFF on suspend · 86dbf2ac
      Lars-Peter Clausen 提交于
      There is a substantial amount of drivers that in go to SND_SOC_BIAS_OFF on
      suspend and go back to SND_SOC_BIAS_SUSPEND on resume (Often this is even
      the only thing done in the suspend and resume handlers). This patch
      introduces a new suspend_bias_off flag, which when set by a driver will let
      the ASoC core automatically put the device's DAPM context at the
      SND_SOC_BIAS_OFF level during suspend. Once the device is resumed the DAPM
      context will go back to SND_SOC_BIAS_STANDBY (if the context is idle,
      otherwise to SND_SOC_BIAS_ON).
      
      This will allow us to remove a fair bit of duplicated code from the drivers.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      86dbf2ac
    • L
      ASoC: Shutdown DAPM contexts when removing a card · 1c325f77
      Lars-Peter Clausen 提交于
      Currently when a ASoC sound card is unregistered we leave the individual
      components in their current state, just call the remove() callback and leave
      it to the drivers to do the proper shutdown/cleanup.
      
      This patch introduces a call to snd_soc_dapm_shutdown() when removing the
      card.  This will make sure that all DAPM widgets are properly powered down
      and all DAPM contexts are put at the SND_SOC_BIAS_OFF level. This will
      ensure that all components are properly powered down when the card is
      removed.
      
      Since a lot of drivers manually go to SND_SOC_BIAS_OFF in their remove
      callback this will also allow us to remove a bit of duplicated code.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      1c325f77
    • L
      ASoC: Set card->instantiated to false when removing the card · 01e0df66
      Lars-Peter Clausen 提交于
      Set card->instantiated to false when the card is removed to make sure that
      operations that expect the card to be fully instantiated do not run anymore
      during card removal.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@kernel.org>
      01e0df66
  29. 29 8月, 2014 1 次提交