~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/qcom/sm8650-hdk.dts

Version: ~ [ linux-6.11-rc3 ] ~ [ linux-6.10.4 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.45 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.104 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.164 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.223 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.281 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.319 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.9 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: BSD-3-Clause
  2 /*
  3  * Copyright (c) 2024, Linaro Limited
  4  */
  5 
  6 /dts-v1/;
  7 
  8 #include <dt-bindings/leds/common.h>
  9 #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
 10 #include "sm8650.dtsi"
 11 #include "pm8010.dtsi"
 12 #include "pm8550.dtsi"
 13 #include "pm8550b.dtsi"
 14 #define PMK8550VE_SID 8
 15 #include "pm8550ve.dtsi"
 16 #include "pm8550vs.dtsi"
 17 #include "pmk8550.dtsi"
 18 
 19 / {
 20         model = "Qualcomm Technologies, Inc. SM8650 HDK";
 21         compatible = "qcom,sm8650-hdk", "qcom,sm8650";
 22         chassis-type = "embedded";
 23 
 24         aliases {
 25                 serial0 = &uart15;
 26                 serial1 = &uart14;
 27         };
 28 
 29         chosen {
 30                 stdout-path = "serial0:115200n8";
 31         };
 32 
 33         hdmi-out {
 34                 compatible = "hdmi-connector";
 35                 type = "a";
 36 
 37                 port {
 38                         hdmi_connector_out: endpoint {
 39                                 remote-endpoint = <&lt9611_out>;
 40                         };
 41                 };
 42         };
 43 
 44         gpio-keys {
 45                 compatible = "gpio-keys";
 46 
 47                 pinctrl-0 = <&volume_up_n>;
 48                 pinctrl-names = "default";
 49 
 50                 key-volume-up {
 51                         label = "Volume Up";
 52                         linux,code = <KEY_VOLUMEUP>;
 53                         gpios = <&pm8550_gpios 6 GPIO_ACTIVE_LOW>;
 54                         debounce-interval = <15>;
 55                         linux,can-disable;
 56                         wakeup-source;
 57                 };
 58         };
 59 
 60         leds {
 61                 compatible = "gpio-leds";
 62 
 63                 led-0 {
 64                         function = LED_FUNCTION_BLUETOOTH;
 65                         color = <LED_COLOR_ID_BLUE>;
 66                         gpios = <&pm8550_gpios 11 GPIO_ACTIVE_HIGH>;
 67                         linux,default-trigger = "bluetooth-power";
 68                         default-state = "off";
 69                 };
 70 
 71                 led-1 {
 72                         function = LED_FUNCTION_INDICATOR;
 73                         color = <LED_COLOR_ID_GREEN>;
 74                         gpios = <&pm8550b_gpios 9 GPIO_ACTIVE_HIGH>;
 75                         default-state = "off";
 76                         panic-indicator;
 77                 };
 78 
 79                 led-2 {
 80                         function = LED_FUNCTION_WLAN;
 81                         color = <LED_COLOR_ID_ORANGE>;
 82                         gpios = <&pm8550b_gpios 10 GPIO_ACTIVE_HIGH>;
 83                         linux,default-trigger = "phy0tx";
 84                         default-state = "off";
 85                 };
 86         };
 87 
 88         pmic-glink {
 89                 compatible = "qcom,sm8650-pmic-glink",
 90                              "qcom,sm8550-pmic-glink",
 91                              "qcom,pmic-glink";
 92                 #address-cells = <1>;
 93                 #size-cells = <0>;
 94                 orientation-gpios = <&tlmm 29 GPIO_ACTIVE_HIGH>;
 95 
 96                 connector@0 {
 97                         compatible = "usb-c-connector";
 98                         reg = <0>;
 99 
100                         power-role = "dual";
101                         data-role = "dual";
102 
103                         ports {
104                                 #address-cells = <1>;
105                                 #size-cells = <0>;
106 
107                                 port@0 {
108                                         reg = <0>;
109 
110                                         pmic_glink_hs_in: endpoint {
111                                                 remote-endpoint = <&usb_1_dwc3_hs>;
112                                         };
113                                 };
114 
115                                 port@1 {
116                                         reg = <1>;
117 
118                                         pmic_glink_ss_in: endpoint {
119                                                 remote-endpoint = <&usb_dp_qmpphy_out>;
120                                         };
121                                 };
122 
123                                 port@2 {
124                                         reg = <2>;
125 
126                                         pmic_glink_sbu: endpoint {
127                                                 remote-endpoint = <&wcd_usbss_sbu_mux>;
128                                     };
129                                 };
130                         };
131                 };
132         };
133 
134         lt9611_1v2: regulator-lt9611-1v2 {
135                 compatible = "regulator-fixed";
136 
137                 regulator-name = "LT9611_1V2";
138                 regulator-min-microvolt = <1200000>;
139                 regulator-max-microvolt = <1200000>;
140 
141                 vin-supply = <&vph_pwr>;
142                 gpio = <&tlmm 79 GPIO_ACTIVE_HIGH>;
143 
144                 enable-active-high;
145         };
146 
147         lt9611_3v3: regulator-lt9611-3v3 {
148                 compatible = "regulator-fixed";
149 
150                 regulator-name = "LT9611_3V3";
151                 regulator-min-microvolt = <3300000>;
152                 regulator-max-microvolt = <3300000>;
153 
154                 vin-supply = <&vreg_bob_3v3>;
155                 gpio = <&tlmm 78 GPIO_ACTIVE_HIGH>;
156 
157                 enable-active-high;
158         };
159 
160         sound {
161                 compatible = "qcom,sm8650-sndcard", "qcom,sm8450-sndcard";
162                 model = "SM8650-HDK";
163                 audio-routing = "SpkrLeft IN", "WSA_SPK1 OUT",
164                                 "SpkrRight IN", "WSA_SPK2 OUT",
165                                 "IN1_HPHL", "HPHL_OUT",
166                                 "IN2_HPHR", "HPHR_OUT",
167                                 "AMIC1", "MIC BIAS1",
168                                 "AMIC2", "MIC BIAS2",
169                                 "AMIC5", "MIC BIAS4",
170                                 "TX SWR_INPUT0", "ADC1_OUTPUT",
171                                 "TX SWR_INPUT1", "ADC2_OUTPUT",
172                                 "TX SWR_INPUT3", "ADC4_OUTPUT";
173 
174                 wcd-playback-dai-link {
175                         link-name = "WCD Playback";
176 
177                         cpu {
178                                 sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
179                         };
180 
181                         codec {
182                                 sound-dai = <&wcd939x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
183                         };
184 
185                         platform {
186                                 sound-dai = <&q6apm>;
187                         };
188                 };
189 
190                 wcd-capture-dai-link {
191                         link-name = "WCD Capture";
192 
193                         cpu {
194                                 sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
195                         };
196 
197                         codec {
198                                 sound-dai = <&wcd939x 1>, <&swr2 0>, <&lpass_txmacro 0>;
199                         };
200 
201                         platform {
202                                 sound-dai = <&q6apm>;
203                         };
204                 };
205 
206                 wsa-dai-link {
207                         link-name = "WSA Playback";
208 
209                         cpu {
210                                 sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
211                         };
212 
213                         codec {
214                                 sound-dai = <&north_spkr>, <&south_spkr>, <&swr0 0>, <&lpass_wsamacro 0>;
215                         };
216 
217                         platform {
218                                 sound-dai = <&q6apm>;
219                         };
220                 };
221         };
222 
223         vph_pwr: regulator-vph-pwr {
224                 compatible = "regulator-fixed";
225 
226                 regulator-name = "vph_pwr";
227                 regulator-min-microvolt = <3700000>;
228                 regulator-max-microvolt = <3700000>;
229 
230                 regulator-always-on;
231                 regulator-boot-on;
232         };
233 
234         vreg_bob_3v3: regulator-vreg-bob-3v3 {
235                 compatible = "regulator-fixed";
236 
237                 regulator-name = "VREG_BOB_3P3";
238                 regulator-min-microvolt = <3300000>;
239                 regulator-max-microvolt = <3300000>;
240 
241                 vin-supply = <&vph_pwr>;
242         };
243 
244         wcd939x: audio-codec {
245                 compatible = "qcom,wcd9395-codec", "qcom,wcd9390-codec";
246 
247                 pinctrl-0 = <&wcd_default>;
248                 pinctrl-names = "default";
249 
250                 qcom,micbias1-microvolt = <1800000>;
251                 qcom,micbias2-microvolt = <1800000>;
252                 qcom,micbias3-microvolt = <1800000>;
253                 qcom,micbias4-microvolt = <1800000>;
254                 qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
255                 qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
256                 qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
257                 qcom,rx-device = <&wcd_rx>;
258                 qcom,tx-device = <&wcd_tx>;
259 
260                 reset-gpios = <&tlmm 107 GPIO_ACTIVE_LOW>;
261 
262                 vdd-buck-supply = <&vreg_l15b_1p8>;
263                 vdd-rxtx-supply = <&vreg_l15b_1p8>;
264                 vdd-io-supply = <&vreg_l15b_1p8>;
265                 vdd-mic-bias-supply = <&vreg_bob1>;
266 
267                 #sound-dai-cells = <1>;
268         };
269 
270         wcn7850-pmu {
271                 compatible = "qcom,wcn7850-pmu";
272 
273                 pinctrl-names = "default";
274                 pinctrl-0 = <&wlan_en>;
275 
276                 wlan-enable-gpios = <&tlmm 16 GPIO_ACTIVE_HIGH>;
277                 /*
278                  * TODO Add bt-enable-gpios once the Bluetooth driver is
279                  * converted to using the power sequencer.
280                  */
281 
282                 vdd-supply = <&vreg_s4i_0p85>;
283                 vddio-supply = <&vreg_l15b_1p8>;
284                 vddio1p2-supply = <&vreg_l3c_1p2>;
285                 vddaon-supply = <&vreg_s2c_0p8>;
286                 vdddig-supply = <&vreg_s3c_0p9>;
287                 vddrfa1p2-supply = <&vreg_s1c_1p2>;
288                 vddrfa1p8-supply = <&vreg_s6c_1p8>;
289 
290                 clocks = <&rpmhcc RPMH_RF_CLK1>;
291 
292                 regulators {
293                         vreg_pmu_rfa_cmn: ldo0 {
294                                 regulator-name = "vreg_pmu_rfa_cmn";
295                         };
296 
297                         vreg_pmu_aon_0p59: ldo1 {
298                                 regulator-name = "vreg_pmu_aon_0p59";
299                         };
300 
301                         vreg_pmu_wlcx_0p8: ldo2 {
302                                 regulator-name = "vreg_pmu_wlcx_0p8";
303                         };
304 
305                         vreg_pmu_wlmx_0p85: ldo3 {
306                                 regulator-name = "vreg_pmu_wlmx_0p85";
307                         };
308 
309                         vreg_pmu_btcmx_0p85: ldo4 {
310                                 regulator-name = "vreg_pmu_btcmx_0p85";
311                         };
312 
313                         vreg_pmu_rfa_0p8: ldo5 {
314                                 regulator-name = "vreg_pmu_rfa_0p8";
315                         };
316 
317                         vreg_pmu_rfa_1p2: ldo6 {
318                                 regulator-name = "vreg_pmu_rfa_1p2";
319                         };
320 
321                         vreg_pmu_rfa_1p8: ldo7 {
322                                 regulator-name = "vreg_pmu_rfa_1p8";
323                         };
324 
325                         vreg_pmu_pcie_0p9: ldo8 {
326                                 regulator-name = "vreg_pmu_pcie_0p9";
327                         };
328 
329                         vreg_pmu_pcie_1p8: ldo9 {
330                                 regulator-name = "vreg_pmu_pcie_1p8";
331                         };
332                 };
333         };
334 };
335 
336 &apps_rsc {
337         regulators-0 {
338                 compatible = "qcom,pm8550-rpmh-regulators";
339 
340                 vdd-bob1-supply = <&vph_pwr>;
341                 vdd-bob2-supply = <&vph_pwr>;
342                 vdd-l2-l13-l14-supply = <&vreg_bob1>;
343                 vdd-l3-supply = <&vreg_s1c_1p2>;
344                 vdd-l5-l16-supply = <&vreg_bob1>;
345                 vdd-l6-l7-supply = <&vreg_bob1>;
346                 vdd-l8-l9-supply = <&vreg_bob1>;
347                 vdd-l11-supply = <&vreg_s1c_1p2>;
348                 vdd-l12-supply = <&vreg_s6c_1p8>;
349                 vdd-l15-supply = <&vreg_s6c_1p8>;
350                 vdd-l17-supply = <&vreg_bob2>;
351 
352                 qcom,pmic-id = "b";
353 
354                 vreg_bob1: bob1 {
355                         regulator-name = "vreg_bob1";
356                         regulator-min-microvolt = <3296000>;
357                         regulator-max-microvolt = <3960000>;
358                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
359                 };
360 
361                 vreg_bob2: bob2 {
362                         regulator-name = "vreg_bob2";
363                         regulator-min-microvolt = <2720000>;
364                         regulator-max-microvolt = <3008000>;
365                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
366                 };
367 
368                 vreg_l2b_3p0: ldo2 {
369                         regulator-name = "vreg_l2b_3p0";
370                         regulator-min-microvolt = <3008000>;
371                         regulator-max-microvolt = <3008000>;
372                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
373                         regulator-allow-set-load;
374                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
375                                                    RPMH_REGULATOR_MODE_HPM>;
376                 };
377 
378                 vreg_l5b_3p1: ldo5 {
379                         regulator-name = "vreg_l5b_3p1";
380                         regulator-min-microvolt = <3104000>;
381                         regulator-max-microvolt = <3104000>;
382                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
383                         regulator-allow-set-load;
384                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
385                                                    RPMH_REGULATOR_MODE_HPM>;
386                 };
387 
388                 vreg_l6b_1p8: ldo6 {
389                         regulator-name = "vreg_l6b_1p8";
390                         regulator-min-microvolt = <1800000>;
391                         regulator-max-microvolt = <3008000>;
392                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
393                         regulator-allow-set-load;
394                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
395                                                    RPMH_REGULATOR_MODE_HPM>;
396                 };
397 
398                 vreg_l7b_1p8: ldo7 {
399                         regulator-name = "vreg_l7b_1p8";
400                         regulator-min-microvolt = <1800000>;
401                         regulator-max-microvolt = <3008000>;
402                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
403                 };
404 
405                 vreg_l8b_1p8: ldo8 {
406                         regulator-name = "vreg_l8b_1p8";
407                         regulator-min-microvolt = <1800000>;
408                         regulator-max-microvolt = <3008000>;
409                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
410                         regulator-allow-set-load;
411                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
412                                                    RPMH_REGULATOR_MODE_HPM>;
413                 };
414 
415                 vreg_l9b_2p9: ldo9 {
416                         regulator-name = "vreg_l9b_2p9";
417                         regulator-min-microvolt = <2960000>;
418                         regulator-max-microvolt = <3008000>;
419                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
420                         regulator-allow-set-load;
421                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
422                                                    RPMH_REGULATOR_MODE_HPM>;
423                 };
424 
425                 vreg_l11b_1p2: ldo11 {
426                         regulator-name = "vreg_l11b_1p2";
427                         regulator-min-microvolt = <1200000>;
428                         regulator-max-microvolt = <1504000>;
429                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
430                         regulator-allow-set-load;
431                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
432                                                    RPMH_REGULATOR_MODE_HPM>;
433                 };
434 
435                 vreg_l12b_1p8: ldo12 {
436                         regulator-name = "vreg_l12b_1p8";
437                         regulator-min-microvolt = <1800000>;
438                         regulator-max-microvolt = <1800000>;
439                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
440                         regulator-allow-set-load;
441                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
442                                                    RPMH_REGULATOR_MODE_HPM>;
443                 };
444 
445                 vreg_l13b_3p0: ldo13 {
446                         regulator-name = "vreg_l13b_3p0";
447                         regulator-min-microvolt = <3000000>;
448                         regulator-max-microvolt = <3000000>;
449                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
450                         regulator-allow-set-load;
451                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
452                                                    RPMH_REGULATOR_MODE_HPM>;
453                 };
454 
455                 vreg_l14b_3p2: ldo14 {
456                         regulator-name = "vreg_l14b_3p2";
457                         regulator-min-microvolt = <3200000>;
458                         regulator-max-microvolt = <3200000>;
459                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
460                         regulator-allow-set-load;
461                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
462                                                    RPMH_REGULATOR_MODE_HPM>;
463                 };
464 
465                 vreg_l15b_1p8: ldo15 {
466                         regulator-name = "vreg_l15b_1p8";
467                         regulator-min-microvolt = <1800000>;
468                         regulator-max-microvolt = <1800000>;
469                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
470                         regulator-allow-set-load;
471                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
472                                                    RPMH_REGULATOR_MODE_HPM>;
473                 };
474 
475                 vreg_l16b_2p8: ldo16 {
476                         regulator-name = "vreg_l16b_2p8";
477                         regulator-min-microvolt = <2800000>;
478                         regulator-max-microvolt = <2800000>;
479                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
480                         regulator-allow-set-load;
481                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
482                                                    RPMH_REGULATOR_MODE_HPM>;
483                 };
484 
485                 vreg_l17b_2p5: ldo17 {
486                         regulator-name = "vreg_l17b_2p5";
487                         regulator-min-microvolt = <2504000>;
488                         regulator-max-microvolt = <2504000>;
489                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
490                         regulator-allow-set-load;
491                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
492                                                    RPMH_REGULATOR_MODE_HPM>;
493                 };
494         };
495 
496         regulators-1 {
497                 compatible = "qcom,pm8550vs-rpmh-regulators";
498 
499                 vdd-l1-supply = <&vreg_s1c_1p2>;
500                 vdd-l2-supply = <&vreg_s1c_1p2>;
501                 vdd-l3-supply = <&vreg_s1c_1p2>;
502                 vdd-s1-supply = <&vph_pwr>;
503                 vdd-s2-supply = <&vph_pwr>;
504                 vdd-s3-supply = <&vph_pwr>;
505                 vdd-s4-supply = <&vph_pwr>;
506                 vdd-s5-supply = <&vph_pwr>;
507                 vdd-s6-supply = <&vph_pwr>;
508 
509                 qcom,pmic-id = "c";
510 
511                 vreg_s1c_1p2: smps1 {
512                         regulator-name = "vreg_s1c_1p2";
513                         regulator-min-microvolt = <1256000>;
514                         regulator-max-microvolt = <1348000>;
515                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
516                 };
517 
518                 vreg_s2c_0p8: smps2 {
519                         regulator-name = "vreg_s2c_0p8";
520                         regulator-min-microvolt = <852000>;
521                         regulator-max-microvolt = <1036000>;
522                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
523                 };
524 
525                 vreg_s3c_0p9: smps3 {
526                         regulator-name = "vreg_s3c_0p9";
527                         regulator-min-microvolt = <976000>;
528                         regulator-max-microvolt = <1064000>;
529                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
530                 };
531 
532                 vreg_s4c_1p2: smps4 {
533                         regulator-name = "vreg_s4c_1p2";
534                         regulator-min-microvolt = <1224000>;
535                         regulator-max-microvolt = <1280000>;
536                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
537                 };
538 
539                 vreg_s5c_0p7: smps5 {
540                         regulator-name = "vreg_s5c_0p7";
541                         regulator-min-microvolt = <752000>;
542                         regulator-max-microvolt = <900000>;
543                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
544                 };
545 
546                 vreg_s6c_1p8: smps6 {
547                         regulator-name = "vreg_s6c_1p8";
548                         regulator-min-microvolt = <1856000>;
549                         regulator-max-microvolt = <2000000>;
550                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
551                 };
552 
553                 vreg_l1c_1p2: ldo1 {
554                         regulator-name = "vreg_l1c_1p2";
555                         regulator-min-microvolt = <1200000>;
556                         regulator-max-microvolt = <1200000>;
557                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
558                         regulator-allow-set-load;
559                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
560                                                    RPMH_REGULATOR_MODE_HPM>;
561                 };
562 
563                 vreg_l3c_1p2: ldo3 {
564                         regulator-name = "vreg_l3c_1p2";
565                         regulator-min-microvolt = <1200000>;
566                         regulator-max-microvolt = <1200000>;
567                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
568                         regulator-allow-set-load;
569                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
570                                                    RPMH_REGULATOR_MODE_HPM>;
571                 };
572         };
573 
574         regulators-2 {
575                 compatible = "qcom,pm8550vs-rpmh-regulators";
576 
577                 vdd-l1-supply = <&vreg_s3c_0p9>;
578 
579                 qcom,pmic-id = "d";
580 
581                 vreg_l1d_0p88: ldo1 {
582                         regulator-name = "vreg_l1d_0p88";
583                         regulator-min-microvolt = <912000>;
584                         regulator-max-microvolt = <920000>;
585                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
586                         regulator-allow-set-load;
587                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
588                                                    RPMH_REGULATOR_MODE_HPM>;
589                 };
590         };
591 
592         regulators-3 {
593                 compatible = "qcom,pm8550vs-rpmh-regulators";
594 
595                 vdd-l3-supply = <&vreg_s3c_0p9>;
596 
597                 qcom,pmic-id = "e";
598 
599                 vreg_l3e_0p9: ldo3 {
600                         regulator-name = "vreg_l3e_0p9";
601                         regulator-min-microvolt = <880000>;
602                         regulator-max-microvolt = <920000>;
603                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
604                         regulator-allow-set-load;
605                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
606                                                    RPMH_REGULATOR_MODE_HPM>;
607                 };
608         };
609 
610         regulators-4 {
611                 compatible = "qcom,pm8550vs-rpmh-regulators";
612 
613                 vdd-l1-supply = <&vreg_s3c_0p9>;
614                 vdd-l3-supply = <&vreg_s3c_0p9>;
615 
616                 qcom,pmic-id = "g";
617 
618                 vreg_l1g_0p91: ldo1 {
619                         regulator-name = "vreg_l1g_0p91";
620                         regulator-min-microvolt = <912000>;
621                         regulator-max-microvolt = <920000>;
622                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
623                         regulator-allow-set-load;
624                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
625                                                    RPMH_REGULATOR_MODE_HPM>;
626                 };
627 
628                 vreg_l3g_0p91: ldo3 {
629                         regulator-name = "vreg_l3g_0p91";
630                         regulator-min-microvolt = <880000>;
631                         regulator-max-microvolt = <912000>;
632                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
633                         regulator-allow-set-load;
634                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
635                                                    RPMH_REGULATOR_MODE_HPM>;
636                 };
637         };
638 
639         regulators-5 {
640                 compatible = "qcom,pm8550ve-rpmh-regulators";
641 
642                 vdd-l1-supply = <&vreg_s3c_0p9>;
643                 vdd-l2-supply = <&vreg_s3c_0p9>;
644                 vdd-l3-supply = <&vreg_s1c_1p2>;
645                 vdd-s4-supply = <&vph_pwr>;
646 
647                 qcom,pmic-id = "i";
648 
649                 vreg_s4i_0p85: smps4 {
650                         regulator-name = "vreg_s4i_0p85";
651                         regulator-min-microvolt = <852000>;
652                         regulator-max-microvolt = <1004000>;
653                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
654                 };
655 
656                 vreg_l1i_0p88: ldo1 {
657                         regulator-name = "vreg_l1i_0p88";
658                         regulator-min-microvolt = <880000>;
659                         regulator-max-microvolt = <912000>;
660                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
661                         regulator-allow-set-load;
662                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
663                                                    RPMH_REGULATOR_MODE_HPM>;
664                 };
665 
666                 vreg_l2i_0p88: ldo2 {
667                         regulator-name = "vreg_l2i_0p88";
668                         regulator-min-microvolt = <880000>;
669                         regulator-max-microvolt = <912000>;
670                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
671                         regulator-allow-set-load;
672                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
673                                                    RPMH_REGULATOR_MODE_HPM>;
674                 };
675 
676                 vreg_l3i_1p2: ldo3 {
677                         regulator-name = "vreg_l3i_0p91";
678                         regulator-min-microvolt = <1200000>;
679                         regulator-max-microvolt = <1200000>;
680                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
681                         regulator-allow-set-load;
682                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
683                                                    RPMH_REGULATOR_MODE_HPM>;
684                 };
685         };
686 
687         regulators-6 {
688                 compatible = "qcom,pm8010-rpmh-regulators";
689                 qcom,pmic-id = "m";
690 
691                 vdd-l1-l2-supply = <&vreg_s1c_1p2>;
692                 vdd-l3-l4-supply = <&vreg_bob2>;
693                 vdd-l5-supply = <&vreg_s6c_1p8>;
694                 vdd-l6-supply = <&vreg_bob1>;
695                 vdd-l7-supply = <&vreg_bob1>;
696 
697                 vreg_l1m_1p1: ldo1 {
698                         regulator-name = "vreg_l1m_1p1";
699                         regulator-min-microvolt = <1104000>;
700                         regulator-max-microvolt = <1104000>;
701                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
702                         regulator-allow-set-load;
703                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
704                                                    RPMH_REGULATOR_MODE_HPM>;
705                 };
706 
707                 vreg_l2m_1p056: ldo2 {
708                         regulator-name = "vreg_l2m_1p056";
709                         regulator-min-microvolt = <1056000>;
710                         regulator-max-microvolt = <1056000>;
711                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
712                         regulator-allow-set-load;
713                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
714                                                    RPMH_REGULATOR_MODE_HPM>;
715                 };
716 
717                 vreg_l3m_2p8: ldo3 {
718                         regulator-name = "vreg_l3m_2p8";
719                         regulator-min-microvolt = <2800000>;
720                         regulator-max-microvolt = <2800000>;
721                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
722                 };
723 
724                 vreg_l4m_2p8: ldo4 {
725                         regulator-name = "vreg_l4m_2p8";
726                         regulator-min-microvolt = <2800000>;
727                         regulator-max-microvolt = <2800000>;
728                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
729                 };
730 
731                 vreg_l5m_1p8: ldo5 {
732                         regulator-name = "vreg_l5m_1p8";
733                         regulator-min-microvolt = <1800000>;
734                         regulator-max-microvolt = <1800000>;
735                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
736                 };
737 
738                 vreg_l6m_2p8: ldo6 {
739                         regulator-name = "vreg_l6m_2p8";
740                         regulator-min-microvolt = <2800000>;
741                         regulator-max-microvolt = <2800000>;
742                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
743                 };
744 
745                 vreg_l7m_2p96: ldo7 {
746                         regulator-name = "vreg_l7m_2p96";
747                         regulator-min-microvolt = <2960000>;
748                         regulator-max-microvolt = <2960000>;
749                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
750                 };
751         };
752 
753         regulators-7 {
754                 compatible = "qcom,pm8010-rpmh-regulators";
755                 qcom,pmic-id = "n";
756 
757                 vdd-l1-l2-supply = <&vreg_s1c_1p2>;
758                 vdd-l3-l4-supply = <&vreg_s6c_1p8>;
759                 vdd-l5-supply = <&vreg_bob2>;
760                 vdd-l6-supply = <&vreg_bob2>;
761                 vdd-l7-supply = <&vreg_bob1>;
762 
763                 vreg_l1n_1p1: ldo1 {
764                         regulator-name = "vreg_l1n_1p1";
765                         regulator-min-microvolt = <1104000>;
766                         regulator-max-microvolt = <1104000>;
767                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
768                         regulator-allow-set-load;
769                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
770                                                    RPMH_REGULATOR_MODE_HPM>;
771                 };
772 
773                 vreg_l2n_1p056: ldo2 {
774                         regulator-name = "vreg_l2n_1p056";
775                         regulator-min-microvolt = <1056000>;
776                         regulator-max-microvolt = <1056000>;
777                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
778                         regulator-allow-set-load;
779                         regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
780                                                    RPMH_REGULATOR_MODE_HPM>;
781                 };
782 
783                 vreg_l3n_1p8: ldo3 {
784                         regulator-name = "vreg_l3n_1p8";
785                         regulator-min-microvolt = <1800000>;
786                         regulator-max-microvolt = <1800000>;
787                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
788                 };
789 
790                 vreg_l4n_1p8: ldo4 {
791                         regulator-name = "vreg_l4n_1p8";
792                         regulator-min-microvolt = <1800000>;
793                         regulator-max-microvolt = <1800000>;
794                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
795                 };
796 
797                 vreg_l5n_2p8: ldo5 {
798                         regulator-name = "vreg_l5n_2p8";
799                         regulator-min-microvolt = <2800000>;
800                         regulator-max-microvolt = <2800000>;
801                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
802                 };
803 
804                 vreg_l6n_2p8: ldo6 {
805                         regulator-name = "vreg_l6n_2p8";
806                         regulator-min-microvolt = <2800000>;
807                         regulator-max-microvolt = <2800000>;
808                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
809                 };
810 
811                 vreg_l7n_3p3: ldo7 {
812                         regulator-name = "vreg_l7n_3p3";
813                         regulator-min-microvolt = <3304000>;
814                         regulator-max-microvolt = <3304000>;
815                         regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
816                 };
817         };
818 };
819 
820 &dispcc {
821         status = "okay";
822 };
823 
824 &gpi_dma1 {
825         status = "okay";
826 };
827 
828 &i2c3 {
829        status = "okay";
830 
831        wcd_usbss: typec-mux@e {
832                 compatible = "qcom,wcd9395-usbss", "qcom,wcd9390-usbss";
833                 reg = <0xe>;
834 
835                 vdd-supply = <&vreg_l15b_1p8>;
836                 reset-gpios = <&tlmm 152 GPIO_ACTIVE_HIGH>;
837 
838                 mode-switch;
839                 orientation-switch;
840 
841                 ports {
842                         #address-cells = <1>;
843                         #size-cells = <0>;
844 
845                         port@0 {
846                                 reg = <0>;
847 
848                                 wcd_usbss_sbu_mux: endpoint {
849                                         remote-endpoint = <&pmic_glink_sbu>;
850                                 };
851                         };
852                 };
853        };
854 };
855 
856 &i2c6 {
857         clock-frequency = <400000>;
858         status = "okay";
859 
860         lt9611_codec: hdmi-bridge@2b {
861                 compatible = "lontium,lt9611uxc";
862                 reg = <0x2b>;
863 
864                 interrupts-extended = <&tlmm 85 IRQ_TYPE_EDGE_FALLING>;
865 
866                 reset-gpios = <&tlmm 28 GPIO_ACTIVE_HIGH>;
867 
868                 vdd-supply = <&lt9611_1v2>;
869                 vcc-supply = <&lt9611_3v3>;
870 
871                 pinctrl-0 = <&lt9611_irq_pin>, <&lt9611_rst_pin>;
872                 pinctrl-names = "default";
873 
874                 ports {
875                         #address-cells = <1>;
876                         #size-cells = <0>;
877 
878                         port@0 {
879                                 reg = <0>;
880 
881                                 lt9611_a: endpoint {
882                                         remote-endpoint = <&mdss_dsi0_out>;
883                                 };
884                         };
885 
886                         port@2 {
887                                 reg = <2>;
888 
889                                 lt9611_out: endpoint {
890                                         remote-endpoint = <&hdmi_connector_out>;
891                                 };
892                         };
893                 };
894         };
895 };
896 
897 &ipa {
898         qcom,gsi-loader = "self";
899         memory-region = <&ipa_fw_mem>;
900         firmware-name = "qcom/sm8650/ipa_fws.mbn";
901         status = "okay";
902 };
903 
904 &gpu {
905         status = "okay";
906 
907         zap-shader {
908                 firmware-name = "qcom/sm8650/gen70900_zap.mbn";
909         };
910 };
911 
912 &lpass_tlmm {
913         spkr_1_sd_n_active: spkr-1-sd-n-active-state {
914                 pins = "gpio21";
915                 function = "gpio";
916                 drive-strength = <16>;
917                 bias-disable;
918                 output-low;
919         };
920 };
921 
922 &mdss {
923         status = "okay";
924 };
925 
926 &mdss_dsi0 {
927         vdda-supply = <&vreg_l3i_1p2>;
928 
929         status = "okay";
930 };
931 
932 &mdss_dsi0_out {
933         remote-endpoint = <&lt9611_a>;
934         data-lanes = <0 1 2 3>;
935 };
936 
937 &mdss_dsi0_phy {
938         vdds-supply = <&vreg_l1i_0p88>;
939 
940         status = "okay";
941 };
942 
943 &mdss_dp0 {
944         status = "okay";
945 };
946 
947 &mdss_dp0_out {
948         data-lanes = <0 1>;
949 };
950 
951 &pcie0 {
952         wake-gpios = <&tlmm 96 GPIO_ACTIVE_HIGH>;
953         perst-gpios = <&tlmm 94 GPIO_ACTIVE_LOW>;
954 
955         pinctrl-0 = <&pcie0_default_state>;
956         pinctrl-names = "default";
957 
958         status = "okay";
959 };
960 
961 &pcieport0 {
962         wifi@0 {
963                 compatible = "pci17cb,1107";
964                 reg = <0x10000 0x0 0x0 0x0 0x0>;
965 
966                 vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
967                 vddaon-supply = <&vreg_pmu_aon_0p59>;
968                 vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
969                 vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
970                 vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
971                 vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
972                 vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
973                 vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
974                 vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
975         };
976 };
977 
978 &pcie0_phy {
979         vdda-phy-supply = <&vreg_l1i_0p88>;
980         vdda-pll-supply = <&vreg_l3i_1p2>;
981 
982         status = "okay";
983 };
984 
985 &pcie1 {
986         wake-gpios = <&tlmm 99 GPIO_ACTIVE_HIGH>;
987         perst-gpios = <&tlmm 97 GPIO_ACTIVE_LOW>;
988 
989         pinctrl-0 = <&pcie1_default_state>;
990         pinctrl-names = "default";
991 
992         status = "okay";
993 };
994 
995 &pcie1_phy {
996         vdda-phy-supply = <&vreg_l3e_0p9>;
997         vdda-pll-supply = <&vreg_l3i_1p2>;
998         vdda-qref-supply = <&vreg_l1i_0p88>;
999 
1000         status = "okay";
1001 };
1002 
1003 &pm8550_gpios {
1004         sdc2_card_det_n: sdc2-card-det-state {
1005                 pins = "gpio12";
1006                 function = "normal";
1007                 bias-pull-up;
1008                 input-enable;
1009                 output-disable;
1010                 power-source = <1>; /* 1.8 V */
1011         };
1012 
1013         volume_up_n: volume-up-n-state {
1014                 pins = "gpio6";
1015                 function = "normal";
1016                 bias-pull-up;
1017                 input-enable;
1018                 power-source = <1>;
1019         };
1020 };
1021 
1022 /* The RGB signals are routed to 3 separate LEDs on the HDK8650 */
1023 &pm8550_pwm {
1024         #address-cells = <1>;
1025         #size-cells = <0>;
1026 
1027         status = "okay";
1028 
1029         led@1 {
1030                 reg = <1>;
1031                 function = LED_FUNCTION_STATUS;
1032                 color = <LED_COLOR_ID_RED>;
1033                 default-state = "off";
1034         };
1035 
1036         led@2 {
1037                 reg = <2>;
1038                 function = LED_FUNCTION_STATUS;
1039                 color = <LED_COLOR_ID_GREEN>;
1040                 default-state = "off";
1041         };
1042 
1043         led@3 {
1044                 reg = <3>;
1045                 function = LED_FUNCTION_STATUS;
1046                 color = <LED_COLOR_ID_BLUE>;
1047                 default-state = "off";
1048         };
1049 };
1050 
1051 &pm8550b_eusb2_repeater {
1052         vdd18-supply = <&vreg_l15b_1p8>;
1053         vdd3-supply = <&vreg_l5b_3p1>;
1054 };
1055 
1056 &pmk8550_rtc {
1057         status = "okay";
1058 };
1059 
1060 &pon_pwrkey {
1061         status = "okay";
1062 };
1063 
1064 &pon_resin {
1065         linux,code = <KEY_VOLUMEDOWN>;
1066 
1067         status = "okay";
1068 };
1069 
1070 &qup_i2c3_data_clk {
1071         /* Use internal I2C pull-up */
1072         bias-pull-up = <2200>;
1073 };
1074 
1075 &qupv3_id_0 {
1076         iommus = <&apps_smmu 0xa3 0x3>;
1077 
1078         status = "okay";
1079 };
1080 
1081 &qupv3_id_1 {
1082         status = "okay";
1083 };
1084 
1085 &remoteproc_adsp {
1086         firmware-name = "qcom/sm8650/adsp.mbn",
1087                         "qcom/sm8650/adsp_dtb.mbn";
1088 
1089         status = "okay";
1090 };
1091 
1092 &remoteproc_cdsp {
1093         firmware-name = "qcom/sm8650/cdsp.mbn",
1094                         "qcom/sm8650/cdsp_dtb.mbn";
1095 
1096         status = "okay";
1097 };
1098 
1099 &remoteproc_mpss {
1100         firmware-name = "qcom/sm8650/modem.mbn",
1101                         "qcom/sm8650/modem_dtb.mbn";
1102 
1103         status = "okay";
1104 };
1105 
1106 &sdhc_2 {
1107         cd-gpios = <&pm8550_gpios 12 GPIO_ACTIVE_HIGH>;
1108 
1109         vmmc-supply = <&vreg_l9b_2p9>;
1110         vqmmc-supply = <&vreg_l8b_1p8>;
1111         bus-width = <4>;
1112         no-sdio;
1113         no-mmc;
1114 
1115         pinctrl-0 = <&sdc2_default>, <&sdc2_card_det_n>;
1116         pinctrl-1 = <&sdc2_sleep>, <&sdc2_card_det_n>;
1117         pinctrl-names = "default", "sleep";
1118 
1119         status = "okay";
1120 };
1121 
1122 &sleep_clk {
1123         clock-frequency = <32000>;
1124 };
1125 
1126 &swr0 {
1127         status = "okay";
1128 
1129         /* WSA8845, Speaker North */
1130         north_spkr: speaker@0,0 {
1131                 compatible = "sdw20217020400";
1132                 reg = <0 0>;
1133                 pinctrl-0 = <&spkr_1_sd_n_active>;
1134                 pinctrl-names = "default";
1135                 powerdown-gpios = <&lpass_tlmm 21 GPIO_ACTIVE_LOW>;
1136                 #sound-dai-cells = <0>;
1137                 sound-name-prefix = "SpkrLeft";
1138                 vdd-1p8-supply = <&vreg_l15b_1p8>;
1139                 vdd-io-supply = <&vreg_l3c_1p2>;
1140 
1141                 /*
1142                  * WSA8845 Port 1 (DAC)     <=> SWR0 Port 1 (SPKR_L)
1143                  * WSA8845 Port 2 (COMP)    <=> SWR0 Port 2 (SPKR_L_COMP)
1144                  * WSA8845 Port 3 (BOOST)   <=> SWR0 Port 3 (SPKR_L_BOOST)
1145                  * WSA8845 Port 4 (PBR)     <=> SWR0 Port 7 (PBR)
1146                  * WSA8845 Port 5 (VISENSE) <=> SWR0 Port 10 (SPKR_L_VI)
1147                  * WSA8845 Port 6 (CPS)     <=> SWR0 Port 13 (CPS)
1148                  */
1149                 qcom,port-mapping = <1 2 3 7 10 13>;
1150         };
1151 
1152         /* WSA8845, Speaker South */
1153         south_spkr: speaker@0,1 {
1154                 compatible = "sdw20217020400";
1155                 reg = <0 1>;
1156                 pinctrl-0 = <&spkr_2_sd_n_active>;
1157                 pinctrl-names = "default";
1158                 powerdown-gpios = <&tlmm 77 GPIO_ACTIVE_LOW>;
1159                 #sound-dai-cells = <0>;
1160                 sound-name-prefix = "SpkrRight";
1161                 vdd-1p8-supply = <&vreg_l15b_1p8>;
1162                 vdd-io-supply = <&vreg_l3c_1p2>;
1163 
1164                 /*
1165                  * WSA8845 Port 1 (DAC)     <=> SWR0 Port 4 (SPKR_R)
1166                  * WSA8845 Port 2 (COMP)    <=> SWR0 Port 5 (SPKR_R_COMP)
1167                  * WSA8845 Port 3 (BOOST)   <=> SWR0 Port 6 (SPKR_R_BOOST)
1168                  * WSA8845 Port 4 (PBR)     <=> SWR0 Port 7 (PBR)
1169                  * WSA8845 Port 5 (VISENSE) <=> SWR0 Port 11 (SPKR_R_VI)
1170                  * WSA8845 Port 6 (CPS)     <=> SWR0 Port 13 (CPS)
1171                  */
1172                 qcom,port-mapping = <4 5 6 7 11 13>;
1173         };
1174 };
1175 
1176 &swr1 {
1177         status = "okay";
1178 
1179         /* WCD9395 RX */
1180         wcd_rx: codec@0,4 {
1181                 compatible = "sdw20217010e00";
1182                 reg = <0 4>;
1183 
1184                 /*
1185                  * WCD9395 RX Port 1 (HPH_L/R)      <=> SWR1 Port 1 (HPH_L/R)
1186                  * WCD9395 RX Port 2 (CLSH)         <=> SWR1 Port 2 (CLSH)
1187                  * WCD9395 RX Port 3 (COMP_L/R)     <=> SWR1 Port 3 (COMP_L/R)
1188                  * WCD9395 RX Port 4 (LO)           <=> SWR1 Port 4 (LO)
1189                  * WCD9395 RX Port 5 (DSD_L/R)      <=> SWR1 Port 5 (DSD_L/R)
1190                  * WCD9395 RX Port 6 (HIFI_PCM_L/R) <=> SWR1 Port 9 (HIFI_PCM_L/R)
1191                  */
1192                 qcom,rx-port-mapping = <1 2 3 4 5 9>;
1193         };
1194 };
1195 
1196 &swr2 {
1197         status = "okay";
1198 
1199         /* WCD9395 TX */
1200         wcd_tx: codec@0,3 {
1201                 compatible = "sdw20217010e00";
1202                 reg = <0 3>;
1203 
1204                 /*
1205                  * WCD9395 TX Port 1 (ADC1,2,3,4)         <=> SWR2 Port 2 (TX SWR_INPUT 0,1,2,3)
1206                  * WCD9395 TX Port 2 (ADC3,4 & DMIC0,1)   <=> SWR2 Port 2 (TX SWR_INPUT 0,1,2,3)
1207                  * WCD9395 TX Port 3 (DMIC0,1,2,3 & MBHC) <=> SWR2 Port 3 (TX SWR_INPUT 4,5,6,7)
1208                  * WCD9395 TX Port 4 (DMIC4,5,6,7)        <=> SWR2 Port 4 (TX SWR_INPUT 8,9,10,11)
1209                  */
1210                 qcom,tx-port-mapping = <2 2 3 4>;
1211         };
1212 };
1213 
1214 &tlmm {
1215         /* Reserved I/Os for NFC */
1216         gpio-reserved-ranges = <32 8>, <74 1>;
1217 
1218         bt_default: bt-default-state {
1219                 bt-en-pins {
1220                         pins = "gpio17";
1221                         function = "gpio";
1222                         drive-strength = <16>;
1223                         bias-disable;
1224                 };
1225 
1226                 sw-ctrl-pins {
1227                         pins = "gpio18";
1228                         function = "gpio";
1229                         bias-pull-down;
1230                 };
1231         };
1232 
1233         lt9611_irq_pin: lt9611-irq-state {
1234                 pins = "gpio85";
1235                 function = "gpio";
1236                 bias-disable;
1237         };
1238 
1239         lt9611_rst_pin: lt9611-rst-state {
1240                 pins = "gpio28";
1241                 function = "gpio";
1242                 output-high;
1243         };
1244 
1245         spkr_2_sd_n_active: spkr-2-sd-n-active-state {
1246                 pins = "gpio77";
1247                 function = "gpio";
1248                 drive-strength = <16>;
1249                 bias-disable;
1250                 output-low;
1251         };
1252 
1253         wcd_default: wcd-reset-n-active-state {
1254                 pins = "gpio107";
1255                 function = "gpio";
1256                 drive-strength = <16>;
1257                 bias-disable;
1258                 output-low;
1259         };
1260 
1261         wlan_en: wlan-en-state {
1262                 pins = "gpio16";
1263                 function = "gpio";
1264                 drive-strength = <8>;
1265                 bias-pull-down;
1266         };
1267 };
1268 
1269 &uart14 {
1270         status = "okay";
1271 
1272         bluetooth {
1273                 compatible = "qcom,wcn7850-bt";
1274 
1275                 vddio-supply = <&vreg_l3c_1p2>;
1276                 vddaon-supply = <&vreg_l15b_1p8>;
1277                 vdddig-supply = <&vreg_s3c_0p9>;
1278                 vddrfa0p8-supply = <&vreg_s3c_0p9>;
1279                 vddrfa1p2-supply = <&vreg_s1c_1p2>;
1280                 vddrfa1p9-supply = <&vreg_s6c_1p8>;
1281 
1282                 max-speed = <3200000>;
1283 
1284                 enable-gpios = <&tlmm 17 GPIO_ACTIVE_HIGH>;
1285                 swctrl-gpios = <&tlmm 18 GPIO_ACTIVE_HIGH>;
1286 
1287                 pinctrl-0 = <&bt_default>;
1288                 pinctrl-names = "default";
1289         };
1290 };
1291 
1292 &uart15 {
1293         status = "okay";
1294 };
1295 
1296 &ufs_mem_hc {
1297         reset-gpios = <&tlmm 210 GPIO_ACTIVE_LOW>;
1298 
1299         vcc-supply = <&vreg_l17b_2p5>;
1300         vcc-max-microamp = <1300000>;
1301         vccq-supply = <&vreg_l1c_1p2>;
1302         vccq-max-microamp = <1200000>;
1303 
1304         status = "okay";
1305 };
1306 
1307 &ufs_mem_phy {
1308         vdda-phy-supply = <&vreg_l1d_0p88>;
1309         vdda-pll-supply = <&vreg_l3i_1p2>;
1310 
1311         status = "okay";
1312 };
1313 
1314 /*
1315  * DPAUX -> WCD9395 -> USB_SBU -> USB-C
1316  * eUSB2 DP/DM -> PM85550HS -> eUSB2 DP/DM -> WCD9395 -> USB-C
1317  * USB SS -> USB-C
1318  */
1319 
1320 &usb_1 {
1321         status = "okay";
1322 };
1323 
1324 &usb_1_dwc3 {
1325         dr_mode = "otg";
1326         usb-role-switch;
1327 };
1328 
1329 &usb_1_dwc3_hs {
1330         remote-endpoint = <&pmic_glink_hs_in>;
1331 };
1332 
1333 &usb_1_hsphy {
1334         vdd-supply = <&vreg_l1i_0p88>;
1335         vdda12-supply = <&vreg_l3i_1p2>;
1336 
1337         phys = <&pm8550b_eusb2_repeater>;
1338 
1339         status = "okay";
1340 };
1341 
1342 &usb_dp_qmpphy {
1343         vdda-phy-supply = <&vreg_l3i_1p2>;
1344         vdda-pll-supply = <&vreg_l3g_0p91>;
1345 
1346         status = "okay";
1347 };
1348 
1349 &usb_dp_qmpphy_out {
1350         remote-endpoint = <&pmic_glink_ss_in>;
1351 };
1352 
1353 &xo_board {
1354         clock-frequency = <76800000>;
1355 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php