diff options
Diffstat (limited to 'target/linux/brcm2708/patches-4.19/950-0660-drm-vc4-A-present-but-empty-dmas-disables-audio.patch')
-rw-r--r-- | target/linux/brcm2708/patches-4.19/950-0660-drm-vc4-A-present-but-empty-dmas-disables-audio.patch | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.19/950-0660-drm-vc4-A-present-but-empty-dmas-disables-audio.patch b/target/linux/brcm2708/patches-4.19/950-0660-drm-vc4-A-present-but-empty-dmas-disables-audio.patch new file mode 100644 index 0000000000..2d38456ae6 --- /dev/null +++ b/target/linux/brcm2708/patches-4.19/950-0660-drm-vc4-A-present-but-empty-dmas-disables-audio.patch @@ -0,0 +1,33 @@ +From 8befbf55f2668a4dae739588ed3c0b0d06fccacd Mon Sep 17 00:00:00 2001 +From: Phil Elwell <phil@raspberrypi.org> +Date: Wed, 31 Jul 2019 17:36:34 +0100 +Subject: [PATCH] drm/vc4: A present but empty dmas disables audio + +Overlays are unable to remove properties in the base DTB, but they +can overwrite them. Allow a present but empty 'dmas' property +to also disable the HDMI audio interface. + +See: https://github.com/raspberrypi/linux/issues/2489 + +Signed-off-by: Phil Elwell <phil@raspberrypi.org> +--- + drivers/gpu/drm/vc4/vc4_hdmi.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +--- a/drivers/gpu/drm/vc4/vc4_hdmi.c ++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c +@@ -1087,10 +1087,12 @@ static int vc4_hdmi_audio_init(struct vc + struct device *dev = &hdmi->pdev->dev; + const __be32 *addr; + int ret; ++ int len; + +- if (!of_find_property(dev->of_node, "dmas", NULL)) { ++ if (!of_find_property(dev->of_node, "dmas", &len) || ++ len == 0) { + dev_warn(dev, +- "'dmas' DT property is missing, no HDMI audio\n"); ++ "'dmas' DT property is missing or empty, no HDMI audio\n"); + return 0; + } + |