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