]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
overlays: Add overlay for missing AUX interrupt controller support (#2391)
authorAlexander Graf <agraf@suse.de>
Tue, 20 Feb 2018 16:36:21 +0000 (17:36 +0100)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 15 Aug 2018 17:22:55 +0000 (19:22 +0200)
Upstream Linux today does not support the AUX interrupt controller
yet. To make sure it can use our device tree, add an overlay that
reverts it to something upstream understands again.

See: https://github.com/raspberrypi/firmware/issues/943

Signed-off-by: Alexander Graf <agraf@suse.de>
arch/arm/boot/dts/overlays/Makefile
arch/arm/boot/dts/overlays/README
arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts [new file with mode: 0644]

index 1429d4adbe6bea30572c524d3f41c04732fdd7fa..b543b2f478ab90790b662f9ffae3b6d9f8572ae4 100644 (file)
@@ -123,6 +123,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
        tinylcd35.dtbo \
        uart0.dtbo \
        uart1.dtbo \
+       upstream-aux-interrupt.dtbo \
        vc4-fkms-v3d.dtbo \
        vc4-kms-v3d.dtbo \
        vga666.dtbo \
index 2576151e825b08003c119b79e77f2cee4ea806bc..4c3047a324cc03ccaf4f2c56ff3bf17421fabd3a 100644 (file)
@@ -1730,6 +1730,13 @@ Params: txd1_pin                GPIO pin for TXD1 (14, 32 or 40 - default 14)
         rxd1_pin                GPIO pin for RXD1 (15, 33 or 41 - default 15)
 
 
+Name:   upstream-aux-interrupt
+Info:   Allow usage of downstream .dtb with upstream kernel by binding AUX
+        devices directly to the shared AUX interrupt line.
+Load:   dtoverlay=upstream-aux-interrupt
+Params: <None>
+
+
 Name:   vc4-fkms-v3d
 Info:   Enable Eric Anholt's DRM VC4 V3D driver on top of the dispmanx
         display stack.
diff --git a/arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts b/arch/arm/boot/dts/overlays/upstream-aux-interrupt-overlay.dts
new file mode 100644 (file)
index 0000000..04e271b
--- /dev/null
@@ -0,0 +1,33 @@
+// Overlay for missing AUX interrupt controller
+// Instead we bind all AUX devices to the generic AUX interrupt line
+/dts-v1/;
+/plugin/;
+
+/ {
+    compatible = "brcm,bcm2708";
+
+    fragment@0 {
+        target = <&uart1>;
+        __overlay__ {
+            interrupt-parent = <&intc>;
+            interrupts = <0x1 0x1d>;
+        };
+    };
+
+    fragment@1 {
+        target = <&spi1>;
+        __overlay__ {
+            interrupt-parent = <&intc>;
+            interrupts = <0x1 0x1d>;
+        };
+    };
+
+    fragment@2 {
+        target = <&spi2>;
+        __overlay__ {
+            interrupt-parent = <&intc>;
+            interrupts = <0x1 0x1d>;
+        };
+    };
+};
+