xref: /linux/arch/arm64/boot/dts/qcom/msm8916-motorola-common.dtsi (revision a3a02a52bcfcbcc4a637d4b68bf1bc391c9fad02)
1// SPDX-License-Identifier: GPL-2.0-only
2
3#include "msm8916-pm8916.dtsi"
4#include "msm8916-modem-qdsp6.dtsi"
5
6#include <dt-bindings/gpio/gpio.h>
7#include <dt-bindings/input/input.h>
8#include <dt-bindings/interrupt-controller/irq.h>
9
10/ {
11	aliases {
12		mmc0 = &sdhc_1; /* eMMC */
13		mmc1 = &sdhc_2; /* SD card */
14		serial0 = &blsp_uart1;
15	};
16
17	chosen {
18		stdout-path = "serial0";
19	};
20
21	gpio-keys {
22		compatible = "gpio-keys";
23
24		pinctrl-0 = <&gpio_keys_default>;
25		pinctrl-names = "default";
26
27		label = "GPIO Buttons";
28
29		volume-up-button {
30			label = "Volume Up";
31			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
32			linux,code = <KEY_VOLUMEUP>;
33			debounce-interval = <15>;
34		};
35	};
36
37	usb_id: usb-id {
38		compatible = "linux,extcon-usb-gpio";
39		id-gpios = <&tlmm 91 GPIO_ACTIVE_HIGH>;
40		pinctrl-0 = <&usb_id_default>;
41		pinctrl-1 = <&usb_id_sleep>;
42		pinctrl-names = "default", "sleep";
43	};
44};
45
46&blsp_i2c2 {
47	status = "okay";
48
49	touchscreen: touchscreen@20 {
50		compatible = "syna,rmi4-i2c";
51		reg = <0x20>;
52		#address-cells = <1>;
53		#size-cells = <0>;
54
55		vio-supply = <&pm8916_l6>;
56
57		syna,startup-delay-ms = <100>;
58
59		rmi4-f01@1 {
60			reg = <1>;
61			syna,nosleep-mode = <1>; /* Allow sleeping */
62		};
63
64		rmi4-f11@11 {
65			reg = <11>;
66			syna,sensor-type = <1>; /* Touchscreen */
67		};
68	};
69};
70
71&blsp_uart1 {
72	status = "okay";
73};
74
75&mpss_mem {
76	reg = <0x0 0x86800000 0x0 0x5500000>;
77};
78
79&pm8916_resin {
80	linux,code = <KEY_VOLUMEDOWN>;
81	status = "okay";
82};
83
84&pm8916_rpm_regulators {
85	pm8916_l16: l16 {
86		regulator-min-microvolt = <3100000>;
87		regulator-max-microvolt = <3300000>;
88	};
89};
90
91&pm8916_vib {
92	status = "okay";
93};
94
95&sdhc_1 {
96	status = "okay";
97};
98
99&sdhc_2 {
100	status = "okay";
101};
102
103&usb {
104	extcon = <&usb_id>, <&usb_id>;
105	status = "okay";
106};
107
108&usb_hs_phy {
109	extcon = <&usb_id>;
110};
111
112&venus {
113	status = "okay";
114};
115
116&venus_mem {
117	status = "okay";
118};
119
120&wcnss {
121	status = "okay";
122};
123
124&wcnss_iris {
125	compatible = "qcom,wcn3620";
126};
127
128&wcnss_mem {
129	status = "okay";
130};
131
132/* CTS/RTX are not used */
133&blsp_uart1_default {
134	pins = "gpio0", "gpio1";
135};
136&blsp_uart1_sleep {
137	pins = "gpio0", "gpio1";
138};
139
140&tlmm {
141	gpio_keys_default: gpio-keys-default-state {
142		pins = "gpio107";
143		function = "gpio";
144		drive-strength = <2>;
145		bias-pull-up;
146	};
147
148	usb_id_default: usb-id-default-state {
149		pins = "gpio91";
150		function = "gpio";
151		drive-strength = <8>;
152		bias-pull-up;
153	};
154
155	usb_id_sleep: usb-id-sleep-state {
156		pins = "gpio91";
157		function = "gpio";
158		drive-strength = <8>;
159		bias-disable;
160	};
161};
162