1. 21 Jan, 2021 23 commits
  2. 20 Jan, 2021 13 commits
  3. 19 Jan, 2021 4 commits
    • Mark Brown's avatar
      Merge series "Tegra210 audio graph card" from Sameer Pujar <spujar@nvidia.com>: · 6b050d45
      Mark Brown authored
      This series adds audio graph based sound card support for Tegra210
      platforms like Jetson-TX1 an Jetson-Nano. The following preparatory
      audio graph enhancement series is already merged.
       * https://patchwork.kernel.org/project/alsa-devel/list/?series=375629&state=*
      
      Following are the summary of changes:
       * Add graph/audio-graph based schemas or schema updates for Tegra210
         component and machine drivers.
       * Add Tegra audio graph machine driver.
       * Add required DT support for Jetson-TX1/Nano.
      
      This work is based on earlier discussion of DPCM usage for Tegra
      and simple card driver updates.
       * https://lkml.org/lkml/2020/4/30/519
       * https://lkml.org/lkml/2020/6/27/4
      
      Original v6 series was sent about 6-7 weeks back. The dependency commit,
      https://lore.kernel.org/alsa-devel/1610948585-16286-1-git-send-email-spujar@nvidia.com/
      is now merged. Resending this now to appear in the top of the mail list.
      
      Changelog
      =========
      
      v5 -> v6
      --------
       * Added ports or port description in YAML docs for Tegra AHUB
         devices and graph card in patch 1/6 and 2/6. Reference of
         audio-graph-port.yaml is used for AHUB devices.
       * Dropped redundant NULL check return for of_device_get_match_data()
         in patch 3/6.
       * Added 'Reviewed-by' tag from Jon Hunter.
       * No changes in remaining patches.
      
      v4 -> v5
      --------
       * Audio graph related changes were sent in separate v5 series as
         mentioned above and are dropped from current series.
       * Graph and audio graph doc patches are dropped from this series
         and are sent separately as mentioned above.
       * Minor change with phandle label for TX1 and Nano platform DT files.
       * No changes in other patches.
      
      v3 -> v4
      --------
       * Added new patches to convert graph.txt and audio-graph-card.txt
         to corresponding json-schema files. Later these references
         are used in Tegra audio graph schema.
      
       * AHUB component binding docs are updated to reflect the usage
         of ports/port/endpoint
      
       * More common stuff is moved into graph_parse_of() and this is
         used by both generic and Tegra audio graph.
      
       * DT binding for Tegra audio graph is updated to included "ports { }"
      
       * As per the suggestion 'void *data' member is dropped from
         'asoc_simple_priv' and instead container method is used to
         maintain required custom data internal to Tegra audio graph.
      
      v2 -> v3
      --------
       * Dropped new compatible addition in generic graph driver
         after reviewing it with Morimoto-san. Instead added Tegra
         audio graph driver and new compatibles are added in the same.
       * Added new patches to expose new members for customization
         in audio graph driver.
       * Added new patch for Tegra audio graph driver and related
         documentation.
       * Minor change in below commit where mutex version of helper is used
         "ASoC: audio-graph: Identify 'no_pcm' DAI links for DPCM"
       * DT binding is updated to use the newly exposed compatibles
       * No changes in other patches
      
      v1 -> v2
      --------
       * Re-organized ports/endpoints description for ADMAIF and XBAR.
         Updated DT patches accordingly.
       * After above change, multiple Codec endpoint support is not
         required and hence dropped for now. This will be considered
         separately if at all required in future.
       * Re-ordered patches in the series.
      
      Sameer Pujar (6):
        ASoC: dt-bindings: tegra: Add graph bindings
        ASoC: dt-bindings: tegra: Add json-schema for Tegra audio graph card
        ASoC: tegra: Add audio graph based card driver
        arm64: defconfig: Enable Tegra audio graph card driver
        arm64: tegra: Audio graph header for Tegra210
        arm64: tegra: Audio graph sound card for Jetson Nano and TX1
      
       .../sound/nvidia,tegra-audio-graph-card.yaml       | 187 +++++++++++++++
       .../bindings/sound/nvidia,tegra186-dspk.yaml       |  18 +-
       .../bindings/sound/nvidia,tegra210-admaif.yaml     |  13 +-
       .../bindings/sound/nvidia,tegra210-ahub.yaml       |  13 +-
       .../bindings/sound/nvidia,tegra210-dmic.yaml       |  18 +-
       .../bindings/sound/nvidia,tegra210-i2s.yaml        |  18 +-
       .../boot/dts/nvidia/tegra210-audio-graph.dtsi      | 153 ++++++++++++
       arch/arm64/boot/dts/nvidia/tegra210-p2371-2180.dts | 262 +++++++++++++++++++++
       arch/arm64/boot/dts/nvidia/tegra210-p3450-0000.dts | 146 ++++++++++++
       arch/arm64/configs/defconfig                       |   1 +
       sound/soc/tegra/Kconfig                            |   9 +
       sound/soc/tegra/Makefile                           |   2 +
       sound/soc/tegra/tegra_audio_graph_card.c           | 251 ++++++++++++++++++++
       13 files changed, 1085 insertions(+), 6 deletions(-)
       create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra-audio-graph-card.yaml
       create mode 100644 arch/arm64/boot/dts/nvidia/tegra210-audio-graph.dtsi
       create mode 100644 sound/soc/tegra/tegra_audio_graph_card.c
      
      --
      2.7.4
      6b050d45
    • Mark Brown's avatar
      Merge series "ASoC: Simplify with dma_set_mask_and_coherent()" from Takashi Iwai <tiwai@suse.de>: · 97692432
      Mark Brown authored
      Simple conversions from two dma_set_mask*() calls into the single
      dma_set_mask_and_coherent().
      
      Just a minor code refactoring, no functional changes.
      
      Takashi
      
      ===
      
      Takashi Iwai (3):
        ASoC: intel: skl: Simplify with dma_set_mask_and_coherent()
        ASoC: SOF: intel: Simplify with dma_set_mask_and_coherent()
        ASoC: tegra: Simplify with dma_set_mask_and_coherent()
      
       sound/soc/intel/skylake/skl.c | 8 ++------
       sound/soc/sof/intel/hda.c     | 8 ++------
       sound/soc/tegra/tegra_pcm.c   | 6 +-----
       3 files changed, 5 insertions(+), 17 deletions(-)
      
      --
      2.26.2
      97692432
    • Tony Lindgren's avatar
      ASoC: cpcap: Implement set_tdm_slot for voice call support · 0dedbde5
      Tony Lindgren authored
      ASoC: cpcap: Implement set_tdm_slot for voice call support
      
      For using cpcap for voice calls, we need to route audio directly from
      the modem to cpcap for TDM (Time Division Multiplexing). The voice call
      is direct data between the modem and cpcap with no CPU involvment. In
      this mode, the cpcap related audio mixer controls work for the speaker
      selection and volume though.
      
      To do this, we need to implement standard snd_soc_dai_set_tdm_slot()
      for cpcap. Then the modem codec driver can use snd_soc_dai_set_sysclk(),
      snd_soc_dai_set_fmt(), and snd_soc_dai_set_tdm_slot() to configure a
      voice call.
      
      Let's add cpcap_voice_set_tdm_slot() for this, and cpcap_voice_call()
      helper to configure the additional registers needed for voice call.
      
      Let's also clear CPCAP_REG_VAUDIOC on init in case we have the bit for
      CPCAP_BIT_VAUDIO_MODE0 set on init.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      Signed-off-by: default avatarPavel Machek <pavel@ucw.cz>
      Link: https://lore.kernel.org/r/20210112174704.GA13496@duo.ucw.czSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      0dedbde5
    • Yu-Hsuan Hsu's avatar
      ASoC: cros_ec_codec: Reset I2S RX when probing · 7f1f7ae1
      Yu-Hsuan Hsu authored
      It is not guaranteed that I2S RX is disabled when the kernel booting.
      For example, if the kernel crashes while it is enabled, it will keep
      enabled until the next time EC reboots. Reset I2S RX when probing to
      fix this issue.
      Signed-off-by: default avatarYu-Hsuan Hsu <yuhsuan@chromium.org>
      Reviewed-by: default avatarEnric Balletbo i Serra <enric.balletbo@collabora.com>
      Link: https://lore.kernel.org/r/20210115075301.47995-2-yuhsuan@chromium.orgSigned-off-by: default avatarMark Brown <broonie@kernel.org>
      7f1f7ae1