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

TOMOYO Linux Cross Reference
Linux/arch/arm64/boot/dts/qcom/sdm670.dtsi

Version: ~ [ linux-6.11.5 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.58 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.114 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.169 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.228 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.284 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.322 ] ~ [ 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: GPL-2.0
  2 /*
  3  * SDM670 SoC device tree source, adapted from SDM845 SoC device tree
  4  *
  5  * Copyright (c) 2018, The Linux Foundation. All rights reserved.
  6  * Copyright (c) 2022, Richard Acayan. All rights reserved.
  7  */
  8 
  9 #include <dt-bindings/clock/qcom,dispcc-sdm845.h>
 10 #include <dt-bindings/clock/qcom,gcc-sdm845.h>
 11 #include <dt-bindings/clock/qcom,rpmh.h>
 12 #include <dt-bindings/dma/qcom-gpi.h>
 13 #include <dt-bindings/gpio/gpio.h>
 14 #include <dt-bindings/interconnect/qcom,osm-l3.h>
 15 #include <dt-bindings/interconnect/qcom,sdm670-rpmh.h>
 16 #include <dt-bindings/interrupt-controller/arm-gic.h>
 17 #include <dt-bindings/phy/phy-qcom-qusb2.h>
 18 #include <dt-bindings/power/qcom-rpmpd.h>
 19 #include <dt-bindings/soc/qcom,rpmh-rsc.h>
 20 
 21 / {
 22         interrupt-parent = <&intc>;
 23 
 24         #address-cells = <2>;
 25         #size-cells = <2>;
 26 
 27         aliases { };
 28 
 29         chosen { };
 30 
 31         cpus {
 32                 #address-cells = <2>;
 33                 #size-cells = <0>;
 34 
 35                 CPU0: cpu@0 {
 36                         device_type = "cpu";
 37                         compatible = "qcom,kryo360";
 38                         reg = <0x0 0x0>;
 39                         enable-method = "psci";
 40                         capacity-dmips-mhz = <610>;
 41                         dynamic-power-coefficient = <203>;
 42                         qcom,freq-domain = <&cpufreq_hw 0>;
 43                         operating-points-v2 = <&cpu0_opp_table>;
 44                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
 45                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
 46                         power-domains = <&CPU_PD0>;
 47                         power-domain-names = "psci";
 48                         next-level-cache = <&L2_0>;
 49                         L2_0: l2-cache {
 50                                 compatible = "cache";
 51                                 next-level-cache = <&L3_0>;
 52                                 cache-level = <2>;
 53                                 cache-unified;
 54                                 L3_0: l3-cache {
 55                                         compatible = "cache";
 56                                         cache-level = <3>;
 57                                         cache-unified;
 58                                 };
 59                         };
 60                 };
 61 
 62                 CPU1: cpu@100 {
 63                         device_type = "cpu";
 64                         compatible = "qcom,kryo360";
 65                         reg = <0x0 0x100>;
 66                         enable-method = "psci";
 67                         capacity-dmips-mhz = <610>;
 68                         dynamic-power-coefficient = <203>;
 69                         qcom,freq-domain = <&cpufreq_hw 0>;
 70                         operating-points-v2 = <&cpu0_opp_table>;
 71                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
 72                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
 73                         power-domains = <&CPU_PD1>;
 74                         power-domain-names = "psci";
 75                         next-level-cache = <&L2_100>;
 76                         L2_100: l2-cache {
 77                                 compatible = "cache";
 78                                 cache-level = <2>;
 79                                 cache-unified;
 80                                 next-level-cache = <&L3_0>;
 81                         };
 82                 };
 83 
 84                 CPU2: cpu@200 {
 85                         device_type = "cpu";
 86                         compatible = "qcom,kryo360";
 87                         reg = <0x0 0x200>;
 88                         enable-method = "psci";
 89                         capacity-dmips-mhz = <610>;
 90                         dynamic-power-coefficient = <203>;
 91                         qcom,freq-domain = <&cpufreq_hw 0>;
 92                         operating-points-v2 = <&cpu0_opp_table>;
 93                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
 94                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
 95                         power-domains = <&CPU_PD2>;
 96                         power-domain-names = "psci";
 97                         next-level-cache = <&L2_200>;
 98                         L2_200: l2-cache {
 99                                 compatible = "cache";
100                                 cache-level = <2>;
101                                 cache-unified;
102                                 next-level-cache = <&L3_0>;
103                         };
104                 };
105 
106                 CPU3: cpu@300 {
107                         device_type = "cpu";
108                         compatible = "qcom,kryo360";
109                         reg = <0x0 0x300>;
110                         enable-method = "psci";
111                         capacity-dmips-mhz = <610>;
112                         dynamic-power-coefficient = <203>;
113                         qcom,freq-domain = <&cpufreq_hw 0>;
114                         operating-points-v2 = <&cpu0_opp_table>;
115                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
116                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
117                         power-domains = <&CPU_PD3>;
118                         power-domain-names = "psci";
119                         next-level-cache = <&L2_300>;
120                         L2_300: l2-cache {
121                                 compatible = "cache";
122                                 cache-level = <2>;
123                                 cache-unified;
124                                 next-level-cache = <&L3_0>;
125                         };
126                 };
127 
128                 CPU4: cpu@400 {
129                         device_type = "cpu";
130                         compatible = "qcom,kryo360";
131                         reg = <0x0 0x400>;
132                         enable-method = "psci";
133                         capacity-dmips-mhz = <610>;
134                         dynamic-power-coefficient = <203>;
135                         qcom,freq-domain = <&cpufreq_hw 0>;
136                         operating-points-v2 = <&cpu0_opp_table>;
137                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
138                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
139                         power-domains = <&CPU_PD4>;
140                         power-domain-names = "psci";
141                         next-level-cache = <&L2_400>;
142                         L2_400: l2-cache {
143                                 compatible = "cache";
144                                 cache-level = <2>;
145                                 cache-unified;
146                                 next-level-cache = <&L3_0>;
147                         };
148                 };
149 
150                 CPU5: cpu@500 {
151                         device_type = "cpu";
152                         compatible = "qcom,kryo360";
153                         reg = <0x0 0x500>;
154                         enable-method = "psci";
155                         capacity-dmips-mhz = <610>;
156                         dynamic-power-coefficient = <203>;
157                         qcom,freq-domain = <&cpufreq_hw 0>;
158                         operating-points-v2 = <&cpu0_opp_table>;
159                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
160                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
161                         power-domains = <&CPU_PD5>;
162                         power-domain-names = "psci";
163                         next-level-cache = <&L2_500>;
164                         L2_500: l2-cache {
165                                 compatible = "cache";
166                                 cache-level = <2>;
167                                 cache-unified;
168                                 next-level-cache = <&L3_0>;
169                         };
170                 };
171 
172                 CPU6: cpu@600 {
173                         device_type = "cpu";
174                         compatible = "qcom,kryo360";
175                         reg = <0x0 0x600>;
176                         enable-method = "psci";
177                         capacity-dmips-mhz = <1024>;
178                         dynamic-power-coefficient = <393>;
179                         qcom,freq-domain = <&cpufreq_hw 1>;
180                         operating-points-v2 = <&cpu6_opp_table>;
181                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
182                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
183                         power-domains = <&CPU_PD6>;
184                         power-domain-names = "psci";
185                         next-level-cache = <&L2_600>;
186                         L2_600: l2-cache {
187                                 compatible = "cache";
188                                 cache-level = <2>;
189                                 cache-unified;
190                                 next-level-cache = <&L3_0>;
191                         };
192                 };
193 
194                 CPU7: cpu@700 {
195                         device_type = "cpu";
196                         compatible = "qcom,kryo360";
197                         reg = <0x0 0x700>;
198                         enable-method = "psci";
199                         capacity-dmips-mhz = <1024>;
200                         dynamic-power-coefficient = <393>;
201                         qcom,freq-domain = <&cpufreq_hw 1>;
202                         operating-points-v2 = <&cpu6_opp_table>;
203                         interconnects = <&gladiator_noc MASTER_AMPSS_M0 3 &mem_noc SLAVE_EBI_CH0 3>,
204                                         <&osm_l3 MASTER_OSM_L3_APPS &osm_l3 SLAVE_OSM_L3>;
205                         power-domains = <&CPU_PD7>;
206                         power-domain-names = "psci";
207                         next-level-cache = <&L2_700>;
208                         L2_700: l2-cache {
209                                 compatible = "cache";
210                                 cache-level = <2>;
211                                 cache-unified;
212                                 next-level-cache = <&L3_0>;
213                         };
214                 };
215 
216                 cpu-map {
217                         cluster0 {
218                                 core0 {
219                                         cpu = <&CPU0>;
220                                 };
221 
222                                 core1 {
223                                         cpu = <&CPU1>;
224                                 };
225 
226                                 core2 {
227                                         cpu = <&CPU2>;
228                                 };
229 
230                                 core3 {
231                                         cpu = <&CPU3>;
232                                 };
233 
234                                 core4 {
235                                         cpu = <&CPU4>;
236                                 };
237 
238                                 core5 {
239                                         cpu = <&CPU5>;
240                                 };
241 
242                                 core6 {
243                                         cpu = <&CPU6>;
244                                 };
245 
246                                 core7 {
247                                         cpu = <&CPU7>;
248                                 };
249                         };
250                 };
251 
252                 idle-states {
253                         entry-method = "psci";
254 
255                         LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 {
256                                 compatible = "arm,idle-state";
257                                 idle-state-name = "little-rail-power-collapse";
258                                 arm,psci-suspend-param = <0x40000004>;
259                                 entry-latency-us = <702>;
260                                 exit-latency-us = <915>;
261                                 min-residency-us = <1617>;
262                                 local-timer-stop;
263                         };
264 
265                         BIG_CPU_SLEEP_0: cpu-sleep-1-0 {
266                                 compatible = "arm,idle-state";
267                                 idle-state-name = "big-rail-power-collapse";
268                                 arm,psci-suspend-param = <0x40000004>;
269                                 entry-latency-us = <526>;
270                                 exit-latency-us = <1854>;
271                                 min-residency-us = <2380>;
272                                 local-timer-stop;
273                         };
274                 };
275 
276                 domain-idle-states {
277                         CLUSTER_SLEEP_0: cluster-sleep-0 {
278                                 compatible = "domain-idle-state";
279                                 arm,psci-suspend-param = <0x4100c244>;
280                                 entry-latency-us = <3263>;
281                                 exit-latency-us = <6562>;
282                                 min-residency-us = <9825>;
283                         };
284                 };
285         };
286 
287         firmware {
288                 scm {
289                         compatible = "qcom,scm-sdm670", "qcom,scm";
290                 };
291         };
292 
293         memory@80000000 {
294                 device_type = "memory";
295                 /* We expect the bootloader to fill in the size */
296                 reg = <0x0 0x80000000 0x0 0x0>;
297         };
298 
299         cpu0_opp_table: opp-table-cpu0 {
300                 compatible = "operating-points-v2";
301                 opp-shared;
302 
303                 cpu0_opp1: opp-300000000 {
304                         opp-hz = /bits/ 64 <300000000>;
305                         opp-peak-kBps = <400000 4800000>;
306                 };
307 
308                 cpu0_opp2: opp-576000000 {
309                         opp-hz = /bits/ 64 <576000000>;
310                         opp-peak-kBps = <400000 4800000>;
311                 };
312 
313                 cpu0_opp3: opp-748800000 {
314                         opp-hz = /bits/ 64 <748800000>;
315                         opp-peak-kBps = <1200000 4800000>;
316                 };
317 
318                 cpu0_opp4: opp-998400000 {
319                         opp-hz = /bits/ 64 <998400000>;
320                         opp-peak-kBps = <1804000 8908800>;
321                 };
322 
323                 cpu0_opp5: opp-1209600000 {
324                         opp-hz = /bits/ 64 <1209600000>;
325                         opp-peak-kBps = <2188000 8908800>;
326                 };
327 
328                 cpu0_opp6: opp-1324800000 {
329                         opp-hz = /bits/ 64 <1324800000>;
330                         opp-peak-kBps = <2188000 13516800>;
331                 };
332 
333                 cpu0_opp7: opp-1516800000 {
334                         opp-hz = /bits/ 64 <1516800000>;
335                         opp-peak-kBps = <3072000 15052800>;
336                 };
337 
338                 cpu0_opp8: opp-1612800000 {
339                         opp-hz = /bits/ 64 <1612800000>;
340                         opp-peak-kBps = <3072000 22118400>;
341                 };
342 
343                 cpu0_opp9: opp-1708800000 {
344                         opp-hz = /bits/ 64 <1708800000>;
345                         opp-peak-kBps = <4068000 23040000>;
346                 };
347         };
348 
349         cpu6_opp_table: opp-table-cpu6 {
350                 compatible = "operating-points-v2";
351                 opp-shared;
352 
353                 cpu6_opp1: opp-300000000 {
354                         opp-hz = /bits/ 64 <300000000>;
355                         opp-peak-kBps = <400000 4800000>;
356                 };
357 
358                 cpu6_opp2: opp-652800000 {
359                         opp-hz = /bits/ 64 <652800000>;
360                         opp-peak-kBps = <400000 4800000>;
361                 };
362 
363                 cpu6_opp3: opp-825600000 {
364                         opp-hz = /bits/ 64 <825600000>;
365                         opp-peak-kBps = <1200000 4800000>;
366                 };
367 
368                 cpu6_opp4: opp-979200000 {
369                         opp-hz = /bits/ 64 <979200000>;
370                         opp-peak-kBps = <1200000 4800000>;
371                 };
372 
373                 cpu6_opp5: opp-1132800000 {
374                         opp-hz = /bits/ 64 <1132800000>;
375                         opp-peak-kBps = <2188000 8908800>;
376                 };
377 
378                 cpu6_opp6: opp-1363200000 {
379                         opp-hz = /bits/ 64 <1363200000>;
380                         opp-peak-kBps = <4068000 12902400>;
381                 };
382 
383                 cpu6_opp7: opp-1536000000 {
384                         opp-hz = /bits/ 64 <1536000000>;
385                         opp-peak-kBps = <4068000 12902400>;
386                 };
387 
388                 cpu6_opp8: opp-1747200000 {
389                         opp-hz = /bits/ 64 <1747200000>;
390                         opp-peak-kBps = <4068000 15052800>;
391                 };
392 
393                 cpu6_opp9: opp-1843200000 {
394                         opp-hz = /bits/ 64 <1843200000>;
395                         opp-peak-kBps = <4068000 15052800>;
396                 };
397 
398                 cpu6_opp10: opp-1996800000 {
399                         opp-hz = /bits/ 64 <1996800000>;
400                         opp-peak-kBps = <6220000 19046400>;
401                 };
402         };
403 
404         dsi_opp_table: opp-table-dsi {
405                 compatible = "operating-points-v2";
406 
407                 opp-19200000 {
408                         opp-hz = /bits/ 64 <19200000>;
409                         required-opps = <&rpmhpd_opp_min_svs>;
410                 };
411 
412                 opp-180000000 {
413                         opp-hz = /bits/ 64 <180000000>;
414                         required-opps = <&rpmhpd_opp_low_svs>;
415                 };
416 
417                 opp-275000000 {
418                         opp-hz = /bits/ 64 <275000000>;
419                         required-opps = <&rpmhpd_opp_svs>;
420                 };
421 
422                 opp-358000000 {
423                         opp-hz = /bits/ 64 <358000000>;
424                         required-opps = <&rpmhpd_opp_svs_l1>;
425                 };
426         };
427 
428         psci {
429                 compatible = "arm,psci-1.0";
430                 method = "smc";
431 
432                 CPU_PD0: power-domain-cpu0 {
433                         #power-domain-cells = <0>;
434                         power-domains = <&CLUSTER_PD>;
435                         domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
436                 };
437 
438                 CPU_PD1: power-domain-cpu1 {
439                         #power-domain-cells = <0>;
440                         power-domains = <&CLUSTER_PD>;
441                         domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
442                 };
443 
444                 CPU_PD2: power-domain-cpu2 {
445                         #power-domain-cells = <0>;
446                         power-domains = <&CLUSTER_PD>;
447                         domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
448                 };
449 
450                 CPU_PD3: power-domain-cpu3 {
451                         #power-domain-cells = <0>;
452                         power-domains = <&CLUSTER_PD>;
453                         domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
454                 };
455 
456                 CPU_PD4: power-domain-cpu4 {
457                         #power-domain-cells = <0>;
458                         power-domains = <&CLUSTER_PD>;
459                         domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
460                 };
461 
462                 CPU_PD5: power-domain-cpu5 {
463                         #power-domain-cells = <0>;
464                         power-domains = <&CLUSTER_PD>;
465                         domain-idle-states = <&LITTLE_CPU_SLEEP_0>;
466                 };
467 
468                 CPU_PD6: power-domain-cpu6 {
469                         #power-domain-cells = <0>;
470                         power-domains = <&CLUSTER_PD>;
471                         domain-idle-states = <&BIG_CPU_SLEEP_0>;
472                 };
473 
474                 CPU_PD7: power-domain-cpu7 {
475                         #power-domain-cells = <0>;
476                         power-domains = <&CLUSTER_PD>;
477                         domain-idle-states = <&BIG_CPU_SLEEP_0>;
478                 };
479 
480                 CLUSTER_PD: power-domain-cluster {
481                         #power-domain-cells = <0>;
482                         domain-idle-states = <&CLUSTER_SLEEP_0>;
483                 };
484         };
485 
486         reserved-memory {
487                 #address-cells = <2>;
488                 #size-cells = <2>;
489                 ranges;
490 
491                 hyp_mem: hyp-mem@85700000 {
492                         reg = <0 0x85700000 0 0x600000>;
493                         no-map;
494                 };
495 
496                 xbl_mem: xbl-mem@85e00000 {
497                         reg = <0 0x85e00000 0 0x100000>;
498                         no-map;
499                 };
500 
501                 aop_mem: aop-mem@85fc0000 {
502                         reg = <0 0x85fc0000 0 0x20000>;
503                         no-map;
504                 };
505 
506                 aop_cmd_db_mem: aop-cmd-db-mem@85fe0000 {
507                         compatible = "qcom,cmd-db";
508                         reg = <0 0x85fe0000 0 0x20000>;
509                         no-map;
510                 };
511 
512                 smem@86000000 {
513                         compatible = "qcom,smem";
514                         reg = <0 0x86000000 0 0x200000>;
515                         no-map;
516                         hwlocks = <&tcsr_mutex 3>;
517                 };
518 
519                 tz_mem: tz@86200000 {
520                         reg = <0 0x86200000 0 0x2d00000>;
521                         no-map;
522                 };
523 
524                 camera_mem: camera-mem@8ab00000 {
525                         reg = <0 0x8ab00000 0 0x500000>;
526                         no-map;
527                 };
528 
529                 mpss_region: mpss@8b000000 {
530                         reg = <0 0x8b000000 0 0x7e00000>;
531                         no-map;
532                 };
533 
534                 venus_mem: venus@92e00000 {
535                         reg = <0 0x92e00000 0 0x500000>;
536                         no-map;
537                 };
538 
539                 wlan_msa_mem: wlan-msa@93300000 {
540                         reg = <0 0x93300000 0 0x100000>;
541                         no-map;
542                 };
543 
544                 cdsp_mem: cdsp@93400000 {
545                         reg = <0 0x93400000 0 0x800000>;
546                         no-map;
547                 };
548 
549                 mba_region: mba@93c00000 {
550                         reg = <0 0x93c00000 0 0x200000>;
551                         no-map;
552                 };
553 
554                 adsp_mem: adsp@93e00000 {
555                         reg = <0 0x93e00000 0 0x1e00000>;
556                         no-map;
557                 };
558 
559                 ipa_fw_mem: ipa-fw@95c00000 {
560                         reg = <0 0x95c00000 0 0x10000>;
561                         no-map;
562                 };
563 
564                 ipa_gsi_mem: ipa-gsi@95c10000 {
565                         reg = <0 0x95c10000 0 0x5000>;
566                         no-map;
567                 };
568 
569                 gpu_mem: gpu@95c15000 {
570                         reg = <0 0x95c15000 0 0x2000>;
571                         no-map;
572                 };
573 
574                 spss_mem: spss@97b00000 {
575                         reg = <0 0x97b00000 0 0x100000>;
576                         no-map;
577                 };
578 
579                 qseecom_mem: qseecom@9e400000 {
580                         reg = <0 0x9e400000 0 0x1400000>;
581                         no-map;
582                 };
583         };
584 
585         timer {
586                 compatible = "arm,armv8-timer";
587                 interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>,
588                              <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>,
589                              <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>,
590                              <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>;
591         };
592 
593         soc: soc@0 {
594                 #address-cells = <2>;
595                 #size-cells = <2>;
596                 ranges = <0 0 0 0 0x10 0>;
597                 dma-ranges = <0 0 0 0 0x10 0>;
598                 compatible = "simple-bus";
599 
600                 gcc: clock-controller@100000 {
601                         compatible = "qcom,gcc-sdm670";
602                         reg = <0 0x00100000 0 0x1f0000>;
603                         clocks = <&rpmhcc RPMH_CXO_CLK>,
604                                  <&rpmhcc RPMH_CXO_CLK_A>,
605                                  <&sleep_clk>;
606                         clock-names = "bi_tcxo",
607                                       "bi_tcxo_ao",
608                                       "sleep_clk";
609                         #clock-cells = <1>;
610                         #reset-cells = <1>;
611                         #power-domain-cells = <1>;
612                 };
613 
614                 qfprom: qfprom@784000 {
615                         compatible = "qcom,sdm670-qfprom", "qcom,qfprom";
616                         reg = <0 0x00784000 0 0x1000>;
617                         #address-cells = <1>;
618                         #size-cells = <1>;
619 
620                         qusb2_hstx_trim: hstx-trim@1eb {
621                                 reg = <0x1eb 0x1>;
622                                 bits = <1 4>;
623                         };
624                 };
625 
626                 sdhc_1: mmc@7c4000 {
627                         compatible = "qcom,sdm670-sdhci", "qcom,sdhci-msm-v5";
628                         reg = <0 0x007c4000 0 0x1000>,
629                               <0 0x007c5000 0 0x1000>,
630                               <0 0x007c8000 0 0x8000>;
631                         reg-names = "hc", "cqhci", "ice";
632 
633                         interrupts = <GIC_SPI 641 IRQ_TYPE_LEVEL_HIGH>,
634                                      <GIC_SPI 644 IRQ_TYPE_LEVEL_HIGH>;
635                         interrupt-names = "hc_irq", "pwr_irq";
636 
637                         clocks = <&gcc GCC_SDCC1_AHB_CLK>,
638                                  <&gcc GCC_SDCC1_APPS_CLK>,
639                                  <&rpmhcc RPMH_CXO_CLK>,
640                                  <&gcc GCC_SDCC1_ICE_CORE_CLK>,
641                                  <&gcc GCC_AGGRE_UFS_PHY_AXI_CLK>;
642                         clock-names = "iface", "core", "xo", "ice", "bus";
643                         interconnects = <&aggre1_noc MASTER_EMMC 0 &aggre1_noc SLAVE_A1NOC_SNOC 0>,
644                                         <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_EMMC_CFG 0>;
645                         interconnect-names = "sdhc-ddr", "cpu-sdhc";
646                         operating-points-v2 = <&sdhc1_opp_table>;
647 
648                         iommus = <&apps_smmu 0x140 0xf>;
649 
650                         pinctrl-names = "default", "sleep";
651                         pinctrl-0 = <&sdc1_state_on>;
652                         pinctrl-1 = <&sdc1_state_off>;
653                         power-domains = <&rpmhpd SDM670_CX>;
654 
655                         bus-width = <8>;
656                         non-removable;
657 
658                         status = "disabled";
659 
660                         sdhc1_opp_table: opp-table {
661                                 compatible = "operating-points-v2";
662 
663                                 opp-20000000 {
664                                         opp-hz = /bits/ 64 <20000000>;
665                                         required-opps = <&rpmhpd_opp_min_svs>;
666                                         opp-peak-kBps = <80000 80000>;
667                                         opp-avg-kBps = <52286 80000>;
668                                 };
669 
670                                 opp-50000000 {
671                                         opp-hz = /bits/ 64 <50000000>;
672                                         required-opps = <&rpmhpd_opp_low_svs>;
673                                         opp-peak-kBps = <200000 100000>;
674                                         opp-avg-kBps = <130718 100000>;
675                                 };
676 
677                                 opp-100000000 {
678                                         opp-hz = /bits/ 64 <100000000>;
679                                         required-opps = <&rpmhpd_opp_svs>;
680                                         opp-peak-kBps = <200000 130000>;
681                                         opp-avg-kBps = <130718 130000>;
682                                 };
683 
684                                 opp-384000000 {
685                                         opp-hz = /bits/ 64 <384000000>;
686                                         required-opps = <&rpmhpd_opp_nom>;
687                                         opp-peak-kBps = <4096000 4096000>;
688                                         opp-avg-kBps = <1338562 1338562>;
689                                 };
690                         };
691                 };
692 
693                 gpi_dma0: dma-controller@800000 {
694                         #dma-cells = <3>;
695                         compatible = "qcom,sdm670-gpi-dma", "qcom,sdm845-gpi-dma";
696                         reg = <0 0x00800000 0 0x60000>;
697                         interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>,
698                                      <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>,
699                                      <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>,
700                                      <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>,
701                                      <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>,
702                                      <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>,
703                                      <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>,
704                                      <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>,
705                                      <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>,
706                                      <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>,
707                                      <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>,
708                                      <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>,
709                                      <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>;
710                         dma-channels = <13>;
711                         dma-channel-mask = <0xfa>;
712                         iommus = <&apps_smmu 0x16 0x0>;
713                         status = "disabled";
714                 };
715 
716                 qupv3_id_0: geniqup@8c0000 {
717                         compatible = "qcom,geni-se-qup";
718                         reg = <0 0x008c0000 0 0x6000>;
719                         clock-names = "m-ahb", "s-ahb";
720                         clocks = <&gcc GCC_QUPV3_WRAP_0_M_AHB_CLK>,
721                                  <&gcc GCC_QUPV3_WRAP_0_S_AHB_CLK>;
722                         iommus = <&apps_smmu 0x3 0x0>;
723                         #address-cells = <2>;
724                         #size-cells = <2>;
725                         ranges;
726                         interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>;
727                         interconnect-names = "qup-core";
728                         status = "disabled";
729 
730                         i2c0: i2c@880000 {
731                                 compatible = "qcom,geni-i2c";
732                                 reg = <0 0x00880000 0 0x4000>;
733                                 clock-names = "se";
734                                 clocks = <&gcc GCC_QUPV3_WRAP0_S0_CLK>;
735                                 pinctrl-names = "default";
736                                 pinctrl-0 = <&qup_i2c0_default>;
737                                 interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>;
738                                 #address-cells = <1>;
739                                 #size-cells = <0>;
740                                 power-domains = <&rpmhpd SDM670_CX>;
741                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
742                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
743                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
744                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
745                                 dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>,
746                                        <&gpi_dma0 1 0 QCOM_GPI_I2C>;
747                                 dma-names = "tx", "rx";
748                                 status = "disabled";
749                         };
750 
751                         i2c1: i2c@884000 {
752                                 compatible = "qcom,geni-i2c";
753                                 reg = <0 0x00884000 0 0x4000>;
754                                 clock-names = "se";
755                                 clocks = <&gcc GCC_QUPV3_WRAP0_S1_CLK>;
756                                 pinctrl-names = "default";
757                                 pinctrl-0 = <&qup_i2c1_default>;
758                                 interrupts = <GIC_SPI 602 IRQ_TYPE_LEVEL_HIGH>;
759                                 #address-cells = <1>;
760                                 #size-cells = <0>;
761                                 power-domains = <&rpmhpd SDM670_CX>;
762                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
763                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
764                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
765                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
766                                 dmas = <&gpi_dma0 0 1 QCOM_GPI_I2C>,
767                                        <&gpi_dma0 1 1 QCOM_GPI_I2C>;
768                                 dma-names = "tx", "rx";
769                                 status = "disabled";
770                         };
771 
772                         i2c2: i2c@888000 {
773                                 compatible = "qcom,geni-i2c";
774                                 reg = <0 0x00888000 0 0x4000>;
775                                 clock-names = "se";
776                                 clocks = <&gcc GCC_QUPV3_WRAP0_S2_CLK>;
777                                 pinctrl-names = "default";
778                                 pinctrl-0 = <&qup_i2c2_default>;
779                                 interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>;
780                                 #address-cells = <1>;
781                                 #size-cells = <0>;
782                                 power-domains = <&rpmhpd SDM670_CX>;
783                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
784                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
785                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
786                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
787                                 dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>,
788                                        <&gpi_dma0 1 2 QCOM_GPI_I2C>;
789                                 dma-names = "tx", "rx";
790                                 status = "disabled";
791                         };
792 
793                         i2c3: i2c@88c000 {
794                                 compatible = "qcom,geni-i2c";
795                                 reg = <0 0x0088c000 0 0x4000>;
796                                 clock-names = "se";
797                                 clocks = <&gcc GCC_QUPV3_WRAP0_S3_CLK>;
798                                 pinctrl-names = "default";
799                                 pinctrl-0 = <&qup_i2c3_default>;
800                                 interrupts = <GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>;
801                                 #address-cells = <1>;
802                                 #size-cells = <0>;
803                                 power-domains = <&rpmhpd SDM670_CX>;
804                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
805                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
806                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
807                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
808                                 dmas = <&gpi_dma0 0 3 QCOM_GPI_I2C>,
809                                        <&gpi_dma0 1 3 QCOM_GPI_I2C>;
810                                 dma-names = "tx", "rx";
811                                 status = "disabled";
812                         };
813 
814                         i2c4: i2c@890000 {
815                                 compatible = "qcom,geni-i2c";
816                                 reg = <0 0x00890000 0 0x4000>;
817                                 clock-names = "se";
818                                 clocks = <&gcc GCC_QUPV3_WRAP0_S4_CLK>;
819                                 pinctrl-names = "default";
820                                 pinctrl-0 = <&qup_i2c4_default>;
821                                 interrupts = <GIC_SPI 605 IRQ_TYPE_LEVEL_HIGH>;
822                                 #address-cells = <1>;
823                                 #size-cells = <0>;
824                                 power-domains = <&rpmhpd SDM670_CX>;
825                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
826                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
827                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
828                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
829                                 dmas = <&gpi_dma0 0 4 QCOM_GPI_I2C>,
830                                        <&gpi_dma0 1 4 QCOM_GPI_I2C>;
831                                 dma-names = "tx", "rx";
832                                 status = "disabled";
833                         };
834 
835                         i2c5: i2c@894000 {
836                                 compatible = "qcom,geni-i2c";
837                                 reg = <0 0x00894000 0 0x4000>;
838                                 clock-names = "se";
839                                 clocks = <&gcc GCC_QUPV3_WRAP0_S5_CLK>;
840                                 pinctrl-names = "default";
841                                 pinctrl-0 = <&qup_i2c5_default>;
842                                 interrupts = <GIC_SPI 606 IRQ_TYPE_LEVEL_HIGH>;
843                                 #address-cells = <1>;
844                                 #size-cells = <0>;
845                                 power-domains = <&rpmhpd SDM670_CX>;
846                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
847                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
848                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
849                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
850                                 dmas = <&gpi_dma0 0 5 QCOM_GPI_I2C>,
851                                        <&gpi_dma0 1 5 QCOM_GPI_I2C>;
852                                 dma-names = "tx", "rx";
853                                 status = "disabled";
854                         };
855 
856                         i2c6: i2c@898000 {
857                                 compatible = "qcom,geni-i2c";
858                                 reg = <0 0x00898000 0 0x4000>;
859                                 clock-names = "se";
860                                 clocks = <&gcc GCC_QUPV3_WRAP0_S6_CLK>;
861                                 pinctrl-names = "default";
862                                 pinctrl-0 = <&qup_i2c6_default>;
863                                 interrupts = <GIC_SPI 607 IRQ_TYPE_LEVEL_HIGH>;
864                                 #address-cells = <1>;
865                                 #size-cells = <0>;
866                                 power-domains = <&rpmhpd SDM670_CX>;
867                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
868                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
869                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
870                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
871                                 dmas = <&gpi_dma0 0 6 QCOM_GPI_I2C>,
872                                        <&gpi_dma0 1 6 QCOM_GPI_I2C>;
873                                 dma-names = "tx", "rx";
874                                 status = "disabled";
875                         };
876 
877                         i2c7: i2c@89c000 {
878                                 compatible = "qcom,geni-i2c";
879                                 reg = <0 0x0089c000 0 0x4000>;
880                                 clock-names = "se";
881                                 clocks = <&gcc GCC_QUPV3_WRAP0_S7_CLK>;
882                                 pinctrl-names = "default";
883                                 pinctrl-0 = <&qup_i2c7_default>;
884                                 interrupts = <GIC_SPI 608 IRQ_TYPE_LEVEL_HIGH>;
885                                 #address-cells = <1>;
886                                 #size-cells = <0>;
887                                 power-domains = <&rpmhpd SDM670_CX>;
888                                 interconnects = <&aggre1_noc MASTER_BLSP_1 0 &config_noc SLAVE_BLSP_1 0>,
889                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_1 0>,
890                                                 <&aggre1_noc MASTER_BLSP_1 0 &mem_noc SLAVE_EBI_CH0 0>;
891                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
892                                 dmas = <&gpi_dma0 0 7 QCOM_GPI_I2C>,
893                                        <&gpi_dma0 1 7 QCOM_GPI_I2C>;
894                                 dma-names = "tx", "rx";
895                                 status = "disabled";
896                         };
897                 };
898 
899                 gpi_dma1: dma-controller@a00000 {
900                         #dma-cells = <3>;
901                         compatible = "qcom,sdm670-gpi-dma", "qcom,sdm845-gpi-dma";
902                         reg = <0 0x00a00000 0 0x60000>;
903                         interrupts = <GIC_SPI 279 IRQ_TYPE_LEVEL_HIGH>,
904                                      <GIC_SPI 280 IRQ_TYPE_LEVEL_HIGH>,
905                                      <GIC_SPI 281 IRQ_TYPE_LEVEL_HIGH>,
906                                      <GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>,
907                                      <GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>,
908                                      <GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>,
909                                      <GIC_SPI 293 IRQ_TYPE_LEVEL_HIGH>,
910                                      <GIC_SPI 294 IRQ_TYPE_LEVEL_HIGH>,
911                                      <GIC_SPI 295 IRQ_TYPE_LEVEL_HIGH>,
912                                      <GIC_SPI 296 IRQ_TYPE_LEVEL_HIGH>,
913                                      <GIC_SPI 297 IRQ_TYPE_LEVEL_HIGH>,
914                                      <GIC_SPI 298 IRQ_TYPE_LEVEL_HIGH>,
915                                      <GIC_SPI 299 IRQ_TYPE_LEVEL_HIGH>;
916                         dma-channels = <13>;
917                         dma-channel-mask = <0xfa>;
918                         iommus = <&apps_smmu 0x6d6 0x0>;
919                         status = "disabled";
920                 };
921 
922                 qupv3_id_1: geniqup@ac0000 {
923                         compatible = "qcom,geni-se-qup";
924                         reg = <0 0x00ac0000 0 0x6000>;
925                         clock-names = "m-ahb", "s-ahb";
926                         clocks = <&gcc GCC_QUPV3_WRAP_1_M_AHB_CLK>,
927                                  <&gcc GCC_QUPV3_WRAP_1_S_AHB_CLK>;
928                         iommus = <&apps_smmu 0x6c3 0x0>;
929                         #address-cells = <2>;
930                         #size-cells = <2>;
931                         ranges;
932                         interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>;
933                         interconnect-names = "qup-core";
934                         status = "disabled";
935 
936                         i2c8: i2c@a80000 {
937                                 compatible = "qcom,geni-i2c";
938                                 reg = <0 0x00a80000 0 0x4000>;
939                                 clock-names = "se";
940                                 clocks = <&gcc GCC_QUPV3_WRAP1_S0_CLK>;
941                                 pinctrl-names = "default";
942                                 pinctrl-0 = <&qup_i2c8_default>;
943                                 interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
944                                 #address-cells = <1>;
945                                 #size-cells = <0>;
946                                 power-domains = <&rpmhpd SDM670_CX>;
947                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
948                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
949                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
950                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
951                                 dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>,
952                                        <&gpi_dma1 1 0 QCOM_GPI_I2C>;
953                                 dma-names = "tx", "rx";
954                                 status = "disabled";
955                         };
956 
957                         i2c9: i2c@a84000 {
958                                 compatible = "qcom,geni-i2c";
959                                 reg = <0 0x00a84000 0 0x4000>;
960                                 clock-names = "se";
961                                 clocks = <&gcc GCC_QUPV3_WRAP1_S1_CLK>;
962                                 pinctrl-names = "default";
963                                 pinctrl-0 = <&qup_i2c9_default>;
964                                 interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>;
965                                 #address-cells = <1>;
966                                 #size-cells = <0>;
967                                 power-domains = <&rpmhpd SDM670_CX>;
968                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
969                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
970                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
971                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
972                                 dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>,
973                                        <&gpi_dma1 1 1 QCOM_GPI_I2C>;
974                                 dma-names = "tx", "rx";
975                                 status = "disabled";
976                         };
977 
978                         i2c10: i2c@a88000 {
979                                 compatible = "qcom,geni-i2c";
980                                 reg = <0 0x00a88000 0 0x4000>;
981                                 clock-names = "se";
982                                 clocks = <&gcc GCC_QUPV3_WRAP1_S2_CLK>;
983                                 pinctrl-names = "default";
984                                 pinctrl-0 = <&qup_i2c10_default>;
985                                 interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>;
986                                 #address-cells = <1>;
987                                 #size-cells = <0>;
988                                 power-domains = <&rpmhpd SDM670_CX>;
989                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
990                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
991                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
992                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
993                                 dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>,
994                                        <&gpi_dma1 1 2 QCOM_GPI_I2C>;
995                                 dma-names = "tx", "rx";
996                                 status = "disabled";
997                         };
998 
999                         i2c11: i2c@a8c000 {
1000                                 compatible = "qcom,geni-i2c";
1001                                 reg = <0 0x00a8c000 0 0x4000>;
1002                                 clock-names = "se";
1003                                 clocks = <&gcc GCC_QUPV3_WRAP1_S3_CLK>;
1004                                 pinctrl-names = "default";
1005                                 pinctrl-0 = <&qup_i2c11_default>;
1006                                 interrupts = <GIC_SPI 356 IRQ_TYPE_LEVEL_HIGH>;
1007                                 #address-cells = <1>;
1008                                 #size-cells = <0>;
1009                                 power-domains = <&rpmhpd SDM670_CX>;
1010                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
1011                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
1012                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
1013                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
1014                                 dmas = <&gpi_dma1 0 3 QCOM_GPI_I2C>,
1015                                        <&gpi_dma1 1 3 QCOM_GPI_I2C>;
1016                                 dma-names = "tx", "rx";
1017                                 status = "disabled";
1018                         };
1019 
1020                         i2c12: i2c@a90000 {
1021                                 compatible = "qcom,geni-i2c";
1022                                 reg = <0 0x00a90000 0 0x4000>;
1023                                 clock-names = "se";
1024                                 clocks = <&gcc GCC_QUPV3_WRAP1_S4_CLK>;
1025                                 pinctrl-names = "default";
1026                                 pinctrl-0 = <&qup_i2c12_default>;
1027                                 interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>;
1028                                 #address-cells = <1>;
1029                                 #size-cells = <0>;
1030                                 power-domains = <&rpmhpd SDM670_CX>;
1031                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
1032                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
1033                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
1034                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
1035                                 dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>,
1036                                        <&gpi_dma1 1 4 QCOM_GPI_I2C>;
1037                                 dma-names = "tx", "rx";
1038                                 status = "disabled";
1039                         };
1040 
1041                         i2c13: i2c@a94000 {
1042                                 compatible = "qcom,geni-i2c";
1043                                 reg = <0 0x00a94000 0 0x4000>;
1044                                 clock-names = "se";
1045                                 clocks = <&gcc GCC_QUPV3_WRAP1_S5_CLK>;
1046                                 pinctrl-names = "default";
1047                                 pinctrl-0 = <&qup_i2c13_default>;
1048                                 interrupts = <GIC_SPI 358 IRQ_TYPE_LEVEL_HIGH>;
1049                                 #address-cells = <1>;
1050                                 #size-cells = <0>;
1051                                 power-domains = <&rpmhpd SDM670_CX>;
1052                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
1053                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
1054                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
1055                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
1056                                 dmas = <&gpi_dma1 0 5 QCOM_GPI_I2C>,
1057                                        <&gpi_dma1 1 5 QCOM_GPI_I2C>;
1058                                 dma-names = "tx", "rx";
1059                                 status = "disabled";
1060                         };
1061 
1062                         i2c14: i2c@a98000 {
1063                                 compatible = "qcom,geni-i2c";
1064                                 reg = <0 0x00a98000 0 0x4000>;
1065                                 clock-names = "se";
1066                                 clocks = <&gcc GCC_QUPV3_WRAP1_S6_CLK>;
1067                                 pinctrl-names = "default";
1068                                 pinctrl-0 = <&qup_i2c14_default>;
1069                                 interrupts = <GIC_SPI 359 IRQ_TYPE_LEVEL_HIGH>;
1070                                 #address-cells = <1>;
1071                                 #size-cells = <0>;
1072                                 power-domains = <&rpmhpd SDM670_CX>;
1073                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
1074                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
1075                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
1076                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
1077                                 dmas = <&gpi_dma1 0 6 QCOM_GPI_I2C>,
1078                                        <&gpi_dma1 1 6 QCOM_GPI_I2C>;
1079                                 dma-names = "tx", "rx";
1080                                 status = "disabled";
1081                         };
1082 
1083                         i2c15: i2c@a9c000 {
1084                                 compatible = "qcom,geni-i2c";
1085                                 reg = <0 0x00a9c000 0 0x4000>;
1086                                 clock-names = "se";
1087                                 clocks = <&gcc GCC_QUPV3_WRAP1_S7_CLK>;
1088                                 pinctrl-names = "default";
1089                                 pinctrl-0 = <&qup_i2c15_default>;
1090                                 interrupts = <GIC_SPI 360 IRQ_TYPE_LEVEL_HIGH>;
1091                                 #address-cells = <1>;
1092                                 #size-cells = <0>;
1093                                 power-domains = <&rpmhpd SDM670_CX>;
1094                                 interconnects = <&aggre2_noc MASTER_BLSP_2 0 &config_noc SLAVE_BLSP_2 0>,
1095                                                 <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_BLSP_2 0>,
1096                                                 <&aggre2_noc MASTER_BLSP_2 0 &mem_noc SLAVE_EBI_CH0 0>;
1097                                 interconnect-names = "qup-core", "qup-config", "qup-memory";
1098                                 dmas = <&gpi_dma1 0 7 QCOM_GPI_I2C>,
1099                                        <&gpi_dma1 1 7 QCOM_GPI_I2C>;
1100                                 dma-names = "tx", "rx";
1101                                 status = "disabled";
1102                         };
1103                 };
1104 
1105                 mem_noc: interconnect@1380000 {
1106                         compatible = "qcom,sdm670-mem-noc";
1107                         reg = <0 0x01380000 0 0x27200>;
1108                         #interconnect-cells = <2>;
1109                         qcom,bcm-voters = <&apps_bcm_voter>;
1110                 };
1111 
1112                 dc_noc: interconnect@14e0000 {
1113                         compatible = "qcom,sdm670-dc-noc";
1114                         reg = <0 0x014e0000 0 0x400>;
1115                         #interconnect-cells = <2>;
1116                         qcom,bcm-voters = <&apps_bcm_voter>;
1117                 };
1118 
1119                 config_noc: interconnect@1500000 {
1120                         compatible = "qcom,sdm670-config-noc";
1121                         reg = <0 0x01500000 0 0x5080>;
1122                         #interconnect-cells = <2>;
1123                         qcom,bcm-voters = <&apps_bcm_voter>;
1124                 };
1125 
1126                 system_noc: interconnect@1620000 {
1127                         compatible = "qcom,sdm670-system-noc";
1128                         reg = <0 0x01620000 0 0x18080>;
1129                         #interconnect-cells = <2>;
1130                         qcom,bcm-voters = <&apps_bcm_voter>;
1131                 };
1132 
1133                 aggre1_noc: interconnect@16e0000 {
1134                         compatible = "qcom,sdm670-aggre1-noc";
1135                         reg = <0 0x016e0000 0 0x15080>;
1136                         #interconnect-cells = <2>;
1137                         qcom,bcm-voters = <&apps_bcm_voter>;
1138                 };
1139 
1140                 aggre2_noc: interconnect@1700000 {
1141                         compatible = "qcom,sdm670-aggre2-noc";
1142                         reg = <0 0x01700000 0 0x1f300>;
1143                         #interconnect-cells = <2>;
1144                         qcom,bcm-voters = <&apps_bcm_voter>;
1145                 };
1146 
1147                 mmss_noc: interconnect@1740000 {
1148                         compatible = "qcom,sdm670-mmss-noc";
1149                         reg = <0 0x01740000 0 0x1c100>;
1150                         #interconnect-cells = <2>;
1151                         qcom,bcm-voters = <&apps_bcm_voter>;
1152                 };
1153 
1154                 tcsr_mutex: hwlock@1f40000 {
1155                         compatible = "qcom,tcsr-mutex";
1156                         reg = <0 0x01f40000 0 0x20000>;
1157                         #hwlock-cells = <1>;
1158                 };
1159 
1160                 tlmm: pinctrl@3400000 {
1161                         compatible = "qcom,sdm670-tlmm";
1162                         reg = <0 0x03400000 0 0xc00000>;
1163                         interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
1164                         gpio-controller;
1165                         #gpio-cells = <2>;
1166                         interrupt-controller;
1167                         #interrupt-cells = <2>;
1168                         gpio-ranges = <&tlmm 0 0 151>;
1169                         wakeup-parent = <&pdc>;
1170 
1171                         qup_i2c0_default: qup-i2c0-default-state {
1172                                 pins = "gpio0", "gpio1";
1173                                 function = "qup0";
1174                         };
1175 
1176                         qup_i2c1_default: qup-i2c1-default-state {
1177                                 pins = "gpio17", "gpio18";
1178                                 function = "qup1";
1179                         };
1180 
1181                         qup_i2c2_default: qup-i2c2-default-state {
1182                                 pins = "gpio27", "gpio28";
1183                                 function = "qup2";
1184                         };
1185 
1186                         qup_i2c3_default: qup-i2c3-default-state {
1187                                 pins = "gpio41", "gpio42";
1188                                 function = "qup3";
1189                         };
1190 
1191                         qup_i2c4_default: qup-i2c4-default-state {
1192                                 pins = "gpio89", "gpio90";
1193                                 function = "qup4";
1194                         };
1195 
1196                         qup_i2c5_default: qup-i2c5-default-state {
1197                                 pins = "gpio85", "gpio86";
1198                                 function = "qup5";
1199                         };
1200 
1201                         qup_i2c6_default: qup-i2c6-default-state {
1202                                 pins = "gpio45", "gpio46";
1203                                 function = "qup6";
1204                         };
1205 
1206                         qup_i2c7_default: qup-i2c7-default-state {
1207                                 pins = "gpio93", "gpio94";
1208                                 function = "qup7";
1209                         };
1210 
1211                         qup_i2c8_default: qup-i2c8-default-state {
1212                                 pins = "gpio65", "gpio66";
1213                                 function = "qup8";
1214                         };
1215 
1216                         qup_i2c9_default: qup-i2c9-default-state {
1217                                 pins = "gpio6", "gpio7";
1218                                 function = "qup9";
1219                         };
1220 
1221                         qup_i2c10_default: qup-i2c10-default-state {
1222                                 pins = "gpio55", "gpio56";
1223                                 function = "qup10";
1224                         };
1225 
1226                         qup_i2c11_default: qup-i2c11-default-state {
1227                                 pins = "gpio31", "gpio32";
1228                                 function = "qup11";
1229                         };
1230 
1231                         qup_i2c12_default: qup-i2c12-default-state {
1232                                 pins = "gpio49", "gpio50";
1233                                 function = "qup12";
1234                         };
1235 
1236                         qup_i2c13_default: qup-i2c13-default-state {
1237                                 pins = "gpio105", "gpio106";
1238                                 function = "qup13";
1239                         };
1240 
1241                         qup_i2c14_default: qup-i2c14-default-state {
1242                                 pins = "gpio33", "gpio34";
1243                                 function = "qup14";
1244                         };
1245 
1246                         qup_i2c15_default: qup-i2c15-default-state {
1247                                 pins = "gpio81", "gpio82";
1248                                 function = "qup15";
1249                         };
1250 
1251                         sdc1_state_on: sdc1-on-state {
1252                                 clk-pins {
1253                                         pins = "sdc1_clk";
1254                                         bias-disable;
1255                                         drive-strength = <16>;
1256                                 };
1257 
1258                                 cmd-pins {
1259                                         pins = "sdc1_cmd";
1260                                         bias-pull-up;
1261                                         drive-strength = <10>;
1262                                 };
1263 
1264                                 data-pins {
1265                                         pins = "sdc1_data";
1266                                         bias-pull-up;
1267                                         drive-strength = <10>;
1268                                 };
1269 
1270                                 rclk-pins {
1271                                         pins = "sdc1_rclk";
1272                                         bias-pull-down;
1273                                 };
1274                         };
1275 
1276                         sdc1_state_off: sdc1-off-state {
1277                                 clk-pins {
1278                                         pins = "sdc1_clk";
1279                                         bias-disable;
1280                                         drive-strength = <2>;
1281                                 };
1282 
1283                                 cmd-pins {
1284                                         pins = "sdc1_cmd";
1285                                         bias-pull-up;
1286                                         drive-strength = <2>;
1287                                 };
1288 
1289                                 data-pins {
1290                                         pins = "sdc1_data";
1291                                         bias-pull-up;
1292                                         drive-strength = <2>;
1293                                 };
1294 
1295                                 rclk-pins {
1296                                         pins = "sdc1_rclk";
1297                                         bias-pull-down;
1298                                 };
1299                         };
1300                 };
1301 
1302                 usb_1_hsphy: phy@88e2000 {
1303                         compatible = "qcom,sdm670-qusb2-phy", "qcom,qusb2-v2-phy";
1304                         reg = <0 0x088e2000 0 0x400>;
1305                         #phy-cells = <0>;
1306 
1307                         clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>,
1308                                  <&rpmhcc RPMH_CXO_CLK>;
1309                         clock-names = "cfg_ahb", "ref";
1310 
1311                         resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>;
1312 
1313                         nvmem-cells = <&qusb2_hstx_trim>;
1314 
1315                         status = "disabled";
1316                 };
1317 
1318                 usb_1: usb@a6f8800 {
1319                         compatible = "qcom,sdm670-dwc3", "qcom,dwc3";
1320                         reg = <0 0x0a6f8800 0 0x400>;
1321                         #address-cells = <2>;
1322                         #size-cells = <2>;
1323                         ranges;
1324                         dma-ranges;
1325 
1326                         clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>,
1327                                  <&gcc GCC_USB30_PRIM_MASTER_CLK>,
1328                                  <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>,
1329                                  <&gcc GCC_USB30_PRIM_SLEEP_CLK>,
1330                                  <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>;
1331                         clock-names = "cfg_noc",
1332                                       "core",
1333                                       "iface",
1334                                       "sleep",
1335                                       "mock_utmi";
1336 
1337                         assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>,
1338                                           <&gcc GCC_USB30_PRIM_MASTER_CLK>;
1339                         assigned-clock-rates = <19200000>, <150000000>;
1340 
1341                         interrupts-extended = <&intc GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>,
1342                                               <&intc GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>,
1343                                               <&pdc 9 IRQ_TYPE_EDGE_BOTH>,
1344                                               <&pdc 8 IRQ_TYPE_EDGE_BOTH>,
1345                                               <&pdc 6 IRQ_TYPE_LEVEL_HIGH>;
1346                         interrupt-names = "pwr_event",
1347                                           "hs_phy_irq",
1348                                           "dp_hs_phy_irq",
1349                                           "dm_hs_phy_irq",
1350                                           "ss_phy_irq";
1351 
1352                         power-domains = <&gcc USB30_PRIM_GDSC>;
1353 
1354                         resets = <&gcc GCC_USB30_PRIM_BCR>;
1355 
1356                         interconnects = <&aggre2_noc MASTER_USB3 0 &mem_noc SLAVE_EBI_CH0 0>,
1357                                         <&gladiator_noc MASTER_AMPSS_M0 0 &config_noc SLAVE_USB3 0>;
1358                         interconnect-names = "usb-ddr", "apps-usb";
1359 
1360                         status = "disabled";
1361 
1362                         usb_1_dwc3: usb@a600000 {
1363                                 compatible = "snps,dwc3";
1364                                 reg = <0 0x0a600000 0 0xcd00>;
1365                                 interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>;
1366                                 iommus = <&apps_smmu 0x740 0>;
1367                                 snps,dis_u2_susphy_quirk;
1368                                 snps,dis_enblslpm_quirk;
1369                                 phys = <&usb_1_hsphy>;
1370                                 phy-names = "usb2-phy";
1371                         };
1372                 };
1373 
1374                 pdc: interrupt-controller@b220000 {
1375                         compatible = "qcom,sdm670-pdc", "qcom,pdc";
1376                         reg = <0 0x0b220000 0 0x30000>;
1377                         qcom,pdc-ranges = <0 480 40>, <41 521 7>, <49 529 4>,
1378                                           <54 534 24>, <79 559 15>, <94 609 15>,
1379                                           <115 630 7>;
1380                         #interrupt-cells = <2>;
1381                         interrupt-parent = <&intc>;
1382                         interrupt-controller;
1383                 };
1384 
1385                 spmi_bus: spmi@c440000 {
1386                         compatible = "qcom,spmi-pmic-arb";
1387                         reg = <0 0x0c440000 0 0x1100>,
1388                               <0 0x0c600000 0 0x2000000>,
1389                               <0 0x0e600000 0 0x100000>,
1390                               <0 0x0e700000 0 0xa0000>,
1391                               <0 0x0c40a000 0 0x26000>;
1392                         reg-names = "core", "chnls", "obsrvr", "intr", "cnfg";
1393                         interrupt-names = "periph_irq";
1394                         interrupts = <GIC_SPI 481 IRQ_TYPE_LEVEL_HIGH>;
1395                         qcom,ee = <0>;
1396                         qcom,channel = <0>;
1397                         #address-cells = <2>;
1398                         #size-cells = <0>;
1399                         interrupt-controller;
1400                         #interrupt-cells = <4>;
1401                 };
1402 
1403                 mdss: display-subsystem@ae00000 {
1404                         compatible = "qcom,sdm670-mdss";
1405                         reg = <0 0x0ae00000 0 0x1000>;
1406                         reg-names = "mdss";
1407 
1408                         power-domains = <&dispcc MDSS_GDSC>;
1409 
1410                         clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
1411                                  <&dispcc DISP_CC_MDSS_MDP_CLK>;
1412                         clock-names = "iface", "core";
1413 
1414                         interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>;
1415                         interrupt-controller;
1416                         #interrupt-cells = <1>;
1417 
1418                         interconnects = <&mmss_noc MASTER_MDP_PORT0 0 &mem_noc SLAVE_EBI_CH0 0>,
1419                                         <&mmss_noc MASTER_MDP_PORT1 0 &mem_noc SLAVE_EBI_CH0 0>;
1420                         interconnect-names = "mdp0-mem", "mdp1-mem";
1421 
1422                         iommus = <&apps_smmu 0x880 0x8>,
1423                                  <&apps_smmu 0xc80 0x8>;
1424 
1425                         #address-cells = <2>;
1426                         #size-cells = <2>;
1427                         ranges;
1428 
1429                         status = "disabled";
1430 
1431                         mdss_mdp: display-controller@ae01000 {
1432                                 compatible = "qcom,sdm670-dpu";
1433                                 reg = <0 0x0ae01000 0 0x8f000>,
1434                                       <0 0x0aeb0000 0 0x2008>;
1435                                 reg-names = "mdp", "vbif";
1436 
1437                                 clocks = <&gcc GCC_DISP_AXI_CLK>,
1438                                          <&dispcc DISP_CC_MDSS_AHB_CLK>,
1439                                          <&dispcc DISP_CC_MDSS_AXI_CLK>,
1440                                          <&dispcc DISP_CC_MDSS_MDP_CLK>,
1441                                          <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1442                                 clock-names = "gcc-bus", "iface", "bus", "core", "vsync";
1443 
1444                                 assigned-clocks = <&dispcc DISP_CC_MDSS_VSYNC_CLK>;
1445                                 assigned-clock-rates = <19200000>;
1446                                 operating-points-v2 = <&mdp_opp_table>;
1447                                 power-domains = <&rpmhpd SDM670_CX>;
1448 
1449                                 interrupt-parent = <&mdss>;
1450                                 interrupts = <0>;
1451 
1452                                 ports {
1453                                         #address-cells = <1>;
1454                                         #size-cells = <0>;
1455 
1456                                         port@0 {
1457                                                 reg = <0>;
1458                                                 dpu_intf0_out: endpoint {
1459                                                         remote-endpoint = <&mdss_dsi0_in>;
1460                                                 };
1461                                         };
1462 
1463                                         port@1 {
1464                                                 reg = <1>;
1465                                                 dpu_intf1_out: endpoint {
1466                                                         remote-endpoint = <&mdss_dsi1_in>;
1467                                                 };
1468                                         };
1469                                 };
1470 
1471                                 mdp_opp_table: opp-table {
1472                                         compatible = "operating-points-v2";
1473 
1474                                         opp-19200000 {
1475                                                 opp-hz = /bits/ 64 <19200000>;
1476                                                 required-opps = <&rpmhpd_opp_min_svs>;
1477                                         };
1478 
1479                                         opp-171428571 {
1480                                                 opp-hz = /bits/ 64 <171428571>;
1481                                                 required-opps = <&rpmhpd_opp_low_svs>;
1482                                         };
1483 
1484                                         opp-358000000 {
1485                                                 opp-hz = /bits/ 64 <358000000>;
1486                                                 required-opps = <&rpmhpd_opp_svs_l1>;
1487                                         };
1488 
1489                                         opp-430000000 {
1490                                                 opp-hz = /bits/ 64 <430000000>;
1491                                                 required-opps = <&rpmhpd_opp_nom>;
1492                                         };
1493                                 };
1494                         };
1495 
1496                         mdss_dsi0: dsi@ae94000 {
1497                                 compatible = "qcom,sdm670-dsi-ctrl",
1498                                              "qcom,mdss-dsi-ctrl";
1499                                 reg = <0 0x0ae94000 0 0x400>;
1500                                 reg-names = "dsi_ctrl";
1501 
1502                                 interrupt-parent = <&mdss>;
1503                                 interrupts = <4>;
1504 
1505                                 clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK>,
1506                                          <&dispcc DISP_CC_MDSS_BYTE0_INTF_CLK>,
1507                                          <&dispcc DISP_CC_MDSS_PCLK0_CLK>,
1508                                          <&dispcc DISP_CC_MDSS_ESC0_CLK>,
1509                                          <&dispcc DISP_CC_MDSS_AHB_CLK>,
1510                                          <&dispcc DISP_CC_MDSS_AXI_CLK>;
1511                                 clock-names = "byte",
1512                                               "byte_intf",
1513                                               "pixel",
1514                                               "core",
1515                                               "iface",
1516                                               "bus";
1517                                 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE0_CLK_SRC>,
1518                                                   <&dispcc DISP_CC_MDSS_PCLK0_CLK_SRC>;
1519                                 assigned-clock-parents = <&mdss_dsi0_phy 0>,
1520                                                          <&mdss_dsi0_phy 1>;
1521 
1522                                 operating-points-v2 = <&dsi_opp_table>;
1523                                 power-domains = <&rpmhpd SDM670_CX>;
1524 
1525                                 phys = <&mdss_dsi0_phy>;
1526 
1527                                 #address-cells = <1>;
1528                                 #size-cells = <0>;
1529 
1530                                 status = "disabled";
1531 
1532                                 ports {
1533                                         #address-cells = <1>;
1534                                         #size-cells = <0>;
1535 
1536                                         port@0 {
1537                                                 reg = <0>;
1538                                                 mdss_dsi0_in: endpoint {
1539                                                         remote-endpoint = <&dpu_intf0_out>;
1540                                                 };
1541                                         };
1542 
1543                                         port@1 {
1544                                                 reg = <1>;
1545                                                 mdss_dsi0_out: endpoint {
1546                                                 };
1547                                         };
1548                                 };
1549                         };
1550 
1551                         mdss_dsi0_phy: phy@ae94400 {
1552                                 compatible = "qcom,dsi-phy-10nm";
1553                                 reg = <0 0x0ae94400 0 0x200>,
1554                                       <0 0x0ae94600 0 0x280>,
1555                                       <0 0x0ae94a00 0 0x1e0>;
1556                                 reg-names = "dsi_phy",
1557                                             "dsi_phy_lane",
1558                                             "dsi_pll";
1559 
1560                                 #clock-cells = <1>;
1561                                 #phy-cells = <0>;
1562 
1563                                 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
1564                                          <&rpmhcc RPMH_CXO_CLK>;
1565                                 clock-names = "iface", "ref";
1566 
1567                                 status = "disabled";
1568                         };
1569 
1570                         mdss_dsi1: dsi@ae96000 {
1571                                 compatible = "qcom,sdm670-dsi-ctrl",
1572                                              "qcom,mdss-dsi-ctrl";
1573                                 reg = <0 0x0ae96000 0 0x400>;
1574                                 reg-names = "dsi_ctrl";
1575 
1576                                 interrupt-parent = <&mdss>;
1577                                 interrupts = <5>;
1578 
1579                                 clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK>,
1580                                          <&dispcc DISP_CC_MDSS_BYTE1_INTF_CLK>,
1581                                          <&dispcc DISP_CC_MDSS_PCLK1_CLK>,
1582                                          <&dispcc DISP_CC_MDSS_ESC1_CLK>,
1583                                          <&dispcc DISP_CC_MDSS_AHB_CLK>,
1584                                          <&dispcc DISP_CC_MDSS_AXI_CLK>;
1585                                 clock-names = "byte",
1586                                               "byte_intf",
1587                                               "pixel",
1588                                               "core",
1589                                               "iface",
1590                                               "bus";
1591                                 assigned-clocks = <&dispcc DISP_CC_MDSS_BYTE1_CLK_SRC>,
1592                                                   <&dispcc DISP_CC_MDSS_PCLK1_CLK_SRC>;
1593                                 assigned-clock-parents = <&mdss_dsi1_phy 0>, <&mdss_dsi1_phy 1>;
1594 
1595                                 operating-points-v2 = <&dsi_opp_table>;
1596                                 power-domains = <&rpmhpd SDM670_CX>;
1597 
1598                                 phys = <&mdss_dsi1_phy>;
1599 
1600                                 #address-cells = <1>;
1601                                 #size-cells = <0>;
1602 
1603                                 status = "disabled";
1604 
1605                                 ports {
1606                                         #address-cells = <1>;
1607                                         #size-cells = <0>;
1608 
1609                                         port@0 {
1610                                                 reg = <0>;
1611                                                 mdss_dsi1_in: endpoint {
1612                                                         remote-endpoint = <&dpu_intf1_out>;
1613                                                 };
1614                                         };
1615 
1616                                         port@1 {
1617                                                 reg = <1>;
1618                                                 mdss_dsi1_out: endpoint {
1619                                                 };
1620                                         };
1621                                 };
1622                         };
1623 
1624                         mdss_dsi1_phy: phy@ae96400 {
1625                                 compatible = "qcom,dsi-phy-10nm";
1626                                 reg = <0 0x0ae96400 0 0x200>,
1627                                       <0 0x0ae96600 0 0x280>,
1628                                       <0 0x0ae96a00 0 0x10e>;
1629                                 reg-names = "dsi_phy",
1630                                             "dsi_phy_lane",
1631                                             "dsi_pll";
1632 
1633                                 #clock-cells = <1>;
1634                                 #phy-cells = <0>;
1635 
1636                                 clocks = <&dispcc DISP_CC_MDSS_AHB_CLK>,
1637                                          <&rpmhcc RPMH_CXO_CLK>;
1638                                 clock-names = "iface", "ref";
1639 
1640                                 status = "disabled";
1641                         };
1642                 };
1643 
1644                 dispcc: clock-controller@af00000 {
1645                         compatible = "qcom,sdm845-dispcc";
1646                         reg = <0 0x0af00000 0 0x10000>;
1647                         clocks = <&rpmhcc RPMH_CXO_CLK>,
1648                                  <&gcc GCC_DISP_GPLL0_CLK_SRC>,
1649                                  <&gcc GCC_DISP_GPLL0_DIV_CLK_SRC>,
1650                                  <&mdss_dsi0_phy 0>,
1651                                  <&mdss_dsi0_phy 1>,
1652                                  <&mdss_dsi1_phy 0>,
1653                                  <&mdss_dsi1_phy 1>,
1654                                  <0>,
1655                                  <0>;
1656                         clock-names = "bi_tcxo",
1657                                       "gcc_disp_gpll0_clk_src",
1658                                       "gcc_disp_gpll0_div_clk_src",
1659                                       "dsi0_phy_pll_out_byteclk",
1660                                       "dsi0_phy_pll_out_dsiclk",
1661                                       "dsi1_phy_pll_out_byteclk",
1662                                       "dsi1_phy_pll_out_dsiclk",
1663                                       "dp_link_clk_divsel_ten",
1664                                       "dp_vco_divided_clk_src_mux";
1665                         #clock-cells = <1>;
1666                         #reset-cells = <1>;
1667                         #power-domain-cells = <1>;
1668                 };
1669 
1670                 apps_smmu: iommu@15000000 {
1671                         compatible = "qcom,sdm670-smmu-500", "qcom,smmu-500", "arm,mmu-500";
1672                         reg = <0 0x15000000 0 0x80000>;
1673                         #iommu-cells = <2>;
1674                         #global-interrupts = <1>;
1675                         interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>,
1676                                      <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,
1677                                      <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>,
1678                                      <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>,
1679                                      <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>,
1680                                      <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>,
1681                                      <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>,
1682                                      <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>,
1683                                      <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>,
1684                                      <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>,
1685                                      <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>,
1686                                      <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>,
1687                                      <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>,
1688                                      <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>,
1689                                      <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>,
1690                                      <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>,
1691                                      <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>,
1692                                      <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
1693                                      <GIC_SPI 113 IRQ_TYPE_LEVEL_HIGH>,
1694                                      <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>,
1695                                      <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>,
1696                                      <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>,
1697                                      <GIC_SPI 117 IRQ_TYPE_LEVEL_HIGH>,
1698                                      <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>,
1699                                      <GIC_SPI 181 IRQ_TYPE_LEVEL_HIGH>,
1700                                      <GIC_SPI 182 IRQ_TYPE_LEVEL_HIGH>,
1701                                      <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>,
1702                                      <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>,
1703                                      <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>,
1704                                      <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
1705                                      <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
1706                                      <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
1707                                      <GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
1708                                      <GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
1709                                      <GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
1710                                      <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
1711                                      <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>,
1712                                      <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>,
1713                                      <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>,
1714                                      <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>,
1715                                      <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>,
1716                                      <GIC_SPI 320 IRQ_TYPE_LEVEL_HIGH>,
1717                                      <GIC_SPI 321 IRQ_TYPE_LEVEL_HIGH>,
1718                                      <GIC_SPI 322 IRQ_TYPE_LEVEL_HIGH>,
1719                                      <GIC_SPI 323 IRQ_TYPE_LEVEL_HIGH>,
1720                                      <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
1721                                      <GIC_SPI 325 IRQ_TYPE_LEVEL_HIGH>,
1722                                      <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>,
1723                                      <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>,
1724                                      <GIC_SPI 328 IRQ_TYPE_LEVEL_HIGH>,
1725                                      <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>,
1726                                      <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>,
1727                                      <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>,
1728                                      <GIC_SPI 332 IRQ_TYPE_LEVEL_HIGH>,
1729                                      <GIC_SPI 333 IRQ_TYPE_LEVEL_HIGH>,
1730                                      <GIC_SPI 334 IRQ_TYPE_LEVEL_HIGH>,
1731                                      <GIC_SPI 335 IRQ_TYPE_LEVEL_HIGH>,
1732                                      <GIC_SPI 336 IRQ_TYPE_LEVEL_HIGH>,
1733                                      <GIC_SPI 337 IRQ_TYPE_LEVEL_HIGH>,
1734                                      <GIC_SPI 338 IRQ_TYPE_LEVEL_HIGH>,
1735                                      <GIC_SPI 339 IRQ_TYPE_LEVEL_HIGH>,
1736                                      <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>,
1737                                      <GIC_SPI 341 IRQ_TYPE_LEVEL_HIGH>,
1738                                      <GIC_SPI 342 IRQ_TYPE_LEVEL_HIGH>,
1739                                      <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>;
1740                 };
1741 
1742                 gladiator_noc: interconnect@17900000 {
1743                         compatible = "qcom,sdm670-gladiator-noc";
1744                         reg = <0 0x17900000 0 0xd080>;
1745                         #interconnect-cells = <2>;
1746                         qcom,bcm-voters = <&apps_bcm_voter>;
1747                 };
1748 
1749                 apps_rsc: rsc@179c0000 {
1750                         compatible = "qcom,rpmh-rsc";
1751                         reg = <0 0x179c0000 0 0x10000>,
1752                               <0 0x179d0000 0 0x10000>,
1753                               <0 0x179e0000 0 0x10000>;
1754                         reg-names = "drv-0", "drv-1", "drv-2";
1755                         interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>,
1756                                      <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>,
1757                                      <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
1758                         label = "apps_rsc";
1759                         qcom,tcs-offset = <0xd00>;
1760                         qcom,drv-id = <2>;
1761                         qcom,tcs-config = <ACTIVE_TCS  2>,
1762                                           <SLEEP_TCS   3>,
1763                                           <WAKE_TCS    3>,
1764                                           <CONTROL_TCS 1>;
1765                         power-domains = <&CLUSTER_PD>;
1766 
1767                         apps_bcm_voter: bcm-voter {
1768                                 compatible = "qcom,bcm-voter";
1769                         };
1770 
1771                         rpmhcc: clock-controller {
1772                                 compatible = "qcom,sdm670-rpmh-clk";
1773                                 #clock-cells = <1>;
1774                                 clock-names = "xo";
1775                                 clocks = <&xo_board>;
1776                         };
1777 
1778                         rpmhpd: power-controller {
1779                                 compatible = "qcom,sdm670-rpmhpd";
1780                                 #power-domain-cells = <1>;
1781                                 operating-points-v2 = <&rpmhpd_opp_table>;
1782 
1783                                 rpmhpd_opp_table: opp-table {
1784                                         compatible = "operating-points-v2";
1785 
1786                                         rpmhpd_opp_ret: opp1 {
1787                                                 opp-level = <RPMH_REGULATOR_LEVEL_RETENTION>;
1788                                         };
1789 
1790                                         rpmhpd_opp_min_svs: opp2 {
1791                                                 opp-level = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
1792                                         };
1793 
1794                                         rpmhpd_opp_low_svs: opp3 {
1795                                                 opp-level = <RPMH_REGULATOR_LEVEL_LOW_SVS>;
1796                                         };
1797 
1798                                         rpmhpd_opp_svs: opp4 {
1799                                                 opp-level = <RPMH_REGULATOR_LEVEL_SVS>;
1800                                         };
1801 
1802                                         rpmhpd_opp_svs_l1: opp5 {
1803                                                 opp-level = <RPMH_REGULATOR_LEVEL_SVS_L1>;
1804                                         };
1805 
1806                                         rpmhpd_opp_nom: opp6 {
1807                                                 opp-level = <RPMH_REGULATOR_LEVEL_NOM>;
1808                                         };
1809 
1810                                         rpmhpd_opp_nom_l1: opp7 {
1811                                                 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L1>;
1812                                         };
1813 
1814                                         rpmhpd_opp_nom_l2: opp8 {
1815                                                 opp-level = <RPMH_REGULATOR_LEVEL_NOM_L2>;
1816                                         };
1817 
1818                                         rpmhpd_opp_turbo: opp9 {
1819                                                 opp-level = <RPMH_REGULATOR_LEVEL_TURBO>;
1820                                         };
1821 
1822                                         rpmhpd_opp_turbo_l1: opp10 {
1823                                                 opp-level = <RPMH_REGULATOR_LEVEL_TURBO_L1>;
1824                                         };
1825                                 };
1826                         };
1827                 };
1828 
1829                 intc: interrupt-controller@17a00000 {
1830                         compatible = "arm,gic-v3";
1831                         reg = <0 0x17a00000 0 0x10000>,     /* GICD */
1832                               <0 0x17a60000 0 0x100000>;    /* GICR * 8 */
1833                         interrupt-controller;
1834                         interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>;
1835                         #interrupt-cells = <3>;
1836                 };
1837 
1838                 osm_l3: interconnect@17d41000 {
1839                         compatible = "qcom,sdm670-osm-l3", "qcom,osm-l3";
1840                         reg = <0 0x17d41000 0 0x1400>;
1841 
1842                         clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
1843                         clock-names = "xo", "alternate";
1844 
1845                         #interconnect-cells = <1>;
1846                 };
1847 
1848                 cpufreq_hw: cpufreq@17d43000 {
1849                         compatible = "qcom,sdm670-cpufreq-hw", "qcom,cpufreq-hw";
1850                         reg = <0 0x17d43000 0 0x1400>, <0 0x17d45800 0 0x1400>;
1851                         reg-names = "freq-domain0", "freq-domain1";
1852 
1853                         clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GPLL0>;
1854                         clock-names = "xo", "alternate";
1855 
1856                         #freq-domain-cells = <1>;
1857                 };
1858         };
1859 };

~ [ 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