aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.15/950-0544-ARM-dts-vc4-kms-v3d-Always-disable-firmware-HDMI.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.15/950-0544-ARM-dts-vc4-kms-v3d-Always-disable-firmware-HDMI.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.15/950-0544-ARM-dts-vc4-kms-v3d-Always-disable-firmware-HDMI.patch47
1 files changed, 47 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.15/950-0544-ARM-dts-vc4-kms-v3d-Always-disable-firmware-HDMI.patch b/target/linux/bcm27xx/patches-5.15/950-0544-ARM-dts-vc4-kms-v3d-Always-disable-firmware-HDMI.patch
new file mode 100644
index 0000000000..3a50706686
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.15/950-0544-ARM-dts-vc4-kms-v3d-Always-disable-firmware-HDMI.patch
@@ -0,0 +1,47 @@
+From 3942525ae16ac52fe8b632a3d3fb34af9f0d5c5e Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil@raspberrypi.com>
+Date: Mon, 25 Oct 2021 11:48:18 +0100
+Subject: [PATCH] ARM: dts: vc4-kms-v3d: Always disable firmware HDMI
+
+Both the firmware audio driver and the vc4-kms-v3d driver are capable
+of providing HDMI audio, but only one should be active at any time.
+The vc4-kms-v3d overlays disable the firmware audio driver, but they
+also have a noaudio parameter that as well as disabling the ARM-side
+HDMI audio also re-enables the firmware HDMI audio. This is not
+guaranteed to work and has been seen to break the display completely.
+
+Modify the noaudio parameters so that the firmware HDMI audio support
+remains disabled.
+
+See: https://github.com/raspberrypi/linux/issues/4651
+
+Signed-off-by: Phil Elwell <phil@raspberrypi.com>
+---
+ arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts | 4 ++--
+ arch/arm/boot/dts/overlays/vc4-kms-v3d-pi4-overlay.dts | 2 +-
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+--- a/arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts
++++ b/arch/arm/boot/dts/overlays/vc4-kms-v3d-overlay.dts
+@@ -116,8 +116,8 @@
+ };
+
+ __overrides__ {
+- audio = <0>,"!13", <0>,"=14";
+- noaudio = <0>,"=13", <0>,"!14";
++ audio = <0>,"!13";
++ noaudio = <0>,"=13";
+ nocomposite = <0>, "!11";
+ };
+ };
+--- a/arch/arm/boot/dts/overlays/vc4-kms-v3d-pi4-overlay.dts
++++ b/arch/arm/boot/dts/overlays/vc4-kms-v3d-pi4-overlay.dts
+@@ -180,7 +180,7 @@
+ __overrides__ {
+ audio = <0>,"!17";
+ audio1 = <0>,"!18";
+- noaudio = <0>,"=17", <0>,"=18", <0>,"!19";
++ noaudio = <0>,"=17", <0>,"=18";
+ composite = <0>, "!1",
+ <0>, "!2",
+ <0>, "!3",