xref: /openbmc/linux/arch/arm64/boot/dts/qcom/msm8953-xiaomi-tissot.dts (revision 7d7ae873b5e0f46d19e5dc818d1a7809e4b7cc81)
1cf152c05SDanila Tikhonov// SPDX-License-Identifier: BSD-3-Clause
2cf152c05SDanila Tikhonov/*
3cf152c05SDanila Tikhonov * Copyright (c) 2022, Danila Tikhonov <JIaxyga@protonmail.com>
4cf152c05SDanila Tikhonov * Copyright (c) 2022, Anton Bambura <jenneron@protonmail.com>
5cf152c05SDanila Tikhonov */
6cf152c05SDanila Tikhonov/dts-v1/;
7cf152c05SDanila Tikhonov
8cf152c05SDanila Tikhonov#include "msm8953.dtsi"
9cf152c05SDanila Tikhonov#include "pm8953.dtsi"
10cf152c05SDanila Tikhonov#include "pmi8950.dtsi"
11cf152c05SDanila Tikhonov#include <dt-bindings/leds/common.h>
12cf152c05SDanila Tikhonov
13cf152c05SDanila Tikhonov/delete-node/ &adsp_fw_mem;
14cf152c05SDanila Tikhonov/delete-node/ &qseecom_mem;
15cf152c05SDanila Tikhonov/delete-node/ &wcnss_fw_mem;
16cf152c05SDanila Tikhonov
17cf152c05SDanila Tikhonov/ {
18cf152c05SDanila Tikhonov	model = "Xiaomi Mi A1";
19cf152c05SDanila Tikhonov	compatible = "xiaomi,tissot", "qcom,msm8953";
20cf152c05SDanila Tikhonov	chassis-type = "handset";
21cf152c05SDanila Tikhonov	qcom,msm-id = <293 0>;
22cf152c05SDanila Tikhonov	qcom,board-id = <0x1000b 0x00>;
23cf152c05SDanila Tikhonov
24cf152c05SDanila Tikhonov	gpio-keys {
25cf152c05SDanila Tikhonov		compatible = "gpio-keys";
26cf152c05SDanila Tikhonov
27cf152c05SDanila Tikhonov		pinctrl-names = "default";
28cf152c05SDanila Tikhonov		pinctrl-0 = <&gpio_key_default>, <&gpio_hall_sensor_default>;
29cf152c05SDanila Tikhonov
30cf152c05SDanila Tikhonov		event-hall-sensor {
31cf152c05SDanila Tikhonov			label = "Hall Effect Sensor";
32cf152c05SDanila Tikhonov			gpios = <&tlmm 44 GPIO_ACTIVE_LOW>;
33cf152c05SDanila Tikhonov			linux,input-type = <EV_SW>;
34cf152c05SDanila Tikhonov			linux,code = <SW_LID>;
35cf152c05SDanila Tikhonov			linux,can-disable;
36cf152c05SDanila Tikhonov		};
37cf152c05SDanila Tikhonov
38cf152c05SDanila Tikhonov		key-volume-up {
39cf152c05SDanila Tikhonov			label = "Volume Up";
40cf152c05SDanila Tikhonov			gpios = <&tlmm 85 GPIO_ACTIVE_LOW>;
41cf152c05SDanila Tikhonov			linux,code = <KEY_VOLUMEUP>;
42cf152c05SDanila Tikhonov		};
43cf152c05SDanila Tikhonov	};
44cf152c05SDanila Tikhonov
45cf152c05SDanila Tikhonov	reserved-memory {
46cf152c05SDanila Tikhonov		qseecom_mem: qseecom@84a00000 {
47cf152c05SDanila Tikhonov			reg = <0x0 0x84a00000 0x0 0x1900000>;
48cf152c05SDanila Tikhonov			no-map;
49cf152c05SDanila Tikhonov		};
50cf152c05SDanila Tikhonov
51cf152c05SDanila Tikhonov		adsp_fw_mem: adsp@8d600000 {
52cf152c05SDanila Tikhonov			reg = <0x0 0x8d600000 0x0 0x1200000>;
53cf152c05SDanila Tikhonov			no-map;
54cf152c05SDanila Tikhonov		};
55cf152c05SDanila Tikhonov
56cf152c05SDanila Tikhonov		wcnss_fw_mem: wcnss@8e800000 {
57cf152c05SDanila Tikhonov			reg = <0x0 0x8e800000 0x0 0x700000>;
58cf152c05SDanila Tikhonov			no-map;
59cf152c05SDanila Tikhonov		};
60cf152c05SDanila Tikhonov
61cf152c05SDanila Tikhonov		ramoops@9ff00000 {
62cf152c05SDanila Tikhonov			compatible = "ramoops";
63cf152c05SDanila Tikhonov			reg = <0x0 0x9ff00000 0x0 0x00100000>;
64cf152c05SDanila Tikhonov			record-size = <0x1000>;
65cf152c05SDanila Tikhonov			console-size = <0x80000>;
66cf152c05SDanila Tikhonov			ftrace-size = <0x1000>;
67cf152c05SDanila Tikhonov			pmsg-size = <0x8000>;
68cf152c05SDanila Tikhonov		};
69cf152c05SDanila Tikhonov	};
70cf152c05SDanila Tikhonov
71cf152c05SDanila Tikhonov	vph_pwr: vph-pwr-regulator {
72cf152c05SDanila Tikhonov		compatible = "regulator-fixed";
73cf152c05SDanila Tikhonov		regulator-name = "vph_pwr";
74cf152c05SDanila Tikhonov		regulator-always-on;
75cf152c05SDanila Tikhonov		regulator-boot-on;
76cf152c05SDanila Tikhonov	};
77cf152c05SDanila Tikhonov};
78cf152c05SDanila Tikhonov
79cf152c05SDanila Tikhonov&hsusb_phy {
80cf152c05SDanila Tikhonov	vdd-supply = <&pm8953_l3>;
81cf152c05SDanila Tikhonov	vdda-pll-supply = <&pm8953_l7>;
82cf152c05SDanila Tikhonov	vdda-phy-dpdm-supply = <&pm8953_l13>;
83cf152c05SDanila Tikhonov
84cf152c05SDanila Tikhonov	status = "okay";
85cf152c05SDanila Tikhonov};
86cf152c05SDanila Tikhonov
87cf152c05SDanila Tikhonov&i2c_2 {
88cf152c05SDanila Tikhonov	status = "okay";
89cf152c05SDanila Tikhonov
90cf152c05SDanila Tikhonov	max98927_codec: audio-codec@3a {
91cf152c05SDanila Tikhonov		compatible = "maxim,max98927";
92cf152c05SDanila Tikhonov		reg = <0x3a>;
93cf152c05SDanila Tikhonov
94cf152c05SDanila Tikhonov		reset-gpios = <&tlmm 86 GPIO_ACTIVE_LOW>;
95cf152c05SDanila Tikhonov
96cf152c05SDanila Tikhonov		vmon-slot-no = <1>;
97cf152c05SDanila Tikhonov		imon-slot-no = <1>;
98cf152c05SDanila Tikhonov
997c075512SKrzysztof Kozlowski		#sound-dai-cells = <0>;
100cf152c05SDanila Tikhonov	};
101cf152c05SDanila Tikhonov
102cf152c05SDanila Tikhonov	led-controller@45 {
103cf152c05SDanila Tikhonov		compatible = "awinic,aw2013";
104cf152c05SDanila Tikhonov		reg = <0x45>;
105cf152c05SDanila Tikhonov
106cf152c05SDanila Tikhonov		vcc-supply = <&pm8953_l10>;
107*8c80b6c3SStephan Gerhold		vio-supply = <&pm8953_l5>;
108cf152c05SDanila Tikhonov
109cf152c05SDanila Tikhonov		#address-cells = <1>;
110cf152c05SDanila Tikhonov		#size-cells = <0>;
111cf152c05SDanila Tikhonov
112cf152c05SDanila Tikhonov		led@0 {
113cf152c05SDanila Tikhonov			reg = <0>;
114cf152c05SDanila Tikhonov			led-max-microamp = <5000>;
115cf152c05SDanila Tikhonov			function = LED_FUNCTION_INDICATOR;
116cf152c05SDanila Tikhonov			color = <LED_COLOR_ID_WHITE>;
117cf152c05SDanila Tikhonov		};
118cf152c05SDanila Tikhonov	};
119cf152c05SDanila Tikhonov};
120cf152c05SDanila Tikhonov
121cf152c05SDanila Tikhonov&i2c_3 {
122cf152c05SDanila Tikhonov	status = "okay";
123cf152c05SDanila Tikhonov
124cf152c05SDanila Tikhonov	touchscreen@38 {
125cf152c05SDanila Tikhonov		compatible = "edt,edt-ft5406";
126cf152c05SDanila Tikhonov		reg = <0x38>;
127cf152c05SDanila Tikhonov
128cf152c05SDanila Tikhonov		interrupt-parent = <&tlmm>;
129cf152c05SDanila Tikhonov		interrupts = <65 IRQ_TYPE_EDGE_FALLING>;
130cf152c05SDanila Tikhonov
131cf152c05SDanila Tikhonov		pinctrl-names = "default";
132cf152c05SDanila Tikhonov		pinctrl-0 = <&ts_int_default>;
133cf152c05SDanila Tikhonov
134cf152c05SDanila Tikhonov		reset-gpios = <&tlmm 64 GPIO_ACTIVE_LOW>;
135cf152c05SDanila Tikhonov
136cf152c05SDanila Tikhonov		vcc-supply = <&pm8953_l10>;
137cf152c05SDanila Tikhonov
138cf152c05SDanila Tikhonov		touchscreen-size-x = <1080>;
139cf152c05SDanila Tikhonov		touchscreen-size-y = <1920>;
140cf152c05SDanila Tikhonov	};
141cf152c05SDanila Tikhonov};
142cf152c05SDanila Tikhonov
143cf152c05SDanila Tikhonov&pm8953_resin {
144cf152c05SDanila Tikhonov	linux,code = <KEY_VOLUMEDOWN>;
145cf152c05SDanila Tikhonov	status = "okay";
146cf152c05SDanila Tikhonov};
147cf152c05SDanila Tikhonov
148cf152c05SDanila Tikhonov&pmi8950_wled {
149cf152c05SDanila Tikhonov	qcom,num-strings = <2>;
150cf152c05SDanila Tikhonov	qcom,external-pfet;
151cf152c05SDanila Tikhonov	qcom,cabc;
152cf152c05SDanila Tikhonov
153cf152c05SDanila Tikhonov	status = "okay";
154cf152c05SDanila Tikhonov};
155cf152c05SDanila Tikhonov
156cf152c05SDanila Tikhonov&rpm_requests {
157cf152c05SDanila Tikhonov	regulators {
158cf152c05SDanila Tikhonov		compatible = "qcom,rpm-pm8953-regulators";
159cf152c05SDanila Tikhonov
160cf152c05SDanila Tikhonov		vdd_s1-supply = <&vph_pwr>;
161cf152c05SDanila Tikhonov		vdd_s2-supply = <&vph_pwr>;
162cf152c05SDanila Tikhonov		vdd_s3-supply = <&vph_pwr>;
163cf152c05SDanila Tikhonov		vdd_s4-supply = <&vph_pwr>;
164cf152c05SDanila Tikhonov		vdd_s5-supply = <&vph_pwr>;
165cf152c05SDanila Tikhonov		vdd_s6-supply = <&vph_pwr>;
166cf152c05SDanila Tikhonov		vdd_s7-supply = <&vph_pwr>;
167cf152c05SDanila Tikhonov		vdd_l1-supply = <&pm8953_s3>;
168cf152c05SDanila Tikhonov		vdd_l2_l3-supply = <&pm8953_s3>;
169cf152c05SDanila Tikhonov		vdd_l4_l5_l6_l7_l16_l19-supply = <&pm8953_s4>;
170cf152c05SDanila Tikhonov		vdd_l8_l11_l12_l13_l14_l15-supply = <&vph_pwr>;
171cf152c05SDanila Tikhonov		vdd_l9_l10_l17_l18_l22-supply = <&vph_pwr>;
172cf152c05SDanila Tikhonov
173cf152c05SDanila Tikhonov		pm8953_s1: s1 {
174cf152c05SDanila Tikhonov			regulator-min-microvolt = <870000>;
175cf152c05SDanila Tikhonov			regulator-max-microvolt = <1156000>;
176cf152c05SDanila Tikhonov		};
177cf152c05SDanila Tikhonov
178cf152c05SDanila Tikhonov		pm8953_s3: s3 {
179cf152c05SDanila Tikhonov			regulator-min-microvolt = <1224000>;
180cf152c05SDanila Tikhonov			regulator-max-microvolt = <1224000>;
181cf152c05SDanila Tikhonov		};
182cf152c05SDanila Tikhonov
183cf152c05SDanila Tikhonov		pm8953_s4: s4 {
184cf152c05SDanila Tikhonov			regulator-min-microvolt = <1900000>;
185cf152c05SDanila Tikhonov			regulator-max-microvolt = <2050000>;
186cf152c05SDanila Tikhonov		};
187cf152c05SDanila Tikhonov
188cf152c05SDanila Tikhonov		pm8953_l1: l1 {
189cf152c05SDanila Tikhonov			regulator-min-microvolt = <1000000>;
190cf152c05SDanila Tikhonov			regulator-max-microvolt = <1000000>;
191cf152c05SDanila Tikhonov		};
192cf152c05SDanila Tikhonov
193cf152c05SDanila Tikhonov		pm8953_l2: l2 {
194cf152c05SDanila Tikhonov			regulator-min-microvolt = <1200000>;
195cf152c05SDanila Tikhonov			regulator-max-microvolt = <1225000>;
196cf152c05SDanila Tikhonov		};
197cf152c05SDanila Tikhonov
198cf152c05SDanila Tikhonov		pm8953_l3: l3 {
199cf152c05SDanila Tikhonov			regulator-min-microvolt = <925000>;
200cf152c05SDanila Tikhonov			regulator-max-microvolt = <925000>;
201cf152c05SDanila Tikhonov		};
202cf152c05SDanila Tikhonov
203cf152c05SDanila Tikhonov		pm8953_l5: l5 {
204cf152c05SDanila Tikhonov			regulator-min-microvolt = <1800000>;
205cf152c05SDanila Tikhonov			regulator-max-microvolt = <1800000>;
206cf152c05SDanila Tikhonov		};
207cf152c05SDanila Tikhonov
208cf152c05SDanila Tikhonov		pm8953_l6: l6 {
209cf152c05SDanila Tikhonov			regulator-min-microvolt = <1800000>;
210cf152c05SDanila Tikhonov			regulator-max-microvolt = <1800000>;
211cf152c05SDanila Tikhonov		};
212cf152c05SDanila Tikhonov
213cf152c05SDanila Tikhonov		pm8953_l7: l7 {
214cf152c05SDanila Tikhonov			regulator-min-microvolt = <1800000>;
215cf152c05SDanila Tikhonov			regulator-max-microvolt = <1900000>;
216cf152c05SDanila Tikhonov		};
217cf152c05SDanila Tikhonov
218cf152c05SDanila Tikhonov		pm8953_l8: l8 {
219cf152c05SDanila Tikhonov			regulator-min-microvolt = <2900000>;
220cf152c05SDanila Tikhonov			regulator-max-microvolt = <2900000>;
221cf152c05SDanila Tikhonov		};
222cf152c05SDanila Tikhonov
223cf152c05SDanila Tikhonov		pm8953_l9: l9 {
224cf152c05SDanila Tikhonov			regulator-min-microvolt = <3300000>;
225cf152c05SDanila Tikhonov			regulator-max-microvolt = <3300000>;
226cf152c05SDanila Tikhonov		};
227cf152c05SDanila Tikhonov
228cf152c05SDanila Tikhonov		pm8953_l10:l10 {
229cf152c05SDanila Tikhonov			regulator-min-microvolt = <2850000>;
230cf152c05SDanila Tikhonov			regulator-max-microvolt = <2850000>;
231cf152c05SDanila Tikhonov		};
232cf152c05SDanila Tikhonov
233cf152c05SDanila Tikhonov		pm8953_l11: l11 {
234cf152c05SDanila Tikhonov			regulator-min-microvolt = <2950000>;
235cf152c05SDanila Tikhonov			regulator-max-microvolt = <2950000>;
236cf152c05SDanila Tikhonov		};
237cf152c05SDanila Tikhonov
238cf152c05SDanila Tikhonov		pm8953_l12: l12 {
239cf152c05SDanila Tikhonov			regulator-min-microvolt = <1800000>;
240cf152c05SDanila Tikhonov			regulator-max-microvolt = <2950000>;
241cf152c05SDanila Tikhonov		};
242cf152c05SDanila Tikhonov
243cf152c05SDanila Tikhonov		pm8953_l13: l13 {
244cf152c05SDanila Tikhonov			regulator-min-microvolt = <3125000>;
245cf152c05SDanila Tikhonov			regulator-max-microvolt = <3125000>;
246cf152c05SDanila Tikhonov		};
247cf152c05SDanila Tikhonov
248cf152c05SDanila Tikhonov		pm8953_l16: l16 {
249cf152c05SDanila Tikhonov			regulator-min-microvolt = <1800000>;
250cf152c05SDanila Tikhonov			regulator-max-microvolt = <1800000>;
251cf152c05SDanila Tikhonov		};
252cf152c05SDanila Tikhonov
253cf152c05SDanila Tikhonov		pm8953_l17: l17 {
254cf152c05SDanila Tikhonov			regulator-min-microvolt = <2750000>;
255cf152c05SDanila Tikhonov			regulator-max-microvolt = <2850000>;
256cf152c05SDanila Tikhonov		};
257cf152c05SDanila Tikhonov
258cf152c05SDanila Tikhonov		pm8953_l19: l19 {
259cf152c05SDanila Tikhonov			regulator-min-microvolt = <1200000>;
260cf152c05SDanila Tikhonov			regulator-max-microvolt = <1350000>;
261cf152c05SDanila Tikhonov		};
262cf152c05SDanila Tikhonov
263cf152c05SDanila Tikhonov		pm8953_l22: l22 {
264cf152c05SDanila Tikhonov			regulator-min-microvolt = <2800000>;
265cf152c05SDanila Tikhonov			regulator-max-microvolt = <2800000>;
266cf152c05SDanila Tikhonov		};
267cf152c05SDanila Tikhonov
268cf152c05SDanila Tikhonov		pm8953_l23: l23 {
269cf152c05SDanila Tikhonov			regulator-min-microvolt = <1200000>;
270cf152c05SDanila Tikhonov			regulator-max-microvolt = <1225000>;
271cf152c05SDanila Tikhonov		};
272cf152c05SDanila Tikhonov	};
273cf152c05SDanila Tikhonov};
274cf152c05SDanila Tikhonov
275cf152c05SDanila Tikhonov&sdhc_1 {
276cf152c05SDanila Tikhonov	vmmc-supply = <&pm8953_l8>;
277cf152c05SDanila Tikhonov	vqmmc-supply = <&pm8953_l5>;
278cf152c05SDanila Tikhonov
279cf152c05SDanila Tikhonov	status = "okay";
280cf152c05SDanila Tikhonov};
281cf152c05SDanila Tikhonov
282cf152c05SDanila Tikhonov&sdhc_2 {
283cf152c05SDanila Tikhonov	vmmc-supply = <&pm8953_l11>;
284cf152c05SDanila Tikhonov	vqmmc-supply = <&pm8953_l12>;
285cf152c05SDanila Tikhonov
286cf152c05SDanila Tikhonov	cd-gpios = <&tlmm 133 GPIO_ACTIVE_HIGH>;
287cf152c05SDanila Tikhonov
288cf152c05SDanila Tikhonov	pinctrl-names = "default", "sleep";
289cf152c05SDanila Tikhonov	pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
290cf152c05SDanila Tikhonov	pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
291cf152c05SDanila Tikhonov
292cf152c05SDanila Tikhonov	status = "okay";
293cf152c05SDanila Tikhonov};
294cf152c05SDanila Tikhonov
295cf152c05SDanila Tikhonov&tlmm {
296cf152c05SDanila Tikhonov	gpio-reserved-ranges = <0 4>, <16 4>, <135 4>;
297cf152c05SDanila Tikhonov
298cf152c05SDanila Tikhonov	gpio_hall_sensor_default: gpio-hall-sensor-state {
299cf152c05SDanila Tikhonov		pins = "gpio44";
300cf152c05SDanila Tikhonov		function = "gpio";
301cf152c05SDanila Tikhonov		drive-strength = <2>;
302cf152c05SDanila Tikhonov		bias-pull-up;
303cf152c05SDanila Tikhonov	};
304cf152c05SDanila Tikhonov
305cf152c05SDanila Tikhonov	ts_int_default: ts-int-default-state {
306cf152c05SDanila Tikhonov		pins = "gpio65";
307cf152c05SDanila Tikhonov		function = "gpio";
308cf152c05SDanila Tikhonov		drive-strength = <2>;
309cf152c05SDanila Tikhonov		bias-pull-up;
310cf152c05SDanila Tikhonov	};
311cf152c05SDanila Tikhonov};
312cf152c05SDanila Tikhonov
313cf152c05SDanila Tikhonov&uart_0 {
314cf152c05SDanila Tikhonov	pinctrl-names = "default";
315cf152c05SDanila Tikhonov	pinctrl-0 = <&uart_console_active>;
316cf152c05SDanila Tikhonov
317cf152c05SDanila Tikhonov	status = "okay";
318cf152c05SDanila Tikhonov};
319cf152c05SDanila Tikhonov
320cf152c05SDanila Tikhonov&usb3 {
321cf152c05SDanila Tikhonov	status = "okay";
322cf152c05SDanila Tikhonov};
323cf152c05SDanila Tikhonov
324cf152c05SDanila Tikhonov&usb3_dwc3 {
325cf152c05SDanila Tikhonov	dr_mode = "peripheral";
326cf152c05SDanila Tikhonov};
327