Skip to content

ASoC: mediatek: mt2701: HDMI audio support

Daniel Golle linux-arm-kernel linux-devicetree linux-mediatek linux-sound lkml 3 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v3 Latest9 patches 2 repliesIn review
  2. v29 patches 4 repliesSuperseded
  3. v19 patches 4 repliesSuperseded

Changes in v3 from the cover letter

* allOf goes before additionalProperties
* remove now unused clk bits
* remove redundant clock un-gating via regmap access

Patches in v3 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/9ASoC: dt-bindings: mt2701-afe-pcm: add HDMI audio path clocksDocumentation/devicetree/bindings/sound/mediatek,mt2701-audio.yaml+23 -00 replies
2/9ASoC: dt-bindings: mediatek,mt2701-hdmi-audio: add MT2701 HDMI audioDocumentation/devicetree/bindings/sound/mediatek,mt2701-hdmi-audio.yaml+48 -00 replies
3/9ASoC: mediatek: mt2701: add AFE HDMI register definitionssound/soc/mediatek/mt2701/mt2701-reg.h+29 -00 replies
4/9ASoC: mediatek: mt2701: add optional HDMI audio path clockssound/soc/mediatek/mt2701/mt2701-afe-clock-ctrl.c sound/soc/mediatek/mt2701/mt2701-afe-common.h+26 -00 replies
5/9ASoC: mediatek: mt2701: add HDMI audio memif, FE and BE DAIssound/soc/mediatek/mt2701/mt2701-afe-common.h sound/soc/mediatek/mt2701/mt2701-afe-pcm.c+285 -10 replies
6/9ASoC: mediatek: mt2701: add machine driver for on-chip HDMI codecsound/soc/mediatek/Kconfig sound/soc/mediatek/mt2701/Makefile sound/soc/mediatek/mt2701/mt2701-hdmi.c+125 -00 replies
7/9ARM: dts: mediatek: mt2701: wire HDMI audio path clocks into AFEarch/arm/boot/dts/mediatek/mt2701.dtsi+16 -50 replies
8/9ARM: dts: mediatek: mt7623: wire HDMI audio path clocks into AFEarch/arm/boot/dts/mediatek/mt7623.dtsi+16 -50 replies
9/9ARM: dts: mediatek: mt7623n-bananapi-bpi-r2: add HDMI audio machine nodearch/arm/boot/dts/mediatek/mt7623n-bananapi-bpi-r2.dts+7 -00 replies

Reviews trailers per patch

2 of 9 patches have a Reviewed-by or Acked-by of their own; the series has one for all of them.

PatchKrzysztof KozlowskiAngeloGioacchino Del Regno
SeriesR-b
1/9R-b
2/9R-b
3/9
4/9
5/9
6/9
7/9
8/9
9/9

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v3 thread

Cover letter [PATCH v3 0/9] ASoC: mediatek: mt2701: HDMI audio support

This series wires up on-chip HDMI audio on MT2701 and MT7623N, from the DRM bridge down through the AFE into a small machine driver that binds the AFE HDMI BE to the HDMI TX codec already exposed by the mediatek-drm-hdmi driver. Bindings, DT and a BananaPi R2 board node are included.

In order to survive vblank or late hotplug of the monitor, the fix submitted separately [1] is required as well.

Everything here was developed for and tested on a BananaPi R2 (MT7623N), which turns ten years old this year -- a nice occasion to finally land HDMI audio for a SoC which was truly ahead of its time.

[1]: https://patchwork.kernel.org/project/linux-mediatek/patch/a3e22cbae528c9a38d854a586d1736b860998d41.1776265222.git.daniel@makrotopia.org/

Changes since v2:
* allOf goes before additionalProperties
* remove now unused clk bits
* remove redundant clock un-gating via regmap access

Changes since v1:
* Restrict the four HDMI clocks to mediatek,mt2701-audio only using an allOf/if/then conditional; MT7622 is capped at 34 clocks (Krzysztof Kozlowski)
* Fix subject prefix to use schema filename (Krzysztof Kozlowski)
* Rewrite title and description to describe hardware, not driver (Krzysztof Kozlowski)
* Clarify in commit message why this is a separate binding from mediatek,mt2701-audio (Krzysztof Kozlowski)
* use named masks and explicitly set BIT_WIDTH_16 when programming AFE_HDMI_OUT_CON0 channel count (Mark Brown)
* add AUDIO_TOP_CON3, AFE_HDMI_OUT_CON0, AFE_HDMI_CONN0, AFE_8CH_I2S_OUT_CON to suspend/resume backup list (Mark Brown)

Daniel Golle (9):
ASoC: dt-bindings: mt2701-afe-pcm: add HDMI audio path clocks
ASoC: dt-bindings: mediatek,mt2701-hdmi-audio: add MT2701 HDMI audio
ASoC: mediatek: mt2701: add AFE HDMI register definitions
ASoC: mediatek: mt2701: add optional HDMI audio path clocks
ASoC: mediatek: mt2701: add HDMI audio memif, FE and BE DAIs
ASoC: mediatek: mt2701: add machine driver for on-chip HDMI codec
ARM: dts: mediatek: mt2701: wire HDMI audio path clocks into AFE
ARM: dts: mediatek: mt7623: wire HDMI audio path clocks into AFE
ARM: dts: mediatek: mt7623n-bananapi-bpi-r2: add HDMI audio machine
node

 .../bindings/sound/mediatek,mt2701-audio.yaml |  23 ++
 .../sound/mediatek,mt2701-hdmi-audio.yaml     |  48 +++
 arch/arm/boot/dts/mediatek/mt2701.dtsi        |  21 +-
 arch/arm/boot/dts/mediatek/mt7623.dtsi        |  21 +-
 .../dts/mediatek/mt7623n-bananapi-bpi-r2.dts  |   7 +
 sound/soc/mediatek/Kconfig                    |  10 +
 sound/soc/mediatek/mt2701/Makefile            |   1 +
 .../mediatek/mt2701/mt2701-afe-clock-ctrl.c   |  22 ++
 sound/soc/mediatek/mt2701/mt2701-afe-common.h |   6 +
 sound/soc/mediatek/mt2701/mt2701-afe-pcm.c    | 284 +++++++++++++++++-
 sound/soc/mediatek/mt2701/mt2701-hdmi.c       | 114 +++++++
 sound/soc/mediatek/mt2701/mt2701-reg.h        |  29 ++
 12 files changed, 575 insertions(+), 11 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/sound/mediatek,mt2701-hdmi-audio.yaml
 create mode 100644 sound/soc/mediatek/mt2701/mt2701-hdmi.c
Signature · 1 line
2.54.0