devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Osipenko <digetx@gmail.com>
To: Thierry Reding <thierry.reding@gmail.com>,
	Jonathan Hunter <jonathanh@nvidia.com>,
	Mark Brown <broonie@kernel.org>, Takashi Iwai <tiwai@suse.com>,
	Jaroslav Kysela <perex@perex.cz>,
	Liam Girdwood <lgirdwood@gmail.com>, Agneli <poczt@protonmail.ch>
Cc: linux-tegra@vger.kernel.org, Arnd Bergmann <arnd@arndb.de>,
	Rob Herring <robh+dt@kernel.org>,
	alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org,
	devicetree@vger.kernel.org, dri-devel@lists.freedesktop.org
Subject: [PATCH v4 00/22] Support HDMI audio on NVIDIA Tegra20
Date: Sat,  4 Dec 2021 17:37:03 +0300	[thread overview]
Message-ID: <20211204143725.31646-1-digetx@gmail.com> (raw)

This series revives Tegra20 S/PDIF driver which was upstreamed long time
ago, but never was used. It also turns Tegra DRM HDMI driver into HDMI
audio CODEC provider. Finally, HDMI audio is enabled in device-trees.
For now the audio is enable only for Acer A500 tablet and Toshiba AC100
netbook because they're already supported by upstream, later on ASUS TF101
tablet will join them.

I based S/PDIF patches on Arnd's Bergmann patch from a separate series [1]
that removes obsolete slave_id. This eases merging of the patches by
removing the merge conflict. This is a note for Mark Brown.

I also based this series on top of power management series [2]. I.e. [2]
should be applied first, otherwise "Add S/PDIF node to Tegra20 device-tree"
patch should have merge conflict. This is a note for Thierry.

[1] https://patchwork.ozlabs.org/project/linux-tegra/list/?series=273312
[2] https://patchwork.ozlabs.org/project/linux-tegra/list/?series=274534

Changelog:

v4: - Added patches that update multi_v7_defconfig with the enabled S/PDIF
      and APB DMA drivers.

v3: - Renamed S/PDIF device-tree clocks as was suggested by Rob Herring.

    - Added r-bs and acks that were given by Rob Herring to v2.

v2: - Corrected I2S yaml problem that was reported by the DT bot for v1
      by removing the non-existent required clock-names property.

    - Removed assigned-clocks property from S/PDIF yaml since this property
      is now inherited from the clocks property.

    - Reordered the "tegra20: spdif: Set FIFO trigger level" patch, making
      it the first sound/soc patch in the series, like it was suggested by
      Mark Brown in the comment to v1. Also reworded commit message of this
      patch to *not* make it looks like it should be backported to stable
      kernels.

Arnd Bergmann (1):
  ASoC: tegra20-spdif: stop setting slave_id

Dmitry Osipenko (21):
  ASoC: dt-bindings: Add binding for Tegra20 S/PDIF
  ASoC: dt-bindings: tegra20-i2s: Convert to schema
  ASoC: dt-bindings: tegra20-i2s: Document new nvidia,fixed-parent-rate
    property
  dt-bindings: host1x: Document optional HDMI sound-dai-cells
  ASoC: tegra20: spdif: Set FIFO trigger level
  ASoC: tegra20: spdif: Support device-tree
  ASoC: tegra20: spdif: Improve driver's code
  ASoC: tegra20: spdif: Use more resource-managed helpers
  ASoC: tegra20: spdif: Reset hardware
  ASoC: tegra20: spdif: Support system suspend
  ASoC: tegra20: spdif: Filter out unsupported rates
  ASoC: tegra20: i2s: Filter out unsupported rates
  drm/tegra: hdmi: Unwind tegra_hdmi_init() errors
  drm/tegra: hdmi: Register audio CODEC on Tegra20
  ARM: tegra_defconfig: Enable S/PDIF driver
  ARM: config: multi v7: Enable NVIDIA Tegra20 S/PDIF driver
  ARM: config: multi v7: Enable NVIDIA Tegra20 APB DMA driver
  ARM: tegra: Add S/PDIF node to Tegra20 device-tree
  ARM: tegra: Add HDMI audio graph to Tegra20 device-tree
  ARM: tegra: acer-a500: Enable S/PDIF and HDMI audio
  ARM: tegra: paz00: Enable S/PDIF and HDMI audio

 .../display/tegra/nvidia,tegra20-host1x.txt   |   1 +
 .../bindings/sound/nvidia,tegra20-i2s.txt     |  30 ---
 .../bindings/sound/nvidia,tegra20-i2s.yaml    |  77 +++++++
 .../bindings/sound/nvidia,tegra20-spdif.yaml  |  85 ++++++++
 .../boot/dts/tegra20-acer-a500-picasso.dts    |   8 +
 arch/arm/boot/dts/tegra20-paz00.dts           |   8 +
 arch/arm/boot/dts/tegra20.dtsi                |  40 +++-
 arch/arm/configs/multi_v7_defconfig           |   2 +
 arch/arm/configs/tegra_defconfig              |   1 +
 drivers/gpu/drm/tegra/Kconfig                 |   3 +
 drivers/gpu/drm/tegra/hdmi.c                  | 168 +++++++++++++--
 sound/soc/tegra/tegra20_i2s.c                 |  49 +++++
 sound/soc/tegra/tegra20_spdif.c               | 197 ++++++++++++------
 sound/soc/tegra/tegra20_spdif.h               |   1 +
 sound/soc/tegra/tegra_pcm.c                   |   6 +
 sound/soc/tegra/tegra_pcm.h                   |   1 +
 16 files changed, 574 insertions(+), 103 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra20-i2s.txt
 create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra20-i2s.yaml
 create mode 100644 Documentation/devicetree/bindings/sound/nvidia,tegra20-spdif.yaml

-- 
2.33.1


             reply	other threads:[~2021-12-04 14:37 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-04 14:37 Dmitry Osipenko [this message]
2021-12-04 14:37 ` [PATCH v4 01/22] ASoC: dt-bindings: Add binding for Tegra20 S/PDIF Dmitry Osipenko
2021-12-16 13:56   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 02/22] ASoC: dt-bindings: tegra20-i2s: Convert to schema Dmitry Osipenko
2021-12-16 13:59   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 03/22] ASoC: dt-bindings: tegra20-i2s: Document new nvidia,fixed-parent-rate property Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 04/22] dt-bindings: host1x: Document optional HDMI sound-dai-cells Dmitry Osipenko
2021-12-16 14:20   ` Thierry Reding
2021-12-17 11:12     ` Mark Brown
2021-12-17 11:55       ` Dmitry Osipenko
2021-12-17 12:02         ` Thierry Reding
2021-12-17 12:06           ` Dmitry Osipenko
2021-12-17 17:18             ` Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 05/22] ASoC: tegra20: spdif: Set FIFO trigger level Dmitry Osipenko
2021-12-16 15:15   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 06/22] ASoC: tegra20-spdif: stop setting slave_id Dmitry Osipenko
2021-12-16 15:16   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 07/22] ASoC: tegra20: spdif: Support device-tree Dmitry Osipenko
2021-12-16 15:17   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 08/22] ASoC: tegra20: spdif: Improve driver's code Dmitry Osipenko
2021-12-16 15:18   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 09/22] ASoC: tegra20: spdif: Use more resource-managed helpers Dmitry Osipenko
2021-12-16 15:21   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 10/22] ASoC: tegra20: spdif: Reset hardware Dmitry Osipenko
2021-12-16 15:22   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 11/22] ASoC: tegra20: spdif: Support system suspend Dmitry Osipenko
2021-12-16 15:22   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 12/22] ASoC: tegra20: spdif: Filter out unsupported rates Dmitry Osipenko
2021-12-16 15:30   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 13/22] ASoC: tegra20: i2s: " Dmitry Osipenko
2021-12-16 15:31   ` Thierry Reding
2021-12-04 14:37 ` [PATCH v4 14/22] drm/tegra: hdmi: Unwind tegra_hdmi_init() errors Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 15/22] drm/tegra: hdmi: Register audio CODEC on Tegra20 Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 16/22] ARM: tegra_defconfig: Enable S/PDIF driver Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 17/22] ARM: config: multi v7: Enable NVIDIA Tegra20 " Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 18/22] ARM: config: multi v7: Enable NVIDIA Tegra20 APB DMA driver Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 19/22] ARM: tegra: Add S/PDIF node to Tegra20 device-tree Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 20/22] ARM: tegra: Add HDMI audio graph " Dmitry Osipenko
2021-12-16 13:46   ` Thierry Reding
2021-12-16 14:24     ` Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 21/22] ARM: tegra: acer-a500: Enable S/PDIF and HDMI audio Dmitry Osipenko
2021-12-04 14:37 ` [PATCH v4 22/22] ARM: tegra: paz00: " Dmitry Osipenko
2021-12-15 18:57 ` [PATCH v4 00/22] Support HDMI audio on NVIDIA Tegra20 Mark Brown
2021-12-15 19:19   ` Dmitry Osipenko
2021-12-15 19:58     ` Mark Brown
2021-12-16 13:55     ` Thierry Reding
2021-12-16 15:09       ` Dmitry Osipenko
2021-12-16 14:29     ` Dmitry Osipenko
2021-12-17  6:04       ` Vinod Koul
2021-12-17 12:06         ` Dmitry Osipenko
2021-12-21  2:50 ` (subset) " Mark Brown

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211204143725.31646-1-digetx@gmail.com \
    --to=digetx@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jonathanh@nvidia.com \
    --cc=lgirdwood@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=perex@perex.cz \
    --cc=poczt@protonmail.ch \
    --cc=robh+dt@kernel.org \
    --cc=thierry.reding@gmail.com \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).