1. 29 Jun, 2020 3 commits
    • Hans de Goede's avatar
      ASoC: rt5670: Correct RT5670_LDO_SEL_MASK · 5cacc6f5
      Hans de Goede authored
      The RT5670_PWR_ANLG1 register has 3 bits to select the LDO voltage,
      so the correct mask is 0x7 not 0x3.
      
      Because of this wrong mask we were programming the ldo bits
      to a setting of binary 001 (0x05 & 0x03) instead of binary 101
      when moving to SND_SOC_BIAS_PREPARE.
      
      According to the datasheet 001 is a reserved value, so no idea
      what it did, since the driver was working fine before I guess we
      got lucky and it does something which is ok.
      
      Fixes: 5e8351de ("ASoC: add RT5670 CODEC driver")
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Cc: stable@vger.kernel.org
      Link: https://lore.kernel.org/r/20200628155231.71089-3-hdegoede@redhat.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      5cacc6f5
    • Hans de Goede's avatar
      ASoC: Intel: cht_bsw_rt5672: Change bus format to I2S 2 channel · 0ceb8a36
      Hans de Goede authored
      The default mode for SSP configuration is TDM 4 slot and so far we were
      using this for the bus format on cht-bsw-rt56732 boards.
      
      One board, the Lenovo Miix 2 10 uses not 1 but 2 codecs connected to SSP2.
      The second piggy-backed, output-only codec is inside the keyboard-dock
      (which has extra speakers). Unlike the main rt5672 codec, we cannot
      configure this codec, it is hard coded to use 2 channel 24 bit I2S.
      
      Using 4 channel TDM leads to the dock speakers codec (which listens in on
      the data send from the SSP to the rt5672 codec) emiting horribly distorted
      sound.
      
      Since we only support 2 channels anyways, there is no need for TDM on any
      cht-bsw-rt5672 designs. So we can simply use I2S 2ch everywhere.
      
      This commit fixes the Lenovo Miix 2 10 dock speakers issue by changing
      the bus format set in cht_codec_fixup() to I2S 2 channel.
      
      This change has been tested on the following devices with a rt5672 codec:
      
      Lenovo Miix 2 10
      Lenovo Thinkpad 8
      Lenovo Thinkpad 10 (gen 1)
      Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Cc: stable@vger.kernel.org
      BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1786723
      Link: https://lore.kernel.org/r/20200628155231.71089-2-hdegoede@redhat.comSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      0ceb8a36
    • Geert Uytterhoeven's avatar
      ASoC: qcom: Drop HAS_DMA dependency to fix link failure · b6aa06de
      Geert Uytterhoeven authored
      When building on allyesconfig kernel for a NO_DMA=y platform (e.g.
      Sun-3), CONFIG_SND_SOC_QCOM_COMMON=y, but CONFIG_SND_SOC_QDSP6_AFE=n,
      leading to a link failure:
      
          sound/soc/qcom/common.o: In function `qcom_snd_parse_of':
          common.c:(.text+0x2e2): undefined reference to `q6afe_is_rx_port'
      
      While SND_SOC_QDSP6 depends on HAS_DMA, SND_SOC_MSM8996 and SND_SOC_SDM845
      don't, so the following warning is seen:
      
          WARNING: unmet direct dependencies detected for SND_SOC_QDSP6
            Depends on [n]: SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && QCOM_APR [=y] && HAS_DMA [=n]
            Selected by [y]:
            - SND_SOC_MSM8996 [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && QCOM_APR [=y]
            - SND_SOC_SDM845 [=y] && SOUND [=y] && !UML && SND [=y] && SND_SOC [=y] && QCOM_APR [=y] && CROS_EC [=y] && I2C [=y] && SOUNDWIRE [=y]
      
      Until recently, this warning was harmless (from a compile-testing
      point-of-view), but the new user of q6afe_is_rx_port() turned this into
      a hard failure.
      
      As the QDSP6 driver itself builds fine if NO_DMA=y, and it depends on
      QCOM_APR (which in turns depends on ARCH_QCOM || COMPILE_TEST), it is
      safe to increase compile testing coverage.  Hence fix the link failure
      by dropping the HAS_DMA dependency of SND_SOC_QDSP6.
      
      Fixes: a2120089 ("ASoC: qcom: common: set correct directions for dailinks")
      Fixes: 6b1687bf ("ASoC: qcom: add sdm845 sound card support")
      Fixes: a6f933f6 ("ASoC: qcom: apq8096: Add db820c machine driver")
      Signed-off-by: default avatarGeert Uytterhoeven <geert@linux-m68k.org>
      Link: https://lore.kernel.org/r/20200629122443.21736-1-geert@linux-m68k.orgSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      b6aa06de
  2. 25 Jun, 2020 1 commit
  3. 24 Jun, 2020 1 commit
  4. 23 Jun, 2020 2 commits
  5. 18 Jun, 2020 2 commits
  6. 17 Jun, 2020 5 commits
  7. 16 Jun, 2020 1 commit
  8. 15 Jun, 2020 9 commits
  9. 12 Jun, 2020 4 commits
  10. 11 Jun, 2020 2 commits
  11. 09 Jun, 2020 8 commits
  12. 05 Jun, 2020 2 commits