xref: /linux/arch/arm/boot/dts/qcom/msm8926-sony-xperia-yukon-eagle.dts (revision cbe8aadf1551f3f4a853f24b3b96d9f0eea49c53)
1// SPDX-License-Identifier: BSD-3-Clause
2/*
3 * Copyright (c) 2026 Erikas Bitovtas <xerikasxx@gmail.com>
4 */
5
6/dts-v1/;
7
8#include "msm8926.dtsi"
9#include "pm8226.dtsi"
10
11/delete-node/ &adsp_region;
12/delete-node/ &mba_region;
13/delete-node/ &mpss_region;
14/delete-node/ &smem_region;
15
16/ {
17	model = "Sony Xperia M2";
18	compatible = "sony,eagle", "qcom,msm8926", "qcom,msm8226";
19	chassis-type = "handset";
20
21	aliases {
22		mmc0 = &sdhc_1;
23		mmc1 = &sdhc_2;
24		display0 = &framebuffer0;
25	};
26
27	chosen {
28		#address-cells = <1>;
29		#size-cells = <1>;
30		ranges;
31
32		stdout-path = "display0";
33
34		framebuffer0: framebuffer@3201000 {
35			compatible = "simple-framebuffer";
36			reg = <0x03201000 0x800000>;
37			width = <540>;
38			height = <960>;
39			stride = <(540 * 3)>;
40			format = "r8g8b8";
41
42			clocks = <&mmcc MDSS_AHB_CLK>,
43				 <&mmcc MDSS_AXI_CLK>,
44				 <&mmcc MDSS_BYTE0_CLK>,
45				 <&mmcc MDSS_MDP_CLK>,
46				 <&mmcc MDSS_PCLK0_CLK>,
47				 <&mmcc MDSS_VSYNC_CLK>;
48			power-domains = <&mmcc MDSS_GDSC>;
49		};
50	};
51
52	gpio-keys {
53		compatible = "gpio-keys";
54
55		pinctrl-0 = <&gpio_keys_default>;
56		pinctrl-names = "default";
57
58		button-camera-focus {
59			label = "Camera Focus";
60			gpios = <&tlmm 108 GPIO_ACTIVE_LOW>;
61			linux,code = <KEY_CAMERA_FOCUS>;
62			debounce-interval = <15>;
63		};
64
65		button-camera-snapshot {
66			label = "Camera Snapshot";
67			gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
68			linux,code = <KEY_CAMERA>;
69			debounce-interval = <15>;
70		};
71
72		button-volume-down {
73			label = "Volume Down";
74			gpios = <&tlmm 106 GPIO_ACTIVE_LOW>;
75			linux,code = <KEY_VOLUMEDOWN>;
76			debounce-interval = <15>;
77		};
78	};
79
80	reserved-memory {
81		framebuffer@3201000 {
82			reg = <0x03201000 0x800000>;
83			no-map;
84		};
85
86		mpss_region: mpss@8000000 {
87			reg = <0x08000000 0x4d00000>;
88			no-map;
89		};
90
91		reserved@cd00000 {
92			reg = <0x0cd00000 0x200000>;
93			no-map;
94		};
95
96		mba_region: mba@d100000 {
97			reg = <0x0d100000 0x3a000>;
98			no-map;
99		};
100
101		reserved@d13a000 {
102			reg = <0x0d13a000 0xc6000>;
103			no-map;
104		};
105
106		wcnss_region: wcnss@d200000 {
107			reg = <0x0d200000 0x5ae000>;
108			no-map;
109		};
110
111		reserved@d850000 {
112			reg = <0x0d850000 0x3b0000>;
113			no-map;
114		};
115
116		adsp_region: adsp@dc00000 {
117			reg = <0x0dc00000 0x1400000>;
118			no-map;
119		};
120
121		reserved@f000000 {
122			reg = <0x0f000000 0x500000>;
123			no-map;
124		};
125
126		venus_region: venus@f500000 {
127			reg = <0x0f500000 0x500000>;
128			no-map;
129		};
130
131		smem_region: smem@fa00000 {
132			reg = <0x0fa00000 0x100000>;
133			no-map;
134		};
135
136		reserved@fb00000 {
137			reg = <0x0fb00000 0x280000>;
138			no-map;
139		};
140
141		rmtfs@fd80000 {
142			compatible = "qcom,rmtfs-mem";
143			reg = <0x0fd80000 0x180000>;
144			no-map;
145
146			qcom,client-id = <1>;
147		};
148	};
149};
150
151&blsp1_i2c2 {
152	status = "okay";
153
154	accelerometer@f {
155		compatible = "kionix,kxtj21009";
156		reg = <0x0f>;
157
158		interrupts-extended = <&tlmm 49 IRQ_TYPE_EDGE_RISING>;
159
160		vdd-supply = <&pm8226_l19>;
161		vddio-supply = <&pm8226_lvs1>;
162
163		mount-matrix = "0",  "1", "0",
164			       "-1", "0", "0",
165			       "0",  "0", "1";
166	};
167
168	light-sensor@48 {
169		compatible = "sensortek,stk3310";
170		reg = <0x48>;
171
172		interrupts-extended = <&tlmm 65 IRQ_TYPE_EDGE_FALLING>;
173
174		proximity-near-level = <1700>;
175	};
176};
177
178&blsp1_i2c3 {
179	status = "okay";
180
181	nfc@28 {
182		compatible = "nxp,pn547", "nxp,nxp-nci-i2c";
183		reg = <0x28>;
184
185		interrupts-extended = <&tlmm 21 IRQ_TYPE_EDGE_RISING>;
186
187		enable-gpios = <&tlmm 20 GPIO_ACTIVE_HIGH>;
188		firmware-gpios = <&tlmm 22 GPIO_ACTIVE_HIGH>;
189	};
190};
191
192&pm8226_resin {
193	linux,code = <KEY_VOLUMEUP>;
194
195	status = "okay";
196};
197
198&pm8226_vib {
199	status = "okay";
200};
201
202&rpm_requests {
203	regulators {
204		compatible = "qcom,rpm-pm8226-regulators";
205
206		pm8226_s3: s3 {
207			regulator-min-microvolt = <1200000>;
208			regulator-max-microvolt = <1300000>;
209		};
210
211		pm8226_s4: s4 {
212			regulator-min-microvolt = <1800000>;
213			regulator-max-microvolt = <2200000>;
214		};
215
216		pm8226_s5: s5 {
217			regulator-min-microvolt = <1150000>;
218			regulator-max-microvolt = <1150000>;
219		};
220
221		pm8226_l1: l1 {
222			regulator-min-microvolt = <1225000>;
223			regulator-max-microvolt = <1225000>;
224		};
225
226		pm8226_l2: l2 {
227			regulator-min-microvolt = <1200000>;
228			regulator-max-microvolt = <1200000>;
229		};
230
231		pm8226_l3: l3 {
232			regulator-min-microvolt = <750000>;
233			regulator-max-microvolt = <1287500>;
234		};
235
236		pm8226_l4: l4 {
237			regulator-min-microvolt = <1200000>;
238			regulator-max-microvolt = <1200000>;
239		};
240
241		pm8226_l5: l5 {
242			regulator-min-microvolt = <1050000>;
243			regulator-max-microvolt = <1200000>;
244		};
245
246		pm8226_l6: l6 {
247			regulator-min-microvolt = <1800000>;
248			regulator-max-microvolt = <1800000>;
249		};
250
251		pm8226_l7: l7 {
252			regulator-min-microvolt = <1850000>;
253			regulator-max-microvolt = <1850000>;
254		};
255
256		pm8226_l8: l8 {
257			regulator-min-microvolt = <1800000>;
258			regulator-max-microvolt = <1800000>;
259		};
260
261		pm8226_l9: l9 {
262			regulator-min-microvolt = <2050000>;
263			regulator-max-microvolt = <2050000>;
264		};
265
266		pm8226_l10: l10 {
267			regulator-min-microvolt = <1800000>;
268			regulator-max-microvolt = <1800000>;
269		};
270
271		pm8226_l12: l12 {
272			regulator-min-microvolt = <1800000>;
273			regulator-max-microvolt = <1800000>;
274		};
275
276		pm8226_l14: l14 {
277			regulator-min-microvolt = <2750000>;
278			regulator-max-microvolt = <2750000>;
279		};
280
281		pm8226_l15: l15 {
282			regulator-min-microvolt = <2800000>;
283			regulator-max-microvolt = <2800000>;
284		};
285
286		pm8226_l16: l16 {
287			regulator-min-microvolt = <3000000>;
288			regulator-max-microvolt = <3350000>;
289		};
290
291		pm8226_l17: l17 {
292			regulator-min-microvolt = <2950000>;
293			regulator-max-microvolt = <2950000>;
294		};
295
296		pm8226_l18: l18 {
297			regulator-min-microvolt = <2950000>;
298			regulator-max-microvolt = <2950000>;
299
300			regulator-system-load = <200000>;
301			regulator-allow-set-load;
302		};
303
304		pm8226_l19: l19 {
305			regulator-min-microvolt = <2850000>;
306			regulator-max-microvolt = <2850000>;
307		};
308
309		pm8226_l20: l20 {
310			regulator-min-microvolt = <3075000>;
311			regulator-max-microvolt = <3075000>;
312		};
313
314		pm8226_l21: l21 {
315			regulator-min-microvolt = <1800000>;
316			regulator-max-microvolt = <2950000>;
317			regulator-allow-set-load;
318		};
319
320		pm8226_l22: l22 {
321			regulator-min-microvolt = <1800000>;
322			regulator-max-microvolt = <2950000>;
323		};
324
325		pm8226_l23: l23 {
326			regulator-min-microvolt = <1800000>;
327			regulator-max-microvolt = <2950000>;
328		};
329
330		pm8226_l24: l24 {
331			regulator-min-microvolt = <1300000>;
332			regulator-max-microvolt = <1350000>;
333		};
334
335		pm8226_l25: l25 {
336			regulator-min-microvolt = <1775000>;
337			regulator-max-microvolt = <2125000>;
338		};
339
340		pm8226_l26: l26 {
341			regulator-min-microvolt = <1225000>;
342			regulator-max-microvolt = <1225000>;
343		};
344
345		pm8226_l27: l27 {
346			regulator-min-microvolt = <2100000>;
347			regulator-max-microvolt = <2100000>;
348		};
349
350		pm8226_l28: l28 {
351			regulator-min-microvolt = <1800000>;
352			regulator-max-microvolt = <2950000>;
353		};
354
355		pm8226_lvs1: lvs1 {};
356	};
357};
358
359&smbb {
360	qcom,fast-charge-current-limit = <1500000>;
361	qcom,fast-charge-safe-voltage = <4250000>;
362	qcom,minimum-input-voltage = <4200000>;
363
364	status = "okay";
365};
366
367&sdhc_1 {
368	vmmc-supply = <&pm8226_l17>;
369	vqmmc-supply = <&pm8226_l6>;
370
371	bus-width = <8>;
372	non-removable;
373
374	status = "okay";
375};
376
377&sdhc_2 {
378	vmmc-supply = <&pm8226_l18>;
379	vqmmc-supply = <&pm8226_l21>;
380
381	bus-width = <4>;
382	cd-gpios = <&tlmm 38 GPIO_ACTIVE_LOW>;
383
384	status = "okay";
385};
386
387&tlmm {
388	gpio_keys_default: gpio-keys-default-state {
389		pins = "gpio106", "gpio107", "gpio108";
390		function = "gpio";
391		drive-strength = <2>;
392		bias-pull-up;
393	};
394};
395
396&usb {
397	extcon = <&smbb>;
398	dr_mode = "peripheral";
399
400	status = "okay";
401};
402
403&usb_hs_phy {
404	extcon = <&smbb>;
405	v1p8-supply = <&pm8226_l10>;
406	v3p3-supply = <&pm8226_l20>;
407};
408