Linux Audio

Check our new training course

Loading...
Note: File does not exist in v6.8.
  1#include "qcom-msm8974.dtsi"
  2#include "qcom-pm8841.dtsi"
  3#include "qcom-pm8941.dtsi"
  4#include <dt-bindings/gpio/gpio.h>
  5#include <dt-bindings/input/input.h>
  6#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
  7
  8/ {
  9	model = "Sony Xperia Z1";
 10	compatible = "sony,xperia-honami", "qcom,msm8974";
 11
 12	aliases {
 13		serial0 = &blsp1_uart2;
 14	};
 15
 16	chosen {
 17		stdout-path = "serial0:115200n8";
 18	};
 19
 20	gpio-keys {
 21		compatible = "gpio-keys";
 22		input-name = "gpio-keys";
 23
 24		pinctrl-names = "default";
 25		pinctrl-0 = <&gpio_keys_pin_a>;
 26
 27		volume-down {
 28			label = "volume_down";
 29			gpios = <&pm8941_gpios 2 GPIO_ACTIVE_LOW>;
 30			linux,input-type = <1>;
 31			linux,code = <KEY_VOLUMEDOWN>;
 32		};
 33
 34		camera-snapshot {
 35			label = "camera_snapshot";
 36			gpios = <&pm8941_gpios 3 GPIO_ACTIVE_LOW>;
 37			linux,input-type = <1>;
 38			linux,code = <KEY_CAMERA>;
 39		};
 40
 41		camera-focus {
 42			label = "camera_focus";
 43			gpios = <&pm8941_gpios 4 GPIO_ACTIVE_LOW>;
 44			linux,input-type = <1>;
 45			linux,code = <KEY_CAMERA_FOCUS>;
 46		};
 47
 48		volume-up {
 49			label = "volume_up";
 50			gpios = <&pm8941_gpios 5 GPIO_ACTIVE_LOW>;
 51			linux,input-type = <1>;
 52			linux,code = <KEY_VOLUMEUP>;
 53		};
 54	};
 55
 56	memory@0 {
 57		reg = <0 0x40000000>, <0x40000000 0x40000000>;
 58		device_type = "memory";
 59	};
 60
 61	smd {
 62		rpm {
 63			rpm_requests {
 64				pm8841-regulators {
 65					s1 {
 66						regulator-min-microvolt = <675000>;
 67						regulator-max-microvolt = <1050000>;
 68					};
 69
 70					s2 {
 71						regulator-min-microvolt = <500000>;
 72						regulator-max-microvolt = <1050000>;
 73					};
 74
 75					s3 {
 76						regulator-min-microvolt = <500000>;
 77						regulator-max-microvolt = <1050000>;
 78					};
 79
 80					s4 {
 81						regulator-min-microvolt = <500000>;
 82						regulator-max-microvolt = <1050000>;
 83					};
 84				};
 85
 86				pm8941-regulators {
 87					vdd_l1_l3-supply = <&pm8941_s1>;
 88					vdd_l2_lvs1_2_3-supply = <&pm8941_s3>;
 89					vdd_l4_l11-supply = <&pm8941_s1>;
 90					vdd_l5_l7-supply = <&pm8941_s2>;
 91					vdd_l6_l12_l14_l15-supply = <&pm8941_s2>;
 92					vdd_l9_l10_l17_l22-supply = <&vreg_boost>;
 93					vdd_l13_l20_l23_l24-supply = <&vreg_boost>;
 94					vdd_l21-supply = <&vreg_boost>;
 95					vin_5vs-supply = <&pm8941_5v>;
 96
 97					s1 {
 98						regulator-min-microvolt = <1300000>;
 99						regulator-max-microvolt = <1300000>;
100						regulator-always-on;
101						regulator-boot-on;
102					};
103
104					s2 {
105						regulator-min-microvolt = <2150000>;
106						regulator-max-microvolt = <2150000>;
107						regulator-boot-on;
108					};
109
110					s3 {
111						regulator-min-microvolt = <1800000>;
112						regulator-max-microvolt = <1800000>;
113						regulator-always-on;
114						regulator-boot-on;
115					};
116
117					s4 {
118						regulator-min-microvolt = <5000000>;
119						regulator-max-microvolt = <5000000>;
120					};
121
122					l1 {
123						regulator-min-microvolt = <1225000>;
124						regulator-max-microvolt = <1225000>;
125
126						regulator-always-on;
127						regulator-boot-on;
128					};
129
130					l2 {
131						regulator-min-microvolt = <1200000>;
132						regulator-max-microvolt = <1200000>;
133					};
134
135					l3 {
136						regulator-min-microvolt = <1200000>;
137						regulator-max-microvolt = <1200000>;
138					};
139
140					l4 {
141						regulator-min-microvolt = <1225000>;
142						regulator-max-microvolt = <1225000>;
143					};
144
145					l5 {
146						regulator-min-microvolt = <1800000>;
147						regulator-max-microvolt = <1800000>;
148					};
149
150					l6 {
151						regulator-min-microvolt = <1800000>;
152						regulator-max-microvolt = <1800000>;
153
154						regulator-boot-on;
155					};
156
157					l7 {
158						regulator-min-microvolt = <1800000>;
159						regulator-max-microvolt = <1800000>;
160
161						regulator-boot-on;
162					};
163
164					l8 {
165						regulator-min-microvolt = <1800000>;
166						regulator-max-microvolt = <1800000>;
167					};
168
169					l9 {
170						regulator-min-microvolt = <1800000>;
171						regulator-max-microvolt = <2950000>;
172					};
173
174					l11 {
175						regulator-min-microvolt = <1300000>;
176						regulator-max-microvolt = <1350000>;
177					};
178
179					l12 {
180						regulator-min-microvolt = <1800000>;
181						regulator-max-microvolt = <1800000>;
182
183						regulator-always-on;
184						regulator-boot-on;
185					};
186
187					l13 {
188						regulator-min-microvolt = <1800000>;
189						regulator-max-microvolt = <2950000>;
190
191						regulator-boot-on;
192					};
193
194					l14 {
195						regulator-min-microvolt = <1800000>;
196						regulator-max-microvolt = <1800000>;
197					};
198
199					l15 {
200						regulator-min-microvolt = <2050000>;
201						regulator-max-microvolt = <2050000>;
202					};
203
204					l16 {
205						regulator-min-microvolt = <2700000>;
206						regulator-max-microvolt = <2700000>;
207					};
208
209					l17 {
210						regulator-min-microvolt = <2700000>;
211						regulator-max-microvolt = <2700000>;
212					};
213
214					l18 {
215						regulator-min-microvolt = <2850000>;
216						regulator-max-microvolt = <2850000>;
217					};
218
219					l19 {
220						regulator-min-microvolt = <3300000>;
221						regulator-max-microvolt = <3300000>;
222					};
223
224					l20 {
225						regulator-min-microvolt = <2950000>;
226						regulator-max-microvolt = <2950000>;
227
228						regulator-allow-set-load;
229						regulator-boot-on;
230						regulator-system-load = <200000>;
231					};
232
233					l21 {
234						regulator-min-microvolt = <2950000>;
235						regulator-max-microvolt = <2950000>;
236
237						regulator-boot-on;
238					};
239
240					l22 {
241						regulator-min-microvolt = <3000000>;
242						regulator-max-microvolt = <3000000>;
243					};
244
245					l23 {
246						regulator-min-microvolt = <2800000>;
247						regulator-max-microvolt = <2800000>;
248					};
249
250					l24 {
251						regulator-min-microvolt = <3075000>;
252						regulator-max-microvolt = <3075000>;
253
254						regulator-boot-on;
255					};
256				};
257			};
258		};
259	};
260
261	vreg_boost: vreg-boost {
262		compatible = "regulator-fixed";
263
264		regulator-name = "vreg-boost";
265		regulator-min-microvolt = <3150000>;
266		regulator-max-microvolt = <3150000>;
267
268		regulator-always-on;
269		regulator-boot-on;
270
271		gpio = <&pm8941_gpios 21 GPIO_ACTIVE_HIGH>;
272		enable-active-high;
273
274		pinctrl-names = "default";
275		pinctrl-0 = <&boost_bypass_n_pin>;
276     };
277};
278
279&soc {
280	sdhci@f9824900 {
281		status = "ok";
282
283		vmmc-supply = <&pm8941_l20>;
284		vqmmc-supply = <&pm8941_s3>;
285
286		bus-width = <8>;
287		non-removable;
288
289		pinctrl-names = "default";
290		pinctrl-0 = <&sdhc1_pin_a>;
291	};
292
293	sdhci@f98a4900 {
294		status = "ok";
295
296		bus-width = <4>;
297
298		vmmc-supply = <&pm8941_l21>;
299		vqmmc-supply = <&pm8941_l13>;
300
301		cd-gpios = <&msmgpio 62 GPIO_ACTIVE_LOW>;
302
303		pinctrl-names = "default";
304		pinctrl-0 = <&sdhc2_pin_a>, <&sdhc2_cd_pin_a>;
305	};
306
307	serial@f991e000 {
308		status = "ok";
309
310		pinctrl-names = "default";
311		pinctrl-0 = <&blsp1_uart2_pin_a>;
312	};
313
314	pinctrl@fd510000 {
315		blsp1_uart2_pin_a: blsp1-uart2-pin-active {
316			rx {
317				pins = "gpio5";
318				function = "blsp_uart2";
319
320				drive-strength = <2>;
321				bias-pull-up;
322			};
323
324			tx {
325				pins = "gpio4";
326				function = "blsp_uart2";
327
328				drive-strength = <4>;
329				bias-disable;
330			};
331		};
332
333		sdhc1_pin_a: sdhc1-pin-active {
334			clk {
335				pins = "sdc1_clk";
336				drive-strength = <16>;
337				bias-disable;
338			};
339
340			cmd-data {
341				pins = "sdc1_cmd", "sdc1_data";
342				drive-strength = <10>;
343				bias-pull-up;
344			};
345		};
346
347		sdhc2_cd_pin_a: sdhc2-cd-pin-active {
348			pins = "gpio62";
349			function = "gpio";
350
351			drive-strength = <2>;
352			bias-disable;
353		 };
354
355		sdhc2_pin_a: sdhc2-pin-active {
356			clk {
357				pins = "sdc2_clk";
358				drive-strength = <10>;
359				bias-disable;
360			};
361
362			cmd-data {
363				pins = "sdc2_cmd", "sdc2_data";
364				drive-strength = <6>;
365				bias-pull-up;
366			};
367		};
368
369	};
370};
371
372&spmi_bus {
373	pm8941@0 {
374		charger@1000 {
375			qcom,fast-charge-safe-current = <1500000>;
376			qcom,fast-charge-current-limit = <1500000>;
377			qcom,dc-current-limit = <1800000>;
378			qcom,fast-charge-safe-voltage = <4400000>;
379			qcom,fast-charge-high-threshold-voltage = <4350000>;
380			qcom,fast-charge-low-threshold-voltage = <3400000>;
381			qcom,auto-recharge-threshold-voltage = <4200000>;
382			qcom,minimum-input-voltage = <4300000>;
383		};
384
385		gpios@c000 {
386			boost_bypass_n_pin: boost-bypass {
387				pins = "gpio21";
388				function = "normal";
389			};
390
391			gpio_keys_pin_a: gpio-keys-active {
392				pins = "gpio2", "gpio3", "gpio4", "gpio5";
393				function = "normal";
394
395				bias-pull-up;
396				power-source = <PM8941_GPIO_S3>;
397			};
398		};
399
400		coincell@2800 {
401			status = "ok";
402			qcom,rset-ohms = <2100>;
403			qcom,vset-millivolts = <3000>;
404		};
405	};
406
407	pm8941@1 {
408		wled@d800 {
409			status = "ok";
410
411			qcom,cs-out;
412			qcom,current-limit = <20>;
413			qcom,current-boost-limit = <805>;
414			qcom,switching-freq = <1600>;
415			qcom,ovp = <29>;
416			qcom,num-strings = <2>;
417		};
418	};
419};