1. 10 5月, 2010 2 次提交
    • M
      ASoC: Support leaving paths enabled over system suspend · 1547aba9
      Mark Brown 提交于
      Some devices can usefully run audio while the Linux system is suspended.
      One of the most common examples is smartphone systems, which are normally
      designed to allow audio to be run between the baseband and the CODEC
      without passing through the CPU and so can suspend the CPU when on a
      voice call for additional power savings.
      
      Support such systems by providing an API snd_soc_dapm_ignore_suspend().
      This can be used to mark DAPM endpoints as not being sensitive to
      system suspend. When the system is being suspended paths between
      endpoints which are marked as ignoring suspend will be kept active.
      Both source and sink must be marked, and there must already be an
      active path between the two endpoints prior to suspend.
      
      When paths are active over suspend the bias management will hold the
      device bias in the ON state. This is used to avoid suspending the
      CODEC while it is still in use.
      Tested-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com>
      Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      1547aba9
    • M
      ASoC: Refactor DAPM suspend handling · 9949788b
      Mark Brown 提交于
      Instead of using stream events to handle power down during suspend
      integrate the handling with the normal widget path checking by
      replacing all cases where we report a connected endpoint in a path
      with a function snd_soc_dapm_suspend_check() which looks at the ALSA
      power state for the card and reports false if we are in a D3 state.
      
      Since the core moves us into D3 prior to initating the suspend all
      power checks during suspend will cause the widgets to be powered
      down. In order to ensure that widgets are powered up on resume set
      the card to D2 at the start of resume handling (ALSA API calls
      require D0 so we are still protected against userspace access).
      Tested-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com>
      Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      9949788b
  2. 07 5月, 2010 1 次提交
  3. 30 3月, 2010 1 次提交
  4. 20 3月, 2010 1 次提交
  5. 12 3月, 2010 1 次提交
  6. 04 3月, 2010 4 次提交
  7. 26 2月, 2010 1 次提交
  8. 22 2月, 2010 3 次提交
  9. 17 2月, 2010 3 次提交
  10. 28 1月, 2010 1 次提交
  11. 31 12月, 2009 1 次提交
  12. 16 12月, 2009 1 次提交
  13. 05 12月, 2009 1 次提交
  14. 13 11月, 2009 1 次提交
    • B
      ASoC: move setting ac97 platformdata earlier than ac97 read/write · f7732053
      Barry Song 提交于
      While probing, AC97 codec drivers and soc-core generically execute the
      following sequence:
      snd_soc_new_ac97_codec -> snd_soc_new_pcms -> reset ac-link/read AC97 ID
      to detect ->...  -> set platform_data to ac97 by soc-core
      
      commit 474828a4 adds platform_data to
      snd_ac97 instance. But ac97 platform data hasn't given to snd_ac97
      before actual ac97 operations. Then while ac97_read access platform_data
      of snd_ac97 for detecting, NULL pointer oops will fire. That means old
      platform_data patch doesn't work in real-life cases.
      
      This patch moves the operation of setting ac97 platform_data earlier
      than ac97 reading/writing operations. Then it makes platform_data of
      AC97 become practically useful.
      Signed-off-by: NBarry Song <21cnbao@gmail.com>
      Acked-by: NLiam Girdwood <lrg@slimlogic.co.uk>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      f7732053
  15. 04 11月, 2009 2 次提交
  16. 31 10月, 2009 2 次提交
  17. 19 10月, 2009 1 次提交
  18. 15 10月, 2009 1 次提交
  19. 02 10月, 2009 1 次提交
  20. 01 10月, 2009 1 次提交
    • P
      ASoC: add support for multiple cards/codecs in debugfs · 88439ac7
      Peter Ujfalusi 提交于
      In order to support multiple codecs on the same system in the debugfs
      the directory hierarchy need to be changed by adding directory per codec
      under the asoc direcorty:
      
      debugfs/asoc/{dev_name(socdev->dev)}-{codec->name}/codec_reg
                                                        /dapm_pop_time
                                                        /dapm/{widgets}
      
      With the original implementation only the debugfs files are only
      created for the first codec, other codecs loaded later would fail to
      create the debugfs files (since they are already exist).
      Furthermore in this situation any of the codecs has been removed, would
      cause the debugfs entries to disappear, regardless if the codec, which
      created them are still loaded (the one which loaded first).
      Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@nokia.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      88439ac7
  21. 13 9月, 2009 1 次提交
  22. 06 9月, 2009 1 次提交
  23. 22 8月, 2009 1 次提交
    • M
      ASoC: Add DAPM widget power decision debugfs files · 79fb9387
      Mark Brown 提交于
      Currently when built with DEBUG DAPM will dump information about
      the power state decisions it is taking for each widget to dmesg.
      This isn't an ideal way of getting the information - it requires
      a kernel build to turn it on and off and for large hub CODECs the
      volume of information is so large as to be illegible. When the
      output goes to the console it can also cause a noticable impact
      on performance simply to print it out.
      
      Improve the situation by adding a dapm directory to our debugfs
      tree containing a file per widget with the same information in
      it. This still requires a decision to build with debugfs support
      but is easier to navigate and much less intrusive.
      
      In addition to the previously displayed information active streams
      are also shown in these files.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      79fb9387
  24. 06 8月, 2009 1 次提交
  25. 01 8月, 2009 1 次提交
  26. 23 7月, 2009 1 次提交
  27. 05 7月, 2009 1 次提交
  28. 01 7月, 2009 1 次提交
  29. 24 6月, 2009 1 次提交
  30. 14 6月, 2009 1 次提交