1 From c0dfc87e355a7c6e434122e1a4fcc69729970610 Mon Sep 17 00:00:00 2001
2 From: Samuel Hsu <hsu@distec.de>
3 Date: Mon, 8 Apr 2019 17:06:44 +0200
4 Subject: [PATCH] BCM2708: Add core Device Tree support, ilitek251x
6 Signed-off-by: Samuel Hsu <hsu@distec.de>
8 arch/arm/boot/dts/overlays/Makefile | 1 +
9 arch/arm/boot/dts/overlays/README | 11 +++++
10 .../boot/dts/overlays/ilitek251x-overlay.dts | 45 +++++++++++++++++++
11 3 files changed, 57 insertions(+)
12 create mode 100644 arch/arm/boot/dts/overlays/ilitek251x-overlay.dts
14 --- a/arch/arm/boot/dts/overlays/Makefile
15 +++ b/arch/arm/boot/dts/overlays/Makefile
16 @@ -67,6 +67,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
22 iqaudio-dacplus.dtbo \
23 iqaudio-digi-wm8804-audio.dtbo \
24 --- a/arch/arm/boot/dts/overlays/README
25 +++ b/arch/arm/boot/dts/overlays/README
26 @@ -1146,6 +1146,17 @@ Load: dtoverlay=i2s-gpio28-31
31 +Info: Enables I2C connected Ilitek 251x multiple touch controller using
32 + GPIO 4 (pin 7 on GPIO header) for interrupt.
33 +Load: dtoverlay=ilitek251x,<param>=<val>
34 +Params: interrupt GPIO used for interrupt (default 4)
35 + sizex Touchscreen size x, horizontal resolution of
36 + touchscreen (in pixels)
37 + sizey Touchscreen size y, vertical resolution of
38 + touchscreen (in pixels)
42 Info: Configures the IQaudio DAC audio card
43 Load: dtoverlay=iqaudio-dac,<param>
45 +++ b/arch/arm/boot/dts/overlays/ilitek251x-overlay.dts
47 +// Device tree overlay for I2C connected Ilitek multiple touch controller
52 + compatible = "brcm,bcm2708";
57 + ili251x_pins: ili251x_pins {
58 + brcm,pins = <4>; // interrupt
59 + brcm,function = <0>; // in
60 + brcm,pull = <2>; // pull-up //
68 + #address-cells = <1>;
72 + ili251x: ili251x@41 {
73 + compatible = "ilitek,ili251x";
75 + pinctrl-names = "default";
76 + pinctrl-0 = <&ili251x_pins>;
77 + interrupt-parent = <&gpio>;
78 + interrupts = <4 8>; // high-to-low edge triggered
79 + touchscreen-size-x = <16384>;
80 + touchscreen-size-y = <9600>;
86 + interrupt = <&ili251x_pins>,"brcm,pins:0",
87 + <&ili251x>,"interrupts:0";
88 + sizex = <&ili251x>,"touchscreen-size-x:0";
89 + sizey = <&ili251x>,"touchscreen-size-y:0";