xref: /linux/scripts/dtc/include-prefixes/arm/qcom/qcom-msm8974-samsung-hlte.dts (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1// SPDX-License-Identifier: GPL-2.0
2#include "qcom-msm8974.dtsi"
3#include "pm8841.dtsi"
4#include "pm8941.dtsi"
5#include <dt-bindings/input/input.h>
6#include <dt-bindings/leds/common.h>
7#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
8
9/ {
10	model = "Samsung Galaxy Note 3";
11	compatible = "samsung,hlte", "qcom,msm8974";
12	chassis-type = "handset";
13
14	aliases {
15		mmc0 = &sdhc_1; /* SDC1 eMMC slot */
16		mmc1 = &sdhc_3; /* SDC3 SD card slot */
17		serial0 = &blsp1_uart1;
18	};
19
20	chosen {
21		stdout-path = "serial0:115200n8";
22	};
23
24	gpio-keys {
25		compatible = "gpio-keys";
26
27		pinctrl-0 = <&gpio_keys_pin_a>;
28		pinctrl-names = "default";
29
30		key-home {
31			label = "Home Key";
32			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
33			linux,code = <KEY_HOMEPAGE>;
34			wakeup-source;
35			debounce-interval = <15>;
36		};
37
38		key-volume-down {
39			label = "Volume Down";
40			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
41			linux,code = <KEY_VOLUMEDOWN>;
42			debounce-interval = <15>;
43		};
44
45		key-volume-up {
46			label = "Volume Up";
47			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
48			linux,code = <KEY_VOLUMEUP>;
49			debounce-interval = <15>;
50		};
51	};
52
53	touch_ldo: regulator-touch {
54		compatible = "regulator-fixed";
55		regulator-name = "touch-ldo";
56
57		gpio = <&pm8941_gpios 9 GPIO_ACTIVE_HIGH>;
58		enable-active-high;
59		regulator-boot-on;
60
61		pinctrl-0 = <&touch_ldo_pin>;
62		pinctrl-names = "default";
63	};
64};
65
66&blsp1_i2c2 {
67	status = "okay";
68
69	touchscreen@20 {
70		compatible = "syna,rmi4-i2c";
71		reg = <0x20>;
72
73		interrupt-parent = <&pm8941_gpios>;
74		interrupts = <30 IRQ_TYPE_EDGE_FALLING>;
75
76		vdd-supply = <&pm8941_l10>;
77		vio-supply = <&touch_ldo>;
78
79		pinctrl-0 = <&touch_pin>;
80		pinctrl-names = "default";
81
82		syna,startup-delay-ms = <100>;
83
84		#address-cells = <1>;
85		#size-cells = <0>;
86
87		rmi4-f01@1 {
88			reg = <0x1>;
89			syna,nosleep-mode = <1>;
90		};
91
92		rmi4-f12@12 {
93			reg = <0x12>;
94			syna,sensor-type = <1>;
95		};
96	};
97};
98
99&blsp2_i2c6 {
100	status = "okay";
101
102	fuelgauge@36 {
103		compatible = "maxim,max17048";
104		reg = <0x36>;
105
106		maxim,double-soc;
107		maxim,rcomp = /bits/ 8 <0x56>;
108
109		interrupt-parent = <&pm8941_gpios>;
110		interrupts = <26 IRQ_TYPE_EDGE_FALLING>;
111
112		pinctrl-0 = <&fuelgauge_pin>;
113		pinctrl-names = "default";
114	};
115};
116
117&blsp1_uart2 {
118	status = "okay";
119};
120
121&pm8941_gpios {
122	gpio_keys_pin_a: gpio-keys-active-state {
123		pins = "gpio2", "gpio3", "gpio5";
124		function = "normal";
125		bias-pull-up;
126		power-source = <PM8941_GPIO_S3>;
127	};
128
129	fuelgauge_pin: fuelgauge-int-state {
130		pins = "gpio26";
131		function = "normal";
132		bias-disable;
133		input-enable;
134		power-source = <PM8941_GPIO_S3>;
135	};
136
137	touch_pin: touchscreen-int-state {
138		pins = "gpio30";
139		function = "normal";
140		bias-disable;
141		input-enable;
142		power-source = <PM8941_GPIO_S3>;
143	};
144
145	touch_ldo_pin: touchscreen-ldo-state {
146		pins = "gpio9";
147		function = "normal";
148		output-high;
149		power-source = <PM8941_GPIO_S3>;
150		qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>;
151	};
152};
153
154&remoteproc_adsp {
155	cx-supply = <&pm8841_s2>;
156	status = "okay";
157};
158
159&remoteproc_mss {
160	cx-supply = <&pm8841_s2>;
161	mss-supply = <&pm8841_s3>;
162	mx-supply = <&pm8841_s1>;
163	pll-supply = <&pm8941_l12>;
164	status = "okay";
165};
166
167&rpm_requests {
168	regulators-0 {
169		compatible = "qcom,rpm-pm8841-regulators";
170
171		pm8841_s1: s1 {
172			regulator-min-microvolt = <675000>;
173			regulator-max-microvolt = <1050000>;
174		};
175
176		pm8841_s2: s2 {
177			regulator-min-microvolt = <500000>;
178			regulator-max-microvolt = <1050000>;
179		};
180
181		pm8841_s3: s3 {
182			regulator-min-microvolt = <1050000>;
183			regulator-max-microvolt = <1050000>;
184		};
185
186		pm8841_s4: s4 {
187			regulator-min-microvolt = <815000>;
188			regulator-max-microvolt = <900000>;
189		};
190	};
191
192	regulators-1 {
193		compatible = "qcom,rpm-pm8941-regulators";
194
195		pm8941_s1: s1 {
196			regulator-min-microvolt = <1300000>;
197			regulator-max-microvolt = <1300000>;
198			regulator-always-on;
199		};
200
201		pm8941_s2: s2 {
202			regulator-min-microvolt = <2150000>;
203			regulator-max-microvolt = <2150000>;
204		};
205
206		pm8941_s3: s3 {
207			regulator-min-microvolt = <1800000>;
208			regulator-max-microvolt = <1800000>;
209		};
210
211		pm8941_l1: l1 {
212			regulator-min-microvolt = <1200000>;
213			regulator-max-microvolt = <1200000>;
214		};
215
216		pm8941_l2: l2 {
217			regulator-min-microvolt = <1200000>;
218			regulator-max-microvolt = <1200000>;
219		};
220
221		pm8941_l3: l3 {
222			regulator-min-microvolt = <1050000>;
223			regulator-max-microvolt = <1225000>;
224		};
225
226		pm8941_l4: l4 {
227			regulator-min-microvolt = <1225000>;
228			regulator-max-microvolt = <1225000>;
229		};
230
231		pm8941_l5: l5 {
232			regulator-min-microvolt = <1800000>;
233			regulator-max-microvolt = <1800000>;
234		};
235
236		pm8941_l6: l6 {
237			regulator-min-microvolt = <1800000>;
238			regulator-max-microvolt = <1800000>;
239		};
240
241		pm8941_l7: l7 {
242			regulator-min-microvolt = <1800000>;
243			regulator-max-microvolt = <1800000>;
244		};
245
246		pm8941_l8: l8 {
247			regulator-min-microvolt = <1800000>;
248			regulator-max-microvolt = <1800000>;
249		};
250
251		pm8941_l9: l9 {
252			regulator-min-microvolt = <1800000>;
253			regulator-max-microvolt = <2950000>;
254		};
255
256		pm8941_l10: l10 {
257			regulator-min-microvolt = <1800000>;
258			regulator-max-microvolt = <1800000>;
259		};
260
261		pm8941_l11: l11 {
262			regulator-min-microvolt = <1200000>;
263			regulator-max-microvolt = <1350000>;
264		};
265
266		pm8941_l12: l12 {
267			regulator-min-microvolt = <1800000>;
268			regulator-max-microvolt = <1800000>;
269			regulator-always-on;
270		};
271
272		pm8941_l13: l13 {
273			regulator-min-microvolt = <1800000>;
274			regulator-max-microvolt = <3300000>;
275		};
276
277		pm8941_l14: l14 {
278			regulator-min-microvolt = <1800000>;
279			regulator-max-microvolt = <1800000>;
280		};
281
282		pm8941_l15: l15 {
283			regulator-min-microvolt = <2050000>;
284			regulator-max-microvolt = <2050000>;
285		};
286
287		pm8941_l16: l16 {
288			regulator-min-microvolt = <2700000>;
289			regulator-max-microvolt = <2700000>;
290		};
291
292		pm8941_l17: l17 {
293			regulator-min-microvolt = <2850000>;
294			regulator-max-microvolt = <3000000>;
295		};
296
297		pm8941_l18: l18 {
298			regulator-min-microvolt = <2850000>;
299			regulator-max-microvolt = <2850000>;
300		};
301
302		pm8941_l19: l19 {
303			regulator-min-microvolt = <2900000>;
304			regulator-max-microvolt = <3350000>;
305		};
306
307		pm8941_l20: l20 {
308			regulator-min-microvolt = <2950000>;
309			regulator-max-microvolt = <2950000>;
310			regulator-system-load = <200000>;
311			regulator-allow-set-load;
312		};
313
314		pm8941_l21: l21 {
315			regulator-min-microvolt = <2950000>;
316			regulator-max-microvolt = <2950000>;
317			regulator-system-load = <200000>;
318			regulator-allow-set-load;
319		};
320
321		pm8941_l22: l22 {
322			regulator-min-microvolt = <2500000>;
323			regulator-max-microvolt = <3000000>;
324		};
325
326		pm8941_l23: l23 {
327			regulator-min-microvolt = <2400000>;
328			regulator-max-microvolt = <3300000>;
329		};
330
331		pm8941_l24: l24 {
332			regulator-min-microvolt = <3075000>;
333			regulator-max-microvolt = <3075000>;
334		};
335	};
336};
337
338&sdhc_1 {
339	vmmc-supply = <&pm8941_l20>;
340	vqmmc-supply = <&pm8941_s3>;
341
342	pinctrl-0 = <&sdhc1_pin_a>;
343	pinctrl-names = "default";
344
345	status = "okay";
346};
347
348&sdhc_3 {
349	max-frequency = <100000000>;
350
351	vmmc-supply = <&pm8941_l21>;
352	vqmmc-supply = <&pm8941_l21>;
353
354	pinctrl-0 = <&sdhc3_pin_a>;
355	pinctrl-names = "default";
356
357	status = "okay";
358};
359
360&tlmm {
361	sdhc1_pin_a: sdhc1-pin-active-state {
362		clk-pins {
363			pins = "sdc1_clk";
364			drive-strength = <4>;
365			bias-disable;
366		};
367
368		cmd-data-pins {
369			pins = "sdc1_cmd", "sdc1_data";
370			drive-strength = <4>;
371			bias-pull-up;
372		};
373	};
374
375	sdhc3_pin_a: sdhc3-pin-active-state {
376		pins = "gpio35", "gpio36", "gpio37", "gpio38", "gpio39", "gpio40";
377		function = "sdc3";
378		drive-strength = <8>;
379		bias-disable;
380	};
381};
382
383&usb {
384	phys = <&usb_hs1_phy>;
385	phy-select = <&tcsr 0xb000 0>;
386
387	hnp-disable;
388	srp-disable;
389	adp-disable;
390
391	status = "okay";
392};
393
394&usb_hs1_phy {
395	v1p8-supply = <&pm8941_l6>;
396	v3p3-supply = <&pm8941_l24>;
397
398	qcom,init-seq = /bits/ 8 <0x1 0x64>;
399
400	status = "okay";
401};
402