1. 08 6月, 2009 2 次提交
  2. 22 5月, 2009 1 次提交
  3. 18 5月, 2009 2 次提交
    • M
      ASoC: Integrate bias management with DAPM power management · 452c5eaa
      Mark Brown 提交于
      Rather than managing the bias level of the system based on if there is
      an active audio stream manage it based on there being an active DAPM
      widget. This simplifies the code a little, moving the power handling
      into one place, and improves audio performance for bypass paths when no
      playbacks or captures are active.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      452c5eaa
    • M
      ASoC: Split DAPM power checks from sequencing of power changes · 6d3ddc81
      Mark Brown 提交于
      DAPM has always applied any changes to the power state of widgets as soon
      as it has determined that they are required. Instead of doing this store
      all the changes that are required on lists of widgets to power up and
      down, then iterate over those lists and apply the changes. This changes
      the sequence in which changes are implemented, doing all power downs
      before power ups and always using the up/down sequences (previously they
      were only used when changes were due to DAC/ADC power events). The error
      handling is also changed so that we continue attempting to power widgets
      if some changes fail.
      
      The main benefit of this is to allow future changes to do optimisations
      over the whole power sequence and to reduce the number of walks of the
      widget graph required to check the power status of widgets.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      6d3ddc81
  4. 25 4月, 2009 1 次提交
  5. 08 4月, 2009 1 次提交
    • M
      ASoC: Provide core support for symmetric sample rates · 06f409d7
      Mark Brown 提交于
      Many devices require symmetric configurations of capture and playback
      data formats, often due to shared clocking but sometimes also due to
      other shared playback and record configuration in the device. Start
      providing core support for this by allowing the DAIs or the machine
      to specify that the sample rates used should be kept symmetric.
      
      A flag symmetric_rates is provided in the snd_soc_dai and
      snd_soc_dai_link structures. If this is set in either of the DAIs or in
      the machine then a constraint will be applied when a stream is already
      open preventing any changes in sample rate.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      06f409d7
  6. 04 3月, 2009 1 次提交
    • L
      ASoC: Add GPIO support for jack reporting interface · ec67624d
      Lopez Cruz, Misael 提交于
      Add GPIO support to jack reporting framework in ASoC using gpiolib calls.
      The gpio support exports two new functions: snd_soc_jack_add_gpios and
      snd_soc_jack_free_gpios.
      
      Client drivers using gpio feature must pass an array of jack_gpio pins
      belonging to a specific jack to the snd_soc_jack_add_gpios function. The
      framework will request the gpios, set the data direction and request irq.
      The framework will update power status of related jack_pins when an event on
      the gpio pins comes according to the reporting bits defined for each gpio.
      
      All gpio resources allocated when adding jack_gpio pins can be released
      using snd_soc_jack_free_gpios function.
      Signed-off-by: NMisael Lopez Cruz <x0052729@ti.com>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      ec67624d
  7. 27 1月, 2009 1 次提交
  8. 09 1月, 2009 2 次提交
    • I
      ASoC: cleanup duplicated code. · 3e8e1952
      Ian Molton 提交于
      Many codec drivers were implementing cookie-cutter copies of the function
      that adds kcontrols to the codec.
      
      This patch moves this code to a common function snd_soc_add_controls() in
      soc-core.c and updates all drivers using copies of this function to use the
      new common version.
      
      [Edited to raise priority of error log message and document parameters.
       -- broonie]
      Signed-off-by: NIan Molton <ian@mnementh.co.uk>
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      3e8e1952
    • M
      ASoC: Add jack reporting interface · 8a2cd618
      Mark Brown 提交于
      This patch adds a jack reporting interface to ASoC.  This wraps the ALSA
      core jack detection functionality and provides integration with DAPM to
      automatically update the power state of pins based on the jack state.
      
      Since embedded platforms can have multiple detecton methods used for a
      single jack (eg, separate microphone and headphone detection) the report
      function allows specification of which bits are being updated on a given
      report.
      
      The expected usage is that machine drivers will create jack objects and
      then configure jack detection methods to update that jack.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      8a2cd618
  9. 08 1月, 2009 1 次提交
  10. 06 1月, 2009 1 次提交
  11. 10 12月, 2008 1 次提交
  12. 09 12月, 2008 2 次提交
    • M
      ASoC: Add platform registration API · 12a48a8c
      Mark Brown 提交于
      ASoC v2 allows platform drivers to instantiate independantly of the
      overall ASoC card. This API allows drivers to notify the core when
      they are registered.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      12a48a8c
    • M
      ASoC: Add card registration API · c5af3a2e
      Mark Brown 提交于
      ASoC v2 allows cards, codecs and platforms to instantiate separately,
      with the overall ASoC device only being instantiated once all the
      required components have registered. As part of backporting Liam's work
      introduce an initial version of the card registration functions. At
      present these do nothing active and are internal only, they will be
      exposed to machine drivers after further backporting.  Adding this now
      allows the datastructures used for dynamic card instantiation to be
      built up gradually.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      c5af3a2e
  13. 04 12月, 2008 3 次提交
  14. 03 12月, 2008 1 次提交
  15. 02 12月, 2008 2 次提交
  16. 25 11月, 2008 1 次提交
    • M
      ASoC: Remove DAI type information · 3ba9e10a
      Mark Brown 提交于
      DAI type information is only ever used within ASoC in order to special
      case AC97 and for diagnostic purposes. Since modern CPUs and codecs
      support multi function DAIs which can be configured for several modes
      it is more trouble than it's worth to maintain anything other than a
      flag identifying AC97 DAIs so remove the type field and replace it with
      an ac97_control flag.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      3ba9e10a
  17. 21 11月, 2008 2 次提交
    • M
      ASoC: Move DAI structure definitions into new soc-dai.h · a47cbe72
      Mark Brown 提交于
      ASoC v2 factors most of the contents of soc.h out into separate headers,
      including soc-dai.h for the DAI. Factor the existing DAI API out into
      this file in order to prepare for backporting of the ASoC v2 DAI API.
      Also backport some of Liam's improvements to the documentation.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      a47cbe72
    • M
      ASoC: Rename snd_soc_card to snd_soc_machine · 87506549
      Mark Brown 提交于
      One of the issues with the ASoC v1 API which has been addressed in the
      ASoC v2 work that Liam Girdwood has done is that the ALSA card provided
      by ASoC is distributed around the ASoC structures. For example, machine
      wide data such as the struct snd_card are maintained as part of the
      CODEC data structure, preventing the use of multiple codecs. This has
      been addressed by refactoring the data structures so that all the data
      for the ALSA card is contained in a single structure snd_soc_card which
      replaces the existing snd_soc_machine and snd_soc_device.
      
      Begin the process of backporting this by renaming struct snd_soc_machine
      to struct snd_soc_card, better reflecting its function and bringing it
      closer to standard ALSA terminology.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      87506549
  18. 19 11月, 2008 1 次提交
  19. 06 11月, 2008 1 次提交
  20. 30 10月, 2008 2 次提交
  21. 30 7月, 2008 4 次提交
  22. 10 7月, 2008 2 次提交
  23. 16 6月, 2008 1 次提交
  24. 13 6月, 2008 2 次提交
  25. 29 5月, 2008 1 次提交
  26. 19 5月, 2008 1 次提交
    • M
      [ALSA] ASoC: Clarify API for bias configuration · 0be9898a
      Mark Brown 提交于
      Currently the ASoC core configures the bias levels in the system using
      a callback on codecs and machines called 'dapm_event', passing it PCI
      style power levels as SNDRV_CTL_POWER_ constants. This is more obscure
      than it needs to be and has caused confusion to driver authors,
      especially given that DAPM is also performing power management.
      
      Address this by renaming the callback function to 'set_bias_level' and
      using constants explicitly representing the off, standby, pre-on and on
      states which DAPM transitions through.
      
      Also unexport the API for setting bias level: there are currently no
      in-tree users of this API other than the core itself and it is likely
      that the core would need to be extended to cater for any users.
      Signed-off-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Cc: Jarkko Nikula <jarkko.nikula@nokia.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by: NJaroslav Kysela <perex@perex.cz>
      0be9898a