xref: /linux/arch/arm64/boot/dts/qcom/glymur-crd.dts (revision e65f4718a577fcc84d40431f022985898b6dbf2e)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4 */
5
6/dts-v1/;
7
8#include "glymur.dtsi"
9#include "glymur-crd.dtsi"
10
11#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
12
13/ {
14	model = "Qualcomm Technologies, Inc. Glymur CRD";
15	compatible = "qcom,glymur-crd", "qcom,glymur";
16
17	pmic-glink {
18		compatible = "qcom,glymur-pmic-glink",
19			     "qcom,pmic-glink";
20		#address-cells = <1>;
21		#size-cells = <0>;
22
23		connector@0 {
24			compatible = "usb-c-connector";
25			reg = <0>;
26			power-role = "dual";
27			data-role = "dual";
28
29			ports {
30				#address-cells = <1>;
31				#size-cells = <0>;
32
33				port@0 {
34					reg = <0>;
35
36					pmic_glink_hs_in: endpoint {
37						remote-endpoint = <&usb_0_dwc3_hs>;
38					};
39				};
40
41				port@1 {
42					reg = <1>;
43
44					pmic_glink_ss_in: endpoint {
45						remote-endpoint = <&usb_0_qmpphy_out>;
46					};
47				};
48			};
49		};
50
51		connector@1 {
52			compatible = "usb-c-connector";
53			reg = <1>;
54			power-role = "dual";
55			data-role = "dual";
56
57			ports {
58				#address-cells = <1>;
59				#size-cells = <0>;
60
61				port@0 {
62					reg = <0>;
63
64					pmic_glink_hs_in1: endpoint {
65						remote-endpoint = <&usb_1_dwc3_hs>;
66					};
67				};
68
69				port@1 {
70					reg = <1>;
71
72					pmic_glink_ss_in1: endpoint {
73						remote-endpoint = <&usb_1_qmpphy_out>;
74					};
75				};
76			};
77		};
78	};
79
80	vreg_edp_3p3: regulator-edp-3p3 {
81		compatible = "regulator-fixed";
82
83		regulator-name = "VREG_EDP_3P3";
84		regulator-min-microvolt = <3300000>;
85		regulator-max-microvolt = <3300000>;
86
87		gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>;
88		enable-active-high;
89
90		pinctrl-0 = <&edp_reg_en>;
91		pinctrl-names = "default";
92
93		regulator-boot-on;
94	};
95
96	vreg_misc_3p3: regulator-misc-3p3 {
97		compatible = "regulator-fixed";
98
99		regulator-name = "VREG_MISC_3P3";
100		regulator-min-microvolt = <3300000>;
101		regulator-max-microvolt = <3300000>;
102
103		gpio = <&pmh0110_f_e0_gpios 6 GPIO_ACTIVE_HIGH>;
104		enable-active-high;
105
106		pinctrl-0 = <&misc_3p3_reg_en>;
107		pinctrl-names = "default";
108
109		regulator-boot-on;
110	};
111};
112
113&i2c0 {
114	clock-frequency = <400000>;
115
116	status = "okay";
117
118	touchpad@2c {
119		compatible = "hid-over-i2c";
120		reg = <0x2c>;
121
122		hid-descr-addr = <0x20>;
123		interrupts-extended = <&tlmm 3 IRQ_TYPE_LEVEL_LOW>;
124
125		vdd-supply = <&vreg_misc_3p3>;
126		vddl-supply = <&vreg_l15b_e0_1p8>;
127
128		pinctrl-0 = <&tpad_default>;
129		pinctrl-names = "default";
130
131		wakeup-source;
132	};
133
134	keyboard@3a {
135		compatible = "hid-over-i2c";
136		reg = <0x3a>;
137
138		hid-descr-addr = <0x1>;
139		interrupts-extended = <&tlmm 67 IRQ_TYPE_LEVEL_LOW>;
140
141		vdd-supply = <&vreg_misc_3p3>;
142		vddl-supply = <&vreg_l15b_e0_1p8>;
143
144		pinctrl-0 = <&kybd_default>;
145		pinctrl-names = "default";
146
147		wakeup-source;
148	};
149};
150
151&i2c8 {
152	clock-frequency = <400000>;
153
154	status = "okay";
155
156	touchscreen@38 {
157		compatible = "hid-over-i2c";
158		reg = <0x38>;
159
160		hid-descr-addr = <0x1>;
161		interrupts-extended = <&tlmm 51 IRQ_TYPE_LEVEL_LOW>;
162
163		vdd-supply = <&vreg_misc_3p3>;
164		vddl-supply = <&vreg_l15b_e0_1p8>;
165
166		pinctrl-0 = <&ts0_default>;
167		pinctrl-names = "default";
168	};
169};
170
171&i2c5 {
172	clock-frequency = <400000>;
173
174	status = "okay";
175
176	ptn3222_0: redriver@43 {
177		compatible = "nxp,ptn3222";
178		reg = <0x43>;
179
180		reset-gpios = <&tlmm 8 GPIO_ACTIVE_LOW>;
181
182		vdd3v3-supply = <&vreg_l8b_e0_1p50>;
183		vdd1v8-supply = <&vreg_l15b_e0_1p8>;
184
185		#phy-cells = <0>;
186	};
187
188	ptn3222_1: redriver@47 {
189		compatible = "nxp,ptn3222";
190		reg = <0x47>;
191
192		reset-gpios = <&tlmm 9 GPIO_ACTIVE_LOW>;
193
194		vdd3v3-supply = <&vreg_l8b_e0_1p50>;
195		vdd1v8-supply = <&vreg_l15b_e0_1p8>;
196
197		#phy-cells = <0>;
198	};
199};
200
201&mdss {
202	status = "okay";
203};
204
205&mdss_dp0 {
206	status = "okay";
207};
208
209&mdss_dp0_out {
210	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
211};
212
213&mdss_dp1 {
214	status = "okay";
215};
216
217&mdss_dp1_out {
218	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
219};
220
221&mdss_dp3 {
222	/delete-property/ #sound-dai-cells;
223
224	status = "okay";
225
226	aux-bus {
227		panel {
228			compatible = "samsung,atna60cl08", "samsung,atna33xc20";
229			enable-gpios = <&tlmm 18 GPIO_ACTIVE_HIGH>;
230			power-supply = <&vreg_edp_3p3>;
231
232			pinctrl-0 = <&edp_bl_en>;
233			pinctrl-names = "default";
234
235			port {
236				edp_panel_in: endpoint {
237					remote-endpoint = <&mdss_dp3_out>;
238				};
239			};
240		};
241	};
242};
243
244&mdss_dp3_out {
245	data-lanes = <0 1 2 3>;
246	link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
247
248	remote-endpoint = <&edp_panel_in>;
249};
250
251&mdss_dp3_phy {
252	vdda-phy-supply = <&vreg_l2f_e1_0p83>;
253	vdda-pll-supply = <&vreg_l4f_e1_1p08>;
254
255	status = "okay";
256};
257
258&pmh0110_f_e0_gpios {
259	misc_3p3_reg_en: misc-3p3-reg-en-state {
260		pins = "gpio6";
261		function = "normal";
262		bias-disable;
263		input-disable;
264		output-enable;
265		drive-push-pull;
266		power-source = <1>; /* 1.8 V */
267		qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
268	};
269};
270
271&smb2370_j_e2_eusb2_repeater {
272	vdd18-supply = <&vreg_l15b_e0_1p8>;
273	vdd3-supply = <&vreg_l7b_e0_2p79>;
274};
275
276&smb2370_k_e2_eusb2_repeater {
277	vdd18-supply = <&vreg_l15b_e0_1p8>;
278	vdd3-supply = <&vreg_l7b_e0_2p79>;
279};
280
281&tlmm {
282	edp_bl_en: edp-bl-en-state {
283		pins = "gpio18";
284		function = "gpio";
285		drive-strength = <16>;
286		bias-disable;
287	};
288
289	edp_reg_en: edp-reg-en-state {
290		pins = "gpio70";
291		function = "gpio";
292		drive-strength = <16>;
293		bias-disable;
294	};
295
296	kybd_default: kybd-default-state {
297		pins = "gpio67";
298		function = "gpio";
299		bias-disable;
300	};
301
302	tpad_default: tpad-default-state {
303		pins = "gpio3";
304		function = "gpio";
305		bias-disable;
306	};
307
308	ts0_default: ts0-default-state {
309		int-n-pins {
310			pins = "gpio51";
311			function = "gpio";
312			bias-disable;
313		};
314
315		reset-n-pins {
316			pins = "gpio48";
317			function = "gpio";
318			drive-strength = <16>;
319			bias-disable;
320		};
321	};
322};
323
324&usb_0 {
325	dr_mode = "host";
326
327	status = "okay";
328};
329
330&usb_0_dwc3_hs {
331	remote-endpoint = <&pmic_glink_hs_in>;
332};
333
334&usb_0_hsphy {
335	vdd-supply = <&vreg_l3f_e0_0p72>;
336	vdda12-supply = <&vreg_l4h_e0_1p2>;
337
338	phys = <&smb2370_j_e2_eusb2_repeater>;
339
340	status = "okay";
341};
342
343&usb_0_qmpphy {
344	vdda-phy-supply = <&vreg_l4h_e0_1p2>;
345	vdda-pll-supply = <&vreg_l3f_e0_0p72>;
346	refgen-supply = <&vreg_l2f_e0_0p82>;
347
348	status = "okay";
349};
350
351&usb_0_qmpphy_out {
352	remote-endpoint = <&pmic_glink_ss_in>;
353};
354
355&usb_1 {
356	dr_mode = "host";
357
358	status = "okay";
359};
360
361&usb_1_dwc3_hs {
362	remote-endpoint = <&pmic_glink_hs_in1>;
363};
364
365&usb_1_hsphy {
366	vdd-supply = <&vreg_l3f_e0_0p72>;
367	vdda12-supply = <&vreg_l4h_e0_1p2>;
368
369	phys = <&smb2370_k_e2_eusb2_repeater>;
370
371	status = "okay";
372};
373
374&usb_1_qmpphy {
375	vdda-phy-supply = <&vreg_l4h_e0_1p2>;
376	vdda-pll-supply = <&vreg_l1h_e0_0p89>;
377	refgen-supply = <&vreg_l2f_e0_0p82>;
378
379	status = "okay";
380};
381
382&usb_1_qmpphy_out {
383	remote-endpoint = <&pmic_glink_ss_in1>;
384};
385
386&usb_hs {
387	status = "okay";
388};
389
390&usb_hs_phy {
391	vdd-supply = <&vreg_l2h_e0_0p72>;
392	vdda12-supply = <&vreg_l4h_e0_1p2>;
393
394	phys = <&ptn3222_1>;
395
396	status = "okay";
397};
398
399&usb_mp {
400	status = "okay";
401};
402
403&usb_mp_hsphy0 {
404	vdd-supply = <&vreg_l2h_e0_0p72>;
405	vdda12-supply = <&vreg_l4h_e0_1p2>;
406
407	phys = <&ptn3222_0>;
408
409	status = "okay";
410};
411
412&usb_mp_hsphy1 {
413	vdd-supply = <&vreg_l2h_e0_0p72>;
414	vdda12-supply = <&vreg_l4h_e0_1p2>;
415
416	status = "okay";
417};
418
419&usb_mp_qmpphy0 {
420	vdda-phy-supply = <&vreg_l4h_e0_1p2>;
421	vdda-pll-supply = <&vreg_l2h_e0_0p72>;
422	refgen-supply = <&vreg_l4f_e1_1p08>;
423
424	status = "okay";
425};
426
427&usb_mp_qmpphy1 {
428	vdda-phy-supply = <&vreg_l4h_e0_1p2>;
429	vdda-pll-supply = <&vreg_l2h_e0_0p72>;
430	refgen-supply = <&vreg_l4f_e1_1p08>;
431
432	status = "okay";
433};
434