1. 10 Sep, 2010 10 commits
  2. 08 Sep, 2010 4 commits
  3. 07 Sep, 2010 1 commit
  4. 06 Sep, 2010 6 commits
  5. 03 Sep, 2010 1 commit
  6. 02 Sep, 2010 2 commits
  7. 01 Sep, 2010 5 commits
  8. 31 Aug, 2010 8 commits
  9. 28 Aug, 2010 3 commits
    • Jarkko Nikula's avatar
      ASoC: tlv320aic3x: Sanitize output controls · 098b1718
      Jarkko Nikula authored
      Currently output controls are not uniform. Some routes are adjusted by
      mono controls that don't match to associated mixer switch, many routes are
      not covered at all and stereo controls have following variants:
      
      - L-to-L & R-to-R
      - R-to-L & R-to-R
      - L-to-L & R-to-L
      
      This patch attempts to fix these issues. First, for the convenience, only
      direct L-to-L, R-to-R and [L | R]-to-Mono routes are controlled by the
      stereo controls. This logic is also used with the output pin mute controls
      so all of them except mono output are controlled by stereo switches.
      
      Then rest of the swapped L-to-R and R-to-L routes are controlled by the
      mono controls that map to mixer switches with a same name. Mixers can then
      associate these switches and volumes together.
      Signed-off-by: default avatarJarkko Nikula <jhnikula@gmail.com>
      Acked-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
      098b1718
    • Jarkko Nikula's avatar
      ASoC: tlv320aic3x: Reimplement output mixers · c3b79e05
      Jarkko Nikula authored
      It turned out that the output mixers and their routes were misdefined: They
      are not mixing output pins to internal signals but opposite. This has worked
      for direct left-to-left and right-to-right routes since for those there are
      complete routes. For swapped left-to-right and right-to-left routes this is
      not working since there are no routes defined between them.
      
      Another consequence is that those misdefined mixers are incorrectly routed
      to several output pins leading unnecessary pin powerings even if there is no
      route active to them.
      
      Fix these by reimplementing the output mixers and routes as they are in
      hardware. For completeness add also a few missing links between internal
      signals and outputs.
      Signed-off-by: default avatarJarkko Nikula <jhnikula@gmail.com>
      Acked-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
      c3b79e05
    • Jarkko Nikula's avatar
      ASoC: tlv320aic3x: Sort output pin control registers in header file · b2eaac20
      Jarkko Nikula authored
      Each output pin has 7 consecutive control registers in tlv320aic3x register
      map. First 6 of them control the signal mixing and one is for output level
      and power control.
      
      Sort these registers as they are sorted clearly in hardware, it makes also
      definitions more readable and easier to pinpoint missing register
      definitions.
      Signed-off-by: default avatarJarkko Nikula <jhnikula@gmail.com>
      Acked-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
      Signed-off-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
      b2eaac20