xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/msm8916-wiko-chuppito.dts (revision 0fc8f6200d2313278fbf4539bbab74677c685531)
1// SPDX-License-Identifier: GPL-2.0-only
2
3/dts-v1/;
4
5#include "msm8916-pm8916.dtsi"
6#include "msm8916-modem-qdsp6.dtsi"
7
8#include <dt-bindings/gpio/gpio.h>
9#include <dt-bindings/input/input.h>
10#include <dt-bindings/pinctrl/qcom,pmic-mpp.h>
11
12/ {
13	model = "Wiko Pulp 4G";
14	compatible = "wiko,chuppito", "qcom,msm8916";
15	chassis-type = "handset";
16
17	aliases {
18		mmc0 = &sdhc_1; /* eMMC */
19		mmc1 = &sdhc_2; /* SD card */
20		serial0 = &blsp_uart2;
21	};
22
23	chosen {
24		stdout-path = "serial0";
25	};
26
27	backlight: backlight {
28		compatible = "pwm-backlight";
29		pwms = <&pm8916_pwm 0 100000>;
30		brightness-levels = <0 255>;
31		num-interpolated-steps = <255>;
32		default-brightness-level = <255>;
33		enable-gpios = <&tlmm 119 GPIO_ACTIVE_HIGH>;
34		pinctrl-0 = <&button_backlight_default>;
35		pinctrl-names = "default";
36	};
37
38	gpio-hall-sensor {
39		compatible = "gpio-keys";
40		pinctrl-0 = <&gpio_hall_sensor_default>;
41		pinctrl-names = "default";
42		label = "Hall Effect Sensor";
43
44		event-hall-sensor {
45			label = "Hall Effect Sensor";
46			gpios = <&tlmm 117 GPIO_ACTIVE_LOW>;
47			linux,input-type = <EV_SW>;
48			linux,code = <SW_LID>;
49			linux,can-disable;
50		};
51	};
52
53	gpio-keys {
54		compatible = "gpio-keys";
55		pinctrl-0 = <&gpio_keys_default>;
56		pinctrl-names = "default";
57		label = "Buttons";
58
59		button-volume-up {
60			label = "Volume up";
61			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
62			linux,code = <KEY_VOLUMEUP>;
63		};
64	};
65
66	usb_id: usb-id {
67		compatible = "linux,extcon-usb-gpio";
68		id-gpios = <&tlmm 110 GPIO_ACTIVE_HIGH>;
69		pinctrl-0 = <&usb_id_default>;
70		pinctrl-names = "default";
71	};
72};
73
74&blsp_i2c2 {
75	status = "okay";
76
77	magnetometer@c {
78		compatible = "asahi-kasei,ak09911";
79		reg = <0x0c>;
80		vdd-supply = <&pm8916_l17>;
81		vid-supply = <&pm8916_l6>;
82		reset-gpios = <&tlmm 120 GPIO_ACTIVE_LOW>;
83		pinctrl-0 = <&mag_reset_default>;
84		pinctrl-names = "default";
85		mount-matrix = "1",  "0", "0",
86			       "0", "1", "0",
87			       "0",  "0", "1";
88	};
89
90	proximity@48 {
91		compatible = "sensortek,stk3310";
92		reg = <0x48>;
93		interrupts-extended = <&tlmm 113 IRQ_TYPE_EDGE_FALLING>;
94		pinctrl-0 = <&proximity_int_default>;
95		pinctrl-names = "default";
96	};
97
98	imu@68 {
99		compatible = "invensense,mpu6880";
100		reg = <0x68>;
101		interrupts-extended = <&tlmm 115 IRQ_TYPE_EDGE_FALLING>;
102		vdd-supply = <&pm8916_l17>;
103		vddio-supply = <&pm8916_l6>;
104		pinctrl-0 = <&imu_int_default>;
105		pinctrl-names = "default";
106		mount-matrix = "0",  "-1", "0",
107			       "-1", "0", "0",
108			       "0",  "0", "-1";
109	};
110};
111
112&blsp_i2c5 {
113	status = "okay";
114
115	touchscreen@39 {
116		compatible = "syna,rmi4-i2c";
117		reg = <0x39>;
118		interrupts-extended = <&tlmm 13 IRQ_TYPE_EDGE_FALLING>;
119		vdd-supply = <&pm8916_l17>;
120		vio-supply = <&pm8916_l6>;
121		pinctrl-0 = <&touchscreen_default>;
122		pinctrl-names = "default";
123		#address-cells = <1>;
124		#size-cells = <0>;
125		syna,startup-delay-ms = <100>;
126		syna,reset-delay-ms = <160>;
127
128		rmi4-f01@1 {
129			reg = <0x1>;
130			syna,nosleep-mode = <1>;
131		};
132
133		rmi4-f11@11 {
134			reg = <0x11>;
135			syna,sensor-type = <1>;
136		};
137	};
138};
139
140&blsp_uart2 {
141	status = "okay";
142};
143
144&gpu {
145	status = "okay";
146};
147
148&mdss {
149	status = "okay";
150};
151
152&mpss_mem {
153	reg = <0x0 0x86800000 0x0 0x5600000>;
154};
155
156&pm8916_codec {
157	qcom,hphl-jack-type-normally-open;
158};
159
160&pm8916_mpps {
161	pwm_out: mpp4-state {
162		pins = "mpp4";
163		function = "digital";
164		power-source = <PM8916_MPP_VPH>;
165		output-low;
166		qcom,dtest = <1>;
167	};
168};
169
170&pm8916_pwm {
171	pinctrl-0 = <&pwm_out>;
172	pinctrl-names = "default";
173
174	status = "okay";
175};
176
177&pm8916_resin {
178	linux,code = <KEY_VOLUMEDOWN>;
179
180	status = "okay";
181};
182
183&pm8916_rpm_regulators {
184	pm8916_l17: l17 {
185		regulator-min-microvolt = <2850000>;
186		regulator-max-microvolt = <2850000>;
187	};
188};
189
190&pm8916_vib {
191	status = "okay";
192};
193
194&sdhc_1 {
195	status = "okay";
196};
197
198&sdhc_2 {
199	pinctrl-0 = <&sdc2_default>, <&sdc2_cd_default>;
200	pinctrl-1 = <&sdc2_sleep>, <&sdc2_cd_default>;
201	pinctrl-names = "default", "sleep";
202	cd-gpios = <&tlmm 38 GPIO_ACTIVE_HIGH>;
203
204	status = "okay";
205};
206
207&sound {
208	audio-routing = "AMIC1", "MIC BIAS Internal1",
209		"AMIC2", "MIC BIAS Internal2";
210};
211
212&tlmm {
213	button_backlight_default: button-backlight-default-state {
214		pins = "gpio119";
215		function = "gpio";
216		drive-strength = <2>;
217		bias-disable;
218	};
219
220	gpio_hall_sensor_default: gpio-hall-sensor-default-state {
221		pins = "gpio117";
222		function = "gpio";
223		drive-strength = <6>;
224		bias-pull-up;
225	};
226
227	gpio_keys_default: gpio-keys-default-state {
228		pins = "gpio107";
229		function = "gpio";
230		drive-strength = <2>;
231		bias-pull-up;
232	};
233
234	imu_int_default: imu-int-default-state {
235		pins = "gpio115";
236		function = "gpio";
237		drive-strength = <2>;
238		bias-disable;
239	};
240
241	mag_reset_default: mag-reset-default-state {
242		pins = "gpio120";
243		function = "gpio";
244		drive-strength = <2>;
245		bias-disable;
246	};
247
248	proximity_int_default: proximity-int-default-state {
249		pins = "gpio113";
250		function = "gpio";
251		drive-strength = <6>;
252		bias-pull-up;
253	};
254
255	sdc2_cd_default: sdc2-cd-default-state {
256		pins = "gpio38";
257		function = "gpio";
258		drive-strength = <2>;
259		bias-disable;
260	};
261
262	touchscreen_default: touchscreen-default-state {
263		touchscreen-pins {
264			pins = "gpio13";
265			function = "gpio";
266			drive-strength = <2>;
267			bias-pull-up;
268		};
269
270		reset-pins {
271			pins = "gpio12";
272			function = "gpio";
273			drive-strength = <2>;
274			bias-disable;
275		};
276	};
277
278	usb_id_default: usb-id-default-state {
279		pins = "gpio110";
280		function = "gpio";
281		drive-strength = <8>;
282		bias-pull-up;
283	};
284};
285
286&usb {
287	extcon = <&usb_id>, <&usb_id>;
288
289	status = "okay";
290};
291
292&usb_hs_phy {
293	extcon = <&usb_id>;
294};
295
296&venus {
297	status = "okay";
298};
299
300&venus_mem {
301	status = "okay";
302};
303
304&wcnss {
305	status = "okay";
306};
307
308&wcnss_iris {
309	compatible = "qcom,wcn3620";
310};
311
312&wcnss_mem {
313	status = "okay";
314};
315