xref: /linux/arch/arm64/boot/dts/mediatek/mt8173-elm-hana.dtsi (revision b03917e02bf9861be887a7e67c399b3b014f88be)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * Copyright 2016 MediaTek Inc.
4 */
5
6#include "mt8173-elm.dtsi"
7
8&i2c0 {
9	clock-frequency = <200000>;
10};
11
12&i2c3 {
13	touchscreen2: touchscreen@34 {
14		compatible = "melfas,mip4_ts";
15		reg = <0x34>;
16		interrupts-extended = <&pio 88 IRQ_TYPE_LEVEL_LOW>;
17		status = "fail-needs-probe";
18	};
19
20	/*
21	 * Lenovo 100e Chromebook 2nd Gen (MTK) and Lenovo 300e Chromebook 2nd
22	 * Gen (MTK) are using synaptics touchscreen (hid-over-i2c driver) as a
23	 * second source touchscreen.
24	 */
25	touchscreen3: touchscreen@20 {
26		compatible = "hid-over-i2c";
27		reg = <0x20>;
28		hid-descr-addr = <0x0020>;
29		interrupts-extended = <&pio 88 IRQ_TYPE_LEVEL_LOW>;
30		status = "fail-needs-probe";
31	};
32
33	/* Lenovo Ideapad C330 uses G2Touch touchscreen as a 2nd source touchscreen */
34	touchscreen@40 {
35		compatible = "hid-over-i2c";
36		reg = <0x40>;
37		hid-descr-addr = <0x0001>;
38		interrupt-parent = <&pio>;
39		interrupts = <88 IRQ_TYPE_LEVEL_LOW>;
40		status = "fail-needs-probe";
41	};
42};
43
44&i2c4 {
45	/*
46	 * Lenovo 100e Chromebook 2nd Gen (MTK) and Lenovo 300e Chromebook 2nd
47	 * Gen (MTK) are using synaptics trackpad (hid-over-i2c driver) as a
48	 * second source trackpad.
49	 */
50	trackpad2: trackpad@2c {
51		compatible = "hid-over-i2c";
52		interrupts-extended = <&pio 117 IRQ_TYPE_LEVEL_LOW>;
53		pinctrl-names = "default";
54		pinctrl-0 = <&trackpad_irq>;
55		reg = <0x2c>;
56		hid-descr-addr = <0x0020>;
57		/*
58		 * The trackpad needs a post-power-on delay of 100ms,
59		 * but at time of writing, the power supply for it on
60		 * this board is always on. The delay is therefore not
61		 * added to avoid impacting the readiness of the
62		 * trackpad.
63		 */
64		vdd-supply = <&mt6397_vgp6_reg>;
65		wakeup-source;
66		status = "fail-needs-probe";
67	};
68};
69
70&mmc1 {
71	wp-gpios = <&pio 42 GPIO_ACTIVE_HIGH>;
72};
73
74&pio {
75	hdmi_mux_pins: hdmi_mux_pins {
76		pins2 {
77			pinmux = <MT8173_PIN_98_URTS1__FUNC_GPIO98>;
78			bias-pull-up;
79			output-high;
80		};
81	};
82
83	mmc1_pins_default: mmc1default {
84		pins_wp {
85			pinmux = <MT8173_PIN_42_DSI_TE__FUNC_GPIO42>;
86			input-enable;
87			bias-pull-up;
88		};
89	};
90};
91
92&touchscreen {
93	status = "fail-needs-probe";
94};
95
96&trackpad {
97	status = "fail-needs-probe";
98};
99