summaryrefslogtreecommitdiff
path: root/arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi
diff options
context:
space:
mode:
authorHans de Goede <hdegoede@redhat.com>2016-08-08 21:43:13 +0200
committerMaxime Ripard <maxime.ripard@free-electrons.com>2016-08-22 20:34:54 +0200
commite8552107ae5845dd1d281cddca026ef0e4d30c80 (patch)
treedc0814837d1e48ba83c46a8e9f9090d284a22b98 /arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi
parent835dbe8ffafa45907495811cb2f3a57b2cccfa27 (diff)
ARM: dts: sun8i: reference-design-tablet: Add gsl1680 touchscreen node
Almost all sun8i tablets use a gsl1680 touchscreen controller, so add a node describing it to reference-design-tablet.dtsi. Almost all, but not all, so mark it as disabled by default (dts files will also need to supply a firmware-name and resolution info). Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Chen-Yu Tsai <wens@csie.org> Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Diffstat (limited to 'arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi')
-rw-r--r--arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi28
1 files changed, 28 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi b/arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi
index 9d9036140511..f29897c40ae8 100644
--- a/arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi
+++ b/arch/arm/boot/dts/sun8i-reference-design-tablet.dtsi
@@ -63,6 +63,27 @@
};
};
+&i2c0 {
+ /*
+ * The gsl1680 is rated at 400KHz and it will not work reliable at
+ * 100KHz, this has been confirmed on multiple different q8 tablets.
+ * The gsl1680 is the only device on this bus.
+ */
+ clock-frequency = <400000>;
+
+ gsl1680: touchscreen@40 {
+ compatible = "silead,gsl1680";
+ reg = <0x40>;
+ interrupt-parent = <&pio>;
+ interrupts = <1 5 IRQ_TYPE_EDGE_FALLING>; /* PB5 */
+ pinctrl-names = "default";
+ pinctrl-0 = <&ts_power_pin>;
+ power-gpios = <&pio 7 1 GPIO_ACTIVE_HIGH>; /* PH1 */
+ /* Most tablets use this touchscreen, but not all */
+ status = "disabled";
+ };
+};
+
&mmc0 {
pinctrl-names = "default";
pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>;
@@ -88,6 +109,13 @@
allwinner,pull = <SUN4I_PINCTRL_PULL_UP>;
};
+ ts_power_pin: ts_power_pin@0 {
+ allwinner,pins = "PH1";
+ allwinner,function = "gpio_out";
+ allwinner,drive = <SUN4I_PINCTRL_10_MA>;
+ allwinner,pull = <SUN4I_PINCTRL_NO_PULL>;
+ };
+
usb0_id_detect_pin: usb0_id_detect_pin@0 {
allwinner,pins = "PH8";
allwinner,function = "gpio_in";