1// SPDX-License-Identifier: GPL-2.0 2/* 3 * dts file for Hisilicon Hi3660 SoC 4 * 5 * Copyright (C) 2016, HiSilicon Ltd. 6 */ 7 8#include <dt-bindings/interrupt-controller/arm-gic.h> 9#include <dt-bindings/clock/hi3660-clock.h> 10#include <dt-bindings/thermal/thermal.h> 11 12/ { 13 compatible = "hisilicon,hi3660"; 14 interrupt-parent = <&gic>; 15 #address-cells = <2>; 16 #size-cells = <2>; 17 18 psci { 19 compatible = "arm,psci-0.2"; 20 method = "smc"; 21 }; 22 23 cpus { 24 #address-cells = <2>; 25 #size-cells = <0>; 26 27 cpu-map { 28 cluster0 { 29 core0 { 30 cpu = <&cpu0>; 31 }; 32 core1 { 33 cpu = <&cpu1>; 34 }; 35 core2 { 36 cpu = <&cpu2>; 37 }; 38 core3 { 39 cpu = <&cpu3>; 40 }; 41 }; 42 cluster1 { 43 core0 { 44 cpu = <&cpu4>; 45 }; 46 core1 { 47 cpu = <&cpu5>; 48 }; 49 core2 { 50 cpu = <&cpu6>; 51 }; 52 core3 { 53 cpu = <&cpu7>; 54 }; 55 }; 56 }; 57 58 cpu0: cpu@0 { 59 compatible = "arm,cortex-a53"; 60 device_type = "cpu"; 61 reg = <0x0 0x0>; 62 enable-method = "psci"; 63 next-level-cache = <&A53_L2>; 64 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 65 capacity-dmips-mhz = <592>; 66 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 67 operating-points-v2 = <&cluster0_opp>; 68 #cooling-cells = <2>; 69 dynamic-power-coefficient = <110>; 70 }; 71 72 cpu1: cpu@1 { 73 compatible = "arm,cortex-a53"; 74 device_type = "cpu"; 75 reg = <0x0 0x1>; 76 enable-method = "psci"; 77 next-level-cache = <&A53_L2>; 78 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 79 capacity-dmips-mhz = <592>; 80 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 81 operating-points-v2 = <&cluster0_opp>; 82 #cooling-cells = <2>; 83 }; 84 85 cpu2: cpu@2 { 86 compatible = "arm,cortex-a53"; 87 device_type = "cpu"; 88 reg = <0x0 0x2>; 89 enable-method = "psci"; 90 next-level-cache = <&A53_L2>; 91 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 92 capacity-dmips-mhz = <592>; 93 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 94 operating-points-v2 = <&cluster0_opp>; 95 #cooling-cells = <2>; 96 }; 97 98 cpu3: cpu@3 { 99 compatible = "arm,cortex-a53"; 100 device_type = "cpu"; 101 reg = <0x0 0x3>; 102 enable-method = "psci"; 103 next-level-cache = <&A53_L2>; 104 cpu-idle-states = <&CPU_SLEEP_0 &CLUSTER_SLEEP_0>; 105 capacity-dmips-mhz = <592>; 106 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER0>; 107 operating-points-v2 = <&cluster0_opp>; 108 #cooling-cells = <2>; 109 }; 110 111 cpu4: cpu@100 { 112 compatible = "arm,cortex-a73"; 113 device_type = "cpu"; 114 reg = <0x0 0x100>; 115 enable-method = "psci"; 116 next-level-cache = <&A73_L2>; 117 cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 118 capacity-dmips-mhz = <1024>; 119 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 120 operating-points-v2 = <&cluster1_opp>; 121 #cooling-cells = <2>; 122 dynamic-power-coefficient = <550>; 123 }; 124 125 cpu5: cpu@101 { 126 compatible = "arm,cortex-a73"; 127 device_type = "cpu"; 128 reg = <0x0 0x101>; 129 enable-method = "psci"; 130 next-level-cache = <&A73_L2>; 131 cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 132 capacity-dmips-mhz = <1024>; 133 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 134 operating-points-v2 = <&cluster1_opp>; 135 #cooling-cells = <2>; 136 }; 137 138 cpu6: cpu@102 { 139 compatible = "arm,cortex-a73"; 140 device_type = "cpu"; 141 reg = <0x0 0x102>; 142 enable-method = "psci"; 143 next-level-cache = <&A73_L2>; 144 cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 145 capacity-dmips-mhz = <1024>; 146 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 147 operating-points-v2 = <&cluster1_opp>; 148 #cooling-cells = <2>; 149 }; 150 151 cpu7: cpu@103 { 152 compatible = "arm,cortex-a73"; 153 device_type = "cpu"; 154 reg = <0x0 0x103>; 155 enable-method = "psci"; 156 next-level-cache = <&A73_L2>; 157 cpu-idle-states = <&CPU_SLEEP_1 &CLUSTER_SLEEP_1>; 158 capacity-dmips-mhz = <1024>; 159 clocks = <&stub_clock HI3660_CLK_STUB_CLUSTER1>; 160 operating-points-v2 = <&cluster1_opp>; 161 #cooling-cells = <2>; 162 }; 163 164 idle-states { 165 entry-method = "psci"; 166 167 CPU_SLEEP_0: cpu-sleep-0 { 168 compatible = "arm,idle-state"; 169 local-timer-stop; 170 arm,psci-suspend-param = <0x0010000>; 171 entry-latency-us = <400>; 172 exit-latency-us = <650>; 173 min-residency-us = <1500>; 174 }; 175 CLUSTER_SLEEP_0: cluster-sleep-0 { 176 compatible = "arm,idle-state"; 177 local-timer-stop; 178 arm,psci-suspend-param = <0x1010000>; 179 entry-latency-us = <500>; 180 exit-latency-us = <1600>; 181 min-residency-us = <3500>; 182 }; 183 184 185 CPU_SLEEP_1: cpu-sleep-1 { 186 compatible = "arm,idle-state"; 187 local-timer-stop; 188 arm,psci-suspend-param = <0x0010000>; 189 entry-latency-us = <400>; 190 exit-latency-us = <550>; 191 min-residency-us = <1500>; 192 }; 193 194 CLUSTER_SLEEP_1: cluster-sleep-1 { 195 compatible = "arm,idle-state"; 196 local-timer-stop; 197 arm,psci-suspend-param = <0x1010000>; 198 entry-latency-us = <800>; 199 exit-latency-us = <2900>; 200 min-residency-us = <3500>; 201 }; 202 }; 203 204 A53_L2: l2-cache0 { 205 compatible = "cache"; 206 cache-level = <2>; 207 cache-unified; 208 }; 209 210 A73_L2: l2-cache1 { 211 compatible = "cache"; 212 cache-level = <2>; 213 cache-unified; 214 }; 215 }; 216 217 cluster0_opp: opp-table-0 { 218 compatible = "operating-points-v2"; 219 opp-shared; 220 221 opp00 { 222 opp-hz = /bits/ 64 <533000000>; 223 opp-microvolt = <700000>; 224 clock-latency-ns = <300000>; 225 }; 226 227 opp01 { 228 opp-hz = /bits/ 64 <999000000>; 229 opp-microvolt = <800000>; 230 clock-latency-ns = <300000>; 231 }; 232 233 opp02 { 234 opp-hz = /bits/ 64 <1402000000>; 235 opp-microvolt = <900000>; 236 clock-latency-ns = <300000>; 237 }; 238 239 opp03 { 240 opp-hz = /bits/ 64 <1709000000>; 241 opp-microvolt = <1000000>; 242 clock-latency-ns = <300000>; 243 }; 244 245 opp04 { 246 opp-hz = /bits/ 64 <1844000000>; 247 opp-microvolt = <1100000>; 248 clock-latency-ns = <300000>; 249 }; 250 }; 251 252 cluster1_opp: opp-table-1 { 253 compatible = "operating-points-v2"; 254 opp-shared; 255 256 opp10 { 257 opp-hz = /bits/ 64 <903000000>; 258 opp-microvolt = <700000>; 259 clock-latency-ns = <300000>; 260 }; 261 262 opp11 { 263 opp-hz = /bits/ 64 <1421000000>; 264 opp-microvolt = <800000>; 265 clock-latency-ns = <300000>; 266 }; 267 268 opp12 { 269 opp-hz = /bits/ 64 <1805000000>; 270 opp-microvolt = <900000>; 271 clock-latency-ns = <300000>; 272 }; 273 274 opp13 { 275 opp-hz = /bits/ 64 <2112000000>; 276 opp-microvolt = <1000000>; 277 clock-latency-ns = <300000>; 278 }; 279 280 opp14 { 281 opp-hz = /bits/ 64 <2362000000>; 282 opp-microvolt = <1100000>; 283 clock-latency-ns = <300000>; 284 }; 285 }; 286 287 gic: interrupt-controller@e82b0000 { 288 compatible = "arm,gic-400"; 289 reg = <0x0 0xe82b1000 0 0x1000>, /* GICD */ 290 <0x0 0xe82b2000 0 0x2000>, /* GICC */ 291 <0x0 0xe82b4000 0 0x2000>, /* GICH */ 292 <0x0 0xe82b6000 0 0x2000>; /* GICV */ 293 #address-cells = <0>; 294 #interrupt-cells = <3>; 295 interrupt-controller; 296 interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(8) | 297 IRQ_TYPE_LEVEL_HIGH)>; 298 }; 299 300 a53-pmu { 301 compatible = "arm,cortex-a53-pmu"; 302 interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, 303 <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>, 304 <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>, 305 <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 306 interrupt-affinity = <&cpu0>, 307 <&cpu1>, 308 <&cpu2>, 309 <&cpu3>; 310 }; 311 312 a73-pmu { 313 compatible = "arm,cortex-a73-pmu"; 314 interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>, 315 <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>, 316 <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>, 317 <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 318 interrupt-affinity = <&cpu4>, 319 <&cpu5>, 320 <&cpu6>, 321 <&cpu7>; 322 }; 323 324 timer { 325 compatible = "arm,armv8-timer"; 326 interrupt-parent = <&gic>; 327 interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(8) | 328 IRQ_TYPE_LEVEL_LOW)>, 329 <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(8) | 330 IRQ_TYPE_LEVEL_LOW)>, 331 <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(8) | 332 IRQ_TYPE_LEVEL_LOW)>, 333 <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(8) | 334 IRQ_TYPE_LEVEL_LOW)>; 335 }; 336 337 soc { 338 compatible = "simple-bus"; 339 #address-cells = <2>; 340 #size-cells = <2>; 341 ranges; 342 343 crg_ctrl: crg_ctrl@fff35000 { 344 compatible = "hisilicon,hi3660-crgctrl", "syscon"; 345 reg = <0x0 0xfff35000 0x0 0x1000>; 346 #clock-cells = <1>; 347 }; 348 349 crg_rst: crg_rst_controller { 350 compatible = "hisilicon,hi3660-reset"; 351 #reset-cells = <2>; 352 hisi,rst-syscon = <&crg_ctrl>; 353 }; 354 355 356 pctrl: pctrl@e8a09000 { 357 compatible = "hisilicon,hi3660-pctrl", "syscon"; 358 reg = <0x0 0xe8a09000 0x0 0x2000>; 359 #clock-cells = <1>; 360 }; 361 362 pmuctrl: crg_ctrl@fff34000 { 363 compatible = "hisilicon,hi3660-pmuctrl", "syscon"; 364 reg = <0x0 0xfff34000 0x0 0x1000>; 365 #clock-cells = <1>; 366 }; 367 368 sctrl: sctrl@fff0a000 { 369 compatible = "hisilicon,hi3660-sctrl", "syscon"; 370 reg = <0x0 0xfff0a000 0x0 0x1000>; 371 #clock-cells = <1>; 372 }; 373 374 iomcu: iomcu@ffd7e000 { 375 compatible = "hisilicon,hi3660-iomcu", "syscon"; 376 reg = <0x0 0xffd7e000 0x0 0x1000>; 377 #clock-cells = <1>; 378 379 }; 380 381 iomcu_rst: reset { 382 compatible = "hisilicon,hi3660-reset"; 383 hisi,rst-syscon = <&iomcu>; 384 #reset-cells = <2>; 385 }; 386 387 mailbox: mailbox@e896b000 { 388 compatible = "hisilicon,hi3660-mbox"; 389 reg = <0x0 0xe896b000 0x0 0x1000>; 390 interrupts = <GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>, 391 <GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>; 392 #mbox-cells = <3>; 393 }; 394 395 stub_clock: stub_clock@e896b500 { 396 compatible = "hisilicon,hi3660-stub-clk"; 397 reg = <0x0 0xe896b500 0x0 0x0100>; 398 #clock-cells = <1>; 399 mboxes = <&mailbox 13 3 0>; 400 }; 401 402 dual_timer0: timer@fff14000 { 403 compatible = "arm,sp804", "arm,primecell"; 404 reg = <0x0 0xfff14000 0x0 0x1000>; 405 interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 406 <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>; 407 clocks = <&crg_ctrl HI3660_OSC32K>, 408 <&crg_ctrl HI3660_OSC32K>, 409 <&crg_ctrl HI3660_OSC32K>; 410 clock-names = "timer1", "timer2", "apb_pclk"; 411 }; 412 413 i2c0: i2c@ffd71000 { 414 compatible = "snps,designware-i2c"; 415 reg = <0x0 0xffd71000 0x0 0x1000>; 416 interrupts = <GIC_SPI 118 IRQ_TYPE_LEVEL_HIGH>; 417 #address-cells = <1>; 418 #size-cells = <0>; 419 clock-frequency = <400000>; 420 clocks = <&crg_ctrl HI3660_CLK_GATE_I2C0>; 421 resets = <&iomcu_rst 0x20 3>; 422 pinctrl-names = "default"; 423 pinctrl-0 = <&i2c0_pmx_func &i2c0_cfg_func>; 424 status = "disabled"; 425 }; 426 427 i2c1: i2c@ffd72000 { 428 compatible = "snps,designware-i2c"; 429 reg = <0x0 0xffd72000 0x0 0x1000>; 430 interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH>; 431 #address-cells = <1>; 432 #size-cells = <0>; 433 clock-frequency = <400000>; 434 clocks = <&crg_ctrl HI3660_CLK_GATE_I2C1>; 435 resets = <&iomcu_rst 0x20 4>; 436 pinctrl-names = "default"; 437 pinctrl-0 = <&i2c1_pmx_func &i2c1_cfg_func>; 438 status = "disabled"; 439 }; 440 441 i2c3: i2c@fdf0c000 { 442 compatible = "snps,designware-i2c"; 443 reg = <0x0 0xfdf0c000 0x0 0x1000>; 444 interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>; 445 #address-cells = <1>; 446 #size-cells = <0>; 447 clock-frequency = <400000>; 448 clocks = <&crg_ctrl HI3660_CLK_GATE_I2C3>; 449 resets = <&crg_rst 0x78 7>; 450 pinctrl-names = "default"; 451 pinctrl-0 = <&i2c3_pmx_func &i2c3_cfg_func>; 452 status = "disabled"; 453 }; 454 455 i2c7: i2c@fdf0b000 { 456 compatible = "snps,designware-i2c"; 457 reg = <0x0 0xfdf0b000 0x0 0x1000>; 458 interrupts = <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>; 459 #address-cells = <1>; 460 #size-cells = <0>; 461 clock-frequency = <400000>; 462 clocks = <&crg_ctrl HI3660_CLK_GATE_I2C7>; 463 resets = <&crg_rst 0x60 14>; 464 pinctrl-names = "default"; 465 pinctrl-0 = <&i2c7_pmx_func &i2c7_cfg_func>; 466 status = "disabled"; 467 }; 468 469 uart0: serial@fdf02000 { 470 compatible = "arm,pl011", "arm,primecell"; 471 reg = <0x0 0xfdf02000 0x0 0x1000>; 472 interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 473 clocks = <&crg_ctrl HI3660_CLK_MUX_UART0>, 474 <&crg_ctrl HI3660_PCLK>; 475 clock-names = "uartclk", "apb_pclk"; 476 pinctrl-names = "default"; 477 pinctrl-0 = <&uart0_pmx_func &uart0_cfg_func>; 478 status = "disabled"; 479 }; 480 481 uart1: serial@fdf00000 { 482 compatible = "arm,pl011", "arm,primecell"; 483 reg = <0x0 0xfdf00000 0x0 0x1000>; 484 interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 485 dma-names = "rx", "tx"; 486 dmas = <&dma0 2 &dma0 3>; 487 clocks = <&crg_ctrl HI3660_CLK_GATE_UART1>, 488 <&crg_ctrl HI3660_CLK_GATE_UART1>; 489 clock-names = "uartclk", "apb_pclk"; 490 pinctrl-names = "default"; 491 pinctrl-0 = <&uart1_pmx_func &uart1_cfg_func>; 492 status = "disabled"; 493 }; 494 495 uart2: serial@fdf03000 { 496 compatible = "arm,pl011", "arm,primecell"; 497 reg = <0x0 0xfdf03000 0x0 0x1000>; 498 interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; 499 dma-names = "rx", "tx"; 500 dmas = <&dma0 4 &dma0 5>; 501 clocks = <&crg_ctrl HI3660_CLK_GATE_UART2>, 502 <&crg_ctrl HI3660_PCLK>; 503 clock-names = "uartclk", "apb_pclk"; 504 pinctrl-names = "default"; 505 pinctrl-0 = <&uart2_pmx_func &uart2_cfg_func>; 506 status = "disabled"; 507 }; 508 509 uart3: serial@ffd74000 { 510 compatible = "arm,pl011", "arm,primecell"; 511 reg = <0x0 0xffd74000 0x0 0x1000>; 512 interrupts = <GIC_SPI 114 IRQ_TYPE_LEVEL_HIGH>; 513 clocks = <&crg_ctrl HI3660_FACTOR_UART3>, 514 <&crg_ctrl HI3660_PCLK>; 515 clock-names = "uartclk", "apb_pclk"; 516 pinctrl-names = "default"; 517 pinctrl-0 = <&uart3_pmx_func &uart3_cfg_func>; 518 status = "disabled"; 519 }; 520 521 uart4: serial@fdf01000 { 522 compatible = "arm,pl011", "arm,primecell"; 523 reg = <0x0 0xfdf01000 0x0 0x1000>; 524 interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; 525 dma-names = "rx", "tx"; 526 dmas = <&dma0 6 &dma0 7>; 527 clocks = <&crg_ctrl HI3660_CLK_GATE_UART4>, 528 <&crg_ctrl HI3660_CLK_GATE_UART4>; 529 clock-names = "uartclk", "apb_pclk"; 530 pinctrl-names = "default"; 531 pinctrl-0 = <&uart4_pmx_func &uart4_cfg_func>; 532 status = "disabled"; 533 }; 534 535 uart5: serial@fdf05000 { 536 compatible = "arm,pl011", "arm,primecell"; 537 reg = <0x0 0xfdf05000 0x0 0x1000>; 538 interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; 539 dma-names = "rx", "tx"; 540 dmas = <&dma0 8 &dma0 9>; 541 clocks = <&crg_ctrl HI3660_CLK_GATE_UART5>, 542 <&crg_ctrl HI3660_CLK_GATE_UART5>; 543 clock-names = "uartclk", "apb_pclk"; 544 pinctrl-names = "default"; 545 pinctrl-0 = <&uart5_pmx_func &uart5_cfg_func>; 546 status = "disabled"; 547 }; 548 549 uart6: serial@fff32000 { 550 compatible = "arm,pl011", "arm,primecell"; 551 reg = <0x0 0xfff32000 0x0 0x1000>; 552 interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; 553 clocks = <&crg_ctrl HI3660_CLK_UART6>, 554 <&crg_ctrl HI3660_PCLK>; 555 clock-names = "uartclk", "apb_pclk"; 556 pinctrl-names = "default"; 557 pinctrl-0 = <&uart6_pmx_func &uart6_cfg_func>; 558 status = "disabled"; 559 }; 560 561 dma0: dma@fdf30000 { 562 compatible = "hisilicon,k3-dma-1.0"; 563 reg = <0x0 0xfdf30000 0x0 0x1000>; 564 #dma-cells = <1>; 565 dma-channels = <16>; 566 dma-requests = <32>; 567 dma-channel-mask = <0xfffe>; 568 interrupts = <GIC_SPI 143 IRQ_TYPE_LEVEL_HIGH>; 569 clocks = <&crg_ctrl HI3660_CLK_GATE_DMAC>; 570 dma-no-cci; 571 dma-type = "hi3660_dma"; 572 }; 573 574 asp_dmac: dma-controller@e804b000 { 575 compatible = "hisilicon,hisi-pcm-asp-dma-1.0"; 576 reg = <0x0 0xe804b000 0x0 0x1000>; 577 #dma-cells = <1>; 578 dma-channels = <16>; 579 dma-requests = <32>; 580 interrupts = <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>; 581 interrupt-names = "asp_dma_irq"; 582 }; 583 584 rtc0: rtc@fff04000 { 585 compatible = "arm,pl031", "arm,primecell"; 586 reg = <0x0 0Xfff04000 0x0 0x1000>; 587 interrupts = <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>; 588 clocks = <&crg_ctrl HI3660_PCLK>; 589 clock-names = "apb_pclk"; 590 }; 591 592 gpio0: gpio@e8a0b000 { 593 compatible = "arm,pl061", "arm,primecell"; 594 reg = <0 0xe8a0b000 0 0x1000>; 595 interrupts = <GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>; 596 gpio-controller; 597 #gpio-cells = <2>; 598 gpio-ranges = <&pmx0 1 0 7>; 599 interrupt-controller; 600 #interrupt-cells = <2>; 601 clocks = <&crg_ctrl HI3660_PCLK_GPIO0>; 602 clock-names = "apb_pclk"; 603 }; 604 605 gpio1: gpio@e8a0c000 { 606 compatible = "arm,pl061", "arm,primecell"; 607 reg = <0 0xe8a0c000 0 0x1000>; 608 interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>; 609 gpio-controller; 610 #gpio-cells = <2>; 611 gpio-ranges = <&pmx0 1 7 7>; 612 interrupt-controller; 613 #interrupt-cells = <2>; 614 clocks = <&crg_ctrl HI3660_PCLK_GPIO1>; 615 clock-names = "apb_pclk"; 616 }; 617 618 gpio2: gpio@e8a0d000 { 619 compatible = "arm,pl061", "arm,primecell"; 620 reg = <0 0xe8a0d000 0 0x1000>; 621 interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; 622 gpio-controller; 623 #gpio-cells = <2>; 624 gpio-ranges = <&pmx0 0 14 8>; 625 interrupt-controller; 626 #interrupt-cells = <2>; 627 clocks = <&crg_ctrl HI3660_PCLK_GPIO2>; 628 clock-names = "apb_pclk"; 629 }; 630 631 gpio3: gpio@e8a0e000 { 632 compatible = "arm,pl061", "arm,primecell"; 633 reg = <0 0xe8a0e000 0 0x1000>; 634 interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 635 gpio-controller; 636 #gpio-cells = <2>; 637 gpio-ranges = <&pmx0 0 22 8>; 638 interrupt-controller; 639 #interrupt-cells = <2>; 640 clocks = <&crg_ctrl HI3660_PCLK_GPIO3>; 641 clock-names = "apb_pclk"; 642 }; 643 644 gpio4: gpio@e8a0f000 { 645 compatible = "arm,pl061", "arm,primecell"; 646 reg = <0 0xe8a0f000 0 0x1000>; 647 interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; 648 gpio-controller; 649 #gpio-cells = <2>; 650 gpio-ranges = <&pmx0 0 30 8>; 651 interrupt-controller; 652 #interrupt-cells = <2>; 653 clocks = <&crg_ctrl HI3660_PCLK_GPIO4>; 654 clock-names = "apb_pclk"; 655 }; 656 657 gpio5: gpio@e8a10000 { 658 compatible = "arm,pl061", "arm,primecell"; 659 reg = <0 0xe8a10000 0 0x1000>; 660 interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; 661 gpio-controller; 662 #gpio-cells = <2>; 663 gpio-ranges = <&pmx0 0 38 8>; 664 interrupt-controller; 665 #interrupt-cells = <2>; 666 clocks = <&crg_ctrl HI3660_PCLK_GPIO5>; 667 clock-names = "apb_pclk"; 668 }; 669 670 gpio6: gpio@e8a11000 { 671 compatible = "arm,pl061", "arm,primecell"; 672 reg = <0 0xe8a11000 0 0x1000>; 673 interrupts = <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>; 674 gpio-controller; 675 #gpio-cells = <2>; 676 gpio-ranges = <&pmx0 0 46 8>; 677 interrupt-controller; 678 #interrupt-cells = <2>; 679 clocks = <&crg_ctrl HI3660_PCLK_GPIO6>; 680 clock-names = "apb_pclk"; 681 }; 682 683 gpio7: gpio@e8a12000 { 684 compatible = "arm,pl061", "arm,primecell"; 685 reg = <0 0xe8a12000 0 0x1000>; 686 interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>; 687 gpio-controller; 688 #gpio-cells = <2>; 689 gpio-ranges = <&pmx0 0 54 8>; 690 interrupt-controller; 691 #interrupt-cells = <2>; 692 clocks = <&crg_ctrl HI3660_PCLK_GPIO7>; 693 clock-names = "apb_pclk"; 694 }; 695 696 gpio8: gpio@e8a13000 { 697 compatible = "arm,pl061", "arm,primecell"; 698 reg = <0 0xe8a13000 0 0x1000>; 699 interrupts = <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>; 700 gpio-controller; 701 #gpio-cells = <2>; 702 gpio-ranges = <&pmx0 0 62 8>; 703 interrupt-controller; 704 #interrupt-cells = <2>; 705 clocks = <&crg_ctrl HI3660_PCLK_GPIO8>; 706 clock-names = "apb_pclk"; 707 }; 708 709 gpio9: gpio@e8a14000 { 710 compatible = "arm,pl061", "arm,primecell"; 711 reg = <0 0xe8a14000 0 0x1000>; 712 interrupts = <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>; 713 gpio-controller; 714 #gpio-cells = <2>; 715 gpio-ranges = <&pmx0 0 70 8>; 716 interrupt-controller; 717 #interrupt-cells = <2>; 718 clocks = <&crg_ctrl HI3660_PCLK_GPIO9>; 719 clock-names = "apb_pclk"; 720 }; 721 722 gpio10: gpio@e8a15000 { 723 compatible = "arm,pl061", "arm,primecell"; 724 reg = <0 0xe8a15000 0 0x1000>; 725 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>; 726 gpio-controller; 727 #gpio-cells = <2>; 728 gpio-ranges = <&pmx0 0 78 8>; 729 interrupt-controller; 730 #interrupt-cells = <2>; 731 clocks = <&crg_ctrl HI3660_PCLK_GPIO10>; 732 clock-names = "apb_pclk"; 733 }; 734 735 gpio11: gpio@e8a16000 { 736 compatible = "arm,pl061", "arm,primecell"; 737 reg = <0 0xe8a16000 0 0x1000>; 738 interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>; 739 gpio-controller; 740 #gpio-cells = <2>; 741 gpio-ranges = <&pmx0 0 86 8>; 742 interrupt-controller; 743 #interrupt-cells = <2>; 744 clocks = <&crg_ctrl HI3660_PCLK_GPIO11>; 745 clock-names = "apb_pclk"; 746 }; 747 748 gpio12: gpio@e8a17000 { 749 compatible = "arm,pl061", "arm,primecell"; 750 reg = <0 0xe8a17000 0 0x1000>; 751 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>; 752 gpio-controller; 753 #gpio-cells = <2>; 754 gpio-ranges = <&pmx0 0 94 3 &pmx0 7 101 1>; 755 interrupt-controller; 756 #interrupt-cells = <2>; 757 clocks = <&crg_ctrl HI3660_PCLK_GPIO12>; 758 clock-names = "apb_pclk"; 759 }; 760 761 gpio13: gpio@e8a18000 { 762 compatible = "arm,pl061", "arm,primecell"; 763 reg = <0 0xe8a18000 0 0x1000>; 764 interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; 765 gpio-controller; 766 #gpio-cells = <2>; 767 gpio-ranges = <&pmx0 0 102 8>; 768 interrupt-controller; 769 #interrupt-cells = <2>; 770 clocks = <&crg_ctrl HI3660_PCLK_GPIO13>; 771 clock-names = "apb_pclk"; 772 }; 773 774 gpio14: gpio@e8a19000 { 775 compatible = "arm,pl061", "arm,primecell"; 776 reg = <0 0xe8a19000 0 0x1000>; 777 interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 778 gpio-controller; 779 #gpio-cells = <2>; 780 gpio-ranges = <&pmx0 0 110 8>; 781 interrupt-controller; 782 #interrupt-cells = <2>; 783 clocks = <&crg_ctrl HI3660_PCLK_GPIO14>; 784 clock-names = "apb_pclk"; 785 }; 786 787 gpio15: gpio@e8a1a000 { 788 compatible = "arm,pl061", "arm,primecell"; 789 reg = <0 0xe8a1a000 0 0x1000>; 790 interrupts = <GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; 791 gpio-controller; 792 #gpio-cells = <2>; 793 gpio-ranges = <&pmx0 0 118 6>; 794 interrupt-controller; 795 #interrupt-cells = <2>; 796 clocks = <&crg_ctrl HI3660_PCLK_GPIO15>; 797 clock-names = "apb_pclk"; 798 }; 799 800 gpio16: gpio@e8a1b000 { 801 compatible = "arm,pl061", "arm,primecell"; 802 reg = <0 0xe8a1b000 0 0x1000>; 803 interrupts = <GIC_SPI 100 IRQ_TYPE_LEVEL_HIGH>; 804 gpio-controller; 805 #gpio-cells = <2>; 806 interrupt-controller; 807 #interrupt-cells = <2>; 808 clocks = <&crg_ctrl HI3660_PCLK_GPIO16>; 809 clock-names = "apb_pclk"; 810 }; 811 812 gpio17: gpio@e8a1c000 { 813 compatible = "arm,pl061", "arm,primecell"; 814 reg = <0 0xe8a1c000 0 0x1000>; 815 interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; 816 gpio-controller; 817 #gpio-cells = <2>; 818 interrupt-controller; 819 #interrupt-cells = <2>; 820 clocks = <&crg_ctrl HI3660_PCLK_GPIO17>; 821 clock-names = "apb_pclk"; 822 }; 823 824 gpio18: gpio@ff3b4000 { 825 compatible = "arm,pl061", "arm,primecell"; 826 reg = <0 0xff3b4000 0 0x1000>; 827 interrupts = <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>; 828 gpio-controller; 829 #gpio-cells = <2>; 830 gpio-ranges = <&pmx2 0 0 8>; 831 interrupt-controller; 832 #interrupt-cells = <2>; 833 clocks = <&crg_ctrl HI3660_PCLK_GPIO18>; 834 clock-names = "apb_pclk"; 835 }; 836 837 gpio19: gpio@ff3b5000 { 838 compatible = "arm,pl061", "arm,primecell"; 839 reg = <0 0xff3b5000 0 0x1000>; 840 interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; 841 gpio-controller; 842 #gpio-cells = <2>; 843 gpio-ranges = <&pmx2 0 8 4>; 844 interrupt-controller; 845 #interrupt-cells = <2>; 846 clocks = <&crg_ctrl HI3660_PCLK_GPIO19>; 847 clock-names = "apb_pclk"; 848 }; 849 850 gpio20: gpio@e8a1f000 { 851 compatible = "arm,pl061", "arm,primecell"; 852 reg = <0 0xe8a1f000 0 0x1000>; 853 interrupts = <GIC_SPI 104 IRQ_TYPE_LEVEL_HIGH>; 854 gpio-controller; 855 #gpio-cells = <2>; 856 gpio-ranges = <&pmx1 0 0 6>; 857 interrupt-controller; 858 #interrupt-cells = <2>; 859 clocks = <&crg_ctrl HI3660_PCLK_GPIO20>; 860 clock-names = "apb_pclk"; 861 }; 862 863 gpio21: gpio@e8a20000 { 864 compatible = "arm,pl061", "arm,primecell"; 865 reg = <0 0xe8a20000 0 0x1000>; 866 interrupts = <GIC_SPI 105 IRQ_TYPE_LEVEL_HIGH>; 867 gpio-controller; 868 #gpio-cells = <2>; 869 interrupt-controller; 870 #interrupt-cells = <2>; 871 gpio-ranges = <&pmx3 0 0 6>; 872 clocks = <&crg_ctrl HI3660_PCLK_GPIO21>; 873 clock-names = "apb_pclk"; 874 }; 875 876 gpio22: gpio@fff0b000 { 877 compatible = "arm,pl061", "arm,primecell"; 878 reg = <0 0xfff0b000 0 0x1000>; 879 interrupts = <GIC_SPI 106 IRQ_TYPE_LEVEL_HIGH>; 880 gpio-controller; 881 #gpio-cells = <2>; 882 /* GPIO176 */ 883 gpio-ranges = <&pmx4 2 0 6>; 884 interrupt-controller; 885 #interrupt-cells = <2>; 886 clocks = <&sctrl HI3660_PCLK_AO_GPIO0>; 887 clock-names = "apb_pclk"; 888 }; 889 890 gpio23: gpio@fff0c000 { 891 compatible = "arm,pl061", "arm,primecell"; 892 reg = <0 0xfff0c000 0 0x1000>; 893 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 894 gpio-controller; 895 #gpio-cells = <2>; 896 /* GPIO184 */ 897 gpio-ranges = <&pmx4 0 6 7>; 898 interrupt-controller; 899 #interrupt-cells = <2>; 900 clocks = <&sctrl HI3660_PCLK_AO_GPIO1>; 901 clock-names = "apb_pclk"; 902 }; 903 904 gpio24: gpio@fff0d000 { 905 compatible = "arm,pl061", "arm,primecell"; 906 reg = <0 0xfff0d000 0 0x1000>; 907 interrupts = <GIC_SPI 108 IRQ_TYPE_LEVEL_HIGH>; 908 gpio-controller; 909 #gpio-cells = <2>; 910 /* GPIO192 */ 911 gpio-ranges = <&pmx4 0 13 8>; 912 interrupt-controller; 913 #interrupt-cells = <2>; 914 clocks = <&sctrl HI3660_PCLK_AO_GPIO2>; 915 clock-names = "apb_pclk"; 916 }; 917 918 gpio25: gpio@fff0e000 { 919 compatible = "arm,pl061", "arm,primecell"; 920 reg = <0 0xfff0e000 0 0x1000>; 921 interrupts = <GIC_SPI 109 IRQ_TYPE_LEVEL_HIGH>; 922 gpio-controller; 923 #gpio-cells = <2>; 924 /* GPIO200 */ 925 gpio-ranges = <&pmx4 0 21 4 &pmx4 5 25 3>; 926 interrupt-controller; 927 #interrupt-cells = <2>; 928 clocks = <&sctrl HI3660_PCLK_AO_GPIO3>; 929 clock-names = "apb_pclk"; 930 }; 931 932 gpio26: gpio@fff0f000 { 933 compatible = "arm,pl061", "arm,primecell"; 934 reg = <0 0xfff0f000 0 0x1000>; 935 interrupts = <GIC_SPI 110 IRQ_TYPE_LEVEL_HIGH>; 936 gpio-controller; 937 #gpio-cells = <2>; 938 /* GPIO208 */ 939 gpio-ranges = <&pmx4 0 28 8>; 940 interrupt-controller; 941 #interrupt-cells = <2>; 942 clocks = <&sctrl HI3660_PCLK_AO_GPIO4>; 943 clock-names = "apb_pclk"; 944 }; 945 946 gpio27: gpio@fff10000 { 947 compatible = "arm,pl061", "arm,primecell"; 948 reg = <0 0xfff10000 0 0x1000>; 949 interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_HIGH>; 950 gpio-controller; 951 #gpio-cells = <2>; 952 /* GPIO216 */ 953 gpio-ranges = <&pmx4 0 36 6>; 954 interrupt-controller; 955 #interrupt-cells = <2>; 956 clocks = <&sctrl HI3660_PCLK_AO_GPIO5>; 957 clock-names = "apb_pclk"; 958 }; 959 960 gpio28: gpio@fff1d000 { 961 compatible = "arm,pl061", "arm,primecell"; 962 reg = <0 0xfff1d000 0 0x1000>; 963 interrupts = <GIC_SPI 141 IRQ_TYPE_LEVEL_HIGH>; 964 gpio-controller; 965 #gpio-cells = <2>; 966 interrupt-controller; 967 #interrupt-cells = <2>; 968 clocks = <&sctrl HI3660_PCLK_AO_GPIO6>; 969 clock-names = "apb_pclk"; 970 }; 971 972 spi2: spi@ffd68000 { 973 compatible = "arm,pl022", "arm,primecell"; 974 reg = <0x0 0xffd68000 0x0 0x1000>; 975 #address-cells = <1>; 976 #size-cells = <0>; 977 interrupts = <GIC_SPI 116 IRQ_TYPE_LEVEL_HIGH>; 978 clocks = <&crg_ctrl HI3660_CLK_GATE_SPI2>, <&crg_ctrl HI3660_CLK_GATE_SPI2>; 979 clock-names = "sspclk", "apb_pclk"; 980 pinctrl-names = "default"; 981 pinctrl-0 = <&spi2_pmx_func &spi2_cfg_func>; 982 num-cs = <1>; 983 cs-gpios = <&gpio27 2 0>; 984 status = "disabled"; 985 }; 986 987 spi3: spi@ff3b3000 { 988 compatible = "arm,pl022", "arm,primecell"; 989 reg = <0x0 0xff3b3000 0x0 0x1000>; 990 #address-cells = <1>; 991 #size-cells = <0>; 992 interrupts = <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>; 993 clocks = <&crg_ctrl HI3660_CLK_GATE_SPI3>, <&crg_ctrl HI3660_CLK_GATE_SPI3>; 994 clock-names = "sspclk", "apb_pclk"; 995 pinctrl-names = "default"; 996 pinctrl-0 = <&spi3_pmx_func &spi3_cfg_func>; 997 num-cs = <1>; 998 cs-gpios = <&gpio18 5 0>; 999 status = "disabled"; 1000 }; 1001 1002 pcie@f4000000 { 1003 compatible = "hisilicon,kirin960-pcie"; 1004 reg = <0x0 0xf4000000 0x0 0x1000>, 1005 <0x0 0xff3fe000 0x0 0x1000>, 1006 <0x0 0xf3f20000 0x0 0x40000>, 1007 <0x0 0xf5000000 0x0 0x2000>; 1008 reg-names = "dbi", "apb", "phy", "config"; 1009 bus-range = <0x0 0xff>; 1010 #address-cells = <3>; 1011 #size-cells = <2>; 1012 device_type = "pci"; 1013 ranges = <0x02000000 0x0 0x00000000 1014 0x0 0xf6000000 1015 0x0 0x02000000>; 1016 num-lanes = <1>; 1017 #interrupt-cells = <1>; 1018 interrupts = <0 283 4>; 1019 interrupt-names = "msi"; 1020 interrupt-map-mask = <0xf800 0 0 7>; 1021 interrupt-map = <0x0 0 0 1 1022 &gic GIC_SPI 282 IRQ_TYPE_LEVEL_HIGH>, 1023 <0x0 0 0 2 1024 &gic GIC_SPI 283 IRQ_TYPE_LEVEL_HIGH>, 1025 <0x0 0 0 3 1026 &gic GIC_SPI 284 IRQ_TYPE_LEVEL_HIGH>, 1027 <0x0 0 0 4 1028 &gic GIC_SPI 285 IRQ_TYPE_LEVEL_HIGH>; 1029 clocks = <&crg_ctrl HI3660_PCIEPHY_REF>, 1030 <&crg_ctrl HI3660_CLK_GATE_PCIEAUX>, 1031 <&crg_ctrl HI3660_PCLK_GATE_PCIE_PHY>, 1032 <&crg_ctrl HI3660_PCLK_GATE_PCIE_SYS>, 1033 <&crg_ctrl HI3660_ACLK_GATE_PCIE>; 1034 clock-names = "pcie_phy_ref", "pcie_aux", 1035 "pcie_apb_phy", "pcie_apb_sys", 1036 "pcie_aclk"; 1037 reset-gpios = <&gpio11 1 0 >; 1038 }; 1039 1040 /* UFS */ 1041 ufs: ufs@ff3b0000 { 1042 compatible = "hisilicon,hi3660-ufs", "jedec,ufs-1.1"; 1043 /* 0: HCI standard */ 1044 /* 1: UFS SYS CTRL */ 1045 reg = <0x0 0xff3b0000 0x0 0x1000>, 1046 <0x0 0xff3b1000 0x0 0x1000>; 1047 interrupt-parent = <&gic>; 1048 interrupts = <GIC_SPI 278 IRQ_TYPE_LEVEL_HIGH>; 1049 clocks = <&crg_ctrl HI3660_CLK_GATE_UFSIO_REF>, 1050 <&crg_ctrl HI3660_CLK_GATE_UFSPHY_CFG>; 1051 clock-names = "ref_clk", "phy_clk"; 1052 freq-table-hz = <0 0>, 1053 <0 0>; 1054 /* offset: 0x84; bit: 12 */ 1055 resets = <&crg_rst 0x84 12>; 1056 reset-names = "rst"; 1057 }; 1058 1059 /* SD */ 1060 dwmmc1: dwmmc1@ff37f000 { 1061 compatible = "hisilicon,hi3660-dw-mshc"; 1062 reg = <0x0 0xff37f000 0x0 0x1000>; 1063 #address-cells = <1>; 1064 #size-cells = <0>; 1065 interrupts = <GIC_SPI 139 IRQ_TYPE_LEVEL_HIGH>; 1066 clocks = <&crg_ctrl HI3660_CLK_GATE_SD>, 1067 <&crg_ctrl HI3660_HCLK_GATE_SD>; 1068 clock-names = "ciu", "biu"; 1069 clock-frequency = <3200000>; 1070 resets = <&crg_rst 0x94 18>; 1071 reset-names = "reset"; 1072 hisilicon,peripheral-syscon = <&sctrl>; 1073 card-detect-delay = <200>; 1074 status = "disabled"; 1075 }; 1076 1077 /* SDIO */ 1078 dwmmc2: dwmmc2@ff3ff000 { 1079 compatible = "hisilicon,hi3660-dw-mshc"; 1080 reg = <0x0 0xff3ff000 0x0 0x1000>; 1081 #address-cells = <0x1>; 1082 #size-cells = <0x0>; 1083 interrupts = <GIC_SPI 140 IRQ_TYPE_LEVEL_HIGH>; 1084 clocks = <&crg_ctrl HI3660_CLK_GATE_SDIO0>, 1085 <&crg_ctrl HI3660_HCLK_GATE_SDIO0>; 1086 clock-names = "ciu", "biu"; 1087 resets = <&crg_rst 0x94 20>; 1088 reset-names = "reset"; 1089 card-detect-delay = <200>; 1090 status = "disabled"; 1091 }; 1092 1093 watchdog0: watchdog@e8a06000 { 1094 compatible = "arm,sp805", "arm,primecell"; 1095 reg = <0x0 0xe8a06000 0x0 0x1000>; 1096 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 1097 clocks = <&crg_ctrl HI3660_OSC32K>, 1098 <&crg_ctrl HI3660_OSC32K>; 1099 clock-names = "wdog_clk", "apb_pclk"; 1100 }; 1101 1102 watchdog1: watchdog@e8a07000 { 1103 compatible = "arm,sp805", "arm,primecell"; 1104 reg = <0x0 0xe8a07000 0x0 0x1000>; 1105 interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 1106 clocks = <&crg_ctrl HI3660_OSC32K>, 1107 <&crg_ctrl HI3660_OSC32K>; 1108 clock-names = "wdog_clk", "apb_pclk"; 1109 }; 1110 1111 tsensor: tsensor@fff30000 { 1112 compatible = "hisilicon,hi3660-tsensor"; 1113 reg = <0x0 0xfff30000 0x0 0x1000>; 1114 interrupts = <GIC_SPI 145 IRQ_TYPE_LEVEL_HIGH>; 1115 #thermal-sensor-cells = <1>; 1116 }; 1117 1118 thermal-zones { 1119 1120 cls0: cls0-thermal { 1121 polling-delay = <1000>; 1122 polling-delay-passive = <100>; 1123 sustainable-power = <4500>; 1124 1125 /* sensor ID */ 1126 thermal-sensors = <&tsensor 1>; 1127 1128 trips { 1129 threshold: trip-point0 { 1130 temperature = <65000>; 1131 hysteresis = <1000>; 1132 type = "passive"; 1133 }; 1134 1135 target: trip-point1 { 1136 temperature = <75000>; 1137 hysteresis = <1000>; 1138 type = "passive"; 1139 }; 1140 }; 1141 1142 cooling-maps { 1143 map0 { 1144 trip = <&target>; 1145 contribution = <1024>; 1146 cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1147 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1148 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1149 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1150 }; 1151 map1 { 1152 trip = <&target>; 1153 contribution = <512>; 1154 cooling-device = <&cpu4 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1155 <&cpu5 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1156 <&cpu6 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>, 1157 <&cpu7 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 1158 }; 1159 }; 1160 }; 1161 }; 1162 1163 usb3_otg_bc: usb3_otg_bc@ff200000 { 1164 compatible = "syscon", "simple-mfd"; 1165 reg = <0x0 0xff200000 0x0 0x1000>; 1166 1167 usb_phy: usb-phy { 1168 compatible = "hisilicon,hi3660-usb-phy"; 1169 #phy-cells = <0>; 1170 hisilicon,pericrg-syscon = <&crg_ctrl>; 1171 hisilicon,pctrl-syscon = <&pctrl>; 1172 hisilicon,eye-diagram-param = <0x22466e4>; 1173 }; 1174 }; 1175 1176 dwc3: usb@ff100000 { 1177 compatible = "snps,dwc3"; 1178 reg = <0x0 0xff100000 0x0 0x100000>; 1179 1180 clocks = <&crg_ctrl HI3660_CLK_ABB_USB>, 1181 <&crg_ctrl HI3660_ACLK_GATE_USB3OTG>; 1182 clock-names = "ref", "bus_early"; 1183 1184 assigned-clocks = <&crg_ctrl HI3660_ACLK_GATE_USB3OTG>; 1185 assigned-clock-rates = <229000000>; 1186 1187 resets = <&crg_rst 0x90 8>, 1188 <&crg_rst 0x90 7>, 1189 <&crg_rst 0x90 6>, 1190 <&crg_rst 0x90 5>; 1191 1192 interrupts = <0 159 4>, <0 161 4>; 1193 phys = <&usb_phy>; 1194 phy-names = "usb3-phy"; 1195 }; 1196 }; 1197}; 1198 1199#include "hi3660-coresight.dtsi" 1200