[PATCH 00/11] drm/vc4: hdmi: Enable Channel Mapping, IEC958, HBR Passthrough using hdmi-codec

From: Maxime Ripard
Date: Fri May 07 2021 - 10:04:45 EST


Hi,

hdmi-codec allows to have a lot of HDMI-audio related infrastructure in place,
it's missing a few controls to be able to provide HBR passthrough. This series
adds more infrastructure for the drivers, and leverages it in the vc4 HDMI
controller driver.

One thing that felt a bit weird is that even though
https://www.kernel.org/doc/html/latest/sound/kernel-api/writing-an-alsa-driver.html#iec958-s-pdif
mentions that the iec958 mask control should be a mixer control and the
default control should be a PCM one, it feels a bit weird to have two different
control type for two controls so similar, and other drivers are pretty
inconsistent with this. Should we update the documentation?

Thanks!
Maxime

Dom Cobley (5):
drm/vc4: hdmi: Set HD_CTL_WHOLSMP and HD_CTL_CHALIGN_SET
drm/vc4: hdmi: Set HDMI_MAI_FMT
drm/vc4: hdmi: Set VC4_HDMI_MAI_CONFIG_FORMAT_REVERSE
drm/vc4: hdmi: Remove firmware logic for MAI threshold setting
ARM: dts: bcm2711: Tune DMA parameters for HDMI audio

Maxime Ripard (6):
snd: iec958: split status creation and fill
ASoC: hdmi-codec: Rework to support more controls
ASoC: hdmi-codec: Add iec958 controls
ASoC: hdmi-codec: Add a prepare hook
drm/vc4: hdmi: Register HDMI codec
drm/vc4: hdmi: Remove redundant variables

arch/arm/boot/dts/bcm2711.dtsi | 4 +-
drivers/gpu/drm/vc4/Kconfig | 1 +
drivers/gpu/drm/vc4/vc4_hdmi.c | 322 ++++++++++++++-------------------
drivers/gpu/drm/vc4/vc4_hdmi.h | 5 +-
drivers/gpu/drm/vc4/vc4_regs.h | 30 +++
include/sound/hdmi-codec.h | 12 +-
include/sound/pcm_iec958.h | 8 +
sound/core/pcm_iec958.c | 131 +++++++++-----
sound/soc/codecs/hdmi-codec.c | 219 +++++++++++++++++-----
9 files changed, 456 insertions(+), 276 deletions(-)

--
2.31.1