1. 10 6月, 2011 1 次提交
    • L
      ASoC: core - PCM mutex per rtd · b8c0dab9
      Liam Girdwood 提交于
      In preparation for the new ASoC Dynamic PCM support (AKA DSP support).
      
      The new ASoC Dynamic PCM core allows DAIs to be dynamically re-routed
      at runtime between the PCM device end (or Frontend - FE) and the physical DAI
      (Backend - BE) using regular kcontrols (just like a hardware CODEC routes
      audio in the analog domain). The Dynamic PCM core therefore must be
      able to call PCM operations for both the Frontend and Backend(s) DAIs at
      the same time.
      
      Currently we have a global pcm_mutex that is used to serialise
      the ASoC PCM operations. This patch removes the global mutex
      and adds a mutex per RTD allowing the PCM operations to be reentrant and
      allow control of more than one DAI at at time. e.g. a frontend PCM hw_params()
      could configure multiple backend DAI hw_params() with similar or different
      hw parameters at the same time.
      Signed-off-by: NLiam Girdwood <lrg@ti.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      b8c0dab9
  2. 09 6月, 2011 1 次提交
  3. 08 6月, 2011 2 次提交
  4. 06 6月, 2011 1 次提交
  5. 26 5月, 2011 1 次提交
    • S
      ASoC: core: Don't schedule deferred_resume_work twice · 82e14e8b
      Stephen Warren 提交于
      For cards that have two or more DAIs, snd_soc_resume's loop over all
      DAIs ends up calling schedule_work(deferred_resume_work) once per DAI.
      Since this is the same work item each time, the 2nd and subsequent
      calls return 0 (work item already queued), and trigger the dev_err
      message below stating that a work item may have been lost.
      
      Solve this by adjusting the loop to simply calculate whether to run the
      resume work immediately or defer it, and then call schedule work (or not)
      one time based on that.
      
      Note: This has not been tested in mainline, but only in chromeos-2.6.38;
      mainline doesn't support suspend/resume on Tegra, nor does the mainline
      Tegra ASoC driver contain multiple DAIs. It has been compile-checked in
      mainline.
      Signed-off-by: NStephen Warren <swarren@nvidia.com>
      Acked-by: NLiam Girdwood <lrg@ti.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      82e14e8b
  6. 25 5月, 2011 1 次提交
  7. 24 5月, 2011 1 次提交
  8. 22 5月, 2011 1 次提交
  9. 17 5月, 2011 1 次提交
    • S
      ASoC: Silence DEBUG_STRICT_USER_COPY_CHECKS=y warning · 34e268d8
      Stephen Boyd 提交于
      Enabling DEBUG_STRICT_USER_COPY_CHECKS causes the following
      warning:
      
      In file included from arch/x86/include/asm/uaccess.h:573,
                       from include/linux/poll.h:14,
                       from include/sound/pcm.h:29,
                       from include/sound/ac97_codec.h:31,
                       from sound/soc/soc-core.c:34:
      In function 'copy_from_user',
          inlined from 'codec_reg_write_file' at
          sound/soc/soc-core.c:252:
      arch/x86/include/asm/uaccess_64.h:65:
      warning: call to 'copy_from_user_overflow' declared with
      attribute warning: copy_from_user() buffer size is not provably
      correct
      
      presumably due to buf_size being signed causing GCC to fail to
      see that buf_size can't become negative.
      Acked-by: NLiam Girdwood <lrg@ti.com>
      Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      34e268d8
  10. 12 5月, 2011 1 次提交
  11. 08 5月, 2011 1 次提交
  12. 04 5月, 2011 4 次提交
  13. 28 4月, 2011 3 次提交
  14. 20 4月, 2011 1 次提交
  15. 14 4月, 2011 1 次提交
  16. 12 4月, 2011 1 次提交
  17. 08 4月, 2011 1 次提交
  18. 07 4月, 2011 2 次提交
  19. 06 4月, 2011 1 次提交
  20. 03 4月, 2011 1 次提交
  21. 27 3月, 2011 3 次提交
  22. 18 3月, 2011 1 次提交
  23. 09 3月, 2011 5 次提交
  24. 07 3月, 2011 1 次提交
  25. 03 3月, 2011 3 次提交