1. 22 6月, 2014 2 次提交
  2. 02 6月, 2014 1 次提交
  3. 27 5月, 2014 2 次提交
  4. 26 5月, 2014 2 次提交
    • J
      ASoC: jack: Add support for GPIO descriptor defined jack pins · f025d3b9
      Jarkko Nikula 提交于
      Allow jack GPIO pins be defined also using GPIO descriptor-based interface
      in addition to legacy GPIO numbers. This is done by adding two new fields to
      struct snd_soc_jack_gpio: idx and gpiod_dev.
      
      Legacy GPIO numbers are used only when GPIO consumer device gpiod_dev is
      NULL and otherwise idx is the descriptor index within the GPIO consumer
      device.
      
      New function snd_soc_jack_add_gpiods() is added for typical cases where all
      GPIO descriptor jack pins belong to same GPIO consumer device. For other
      cases the caller must set the gpiod_dev in struct snd_soc_jack_gpio before
      calling snd_soc_jack_add_gpios().
      Signed-off-by: NJarkko Nikula <jarkko.nikula@linux.intel.com>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      f025d3b9
    • J
      ASoC: jack: Basic GPIO descriptor conversion · 50dfb69d
      Jarkko Nikula 提交于
      This patch does basic GPIO descriptor conversion to soc-jack. Even the GPIOs
      are still passed and requested using legacy GPIO numbers the driver
      internals are converted to use GPIO descriptor API.
      
      Motivation for this is to prepare soc-jack so that it will allow registering
      jack GPIO pins using both GPIO descriptors and legacy GPIO numbers.
      Signed-off-by: NJarkko Nikula <jarkko.nikula@linux.intel.com>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      50dfb69d
  5. 07 5月, 2014 3 次提交
  6. 03 5月, 2014 1 次提交
  7. 02 5月, 2014 1 次提交
  8. 23 4月, 2014 1 次提交
  9. 22 4月, 2014 2 次提交
    • L
      ASoC: Move standard kcontrol helpers to the component level · 907fe36a
      Lars-Peter Clausen 提交于
      After moving the IO layer inside ASoC to the component level we can now easily
      move the standard control helpers also to the component level. This allows to
      reuse the same standard helper control implementations for other components.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      907fe36a
    • L
      ASoC: Move IO abstraction to the component level · e2c330b9
      Lars-Peter Clausen 提交于
      We currently have two very similar IO abstractions in ASoC, one for CODECs, the
      other for platforms. Moving this to the component level will allow us to unify
      those two. It will also enable us to move the standard kcontrol helpers as well
      as DAPM support to the component level.
      
      The new component level abstraction layer is primarily build around regmap.
      There is a per component pointer for the regmap instance for the underlying
      device. There are four new function snd_soc_component_read(),
      snd_soc_component_write(), snd_soc_component_update_bits() and
      snd_soc_component_update_bits_async(). They have the same signature as their
      regmap counter-part and will internally forward the call one-to-one to regmap.
      If the component it not using regmap it will fallback to using the custom IO
      callbacks. This is done to be able to support drivers that haven't been
      converted to regmap yet, but it is expected that this will eventually be removed
      in the future once all component drivers have been converted to regmap.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      e2c330b9
  10. 21 4月, 2014 1 次提交
  11. 19 4月, 2014 1 次提交
  12. 16 4月, 2014 1 次提交
  13. 15 4月, 2014 8 次提交
  14. 19 3月, 2014 1 次提交
  15. 11 3月, 2014 1 次提交
  16. 10 3月, 2014 1 次提交
  17. 06 3月, 2014 5 次提交
  18. 04 3月, 2014 1 次提交
  19. 01 3月, 2014 3 次提交
    • L
      ASoC: Add macros for defining virtual enums · b948837a
      Lars-Peter Clausen 提交于
      With the upcoming consolidation of normal MUXs and virtual MUXs we need to be
      able to distinguish between enums with and without a backing register at the
      enum level. Use the same approach as used for virtual mixer controls by setting
      the reg field of the enum to SND_SOC_NOPM for enums without a backing register.
      This patch adds a set of helper macros that can be used to define such enums.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      b948837a
    • L
      ASoC: Consolidate enum and value enum controls · 29ae2fa5
      Lars-Peter Clausen 提交于
      The implementations for enum and value enum controls are almost identical. The
      only difference is that the value enum uses an additional look-up table to map
      the control value to the register value, while the enum control uses a direct
      mapping. Enums and value enums can easily be distinguished at runtime, for value
      enums the values field of the snd_soc_enum struct contains the look-up table,
      while for enums it is NULL. This patch adds two new small helper functions
      called snd_soc_enum_item_to_val() and snd_soc_enum_val_to_item() which map
      between register value and control item. If the items field of the snd_soc_enum
      struct is NULL the function will do a direct mapping otherwise they'll use the
      look-up table to do the mapping. Using these small helper functions it is
      possible to use the same kcontrol handlers for both enums and value enums. The
      functions are added a inline functions in soc.h so they can also be used by the
      DAPM code to accomplish similar consolidation.
      Signed-off-by: NLars-Peter Clausen <lars@metafoo.de>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      29ae2fa5
    • L
      8303d769
  20. 24 2月, 2014 1 次提交
  21. 23 2月, 2014 1 次提交
    • X
      ASoC: core: add TDM slot parsing from DT supports · 89c67857
      Xiubo Li 提交于
      For some CPU/CODEC DAI devices the TDM slot infomation maybe needed. This
      patch adds the slot parsing from DT supports.
      
      TDM slot properties:
          dai-tdm-slot-num : Number of slots in use.
          dai-tdm-slot-width :  Width in bits for each slot.
      
      For instance:
          dai-tdm-slot-num = <2>;
          dai-tdm-slot-width = <8>;
      
      And for each spcified driver, there could be one .of_xlate_tdm_slot_mask()
      to specify a explicit mapping of the channels and the slots. If it's absent
      the default snd_soc_of_xlate_tdm_slot_mask() will be used to generating the
      tx and rx masks.
      
      For snd_soc_of_xlate_tdm_slot_mask(), the tx and rx masks will use a 1 bit
      for an active slot as default, and the default active bits are at the LSB of
      the masks.
      Signed-off-by: NXiubo Li <Li.Xiubo@freescale.com>
      Signed-off-by: NMark Brown <broonie@linaro.org>
      89c67857