1. 04 Jan, 2019 2 commits
    • Hans de Goede's avatar
      ASoC: es8316: Add DAC mono mix switch mixer control · 24b53f17
      Hans de Goede authored
      Export the DAC functionality to mix left + right together and then output
      the same (mixed) signal on both outputs.
      
      Various (x86) tablets with an ES8316 codec use a single speaker
      connected between the headhpone LOUT and ROUT pins, expecting the output
      to be in a mono differential mode. Presumably this is done to use the
      power of both the left and right outputs to allow the speaker to be
      louder.
      
      The ES8316 codec does not have a differential output mode, but we can
      emulate this by making both channels output the same through the mono mix
      switch, combined with setting the Playback Polarity control to "R Invert",
      which applias a 180 degrees phase inversion to the right channel.
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      24b53f17
    • Hans de Goede's avatar
      ASoC: es8316: Add jack-detect support · 82225766
      Hans de Goede authored
      Adding jack-detect support may seem weird for a codec with only
      a single output, but it is necessary. The ES8316 appnote showing
      the intended usage uses a jack-receptacle which physically disconnects
      the speakers from the output when a jack is plugged in.
      
      But all 3 devices using the es8316 which I have (2 Cherry Trail
      devices and one Bay Trail CR device), use an analog mux to disconnect
      the speakers, driven by a GPIO. In order to enable/disable the speakers
      at the right time, we need jack-detect.
      
      The same goes for the microphone where we must correctly set the mux
      for the single ADC to either the internal or the headset microphone.
      
      All devices I have support the es8316's builtin jack-detect functionality.
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      82225766
  2. 03 Jan, 2019 38 commits