1. 01 Jun, 2018 4 commits
    • Guenter Roeck's avatar
      ASoC: topology: Improve backwards compatibility with v4 topology files · ac9391da
      Guenter Roeck authored
      Commit dc31e741 ("ASoC: topology: ABI - Add the types for BE
      DAI") introduced sound topology files version 5. Initially, this
      change made the topology code incompatible with v4 topology files.
      Backwards compatibility with v4 configuration files was
      subsequently added with commit 288b8da7 ("ASoC: topology:
      Support topology file of ABI v4").
      
      Unfortunately, backwards compatibility was never fully implemented.
      
      First, the manifest size in (Skylake) v4 configuration files is set
      to 0, which causes manifest_new_ver() to bail out with error messages
      similar to the following.
      
      snd_soc_skl 0000:00:1f.3: ASoC: invalid manifest size
      snd_soc_skl 0000:00:1f.3: tplg component load failed-22
      snd_soc_skl 0000:00:1f.3: Failed to init topology!
      snd_soc_skl 0000:00:1f.3: ASoC: failed to probe component -22
      skl_n88l25_m98357a skl_n88l25_m98357a: ASoC: failed to instantiate card -22
      skl_n88l25_m98357a: probe of skl_n88l25_m98357a failed with error -22
      
      After this problem is fixed, the following error message is seen instead.
      
      snd_soc_skl 0000:00:1f.3: ASoC: old version of manifest
      snd_soc_skl 0000:00:1f.3: Invalid descriptor token 1093938482
      snd_soc_skl 0000:00:1f.3: ASoC: failed to load widget media0_in cpr 0
      snd_soc_skl 0000:00:1f.3: tPlg component load failed-22
      
      This message is seen because backwards compatibility for loading widgets
      was never implemented.
      
      The lack of audio support when running the upstream kernel on recent
      Chromebooks has been reported in various forums, and can be traced back
      to this problem. Attempts to fix the problem, usually by providing v5
      configuration files, were only partially successful.
      
      Let's implement backward compatibility properly to solve the problem
      for good.
      Signed-off-by: default avatarGuenter Roeck <groeck@chromium.org>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      ac9391da
    • Steven Eckhoff's avatar
      ASoC: TSCS454: Add Support · 0e725b48
      Steven Eckhoff authored
      Currently there is no support for Tempo Semiconductor's TSCS454 CODEC.
      
      Add support for it.
      Signed-off-by: default avatarSteven Eckhoff <steven.eckhoff.opensource@gmail.com>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      0e725b48
    • Mac Chiang's avatar
      ASoC: Intel: kbl: Move codec sysclk config to codec_init function · 56c3a953
      Mac Chiang authored
      On APL, commit fd0f2375
      ("ASoC: Intel: bxt: Move codec sysclk config to codec_init function")
      fixed an issue related to jack detection.
      
      The MCLK for DA7219 does not change in this platform, but is
      currently being configured everytime as part of the platform_clock
      event handler for DAPM. The upshot of this is that we have
      unnecessary calls to this function, and it also means that if
      a stream hasn't yet been started, DA7219 driver does not have the
      correct MCLK rates programmed and so the HP detection feature does
      not operate as expected.
      
      The same fix is needed on KBL.
      
      This patch rectifies this issue by moving the sysclk call to
      codec_init function so it's only called once at initialisation.
      Signed-off-by: default avatarMac Chiang <mac.chiang@intel.com>
      Acked-by: default avatarPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      56c3a953
    • Daniel Mack's avatar
      ASoC: simple-card: set cpu dai clk in hw_params · e9be4ffd
      Daniel Mack authored
      The simple-card driver currently accepts a clock node in the cpu dai
      sub-node and only uses it as an alternative to the
      'system-clock-frequency' property to get the current frequency.
      
      This patch adds another use of the passed clock node. If mclk-fs is
      specified, the clocks in cpu and codec dai sub-nodes will be set to
      the calculated rate (stream rate * mclk_fs) in hw_params.
      
      This allows platforms to pass tuneable clocks as phandle that will
      automatically be set to the right rates.
      Signed-off-by: default avatarDaniel Mack <daniel@zonque.org>
      Signed-off-by: default avatarMark Brown <broonie@kernel.org>
      e9be4ffd
  2. 31 May, 2018 9 commits
  3. 30 May, 2018 3 commits
  4. 29 May, 2018 12 commits
  5. 25 May, 2018 4 commits
  6. 23 May, 2018 2 commits
  7. 22 May, 2018 6 commits