aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.10/950-0357-staging-bcm2835-audio-Add-disable-headphones-flag.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.10/950-0357-staging-bcm2835-audio-Add-disable-headphones-flag.patch')
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0357-staging-bcm2835-audio-Add-disable-headphones-flag.patch34
1 files changed, 34 insertions, 0 deletions
diff --git a/target/linux/bcm27xx/patches-5.10/950-0357-staging-bcm2835-audio-Add-disable-headphones-flag.patch b/target/linux/bcm27xx/patches-5.10/950-0357-staging-bcm2835-audio-Add-disable-headphones-flag.patch
new file mode 100644
index 0000000000..317d5626cc
--- /dev/null
+++ b/target/linux/bcm27xx/patches-5.10/950-0357-staging-bcm2835-audio-Add-disable-headphones-flag.patch
@@ -0,0 +1,34 @@
+From 833b2341a6db499638d404de283a1b3c3a2a225f Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil@raspberrypi.com>
+Date: Mon, 26 Oct 2020 10:23:22 +0000
+Subject: [PATCH] staging: bcm2835-audio: Add disable-headphones flag
+
+Add a property to allow the headphone output to be disabled. Use an
+integer property rather than a boolean so that an overlay can clear it.
+
+Signed-off-by: Phil Elwell <phil@raspberrypi.com>
+---
+ drivers/staging/vc04_services/bcm2835-audio/bcm2835.c | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+--- a/drivers/staging/vc04_services/bcm2835-audio/bcm2835.c
++++ b/drivers/staging/vc04_services/bcm2835-audio/bcm2835.c
+@@ -381,11 +381,16 @@ static int snd_bcm2835_alsa_probe(struct
+ }
+
+ if (!enable_compat_alsa) {
++ // In this mode, enable analog output by default
++ u32 disable_headphones = 0;
++
+ if (!of_property_read_bool(dev->of_node, "brcm,disable-hdmi"))
+ set_hdmi_enables(dev);
+
+- // In this mode, always enable analog output
+- enable_headphones = true;
++ of_property_read_u32(dev->of_node,
++ "brcm,disable-headphones",
++ &disable_headphones);
++ enable_headphones = !disable_headphones;
+ } else {
+ enable_hdmi0 = enable_hdmi;
+ }