1 // SPDX-License-Identifier: GPL-2.0 1 // SPDX-License-Identifier: GPL-2.0 2 /* Copyright (c) 2016, The Linux Foundation. A 2 /* Copyright (c) 2016, The Linux Foundation. All rights reserved. */ 3 3 4 #include <dt-bindings/interrupt-controller/arm 4 #include <dt-bindings/interrupt-controller/arm-gic.h> 5 #include <dt-bindings/clock/qcom,gcc-msm8998.h 5 #include <dt-bindings/clock/qcom,gcc-msm8998.h> 6 #include <dt-bindings/clock/qcom,gpucc-msm8998 6 #include <dt-bindings/clock/qcom,gpucc-msm8998.h> 7 #include <dt-bindings/clock/qcom,mmcc-msm8998. 7 #include <dt-bindings/clock/qcom,mmcc-msm8998.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 8 #include <dt-bindings/clock/qcom,rpmcc.h> 9 #include <dt-bindings/firmware/qcom,scm.h> 9 #include <dt-bindings/firmware/qcom,scm.h> 10 #include <dt-bindings/power/qcom-rpmpd.h> 10 #include <dt-bindings/power/qcom-rpmpd.h> 11 #include <dt-bindings/gpio/gpio.h> 11 #include <dt-bindings/gpio/gpio.h> 12 12 13 / { 13 / { 14 interrupt-parent = <&intc>; 14 interrupt-parent = <&intc>; 15 15 16 qcom,msm-id = <292 0x0>; 16 qcom,msm-id = <292 0x0>; 17 17 18 #address-cells = <2>; 18 #address-cells = <2>; 19 #size-cells = <2>; 19 #size-cells = <2>; 20 20 21 chosen { }; 21 chosen { }; 22 22 23 memory@80000000 { 23 memory@80000000 { 24 device_type = "memory"; 24 device_type = "memory"; 25 /* We expect the bootloader to 25 /* We expect the bootloader to fill in the reg */ 26 reg = <0x0 0x80000000 0x0 0x0> 26 reg = <0x0 0x80000000 0x0 0x0>; 27 }; 27 }; 28 28 29 reserved-memory { 29 reserved-memory { 30 #address-cells = <2>; 30 #address-cells = <2>; 31 #size-cells = <2>; 31 #size-cells = <2>; 32 ranges; 32 ranges; 33 33 34 hyp_mem: memory@85800000 { 34 hyp_mem: memory@85800000 { 35 reg = <0x0 0x85800000 35 reg = <0x0 0x85800000 0x0 0x600000>; 36 no-map; 36 no-map; 37 }; 37 }; 38 38 39 xbl_mem: memory@85e00000 { 39 xbl_mem: memory@85e00000 { 40 reg = <0x0 0x85e00000 40 reg = <0x0 0x85e00000 0x0 0x100000>; 41 no-map; 41 no-map; 42 }; 42 }; 43 43 44 smem_mem: smem-mem@86000000 { 44 smem_mem: smem-mem@86000000 { 45 reg = <0x0 0x86000000 45 reg = <0x0 0x86000000 0x0 0x200000>; 46 no-map; 46 no-map; 47 }; 47 }; 48 48 49 tz_mem: memory@86200000 { 49 tz_mem: memory@86200000 { 50 reg = <0x0 0x86200000 50 reg = <0x0 0x86200000 0x0 0x2d00000>; 51 no-map; 51 no-map; 52 }; 52 }; 53 53 54 rmtfs_mem: memory@88f00000 { 54 rmtfs_mem: memory@88f00000 { 55 compatible = "qcom,rmt 55 compatible = "qcom,rmtfs-mem"; 56 reg = <0x0 0x88f00000 56 reg = <0x0 0x88f00000 0x0 0x200000>; 57 no-map; 57 no-map; 58 58 59 qcom,client-id = <1>; 59 qcom,client-id = <1>; 60 qcom,vmid = <QCOM_SCM_ 60 qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>; 61 }; 61 }; 62 62 63 spss_mem: memory@8ab00000 { 63 spss_mem: memory@8ab00000 { 64 reg = <0x0 0x8ab00000 64 reg = <0x0 0x8ab00000 0x0 0x700000>; 65 no-map; 65 no-map; 66 }; 66 }; 67 67 68 adsp_mem: memory@8b200000 { 68 adsp_mem: memory@8b200000 { 69 reg = <0x0 0x8b200000 69 reg = <0x0 0x8b200000 0x0 0x1a00000>; 70 no-map; 70 no-map; 71 }; 71 }; 72 72 73 mpss_mem: memory@8cc00000 { 73 mpss_mem: memory@8cc00000 { 74 reg = <0x0 0x8cc00000 74 reg = <0x0 0x8cc00000 0x0 0x7000000>; 75 no-map; 75 no-map; 76 }; 76 }; 77 77 78 venus_mem: memory@93c00000 { 78 venus_mem: memory@93c00000 { 79 reg = <0x0 0x93c00000 79 reg = <0x0 0x93c00000 0x0 0x500000>; 80 no-map; 80 no-map; 81 }; 81 }; 82 82 83 mba_mem: memory@94100000 { 83 mba_mem: memory@94100000 { 84 reg = <0x0 0x94100000 84 reg = <0x0 0x94100000 0x0 0x200000>; 85 no-map; 85 no-map; 86 }; 86 }; 87 87 88 slpi_mem: memory@94300000 { 88 slpi_mem: memory@94300000 { 89 reg = <0x0 0x94300000 89 reg = <0x0 0x94300000 0x0 0xf00000>; 90 no-map; 90 no-map; 91 }; 91 }; 92 92 93 ipa_fw_mem: memory@95200000 { 93 ipa_fw_mem: memory@95200000 { 94 reg = <0x0 0x95200000 94 reg = <0x0 0x95200000 0x0 0x10000>; 95 no-map; 95 no-map; 96 }; 96 }; 97 97 98 ipa_gsi_mem: memory@95210000 { 98 ipa_gsi_mem: memory@95210000 { 99 reg = <0x0 0x95210000 99 reg = <0x0 0x95210000 0x0 0x5000>; 100 no-map; 100 no-map; 101 }; 101 }; 102 102 103 gpu_mem: memory@95600000 { 103 gpu_mem: memory@95600000 { 104 reg = <0x0 0x95600000 104 reg = <0x0 0x95600000 0x0 0x100000>; 105 no-map; 105 no-map; 106 }; 106 }; 107 107 108 wlan_msa_mem: memory@95700000 108 wlan_msa_mem: memory@95700000 { 109 reg = <0x0 0x95700000 109 reg = <0x0 0x95700000 0x0 0x100000>; 110 no-map; 110 no-map; 111 }; 111 }; 112 112 113 mdata_mem: mpss-metadata { 113 mdata_mem: mpss-metadata { 114 alloc-ranges = <0x0 0x 114 alloc-ranges = <0x0 0xa0000000 0x0 0x20000000>; 115 size = <0x0 0x4000>; 115 size = <0x0 0x4000>; 116 no-map; 116 no-map; 117 }; 117 }; 118 }; 118 }; 119 119 120 clocks { 120 clocks { 121 xo: xo-board { 121 xo: xo-board { 122 compatible = "fixed-cl 122 compatible = "fixed-clock"; 123 #clock-cells = <0>; 123 #clock-cells = <0>; 124 clock-frequency = <192 124 clock-frequency = <19200000>; 125 clock-output-names = " 125 clock-output-names = "xo_board"; 126 }; 126 }; 127 127 128 sleep_clk: sleep-clk { 128 sleep_clk: sleep-clk { 129 compatible = "fixed-cl 129 compatible = "fixed-clock"; 130 #clock-cells = <0>; 130 #clock-cells = <0>; 131 clock-frequency = <327 131 clock-frequency = <32764>; 132 }; 132 }; 133 }; 133 }; 134 134 135 cpus { 135 cpus { 136 #address-cells = <2>; 136 #address-cells = <2>; 137 #size-cells = <0>; 137 #size-cells = <0>; 138 138 139 CPU0: cpu@0 { 139 CPU0: cpu@0 { 140 device_type = "cpu"; 140 device_type = "cpu"; 141 compatible = "qcom,kry 141 compatible = "qcom,kryo280"; 142 reg = <0x0 0x0>; 142 reg = <0x0 0x0>; 143 enable-method = "psci" 143 enable-method = "psci"; 144 capacity-dmips-mhz = < 144 capacity-dmips-mhz = <1024>; 145 cpu-idle-states = <&LI 145 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 146 next-level-cache = <&L 146 next-level-cache = <&L2_0>; 147 L2_0: l2-cache { 147 L2_0: l2-cache { 148 compatible = " 148 compatible = "cache"; 149 cache-level = 149 cache-level = <2>; 150 cache-unified; 150 cache-unified; 151 }; 151 }; 152 }; 152 }; 153 153 154 CPU1: cpu@1 { 154 CPU1: cpu@1 { 155 device_type = "cpu"; 155 device_type = "cpu"; 156 compatible = "qcom,kry 156 compatible = "qcom,kryo280"; 157 reg = <0x0 0x1>; 157 reg = <0x0 0x1>; 158 enable-method = "psci" 158 enable-method = "psci"; 159 capacity-dmips-mhz = < 159 capacity-dmips-mhz = <1024>; 160 cpu-idle-states = <&LI 160 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 161 next-level-cache = <&L 161 next-level-cache = <&L2_0>; 162 }; 162 }; 163 163 164 CPU2: cpu@2 { 164 CPU2: cpu@2 { 165 device_type = "cpu"; 165 device_type = "cpu"; 166 compatible = "qcom,kry 166 compatible = "qcom,kryo280"; 167 reg = <0x0 0x2>; 167 reg = <0x0 0x2>; 168 enable-method = "psci" 168 enable-method = "psci"; 169 capacity-dmips-mhz = < 169 capacity-dmips-mhz = <1024>; 170 cpu-idle-states = <&LI 170 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 171 next-level-cache = <&L 171 next-level-cache = <&L2_0>; 172 }; 172 }; 173 173 174 CPU3: cpu@3 { 174 CPU3: cpu@3 { 175 device_type = "cpu"; 175 device_type = "cpu"; 176 compatible = "qcom,kry 176 compatible = "qcom,kryo280"; 177 reg = <0x0 0x3>; 177 reg = <0x0 0x3>; 178 enable-method = "psci" 178 enable-method = "psci"; 179 capacity-dmips-mhz = < 179 capacity-dmips-mhz = <1024>; 180 cpu-idle-states = <&LI 180 cpu-idle-states = <&LITTLE_CPU_SLEEP_0 &LITTLE_CPU_SLEEP_1>; 181 next-level-cache = <&L 181 next-level-cache = <&L2_0>; 182 }; 182 }; 183 183 184 CPU4: cpu@100 { 184 CPU4: cpu@100 { 185 device_type = "cpu"; 185 device_type = "cpu"; 186 compatible = "qcom,kry 186 compatible = "qcom,kryo280"; 187 reg = <0x0 0x100>; 187 reg = <0x0 0x100>; 188 enable-method = "psci" 188 enable-method = "psci"; 189 capacity-dmips-mhz = < 189 capacity-dmips-mhz = <1536>; 190 cpu-idle-states = <&BI 190 cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 191 next-level-cache = <&L 191 next-level-cache = <&L2_1>; 192 L2_1: l2-cache { 192 L2_1: l2-cache { 193 compatible = " 193 compatible = "cache"; 194 cache-level = 194 cache-level = <2>; 195 cache-unified; 195 cache-unified; 196 }; 196 }; 197 }; 197 }; 198 198 199 CPU5: cpu@101 { 199 CPU5: cpu@101 { 200 device_type = "cpu"; 200 device_type = "cpu"; 201 compatible = "qcom,kry 201 compatible = "qcom,kryo280"; 202 reg = <0x0 0x101>; 202 reg = <0x0 0x101>; 203 enable-method = "psci" 203 enable-method = "psci"; 204 capacity-dmips-mhz = < 204 capacity-dmips-mhz = <1536>; 205 cpu-idle-states = <&BI 205 cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 206 next-level-cache = <&L 206 next-level-cache = <&L2_1>; 207 }; 207 }; 208 208 209 CPU6: cpu@102 { 209 CPU6: cpu@102 { 210 device_type = "cpu"; 210 device_type = "cpu"; 211 compatible = "qcom,kry 211 compatible = "qcom,kryo280"; 212 reg = <0x0 0x102>; 212 reg = <0x0 0x102>; 213 enable-method = "psci" 213 enable-method = "psci"; 214 capacity-dmips-mhz = < 214 capacity-dmips-mhz = <1536>; 215 cpu-idle-states = <&BI 215 cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 216 next-level-cache = <&L 216 next-level-cache = <&L2_1>; 217 }; 217 }; 218 218 219 CPU7: cpu@103 { 219 CPU7: cpu@103 { 220 device_type = "cpu"; 220 device_type = "cpu"; 221 compatible = "qcom,kry 221 compatible = "qcom,kryo280"; 222 reg = <0x0 0x103>; 222 reg = <0x0 0x103>; 223 enable-method = "psci" 223 enable-method = "psci"; 224 capacity-dmips-mhz = < 224 capacity-dmips-mhz = <1536>; 225 cpu-idle-states = <&BI 225 cpu-idle-states = <&BIG_CPU_SLEEP_0 &BIG_CPU_SLEEP_1>; 226 next-level-cache = <&L 226 next-level-cache = <&L2_1>; 227 }; 227 }; 228 228 229 cpu-map { 229 cpu-map { 230 cluster0 { 230 cluster0 { 231 core0 { 231 core0 { 232 cpu = 232 cpu = <&CPU0>; 233 }; 233 }; 234 234 235 core1 { 235 core1 { 236 cpu = 236 cpu = <&CPU1>; 237 }; 237 }; 238 238 239 core2 { 239 core2 { 240 cpu = 240 cpu = <&CPU2>; 241 }; 241 }; 242 242 243 core3 { 243 core3 { 244 cpu = 244 cpu = <&CPU3>; 245 }; 245 }; 246 }; 246 }; 247 247 248 cluster1 { 248 cluster1 { 249 core0 { 249 core0 { 250 cpu = 250 cpu = <&CPU4>; 251 }; 251 }; 252 252 253 core1 { 253 core1 { 254 cpu = 254 cpu = <&CPU5>; 255 }; 255 }; 256 256 257 core2 { 257 core2 { 258 cpu = 258 cpu = <&CPU6>; 259 }; 259 }; 260 260 261 core3 { 261 core3 { 262 cpu = 262 cpu = <&CPU7>; 263 }; 263 }; 264 }; 264 }; 265 }; 265 }; 266 266 267 idle-states { 267 idle-states { 268 entry-method = "psci"; 268 entry-method = "psci"; 269 269 270 LITTLE_CPU_SLEEP_0: cp 270 LITTLE_CPU_SLEEP_0: cpu-sleep-0-0 { 271 compatible = " 271 compatible = "arm,idle-state"; 272 idle-state-nam 272 idle-state-name = "little-retention"; 273 /* CPU Retenti 273 /* CPU Retention (C2D), L2 Active */ 274 arm,psci-suspe 274 arm,psci-suspend-param = <0x00000002>; 275 entry-latency- 275 entry-latency-us = <81>; 276 exit-latency-u 276 exit-latency-us = <86>; 277 min-residency- 277 min-residency-us = <504>; 278 }; 278 }; 279 279 280 LITTLE_CPU_SLEEP_1: cp 280 LITTLE_CPU_SLEEP_1: cpu-sleep-0-1 { 281 compatible = " 281 compatible = "arm,idle-state"; 282 idle-state-nam 282 idle-state-name = "little-power-collapse"; 283 /* CPU + L2 Po 283 /* CPU + L2 Power Collapse (C3, D4) */ 284 arm,psci-suspe 284 arm,psci-suspend-param = <0x40000003>; 285 entry-latency- 285 entry-latency-us = <814>; 286 exit-latency-u 286 exit-latency-us = <4562>; 287 min-residency- 287 min-residency-us = <9183>; 288 local-timer-st 288 local-timer-stop; 289 }; 289 }; 290 290 291 BIG_CPU_SLEEP_0: cpu-s 291 BIG_CPU_SLEEP_0: cpu-sleep-1-0 { 292 compatible = " 292 compatible = "arm,idle-state"; 293 idle-state-nam 293 idle-state-name = "big-retention"; 294 /* CPU Retenti 294 /* CPU Retention (C2D), L2 Active */ 295 arm,psci-suspe 295 arm,psci-suspend-param = <0x00000002>; 296 entry-latency- 296 entry-latency-us = <79>; 297 exit-latency-u 297 exit-latency-us = <82>; 298 min-residency- 298 min-residency-us = <1302>; 299 }; 299 }; 300 300 301 BIG_CPU_SLEEP_1: cpu-s 301 BIG_CPU_SLEEP_1: cpu-sleep-1-1 { 302 compatible = " 302 compatible = "arm,idle-state"; 303 idle-state-nam 303 idle-state-name = "big-power-collapse"; 304 /* CPU + L2 Po 304 /* CPU + L2 Power Collapse (C3, D4) */ 305 arm,psci-suspe 305 arm,psci-suspend-param = <0x40000003>; 306 entry-latency- 306 entry-latency-us = <724>; 307 exit-latency-u 307 exit-latency-us = <2027>; 308 min-residency- 308 min-residency-us = <9419>; 309 local-timer-st 309 local-timer-stop; 310 }; 310 }; 311 }; 311 }; 312 }; 312 }; 313 313 314 firmware { 314 firmware { 315 scm { 315 scm { 316 compatible = "qcom,scm 316 compatible = "qcom,scm-msm8998", "qcom,scm"; 317 }; 317 }; 318 }; 318 }; 319 319 320 dsi_opp_table: opp-table-dsi { 320 dsi_opp_table: opp-table-dsi { 321 compatible = "operating-points 321 compatible = "operating-points-v2"; 322 322 323 opp-131250000 { 323 opp-131250000 { 324 opp-hz = /bits/ 64 <13 324 opp-hz = /bits/ 64 <131250000>; 325 required-opps = <&rpmp 325 required-opps = <&rpmpd_opp_low_svs>; 326 }; 326 }; 327 327 328 opp-210000000 { 328 opp-210000000 { 329 opp-hz = /bits/ 64 <21 329 opp-hz = /bits/ 64 <210000000>; 330 required-opps = <&rpmp 330 required-opps = <&rpmpd_opp_svs>; 331 }; 331 }; 332 332 333 opp-312500000 { 333 opp-312500000 { 334 opp-hz = /bits/ 64 <31 334 opp-hz = /bits/ 64 <312500000>; 335 required-opps = <&rpmp 335 required-opps = <&rpmpd_opp_nom>; 336 }; 336 }; 337 }; 337 }; 338 338 339 psci { 339 psci { 340 compatible = "arm,psci-1.0"; 340 compatible = "arm,psci-1.0"; 341 method = "smc"; 341 method = "smc"; 342 }; 342 }; 343 343 344 rpm: remoteproc { 344 rpm: remoteproc { 345 compatible = "qcom,msm8998-rpm 345 compatible = "qcom,msm8998-rpm-proc", "qcom,rpm-proc"; 346 346 347 glink-edge { 347 glink-edge { 348 compatible = "qcom,gli 348 compatible = "qcom,glink-rpm"; 349 349 350 interrupts = <GIC_SPI 350 interrupts = <GIC_SPI 168 IRQ_TYPE_EDGE_RISING>; 351 qcom,rpm-msg-ram = <&r 351 qcom,rpm-msg-ram = <&rpm_msg_ram>; 352 mboxes = <&apcs_glb 0> 352 mboxes = <&apcs_glb 0>; 353 353 354 rpm_requests: rpm-requ 354 rpm_requests: rpm-requests { 355 compatible = " 355 compatible = "qcom,rpm-msm8998", "qcom,glink-smd-rpm"; 356 qcom,glink-cha 356 qcom,glink-channels = "rpm_requests"; 357 357 358 rpmcc: clock-c 358 rpmcc: clock-controller { 359 compat 359 compatible = "qcom,rpmcc-msm8998", "qcom,rpmcc"; 360 clocks 360 clocks = <&xo>; 361 clock- 361 clock-names = "xo"; 362 #clock 362 #clock-cells = <1>; 363 }; 363 }; 364 364 365 rpmpd: power-c 365 rpmpd: power-controller { 366 compat 366 compatible = "qcom,msm8998-rpmpd"; 367 #power 367 #power-domain-cells = <1>; 368 operat 368 operating-points-v2 = <&rpmpd_opp_table>; 369 369 370 rpmpd_ 370 rpmpd_opp_table: opp-table { 371 371 compatible = "operating-points-v2"; 372 372 373 373 rpmpd_opp_ret: opp1 { 374 374 opp-level = <RPM_SMD_LEVEL_RETENTION>; 375 375 }; 376 376 377 377 rpmpd_opp_ret_plus: opp2 { 378 378 opp-level = <RPM_SMD_LEVEL_RETENTION_PLUS>; 379 379 }; 380 380 381 381 rpmpd_opp_min_svs: opp3 { 382 382 opp-level = <RPM_SMD_LEVEL_MIN_SVS>; 383 383 }; 384 384 385 385 rpmpd_opp_low_svs: opp4 { 386 386 opp-level = <RPM_SMD_LEVEL_LOW_SVS>; 387 387 }; 388 388 389 389 rpmpd_opp_svs: opp5 { 390 390 opp-level = <RPM_SMD_LEVEL_SVS>; 391 391 }; 392 392 393 393 rpmpd_opp_svs_plus: opp6 { 394 394 opp-level = <RPM_SMD_LEVEL_SVS_PLUS>; 395 395 }; 396 396 397 397 rpmpd_opp_nom: opp7 { 398 398 opp-level = <RPM_SMD_LEVEL_NOM>; 399 399 }; 400 400 401 401 rpmpd_opp_nom_plus: opp8 { 402 402 opp-level = <RPM_SMD_LEVEL_NOM_PLUS>; 403 403 }; 404 404 405 405 rpmpd_opp_turbo: opp9 { 406 406 opp-level = <RPM_SMD_LEVEL_TURBO>; 407 407 }; 408 408 409 409 rpmpd_opp_turbo_plus: opp10 { 410 410 opp-level = <RPM_SMD_LEVEL_BINNING>; 411 411 }; 412 }; 412 }; 413 }; 413 }; 414 }; 414 }; 415 }; 415 }; 416 }; 416 }; 417 417 418 smem { 418 smem { 419 compatible = "qcom,smem"; 419 compatible = "qcom,smem"; 420 memory-region = <&smem_mem>; 420 memory-region = <&smem_mem>; 421 hwlocks = <&tcsr_mutex 3>; 421 hwlocks = <&tcsr_mutex 3>; 422 }; 422 }; 423 423 424 smp2p-lpass { 424 smp2p-lpass { 425 compatible = "qcom,smp2p"; 425 compatible = "qcom,smp2p"; 426 qcom,smem = <443>, <429>; 426 qcom,smem = <443>, <429>; 427 427 428 interrupts = <GIC_SPI 158 IRQ_ 428 interrupts = <GIC_SPI 158 IRQ_TYPE_EDGE_RISING>; 429 429 430 mboxes = <&apcs_glb 10>; 430 mboxes = <&apcs_glb 10>; 431 431 432 qcom,local-pid = <0>; 432 qcom,local-pid = <0>; 433 qcom,remote-pid = <2>; 433 qcom,remote-pid = <2>; 434 434 435 adsp_smp2p_out: master-kernel 435 adsp_smp2p_out: master-kernel { 436 qcom,entry-name = "mas 436 qcom,entry-name = "master-kernel"; 437 #qcom,smem-state-cells 437 #qcom,smem-state-cells = <1>; 438 }; 438 }; 439 439 440 adsp_smp2p_in: slave-kernel { 440 adsp_smp2p_in: slave-kernel { 441 qcom,entry-name = "sla 441 qcom,entry-name = "slave-kernel"; 442 442 443 interrupt-controller; 443 interrupt-controller; 444 #interrupt-cells = <2> 444 #interrupt-cells = <2>; 445 }; 445 }; 446 }; 446 }; 447 447 448 smp2p-mpss { 448 smp2p-mpss { 449 compatible = "qcom,smp2p"; 449 compatible = "qcom,smp2p"; 450 qcom,smem = <435>, <428>; 450 qcom,smem = <435>, <428>; 451 interrupts = <GIC_SPI 451 IRQ_ 451 interrupts = <GIC_SPI 451 IRQ_TYPE_EDGE_RISING>; 452 mboxes = <&apcs_glb 14>; 452 mboxes = <&apcs_glb 14>; 453 qcom,local-pid = <0>; 453 qcom,local-pid = <0>; 454 qcom,remote-pid = <1>; 454 qcom,remote-pid = <1>; 455 455 456 modem_smp2p_out: master-kernel 456 modem_smp2p_out: master-kernel { 457 qcom,entry-name = "mas 457 qcom,entry-name = "master-kernel"; 458 #qcom,smem-state-cells 458 #qcom,smem-state-cells = <1>; 459 }; 459 }; 460 460 461 modem_smp2p_in: slave-kernel { 461 modem_smp2p_in: slave-kernel { 462 qcom,entry-name = "sla 462 qcom,entry-name = "slave-kernel"; 463 interrupt-controller; 463 interrupt-controller; 464 #interrupt-cells = <2> 464 #interrupt-cells = <2>; 465 }; 465 }; 466 }; 466 }; 467 467 468 smp2p-slpi { 468 smp2p-slpi { 469 compatible = "qcom,smp2p"; 469 compatible = "qcom,smp2p"; 470 qcom,smem = <481>, <430>; 470 qcom,smem = <481>, <430>; 471 interrupts = <GIC_SPI 178 IRQ_ 471 interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>; 472 mboxes = <&apcs_glb 26>; 472 mboxes = <&apcs_glb 26>; 473 qcom,local-pid = <0>; 473 qcom,local-pid = <0>; 474 qcom,remote-pid = <3>; 474 qcom,remote-pid = <3>; 475 475 476 slpi_smp2p_out: master-kernel 476 slpi_smp2p_out: master-kernel { 477 qcom,entry-name = "mas 477 qcom,entry-name = "master-kernel"; 478 #qcom,smem-state-cells 478 #qcom,smem-state-cells = <1>; 479 }; 479 }; 480 480 481 slpi_smp2p_in: slave-kernel { 481 slpi_smp2p_in: slave-kernel { 482 qcom,entry-name = "sla 482 qcom,entry-name = "slave-kernel"; 483 interrupt-controller; 483 interrupt-controller; 484 #interrupt-cells = <2> 484 #interrupt-cells = <2>; 485 }; 485 }; 486 }; 486 }; 487 487 488 thermal-zones { 488 thermal-zones { 489 cpu0-thermal { 489 cpu0-thermal { 490 polling-delay-passive 490 polling-delay-passive = <250>; 491 491 492 thermal-sensors = <&ts 492 thermal-sensors = <&tsens0 1>; 493 493 494 trips { 494 trips { 495 cpu0_alert0: t 495 cpu0_alert0: trip-point0 { 496 temper 496 temperature = <75000>; 497 hyster 497 hysteresis = <2000>; 498 type = 498 type = "passive"; 499 }; 499 }; 500 500 501 cpu0_crit: cpu 501 cpu0_crit: cpu-crit { 502 temper 502 temperature = <110000>; 503 hyster 503 hysteresis = <2000>; 504 type = 504 type = "critical"; 505 }; 505 }; 506 }; 506 }; 507 }; 507 }; 508 508 509 cpu1-thermal { 509 cpu1-thermal { 510 polling-delay-passive 510 polling-delay-passive = <250>; 511 511 512 thermal-sensors = <&ts 512 thermal-sensors = <&tsens0 2>; 513 513 514 trips { 514 trips { 515 cpu1_alert0: t 515 cpu1_alert0: trip-point0 { 516 temper 516 temperature = <75000>; 517 hyster 517 hysteresis = <2000>; 518 type = 518 type = "passive"; 519 }; 519 }; 520 520 521 cpu1_crit: cpu 521 cpu1_crit: cpu-crit { 522 temper 522 temperature = <110000>; 523 hyster 523 hysteresis = <2000>; 524 type = 524 type = "critical"; 525 }; 525 }; 526 }; 526 }; 527 }; 527 }; 528 528 529 cpu2-thermal { 529 cpu2-thermal { 530 polling-delay-passive 530 polling-delay-passive = <250>; 531 531 532 thermal-sensors = <&ts 532 thermal-sensors = <&tsens0 3>; 533 533 534 trips { 534 trips { 535 cpu2_alert0: t 535 cpu2_alert0: trip-point0 { 536 temper 536 temperature = <75000>; 537 hyster 537 hysteresis = <2000>; 538 type = 538 type = "passive"; 539 }; 539 }; 540 540 541 cpu2_crit: cpu 541 cpu2_crit: cpu-crit { 542 temper 542 temperature = <110000>; 543 hyster 543 hysteresis = <2000>; 544 type = 544 type = "critical"; 545 }; 545 }; 546 }; 546 }; 547 }; 547 }; 548 548 549 cpu3-thermal { 549 cpu3-thermal { 550 polling-delay-passive 550 polling-delay-passive = <250>; 551 551 552 thermal-sensors = <&ts 552 thermal-sensors = <&tsens0 4>; 553 553 554 trips { 554 trips { 555 cpu3_alert0: t 555 cpu3_alert0: trip-point0 { 556 temper 556 temperature = <75000>; 557 hyster 557 hysteresis = <2000>; 558 type = 558 type = "passive"; 559 }; 559 }; 560 560 561 cpu3_crit: cpu 561 cpu3_crit: cpu-crit { 562 temper 562 temperature = <110000>; 563 hyster 563 hysteresis = <2000>; 564 type = 564 type = "critical"; 565 }; 565 }; 566 }; 566 }; 567 }; 567 }; 568 568 569 cpu4-thermal { 569 cpu4-thermal { 570 polling-delay-passive 570 polling-delay-passive = <250>; 571 571 572 thermal-sensors = <&ts 572 thermal-sensors = <&tsens0 7>; 573 573 574 trips { 574 trips { 575 cpu4_alert0: t 575 cpu4_alert0: trip-point0 { 576 temper 576 temperature = <75000>; 577 hyster 577 hysteresis = <2000>; 578 type = 578 type = "passive"; 579 }; 579 }; 580 580 581 cpu4_crit: cpu 581 cpu4_crit: cpu-crit { 582 temper 582 temperature = <110000>; 583 hyster 583 hysteresis = <2000>; 584 type = 584 type = "critical"; 585 }; 585 }; 586 }; 586 }; 587 }; 587 }; 588 588 589 cpu5-thermal { 589 cpu5-thermal { 590 polling-delay-passive 590 polling-delay-passive = <250>; 591 591 592 thermal-sensors = <&ts 592 thermal-sensors = <&tsens0 8>; 593 593 594 trips { 594 trips { 595 cpu5_alert0: t 595 cpu5_alert0: trip-point0 { 596 temper 596 temperature = <75000>; 597 hyster 597 hysteresis = <2000>; 598 type = 598 type = "passive"; 599 }; 599 }; 600 600 601 cpu5_crit: cpu 601 cpu5_crit: cpu-crit { 602 temper 602 temperature = <110000>; 603 hyster 603 hysteresis = <2000>; 604 type = 604 type = "critical"; 605 }; 605 }; 606 }; 606 }; 607 }; 607 }; 608 608 609 cpu6-thermal { 609 cpu6-thermal { 610 polling-delay-passive 610 polling-delay-passive = <250>; 611 611 612 thermal-sensors = <&ts 612 thermal-sensors = <&tsens0 9>; 613 613 614 trips { 614 trips { 615 cpu6_alert0: t 615 cpu6_alert0: trip-point0 { 616 temper 616 temperature = <75000>; 617 hyster 617 hysteresis = <2000>; 618 type = 618 type = "passive"; 619 }; 619 }; 620 620 621 cpu6_crit: cpu 621 cpu6_crit: cpu-crit { 622 temper 622 temperature = <110000>; 623 hyster 623 hysteresis = <2000>; 624 type = 624 type = "critical"; 625 }; 625 }; 626 }; 626 }; 627 }; 627 }; 628 628 629 cpu7-thermal { 629 cpu7-thermal { 630 polling-delay-passive 630 polling-delay-passive = <250>; 631 631 632 thermal-sensors = <&ts 632 thermal-sensors = <&tsens0 10>; 633 633 634 trips { 634 trips { 635 cpu7_alert0: t 635 cpu7_alert0: trip-point0 { 636 temper 636 temperature = <75000>; 637 hyster 637 hysteresis = <2000>; 638 type = 638 type = "passive"; 639 }; 639 }; 640 640 641 cpu7_crit: cpu 641 cpu7_crit: cpu-crit { 642 temper 642 temperature = <110000>; 643 hyster 643 hysteresis = <2000>; 644 type = 644 type = "critical"; 645 }; 645 }; 646 }; 646 }; 647 }; 647 }; 648 648 649 gpu-bottom-thermal { 649 gpu-bottom-thermal { 650 polling-delay-passive 650 polling-delay-passive = <250>; 651 651 652 thermal-sensors = <&ts 652 thermal-sensors = <&tsens0 12>; 653 653 654 trips { 654 trips { 655 gpu1_alert0: t 655 gpu1_alert0: trip-point0 { 656 temper 656 temperature = <90000>; 657 hyster 657 hysteresis = <2000>; 658 type = 658 type = "hot"; 659 }; 659 }; 660 }; 660 }; 661 }; 661 }; 662 662 663 gpu-top-thermal { 663 gpu-top-thermal { 664 polling-delay-passive 664 polling-delay-passive = <250>; 665 665 666 thermal-sensors = <&ts 666 thermal-sensors = <&tsens0 13>; 667 667 668 trips { 668 trips { 669 gpu2_alert0: t 669 gpu2_alert0: trip-point0 { 670 temper 670 temperature = <90000>; 671 hyster 671 hysteresis = <2000>; 672 type = 672 type = "hot"; 673 }; 673 }; 674 }; 674 }; 675 }; 675 }; 676 676 677 clust0-mhm-thermal { 677 clust0-mhm-thermal { 678 polling-delay-passive 678 polling-delay-passive = <250>; 679 679 680 thermal-sensors = <&ts 680 thermal-sensors = <&tsens0 5>; 681 681 682 trips { 682 trips { 683 cluster0_mhm_a 683 cluster0_mhm_alert0: trip-point0 { 684 temper 684 temperature = <90000>; 685 hyster 685 hysteresis = <2000>; 686 type = 686 type = "hot"; 687 }; 687 }; 688 }; 688 }; 689 }; 689 }; 690 690 691 clust1-mhm-thermal { 691 clust1-mhm-thermal { 692 polling-delay-passive 692 polling-delay-passive = <250>; 693 693 694 thermal-sensors = <&ts 694 thermal-sensors = <&tsens0 6>; 695 695 696 trips { 696 trips { 697 cluster1_mhm_a 697 cluster1_mhm_alert0: trip-point0 { 698 temper 698 temperature = <90000>; 699 hyster 699 hysteresis = <2000>; 700 type = 700 type = "hot"; 701 }; 701 }; 702 }; 702 }; 703 }; 703 }; 704 704 705 cluster1-l2-thermal { 705 cluster1-l2-thermal { 706 polling-delay-passive 706 polling-delay-passive = <250>; 707 707 708 thermal-sensors = <&ts 708 thermal-sensors = <&tsens0 11>; 709 709 710 trips { 710 trips { 711 cluster1_l2_al 711 cluster1_l2_alert0: trip-point0 { 712 temper 712 temperature = <90000>; 713 hyster 713 hysteresis = <2000>; 714 type = 714 type = "hot"; 715 }; 715 }; 716 }; 716 }; 717 }; 717 }; 718 718 719 modem-thermal { 719 modem-thermal { 720 polling-delay-passive 720 polling-delay-passive = <250>; 721 721 722 thermal-sensors = <&ts 722 thermal-sensors = <&tsens1 1>; 723 723 724 trips { 724 trips { 725 modem_alert0: 725 modem_alert0: trip-point0 { 726 temper 726 temperature = <90000>; 727 hyster 727 hysteresis = <2000>; 728 type = 728 type = "hot"; 729 }; 729 }; 730 }; 730 }; 731 }; 731 }; 732 732 733 mem-thermal { 733 mem-thermal { 734 polling-delay-passive 734 polling-delay-passive = <250>; 735 735 736 thermal-sensors = <&ts 736 thermal-sensors = <&tsens1 2>; 737 737 738 trips { 738 trips { 739 mem_alert0: tr 739 mem_alert0: trip-point0 { 740 temper 740 temperature = <90000>; 741 hyster 741 hysteresis = <2000>; 742 type = 742 type = "hot"; 743 }; 743 }; 744 }; 744 }; 745 }; 745 }; 746 746 747 wlan-thermal { 747 wlan-thermal { 748 polling-delay-passive 748 polling-delay-passive = <250>; 749 749 750 thermal-sensors = <&ts 750 thermal-sensors = <&tsens1 3>; 751 751 752 trips { 752 trips { 753 wlan_alert0: t 753 wlan_alert0: trip-point0 { 754 temper 754 temperature = <90000>; 755 hyster 755 hysteresis = <2000>; 756 type = 756 type = "hot"; 757 }; 757 }; 758 }; 758 }; 759 }; 759 }; 760 760 761 q6-dsp-thermal { 761 q6-dsp-thermal { 762 polling-delay-passive 762 polling-delay-passive = <250>; 763 763 764 thermal-sensors = <&ts 764 thermal-sensors = <&tsens1 4>; 765 765 766 trips { 766 trips { 767 q6_dsp_alert0: 767 q6_dsp_alert0: trip-point0 { 768 temper 768 temperature = <90000>; 769 hyster 769 hysteresis = <2000>; 770 type = 770 type = "hot"; 771 }; 771 }; 772 }; 772 }; 773 }; 773 }; 774 774 775 camera-thermal { 775 camera-thermal { 776 polling-delay-passive 776 polling-delay-passive = <250>; 777 777 778 thermal-sensors = <&ts 778 thermal-sensors = <&tsens1 5>; 779 779 780 trips { 780 trips { 781 camera_alert0: 781 camera_alert0: trip-point0 { 782 temper 782 temperature = <90000>; 783 hyster 783 hysteresis = <2000>; 784 type = 784 type = "hot"; 785 }; 785 }; 786 }; 786 }; 787 }; 787 }; 788 788 789 multimedia-thermal { 789 multimedia-thermal { 790 polling-delay-passive 790 polling-delay-passive = <250>; 791 791 792 thermal-sensors = <&ts 792 thermal-sensors = <&tsens1 6>; 793 793 794 trips { 794 trips { 795 multimedia_ale 795 multimedia_alert0: trip-point0 { 796 temper 796 temperature = <90000>; 797 hyster 797 hysteresis = <2000>; 798 type = 798 type = "hot"; 799 }; 799 }; 800 }; 800 }; 801 }; 801 }; 802 }; 802 }; 803 803 804 timer { 804 timer { 805 compatible = "arm,armv8-timer" 805 compatible = "arm,armv8-timer"; 806 interrupts = <GIC_PPI 1 IRQ_TY 806 interrupts = <GIC_PPI 1 IRQ_TYPE_LEVEL_LOW>, 807 <GIC_PPI 2 IRQ_TY 807 <GIC_PPI 2 IRQ_TYPE_LEVEL_LOW>, 808 <GIC_PPI 3 IRQ_TY 808 <GIC_PPI 3 IRQ_TYPE_LEVEL_LOW>, 809 <GIC_PPI 0 IRQ_TY 809 <GIC_PPI 0 IRQ_TYPE_LEVEL_LOW>; 810 }; 810 }; 811 811 812 soc: soc@0 { 812 soc: soc@0 { 813 #address-cells = <1>; 813 #address-cells = <1>; 814 #size-cells = <1>; 814 #size-cells = <1>; 815 ranges = <0 0 0 0xffffffff>; 815 ranges = <0 0 0 0xffffffff>; 816 compatible = "simple-bus"; 816 compatible = "simple-bus"; 817 817 818 gcc: clock-controller@100000 { 818 gcc: clock-controller@100000 { 819 compatible = "qcom,gcc 819 compatible = "qcom,gcc-msm8998"; 820 #clock-cells = <1>; 820 #clock-cells = <1>; 821 #reset-cells = <1>; 821 #reset-cells = <1>; 822 #power-domain-cells = 822 #power-domain-cells = <1>; 823 reg = <0x00100000 0xb0 823 reg = <0x00100000 0xb0000>; 824 824 825 clock-names = "xo", "s 825 clock-names = "xo", "sleep_clk"; 826 clocks = <&rpmcc RPM_S 826 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, <&sleep_clk>; 827 827 828 /* 828 /* 829 * The hypervisor typi 829 * The hypervisor typically configures the memory region where these clocks 830 * reside as read-only 830 * reside as read-only for the HLOS. If the HLOS tried to enable or disable 831 * these clocks on a d 831 * these clocks on a device with such configuration (e.g. because they are 832 * enabled but unused 832 * enabled but unused during boot-up), the device will most likely decide 833 * to reboot. 833 * to reboot. 834 * In light of that, w 834 * In light of that, we are conservative here and we list all such clocks 835 * as protected. The b 835 * as protected. The board dts (or a user-supplied dts) can override the 836 * list of protected c 836 * list of protected clocks if it differs from the norm, and it is in fact 837 * desired for the HLO 837 * desired for the HLOS to manage these clocks 838 */ 838 */ 839 protected-clocks = <AG 839 protected-clocks = <AGGRE2_SNOC_NORTH_AXI>, 840 <SS 840 <SSC_XO>, 841 <SS 841 <SSC_CNOC_AHBS_CLK>; 842 }; 842 }; 843 843 844 rpm_msg_ram: sram@778000 { 844 rpm_msg_ram: sram@778000 { 845 compatible = "qcom,rpm 845 compatible = "qcom,rpm-msg-ram"; 846 reg = <0x00778000 0x70 846 reg = <0x00778000 0x7000>; 847 }; 847 }; 848 848 849 qfprom: qfprom@784000 { 849 qfprom: qfprom@784000 { 850 compatible = "qcom,msm 850 compatible = "qcom,msm8998-qfprom", "qcom,qfprom"; 851 reg = <0x00784000 0x62 851 reg = <0x00784000 0x621c>; 852 #address-cells = <1>; 852 #address-cells = <1>; 853 #size-cells = <1>; 853 #size-cells = <1>; 854 854 855 qusb2_hstx_trim: hstx- 855 qusb2_hstx_trim: hstx-trim@23a { 856 reg = <0x23a 0 856 reg = <0x23a 0x1>; 857 bits = <0 4>; 857 bits = <0 4>; 858 }; 858 }; 859 }; 859 }; 860 860 861 tsens0: thermal@10ab000 { 861 tsens0: thermal@10ab000 { 862 compatible = "qcom,msm 862 compatible = "qcom,msm8998-tsens", "qcom,tsens-v2"; 863 reg = <0x010ab000 0x10 863 reg = <0x010ab000 0x1000>, /* TM */ 864 <0x010aa000 0x10 864 <0x010aa000 0x1000>; /* SROT */ 865 #qcom,sensors = <14>; 865 #qcom,sensors = <14>; 866 interrupts = <GIC_SPI 866 interrupts = <GIC_SPI 458 IRQ_TYPE_LEVEL_HIGH>, 867 <GIC_SPI 867 <GIC_SPI 445 IRQ_TYPE_LEVEL_HIGH>; 868 interrupt-names = "upl 868 interrupt-names = "uplow", "critical"; 869 #thermal-sensor-cells 869 #thermal-sensor-cells = <1>; 870 }; 870 }; 871 871 872 tsens1: thermal@10ae000 { 872 tsens1: thermal@10ae000 { 873 compatible = "qcom,msm 873 compatible = "qcom,msm8998-tsens", "qcom,tsens-v2"; 874 reg = <0x010ae000 0x10 874 reg = <0x010ae000 0x1000>, /* TM */ 875 <0x010ad000 0x10 875 <0x010ad000 0x1000>; /* SROT */ 876 #qcom,sensors = <8>; 876 #qcom,sensors = <8>; 877 interrupts = <GIC_SPI 877 interrupts = <GIC_SPI 184 IRQ_TYPE_LEVEL_HIGH>, 878 <GIC_SPI 878 <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>; 879 interrupt-names = "upl 879 interrupt-names = "uplow", "critical"; 880 #thermal-sensor-cells 880 #thermal-sensor-cells = <1>; 881 }; 881 }; 882 882 883 anoc1_smmu: iommu@1680000 { 883 anoc1_smmu: iommu@1680000 { 884 compatible = "qcom,msm 884 compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 885 reg = <0x01680000 0x10 885 reg = <0x01680000 0x10000>; 886 #iommu-cells = <1>; 886 #iommu-cells = <1>; 887 887 888 #global-interrupts = < 888 #global-interrupts = <0>; 889 interrupts = 889 interrupts = 890 <GIC_SPI 364 I 890 <GIC_SPI 364 IRQ_TYPE_EDGE_RISING>, 891 <GIC_SPI 365 I 891 <GIC_SPI 365 IRQ_TYPE_EDGE_RISING>, 892 <GIC_SPI 366 I 892 <GIC_SPI 366 IRQ_TYPE_EDGE_RISING>, 893 <GIC_SPI 367 I 893 <GIC_SPI 367 IRQ_TYPE_EDGE_RISING>, 894 <GIC_SPI 368 I 894 <GIC_SPI 368 IRQ_TYPE_EDGE_RISING>, 895 <GIC_SPI 369 I 895 <GIC_SPI 369 IRQ_TYPE_EDGE_RISING>; 896 }; 896 }; 897 897 898 anoc2_smmu: iommu@16c0000 { 898 anoc2_smmu: iommu@16c0000 { 899 compatible = "qcom,msm 899 compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 900 reg = <0x016c0000 0x40 900 reg = <0x016c0000 0x40000>; 901 #iommu-cells = <1>; 901 #iommu-cells = <1>; 902 902 903 #global-interrupts = < 903 #global-interrupts = <0>; 904 interrupts = 904 interrupts = 905 <GIC_SPI 373 I 905 <GIC_SPI 373 IRQ_TYPE_EDGE_RISING>, 906 <GIC_SPI 374 I 906 <GIC_SPI 374 IRQ_TYPE_EDGE_RISING>, 907 <GIC_SPI 375 I 907 <GIC_SPI 375 IRQ_TYPE_EDGE_RISING>, 908 <GIC_SPI 376 I 908 <GIC_SPI 376 IRQ_TYPE_EDGE_RISING>, 909 <GIC_SPI 377 I 909 <GIC_SPI 377 IRQ_TYPE_EDGE_RISING>, 910 <GIC_SPI 378 I 910 <GIC_SPI 378 IRQ_TYPE_EDGE_RISING>, 911 <GIC_SPI 462 I 911 <GIC_SPI 462 IRQ_TYPE_EDGE_RISING>, 912 <GIC_SPI 463 I 912 <GIC_SPI 463 IRQ_TYPE_EDGE_RISING>, 913 <GIC_SPI 464 I 913 <GIC_SPI 464 IRQ_TYPE_EDGE_RISING>, 914 <GIC_SPI 465 I 914 <GIC_SPI 465 IRQ_TYPE_EDGE_RISING>; 915 }; 915 }; 916 916 917 pcie0: pcie@1c00000 { 917 pcie0: pcie@1c00000 { 918 compatible = "qcom,pci 918 compatible = "qcom,pcie-msm8998", "qcom,pcie-msm8996"; 919 reg = <0x01c00000 0x20 919 reg = <0x01c00000 0x2000>, 920 <0x1b000000 0xf1 920 <0x1b000000 0xf1d>, 921 <0x1b000f20 0xa8 921 <0x1b000f20 0xa8>, 922 <0x1b100000 0x10 922 <0x1b100000 0x100000>; 923 reg-names = "parf", "d 923 reg-names = "parf", "dbi", "elbi", "config"; 924 device_type = "pci"; 924 device_type = "pci"; 925 linux,pci-domain = <0> 925 linux,pci-domain = <0>; 926 bus-range = <0x00 0xff 926 bus-range = <0x00 0xff>; 927 #address-cells = <3>; 927 #address-cells = <3>; 928 #size-cells = <2>; 928 #size-cells = <2>; 929 num-lanes = <1>; 929 num-lanes = <1>; 930 phys = <&pcie_phy>; 930 phys = <&pcie_phy>; 931 phy-names = "pciephy"; 931 phy-names = "pciephy"; 932 status = "disabled"; 932 status = "disabled"; 933 933 934 ranges = <0x01000000 0 934 ranges = <0x01000000 0x0 0x00000000 0x1b200000 0x0 0x100000>, 935 <0x02000000 0 935 <0x02000000 0x0 0x1b300000 0x1b300000 0x0 0xd00000>; 936 936 937 #interrupt-cells = <1> 937 #interrupt-cells = <1>; 938 interrupts = <GIC_SPI 938 interrupts = <GIC_SPI 405 IRQ_TYPE_LEVEL_HIGH>; 939 interrupt-names = "msi 939 interrupt-names = "msi"; 940 interrupt-map-mask = < 940 interrupt-map-mask = <0 0 0 0x7>; 941 interrupt-map = <0 0 0 941 interrupt-map = <0 0 0 1 &intc 0 0 135 IRQ_TYPE_LEVEL_HIGH>, 942 <0 0 0 942 <0 0 0 2 &intc 0 0 136 IRQ_TYPE_LEVEL_HIGH>, 943 <0 0 0 943 <0 0 0 3 &intc 0 0 138 IRQ_TYPE_LEVEL_HIGH>, 944 <0 0 0 944 <0 0 0 4 &intc 0 0 139 IRQ_TYPE_LEVEL_HIGH>; 945 945 946 clocks = <&gcc GCC_PCI 946 clocks = <&gcc GCC_PCIE_0_PIPE_CLK>, 947 <&gcc GCC_PCI 947 <&gcc GCC_PCIE_0_AUX_CLK>, 948 <&gcc GCC_PCI 948 <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 949 <&gcc GCC_PCI 949 <&gcc GCC_PCIE_0_MSTR_AXI_CLK>, 950 <&gcc GCC_PCI 950 <&gcc GCC_PCIE_0_SLV_AXI_CLK>; 951 clock-names = "pipe", 951 clock-names = "pipe", "aux", "cfg", "bus_master", "bus_slave"; 952 952 953 power-domains = <&gcc 953 power-domains = <&gcc PCIE_0_GDSC>; 954 iommu-map = <0x100 &an 954 iommu-map = <0x100 &anoc1_smmu 0x1480 1>; 955 perst-gpios = <&tlmm 3 955 perst-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>; 956 956 957 pcie@0 { 957 pcie@0 { 958 device_type = 958 device_type = "pci"; 959 reg = <0x0 0x0 959 reg = <0x0 0x0 0x0 0x0 0x0>; 960 bus-range = <0 960 bus-range = <0x01 0xff>; 961 961 962 #address-cells 962 #address-cells = <3>; 963 #size-cells = 963 #size-cells = <2>; 964 ranges; 964 ranges; 965 }; 965 }; 966 }; 966 }; 967 967 968 pcie_phy: phy@1c06000 { 968 pcie_phy: phy@1c06000 { 969 compatible = "qcom,msm 969 compatible = "qcom,msm8998-qmp-pcie-phy"; 970 reg = <0x01c06000 0x10 970 reg = <0x01c06000 0x1000>; 971 status = "disabled"; 971 status = "disabled"; 972 972 973 clocks = <&gcc GCC_PCI 973 clocks = <&gcc GCC_PCIE_PHY_AUX_CLK>, 974 <&gcc GCC_PCI 974 <&gcc GCC_PCIE_0_CFG_AHB_CLK>, 975 <&gcc GCC_PCI 975 <&gcc GCC_PCIE_CLKREF_CLK>, 976 <&gcc GCC_PCI 976 <&gcc GCC_PCIE_0_PIPE_CLK>; 977 clock-names = "aux", 977 clock-names = "aux", 978 "cfg_ahb 978 "cfg_ahb", 979 "ref", 979 "ref", 980 "pipe"; 980 "pipe"; 981 981 982 clock-output-names = " 982 clock-output-names = "pcie_0_pipe_clk_src"; 983 #clock-cells = <0>; 983 #clock-cells = <0>; 984 984 985 #phy-cells = <0>; 985 #phy-cells = <0>; 986 986 987 resets = <&gcc GCC_PCI 987 resets = <&gcc GCC_PCIE_0_PHY_BCR>, <&gcc GCC_PCIE_PHY_BCR>; 988 reset-names = "phy", " 988 reset-names = "phy", "common"; 989 989 990 vdda-phy-supply = <&vr 990 vdda-phy-supply = <&vreg_l1a_0p875>; 991 vdda-pll-supply = <&vr 991 vdda-pll-supply = <&vreg_l2a_1p2>; 992 }; 992 }; 993 993 994 ufshc: ufshc@1da4000 { 994 ufshc: ufshc@1da4000 { 995 compatible = "qcom,msm 995 compatible = "qcom,msm8998-ufshc", "qcom,ufshc", "jedec,ufs-2.0"; 996 reg = <0x01da4000 0x25 996 reg = <0x01da4000 0x2500>; 997 interrupts = <GIC_SPI 997 interrupts = <GIC_SPI 265 IRQ_TYPE_LEVEL_HIGH>; 998 phys = <&ufsphy>; 998 phys = <&ufsphy>; 999 phy-names = "ufsphy"; 999 phy-names = "ufsphy"; 1000 lanes-per-direction = 1000 lanes-per-direction = <2>; 1001 power-domains = <&gcc 1001 power-domains = <&gcc UFS_GDSC>; 1002 status = "disabled"; 1002 status = "disabled"; 1003 #reset-cells = <1>; 1003 #reset-cells = <1>; 1004 1004 1005 clock-names = 1005 clock-names = 1006 "core_clk", 1006 "core_clk", 1007 "bus_aggr_clk 1007 "bus_aggr_clk", 1008 "iface_clk", 1008 "iface_clk", 1009 "core_clk_uni 1009 "core_clk_unipro", 1010 "ref_clk", 1010 "ref_clk", 1011 "tx_lane0_syn 1011 "tx_lane0_sync_clk", 1012 "rx_lane0_syn 1012 "rx_lane0_sync_clk", 1013 "rx_lane1_syn 1013 "rx_lane1_sync_clk"; 1014 clocks = 1014 clocks = 1015 <&gcc GCC_UFS 1015 <&gcc GCC_UFS_AXI_CLK>, 1016 <&gcc GCC_AGG 1016 <&gcc GCC_AGGRE1_UFS_AXI_CLK>, 1017 <&gcc GCC_UFS 1017 <&gcc GCC_UFS_AHB_CLK>, 1018 <&gcc GCC_UFS 1018 <&gcc GCC_UFS_UNIPRO_CORE_CLK>, 1019 <&rpmcc RPM_S 1019 <&rpmcc RPM_SMD_LN_BB_CLK1>, 1020 <&gcc GCC_UFS 1020 <&gcc GCC_UFS_TX_SYMBOL_0_CLK>, 1021 <&gcc GCC_UFS 1021 <&gcc GCC_UFS_RX_SYMBOL_0_CLK>, 1022 <&gcc GCC_UFS 1022 <&gcc GCC_UFS_RX_SYMBOL_1_CLK>; 1023 freq-table-hz = 1023 freq-table-hz = 1024 <50000000 200 1024 <50000000 200000000>, 1025 <0 0>, 1025 <0 0>, 1026 <0 0>, 1026 <0 0>, 1027 <37500000 150 1027 <37500000 150000000>, 1028 <0 0>, 1028 <0 0>, 1029 <0 0>, 1029 <0 0>, 1030 <0 0>, 1030 <0 0>, 1031 <0 0>; 1031 <0 0>; 1032 1032 1033 resets = <&gcc GCC_UF 1033 resets = <&gcc GCC_UFS_BCR>; 1034 reset-names = "rst"; 1034 reset-names = "rst"; 1035 }; 1035 }; 1036 1036 1037 ufsphy: phy@1da7000 { 1037 ufsphy: phy@1da7000 { 1038 compatible = "qcom,ms 1038 compatible = "qcom,msm8998-qmp-ufs-phy"; 1039 reg = <0x01da7000 0x1 1039 reg = <0x01da7000 0x1000>; 1040 1040 1041 clocks = <&rpmcc RPM_ 1041 clocks = <&rpmcc RPM_SMD_LN_BB_CLK1>, 1042 <&gcc GCC_UF 1042 <&gcc GCC_UFS_PHY_AUX_CLK>, 1043 <&gcc GCC_UF 1043 <&gcc GCC_UFS_CLKREF_CLK>; 1044 clock-names = "ref", 1044 clock-names = "ref", 1045 "ref_au 1045 "ref_aux", 1046 "qref"; 1046 "qref"; 1047 1047 1048 reset-names = "ufsphy 1048 reset-names = "ufsphy"; 1049 resets = <&ufshc 0>; 1049 resets = <&ufshc 0>; 1050 1050 1051 #phy-cells = <0>; 1051 #phy-cells = <0>; 1052 status = "disabled"; 1052 status = "disabled"; 1053 }; 1053 }; 1054 1054 1055 tcsr_mutex: hwlock@1f40000 { 1055 tcsr_mutex: hwlock@1f40000 { 1056 compatible = "qcom,tc 1056 compatible = "qcom,tcsr-mutex"; 1057 reg = <0x01f40000 0x2 1057 reg = <0x01f40000 0x20000>; 1058 #hwlock-cells = <1>; 1058 #hwlock-cells = <1>; 1059 }; 1059 }; 1060 1060 1061 tcsr_regs_1: syscon@1f60000 { 1061 tcsr_regs_1: syscon@1f60000 { 1062 compatible = "qcom,ms 1062 compatible = "qcom,msm8998-tcsr", "syscon"; 1063 reg = <0x01f60000 0x2 1063 reg = <0x01f60000 0x20000>; 1064 }; 1064 }; 1065 1065 1066 tcsr_regs_2: syscon@1fc0000 { 1066 tcsr_regs_2: syscon@1fc0000 { 1067 compatible = "qcom,ms 1067 compatible = "qcom,msm8998-tcsr", "syscon"; 1068 reg = <0x01fc0000 0x2 1068 reg = <0x01fc0000 0x26000>; 1069 }; 1069 }; 1070 1070 1071 tlmm: pinctrl@3400000 { 1071 tlmm: pinctrl@3400000 { 1072 compatible = "qcom,ms 1072 compatible = "qcom,msm8998-pinctrl"; 1073 reg = <0x03400000 0xc 1073 reg = <0x03400000 0xc00000>; 1074 interrupts = <GIC_SPI 1074 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 1075 gpio-ranges = <&tlmm 1075 gpio-ranges = <&tlmm 0 0 150>; 1076 gpio-controller; 1076 gpio-controller; 1077 #gpio-cells = <2>; 1077 #gpio-cells = <2>; 1078 interrupt-controller; 1078 interrupt-controller; 1079 #interrupt-cells = <2 1079 #interrupt-cells = <2>; 1080 1080 1081 sdc2_on: sdc2-on-stat 1081 sdc2_on: sdc2-on-state { 1082 clk-pins { 1082 clk-pins { 1083 pins 1083 pins = "sdc2_clk"; 1084 drive 1084 drive-strength = <16>; 1085 bias- 1085 bias-disable; 1086 }; 1086 }; 1087 1087 1088 cmd-pins { 1088 cmd-pins { 1089 pins 1089 pins = "sdc2_cmd"; 1090 drive 1090 drive-strength = <10>; 1091 bias- 1091 bias-pull-up; 1092 }; 1092 }; 1093 1093 1094 data-pins { 1094 data-pins { 1095 pins 1095 pins = "sdc2_data"; 1096 drive 1096 drive-strength = <10>; 1097 bias- 1097 bias-pull-up; 1098 }; 1098 }; 1099 }; 1099 }; 1100 1100 1101 sdc2_off: sdc2-off-st 1101 sdc2_off: sdc2-off-state { 1102 clk-pins { 1102 clk-pins { 1103 pins 1103 pins = "sdc2_clk"; 1104 drive 1104 drive-strength = <2>; 1105 bias- 1105 bias-disable; 1106 }; 1106 }; 1107 1107 1108 cmd-pins { 1108 cmd-pins { 1109 pins 1109 pins = "sdc2_cmd"; 1110 drive 1110 drive-strength = <2>; 1111 bias- 1111 bias-pull-up; 1112 }; 1112 }; 1113 1113 1114 data-pins { 1114 data-pins { 1115 pins 1115 pins = "sdc2_data"; 1116 drive 1116 drive-strength = <2>; 1117 bias- 1117 bias-pull-up; 1118 }; 1118 }; 1119 }; 1119 }; 1120 1120 1121 sdc2_cd: sdc2-cd-stat 1121 sdc2_cd: sdc2-cd-state { 1122 pins = "gpio9 1122 pins = "gpio95"; 1123 function = "g 1123 function = "gpio"; 1124 bias-pull-up; 1124 bias-pull-up; 1125 drive-strengt 1125 drive-strength = <2>; 1126 }; 1126 }; 1127 1127 1128 blsp1_uart3_on: blsp1 1128 blsp1_uart3_on: blsp1-uart3-on-state { 1129 tx-pins { 1129 tx-pins { 1130 pins 1130 pins = "gpio45"; 1131 funct 1131 function = "blsp_uart3_a"; 1132 drive 1132 drive-strength = <2>; 1133 bias- 1133 bias-disable; 1134 }; 1134 }; 1135 1135 1136 rx-pins { 1136 rx-pins { 1137 pins 1137 pins = "gpio46"; 1138 funct 1138 function = "blsp_uart3_a"; 1139 drive 1139 drive-strength = <2>; 1140 bias- 1140 bias-disable; 1141 }; 1141 }; 1142 1142 1143 cts-pins { 1143 cts-pins { 1144 pins 1144 pins = "gpio47"; 1145 funct 1145 function = "blsp_uart3_a"; 1146 drive 1146 drive-strength = <2>; 1147 bias- 1147 bias-disable; 1148 }; 1148 }; 1149 1149 1150 rfr-pins { 1150 rfr-pins { 1151 pins 1151 pins = "gpio48"; 1152 funct 1152 function = "blsp_uart3_a"; 1153 drive 1153 drive-strength = <2>; 1154 bias- 1154 bias-disable; 1155 }; 1155 }; 1156 }; 1156 }; 1157 1157 1158 blsp1_i2c1_default: b 1158 blsp1_i2c1_default: blsp1-i2c1-default-state { 1159 pins = "gpio2 1159 pins = "gpio2", "gpio3"; 1160 function = "b 1160 function = "blsp_i2c1"; 1161 drive-strengt 1161 drive-strength = <2>; 1162 bias-disable; 1162 bias-disable; 1163 }; 1163 }; 1164 1164 1165 blsp1_i2c1_sleep: bls 1165 blsp1_i2c1_sleep: blsp1-i2c1-sleep-state-state { 1166 pins = "gpio2 1166 pins = "gpio2", "gpio3"; 1167 function = "b 1167 function = "blsp_i2c1"; 1168 drive-strengt 1168 drive-strength = <2>; 1169 bias-pull-up; 1169 bias-pull-up; 1170 }; 1170 }; 1171 1171 1172 blsp1_i2c2_default: b 1172 blsp1_i2c2_default: blsp1-i2c2-default-state { 1173 pins = "gpio3 1173 pins = "gpio32", "gpio33"; 1174 function = "b 1174 function = "blsp_i2c2"; 1175 drive-strengt 1175 drive-strength = <2>; 1176 bias-disable; 1176 bias-disable; 1177 }; 1177 }; 1178 1178 1179 blsp1_i2c2_sleep: bls 1179 blsp1_i2c2_sleep: blsp1-i2c2-sleep-state-state { 1180 pins = "gpio3 1180 pins = "gpio32", "gpio33"; 1181 function = "b 1181 function = "blsp_i2c2"; 1182 drive-strengt 1182 drive-strength = <2>; 1183 bias-pull-up; 1183 bias-pull-up; 1184 }; 1184 }; 1185 1185 1186 blsp1_i2c3_default: b 1186 blsp1_i2c3_default: blsp1-i2c3-default-state { 1187 pins = "gpio4 1187 pins = "gpio47", "gpio48"; 1188 function = "b 1188 function = "blsp_i2c3"; 1189 drive-strengt 1189 drive-strength = <2>; 1190 bias-disable; 1190 bias-disable; 1191 }; 1191 }; 1192 1192 1193 blsp1_i2c3_sleep: bls 1193 blsp1_i2c3_sleep: blsp1-i2c3-sleep-state { 1194 pins = "gpio4 1194 pins = "gpio47", "gpio48"; 1195 function = "b 1195 function = "blsp_i2c3"; 1196 drive-strengt 1196 drive-strength = <2>; 1197 bias-pull-up; 1197 bias-pull-up; 1198 }; 1198 }; 1199 1199 1200 blsp1_i2c4_default: b 1200 blsp1_i2c4_default: blsp1-i2c4-default-state { 1201 pins = "gpio1 1201 pins = "gpio10", "gpio11"; 1202 function = "b 1202 function = "blsp_i2c4"; 1203 drive-strengt 1203 drive-strength = <2>; 1204 bias-disable; 1204 bias-disable; 1205 }; 1205 }; 1206 1206 1207 blsp1_i2c4_sleep: bls 1207 blsp1_i2c4_sleep: blsp1-i2c4-sleep-state { 1208 pins = "gpio1 1208 pins = "gpio10", "gpio11"; 1209 function = "b 1209 function = "blsp_i2c4"; 1210 drive-strengt 1210 drive-strength = <2>; 1211 bias-pull-up; 1211 bias-pull-up; 1212 }; 1212 }; 1213 1213 1214 blsp1_i2c5_default: b 1214 blsp1_i2c5_default: blsp1-i2c5-default-state { 1215 pins = "gpio8 1215 pins = "gpio87", "gpio88"; 1216 function = "b 1216 function = "blsp_i2c5"; 1217 drive-strengt 1217 drive-strength = <2>; 1218 bias-disable; 1218 bias-disable; 1219 }; 1219 }; 1220 1220 1221 blsp1_i2c5_sleep: bls 1221 blsp1_i2c5_sleep: blsp1-i2c5-sleep-state { 1222 pins = "gpio8 1222 pins = "gpio87", "gpio88"; 1223 function = "b 1223 function = "blsp_i2c5"; 1224 drive-strengt 1224 drive-strength = <2>; 1225 bias-pull-up; 1225 bias-pull-up; 1226 }; 1226 }; 1227 1227 1228 blsp1_i2c6_default: b 1228 blsp1_i2c6_default: blsp1-i2c6-default-state { 1229 pins = "gpio4 1229 pins = "gpio43", "gpio44"; 1230 function = "b 1230 function = "blsp_i2c6"; 1231 drive-strengt 1231 drive-strength = <2>; 1232 bias-disable; 1232 bias-disable; 1233 }; 1233 }; 1234 1234 1235 blsp1_i2c6_sleep: bls 1235 blsp1_i2c6_sleep: blsp1-i2c6-sleep-state { 1236 pins = "gpio4 1236 pins = "gpio43", "gpio44"; 1237 function = "b 1237 function = "blsp_i2c6"; 1238 drive-strengt 1238 drive-strength = <2>; 1239 bias-pull-up; 1239 bias-pull-up; 1240 }; 1240 }; 1241 1241 1242 blsp1_spi_b_default: 1242 blsp1_spi_b_default: blsp1-spi-b-default-state { 1243 pins = "gpio2 1243 pins = "gpio23", "gpio28"; 1244 function = "b 1244 function = "blsp1_spi_b"; 1245 drive-strengt 1245 drive-strength = <6>; 1246 bias-disable; 1246 bias-disable; 1247 }; 1247 }; 1248 1248 1249 blsp1_spi1_default: b 1249 blsp1_spi1_default: blsp1-spi1-default-state { 1250 pins = "gpio0 1250 pins = "gpio0", "gpio1", "gpio2", "gpio3"; 1251 function = "b 1251 function = "blsp_spi1"; 1252 drive-strengt 1252 drive-strength = <6>; 1253 bias-disable; 1253 bias-disable; 1254 }; 1254 }; 1255 1255 1256 blsp1_spi2_default: b 1256 blsp1_spi2_default: blsp1-spi2-default-state { 1257 pins = "gpio3 1257 pins = "gpio31", "gpio34", "gpio32", "gpio33"; 1258 function = "b 1258 function = "blsp_spi2"; 1259 drive-strengt 1259 drive-strength = <6>; 1260 bias-disable; 1260 bias-disable; 1261 }; 1261 }; 1262 1262 1263 blsp1_spi3_default: b 1263 blsp1_spi3_default: blsp1-spi3-default-state { 1264 pins = "gpio4 1264 pins = "gpio45", "gpio46", "gpio47", "gpio48"; 1265 function = "b 1265 function = "blsp_spi2"; 1266 drive-strengt 1266 drive-strength = <6>; 1267 bias-disable; 1267 bias-disable; 1268 }; 1268 }; 1269 1269 1270 blsp1_spi4_default: b 1270 blsp1_spi4_default: blsp1-spi4-default-state { 1271 pins = "gpio8 1271 pins = "gpio8", "gpio9", "gpio10", "gpio11"; 1272 function = "b 1272 function = "blsp_spi4"; 1273 drive-strengt 1273 drive-strength = <6>; 1274 bias-disable; 1274 bias-disable; 1275 }; 1275 }; 1276 1276 1277 blsp1_spi5_default: b 1277 blsp1_spi5_default: blsp1-spi5-default-state { 1278 pins = "gpio8 1278 pins = "gpio85", "gpio86", "gpio87", "gpio88"; 1279 function = "b 1279 function = "blsp_spi5"; 1280 drive-strengt 1280 drive-strength = <6>; 1281 bias-disable; 1281 bias-disable; 1282 }; 1282 }; 1283 1283 1284 blsp1_spi6_default: b 1284 blsp1_spi6_default: blsp1-spi6-default-state { 1285 pins = "gpio4 1285 pins = "gpio41", "gpio42", "gpio43", "gpio44"; 1286 function = "b 1286 function = "blsp_spi6"; 1287 drive-strengt 1287 drive-strength = <6>; 1288 bias-disable; 1288 bias-disable; 1289 }; 1289 }; 1290 1290 1291 1291 1292 /* 6 interfaces per Q 1292 /* 6 interfaces per QUP, BLSP2 indexes are numbered (n)+6 */ 1293 blsp2_i2c1_default: b 1293 blsp2_i2c1_default: blsp2-i2c1-default-state { 1294 pins = "gpio5 1294 pins = "gpio55", "gpio56"; 1295 function = "b 1295 function = "blsp_i2c7"; 1296 drive-strengt 1296 drive-strength = <2>; 1297 bias-disable; 1297 bias-disable; 1298 }; 1298 }; 1299 1299 1300 blsp2_i2c1_sleep: bls 1300 blsp2_i2c1_sleep: blsp2-i2c1-sleep-state { 1301 pins = "gpio5 1301 pins = "gpio55", "gpio56"; 1302 function = "b 1302 function = "blsp_i2c7"; 1303 drive-strengt 1303 drive-strength = <2>; 1304 bias-pull-up; 1304 bias-pull-up; 1305 }; 1305 }; 1306 1306 1307 blsp2_i2c2_default: b 1307 blsp2_i2c2_default: blsp2-i2c2-default-state { 1308 pins = "gpio6 1308 pins = "gpio6", "gpio7"; 1309 function = "b 1309 function = "blsp_i2c8"; 1310 drive-strengt 1310 drive-strength = <2>; 1311 bias-disable; 1311 bias-disable; 1312 }; 1312 }; 1313 1313 1314 blsp2_i2c2_sleep: bls 1314 blsp2_i2c2_sleep: blsp2-i2c2-sleep-state { 1315 pins = "gpio6 1315 pins = "gpio6", "gpio7"; 1316 function = "b 1316 function = "blsp_i2c8"; 1317 drive-strengt 1317 drive-strength = <2>; 1318 bias-pull-up; 1318 bias-pull-up; 1319 }; 1319 }; 1320 1320 1321 blsp2_i2c3_default: b 1321 blsp2_i2c3_default: blsp2-i2c3-default-state { 1322 pins = "gpio5 1322 pins = "gpio51", "gpio52"; 1323 function = "b 1323 function = "blsp_i2c9"; 1324 drive-strengt 1324 drive-strength = <2>; 1325 bias-disable; 1325 bias-disable; 1326 }; 1326 }; 1327 1327 1328 blsp2_i2c3_sleep: bls 1328 blsp2_i2c3_sleep: blsp2-i2c3-sleep-state { 1329 pins = "gpio5 1329 pins = "gpio51", "gpio52"; 1330 function = "b 1330 function = "blsp_i2c9"; 1331 drive-strengt 1331 drive-strength = <2>; 1332 bias-pull-up; 1332 bias-pull-up; 1333 }; 1333 }; 1334 1334 1335 blsp2_i2c4_default: b 1335 blsp2_i2c4_default: blsp2-i2c4-default-state { 1336 pins = "gpio6 1336 pins = "gpio67", "gpio68"; 1337 function = "b 1337 function = "blsp_i2c10"; 1338 drive-strengt 1338 drive-strength = <2>; 1339 bias-disable; 1339 bias-disable; 1340 }; 1340 }; 1341 1341 1342 blsp2_i2c4_sleep: bls 1342 blsp2_i2c4_sleep: blsp2-i2c4-sleep-state { 1343 pins = "gpio6 1343 pins = "gpio67", "gpio68"; 1344 function = "b 1344 function = "blsp_i2c10"; 1345 drive-strengt 1345 drive-strength = <2>; 1346 bias-pull-up; 1346 bias-pull-up; 1347 }; 1347 }; 1348 1348 1349 blsp2_i2c5_default: b 1349 blsp2_i2c5_default: blsp2-i2c5-default-state { 1350 pins = "gpio6 1350 pins = "gpio60", "gpio61"; 1351 function = "b 1351 function = "blsp_i2c11"; 1352 drive-strengt 1352 drive-strength = <2>; 1353 bias-disable; 1353 bias-disable; 1354 }; 1354 }; 1355 1355 1356 blsp2_i2c5_sleep: bls 1356 blsp2_i2c5_sleep: blsp2-i2c5-sleep-state { 1357 pins = "gpio6 1357 pins = "gpio60", "gpio61"; 1358 function = "b 1358 function = "blsp_i2c11"; 1359 drive-strengt 1359 drive-strength = <2>; 1360 bias-pull-up; 1360 bias-pull-up; 1361 }; 1361 }; 1362 1362 1363 blsp2_i2c6_default: b 1363 blsp2_i2c6_default: blsp2-i2c6-default-state { 1364 pins = "gpio8 1364 pins = "gpio83", "gpio84"; 1365 function = "b 1365 function = "blsp_i2c12"; 1366 drive-strengt 1366 drive-strength = <2>; 1367 bias-disable; 1367 bias-disable; 1368 }; 1368 }; 1369 1369 1370 blsp2_i2c6_sleep: bls 1370 blsp2_i2c6_sleep: blsp2-i2c6-sleep-state { 1371 pins = "gpio8 1371 pins = "gpio83", "gpio84"; 1372 function = "b 1372 function = "blsp_i2c12"; 1373 drive-strengt 1373 drive-strength = <2>; 1374 bias-pull-up; 1374 bias-pull-up; 1375 }; 1375 }; 1376 1376 1377 blsp2_spi1_default: b 1377 blsp2_spi1_default: blsp2-spi1-default-state { 1378 pins = "gpio5 1378 pins = "gpio53", "gpio54", "gpio55", "gpio56"; 1379 function = "b 1379 function = "blsp_spi7"; 1380 drive-strengt 1380 drive-strength = <6>; 1381 bias-disable; 1381 bias-disable; 1382 }; 1382 }; 1383 1383 1384 blsp2_spi2_default: b 1384 blsp2_spi2_default: blsp2-spi2-default-state { 1385 pins = "gpio4 1385 pins = "gpio4", "gpio5", "gpio6", "gpio7"; 1386 function = "b 1386 function = "blsp_spi8"; 1387 drive-strengt 1387 drive-strength = <6>; 1388 bias-disable; 1388 bias-disable; 1389 }; 1389 }; 1390 1390 1391 blsp2_spi3_default: b 1391 blsp2_spi3_default: blsp2-spi3-default-state { 1392 pins = "gpio4 1392 pins = "gpio49", "gpio50", "gpio51", "gpio52"; 1393 function = "b 1393 function = "blsp_spi9"; 1394 drive-strengt 1394 drive-strength = <6>; 1395 bias-disable; 1395 bias-disable; 1396 }; 1396 }; 1397 1397 1398 blsp2_spi4_default: b 1398 blsp2_spi4_default: blsp2-spi4-default-state { 1399 pins = "gpio6 1399 pins = "gpio65", "gpio66", "gpio67", "gpio68"; 1400 function = "b 1400 function = "blsp_spi10"; 1401 drive-strengt 1401 drive-strength = <6>; 1402 bias-disable; 1402 bias-disable; 1403 }; 1403 }; 1404 1404 1405 blsp2_spi5_default: b 1405 blsp2_spi5_default: blsp2-spi5-default-state { 1406 pins = "gpio5 1406 pins = "gpio58", "gpio59", "gpio60", "gpio61"; 1407 function = "b 1407 function = "blsp_spi11"; 1408 drive-strengt 1408 drive-strength = <6>; 1409 bias-disable; 1409 bias-disable; 1410 }; 1410 }; 1411 1411 1412 blsp2_spi6_default: b 1412 blsp2_spi6_default: blsp2-spi6-default-state { 1413 pins = "gpio8 1413 pins = "gpio81", "gpio82", "gpio83", "gpio84"; 1414 function = "b 1414 function = "blsp_spi12"; 1415 drive-strengt 1415 drive-strength = <6>; 1416 bias-disable; 1416 bias-disable; 1417 }; 1417 }; 1418 }; 1418 }; 1419 1419 1420 remoteproc_mss: remoteproc@40 1420 remoteproc_mss: remoteproc@4080000 { 1421 compatible = "qcom,ms 1421 compatible = "qcom,msm8998-mss-pil"; 1422 reg = <0x04080000 0x1 1422 reg = <0x04080000 0x100>, <0x04180000 0x20>; 1423 reg-names = "qdsp6", 1423 reg-names = "qdsp6", "rmb"; 1424 1424 1425 interrupts-extended = 1425 interrupts-extended = 1426 <&intc GIC_SP 1426 <&intc GIC_SPI 448 IRQ_TYPE_EDGE_RISING>, 1427 <&modem_smp2p 1427 <&modem_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1428 <&modem_smp2p 1428 <&modem_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1429 <&modem_smp2p 1429 <&modem_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1430 <&modem_smp2p 1430 <&modem_smp2p_in 3 IRQ_TYPE_EDGE_RISING>, 1431 <&modem_smp2p 1431 <&modem_smp2p_in 7 IRQ_TYPE_EDGE_RISING>; 1432 interrupt-names = "wd 1432 interrupt-names = "wdog", "fatal", "ready", 1433 "ha 1433 "handover", "stop-ack", 1434 "sh 1434 "shutdown-ack"; 1435 1435 1436 clocks = <&gcc GCC_MS 1436 clocks = <&gcc GCC_MSS_CFG_AHB_CLK>, 1437 <&gcc GCC_BI 1437 <&gcc GCC_BIMC_MSS_Q6_AXI_CLK>, 1438 <&gcc GCC_BO 1438 <&gcc GCC_BOOT_ROM_AHB_CLK>, 1439 <&gcc GCC_MS 1439 <&gcc GCC_MSS_GPLL0_DIV_CLK_SRC>, 1440 <&gcc GCC_MS 1440 <&gcc GCC_MSS_SNOC_AXI_CLK>, 1441 <&gcc GCC_MS 1441 <&gcc GCC_MSS_MNOC_BIMC_AXI_CLK>, 1442 <&rpmcc RPM_ 1442 <&rpmcc RPM_SMD_QDSS_CLK>, 1443 <&rpmcc RPM_ 1443 <&rpmcc RPM_SMD_XO_CLK_SRC>; 1444 clock-names = "iface" 1444 clock-names = "iface", "bus", "mem", "gpll0_mss", 1445 "snoc_a 1445 "snoc_axi", "mnoc_axi", "qdss", "xo"; 1446 1446 1447 qcom,smem-states = <& 1447 qcom,smem-states = <&modem_smp2p_out 0>; 1448 qcom,smem-state-names 1448 qcom,smem-state-names = "stop"; 1449 1449 1450 resets = <&gcc GCC_MS 1450 resets = <&gcc GCC_MSS_RESTART>; 1451 reset-names = "mss_re 1451 reset-names = "mss_restart"; 1452 1452 1453 qcom,halt-regs = <&tc 1453 qcom,halt-regs = <&tcsr_regs_1 0x3000 0x5000 0x4000>; 1454 1454 1455 power-domains = <&rpm 1455 power-domains = <&rpmpd MSM8998_VDDCX>, 1456 <&rpm 1456 <&rpmpd MSM8998_VDDMX>; 1457 power-domain-names = 1457 power-domain-names = "cx", "mx"; 1458 1458 1459 status = "disabled"; 1459 status = "disabled"; 1460 1460 1461 mba { 1461 mba { 1462 memory-region 1462 memory-region = <&mba_mem>; 1463 }; 1463 }; 1464 1464 1465 mpss { 1465 mpss { 1466 memory-region 1466 memory-region = <&mpss_mem>; 1467 }; 1467 }; 1468 1468 1469 metadata { 1469 metadata { 1470 memory-region 1470 memory-region = <&mdata_mem>; 1471 }; 1471 }; 1472 1472 1473 glink-edge { 1473 glink-edge { 1474 interrupts = 1474 interrupts = <GIC_SPI 452 IRQ_TYPE_EDGE_RISING>; 1475 label = "mode 1475 label = "modem"; 1476 qcom,remote-p 1476 qcom,remote-pid = <1>; 1477 mboxes = <&ap 1477 mboxes = <&apcs_glb 15>; 1478 }; 1478 }; 1479 }; 1479 }; 1480 1480 1481 adreno_gpu: gpu@5000000 { 1481 adreno_gpu: gpu@5000000 { 1482 compatible = "qcom,ad 1482 compatible = "qcom,adreno-540.1", "qcom,adreno"; 1483 reg = <0x05000000 0x4 1483 reg = <0x05000000 0x40000>; 1484 reg-names = "kgsl_3d0 1484 reg-names = "kgsl_3d0_reg_memory"; 1485 1485 1486 clocks = <&gcc GCC_GP 1486 clocks = <&gcc GCC_GPU_CFG_AHB_CLK>, 1487 <&gpucc RBBMT 1487 <&gpucc RBBMTIMER_CLK>, 1488 <&gcc GCC_BIM 1488 <&gcc GCC_BIMC_GFX_CLK>, 1489 <&gcc GCC_GPU 1489 <&gcc GCC_GPU_BIMC_GFX_CLK>, 1490 <&gpucc RBCPR 1490 <&gpucc RBCPR_CLK>, 1491 <&gpucc GFX3D 1491 <&gpucc GFX3D_CLK>; 1492 clock-names = "iface" 1492 clock-names = "iface", 1493 "rbbmtimer", 1493 "rbbmtimer", 1494 "mem", 1494 "mem", 1495 "mem_iface", 1495 "mem_iface", 1496 "rbcpr", 1496 "rbcpr", 1497 "core"; 1497 "core"; 1498 1498 1499 interrupts = <GIC_SPI 1499 interrupts = <GIC_SPI 300 IRQ_TYPE_LEVEL_HIGH>; 1500 iommus = <&adreno_smm 1500 iommus = <&adreno_smmu 0>; 1501 operating-points-v2 = 1501 operating-points-v2 = <&gpu_opp_table>; 1502 power-domains = <&rpm 1502 power-domains = <&rpmpd MSM8998_VDDMX>; 1503 status = "disabled"; 1503 status = "disabled"; 1504 1504 1505 gpu_opp_table: opp-ta 1505 gpu_opp_table: opp-table { 1506 compatible = 1506 compatible = "operating-points-v2"; 1507 opp-710000097 1507 opp-710000097 { 1508 opp-h 1508 opp-hz = /bits/ 64 <710000097>; 1509 opp-l 1509 opp-level = <RPM_SMD_LEVEL_TURBO>; 1510 opp-s 1510 opp-supported-hw = <0xff>; 1511 }; 1511 }; 1512 1512 1513 opp-670000048 1513 opp-670000048 { 1514 opp-h 1514 opp-hz = /bits/ 64 <670000048>; 1515 opp-l 1515 opp-level = <RPM_SMD_LEVEL_NOM_PLUS>; 1516 opp-s 1516 opp-supported-hw = <0xff>; 1517 }; 1517 }; 1518 1518 1519 opp-596000097 1519 opp-596000097 { 1520 opp-h 1520 opp-hz = /bits/ 64 <596000097>; 1521 opp-l 1521 opp-level = <RPM_SMD_LEVEL_NOM>; 1522 opp-s 1522 opp-supported-hw = <0xff>; 1523 }; 1523 }; 1524 1524 1525 opp-515000097 1525 opp-515000097 { 1526 opp-h 1526 opp-hz = /bits/ 64 <515000097>; 1527 opp-l 1527 opp-level = <RPM_SMD_LEVEL_SVS_PLUS>; 1528 opp-s 1528 opp-supported-hw = <0xff>; 1529 }; 1529 }; 1530 1530 1531 opp-414000000 1531 opp-414000000 { 1532 opp-h 1532 opp-hz = /bits/ 64 <414000000>; 1533 opp-l 1533 opp-level = <RPM_SMD_LEVEL_SVS>; 1534 opp-s 1534 opp-supported-hw = <0xff>; 1535 }; 1535 }; 1536 1536 1537 opp-342000000 1537 opp-342000000 { 1538 opp-h 1538 opp-hz = /bits/ 64 <342000000>; 1539 opp-l 1539 opp-level = <RPM_SMD_LEVEL_LOW_SVS>; 1540 opp-s 1540 opp-supported-hw = <0xff>; 1541 }; 1541 }; 1542 1542 1543 opp-257000000 1543 opp-257000000 { 1544 opp-h 1544 opp-hz = /bits/ 64 <257000000>; 1545 opp-l 1545 opp-level = <RPM_SMD_LEVEL_MIN_SVS>; 1546 opp-s 1546 opp-supported-hw = <0xff>; 1547 }; 1547 }; 1548 }; 1548 }; 1549 }; 1549 }; 1550 1550 1551 adreno_smmu: iommu@5040000 { 1551 adreno_smmu: iommu@5040000 { 1552 compatible = "qcom,ms 1552 compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 1553 reg = <0x05040000 0x1 1553 reg = <0x05040000 0x10000>; 1554 clocks = <&gcc GCC_GP 1554 clocks = <&gcc GCC_GPU_CFG_AHB_CLK>, 1555 <&gcc GCC_BI 1555 <&gcc GCC_BIMC_GFX_CLK>, 1556 <&gcc GCC_GP 1556 <&gcc GCC_GPU_BIMC_GFX_CLK>; 1557 clock-names = "iface" 1557 clock-names = "iface", "mem", "mem_iface"; 1558 1558 1559 #global-interrupts = 1559 #global-interrupts = <0>; 1560 #iommu-cells = <1>; 1560 #iommu-cells = <1>; 1561 interrupts = 1561 interrupts = 1562 <GIC_SPI 329 1562 <GIC_SPI 329 IRQ_TYPE_LEVEL_HIGH>, 1563 <GIC_SPI 330 1563 <GIC_SPI 330 IRQ_TYPE_LEVEL_HIGH>, 1564 <GIC_SPI 331 1564 <GIC_SPI 331 IRQ_TYPE_LEVEL_HIGH>; 1565 /* 1565 /* 1566 * GPU-GX GDSC's pare 1566 * GPU-GX GDSC's parent is GPU-CX. We need to bring up the 1567 * GPU-CX for SMMU bu 1567 * GPU-CX for SMMU but we need both of them up for Adreno. 1568 * Contemporarily, we 1568 * Contemporarily, we also need to manage the VDDMX rpmpd 1569 * domain in the Adre 1569 * domain in the Adreno driver. 1570 * Enable GPU CX/GX G 1570 * Enable GPU CX/GX GDSCs here so that we can manage the 1571 * SoC VDDMX RPM Powe 1571 * SoC VDDMX RPM Power Domain in the Adreno driver. 1572 */ 1572 */ 1573 power-domains = <&gpu 1573 power-domains = <&gpucc GPU_GX_GDSC>; 1574 }; 1574 }; 1575 1575 1576 gpucc: clock-controller@50650 1576 gpucc: clock-controller@5065000 { 1577 compatible = "qcom,ms 1577 compatible = "qcom,msm8998-gpucc"; 1578 #clock-cells = <1>; 1578 #clock-cells = <1>; 1579 #reset-cells = <1>; 1579 #reset-cells = <1>; 1580 #power-domain-cells = 1580 #power-domain-cells = <1>; 1581 reg = <0x05065000 0x9 1581 reg = <0x05065000 0x9000>; 1582 1582 1583 clocks = <&rpmcc RPM_ 1583 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 1584 <&gcc GCC_GP 1584 <&gcc GCC_GPU_GPLL0_CLK>; 1585 clock-names = "xo", 1585 clock-names = "xo", 1586 "gpll0" 1586 "gpll0"; 1587 }; 1587 }; 1588 1588 1589 lpass_q6_smmu: iommu@5100000 1589 lpass_q6_smmu: iommu@5100000 { 1590 compatible = "qcom,ms 1590 compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 1591 reg = <0x05100000 0x4 1591 reg = <0x05100000 0x40000>; 1592 clocks = <&gcc HLOS1_ 1592 clocks = <&gcc HLOS1_VOTE_LPASS_ADSP_SMMU_CLK>; 1593 clock-names = "bus"; 1593 clock-names = "bus"; 1594 1594 1595 #global-interrupts = 1595 #global-interrupts = <0>; 1596 #iommu-cells = <1>; 1596 #iommu-cells = <1>; 1597 interrupts = 1597 interrupts = 1598 <GIC_SPI 226 1598 <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>, 1599 <GIC_SPI 393 1599 <GIC_SPI 393 IRQ_TYPE_LEVEL_HIGH>, 1600 <GIC_SPI 394 1600 <GIC_SPI 394 IRQ_TYPE_LEVEL_HIGH>, 1601 <GIC_SPI 395 1601 <GIC_SPI 395 IRQ_TYPE_LEVEL_HIGH>, 1602 <GIC_SPI 396 1602 <GIC_SPI 396 IRQ_TYPE_LEVEL_HIGH>, 1603 <GIC_SPI 397 1603 <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>, 1604 <GIC_SPI 398 1604 <GIC_SPI 398 IRQ_TYPE_LEVEL_HIGH>, 1605 <GIC_SPI 399 1605 <GIC_SPI 399 IRQ_TYPE_LEVEL_HIGH>, 1606 <GIC_SPI 400 1606 <GIC_SPI 400 IRQ_TYPE_LEVEL_HIGH>, 1607 <GIC_SPI 401 1607 <GIC_SPI 401 IRQ_TYPE_LEVEL_HIGH>, 1608 <GIC_SPI 402 1608 <GIC_SPI 402 IRQ_TYPE_LEVEL_HIGH>, 1609 <GIC_SPI 403 1609 <GIC_SPI 403 IRQ_TYPE_LEVEL_HIGH>, 1610 <GIC_SPI 137 1610 <GIC_SPI 137 IRQ_TYPE_LEVEL_HIGH>; 1611 1611 1612 power-domains = <&gcc 1612 power-domains = <&gcc LPASS_ADSP_GDSC>; 1613 status = "disabled"; 1613 status = "disabled"; 1614 }; 1614 }; 1615 1615 1616 remoteproc_slpi: remoteproc@5 1616 remoteproc_slpi: remoteproc@5800000 { 1617 compatible = "qcom,ms 1617 compatible = "qcom,msm8998-slpi-pas"; 1618 reg = <0x05800000 0x4 1618 reg = <0x05800000 0x4040>; 1619 1619 1620 interrupts-extended = 1620 interrupts-extended = <&intc GIC_SPI 390 IRQ_TYPE_EDGE_RISING>, 1621 1621 <&slpi_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 1622 1622 <&slpi_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 1623 1623 <&slpi_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 1624 1624 <&slpi_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 1625 interrupt-names = "wd 1625 interrupt-names = "wdog", "fatal", "ready", 1626 "ha 1626 "handover", "stop-ack"; 1627 1627 1628 px-supply = <&vreg_lv 1628 px-supply = <&vreg_lvs2a_1p8>; 1629 1629 1630 clocks = <&rpmcc RPM_ 1630 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 1631 clock-names = "xo"; 1631 clock-names = "xo"; 1632 1632 1633 memory-region = <&slp 1633 memory-region = <&slpi_mem>; 1634 1634 1635 qcom,smem-states = <& 1635 qcom,smem-states = <&slpi_smp2p_out 0>; 1636 qcom,smem-state-names 1636 qcom,smem-state-names = "stop"; 1637 1637 1638 power-domains = <&rpm 1638 power-domains = <&rpmpd MSM8998_SSCCX>; 1639 power-domain-names = 1639 power-domain-names = "ssc_cx"; 1640 1640 1641 status = "disabled"; 1641 status = "disabled"; 1642 1642 1643 glink-edge { 1643 glink-edge { 1644 interrupts = 1644 interrupts = <GIC_SPI 179 IRQ_TYPE_EDGE_RISING>; 1645 label = "dsps 1645 label = "dsps"; 1646 qcom,remote-p 1646 qcom,remote-pid = <3>; 1647 mboxes = <&ap 1647 mboxes = <&apcs_glb 27>; 1648 }; 1648 }; 1649 }; 1649 }; 1650 1650 1651 stm: stm@6002000 { 1651 stm: stm@6002000 { 1652 compatible = "arm,cor 1652 compatible = "arm,coresight-stm", "arm,primecell"; 1653 reg = <0x06002000 0x1 1653 reg = <0x06002000 0x1000>, 1654 <0x16280000 0x1 1654 <0x16280000 0x180000>; 1655 reg-names = "stm-base 1655 reg-names = "stm-base", "stm-stimulus-base"; 1656 status = "disabled"; 1656 status = "disabled"; 1657 1657 1658 clocks = <&rpmcc RPM_ 1658 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1659 clock-names = "apb_pc 1659 clock-names = "apb_pclk", "atclk"; 1660 1660 1661 out-ports { 1661 out-ports { 1662 port { 1662 port { 1663 stm_o 1663 stm_out: endpoint { 1664 1664 remote-endpoint = <&funnel0_in7>; 1665 }; 1665 }; 1666 }; 1666 }; 1667 }; 1667 }; 1668 }; 1668 }; 1669 1669 1670 funnel1: funnel@6041000 { 1670 funnel1: funnel@6041000 { 1671 compatible = "arm,cor 1671 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1672 reg = <0x06041000 0x1 1672 reg = <0x06041000 0x1000>; 1673 status = "disabled"; 1673 status = "disabled"; 1674 1674 1675 clocks = <&rpmcc RPM_ 1675 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1676 clock-names = "apb_pc 1676 clock-names = "apb_pclk", "atclk"; 1677 1677 1678 out-ports { 1678 out-ports { 1679 port { 1679 port { 1680 funne 1680 funnel0_out: endpoint { 1681 1681 remote-endpoint = 1682 1682 <&merge_funnel_in0>; 1683 }; 1683 }; 1684 }; 1684 }; 1685 }; 1685 }; 1686 1686 1687 in-ports { 1687 in-ports { 1688 #address-cell 1688 #address-cells = <1>; 1689 #size-cells = 1689 #size-cells = <0>; 1690 1690 1691 port@7 { 1691 port@7 { 1692 reg = 1692 reg = <7>; 1693 funne 1693 funnel0_in7: endpoint { 1694 1694 remote-endpoint = <&stm_out>; 1695 }; 1695 }; 1696 }; 1696 }; 1697 }; 1697 }; 1698 }; 1698 }; 1699 1699 1700 funnel2: funnel@6042000 { 1700 funnel2: funnel@6042000 { 1701 compatible = "arm,cor 1701 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1702 reg = <0x06042000 0x1 1702 reg = <0x06042000 0x1000>; 1703 status = "disabled"; 1703 status = "disabled"; 1704 1704 1705 clocks = <&rpmcc RPM_ 1705 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1706 clock-names = "apb_pc 1706 clock-names = "apb_pclk", "atclk"; 1707 1707 1708 out-ports { 1708 out-ports { 1709 port { 1709 port { 1710 funne 1710 funnel1_out: endpoint { 1711 1711 remote-endpoint = 1712 1712 <&merge_funnel_in1>; 1713 }; 1713 }; 1714 }; 1714 }; 1715 }; 1715 }; 1716 1716 1717 in-ports { 1717 in-ports { 1718 #address-cell 1718 #address-cells = <1>; 1719 #size-cells = 1719 #size-cells = <0>; 1720 1720 1721 port@6 { 1721 port@6 { 1722 reg = 1722 reg = <6>; 1723 funne 1723 funnel1_in6: endpoint { 1724 1724 remote-endpoint = 1725 1725 <&apss_merge_funnel_out>; 1726 }; 1726 }; 1727 }; 1727 }; 1728 }; 1728 }; 1729 }; 1729 }; 1730 1730 1731 funnel3: funnel@6045000 { 1731 funnel3: funnel@6045000 { 1732 compatible = "arm,cor 1732 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 1733 reg = <0x06045000 0x1 1733 reg = <0x06045000 0x1000>; 1734 status = "disabled"; 1734 status = "disabled"; 1735 1735 1736 clocks = <&rpmcc RPM_ 1736 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1737 clock-names = "apb_pc 1737 clock-names = "apb_pclk", "atclk"; 1738 1738 1739 out-ports { 1739 out-ports { 1740 port { 1740 port { 1741 merge 1741 merge_funnel_out: endpoint { 1742 1742 remote-endpoint = 1743 1743 <&etf_in>; 1744 }; 1744 }; 1745 }; 1745 }; 1746 }; 1746 }; 1747 1747 1748 in-ports { 1748 in-ports { 1749 #address-cell 1749 #address-cells = <1>; 1750 #size-cells = 1750 #size-cells = <0>; 1751 1751 1752 port@0 { 1752 port@0 { 1753 reg = 1753 reg = <0>; 1754 merge 1754 merge_funnel_in0: endpoint { 1755 1755 remote-endpoint = 1756 1756 <&funnel0_out>; 1757 }; 1757 }; 1758 }; 1758 }; 1759 1759 1760 port@1 { 1760 port@1 { 1761 reg = 1761 reg = <1>; 1762 merge 1762 merge_funnel_in1: endpoint { 1763 1763 remote-endpoint = 1764 1764 <&funnel1_out>; 1765 }; 1765 }; 1766 }; 1766 }; 1767 }; 1767 }; 1768 }; 1768 }; 1769 1769 1770 replicator1: replicator@60460 1770 replicator1: replicator@6046000 { 1771 compatible = "arm,cor 1771 compatible = "arm,coresight-dynamic-replicator", "arm,primecell"; 1772 reg = <0x06046000 0x1 1772 reg = <0x06046000 0x1000>; 1773 status = "disabled"; 1773 status = "disabled"; 1774 1774 1775 clocks = <&rpmcc RPM_ 1775 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1776 clock-names = "apb_pc 1776 clock-names = "apb_pclk", "atclk"; 1777 1777 1778 out-ports { 1778 out-ports { 1779 port { 1779 port { 1780 repli 1780 replicator_out: endpoint { 1781 1781 remote-endpoint = <&etr_in>; 1782 }; 1782 }; 1783 }; 1783 }; 1784 }; 1784 }; 1785 1785 1786 in-ports { 1786 in-ports { 1787 port { 1787 port { 1788 repli 1788 replicator_in: endpoint { 1789 1789 remote-endpoint = <&etf_out>; 1790 }; 1790 }; 1791 }; 1791 }; 1792 }; 1792 }; 1793 }; 1793 }; 1794 1794 1795 etf: etf@6047000 { 1795 etf: etf@6047000 { 1796 compatible = "arm,cor 1796 compatible = "arm,coresight-tmc", "arm,primecell"; 1797 reg = <0x06047000 0x1 1797 reg = <0x06047000 0x1000>; 1798 status = "disabled"; 1798 status = "disabled"; 1799 1799 1800 clocks = <&rpmcc RPM_ 1800 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1801 clock-names = "apb_pc 1801 clock-names = "apb_pclk", "atclk"; 1802 1802 1803 out-ports { 1803 out-ports { 1804 port { 1804 port { 1805 etf_o 1805 etf_out: endpoint { 1806 1806 remote-endpoint = 1807 1807 <&replicator_in>; 1808 }; 1808 }; 1809 }; 1809 }; 1810 }; 1810 }; 1811 1811 1812 in-ports { 1812 in-ports { 1813 port { 1813 port { 1814 etf_i 1814 etf_in: endpoint { 1815 1815 remote-endpoint = 1816 1816 <&merge_funnel_out>; 1817 }; 1817 }; 1818 }; 1818 }; 1819 }; 1819 }; 1820 }; 1820 }; 1821 1821 1822 etr: etr@6048000 { 1822 etr: etr@6048000 { 1823 compatible = "arm,cor 1823 compatible = "arm,coresight-tmc", "arm,primecell"; 1824 reg = <0x06048000 0x1 1824 reg = <0x06048000 0x1000>; 1825 status = "disabled"; 1825 status = "disabled"; 1826 1826 1827 clocks = <&rpmcc RPM_ 1827 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1828 clock-names = "apb_pc 1828 clock-names = "apb_pclk", "atclk"; 1829 arm,scatter-gather; 1829 arm,scatter-gather; 1830 1830 1831 in-ports { 1831 in-ports { 1832 port { 1832 port { 1833 etr_i 1833 etr_in: endpoint { 1834 1834 remote-endpoint = 1835 1835 <&replicator_out>; 1836 }; 1836 }; 1837 }; 1837 }; 1838 }; 1838 }; 1839 }; 1839 }; 1840 1840 1841 etm1: etm@7840000 { 1841 etm1: etm@7840000 { 1842 compatible = "arm,cor 1842 compatible = "arm,coresight-etm4x", "arm,primecell"; 1843 reg = <0x07840000 0x1 1843 reg = <0x07840000 0x1000>; 1844 status = "disabled"; 1844 status = "disabled"; 1845 1845 1846 clocks = <&rpmcc RPM_ 1846 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1847 clock-names = "apb_pc 1847 clock-names = "apb_pclk", "atclk"; 1848 1848 1849 cpu = <&CPU0>; 1849 cpu = <&CPU0>; 1850 1850 1851 out-ports { 1851 out-ports { 1852 port { 1852 port { 1853 etm0_ 1853 etm0_out: endpoint { 1854 1854 remote-endpoint = 1855 1855 <&apss_funnel_in0>; 1856 }; 1856 }; 1857 }; 1857 }; 1858 }; 1858 }; 1859 }; 1859 }; 1860 1860 1861 etm2: etm@7940000 { 1861 etm2: etm@7940000 { 1862 compatible = "arm,cor 1862 compatible = "arm,coresight-etm4x", "arm,primecell"; 1863 reg = <0x07940000 0x1 1863 reg = <0x07940000 0x1000>; 1864 status = "disabled"; 1864 status = "disabled"; 1865 1865 1866 clocks = <&rpmcc RPM_ 1866 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1867 clock-names = "apb_pc 1867 clock-names = "apb_pclk", "atclk"; 1868 1868 1869 cpu = <&CPU1>; 1869 cpu = <&CPU1>; 1870 1870 1871 out-ports { 1871 out-ports { 1872 port { 1872 port { 1873 etm1_ 1873 etm1_out: endpoint { 1874 1874 remote-endpoint = 1875 1875 <&apss_funnel_in1>; 1876 }; 1876 }; 1877 }; 1877 }; 1878 }; 1878 }; 1879 }; 1879 }; 1880 1880 1881 etm3: etm@7a40000 { 1881 etm3: etm@7a40000 { 1882 compatible = "arm,cor 1882 compatible = "arm,coresight-etm4x", "arm,primecell"; 1883 reg = <0x07a40000 0x1 1883 reg = <0x07a40000 0x1000>; 1884 status = "disabled"; 1884 status = "disabled"; 1885 1885 1886 clocks = <&rpmcc RPM_ 1886 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1887 clock-names = "apb_pc 1887 clock-names = "apb_pclk", "atclk"; 1888 1888 1889 cpu = <&CPU2>; 1889 cpu = <&CPU2>; 1890 1890 1891 out-ports { 1891 out-ports { 1892 port { 1892 port { 1893 etm2_ 1893 etm2_out: endpoint { 1894 1894 remote-endpoint = 1895 1895 <&apss_funnel_in2>; 1896 }; 1896 }; 1897 }; 1897 }; 1898 }; 1898 }; 1899 }; 1899 }; 1900 1900 1901 etm4: etm@7b40000 { 1901 etm4: etm@7b40000 { 1902 compatible = "arm,cor 1902 compatible = "arm,coresight-etm4x", "arm,primecell"; 1903 reg = <0x07b40000 0x1 1903 reg = <0x07b40000 0x1000>; 1904 status = "disabled"; 1904 status = "disabled"; 1905 1905 1906 clocks = <&rpmcc RPM_ 1906 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1907 clock-names = "apb_pc 1907 clock-names = "apb_pclk", "atclk"; 1908 1908 1909 cpu = <&CPU3>; 1909 cpu = <&CPU3>; 1910 1910 1911 out-ports { 1911 out-ports { 1912 port { 1912 port { 1913 etm3_ 1913 etm3_out: endpoint { 1914 1914 remote-endpoint = 1915 1915 <&apss_funnel_in3>; 1916 }; 1916 }; 1917 }; 1917 }; 1918 }; 1918 }; 1919 }; 1919 }; 1920 1920 1921 funnel4: funnel@7b60000 { /* 1921 funnel4: funnel@7b60000 { /* APSS Funnel */ 1922 compatible = "arm,cor 1922 compatible = "arm,coresight-etm4x", "arm,primecell"; 1923 reg = <0x07b60000 0x1 1923 reg = <0x07b60000 0x1000>; 1924 status = "disabled"; 1924 status = "disabled"; 1925 1925 1926 clocks = <&rpmcc RPM_ 1926 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 1927 clock-names = "apb_pc 1927 clock-names = "apb_pclk", "atclk"; 1928 1928 1929 out-ports { 1929 out-ports { 1930 port { 1930 port { 1931 apss_ 1931 apss_funnel_out: endpoint { 1932 1932 remote-endpoint = 1933 1933 <&apss_merge_funnel_in>; 1934 }; 1934 }; 1935 }; 1935 }; 1936 }; 1936 }; 1937 1937 1938 in-ports { 1938 in-ports { 1939 #address-cell 1939 #address-cells = <1>; 1940 #size-cells = 1940 #size-cells = <0>; 1941 1941 1942 port@0 { 1942 port@0 { 1943 reg = 1943 reg = <0>; 1944 apss_ 1944 apss_funnel_in0: endpoint { 1945 1945 remote-endpoint = 1946 1946 <&etm0_out>; 1947 }; 1947 }; 1948 }; 1948 }; 1949 1949 1950 port@1 { 1950 port@1 { 1951 reg = 1951 reg = <1>; 1952 apss_ 1952 apss_funnel_in1: endpoint { 1953 1953 remote-endpoint = 1954 1954 <&etm1_out>; 1955 }; 1955 }; 1956 }; 1956 }; 1957 1957 1958 port@2 { 1958 port@2 { 1959 reg = 1959 reg = <2>; 1960 apss_ 1960 apss_funnel_in2: endpoint { 1961 1961 remote-endpoint = 1962 1962 <&etm2_out>; 1963 }; 1963 }; 1964 }; 1964 }; 1965 1965 1966 port@3 { 1966 port@3 { 1967 reg = 1967 reg = <3>; 1968 apss_ 1968 apss_funnel_in3: endpoint { 1969 1969 remote-endpoint = 1970 1970 <&etm3_out>; 1971 }; 1971 }; 1972 }; 1972 }; 1973 1973 1974 port@4 { 1974 port@4 { 1975 reg = 1975 reg = <4>; 1976 apss_ 1976 apss_funnel_in4: endpoint { 1977 1977 remote-endpoint = 1978 1978 <&etm4_out>; 1979 }; 1979 }; 1980 }; 1980 }; 1981 1981 1982 port@5 { 1982 port@5 { 1983 reg = 1983 reg = <5>; 1984 apss_ 1984 apss_funnel_in5: endpoint { 1985 1985 remote-endpoint = 1986 1986 <&etm5_out>; 1987 }; 1987 }; 1988 }; 1988 }; 1989 1989 1990 port@6 { 1990 port@6 { 1991 reg = 1991 reg = <6>; 1992 apss_ 1992 apss_funnel_in6: endpoint { 1993 1993 remote-endpoint = 1994 1994 <&etm6_out>; 1995 }; 1995 }; 1996 }; 1996 }; 1997 1997 1998 port@7 { 1998 port@7 { 1999 reg = 1999 reg = <7>; 2000 apss_ 2000 apss_funnel_in7: endpoint { 2001 2001 remote-endpoint = 2002 2002 <&etm7_out>; 2003 }; 2003 }; 2004 }; 2004 }; 2005 }; 2005 }; 2006 }; 2006 }; 2007 2007 2008 funnel5: funnel@7b70000 { 2008 funnel5: funnel@7b70000 { 2009 compatible = "arm,cor 2009 compatible = "arm,coresight-dynamic-funnel", "arm,primecell"; 2010 reg = <0x07b70000 0x1 2010 reg = <0x07b70000 0x1000>; 2011 status = "disabled"; 2011 status = "disabled"; 2012 2012 2013 clocks = <&rpmcc RPM_ 2013 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 2014 clock-names = "apb_pc 2014 clock-names = "apb_pclk", "atclk"; 2015 2015 2016 out-ports { 2016 out-ports { 2017 port { 2017 port { 2018 apss_ 2018 apss_merge_funnel_out: endpoint { 2019 2019 remote-endpoint = 2020 2020 <&funnel1_in6>; 2021 }; 2021 }; 2022 }; 2022 }; 2023 }; 2023 }; 2024 2024 2025 in-ports { 2025 in-ports { 2026 port { 2026 port { 2027 apss_ 2027 apss_merge_funnel_in: endpoint { 2028 2028 remote-endpoint = 2029 2029 <&apss_funnel_out>; 2030 }; 2030 }; 2031 }; 2031 }; 2032 }; 2032 }; 2033 }; 2033 }; 2034 2034 2035 etm5: etm@7c40000 { 2035 etm5: etm@7c40000 { 2036 compatible = "arm,cor 2036 compatible = "arm,coresight-etm4x", "arm,primecell"; 2037 reg = <0x07c40000 0x1 2037 reg = <0x07c40000 0x1000>; 2038 status = "disabled"; 2038 status = "disabled"; 2039 2039 2040 clocks = <&rpmcc RPM_ 2040 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 2041 clock-names = "apb_pc 2041 clock-names = "apb_pclk", "atclk"; 2042 2042 2043 cpu = <&CPU4>; 2043 cpu = <&CPU4>; 2044 2044 2045 out-ports { 2045 out-ports { 2046 port { 2046 port { 2047 etm4_ 2047 etm4_out: endpoint { 2048 2048 remote-endpoint = <&apss_funnel_in4>; 2049 }; 2049 }; 2050 }; 2050 }; 2051 }; 2051 }; 2052 }; 2052 }; 2053 2053 2054 etm6: etm@7d40000 { 2054 etm6: etm@7d40000 { 2055 compatible = "arm,cor 2055 compatible = "arm,coresight-etm4x", "arm,primecell"; 2056 reg = <0x07d40000 0x1 2056 reg = <0x07d40000 0x1000>; 2057 status = "disabled"; 2057 status = "disabled"; 2058 2058 2059 clocks = <&rpmcc RPM_ 2059 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 2060 clock-names = "apb_pc 2060 clock-names = "apb_pclk", "atclk"; 2061 2061 2062 cpu = <&CPU5>; 2062 cpu = <&CPU5>; 2063 2063 2064 out-ports { 2064 out-ports { 2065 port { 2065 port { 2066 etm5_ 2066 etm5_out: endpoint { 2067 2067 remote-endpoint = <&apss_funnel_in5>; 2068 }; 2068 }; 2069 }; 2069 }; 2070 }; 2070 }; 2071 }; 2071 }; 2072 2072 2073 etm7: etm@7e40000 { 2073 etm7: etm@7e40000 { 2074 compatible = "arm,cor 2074 compatible = "arm,coresight-etm4x", "arm,primecell"; 2075 reg = <0x07e40000 0x1 2075 reg = <0x07e40000 0x1000>; 2076 status = "disabled"; 2076 status = "disabled"; 2077 2077 2078 clocks = <&rpmcc RPM_ 2078 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 2079 clock-names = "apb_pc 2079 clock-names = "apb_pclk", "atclk"; 2080 2080 2081 cpu = <&CPU6>; 2081 cpu = <&CPU6>; 2082 2082 2083 out-ports { 2083 out-ports { 2084 port { 2084 port { 2085 etm6_ 2085 etm6_out: endpoint { 2086 2086 remote-endpoint = <&apss_funnel_in6>; 2087 }; 2087 }; 2088 }; 2088 }; 2089 }; 2089 }; 2090 }; 2090 }; 2091 2091 2092 etm8: etm@7f40000 { 2092 etm8: etm@7f40000 { 2093 compatible = "arm,cor 2093 compatible = "arm,coresight-etm4x", "arm,primecell"; 2094 reg = <0x07f40000 0x1 2094 reg = <0x07f40000 0x1000>; 2095 status = "disabled"; 2095 status = "disabled"; 2096 2096 2097 clocks = <&rpmcc RPM_ 2097 clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; 2098 clock-names = "apb_pc 2098 clock-names = "apb_pclk", "atclk"; 2099 2099 2100 cpu = <&CPU7>; 2100 cpu = <&CPU7>; 2101 2101 2102 out-ports { 2102 out-ports { 2103 port { 2103 port { 2104 etm7_ 2104 etm7_out: endpoint { 2105 2105 remote-endpoint = <&apss_funnel_in7>; 2106 }; 2106 }; 2107 }; 2107 }; 2108 }; 2108 }; 2109 }; 2109 }; 2110 2110 2111 sram@290000 { 2111 sram@290000 { 2112 compatible = "qcom,rp 2112 compatible = "qcom,rpm-stats"; 2113 reg = <0x00290000 0x1 2113 reg = <0x00290000 0x10000>; 2114 }; 2114 }; 2115 2115 2116 spmi_bus: spmi@800f000 { 2116 spmi_bus: spmi@800f000 { 2117 compatible = "qcom,sp 2117 compatible = "qcom,spmi-pmic-arb"; 2118 reg = <0x0800f000 0x1 2118 reg = <0x0800f000 0x1000>, 2119 <0x08400000 0x1 2119 <0x08400000 0x1000000>, 2120 <0x09400000 0x1 2120 <0x09400000 0x1000000>, 2121 <0x0a400000 0x2 2121 <0x0a400000 0x220000>, 2122 <0x0800a000 0x3 2122 <0x0800a000 0x3000>; 2123 reg-names = "core", " 2123 reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; 2124 interrupt-names = "pe 2124 interrupt-names = "periph_irq"; 2125 interrupts = <GIC_SPI 2125 interrupts = <GIC_SPI 326 IRQ_TYPE_LEVEL_HIGH>; 2126 qcom,ee = <0>; 2126 qcom,ee = <0>; 2127 qcom,channel = <0>; 2127 qcom,channel = <0>; 2128 #address-cells = <2>; 2128 #address-cells = <2>; 2129 #size-cells = <0>; 2129 #size-cells = <0>; 2130 interrupt-controller; 2130 interrupt-controller; 2131 #interrupt-cells = <4 2131 #interrupt-cells = <4>; 2132 }; 2132 }; 2133 2133 2134 usb3: usb@a8f8800 { 2134 usb3: usb@a8f8800 { 2135 compatible = "qcom,ms 2135 compatible = "qcom,msm8998-dwc3", "qcom,dwc3"; 2136 reg = <0x0a8f8800 0x4 2136 reg = <0x0a8f8800 0x400>; 2137 status = "disabled"; 2137 status = "disabled"; 2138 #address-cells = <1>; 2138 #address-cells = <1>; 2139 #size-cells = <1>; 2139 #size-cells = <1>; 2140 ranges; 2140 ranges; 2141 2141 2142 clocks = <&gcc GCC_CF 2142 clocks = <&gcc GCC_CFG_NOC_USB3_AXI_CLK>, 2143 <&gcc GCC_US 2143 <&gcc GCC_USB30_MASTER_CLK>, 2144 <&gcc GCC_AG 2144 <&gcc GCC_AGGRE1_USB3_AXI_CLK>, 2145 <&gcc GCC_US 2145 <&gcc GCC_USB30_SLEEP_CLK>, 2146 <&gcc GCC_US 2146 <&gcc GCC_USB30_MOCK_UTMI_CLK>; 2147 clock-names = "cfg_no 2147 clock-names = "cfg_noc", 2148 "core", 2148 "core", 2149 "iface" 2149 "iface", 2150 "sleep" 2150 "sleep", 2151 "mock_u 2151 "mock_utmi"; 2152 2152 2153 assigned-clocks = <&g 2153 assigned-clocks = <&gcc GCC_USB30_MOCK_UTMI_CLK>, 2154 <&g 2154 <&gcc GCC_USB30_MASTER_CLK>; 2155 assigned-clock-rates 2155 assigned-clock-rates = <19200000>, <120000000>; 2156 2156 2157 interrupts = <GIC_SPI 2157 interrupts = <GIC_SPI 180 IRQ_TYPE_LEVEL_HIGH>, 2158 <GIC_SPI 2158 <GIC_SPI 347 IRQ_TYPE_LEVEL_HIGH>, 2159 <GIC_SPI 2159 <GIC_SPI 243 IRQ_TYPE_LEVEL_HIGH>; 2160 interrupt-names = "pw 2160 interrupt-names = "pwr_event", 2161 "qu 2161 "qusb2_phy", 2162 "ss 2162 "ss_phy_irq"; 2163 2163 2164 power-domains = <&gcc 2164 power-domains = <&gcc USB_30_GDSC>; 2165 2165 2166 resets = <&gcc GCC_US 2166 resets = <&gcc GCC_USB_30_BCR>; 2167 2167 2168 usb3_dwc3: usb@a80000 2168 usb3_dwc3: usb@a800000 { 2169 compatible = 2169 compatible = "snps,dwc3"; 2170 reg = <0x0a80 2170 reg = <0x0a800000 0xcd00>; 2171 interrupts = 2171 interrupts = <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>; 2172 snps,dis_u2_s 2172 snps,dis_u2_susphy_quirk; 2173 snps,dis_enbl 2173 snps,dis_enblslpm_quirk; 2174 snps,parkmode 2174 snps,parkmode-disable-ss-quirk; 2175 phys = <&qusb 2175 phys = <&qusb2phy>, <&usb3phy>; 2176 phy-names = " 2176 phy-names = "usb2-phy", "usb3-phy"; 2177 snps,has-lpm- 2177 snps,has-lpm-erratum; 2178 snps,hird-thr 2178 snps,hird-threshold = /bits/ 8 <0x10>; 2179 }; 2179 }; 2180 }; 2180 }; 2181 2181 2182 usb3phy: phy@c010000 { 2182 usb3phy: phy@c010000 { 2183 compatible = "qcom,ms 2183 compatible = "qcom,msm8998-qmp-usb3-phy"; 2184 reg = <0x0c010000 0x1 2184 reg = <0x0c010000 0x1000>; 2185 2185 2186 clocks = <&gcc GCC_US 2186 clocks = <&gcc GCC_USB3_PHY_AUX_CLK>, 2187 <&gcc GCC_US 2187 <&gcc GCC_USB3_CLKREF_CLK>, 2188 <&gcc GCC_US 2188 <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 2189 <&gcc GCC_US 2189 <&gcc GCC_USB3_PHY_PIPE_CLK>; 2190 clock-names = "aux", 2190 clock-names = "aux", 2191 "ref", 2191 "ref", 2192 "cfg_ah 2192 "cfg_ahb", 2193 "pipe"; 2193 "pipe"; 2194 clock-output-names = 2194 clock-output-names = "usb3_phy_pipe_clk_src"; 2195 #clock-cells = <0>; 2195 #clock-cells = <0>; 2196 #phy-cells = <0>; 2196 #phy-cells = <0>; 2197 2197 2198 resets = <&gcc GCC_US 2198 resets = <&gcc GCC_USB3_PHY_BCR>, 2199 <&gcc GCC_US 2199 <&gcc GCC_USB3PHY_PHY_BCR>; 2200 reset-names = "phy", 2200 reset-names = "phy", 2201 "phy_ph 2201 "phy_phy"; 2202 2202 2203 qcom,tcsr-reg = <&tcs 2203 qcom,tcsr-reg = <&tcsr_regs_2 0xb244>; 2204 2204 2205 status = "disabled"; 2205 status = "disabled"; 2206 }; 2206 }; 2207 2207 2208 qusb2phy: phy@c012000 { 2208 qusb2phy: phy@c012000 { 2209 compatible = "qcom,ms 2209 compatible = "qcom,msm8998-qusb2-phy"; 2210 reg = <0x0c012000 0x2 2210 reg = <0x0c012000 0x2a8>; 2211 status = "disabled"; 2211 status = "disabled"; 2212 #phy-cells = <0>; 2212 #phy-cells = <0>; 2213 2213 2214 clocks = <&gcc GCC_US 2214 clocks = <&gcc GCC_USB_PHY_CFG_AHB2PHY_CLK>, 2215 <&gcc GCC_RX 2215 <&gcc GCC_RX1_USB2_CLKREF_CLK>; 2216 clock-names = "cfg_ah 2216 clock-names = "cfg_ahb", "ref"; 2217 2217 2218 resets = <&gcc GCC_QU 2218 resets = <&gcc GCC_QUSB2PHY_PRIM_BCR>; 2219 2219 2220 nvmem-cells = <&qusb2 2220 nvmem-cells = <&qusb2_hstx_trim>; 2221 }; 2221 }; 2222 2222 2223 sdhc2: mmc@c0a4900 { 2223 sdhc2: mmc@c0a4900 { 2224 compatible = "qcom,ms 2224 compatible = "qcom,msm8998-sdhci", "qcom,sdhci-msm-v4"; 2225 reg = <0x0c0a4900 0x3 2225 reg = <0x0c0a4900 0x314>, <0x0c0a4000 0x800>; 2226 reg-names = "hc", "co 2226 reg-names = "hc", "core"; 2227 2227 2228 interrupts = <GIC_SPI 2228 interrupts = <GIC_SPI 125 IRQ_TYPE_LEVEL_HIGH>, 2229 <GIC_SPI 2229 <GIC_SPI 221 IRQ_TYPE_LEVEL_HIGH>; 2230 interrupt-names = "hc 2230 interrupt-names = "hc_irq", "pwr_irq"; 2231 2231 2232 clock-names = "iface" 2232 clock-names = "iface", "core", "xo"; 2233 clocks = <&gcc GCC_SD 2233 clocks = <&gcc GCC_SDCC2_AHB_CLK>, 2234 <&gcc GCC_SD 2234 <&gcc GCC_SDCC2_APPS_CLK>, 2235 <&rpmcc RPM_ 2235 <&rpmcc RPM_SMD_XO_CLK_SRC>; 2236 bus-width = <4>; 2236 bus-width = <4>; 2237 status = "disabled"; 2237 status = "disabled"; 2238 }; 2238 }; 2239 2239 2240 blsp1_dma: dma-controller@c14 2240 blsp1_dma: dma-controller@c144000 { 2241 compatible = "qcom,ba 2241 compatible = "qcom,bam-v1.7.0"; 2242 reg = <0x0c144000 0x2 2242 reg = <0x0c144000 0x25000>; 2243 interrupts = <GIC_SPI 2243 interrupts = <GIC_SPI 238 IRQ_TYPE_LEVEL_HIGH>; 2244 clocks = <&gcc GCC_BL 2244 clocks = <&gcc GCC_BLSP1_AHB_CLK>; 2245 clock-names = "bam_cl 2245 clock-names = "bam_clk"; 2246 #dma-cells = <1>; 2246 #dma-cells = <1>; 2247 qcom,ee = <0>; 2247 qcom,ee = <0>; 2248 qcom,controlled-remot 2248 qcom,controlled-remotely; 2249 num-channels = <18>; 2249 num-channels = <18>; 2250 qcom,num-ees = <4>; 2250 qcom,num-ees = <4>; 2251 }; 2251 }; 2252 2252 2253 blsp1_uart3: serial@c171000 { 2253 blsp1_uart3: serial@c171000 { 2254 compatible = "qcom,ms 2254 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 2255 reg = <0x0c171000 0x1 2255 reg = <0x0c171000 0x1000>; 2256 interrupts = <GIC_SPI 2256 interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 2257 clocks = <&gcc GCC_BL 2257 clocks = <&gcc GCC_BLSP1_UART3_APPS_CLK>, 2258 <&gcc GCC_BL 2258 <&gcc GCC_BLSP1_AHB_CLK>; 2259 clock-names = "core", 2259 clock-names = "core", "iface"; 2260 dmas = <&blsp1_dma 4> 2260 dmas = <&blsp1_dma 4>, <&blsp1_dma 5>; 2261 dma-names = "tx", "rx 2261 dma-names = "tx", "rx"; 2262 pinctrl-names = "defa 2262 pinctrl-names = "default"; 2263 pinctrl-0 = <&blsp1_u 2263 pinctrl-0 = <&blsp1_uart3_on>; 2264 status = "disabled"; 2264 status = "disabled"; 2265 }; 2265 }; 2266 2266 2267 blsp1_i2c1: i2c@c175000 { 2267 blsp1_i2c1: i2c@c175000 { 2268 compatible = "qcom,i2 2268 compatible = "qcom,i2c-qup-v2.2.1"; 2269 reg = <0x0c175000 0x6 2269 reg = <0x0c175000 0x600>; 2270 interrupts = <GIC_SPI 2270 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 2271 2271 2272 clocks = <&gcc GCC_BL 2272 clocks = <&gcc GCC_BLSP1_QUP1_I2C_APPS_CLK>, 2273 <&gcc GCC_BL 2273 <&gcc GCC_BLSP1_AHB_CLK>; 2274 clock-names = "core", 2274 clock-names = "core", "iface"; 2275 dmas = <&blsp1_dma 6> 2275 dmas = <&blsp1_dma 6>, <&blsp1_dma 7>; 2276 dma-names = "tx", "rx 2276 dma-names = "tx", "rx"; 2277 pinctrl-names = "defa 2277 pinctrl-names = "default", "sleep"; 2278 pinctrl-0 = <&blsp1_i 2278 pinctrl-0 = <&blsp1_i2c1_default>; 2279 pinctrl-1 = <&blsp1_i 2279 pinctrl-1 = <&blsp1_i2c1_sleep>; 2280 clock-frequency = <40 2280 clock-frequency = <400000>; 2281 2281 2282 status = "disabled"; 2282 status = "disabled"; 2283 #address-cells = <1>; 2283 #address-cells = <1>; 2284 #size-cells = <0>; 2284 #size-cells = <0>; 2285 }; 2285 }; 2286 2286 2287 blsp1_i2c2: i2c@c176000 { 2287 blsp1_i2c2: i2c@c176000 { 2288 compatible = "qcom,i2 2288 compatible = "qcom,i2c-qup-v2.2.1"; 2289 reg = <0x0c176000 0x6 2289 reg = <0x0c176000 0x600>; 2290 interrupts = <GIC_SPI 2290 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 2291 2291 2292 clocks = <&gcc GCC_BL 2292 clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, 2293 <&gcc GCC_BL 2293 <&gcc GCC_BLSP1_AHB_CLK>; 2294 clock-names = "core", 2294 clock-names = "core", "iface"; 2295 dmas = <&blsp1_dma 8> 2295 dmas = <&blsp1_dma 8>, <&blsp1_dma 9>; 2296 dma-names = "tx", "rx 2296 dma-names = "tx", "rx"; 2297 pinctrl-names = "defa 2297 pinctrl-names = "default", "sleep"; 2298 pinctrl-0 = <&blsp1_i 2298 pinctrl-0 = <&blsp1_i2c2_default>; 2299 pinctrl-1 = <&blsp1_i 2299 pinctrl-1 = <&blsp1_i2c2_sleep>; 2300 clock-frequency = <40 2300 clock-frequency = <400000>; 2301 2301 2302 status = "disabled"; 2302 status = "disabled"; 2303 #address-cells = <1>; 2303 #address-cells = <1>; 2304 #size-cells = <0>; 2304 #size-cells = <0>; 2305 }; 2305 }; 2306 2306 2307 blsp1_i2c3: i2c@c177000 { 2307 blsp1_i2c3: i2c@c177000 { 2308 compatible = "qcom,i2 2308 compatible = "qcom,i2c-qup-v2.2.1"; 2309 reg = <0x0c177000 0x6 2309 reg = <0x0c177000 0x600>; 2310 interrupts = <GIC_SPI 2310 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 2311 2311 2312 clocks = <&gcc GCC_BL 2312 clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, 2313 <&gcc GCC_BL 2313 <&gcc GCC_BLSP1_AHB_CLK>; 2314 clock-names = "core", 2314 clock-names = "core", "iface"; 2315 dmas = <&blsp1_dma 10 2315 dmas = <&blsp1_dma 10>, <&blsp1_dma 11>; 2316 dma-names = "tx", "rx 2316 dma-names = "tx", "rx"; 2317 pinctrl-names = "defa 2317 pinctrl-names = "default", "sleep"; 2318 pinctrl-0 = <&blsp1_i 2318 pinctrl-0 = <&blsp1_i2c3_default>; 2319 pinctrl-1 = <&blsp1_i 2319 pinctrl-1 = <&blsp1_i2c3_sleep>; 2320 clock-frequency = <40 2320 clock-frequency = <400000>; 2321 2321 2322 status = "disabled"; 2322 status = "disabled"; 2323 #address-cells = <1>; 2323 #address-cells = <1>; 2324 #size-cells = <0>; 2324 #size-cells = <0>; 2325 }; 2325 }; 2326 2326 2327 blsp1_i2c4: i2c@c178000 { 2327 blsp1_i2c4: i2c@c178000 { 2328 compatible = "qcom,i2 2328 compatible = "qcom,i2c-qup-v2.2.1"; 2329 reg = <0x0c178000 0x6 2329 reg = <0x0c178000 0x600>; 2330 interrupts = <GIC_SPI 2330 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 2331 2331 2332 clocks = <&gcc GCC_BL 2332 clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, 2333 <&gcc GCC_BL 2333 <&gcc GCC_BLSP1_AHB_CLK>; 2334 clock-names = "core", 2334 clock-names = "core", "iface"; 2335 dmas = <&blsp1_dma 12 2335 dmas = <&blsp1_dma 12>, <&blsp1_dma 13>; 2336 dma-names = "tx", "rx 2336 dma-names = "tx", "rx"; 2337 pinctrl-names = "defa 2337 pinctrl-names = "default", "sleep"; 2338 pinctrl-0 = <&blsp1_i 2338 pinctrl-0 = <&blsp1_i2c4_default>; 2339 pinctrl-1 = <&blsp1_i 2339 pinctrl-1 = <&blsp1_i2c4_sleep>; 2340 clock-frequency = <40 2340 clock-frequency = <400000>; 2341 2341 2342 status = "disabled"; 2342 status = "disabled"; 2343 #address-cells = <1>; 2343 #address-cells = <1>; 2344 #size-cells = <0>; 2344 #size-cells = <0>; 2345 }; 2345 }; 2346 2346 2347 blsp1_i2c5: i2c@c179000 { 2347 blsp1_i2c5: i2c@c179000 { 2348 compatible = "qcom,i2 2348 compatible = "qcom,i2c-qup-v2.2.1"; 2349 reg = <0x0c179000 0x6 2349 reg = <0x0c179000 0x600>; 2350 interrupts = <GIC_SPI 2350 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 2351 2351 2352 clocks = <&gcc GCC_BL 2352 clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, 2353 <&gcc GCC_BL 2353 <&gcc GCC_BLSP1_AHB_CLK>; 2354 clock-names = "core", 2354 clock-names = "core", "iface"; 2355 dmas = <&blsp1_dma 14 2355 dmas = <&blsp1_dma 14>, <&blsp1_dma 15>; 2356 dma-names = "tx", "rx 2356 dma-names = "tx", "rx"; 2357 pinctrl-names = "defa 2357 pinctrl-names = "default", "sleep"; 2358 pinctrl-0 = <&blsp1_i 2358 pinctrl-0 = <&blsp1_i2c5_default>; 2359 pinctrl-1 = <&blsp1_i 2359 pinctrl-1 = <&blsp1_i2c5_sleep>; 2360 clock-frequency = <40 2360 clock-frequency = <400000>; 2361 2361 2362 status = "disabled"; 2362 status = "disabled"; 2363 #address-cells = <1>; 2363 #address-cells = <1>; 2364 #size-cells = <0>; 2364 #size-cells = <0>; 2365 }; 2365 }; 2366 2366 2367 blsp1_i2c6: i2c@c17a000 { 2367 blsp1_i2c6: i2c@c17a000 { 2368 compatible = "qcom,i2 2368 compatible = "qcom,i2c-qup-v2.2.1"; 2369 reg = <0x0c17a000 0x6 2369 reg = <0x0c17a000 0x600>; 2370 interrupts = <GIC_SPI 2370 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 2371 2371 2372 clocks = <&gcc GCC_BL 2372 clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, 2373 <&gcc GCC_BL 2373 <&gcc GCC_BLSP1_AHB_CLK>; 2374 clock-names = "core", 2374 clock-names = "core", "iface"; 2375 dmas = <&blsp1_dma 16 2375 dmas = <&blsp1_dma 16>, <&blsp1_dma 17>; 2376 dma-names = "tx", "rx 2376 dma-names = "tx", "rx"; 2377 pinctrl-names = "defa 2377 pinctrl-names = "default", "sleep"; 2378 pinctrl-0 = <&blsp1_i 2378 pinctrl-0 = <&blsp1_i2c6_default>; 2379 pinctrl-1 = <&blsp1_i 2379 pinctrl-1 = <&blsp1_i2c6_sleep>; 2380 clock-frequency = <40 2380 clock-frequency = <400000>; 2381 2381 2382 status = "disabled"; 2382 status = "disabled"; 2383 #address-cells = <1>; 2383 #address-cells = <1>; 2384 #size-cells = <0>; 2384 #size-cells = <0>; 2385 }; 2385 }; 2386 2386 2387 blsp1_spi1: spi@c175000 { 2387 blsp1_spi1: spi@c175000 { 2388 compatible = "qcom,sp 2388 compatible = "qcom,spi-qup-v2.2.1"; 2389 reg = <0x0c175000 0x6 2389 reg = <0x0c175000 0x600>; 2390 interrupts = <GIC_SPI 2390 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 2391 2391 2392 clocks = <&gcc GCC_BL 2392 clocks = <&gcc GCC_BLSP1_QUP1_SPI_APPS_CLK>, 2393 <&gcc GCC_BL 2393 <&gcc GCC_BLSP1_AHB_CLK>; 2394 clock-names = "core", 2394 clock-names = "core", "iface"; 2395 dmas = <&blsp1_dma 6> 2395 dmas = <&blsp1_dma 6>, <&blsp1_dma 7>; 2396 dma-names = "tx", "rx 2396 dma-names = "tx", "rx"; 2397 pinctrl-names = "defa 2397 pinctrl-names = "default"; 2398 pinctrl-0 = <&blsp1_s 2398 pinctrl-0 = <&blsp1_spi1_default>; 2399 2399 2400 status = "disabled"; 2400 status = "disabled"; 2401 #address-cells = <1>; 2401 #address-cells = <1>; 2402 #size-cells = <0>; 2402 #size-cells = <0>; 2403 }; 2403 }; 2404 2404 2405 blsp1_spi2: spi@c176000 { 2405 blsp1_spi2: spi@c176000 { 2406 compatible = "qcom,sp 2406 compatible = "qcom,spi-qup-v2.2.1"; 2407 reg = <0x0c176000 0x6 2407 reg = <0x0c176000 0x600>; 2408 interrupts = <GIC_SPI 2408 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 2409 2409 2410 clocks = <&gcc GCC_BL 2410 clocks = <&gcc GCC_BLSP1_QUP2_SPI_APPS_CLK>, 2411 <&gcc GCC_BL 2411 <&gcc GCC_BLSP1_AHB_CLK>; 2412 clock-names = "core", 2412 clock-names = "core", "iface"; 2413 dmas = <&blsp1_dma 8> 2413 dmas = <&blsp1_dma 8>, <&blsp1_dma 9>; 2414 dma-names = "tx", "rx 2414 dma-names = "tx", "rx"; 2415 pinctrl-names = "defa 2415 pinctrl-names = "default"; 2416 pinctrl-0 = <&blsp1_s 2416 pinctrl-0 = <&blsp1_spi2_default>; 2417 2417 2418 status = "disabled"; 2418 status = "disabled"; 2419 #address-cells = <1>; 2419 #address-cells = <1>; 2420 #size-cells = <0>; 2420 #size-cells = <0>; 2421 }; 2421 }; 2422 2422 2423 blsp1_spi3: spi@c177000 { 2423 blsp1_spi3: spi@c177000 { 2424 compatible = "qcom,sp 2424 compatible = "qcom,spi-qup-v2.2.1"; 2425 reg = <0x0c177000 0x6 2425 reg = <0x0c177000 0x600>; 2426 interrupts = <GIC_SPI 2426 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 2427 2427 2428 clocks = <&gcc GCC_BL 2428 clocks = <&gcc GCC_BLSP1_QUP3_SPI_APPS_CLK>, 2429 <&gcc GCC_BL 2429 <&gcc GCC_BLSP1_AHB_CLK>; 2430 clock-names = "core", 2430 clock-names = "core", "iface"; 2431 dmas = <&blsp1_dma 10 2431 dmas = <&blsp1_dma 10>, <&blsp1_dma 11>; 2432 dma-names = "tx", "rx 2432 dma-names = "tx", "rx"; 2433 pinctrl-names = "defa 2433 pinctrl-names = "default"; 2434 pinctrl-0 = <&blsp1_s 2434 pinctrl-0 = <&blsp1_spi3_default>; 2435 2435 2436 status = "disabled"; 2436 status = "disabled"; 2437 #address-cells = <1>; 2437 #address-cells = <1>; 2438 #size-cells = <0>; 2438 #size-cells = <0>; 2439 }; 2439 }; 2440 2440 2441 blsp1_spi4: spi@c178000 { 2441 blsp1_spi4: spi@c178000 { 2442 compatible = "qcom,sp 2442 compatible = "qcom,spi-qup-v2.2.1"; 2443 reg = <0x0c178000 0x6 2443 reg = <0x0c178000 0x600>; 2444 interrupts = <GIC_SPI 2444 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 2445 2445 2446 clocks = <&gcc GCC_BL 2446 clocks = <&gcc GCC_BLSP1_QUP4_SPI_APPS_CLK>, 2447 <&gcc GCC_BL 2447 <&gcc GCC_BLSP1_AHB_CLK>; 2448 clock-names = "core", 2448 clock-names = "core", "iface"; 2449 dmas = <&blsp1_dma 12 2449 dmas = <&blsp1_dma 12>, <&blsp1_dma 13>; 2450 dma-names = "tx", "rx 2450 dma-names = "tx", "rx"; 2451 pinctrl-names = "defa 2451 pinctrl-names = "default"; 2452 pinctrl-0 = <&blsp1_s 2452 pinctrl-0 = <&blsp1_spi4_default>; 2453 2453 2454 status = "disabled"; 2454 status = "disabled"; 2455 #address-cells = <1>; 2455 #address-cells = <1>; 2456 #size-cells = <0>; 2456 #size-cells = <0>; 2457 }; 2457 }; 2458 2458 2459 blsp1_spi5: spi@c179000 { 2459 blsp1_spi5: spi@c179000 { 2460 compatible = "qcom,sp 2460 compatible = "qcom,spi-qup-v2.2.1"; 2461 reg = <0x0c179000 0x6 2461 reg = <0x0c179000 0x600>; 2462 interrupts = <GIC_SPI 2462 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 2463 2463 2464 clocks = <&gcc GCC_BL 2464 clocks = <&gcc GCC_BLSP1_QUP5_SPI_APPS_CLK>, 2465 <&gcc GCC_BL 2465 <&gcc GCC_BLSP1_AHB_CLK>; 2466 clock-names = "core", 2466 clock-names = "core", "iface"; 2467 dmas = <&blsp1_dma 14 2467 dmas = <&blsp1_dma 14>, <&blsp1_dma 15>; 2468 dma-names = "tx", "rx 2468 dma-names = "tx", "rx"; 2469 pinctrl-names = "defa 2469 pinctrl-names = "default"; 2470 pinctrl-0 = <&blsp1_s 2470 pinctrl-0 = <&blsp1_spi5_default>; 2471 2471 2472 status = "disabled"; 2472 status = "disabled"; 2473 #address-cells = <1>; 2473 #address-cells = <1>; 2474 #size-cells = <0>; 2474 #size-cells = <0>; 2475 }; 2475 }; 2476 2476 2477 blsp1_spi6: spi@c17a000 { 2477 blsp1_spi6: spi@c17a000 { 2478 compatible = "qcom,sp 2478 compatible = "qcom,spi-qup-v2.2.1"; 2479 reg = <0x0c17a000 0x6 2479 reg = <0x0c17a000 0x600>; 2480 interrupts = <GIC_SPI 2480 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 2481 2481 2482 clocks = <&gcc GCC_BL 2482 clocks = <&gcc GCC_BLSP1_QUP6_SPI_APPS_CLK>, 2483 <&gcc GCC_BL 2483 <&gcc GCC_BLSP1_AHB_CLK>; 2484 clock-names = "core", 2484 clock-names = "core", "iface"; 2485 dmas = <&blsp1_dma 16 2485 dmas = <&blsp1_dma 16>, <&blsp1_dma 17>; 2486 dma-names = "tx", "rx 2486 dma-names = "tx", "rx"; 2487 pinctrl-names = "defa 2487 pinctrl-names = "default"; 2488 pinctrl-0 = <&blsp1_s 2488 pinctrl-0 = <&blsp1_spi6_default>; 2489 2489 2490 status = "disabled"; 2490 status = "disabled"; 2491 #address-cells = <1>; 2491 #address-cells = <1>; 2492 #size-cells = <0>; 2492 #size-cells = <0>; 2493 }; 2493 }; 2494 2494 2495 blsp2_dma: dma-controller@c18 2495 blsp2_dma: dma-controller@c184000 { 2496 compatible = "qcom,ba 2496 compatible = "qcom,bam-v1.7.0"; 2497 reg = <0x0c184000 0x2 2497 reg = <0x0c184000 0x25000>; 2498 interrupts = <GIC_SPI 2498 interrupts = <GIC_SPI 239 IRQ_TYPE_LEVEL_HIGH>; 2499 clocks = <&gcc GCC_BL 2499 clocks = <&gcc GCC_BLSP2_AHB_CLK>; 2500 clock-names = "bam_cl 2500 clock-names = "bam_clk"; 2501 #dma-cells = <1>; 2501 #dma-cells = <1>; 2502 qcom,ee = <0>; 2502 qcom,ee = <0>; 2503 qcom,controlled-remot 2503 qcom,controlled-remotely; 2504 num-channels = <18>; 2504 num-channels = <18>; 2505 qcom,num-ees = <4>; 2505 qcom,num-ees = <4>; 2506 }; 2506 }; 2507 2507 2508 blsp2_uart1: serial@c1b0000 { 2508 blsp2_uart1: serial@c1b0000 { 2509 compatible = "qcom,ms 2509 compatible = "qcom,msm-uartdm-v1.4", "qcom,msm-uartdm"; 2510 reg = <0x0c1b0000 0x1 2510 reg = <0x0c1b0000 0x1000>; 2511 interrupts = <GIC_SPI 2511 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 2512 clocks = <&gcc GCC_BL 2512 clocks = <&gcc GCC_BLSP2_UART2_APPS_CLK>, 2513 <&gcc GCC_BL 2513 <&gcc GCC_BLSP2_AHB_CLK>; 2514 clock-names = "core", 2514 clock-names = "core", "iface"; 2515 status = "disabled"; 2515 status = "disabled"; 2516 }; 2516 }; 2517 2517 2518 blsp2_i2c1: i2c@c1b5000 { 2518 blsp2_i2c1: i2c@c1b5000 { 2519 compatible = "qcom,i2 2519 compatible = "qcom,i2c-qup-v2.2.1"; 2520 reg = <0x0c1b5000 0x6 2520 reg = <0x0c1b5000 0x600>; 2521 interrupts = <GIC_SPI 2521 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 2522 2522 2523 clocks = <&gcc GCC_BL 2523 clocks = <&gcc GCC_BLSP2_QUP1_I2C_APPS_CLK>, 2524 <&gcc GCC_BL 2524 <&gcc GCC_BLSP2_AHB_CLK>; 2525 clock-names = "core", 2525 clock-names = "core", "iface"; 2526 dmas = <&blsp2_dma 6> 2526 dmas = <&blsp2_dma 6>, <&blsp2_dma 7>; 2527 dma-names = "tx", "rx 2527 dma-names = "tx", "rx"; 2528 pinctrl-names = "defa 2528 pinctrl-names = "default", "sleep"; 2529 pinctrl-0 = <&blsp2_i 2529 pinctrl-0 = <&blsp2_i2c1_default>; 2530 pinctrl-1 = <&blsp2_i 2530 pinctrl-1 = <&blsp2_i2c1_sleep>; 2531 clock-frequency = <40 2531 clock-frequency = <400000>; 2532 2532 2533 status = "disabled"; 2533 status = "disabled"; 2534 #address-cells = <1>; 2534 #address-cells = <1>; 2535 #size-cells = <0>; 2535 #size-cells = <0>; 2536 }; 2536 }; 2537 2537 2538 blsp2_i2c2: i2c@c1b6000 { 2538 blsp2_i2c2: i2c@c1b6000 { 2539 compatible = "qcom,i2 2539 compatible = "qcom,i2c-qup-v2.2.1"; 2540 reg = <0x0c1b6000 0x6 2540 reg = <0x0c1b6000 0x600>; 2541 interrupts = <GIC_SPI 2541 interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 2542 2542 2543 clocks = <&gcc GCC_BL 2543 clocks = <&gcc GCC_BLSP2_QUP2_I2C_APPS_CLK>, 2544 <&gcc GCC_BL 2544 <&gcc GCC_BLSP2_AHB_CLK>; 2545 clock-names = "core", 2545 clock-names = "core", "iface"; 2546 dmas = <&blsp2_dma 8> 2546 dmas = <&blsp2_dma 8>, <&blsp2_dma 9>; 2547 dma-names = "tx", "rx 2547 dma-names = "tx", "rx"; 2548 pinctrl-names = "defa 2548 pinctrl-names = "default", "sleep"; 2549 pinctrl-0 = <&blsp2_i 2549 pinctrl-0 = <&blsp2_i2c2_default>; 2550 pinctrl-1 = <&blsp2_i 2550 pinctrl-1 = <&blsp2_i2c2_sleep>; 2551 clock-frequency = <40 2551 clock-frequency = <400000>; 2552 2552 2553 status = "disabled"; 2553 status = "disabled"; 2554 #address-cells = <1>; 2554 #address-cells = <1>; 2555 #size-cells = <0>; 2555 #size-cells = <0>; 2556 }; 2556 }; 2557 2557 2558 blsp2_i2c3: i2c@c1b7000 { 2558 blsp2_i2c3: i2c@c1b7000 { 2559 compatible = "qcom,i2 2559 compatible = "qcom,i2c-qup-v2.2.1"; 2560 reg = <0x0c1b7000 0x6 2560 reg = <0x0c1b7000 0x600>; 2561 interrupts = <GIC_SPI 2561 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 2562 2562 2563 clocks = <&gcc GCC_BL 2563 clocks = <&gcc GCC_BLSP2_QUP3_I2C_APPS_CLK>, 2564 <&gcc GCC_BL 2564 <&gcc GCC_BLSP2_AHB_CLK>; 2565 clock-names = "core", 2565 clock-names = "core", "iface"; 2566 dmas = <&blsp2_dma 10 2566 dmas = <&blsp2_dma 10>, <&blsp2_dma 11>; 2567 dma-names = "tx", "rx 2567 dma-names = "tx", "rx"; 2568 pinctrl-names = "defa 2568 pinctrl-names = "default", "sleep"; 2569 pinctrl-0 = <&blsp2_i 2569 pinctrl-0 = <&blsp2_i2c3_default>; 2570 pinctrl-1 = <&blsp2_i 2570 pinctrl-1 = <&blsp2_i2c3_sleep>; 2571 clock-frequency = <40 2571 clock-frequency = <400000>; 2572 2572 2573 status = "disabled"; 2573 status = "disabled"; 2574 #address-cells = <1>; 2574 #address-cells = <1>; 2575 #size-cells = <0>; 2575 #size-cells = <0>; 2576 }; 2576 }; 2577 2577 2578 blsp2_i2c4: i2c@c1b8000 { 2578 blsp2_i2c4: i2c@c1b8000 { 2579 compatible = "qcom,i2 2579 compatible = "qcom,i2c-qup-v2.2.1"; 2580 reg = <0x0c1b8000 0x6 2580 reg = <0x0c1b8000 0x600>; 2581 interrupts = <GIC_SPI 2581 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 2582 2582 2583 clocks = <&gcc GCC_BL 2583 clocks = <&gcc GCC_BLSP2_QUP4_I2C_APPS_CLK>, 2584 <&gcc GCC_BL 2584 <&gcc GCC_BLSP2_AHB_CLK>; 2585 clock-names = "core", 2585 clock-names = "core", "iface"; 2586 dmas = <&blsp2_dma 12 2586 dmas = <&blsp2_dma 12>, <&blsp2_dma 13>; 2587 dma-names = "tx", "rx 2587 dma-names = "tx", "rx"; 2588 pinctrl-names = "defa 2588 pinctrl-names = "default", "sleep"; 2589 pinctrl-0 = <&blsp2_i 2589 pinctrl-0 = <&blsp2_i2c4_default>; 2590 pinctrl-1 = <&blsp2_i 2590 pinctrl-1 = <&blsp2_i2c4_sleep>; 2591 clock-frequency = <40 2591 clock-frequency = <400000>; 2592 2592 2593 status = "disabled"; 2593 status = "disabled"; 2594 #address-cells = <1>; 2594 #address-cells = <1>; 2595 #size-cells = <0>; 2595 #size-cells = <0>; 2596 }; 2596 }; 2597 2597 2598 blsp2_i2c5: i2c@c1b9000 { 2598 blsp2_i2c5: i2c@c1b9000 { 2599 compatible = "qcom,i2 2599 compatible = "qcom,i2c-qup-v2.2.1"; 2600 reg = <0x0c1b9000 0x6 2600 reg = <0x0c1b9000 0x600>; 2601 interrupts = <GIC_SPI 2601 interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 2602 2602 2603 clocks = <&gcc GCC_BL 2603 clocks = <&gcc GCC_BLSP2_QUP5_I2C_APPS_CLK>, 2604 <&gcc GCC_BL 2604 <&gcc GCC_BLSP2_AHB_CLK>; 2605 clock-names = "core", 2605 clock-names = "core", "iface"; 2606 dmas = <&blsp2_dma 14 2606 dmas = <&blsp2_dma 14>, <&blsp2_dma 15>; 2607 dma-names = "tx", "rx 2607 dma-names = "tx", "rx"; 2608 pinctrl-names = "defa 2608 pinctrl-names = "default", "sleep"; 2609 pinctrl-0 = <&blsp2_i 2609 pinctrl-0 = <&blsp2_i2c5_default>; 2610 pinctrl-1 = <&blsp2_i 2610 pinctrl-1 = <&blsp2_i2c5_sleep>; 2611 clock-frequency = <40 2611 clock-frequency = <400000>; 2612 2612 2613 status = "disabled"; 2613 status = "disabled"; 2614 #address-cells = <1>; 2614 #address-cells = <1>; 2615 #size-cells = <0>; 2615 #size-cells = <0>; 2616 }; 2616 }; 2617 2617 2618 blsp2_i2c6: i2c@c1ba000 { 2618 blsp2_i2c6: i2c@c1ba000 { 2619 compatible = "qcom,i2 2619 compatible = "qcom,i2c-qup-v2.2.1"; 2620 reg = <0x0c1ba000 0x6 2620 reg = <0x0c1ba000 0x600>; 2621 interrupts = <GIC_SPI 2621 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 2622 2622 2623 clocks = <&gcc GCC_BL 2623 clocks = <&gcc GCC_BLSP2_QUP6_I2C_APPS_CLK>, 2624 <&gcc GCC_BL 2624 <&gcc GCC_BLSP2_AHB_CLK>; 2625 clock-names = "core", 2625 clock-names = "core", "iface"; 2626 dmas = <&blsp2_dma 16 2626 dmas = <&blsp2_dma 16>, <&blsp2_dma 17>; 2627 dma-names = "tx", "rx 2627 dma-names = "tx", "rx"; 2628 pinctrl-names = "defa 2628 pinctrl-names = "default", "sleep"; 2629 pinctrl-0 = <&blsp2_i 2629 pinctrl-0 = <&blsp2_i2c6_default>; 2630 pinctrl-1 = <&blsp2_i 2630 pinctrl-1 = <&blsp2_i2c6_sleep>; 2631 clock-frequency = <40 2631 clock-frequency = <400000>; 2632 2632 2633 status = "disabled"; 2633 status = "disabled"; 2634 #address-cells = <1>; 2634 #address-cells = <1>; 2635 #size-cells = <0>; 2635 #size-cells = <0>; 2636 }; 2636 }; 2637 2637 2638 blsp2_spi1: spi@c1b5000 { 2638 blsp2_spi1: spi@c1b5000 { 2639 compatible = "qcom,sp 2639 compatible = "qcom,spi-qup-v2.2.1"; 2640 reg = <0x0c1b5000 0x6 2640 reg = <0x0c1b5000 0x600>; 2641 interrupts = <GIC_SPI 2641 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 2642 2642 2643 clocks = <&gcc GCC_BL 2643 clocks = <&gcc GCC_BLSP2_QUP1_SPI_APPS_CLK>, 2644 <&gcc GCC_BL 2644 <&gcc GCC_BLSP2_AHB_CLK>; 2645 clock-names = "core", 2645 clock-names = "core", "iface"; 2646 dmas = <&blsp2_dma 6> 2646 dmas = <&blsp2_dma 6>, <&blsp2_dma 7>; 2647 dma-names = "tx", "rx 2647 dma-names = "tx", "rx"; 2648 pinctrl-names = "defa 2648 pinctrl-names = "default"; 2649 pinctrl-0 = <&blsp2_s 2649 pinctrl-0 = <&blsp2_spi1_default>; 2650 2650 2651 status = "disabled"; 2651 status = "disabled"; 2652 #address-cells = <1>; 2652 #address-cells = <1>; 2653 #size-cells = <0>; 2653 #size-cells = <0>; 2654 }; 2654 }; 2655 2655 2656 blsp2_spi2: spi@c1b6000 { 2656 blsp2_spi2: spi@c1b6000 { 2657 compatible = "qcom,sp 2657 compatible = "qcom,spi-qup-v2.2.1"; 2658 reg = <0x0c1b6000 0x6 2658 reg = <0x0c1b6000 0x600>; 2659 interrupts = <GIC_SPI 2659 interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 2660 2660 2661 clocks = <&gcc GCC_BL 2661 clocks = <&gcc GCC_BLSP2_QUP2_SPI_APPS_CLK>, 2662 <&gcc GCC_BL 2662 <&gcc GCC_BLSP2_AHB_CLK>; 2663 clock-names = "core", 2663 clock-names = "core", "iface"; 2664 dmas = <&blsp2_dma 8> 2664 dmas = <&blsp2_dma 8>, <&blsp2_dma 9>; 2665 dma-names = "tx", "rx 2665 dma-names = "tx", "rx"; 2666 pinctrl-names = "defa 2666 pinctrl-names = "default"; 2667 pinctrl-0 = <&blsp2_s 2667 pinctrl-0 = <&blsp2_spi2_default>; 2668 2668 2669 status = "disabled"; 2669 status = "disabled"; 2670 #address-cells = <1>; 2670 #address-cells = <1>; 2671 #size-cells = <0>; 2671 #size-cells = <0>; 2672 }; 2672 }; 2673 2673 2674 blsp2_spi3: spi@c1b7000 { 2674 blsp2_spi3: spi@c1b7000 { 2675 compatible = "qcom,sp 2675 compatible = "qcom,spi-qup-v2.2.1"; 2676 reg = <0x0c1b7000 0x6 2676 reg = <0x0c1b7000 0x600>; 2677 interrupts = <GIC_SPI 2677 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 2678 2678 2679 clocks = <&gcc GCC_BL 2679 clocks = <&gcc GCC_BLSP2_QUP3_SPI_APPS_CLK>, 2680 <&gcc GCC_BL 2680 <&gcc GCC_BLSP2_AHB_CLK>; 2681 clock-names = "core", 2681 clock-names = "core", "iface"; 2682 dmas = <&blsp2_dma 10 2682 dmas = <&blsp2_dma 10>, <&blsp2_dma 11>; 2683 dma-names = "tx", "rx 2683 dma-names = "tx", "rx"; 2684 pinctrl-names = "defa 2684 pinctrl-names = "default"; 2685 pinctrl-0 = <&blsp2_s 2685 pinctrl-0 = <&blsp2_spi3_default>; 2686 2686 2687 status = "disabled"; 2687 status = "disabled"; 2688 #address-cells = <1>; 2688 #address-cells = <1>; 2689 #size-cells = <0>; 2689 #size-cells = <0>; 2690 }; 2690 }; 2691 2691 2692 blsp2_spi4: spi@c1b8000 { 2692 blsp2_spi4: spi@c1b8000 { 2693 compatible = "qcom,sp 2693 compatible = "qcom,spi-qup-v2.2.1"; 2694 reg = <0x0c1b8000 0x6 2694 reg = <0x0c1b8000 0x600>; 2695 interrupts = <GIC_SPI 2695 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 2696 2696 2697 clocks = <&gcc GCC_BL 2697 clocks = <&gcc GCC_BLSP2_QUP4_SPI_APPS_CLK>, 2698 <&gcc GCC_BL 2698 <&gcc GCC_BLSP2_AHB_CLK>; 2699 clock-names = "core", 2699 clock-names = "core", "iface"; 2700 dmas = <&blsp2_dma 12 2700 dmas = <&blsp2_dma 12>, <&blsp2_dma 13>; 2701 dma-names = "tx", "rx 2701 dma-names = "tx", "rx"; 2702 pinctrl-names = "defa 2702 pinctrl-names = "default"; 2703 pinctrl-0 = <&blsp2_s 2703 pinctrl-0 = <&blsp2_spi4_default>; 2704 2704 2705 status = "disabled"; 2705 status = "disabled"; 2706 #address-cells = <1>; 2706 #address-cells = <1>; 2707 #size-cells = <0>; 2707 #size-cells = <0>; 2708 }; 2708 }; 2709 2709 2710 blsp2_spi5: spi@c1b9000 { 2710 blsp2_spi5: spi@c1b9000 { 2711 compatible = "qcom,sp 2711 compatible = "qcom,spi-qup-v2.2.1"; 2712 reg = <0x0c1b9000 0x6 2712 reg = <0x0c1b9000 0x600>; 2713 interrupts = <GIC_SPI 2713 interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 2714 2714 2715 clocks = <&gcc GCC_BL 2715 clocks = <&gcc GCC_BLSP2_QUP5_SPI_APPS_CLK>, 2716 <&gcc GCC_BL 2716 <&gcc GCC_BLSP2_AHB_CLK>; 2717 clock-names = "core", 2717 clock-names = "core", "iface"; 2718 dmas = <&blsp2_dma 14 2718 dmas = <&blsp2_dma 14>, <&blsp2_dma 15>; 2719 dma-names = "tx", "rx 2719 dma-names = "tx", "rx"; 2720 pinctrl-names = "defa 2720 pinctrl-names = "default"; 2721 pinctrl-0 = <&blsp2_s 2721 pinctrl-0 = <&blsp2_spi5_default>; 2722 2722 2723 status = "disabled"; 2723 status = "disabled"; 2724 #address-cells = <1>; 2724 #address-cells = <1>; 2725 #size-cells = <0>; 2725 #size-cells = <0>; 2726 }; 2726 }; 2727 2727 2728 blsp2_spi6: spi@c1ba000 { 2728 blsp2_spi6: spi@c1ba000 { 2729 compatible = "qcom,sp 2729 compatible = "qcom,spi-qup-v2.2.1"; 2730 reg = <0x0c1ba000 0x6 2730 reg = <0x0c1ba000 0x600>; 2731 interrupts = <GIC_SPI 2731 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 2732 2732 2733 clocks = <&gcc GCC_BL 2733 clocks = <&gcc GCC_BLSP2_QUP6_SPI_APPS_CLK>, 2734 <&gcc GCC_BL 2734 <&gcc GCC_BLSP2_AHB_CLK>; 2735 clock-names = "core", 2735 clock-names = "core", "iface"; 2736 dmas = <&blsp2_dma 16 2736 dmas = <&blsp2_dma 16>, <&blsp2_dma 17>; 2737 dma-names = "tx", "rx 2737 dma-names = "tx", "rx"; 2738 pinctrl-names = "defa 2738 pinctrl-names = "default"; 2739 pinctrl-0 = <&blsp2_s 2739 pinctrl-0 = <&blsp2_spi6_default>; 2740 2740 2741 status = "disabled"; 2741 status = "disabled"; 2742 #address-cells = <1>; 2742 #address-cells = <1>; 2743 #size-cells = <0>; 2743 #size-cells = <0>; 2744 }; 2744 }; 2745 2745 2746 mmcc: clock-controller@c8c000 2746 mmcc: clock-controller@c8c0000 { 2747 compatible = "qcom,mm 2747 compatible = "qcom,mmcc-msm8998"; 2748 #clock-cells = <1>; 2748 #clock-cells = <1>; 2749 #reset-cells = <1>; 2749 #reset-cells = <1>; 2750 #power-domain-cells = 2750 #power-domain-cells = <1>; 2751 reg = <0xc8c0000 0x40 2751 reg = <0xc8c0000 0x40000>; 2752 2752 2753 clock-names = "xo", 2753 clock-names = "xo", 2754 "gpll0" 2754 "gpll0", 2755 "dsi0ds 2755 "dsi0dsi", 2756 "dsi0by 2756 "dsi0byte", 2757 "dsi1ds 2757 "dsi1dsi", 2758 "dsi1by 2758 "dsi1byte", 2759 "hdmipl 2759 "hdmipll", 2760 "dplink 2760 "dplink", 2761 "dpvco" 2761 "dpvco", 2762 "gpll0_ 2762 "gpll0_div"; 2763 clocks = <&rpmcc RPM_ 2763 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>, 2764 <&gcc GCC_MM 2764 <&gcc GCC_MMSS_GPLL0_CLK>, 2765 <&mdss_dsi0_ 2765 <&mdss_dsi0_phy 1>, 2766 <&mdss_dsi0_ 2766 <&mdss_dsi0_phy 0>, 2767 <&mdss_dsi1_ 2767 <&mdss_dsi1_phy 1>, 2768 <&mdss_dsi1_ 2768 <&mdss_dsi1_phy 0>, 2769 <0>, 2769 <0>, 2770 <0>, 2770 <0>, 2771 <0>, 2771 <0>, 2772 <&gcc GCC_MM 2772 <&gcc GCC_MMSS_GPLL0_DIV_CLK>; 2773 }; 2773 }; 2774 2774 2775 mdss: display-subsystem@c9000 2775 mdss: display-subsystem@c900000 { 2776 compatible = "qcom,ms 2776 compatible = "qcom,msm8998-mdss"; 2777 reg = <0x0c900000 0x1 2777 reg = <0x0c900000 0x1000>; 2778 reg-names = "mdss"; 2778 reg-names = "mdss"; 2779 2779 2780 interrupts = <GIC_SPI 2780 interrupts = <GIC_SPI 83 IRQ_TYPE_LEVEL_HIGH>; 2781 interrupt-controller; 2781 interrupt-controller; 2782 #interrupt-cells = <1 2782 #interrupt-cells = <1>; 2783 2783 2784 clocks = <&mmcc MDSS_ 2784 clocks = <&mmcc MDSS_AHB_CLK>, 2785 <&mmcc MDSS_ 2785 <&mmcc MDSS_AXI_CLK>, 2786 <&mmcc MDSS_ 2786 <&mmcc MDSS_MDP_CLK>; 2787 clock-names = "iface" 2787 clock-names = "iface", 2788 "bus", 2788 "bus", 2789 "core"; 2789 "core"; 2790 2790 2791 power-domains = <&mmc 2791 power-domains = <&mmcc MDSS_GDSC>; 2792 iommus = <&mmss_smmu 2792 iommus = <&mmss_smmu 0>; 2793 2793 2794 #address-cells = <1>; 2794 #address-cells = <1>; 2795 #size-cells = <1>; 2795 #size-cells = <1>; 2796 ranges; 2796 ranges; 2797 2797 2798 status = "disabled"; 2798 status = "disabled"; 2799 2799 2800 mdss_mdp: display-con 2800 mdss_mdp: display-controller@c901000 { 2801 compatible = 2801 compatible = "qcom,msm8998-dpu"; 2802 reg = <0x0c90 2802 reg = <0x0c901000 0x8f000>, 2803 <0x0c9a 2803 <0x0c9a8e00 0xf0>, 2804 <0x0c9b 2804 <0x0c9b0000 0x2008>, 2805 <0x0c9b 2805 <0x0c9b8000 0x1040>; 2806 reg-names = " 2806 reg-names = "mdp", 2807 " 2807 "regdma", 2808 " 2808 "vbif", 2809 " 2809 "vbif_nrt"; 2810 2810 2811 interrupt-par 2811 interrupt-parent = <&mdss>; 2812 interrupts = 2812 interrupts = <0>; 2813 2813 2814 clocks = <&mm 2814 clocks = <&mmcc MDSS_AHB_CLK>, 2815 <&mm 2815 <&mmcc MDSS_AXI_CLK>, 2816 <&mm 2816 <&mmcc MNOC_AHB_CLK>, 2817 <&mm 2817 <&mmcc MDSS_MDP_CLK>, 2818 <&mm 2818 <&mmcc MDSS_VSYNC_CLK>; 2819 clock-names = 2819 clock-names = "iface", 2820 2820 "bus", 2821 2821 "mnoc", 2822 2822 "core", 2823 2823 "vsync"; 2824 2824 2825 assigned-cloc 2825 assigned-clocks = <&mmcc MDSS_VSYNC_CLK>; 2826 assigned-cloc 2826 assigned-clock-rates = <19200000>; 2827 2827 2828 operating-poi 2828 operating-points-v2 = <&mdp_opp_table>; 2829 power-domains 2829 power-domains = <&rpmpd MSM8998_VDDMX>; 2830 2830 2831 mdp_opp_table 2831 mdp_opp_table: opp-table { 2832 compa 2832 compatible = "operating-points-v2"; 2833 2833 2834 opp-1 2834 opp-171430000 { 2835 2835 opp-hz = /bits/ 64 <171430000>; 2836 2836 required-opps = <&rpmpd_opp_low_svs>; 2837 }; 2837 }; 2838 2838 2839 opp-2 2839 opp-275000000 { 2840 2840 opp-hz = /bits/ 64 <275000000>; 2841 2841 required-opps = <&rpmpd_opp_svs>; 2842 }; 2842 }; 2843 2843 2844 opp-3 2844 opp-330000000 { 2845 2845 opp-hz = /bits/ 64 <330000000>; 2846 2846 required-opps = <&rpmpd_opp_nom>; 2847 }; 2847 }; 2848 2848 2849 opp-4 2849 opp-412500000 { 2850 2850 opp-hz = /bits/ 64 <412500000>; 2851 2851 required-opps = <&rpmpd_opp_turbo>; 2852 }; 2852 }; 2853 }; 2853 }; 2854 2854 2855 ports { 2855 ports { 2856 #addr 2856 #address-cells = <1>; 2857 #size 2857 #size-cells = <0>; 2858 2858 2859 port@ 2859 port@0 { 2860 2860 reg = <0>; 2861 2861 2862 2862 dpu_intf1_out: endpoint { 2863 2863 remote-endpoint = <&mdss_dsi0_in>; 2864 2864 }; 2865 }; 2865 }; 2866 2866 2867 port@ 2867 port@1 { 2868 2868 reg = <1>; 2869 2869 2870 2870 dpu_intf2_out: endpoint { 2871 2871 remote-endpoint = <&mdss_dsi1_in>; 2872 2872 }; 2873 }; 2873 }; 2874 }; 2874 }; 2875 }; 2875 }; 2876 2876 2877 mdss_dsi0: dsi@c99400 2877 mdss_dsi0: dsi@c994000 { 2878 compatible = 2878 compatible = "qcom,msm8998-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 2879 reg = <0x0c99 2879 reg = <0x0c994000 0x400>; 2880 reg-names = " 2880 reg-names = "dsi_ctrl"; 2881 2881 2882 interrupt-par 2882 interrupt-parent = <&mdss>; 2883 interrupts = 2883 interrupts = <4>; 2884 2884 2885 clocks = <&mm 2885 clocks = <&mmcc MDSS_BYTE0_CLK>, 2886 <&mm 2886 <&mmcc MDSS_BYTE0_INTF_CLK>, 2887 <&mm 2887 <&mmcc MDSS_PCLK0_CLK>, 2888 <&mm 2888 <&mmcc MDSS_ESC0_CLK>, 2889 <&mm 2889 <&mmcc MDSS_AHB_CLK>, 2890 <&mm 2890 <&mmcc MDSS_AXI_CLK>; 2891 clock-names = 2891 clock-names = "byte", 2892 2892 "byte_intf", 2893 2893 "pixel", 2894 2894 "core", 2895 2895 "iface", 2896 2896 "bus"; 2897 assigned-cloc 2897 assigned-clocks = <&mmcc BYTE0_CLK_SRC>, 2898 2898 <&mmcc PCLK0_CLK_SRC>; 2899 assigned-cloc 2899 assigned-clock-parents = <&mdss_dsi0_phy 0>, 2900 2900 <&mdss_dsi0_phy 1>; 2901 2901 2902 operating-poi 2902 operating-points-v2 = <&dsi_opp_table>; 2903 power-domains 2903 power-domains = <&rpmpd MSM8998_VDDCX>; 2904 2904 2905 phys = <&mdss 2905 phys = <&mdss_dsi0_phy>; 2906 phy-names = " 2906 phy-names = "dsi"; 2907 2907 2908 #address-cell 2908 #address-cells = <1>; 2909 #size-cells = 2909 #size-cells = <0>; 2910 2910 2911 status = "dis 2911 status = "disabled"; 2912 2912 2913 ports { 2913 ports { 2914 #addr 2914 #address-cells = <1>; 2915 #size 2915 #size-cells = <0>; 2916 2916 2917 port@ 2917 port@0 { 2918 2918 reg = <0>; 2919 2919 2920 2920 mdss_dsi0_in: endpoint { 2921 2921 remote-endpoint = <&dpu_intf1_out>; 2922 2922 }; 2923 }; 2923 }; 2924 2924 2925 port@ 2925 port@1 { 2926 2926 reg = <1>; 2927 2927 2928 2928 mdss_dsi0_out: endpoint { 2929 2929 }; 2930 }; 2930 }; 2931 }; 2931 }; 2932 }; 2932 }; 2933 2933 2934 mdss_dsi0_phy: phy@c9 2934 mdss_dsi0_phy: phy@c994400 { 2935 compatible = 2935 compatible = "qcom,dsi-phy-10nm-8998"; 2936 reg = <0x0c99 2936 reg = <0x0c994400 0x200>, 2937 <0x0c99 2937 <0x0c994600 0x280>, 2938 <0x0c99 2938 <0x0c994a00 0x1e0>; 2939 reg-names = " 2939 reg-names = "dsi_phy", 2940 " 2940 "dsi_phy_lane", 2941 " 2941 "dsi_pll"; 2942 2942 2943 clocks = <&mm 2943 clocks = <&mmcc MDSS_AHB_CLK>, 2944 <&rp 2944 <&rpmcc RPM_SMD_XO_CLK_SRC>; 2945 clock-names = 2945 clock-names = "iface", "ref"; 2946 2946 2947 #clock-cells 2947 #clock-cells = <1>; 2948 #phy-cells = 2948 #phy-cells = <0>; 2949 2949 2950 status = "dis 2950 status = "disabled"; 2951 }; 2951 }; 2952 2952 2953 mdss_dsi1: dsi@c99600 2953 mdss_dsi1: dsi@c996000 { 2954 compatible = 2954 compatible = "qcom,msm8998-dsi-ctrl", "qcom,mdss-dsi-ctrl"; 2955 reg = <0x0c99 2955 reg = <0x0c996000 0x400>; 2956 reg-names = " 2956 reg-names = "dsi_ctrl"; 2957 2957 2958 interrupt-par 2958 interrupt-parent = <&mdss>; 2959 interrupts = 2959 interrupts = <5>; 2960 2960 2961 clocks = <&mm 2961 clocks = <&mmcc MDSS_BYTE1_CLK>, 2962 <&mm 2962 <&mmcc MDSS_BYTE1_INTF_CLK>, 2963 <&mm 2963 <&mmcc MDSS_PCLK1_CLK>, 2964 <&mm 2964 <&mmcc MDSS_ESC1_CLK>, 2965 <&mm 2965 <&mmcc MDSS_AHB_CLK>, 2966 <&mm 2966 <&mmcc MDSS_AXI_CLK>; 2967 clock-names = 2967 clock-names = "byte", 2968 2968 "byte_intf", 2969 2969 "pixel", 2970 2970 "core", 2971 2971 "iface", 2972 2972 "bus"; 2973 assigned-cloc 2973 assigned-clocks = <&mmcc BYTE1_CLK_SRC>, 2974 2974 <&mmcc PCLK1_CLK_SRC>; 2975 assigned-cloc 2975 assigned-clock-parents = <&mdss_dsi1_phy 0>, 2976 2976 <&mdss_dsi1_phy 1>; 2977 2977 2978 operating-poi 2978 operating-points-v2 = <&dsi_opp_table>; 2979 power-domains 2979 power-domains = <&rpmpd MSM8998_VDDCX>; 2980 2980 2981 phys = <&mdss 2981 phys = <&mdss_dsi1_phy>; 2982 phy-names = " 2982 phy-names = "dsi"; 2983 2983 2984 #address-cell 2984 #address-cells = <1>; 2985 #size-cells = 2985 #size-cells = <0>; 2986 2986 2987 status = "dis 2987 status = "disabled"; 2988 2988 2989 ports { 2989 ports { 2990 #addr 2990 #address-cells = <1>; 2991 #size 2991 #size-cells = <0>; 2992 2992 2993 port@ 2993 port@0 { 2994 2994 reg = <0>; 2995 2995 2996 2996 mdss_dsi1_in: endpoint { 2997 2997 remote-endpoint = <&dpu_intf2_out>; 2998 2998 }; 2999 }; 2999 }; 3000 3000 3001 port@ 3001 port@1 { 3002 3002 reg = <1>; 3003 3003 3004 3004 mdss_dsi1_out: endpoint { 3005 3005 }; 3006 }; 3006 }; 3007 }; 3007 }; 3008 }; 3008 }; 3009 3009 3010 mdss_dsi1_phy: phy@c9 3010 mdss_dsi1_phy: phy@c996400 { 3011 compatible = 3011 compatible = "qcom,dsi-phy-10nm-8998"; 3012 reg = <0x0c99 3012 reg = <0x0c996400 0x200>, 3013 <0x0c99 3013 <0x0c996600 0x280>, 3014 <0x0c99 3014 <0x0c996a00 0x10e>; 3015 reg-names = " 3015 reg-names = "dsi_phy", 3016 " 3016 "dsi_phy_lane", 3017 " 3017 "dsi_pll"; 3018 3018 3019 clocks = <&mm 3019 clocks = <&mmcc MDSS_AHB_CLK>, 3020 <&rp 3020 <&rpmcc RPM_SMD_XO_CLK_SRC>; 3021 clock-names = 3021 clock-names = "iface", 3022 3022 "ref"; 3023 3023 3024 #clock-cells 3024 #clock-cells = <1>; 3025 #phy-cells = 3025 #phy-cells = <0>; 3026 3026 3027 status = "dis 3027 status = "disabled"; 3028 }; 3028 }; 3029 }; 3029 }; 3030 3030 3031 venus: video-codec@cc00000 { 3031 venus: video-codec@cc00000 { 3032 compatible = "qcom,ms 3032 compatible = "qcom,msm8998-venus"; 3033 reg = <0x0cc00000 0xf 3033 reg = <0x0cc00000 0xff000>; 3034 interrupts = <GIC_SPI 3034 interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>; 3035 power-domains = <&mmc 3035 power-domains = <&mmcc VIDEO_TOP_GDSC>; 3036 clocks = <&mmcc VIDEO 3036 clocks = <&mmcc VIDEO_CORE_CLK>, 3037 <&mmcc VIDEO 3037 <&mmcc VIDEO_AHB_CLK>, 3038 <&mmcc VIDEO 3038 <&mmcc VIDEO_AXI_CLK>, 3039 <&mmcc VIDEO 3039 <&mmcc VIDEO_MAXI_CLK>; 3040 clock-names = "core", 3040 clock-names = "core", "iface", "bus", "mbus"; 3041 iommus = <&mmss_smmu 3041 iommus = <&mmss_smmu 0x400>, 3042 <&mmss_smmu 3042 <&mmss_smmu 0x401>, 3043 <&mmss_smmu 3043 <&mmss_smmu 0x40a>, 3044 <&mmss_smmu 3044 <&mmss_smmu 0x407>, 3045 <&mmss_smmu 3045 <&mmss_smmu 0x40e>, 3046 <&mmss_smmu 3046 <&mmss_smmu 0x40f>, 3047 <&mmss_smmu 3047 <&mmss_smmu 0x408>, 3048 <&mmss_smmu 3048 <&mmss_smmu 0x409>, 3049 <&mmss_smmu 3049 <&mmss_smmu 0x40b>, 3050 <&mmss_smmu 3050 <&mmss_smmu 0x40c>, 3051 <&mmss_smmu 3051 <&mmss_smmu 0x40d>, 3052 <&mmss_smmu 3052 <&mmss_smmu 0x410>, 3053 <&mmss_smmu 3053 <&mmss_smmu 0x421>, 3054 <&mmss_smmu 3054 <&mmss_smmu 0x428>, 3055 <&mmss_smmu 3055 <&mmss_smmu 0x429>, 3056 <&mmss_smmu 3056 <&mmss_smmu 0x42b>, 3057 <&mmss_smmu 3057 <&mmss_smmu 0x42c>, 3058 <&mmss_smmu 3058 <&mmss_smmu 0x42d>, 3059 <&mmss_smmu 3059 <&mmss_smmu 0x411>, 3060 <&mmss_smmu 3060 <&mmss_smmu 0x431>; 3061 memory-region = <&ven 3061 memory-region = <&venus_mem>; 3062 status = "disabled"; 3062 status = "disabled"; 3063 3063 3064 video-decoder { 3064 video-decoder { 3065 compatible = 3065 compatible = "venus-decoder"; 3066 clocks = <&mm 3066 clocks = <&mmcc VIDEO_SUBCORE0_CLK>; 3067 clock-names = 3067 clock-names = "core"; 3068 power-domains 3068 power-domains = <&mmcc VIDEO_SUBCORE0_GDSC>; 3069 }; 3069 }; 3070 3070 3071 video-encoder { 3071 video-encoder { 3072 compatible = 3072 compatible = "venus-encoder"; 3073 clocks = <&mm 3073 clocks = <&mmcc VIDEO_SUBCORE1_CLK>; 3074 clock-names = 3074 clock-names = "core"; 3075 power-domains 3075 power-domains = <&mmcc VIDEO_SUBCORE1_GDSC>; 3076 }; 3076 }; 3077 }; 3077 }; 3078 3078 3079 mmss_smmu: iommu@cd00000 { 3079 mmss_smmu: iommu@cd00000 { 3080 compatible = "qcom,ms 3080 compatible = "qcom,msm8998-smmu-v2", "qcom,smmu-v2"; 3081 reg = <0x0cd00000 0x4 3081 reg = <0x0cd00000 0x40000>; 3082 #iommu-cells = <1>; 3082 #iommu-cells = <1>; 3083 3083 3084 clocks = <&mmcc MNOC_ 3084 clocks = <&mmcc MNOC_AHB_CLK>, 3085 <&mmcc BIMC_ 3085 <&mmcc BIMC_SMMU_AHB_CLK>, 3086 <&mmcc BIMC_ 3086 <&mmcc BIMC_SMMU_AXI_CLK>; 3087 clock-names = "iface- 3087 clock-names = "iface-mm", 3088 "iface- 3088 "iface-smmu", 3089 "bus-sm 3089 "bus-smmu"; 3090 3090 3091 #global-interrupts = 3091 #global-interrupts = <0>; 3092 interrupts = 3092 interrupts = 3093 <GIC_SPI 263 3093 <GIC_SPI 263 IRQ_TYPE_LEVEL_HIGH>, 3094 <GIC_SPI 266 3094 <GIC_SPI 266 IRQ_TYPE_LEVEL_HIGH>, 3095 <GIC_SPI 267 3095 <GIC_SPI 267 IRQ_TYPE_LEVEL_HIGH>, 3096 <GIC_SPI 268 3096 <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>, 3097 <GIC_SPI 244 3097 <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>, 3098 <GIC_SPI 245 3098 <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>, 3099 <GIC_SPI 247 3099 <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>, 3100 <GIC_SPI 248 3100 <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>, 3101 <GIC_SPI 249 3101 <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>, 3102 <GIC_SPI 250 3102 <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>, 3103 <GIC_SPI 251 3103 <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, 3104 <GIC_SPI 252 3104 <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, 3105 <GIC_SPI 253 3105 <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>, 3106 <GIC_SPI 254 3106 <GIC_SPI 254 IRQ_TYPE_LEVEL_HIGH>, 3107 <GIC_SPI 255 3107 <GIC_SPI 255 IRQ_TYPE_LEVEL_HIGH>, 3108 <GIC_SPI 256 3108 <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>, 3109 <GIC_SPI 260 3109 <GIC_SPI 260 IRQ_TYPE_LEVEL_HIGH>, 3110 <GIC_SPI 261 3110 <GIC_SPI 261 IRQ_TYPE_LEVEL_HIGH>, 3111 <GIC_SPI 262 3111 <GIC_SPI 262 IRQ_TYPE_LEVEL_HIGH>, 3112 <GIC_SPI 272 3112 <GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>; 3113 3113 3114 power-domains = <&mmc 3114 power-domains = <&mmcc BIMC_SMMU_GDSC>; 3115 }; 3115 }; 3116 3116 3117 remoteproc_adsp: remoteproc@1 3117 remoteproc_adsp: remoteproc@17300000 { 3118 compatible = "qcom,ms 3118 compatible = "qcom,msm8998-adsp-pas"; 3119 reg = <0x17300000 0x4 3119 reg = <0x17300000 0x4040>; 3120 3120 3121 interrupts-extended = 3121 interrupts-extended = <&intc GIC_SPI 162 IRQ_TYPE_EDGE_RISING>, 3122 3122 <&adsp_smp2p_in 0 IRQ_TYPE_EDGE_RISING>, 3123 3123 <&adsp_smp2p_in 1 IRQ_TYPE_EDGE_RISING>, 3124 3124 <&adsp_smp2p_in 2 IRQ_TYPE_EDGE_RISING>, 3125 3125 <&adsp_smp2p_in 3 IRQ_TYPE_EDGE_RISING>; 3126 interrupt-names = "wd 3126 interrupt-names = "wdog", "fatal", "ready", 3127 "ha 3127 "handover", "stop-ack"; 3128 3128 3129 clocks = <&rpmcc RPM_ 3129 clocks = <&rpmcc RPM_SMD_XO_CLK_SRC>; 3130 clock-names = "xo"; 3130 clock-names = "xo"; 3131 3131 3132 memory-region = <&ads 3132 memory-region = <&adsp_mem>; 3133 3133 3134 qcom,smem-states = <& 3134 qcom,smem-states = <&adsp_smp2p_out 0>; 3135 qcom,smem-state-names 3135 qcom,smem-state-names = "stop"; 3136 3136 3137 power-domains = <&rpm 3137 power-domains = <&rpmpd MSM8998_VDDCX>; 3138 power-domain-names = 3138 power-domain-names = "cx"; 3139 3139 3140 status = "disabled"; 3140 status = "disabled"; 3141 3141 3142 glink-edge { 3142 glink-edge { 3143 interrupts = 3143 interrupts = <GIC_SPI 157 IRQ_TYPE_EDGE_RISING>; 3144 label = "lpas 3144 label = "lpass"; 3145 qcom,remote-p 3145 qcom,remote-pid = <2>; 3146 mboxes = <&ap 3146 mboxes = <&apcs_glb 9>; 3147 }; 3147 }; 3148 }; 3148 }; 3149 3149 3150 apcs_glb: mailbox@17911000 { 3150 apcs_glb: mailbox@17911000 { 3151 compatible = "qcom,ms 3151 compatible = "qcom,msm8998-apcs-hmss-global", 3152 "qcom,ms 3152 "qcom,msm8994-apcs-kpss-global"; 3153 reg = <0x17911000 0x1 3153 reg = <0x17911000 0x1000>; 3154 3154 3155 #mbox-cells = <1>; 3155 #mbox-cells = <1>; 3156 }; 3156 }; 3157 3157 3158 timer@17920000 { 3158 timer@17920000 { 3159 #address-cells = <1>; 3159 #address-cells = <1>; 3160 #size-cells = <1>; 3160 #size-cells = <1>; 3161 ranges; 3161 ranges; 3162 compatible = "arm,arm 3162 compatible = "arm,armv7-timer-mem"; 3163 reg = <0x17920000 0x1 3163 reg = <0x17920000 0x1000>; 3164 3164 3165 frame@17921000 { 3165 frame@17921000 { 3166 frame-number 3166 frame-number = <0>; 3167 interrupts = 3167 interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>, 3168 3168 <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 3169 reg = <0x1792 3169 reg = <0x17921000 0x1000>, 3170 <0x1792 3170 <0x17922000 0x1000>; 3171 }; 3171 }; 3172 3172 3173 frame@17923000 { 3173 frame@17923000 { 3174 frame-number 3174 frame-number = <1>; 3175 interrupts = 3175 interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 3176 reg = <0x1792 3176 reg = <0x17923000 0x1000>; 3177 status = "dis 3177 status = "disabled"; 3178 }; 3178 }; 3179 3179 3180 frame@17924000 { 3180 frame@17924000 { 3181 frame-number 3181 frame-number = <2>; 3182 interrupts = 3182 interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 3183 reg = <0x1792 3183 reg = <0x17924000 0x1000>; 3184 status = "dis 3184 status = "disabled"; 3185 }; 3185 }; 3186 3186 3187 frame@17925000 { 3187 frame@17925000 { 3188 frame-number 3188 frame-number = <3>; 3189 interrupts = 3189 interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 3190 reg = <0x1792 3190 reg = <0x17925000 0x1000>; 3191 status = "dis 3191 status = "disabled"; 3192 }; 3192 }; 3193 3193 3194 frame@17926000 { 3194 frame@17926000 { 3195 frame-number 3195 frame-number = <4>; 3196 interrupts = 3196 interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 3197 reg = <0x1792 3197 reg = <0x17926000 0x1000>; 3198 status = "dis 3198 status = "disabled"; 3199 }; 3199 }; 3200 3200 3201 frame@17927000 { 3201 frame@17927000 { 3202 frame-number 3202 frame-number = <5>; 3203 interrupts = 3203 interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 3204 reg = <0x1792 3204 reg = <0x17927000 0x1000>; 3205 status = "dis 3205 status = "disabled"; 3206 }; 3206 }; 3207 3207 3208 frame@17928000 { 3208 frame@17928000 { 3209 frame-number 3209 frame-number = <6>; 3210 interrupts = 3210 interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 3211 reg = <0x1792 3211 reg = <0x17928000 0x1000>; 3212 status = "dis 3212 status = "disabled"; 3213 }; 3213 }; 3214 }; 3214 }; 3215 3215 3216 intc: interrupt-controller@17 3216 intc: interrupt-controller@17a00000 { 3217 compatible = "arm,gic 3217 compatible = "arm,gic-v3"; 3218 reg = <0x17a00000 0x1 3218 reg = <0x17a00000 0x10000>, /* GICD */ 3219 <0x17b00000 0x1 3219 <0x17b00000 0x100000>; /* GICR * 8 */ 3220 #interrupt-cells = <3 3220 #interrupt-cells = <3>; 3221 #address-cells = <1>; 3221 #address-cells = <1>; 3222 #size-cells = <1>; 3222 #size-cells = <1>; 3223 ranges; 3223 ranges; 3224 interrupt-controller; 3224 interrupt-controller; 3225 #redistributor-region 3225 #redistributor-regions = <1>; 3226 redistributor-stride 3226 redistributor-stride = <0x0 0x20000>; 3227 interrupts = <GIC_PPI 3227 interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 3228 }; 3228 }; 3229 3229 3230 wifi: wifi@18800000 { 3230 wifi: wifi@18800000 { 3231 compatible = "qcom,wc 3231 compatible = "qcom,wcn3990-wifi"; 3232 status = "disabled"; 3232 status = "disabled"; 3233 reg = <0x18800000 0x8 3233 reg = <0x18800000 0x800000>; 3234 reg-names = "membase" 3234 reg-names = "membase"; 3235 memory-region = <&wla 3235 memory-region = <&wlan_msa_mem>; 3236 clocks = <&rpmcc RPM_ 3236 clocks = <&rpmcc RPM_SMD_RF_CLK2_PIN>; 3237 clock-names = "cxo_re 3237 clock-names = "cxo_ref_clk_pin"; 3238 interrupts = 3238 interrupts = 3239 <GIC_SPI 413 3239 <GIC_SPI 413 IRQ_TYPE_LEVEL_HIGH>, 3240 <GIC_SPI 414 3240 <GIC_SPI 414 IRQ_TYPE_LEVEL_HIGH>, 3241 <GIC_SPI 415 3241 <GIC_SPI 415 IRQ_TYPE_LEVEL_HIGH>, 3242 <GIC_SPI 416 3242 <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>, 3243 <GIC_SPI 417 3243 <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>, 3244 <GIC_SPI 418 3244 <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>, 3245 <GIC_SPI 420 3245 <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 3246 <GIC_SPI 421 3246 <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 3247 <GIC_SPI 422 3247 <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 3248 <GIC_SPI 423 3248 <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 3249 <GIC_SPI 424 3249 <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 3250 <GIC_SPI 425 3250 <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>; 3251 iommus = <&anoc2_smmu 3251 iommus = <&anoc2_smmu 0x1900>, 3252 <&anoc2_smmu 3252 <&anoc2_smmu 0x1901>; 3253 qcom,snoc-host-cap-8b 3253 qcom,snoc-host-cap-8bit-quirk; 3254 qcom,no-msa-ready-ind 3254 qcom,no-msa-ready-indicator; 3255 }; 3255 }; 3256 }; 3256 }; 3257 }; 3257 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.