aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/brcm2708/patches-4.14/950-0164-overlays-Add-EETI-EXC3000-overlay.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/brcm2708/patches-4.14/950-0164-overlays-Add-EETI-EXC3000-overlay.patch')
-rw-r--r--target/linux/brcm2708/patches-4.14/950-0164-overlays-Add-EETI-EXC3000-overlay.patch98
1 files changed, 98 insertions, 0 deletions
diff --git a/target/linux/brcm2708/patches-4.14/950-0164-overlays-Add-EETI-EXC3000-overlay.patch b/target/linux/brcm2708/patches-4.14/950-0164-overlays-Add-EETI-EXC3000-overlay.patch
new file mode 100644
index 0000000000..9db3667b12
--- /dev/null
+++ b/target/linux/brcm2708/patches-4.14/950-0164-overlays-Add-EETI-EXC3000-overlay.patch
@@ -0,0 +1,98 @@
+From e141a75b9cc36a09eb8bda90b530d97a9bb1f21e Mon Sep 17 00:00:00 2001
+From: Ahmet Inan <inan@aicodix.de>
+Date: Fri, 1 Sep 2017 15:18:01 +0200
+Subject: [PATCH 164/454] overlays: Add EETI EXC3000 overlay
+
+Add support for I2C connected EETI EXC3000 multiple touch controller
+using GPIO 4 (pin 7 on GPIO header) for interrupt.
+
+Signed-off-by: Ahmet Inan <inan@aicodix.de>
+---
+ arch/arm/boot/dts/overlays/Makefile | 1 +
+ arch/arm/boot/dts/overlays/README | 12 +++++
+ .../arm/boot/dts/overlays/exc3000-overlay.dts | 48 +++++++++++++++++++
+ 3 files changed, 61 insertions(+)
+ create mode 100644 arch/arm/boot/dts/overlays/exc3000-overlay.dts
+
+--- a/arch/arm/boot/dts/overlays/Makefile
++++ b/arch/arm/boot/dts/overlays/Makefile
+@@ -26,6 +26,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
+ dwc2.dtbo \
+ enc28j60.dtbo \
+ enc28j60-spi2.dtbo \
++ exc3000.dtbo \
+ fe-pi-audio.dtbo \
+ goodix.dtbo \
+ googlevoicehat-soundcard.dtbo \
+--- a/arch/arm/boot/dts/overlays/README
++++ b/arch/arm/boot/dts/overlays/README
+@@ -468,6 +468,18 @@ Params: int_pin GPIO use
+ speed SPI bus speed (default 12000000)
+
+
++Name: exc3000
++Info: Enables I2C connected EETI EXC3000 multiple touch controller using
++ GPIO 4 (pin 7 on GPIO header) for interrupt.
++Load: dtoverlay=exc3000,<param>=<val>
++Params: interrupt GPIO used for interrupt (default 4)
++ sizex Touchscreen size x (default 4096)
++ sizey Touchscreen size y (default 4096)
++ invx Touchscreen inverted x axis
++ invy Touchscreen inverted y axis
++ swapxy Touchscreen swapped x y axis
++
++
+ Name: fe-pi-audio
+ Info: Configures the Fe-Pi Audio Sound Card
+ Load: dtoverlay=fe-pi-audio
+--- /dev/null
++++ b/arch/arm/boot/dts/overlays/exc3000-overlay.dts
+@@ -0,0 +1,48 @@
++// Device tree overlay for I2C connected EETI EXC3000 multiple touch controller
++/dts-v1/;
++/plugin/;
++
++/ {
++ compatible = "brcm,bcm2708";
++
++ fragment@0 {
++ target = <&gpio>;
++ __overlay__ {
++ exc3000_pins: exc3000_pins {
++ brcm,pins = <4>; // interrupt
++ brcm,function = <0>; // in
++ brcm,pull = <2>; // pull-up
++ };
++ };
++ };
++
++ fragment@1 {
++ target = <&i2c1>;
++ __overlay__ {
++ #address-cells = <1>;
++ #size-cells = <0>;
++ status = "okay";
++
++ exc3000: exc3000@2a {
++ compatible = "eeti,exc3000";
++ reg = <0x2a>;
++ pinctrl-names = "default";
++ pinctrl-0 = <&exc3000_pins>;
++ interrupt-parent = <&gpio>;
++ interrupts = <4 8>; // active low level-sensitive
++ touchscreen-size-x = <4096>;
++ touchscreen-size-y = <4096>;
++ };
++ };
++ };
++
++ __overrides__ {
++ interrupt = <&exc3000_pins>,"brcm,pins:0",
++ <&exc3000>,"interrupts:0";
++ sizex = <&exc3000>,"touchscreen-size-x:0";
++ sizey = <&exc3000>,"touchscreen-size-y:0";
++ invx = <&exc3000>,"touchscreen-inverted-x?";
++ invy = <&exc3000>,"touchscreen-inverted-y?";
++ swapxy = <&exc3000>,"touchscreen-swapped-x-y?";
++ };
++};