Linux Audio

Check our new training course

Loading...
v4.17
  1// SPDX-License-Identifier: GPL-2.0
  2#include <dt-bindings/input/input.h>
  3
  4#include "qcom-msm8960.dtsi"
  5
  6/ {
  7	model = "Qualcomm MSM8960 CDP";
  8	compatible = "qcom,msm8960-cdp", "qcom,msm8960";
  9
 10	aliases {
 11		serial0 = &gsbi5_serial;
 12	};
 13
 14	chosen {
 15		stdout-path = "serial0:115200n8";
 16	};
 17
 18	soc {
 19		gsbi@16400000 {
 20			status = "ok";
 21			qcom,mode = <GSBI_PROT_I2C_UART>;
 22			serial@16440000 {
 23				status = "ok";
 24			};
 25		};
 26
 27		amba {
 28			/* eMMC */
 29			sdcc1: sdcc@12400000 {
 30				status = "okay";
 31			};
 32
 33			/* External micro SD card */
 34			sdcc3: sdcc@12180000 {
 35				status = "okay";
 36			};
 37		};
 38
 39		rpm@108000 {
 40			regulators {
 41				compatible = "qcom,rpm-pm8921-regulators";
 42				vin_lvs1_3_6-supply = <&pm8921_s4>;
 43				vin_lvs2-supply = <&pm8921_s4>;
 44				vin_lvs4_5_7-supply = <&pm8921_s4>;
 45				vdd_ncp-supply = <&pm8921_l6>;
 46				vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
 47				vdd_l21_l23_l29-supply = <&pm8921_s8>;
 48				vdd_l24-supply = <&pm8921_s1>;
 49				vdd_l25-supply = <&pm8921_s1>;
 50				vdd_l27-supply = <&pm8921_s7>;
 51				vdd_l28-supply = <&pm8921_s7>;
 52
 53				/* Buck SMPS */
 54				pm8921_s1: s1 {
 55					regulator-always-on;
 56					regulator-min-microvolt = <1225000>;
 57					regulator-max-microvolt = <1225000>;
 58					qcom,switch-mode-frequency = <3200000>;
 59					bias-pull-down;
 60				};
 61
 62				pm8921_s2: s2 {
 63					regulator-min-microvolt = <1300000>;
 64					regulator-max-microvolt = <1300000>;
 65					qcom,switch-mode-frequency = <1600000>;
 66					bias-pull-down;
 67				};
 68
 69				pm8921_s3: s3 {
 70					regulator-min-microvolt = <500000>;
 71					regulator-max-microvolt = <1150000>;
 72					qcom,switch-mode-frequency = <4800000>;
 73					bias-pull-down;
 74				};
 75
 76				pm8921_s4: s4 {
 77					regulator-always-on;
 78					regulator-min-microvolt = <1800000>;
 79					regulator-max-microvolt = <1800000>;
 80					qcom,switch-mode-frequency = <1600000>;
 81					bias-pull-down;
 82					qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
 83				};
 84
 85				pm8921_s7: s7 {
 86					regulator-min-microvolt = <1150000>;
 87					regulator-max-microvolt = <1150000>;
 88					qcom,switch-mode-frequency = <3200000>;
 89					bias-pull-down;
 90				};
 91
 92				pm8921_s8: s8 {
 93					regulator-always-on;
 94					regulator-min-microvolt = <2050000>;
 95					regulator-max-microvolt = <2050000>;
 96					qcom,switch-mode-frequency = <1600000>;
 97					bias-pull-down;
 98				};
 99
100				/* PMOS LDO */
101				pm8921_l1: l1 {
102					regulator-always-on;
103					regulator-min-microvolt = <1050000>;
104					regulator-max-microvolt = <1050000>;
105					bias-pull-down;
106				};
107
108				pm8921_l2: l2 {
109					regulator-min-microvolt = <1200000>;
110					regulator-max-microvolt = <1200000>;
111					bias-pull-down;
112				};
113
114				pm8921_l3: l3 {
115					regulator-min-microvolt = <3075000>;
116					regulator-max-microvolt = <3075000>;
117					bias-pull-down;
118				};
119
120				pm8921_l4: l4 {
121					regulator-always-on;
122					regulator-min-microvolt = <1800000>;
123					regulator-max-microvolt = <1800000>;
124					bias-pull-down;
125				};
126
127				pm8921_l5: l5 {
128					regulator-min-microvolt = <2950000>;
129					regulator-max-microvolt = <2950000>;
130					bias-pull-down;
131				};
132
133				pm8921_l6: l6 {
134					regulator-min-microvolt = <2950000>;
135					regulator-max-microvolt = <2950000>;
136					bias-pull-down;
137				};
138
139				pm8921_l7: l7 {
140					regulator-always-on;
141					regulator-min-microvolt = <1850000>;
142					regulator-max-microvolt = <2950000>;
143					bias-pull-down;
144				};
145
146				pm8921_l8: l8 {
147					regulator-min-microvolt = <2800000>;
148					regulator-max-microvolt = <3000000>;
149					bias-pull-down;
150				};
151
152				pm8921_l9: l9 {
153					regulator-min-microvolt = <3000000>;
154					regulator-max-microvolt = <3000000>;
155					bias-pull-down;
156				};
157
158				pm8921_l10: l10 {
159					regulator-min-microvolt = <3000000>;
160					regulator-max-microvolt = <3000000>;
161					bias-pull-down;
162				};
163
164				pm8921_l11: l11 {
165					regulator-min-microvolt = <2850000>;
166					regulator-max-microvolt = <2850000>;
167					bias-pull-down;
168				};
169
170				pm8921_l12: l12 {
171					regulator-min-microvolt = <1200000>;
172					regulator-max-microvolt = <1200000>;
173					bias-pull-down;
174				};
175
176				pm8921_l14: l14 {
177					regulator-min-microvolt = <1800000>;
178					regulator-max-microvolt = <1800000>;
179					bias-pull-down;
180				};
181
182				pm8921_l15: l15 {
183					regulator-min-microvolt = <1800000>;
184					regulator-max-microvolt = <2950000>;
185					bias-pull-down;
186				};
187
188				pm8921_l16: l16 {
189					regulator-min-microvolt = <2800000>;
190					regulator-max-microvolt = <2800000>;
191					bias-pull-down;
192				};
193
194				pm8921_l17: l17 {
195					regulator-min-microvolt = <1800000>;
196					regulator-max-microvolt = <2950000>;
197					bias-pull-down;
198				};
199
200				pm8921_l18: l18 {
201					regulator-min-microvolt = <1300000>;
202					regulator-max-microvolt = <1300000>;
203					bias-pull-down;
204				};
205
206				pm8921_l21: l21 {
207					regulator-min-microvolt = <1900000>;
208					regulator-max-microvolt = <1900000>;
209					bias-pull-down;
210				};
211
212				pm8921_l22: l22 {
213					regulator-min-microvolt = <2750000>;
214					regulator-max-microvolt = <2750000>;
215					bias-pull-down;
216				};
217
218				pm8921_l23: l23 {
219					regulator-always-on;
220					regulator-min-microvolt = <1800000>;
221					regulator-max-microvolt = <1800000>;
222					bias-pull-down;
223				};
224
225				pm8921_l24: l24 {
226					regulator-min-microvolt = <750000>;
227					regulator-max-microvolt = <1150000>;
228					bias-pull-down;
229				};
230
231				pm8921_l25: l25 {
232					regulator-always-on;
233					regulator-min-microvolt = <1250000>;
234					regulator-max-microvolt = <1250000>;
235					bias-pull-down;
236				};
237
238				/* Low Voltage Switch */
239				pm8921_lvs1: lvs1 {
240					bias-pull-down;
241				};
242
243				pm8921_lvs2: lvs2 {
244					bias-pull-down;
245				};
246
247				pm8921_lvs3: lvs3 {
248					bias-pull-down;
249				};
250
251				pm8921_lvs4: lvs4 {
252					bias-pull-down;
253				};
254
255				pm8921_lvs5: lvs5 {
256					bias-pull-down;
257				};
258
259				pm8921_lvs6: lvs6 {
260					bias-pull-down;
261				};
262
263				pm8921_lvs7: lvs7 {
264					bias-pull-down;
265				};
266
267				pm8921_ncp: ncp {
268					regulator-min-microvolt = <1800000>;
269					regulator-max-microvolt = <1800000>;
270					qcom,switch-mode-frequency = <1600000>;
271				};
272			};
273		};
274
275		gsbi@16000000 {
276			status = "ok";
277			qcom,mode = <GSBI_PROT_SPI>;
278			pinctrl-names = "default";
279			pinctrl-0 = <&spi1_default>;
280			spi@16080000 {
281				status = "ok";
282				eth@0 {
283					compatible = "micrel,ks8851";
284					reg = <0>;
285					interrupt-parent = <&msmgpio>;
286					interrupts = <90 8>;
287					spi-max-frequency = <5400000>;
288					vdd-supply = <&ext_l2>;
289					vdd-io-supply = <&pm8921_lvs6>;
290					reset-gpios = <&msmgpio 89 0>;
291				};
292			};
293		};
294
295		pinctrl@800000 {
296			spi1_default: spi1_default {
297				mux {
298					pins = "gpio6", "gpio7", "gpio9";
299					function = "gsbi1";
300				};
301
302				mosi {
303					pins = "gpio6";
304					drive-strength = <12>;
305					bias-disable;
306				};
307
308				miso {
309					pins = "gpio7";
310					drive-strength = <12>;
311					bias-disable;
312				};
313
314				cs {
315					pins = "gpio8";
316					drive-strength = <12>;
317					bias-disable;
318					output-low;
319				};
320
321				clk {
322					pins = "gpio9";
323					drive-strength = <12>;
324					bias-disable;
325				};
326			};
327		};
328	};
329
330	regulators {
331		compatible = "simple-bus";
332
333		ext_l2: gpio-regulator@91 {
334			compatible = "regulator-fixed";
335			regulator-name = "ext_l2";
336			gpio = <&msmgpio 91 0>;
337			startup-delay-us = <10000>;
338			enable-active-high;
339		};
340	};
341};
342
343&pmicintc {
344	keypad@148 {
345		linux,keymap = <
346			MATRIX_KEY(0, 0, KEY_VOLUMEUP)
347			MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
348			MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
349			MATRIX_KEY(0, 3, KEY_CAMERA)
350			>;
351		keypad,num-rows = <1>;
352		keypad,num-columns = <5>;
353	};
354};
v4.10.11
 
  1#include <dt-bindings/input/input.h>
  2
  3#include "qcom-msm8960.dtsi"
  4
  5/ {
  6	model = "Qualcomm MSM8960 CDP";
  7	compatible = "qcom,msm8960-cdp", "qcom,msm8960";
  8
  9	aliases {
 10		serial0 = &gsbi5_serial;
 11	};
 12
 13	chosen {
 14		stdout-path = "serial0:115200n8";
 15	};
 16
 17	soc {
 18		gsbi@16400000 {
 19			status = "ok";
 20			qcom,mode = <GSBI_PROT_I2C_UART>;
 21			serial@16440000 {
 22				status = "ok";
 23			};
 24		};
 25
 26		amba {
 27			/* eMMC */
 28			sdcc1: sdcc@12400000 {
 29				status = "okay";
 30			};
 31
 32			/* External micro SD card */
 33			sdcc3: sdcc@12180000 {
 34				status = "okay";
 35			};
 36		};
 37
 38		rpm@108000 {
 39			regulators {
 40				compatible = "qcom,rpm-pm8921-regulators";
 41				vin_lvs1_3_6-supply = <&pm8921_s4>;
 42				vin_lvs2-supply = <&pm8921_s4>;
 43				vin_lvs4_5_7-supply = <&pm8921_s4>;
 44				vdd_ncp-supply = <&pm8921_l6>;
 45				vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
 46				vdd_l21_l23_l29-supply = <&pm8921_s8>;
 47				vdd_l24-supply = <&pm8921_s1>;
 48				vdd_l25-supply = <&pm8921_s1>;
 49				vdd_l27-supply = <&pm8921_s7>;
 50				vdd_l28-supply = <&pm8921_s7>;
 51
 52				/* Buck SMPS */
 53				pm8921_s1: s1 {
 54					regulator-always-on;
 55					regulator-min-microvolt = <1225000>;
 56					regulator-max-microvolt = <1225000>;
 57					qcom,switch-mode-frequency = <3200000>;
 58					bias-pull-down;
 59				};
 60
 61				pm8921_s2: s2 {
 62					regulator-min-microvolt = <1300000>;
 63					regulator-max-microvolt = <1300000>;
 64					qcom,switch-mode-frequency = <1600000>;
 65					bias-pull-down;
 66				};
 67
 68				pm8921_s3: s3 {
 69					regulator-min-microvolt = <500000>;
 70					regulator-max-microvolt = <1150000>;
 71					qcom,switch-mode-frequency = <4800000>;
 72					bias-pull-down;
 73				};
 74
 75				pm8921_s4: s4 {
 76					regulator-always-on;
 77					regulator-min-microvolt = <1800000>;
 78					regulator-max-microvolt = <1800000>;
 79					qcom,switch-mode-frequency = <1600000>;
 80					bias-pull-down;
 81					qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
 82				};
 83
 84				pm8921_s7: s7 {
 85					regulator-min-microvolt = <1150000>;
 86					regulator-max-microvolt = <1150000>;
 87					qcom,switch-mode-frequency = <3200000>;
 88					bias-pull-down;
 89				};
 90
 91				pm8921_s8: s8 {
 92					regulator-always-on;
 93					regulator-min-microvolt = <2050000>;
 94					regulator-max-microvolt = <2050000>;
 95					qcom,switch-mode-frequency = <1600000>;
 96					bias-pull-down;
 97				};
 98
 99				/* PMOS LDO */
100				pm8921_l1: l1 {
101					regulator-always-on;
102					regulator-min-microvolt = <1050000>;
103					regulator-max-microvolt = <1050000>;
104					bias-pull-down;
105				};
106
107				pm8921_l2: l2 {
108					regulator-min-microvolt = <1200000>;
109					regulator-max-microvolt = <1200000>;
110					bias-pull-down;
111				};
112
113				pm8921_l3: l3 {
114					regulator-min-microvolt = <3075000>;
115					regulator-max-microvolt = <3075000>;
116					bias-pull-down;
117				};
118
119				pm8921_l4: l4 {
120					regulator-always-on;
121					regulator-min-microvolt = <1800000>;
122					regulator-max-microvolt = <1800000>;
123					bias-pull-down;
124				};
125
126				pm8921_l5: l5 {
127					regulator-min-microvolt = <2950000>;
128					regulator-max-microvolt = <2950000>;
129					bias-pull-down;
130				};
131
132				pm8921_l6: l6 {
133					regulator-min-microvolt = <2950000>;
134					regulator-max-microvolt = <2950000>;
135					bias-pull-down;
136				};
137
138				pm8921_l7: l7 {
139					regulator-always-on;
140					regulator-min-microvolt = <1850000>;
141					regulator-max-microvolt = <2950000>;
142					bias-pull-down;
143				};
144
145				pm8921_l8: l8 {
146					regulator-min-microvolt = <2800000>;
147					regulator-max-microvolt = <3000000>;
148					bias-pull-down;
149				};
150
151				pm8921_l9: l9 {
152					regulator-min-microvolt = <3000000>;
153					regulator-max-microvolt = <3000000>;
154					bias-pull-down;
155				};
156
157				pm8921_l10: l10 {
158					regulator-min-microvolt = <3000000>;
159					regulator-max-microvolt = <3000000>;
160					bias-pull-down;
161				};
162
163				pm8921_l11: l11 {
164					regulator-min-microvolt = <2850000>;
165					regulator-max-microvolt = <2850000>;
166					bias-pull-down;
167				};
168
169				pm8921_l12: l12 {
170					regulator-min-microvolt = <1200000>;
171					regulator-max-microvolt = <1200000>;
172					bias-pull-down;
173				};
174
175				pm8921_l14: l14 {
176					regulator-min-microvolt = <1800000>;
177					regulator-max-microvolt = <1800000>;
178					bias-pull-down;
179				};
180
181				pm8921_l15: l15 {
182					regulator-min-microvolt = <1800000>;
183					regulator-max-microvolt = <2950000>;
184					bias-pull-down;
185				};
186
187				pm8921_l16: l16 {
188					regulator-min-microvolt = <2800000>;
189					regulator-max-microvolt = <2800000>;
190					bias-pull-down;
191				};
192
193				pm8921_l17: l17 {
194					regulator-min-microvolt = <1800000>;
195					regulator-max-microvolt = <2950000>;
196					bias-pull-down;
197				};
198
199				pm8921_l18: l18 {
200					regulator-min-microvolt = <1300000>;
201					regulator-max-microvolt = <1300000>;
202					bias-pull-down;
203				};
204
205				pm8921_l21: l21 {
206					regulator-min-microvolt = <1900000>;
207					regulator-max-microvolt = <1900000>;
208					bias-pull-down;
209				};
210
211				pm8921_l22: l22 {
212					regulator-min-microvolt = <2750000>;
213					regulator-max-microvolt = <2750000>;
214					bias-pull-down;
215				};
216
217				pm8921_l23: l23 {
218					regulator-always-on;
219					regulator-min-microvolt = <1800000>;
220					regulator-max-microvolt = <1800000>;
221					bias-pull-down;
222				};
223
224				pm8921_l24: l24 {
225					regulator-min-microvolt = <750000>;
226					regulator-max-microvolt = <1150000>;
227					bias-pull-down;
228				};
229
230				pm8921_l25: l25 {
231					regulator-always-on;
232					regulator-min-microvolt = <1250000>;
233					regulator-max-microvolt = <1250000>;
234					bias-pull-down;
235				};
236
237				/* Low Voltage Switch */
238				pm8921_lvs1: lvs1 {
239					bias-pull-down;
240				};
241
242				pm8921_lvs2: lvs2 {
243					bias-pull-down;
244				};
245
246				pm8921_lvs3: lvs3 {
247					bias-pull-down;
248				};
249
250				pm8921_lvs4: lvs4 {
251					bias-pull-down;
252				};
253
254				pm8921_lvs5: lvs5 {
255					bias-pull-down;
256				};
257
258				pm8921_lvs6: lvs6 {
259					bias-pull-down;
260				};
261
262				pm8921_lvs7: lvs7 {
263					bias-pull-down;
264				};
265
266				pm8921_ncp: ncp {
267					regulator-min-microvolt = <1800000>;
268					regulator-max-microvolt = <1800000>;
269					qcom,switch-mode-frequency = <1600000>;
270				};
271			};
272		};
273
274		gsbi@16000000 {
275			status = "ok";
276			qcom,mode = <GSBI_PROT_SPI>;
277			pinctrl-names = "default";
278			pinctrl-0 = <&spi1_default>;
279			spi@16080000 {
280				status = "ok";
281				eth@0 {
282					compatible = "micrel,ks8851";
283					reg = <0>;
284					interrupt-parent = <&msmgpio>;
285					interrupts = <90 8>;
286					spi-max-frequency = <5400000>;
287					vdd-supply = <&ext_l2>;
288					vdd-io-supply = <&pm8921_lvs6>;
289					reset-gpios = <&msmgpio 89 0>;
290				};
291			};
292		};
293
294		pinctrl@800000 {
295			spi1_default: spi1_default {
296				mux {
297					pins = "gpio6", "gpio7", "gpio9";
298					function = "gsbi1";
299				};
300
301				mosi {
302					pins = "gpio6";
303					drive-strength = <12>;
304					bias-disable;
305				};
306
307				miso {
308					pins = "gpio7";
309					drive-strength = <12>;
310					bias-disable;
311				};
312
313				cs {
314					pins = "gpio8";
315					drive-strength = <12>;
316					bias-disable;
317					output-low;
318				};
319
320				clk {
321					pins = "gpio9";
322					drive-strength = <12>;
323					bias-disable;
324				};
325			};
326		};
327	};
328
329	regulators {
330		compatible = "simple-bus";
331
332		ext_l2: gpio-regulator@91 {
333			compatible = "regulator-fixed";
334			regulator-name = "ext_l2";
335			gpio = <&msmgpio 91 0>;
336			startup-delay-us = <10000>;
337			enable-active-high;
338		};
339	};
340};
341
342&pmicintc {
343	keypad@148 {
344		linux,keymap = <
345			MATRIX_KEY(0, 0, KEY_VOLUMEUP)
346			MATRIX_KEY(0, 1, KEY_VOLUMEDOWN)
347			MATRIX_KEY(0, 2, KEY_CAMERA_FOCUS)
348			MATRIX_KEY(0, 3, KEY_CAMERA)
349			>;
350		keypad,num-rows = <1>;
351		keypad,num-columns = <5>;
352	};
353};