brcm2708: update to latest patches from RPi foundation
[openwrt/staging/chunkeey.git] / target / linux / brcm2708 / patches-4.19 / 950-0810-overlays-Remove-hack-from-uart0-overlay.patch
diff --git a/target/linux/brcm2708/patches-4.19/950-0810-overlays-Remove-hack-from-uart0-overlay.patch b/target/linux/brcm2708/patches-4.19/950-0810-overlays-Remove-hack-from-uart0-overlay.patch
new file mode 100644 (file)
index 0000000..ca582b8
--- /dev/null
@@ -0,0 +1,45 @@
+From b006cc7ddfa96c044068ef367c0bc82c2d221ca3 Mon Sep 17 00:00:00 2001
+From: Phil Elwell <phil@raspberrypi.org>
+Date: Tue, 1 Oct 2019 10:19:50 +0100
+Subject: [PATCH] overlays: Remove hack from uart0 overlay
+
+The uart0 overlay contained a hack to return GPIOs 14 and 15 to inputs
+when the UART0 function was moved to alternative pins. This has the
+unwanted side effect of claiming GPIOs 14 & 15, preventing them being
+used for something else.
+
+See: https://github.com/raspberrypi/linux/issues/2856
+     https://www.raspberrypi.org/forums/viewtopic.php?f=98&t=252911
+
+Signed-off-by: Stefan Enge <stefan.enge@escatec.com>
+Signed-off-by: Phil Elwell <phil@raspberrypi.org>
+---
+ arch/arm/boot/dts/overlays/uart0-overlay.dts | 13 ++++++-------
+ 1 file changed, 6 insertions(+), 7 deletions(-)
+
+--- a/arch/arm/boot/dts/overlays/uart0-overlay.dts
++++ b/arch/arm/boot/dts/overlays/uart0-overlay.dts
+@@ -17,17 +17,16 @@
+               target = <&gpio>;
+               __overlay__ {
+                       uart0_pins: uart0_pins {
+-                              brcm,pins = <14 15 14 15>;
+-                              brcm,function = <0 0 4 4>; /* alt0 */
+-                              brcm,pull = <0 0 0 2>;
++                              brcm,pins = <14 15>;
++                              brcm,function = <4>; /* alt0 */
++                              brcm,pull = <0 2>;
+                       };
+               };
+       };
+       __overrides__ {
+-              txd0_pin = <&uart0_pins>,"brcm,pins:8";
+-              rxd0_pin = <&uart0_pins>,"brcm,pins:12";
+-              pin_func = <&uart0_pins>,"brcm,function:8",
+-                         <&uart0_pins>,"brcm,function:12";
++              txd0_pin = <&uart0_pins>,"brcm,pins:0";
++              rxd0_pin = <&uart0_pins>,"brcm,pins:4";
++              pin_func = <&uart0_pins>,"brcm,function:0";
+       };
+ };