Add DisplayPort audio support for Xilinx ZynqMP platforms. This depends on patch adding cyclic DMA mode for DPDMA driver: https://lore.kernel.org/all/20240228042124.3074044-3-vishal.sagar@xxxxxxx/ If that patch is missing, starting an audio playback will fail with an ASoC error. The cyclic DMA patch has recently been accepted to the DMA tree. The current DT is, for some reason, missing the DMA channels for the audio. This series adds that to the bindings and the dts file, but to support older dtb files without the audio DMA, the driver will not fail if the audio DMA is missing, but will just mark the audio support as disabled. To: Lars-Peter Clausen <lars@xxxxxxxxxx> To: Jaroslav Kysela <perex@xxxxxxxx> To: Takashi Iwai <tiwai@xxxxxxxx> To: Liam Girdwood <lgirdwood@xxxxxxxxx> To: Mark Brown <broonie@xxxxxxxxxx> To: Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> To: Maarten Lankhorst <maarten.lankhorst@xxxxxxxxxxxxxxx> To: Maxime Ripard <mripard@xxxxxxxxxx> To: Thomas Zimmermann <tzimmermann@xxxxxxx> To: David Airlie <airlied@xxxxxxxxx> To: Daniel Vetter <daniel@xxxxxxxx> To: Rob Herring <robh+dt@xxxxxxxxxx> To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@xxxxxxxxxx> To: Conor Dooley <conor+dt@xxxxxxxxxx> To: Michal Simek <michal.simek@xxxxxxx> To: Krzysztof Kozlowski <krzk+dt@xxxxxxxxxx> Cc: linux-sound@xxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: dri-devel@xxxxxxxxxxxxxxxxxxxxx Cc: devicetree@xxxxxxxxxxxxxxx Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx Cc: Vishal Sagar <vishal.sagar@xxxxxxx> Cc: Anatoliy Klymenko <anatoliy.klymenko@xxxxxxx> Cc: Péter Ujfalusi <peter.ujfalusi@xxxxxxxxx> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxxxxxxxxxxxx> Changes in v3: - Expand the description in "dt-bindings: display/xlnx/zynqmp-dpsub: Add audio DMAs" to be more clear about the DT binding change. - Rebased on top of current upstream - Link to v2: https://lore.kernel.org/r/20240319-xilinx-dp-audio-v2-0-92d6d3a7ca7e@xxxxxxxxxxxxxxxx Changes in v2: - Fix a missing double-quote in the DT binding - Link to v1: https://lore.kernel.org/r/20240312-xilinx-dp-audio-v1-0-696c79facbb9@xxxxxxxxxxxxxxxx --- Tomi Valkeinen (3): dt-bindings: display/xlnx/zynqmp-dpsub: Add audio DMAs arm64: dts: zynqmp: Add DMA for DP audio drm: xlnx: zynqmp_dpsub: Add DP audio support .../bindings/display/xlnx/xlnx,zynqmp-dpsub.yaml | 10 +- arch/arm64/boot/dts/xilinx/zynqmp.dtsi | 7 +- drivers/gpu/drm/xlnx/Kconfig | 9 + drivers/gpu/drm/xlnx/Makefile | 1 + drivers/gpu/drm/xlnx/zynqmp_disp.c | 48 --- drivers/gpu/drm/xlnx/zynqmp_disp_regs.h | 7 +- drivers/gpu/drm/xlnx/zynqmp_dp.c | 54 ++- drivers/gpu/drm/xlnx/zynqmp_dp.h | 7 + drivers/gpu/drm/xlnx/zynqmp_dp_audio.c | 461 +++++++++++++++++++++ drivers/gpu/drm/xlnx/zynqmp_dpsub.c | 39 +- drivers/gpu/drm/xlnx/zynqmp_dpsub.h | 15 +- 11 files changed, 553 insertions(+), 105 deletions(-) --- base-commit: 431c1646e1f86b949fa3685efc50b660a364c2b6 change-id: 20240312-xilinx-dp-audio-468ad12f9f64 Best regards, -- Tomi Valkeinen <tomi.valkeinen@xxxxxxxxxxxxxxxx>