xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/sdm632-motorola-ocean.dts (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1*cb7aa33aSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2*cb7aa33aSEmmanuel Vadot/*
3*cb7aa33aSEmmanuel Vadot * Copyright (c) 2022, Gabriela David
4*cb7aa33aSEmmanuel Vadot */
5*cb7aa33aSEmmanuel Vadot/dts-v1/;
6*cb7aa33aSEmmanuel Vadot
7*cb7aa33aSEmmanuel Vadot#include "sdm632.dtsi"
8*cb7aa33aSEmmanuel Vadot#include "pm8953.dtsi"
9*cb7aa33aSEmmanuel Vadot#include <dt-bindings/leds/common.h>
10*cb7aa33aSEmmanuel Vadot
11*cb7aa33aSEmmanuel Vadot/delete-node/ &cont_splash_mem;
12*cb7aa33aSEmmanuel Vadot/delete-node/ &qseecom_mem;
13*cb7aa33aSEmmanuel Vadot
14*cb7aa33aSEmmanuel Vadot/ {
15*cb7aa33aSEmmanuel Vadot	model = "Motorola G7 Power";
16*cb7aa33aSEmmanuel Vadot	compatible = "motorola,ocean", "qcom,sdm632";
17*cb7aa33aSEmmanuel Vadot	chassis-type = "handset";
18*cb7aa33aSEmmanuel Vadot	qcom,msm-id = <349 0>;
19*cb7aa33aSEmmanuel Vadot	qcom,board-id = <0x141 0xc100>;
20*cb7aa33aSEmmanuel Vadot	qcom,pmic-id = <0x10016 0x25 0x00 0x00>;
21*cb7aa33aSEmmanuel Vadot
22*cb7aa33aSEmmanuel Vadot	backlight: backlight {
23*cb7aa33aSEmmanuel Vadot		compatible = "led-backlight";
24*cb7aa33aSEmmanuel Vadot		leds = <&led>;
25*cb7aa33aSEmmanuel Vadot	};
26*cb7aa33aSEmmanuel Vadot
27*cb7aa33aSEmmanuel Vadot	chosen {
28*cb7aa33aSEmmanuel Vadot		#address-cells = <2>;
29*cb7aa33aSEmmanuel Vadot		#size-cells = <2>;
30*cb7aa33aSEmmanuel Vadot		ranges;
31*cb7aa33aSEmmanuel Vadot
32*cb7aa33aSEmmanuel Vadot		framebuffer@90001000 {
33*cb7aa33aSEmmanuel Vadot			compatible = "simple-framebuffer";
34*cb7aa33aSEmmanuel Vadot			reg = <0 0x90001000 0 (720 * 1520 * 3)>;
35*cb7aa33aSEmmanuel Vadot
36*cb7aa33aSEmmanuel Vadot			width = <720>;
37*cb7aa33aSEmmanuel Vadot			height = <1520>;
38*cb7aa33aSEmmanuel Vadot			stride = <(720 * 3)>;
39*cb7aa33aSEmmanuel Vadot			format = "r8g8b8";
40*cb7aa33aSEmmanuel Vadot
41*cb7aa33aSEmmanuel Vadot			power-domains = <&gcc MDSS_GDSC>;
42*cb7aa33aSEmmanuel Vadot
43*cb7aa33aSEmmanuel Vadot			clocks = <&gcc GCC_MDSS_AHB_CLK>,
44*cb7aa33aSEmmanuel Vadot				 <&gcc GCC_MDSS_AXI_CLK>,
45*cb7aa33aSEmmanuel Vadot				 <&gcc GCC_MDSS_VSYNC_CLK>,
46*cb7aa33aSEmmanuel Vadot				 <&gcc GCC_MDSS_MDP_CLK>,
47*cb7aa33aSEmmanuel Vadot				 <&gcc GCC_MDSS_BYTE0_CLK>,
48*cb7aa33aSEmmanuel Vadot				 <&gcc GCC_MDSS_PCLK0_CLK>,
49*cb7aa33aSEmmanuel Vadot				 <&gcc GCC_MDSS_ESC0_CLK>;
50*cb7aa33aSEmmanuel Vadot		};
51*cb7aa33aSEmmanuel Vadot	};
52*cb7aa33aSEmmanuel Vadot
53*cb7aa33aSEmmanuel Vadot	gpio-keys {
54*cb7aa33aSEmmanuel Vadot		compatible = "gpio-keys";
55*cb7aa33aSEmmanuel Vadot
56*cb7aa33aSEmmanuel Vadot		pinctrl-names = "default";
57*cb7aa33aSEmmanuel Vadot		pinctrl-0 = <&gpio_key_default>;
58*cb7aa33aSEmmanuel Vadot
59*cb7aa33aSEmmanuel Vadot		key-volume-up {
60*cb7aa33aSEmmanuel Vadot			label = "Volume Up";
61*cb7aa33aSEmmanuel Vadot			gpios = <&tlmm 85 GPIO_ACTIVE_LOW>;
62*cb7aa33aSEmmanuel Vadot			linux,code = <KEY_VOLUMEUP>;
63*cb7aa33aSEmmanuel Vadot		};
64*cb7aa33aSEmmanuel Vadot	};
65*cb7aa33aSEmmanuel Vadot
66*cb7aa33aSEmmanuel Vadot	reserved-memory {
67*cb7aa33aSEmmanuel Vadot		qseecom_mem: qseecom@84300000 {
68*cb7aa33aSEmmanuel Vadot			reg = <0x0 0x84300000 0x0 0x2000000>;
69*cb7aa33aSEmmanuel Vadot			no-map;
70*cb7aa33aSEmmanuel Vadot		};
71*cb7aa33aSEmmanuel Vadot
72*cb7aa33aSEmmanuel Vadot		cont_splash_mem: cont-splash@90001000 {
73*cb7aa33aSEmmanuel Vadot			reg = <0x0 0x90001000 0x0 (720 * 1520 * 3)>;
74*cb7aa33aSEmmanuel Vadot			no-map;
75*cb7aa33aSEmmanuel Vadot		};
76*cb7aa33aSEmmanuel Vadot
77*cb7aa33aSEmmanuel Vadot		reserved@eefa1800 {
78*cb7aa33aSEmmanuel Vadot			reg = <0x00 0xeefa1800 0x00 0x5e800>;
79*cb7aa33aSEmmanuel Vadot			no-map;
80*cb7aa33aSEmmanuel Vadot		};
81*cb7aa33aSEmmanuel Vadot
82*cb7aa33aSEmmanuel Vadot		ramoops@ef000000 {
83*cb7aa33aSEmmanuel Vadot			compatible = "ramoops";
84*cb7aa33aSEmmanuel Vadot			reg = <0x0 0xef000000 0x0 0xbf800>;
85*cb7aa33aSEmmanuel Vadot			console-size = <0x40000>;
86*cb7aa33aSEmmanuel Vadot			pmsg-size = <0x40000>;
87*cb7aa33aSEmmanuel Vadot			record-size = <0x3f800>;
88*cb7aa33aSEmmanuel Vadot		};
89*cb7aa33aSEmmanuel Vadot	};
90*cb7aa33aSEmmanuel Vadot
91*cb7aa33aSEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
92*cb7aa33aSEmmanuel Vadot		compatible = "regulator-fixed";
93*cb7aa33aSEmmanuel Vadot		regulator-name = "vph_pwr";
94*cb7aa33aSEmmanuel Vadot		regulator-always-on;
95*cb7aa33aSEmmanuel Vadot		regulator-boot-on;
96*cb7aa33aSEmmanuel Vadot	};
97*cb7aa33aSEmmanuel Vadot};
98*cb7aa33aSEmmanuel Vadot
99*cb7aa33aSEmmanuel Vadot&hsusb_phy {
100*cb7aa33aSEmmanuel Vadot	vdd-supply = <&pm8953_l3>;
101*cb7aa33aSEmmanuel Vadot	vdda-pll-supply = <&pm8953_l7>;
102*cb7aa33aSEmmanuel Vadot	vdda-phy-dpdm-supply = <&pm8953_l13>;
103*cb7aa33aSEmmanuel Vadot
104*cb7aa33aSEmmanuel Vadot	status = "okay";
105*cb7aa33aSEmmanuel Vadot};
106*cb7aa33aSEmmanuel Vadot
107*cb7aa33aSEmmanuel Vadot&i2c_3 {
108*cb7aa33aSEmmanuel Vadot	status = "okay";
109*cb7aa33aSEmmanuel Vadot
110*cb7aa33aSEmmanuel Vadot	touchscreen@41 {
111*cb7aa33aSEmmanuel Vadot		compatible = "ilitek,ili2117";
112*cb7aa33aSEmmanuel Vadot		reg = <0x41>;
113*cb7aa33aSEmmanuel Vadot
114*cb7aa33aSEmmanuel Vadot		interrupt-parent = <&tlmm>;
115*cb7aa33aSEmmanuel Vadot		interrupts = <65 IRQ_TYPE_EDGE_FALLING>;
116*cb7aa33aSEmmanuel Vadot
117*cb7aa33aSEmmanuel Vadot		touchscreen-inverted-x;
118*cb7aa33aSEmmanuel Vadot	};
119*cb7aa33aSEmmanuel Vadot};
120*cb7aa33aSEmmanuel Vadot
121*cb7aa33aSEmmanuel Vadot&i2c_5 {
122*cb7aa33aSEmmanuel Vadot	status = "okay";
123*cb7aa33aSEmmanuel Vadot
124*cb7aa33aSEmmanuel Vadot	led-controller@36 {
125*cb7aa33aSEmmanuel Vadot		compatible = "ti,lm3697";
126*cb7aa33aSEmmanuel Vadot		reg = <0x36>;
127*cb7aa33aSEmmanuel Vadot
128*cb7aa33aSEmmanuel Vadot		#address-cells = <1>;
129*cb7aa33aSEmmanuel Vadot		#size-cells = <0>;
130*cb7aa33aSEmmanuel Vadot
131*cb7aa33aSEmmanuel Vadot		led: led@1 {
132*cb7aa33aSEmmanuel Vadot			reg = <1>;
133*cb7aa33aSEmmanuel Vadot			default-trigger = "backlight";
134*cb7aa33aSEmmanuel Vadot			function = LED_FUNCTION_BACKLIGHT;
135*cb7aa33aSEmmanuel Vadot			led-sources = <0 1 2>;
136*cb7aa33aSEmmanuel Vadot		};
137*cb7aa33aSEmmanuel Vadot	};
138*cb7aa33aSEmmanuel Vadot};
139*cb7aa33aSEmmanuel Vadot
140*cb7aa33aSEmmanuel Vadot&pm8953_resin {
141*cb7aa33aSEmmanuel Vadot	linux,code = <KEY_VOLUMEDOWN>;
142*cb7aa33aSEmmanuel Vadot	status = "okay";
143*cb7aa33aSEmmanuel Vadot};
144*cb7aa33aSEmmanuel Vadot
145*cb7aa33aSEmmanuel Vadot&rpm_requests {
146*cb7aa33aSEmmanuel Vadot	regulators {
147*cb7aa33aSEmmanuel Vadot		compatible = "qcom,rpm-pm8953-regulators";
148*cb7aa33aSEmmanuel Vadot
149*cb7aa33aSEmmanuel Vadot		vdd_l1-supply = <&pm8953_s3>;
150*cb7aa33aSEmmanuel Vadot		vdd_l2_l3-supply = <&pm8953_s3>;
151*cb7aa33aSEmmanuel Vadot		vdd_l4_l5_l6_l7_l16_l19-supply = <&pm8953_s4>;
152*cb7aa33aSEmmanuel Vadot		vdd_l8_l11_l12_l13_l14_l15-supply = <&vph_pwr>;
153*cb7aa33aSEmmanuel Vadot		vdd_l9_l10_l17_l18_l22-supply = <&vph_pwr>;
154*cb7aa33aSEmmanuel Vadot
155*cb7aa33aSEmmanuel Vadot		pm8953_s3: s3 {
156*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <984000>;
157*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1240000>;
158*cb7aa33aSEmmanuel Vadot		};
159*cb7aa33aSEmmanuel Vadot
160*cb7aa33aSEmmanuel Vadot		pm8953_s4: s4 {
161*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1036000>;
162*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <2040000>;
163*cb7aa33aSEmmanuel Vadot		};
164*cb7aa33aSEmmanuel Vadot
165*cb7aa33aSEmmanuel Vadot		pm8953_l1: l1 {
166*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <975000>;
167*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1050000>;
168*cb7aa33aSEmmanuel Vadot		};
169*cb7aa33aSEmmanuel Vadot
170*cb7aa33aSEmmanuel Vadot		pm8953_l2: l2 {
171*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <975000>;
172*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1175000>;
173*cb7aa33aSEmmanuel Vadot		};
174*cb7aa33aSEmmanuel Vadot
175*cb7aa33aSEmmanuel Vadot		pm8953_l3: l3 {
176*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <925000>;
177*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <925000>;
178*cb7aa33aSEmmanuel Vadot			regulator-allow-set-load;
179*cb7aa33aSEmmanuel Vadot		};
180*cb7aa33aSEmmanuel Vadot
181*cb7aa33aSEmmanuel Vadot		pm8953_l5: l5 {
182*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
183*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
184*cb7aa33aSEmmanuel Vadot		};
185*cb7aa33aSEmmanuel Vadot
186*cb7aa33aSEmmanuel Vadot		pm8953_l6: l6 {
187*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
188*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
189*cb7aa33aSEmmanuel Vadot			regulator-always-on;
190*cb7aa33aSEmmanuel Vadot			regulator-boot-on;
191*cb7aa33aSEmmanuel Vadot		};
192*cb7aa33aSEmmanuel Vadot
193*cb7aa33aSEmmanuel Vadot		pm8953_l7: l7 {
194*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
195*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1900000>;
196*cb7aa33aSEmmanuel Vadot		};
197*cb7aa33aSEmmanuel Vadot
198*cb7aa33aSEmmanuel Vadot		pm8953_l8: l8 {
199*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <2900000>;
200*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <2900000>;
201*cb7aa33aSEmmanuel Vadot		};
202*cb7aa33aSEmmanuel Vadot
203*cb7aa33aSEmmanuel Vadot		pm8953_l9: l9 {
204*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <3000000>;
205*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <3300000>;
206*cb7aa33aSEmmanuel Vadot		};
207*cb7aa33aSEmmanuel Vadot
208*cb7aa33aSEmmanuel Vadot		pm8953_l10: l10 {
209*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <2800000>;
210*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <3000000>;
211*cb7aa33aSEmmanuel Vadot		};
212*cb7aa33aSEmmanuel Vadot
213*cb7aa33aSEmmanuel Vadot		pm8953_l11: l11 {
214*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <2950000>;
215*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <2950000>;
216*cb7aa33aSEmmanuel Vadot		};
217*cb7aa33aSEmmanuel Vadot
218*cb7aa33aSEmmanuel Vadot		pm8953_l12: l12 {
219*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
220*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <2950000>;
221*cb7aa33aSEmmanuel Vadot		};
222*cb7aa33aSEmmanuel Vadot
223*cb7aa33aSEmmanuel Vadot		pm8953_l13: l13 {
224*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <3125000>;
225*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <3125000>;
226*cb7aa33aSEmmanuel Vadot		};
227*cb7aa33aSEmmanuel Vadot
228*cb7aa33aSEmmanuel Vadot		pm8953_l16: l16 {
229*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
230*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
231*cb7aa33aSEmmanuel Vadot		};
232*cb7aa33aSEmmanuel Vadot
233*cb7aa33aSEmmanuel Vadot		pm8953_l17: l17 {
234*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <2850000>;
235*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <2850000>;
236*cb7aa33aSEmmanuel Vadot		};
237*cb7aa33aSEmmanuel Vadot
238*cb7aa33aSEmmanuel Vadot		pm8953_l18: l18 {
239*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
240*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <2700000>;
241*cb7aa33aSEmmanuel Vadot			regulator-always-on;
242*cb7aa33aSEmmanuel Vadot			regulator-boot-on;
243*cb7aa33aSEmmanuel Vadot		};
244*cb7aa33aSEmmanuel Vadot
245*cb7aa33aSEmmanuel Vadot		pm8953_l19: l19 {
246*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
247*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1350000>;
248*cb7aa33aSEmmanuel Vadot		};
249*cb7aa33aSEmmanuel Vadot
250*cb7aa33aSEmmanuel Vadot		pm8953_l22: l22 {
251*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
252*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
253*cb7aa33aSEmmanuel Vadot			regulator-always-on;
254*cb7aa33aSEmmanuel Vadot		};
255*cb7aa33aSEmmanuel Vadot
256*cb7aa33aSEmmanuel Vadot		pm8953_l23: l23 {
257*cb7aa33aSEmmanuel Vadot			regulator-min-microvolt = <975000>;
258*cb7aa33aSEmmanuel Vadot			regulator-max-microvolt = <1225000>;
259*cb7aa33aSEmmanuel Vadot		};
260*cb7aa33aSEmmanuel Vadot	};
261*cb7aa33aSEmmanuel Vadot};
262*cb7aa33aSEmmanuel Vadot
263*cb7aa33aSEmmanuel Vadot&sdhc_1 {
264*cb7aa33aSEmmanuel Vadot	vmmc-supply = <&pm8953_l8>;
265*cb7aa33aSEmmanuel Vadot	vqmmc-supply = <&pm8953_l5>;
266*cb7aa33aSEmmanuel Vadot
267*cb7aa33aSEmmanuel Vadot	status = "okay";
268*cb7aa33aSEmmanuel Vadot};
269*cb7aa33aSEmmanuel Vadot
270*cb7aa33aSEmmanuel Vadot&sdhc_2 {
271*cb7aa33aSEmmanuel Vadot	vmmc-supply = <&pm8953_l11>;
272*cb7aa33aSEmmanuel Vadot	vqmmc-supply = <&pm8953_l12>;
273*cb7aa33aSEmmanuel Vadot
274*cb7aa33aSEmmanuel Vadot	pinctrl-names = "default", "sleep";
275*cb7aa33aSEmmanuel Vadot	pinctrl-0 = <&sdc2_clk_on &sdc2_cmd_on &sdc2_data_on &sdc2_cd_on>;
276*cb7aa33aSEmmanuel Vadot	pinctrl-1 = <&sdc2_clk_off &sdc2_cmd_off &sdc2_data_off &sdc2_cd_off>;
277*cb7aa33aSEmmanuel Vadot
278*cb7aa33aSEmmanuel Vadot	status = "okay";
279*cb7aa33aSEmmanuel Vadot};
280*cb7aa33aSEmmanuel Vadot
281*cb7aa33aSEmmanuel Vadot&tlmm {
282*cb7aa33aSEmmanuel Vadot	gpio-reserved-ranges = <96 4>;
283*cb7aa33aSEmmanuel Vadot};
284*cb7aa33aSEmmanuel Vadot
285*cb7aa33aSEmmanuel Vadot&usb3 {
286*cb7aa33aSEmmanuel Vadot	status = "okay";
287*cb7aa33aSEmmanuel Vadot};
288*cb7aa33aSEmmanuel Vadot
289*cb7aa33aSEmmanuel Vadot&usb3_dwc3 {
290*cb7aa33aSEmmanuel Vadot	dr_mode = "peripheral";
291*cb7aa33aSEmmanuel Vadot};
292