1*4882a593Smuzhiyun// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*4882a593Smuzhiyun/* 3*4882a593Smuzhiyun * Copyright (C) 2019 Marvell Technology Group Ltd. 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Device Tree file for Marvell Armada AP80x. 6*4882a593Smuzhiyun */ 7*4882a593Smuzhiyun 8*4882a593Smuzhiyun#include <dt-bindings/interrupt-controller/arm-gic.h> 9*4882a593Smuzhiyun#include <dt-bindings/thermal/thermal.h> 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun/dts-v1/; 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun/ { 14*4882a593Smuzhiyun #address-cells = <2>; 15*4882a593Smuzhiyun #size-cells = <2>; 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun aliases { 18*4882a593Smuzhiyun serial0 = &uart0; 19*4882a593Smuzhiyun serial1 = &uart1; 20*4882a593Smuzhiyun gpio0 = &ap_gpio; 21*4882a593Smuzhiyun spi0 = &spi0; 22*4882a593Smuzhiyun }; 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun psci { 25*4882a593Smuzhiyun compatible = "arm,psci-0.2"; 26*4882a593Smuzhiyun method = "smc"; 27*4882a593Smuzhiyun }; 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun reserved-memory { 30*4882a593Smuzhiyun #address-cells = <2>; 31*4882a593Smuzhiyun #size-cells = <2>; 32*4882a593Smuzhiyun ranges; 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun /* 35*4882a593Smuzhiyun * This area matches the mapping done with a 36*4882a593Smuzhiyun * mainline U-Boot, and should be updated by the 37*4882a593Smuzhiyun * bootloader. 38*4882a593Smuzhiyun */ 39*4882a593Smuzhiyun 40*4882a593Smuzhiyun psci-area@4000000 { 41*4882a593Smuzhiyun reg = <0x0 0x4000000 0x0 0x200000>; 42*4882a593Smuzhiyun no-map; 43*4882a593Smuzhiyun }; 44*4882a593Smuzhiyun }; 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun AP_NAME { 47*4882a593Smuzhiyun #address-cells = <2>; 48*4882a593Smuzhiyun #size-cells = <2>; 49*4882a593Smuzhiyun compatible = "simple-bus"; 50*4882a593Smuzhiyun interrupt-parent = <&gic>; 51*4882a593Smuzhiyun ranges; 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun config-space@f0000000 { 54*4882a593Smuzhiyun #address-cells = <1>; 55*4882a593Smuzhiyun #size-cells = <1>; 56*4882a593Smuzhiyun compatible = "simple-bus"; 57*4882a593Smuzhiyun ranges = <0x0 0x0 0xf0000000 0x1000000>; 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun smmu: iommu@5000000 { 60*4882a593Smuzhiyun compatible = "marvell,ap806-smmu-500", "arm,mmu-500"; 61*4882a593Smuzhiyun reg = <0x100000 0x100000>; 62*4882a593Smuzhiyun dma-coherent; 63*4882a593Smuzhiyun #iommu-cells = <1>; 64*4882a593Smuzhiyun #global-interrupts = <1>; 65*4882a593Smuzhiyun interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 66*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 67*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 68*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 69*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 70*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 71*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 72*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>, 73*4882a593Smuzhiyun <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 74*4882a593Smuzhiyun status = "disabled"; 75*4882a593Smuzhiyun }; 76*4882a593Smuzhiyun 77*4882a593Smuzhiyun gic: interrupt-controller@210000 { 78*4882a593Smuzhiyun compatible = "arm,gic-400"; 79*4882a593Smuzhiyun #interrupt-cells = <3>; 80*4882a593Smuzhiyun #address-cells = <1>; 81*4882a593Smuzhiyun #size-cells = <1>; 82*4882a593Smuzhiyun ranges; 83*4882a593Smuzhiyun interrupt-controller; 84*4882a593Smuzhiyun interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 85*4882a593Smuzhiyun reg = <0x210000 0x10000>, 86*4882a593Smuzhiyun <0x220000 0x20000>, 87*4882a593Smuzhiyun <0x240000 0x20000>, 88*4882a593Smuzhiyun <0x260000 0x20000>; 89*4882a593Smuzhiyun 90*4882a593Smuzhiyun gic_v2m0: v2m@280000 { 91*4882a593Smuzhiyun compatible = "arm,gic-v2m-frame"; 92*4882a593Smuzhiyun msi-controller; 93*4882a593Smuzhiyun reg = <0x280000 0x1000>; 94*4882a593Smuzhiyun arm,msi-base-spi = <160>; 95*4882a593Smuzhiyun arm,msi-num-spis = <32>; 96*4882a593Smuzhiyun }; 97*4882a593Smuzhiyun gic_v2m1: v2m@290000 { 98*4882a593Smuzhiyun compatible = "arm,gic-v2m-frame"; 99*4882a593Smuzhiyun msi-controller; 100*4882a593Smuzhiyun reg = <0x290000 0x1000>; 101*4882a593Smuzhiyun arm,msi-base-spi = <192>; 102*4882a593Smuzhiyun arm,msi-num-spis = <32>; 103*4882a593Smuzhiyun }; 104*4882a593Smuzhiyun gic_v2m2: v2m@2a0000 { 105*4882a593Smuzhiyun compatible = "arm,gic-v2m-frame"; 106*4882a593Smuzhiyun msi-controller; 107*4882a593Smuzhiyun reg = <0x2a0000 0x1000>; 108*4882a593Smuzhiyun arm,msi-base-spi = <224>; 109*4882a593Smuzhiyun arm,msi-num-spis = <32>; 110*4882a593Smuzhiyun }; 111*4882a593Smuzhiyun gic_v2m3: v2m@2b0000 { 112*4882a593Smuzhiyun compatible = "arm,gic-v2m-frame"; 113*4882a593Smuzhiyun msi-controller; 114*4882a593Smuzhiyun reg = <0x2b0000 0x1000>; 115*4882a593Smuzhiyun arm,msi-base-spi = <256>; 116*4882a593Smuzhiyun arm,msi-num-spis = <32>; 117*4882a593Smuzhiyun }; 118*4882a593Smuzhiyun }; 119*4882a593Smuzhiyun 120*4882a593Smuzhiyun timer { 121*4882a593Smuzhiyun compatible = "arm,armv8-timer"; 122*4882a593Smuzhiyun interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 123*4882a593Smuzhiyun <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 124*4882a593Smuzhiyun <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, 125*4882a593Smuzhiyun <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; 126*4882a593Smuzhiyun }; 127*4882a593Smuzhiyun 128*4882a593Smuzhiyun pmu { 129*4882a593Smuzhiyun compatible = "arm,cortex-a72-pmu"; 130*4882a593Smuzhiyun interrupt-parent = <&pic>; 131*4882a593Smuzhiyun interrupts = <17>; 132*4882a593Smuzhiyun }; 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun odmi: odmi@300000 { 135*4882a593Smuzhiyun compatible = "marvell,odmi-controller"; 136*4882a593Smuzhiyun interrupt-controller; 137*4882a593Smuzhiyun msi-controller; 138*4882a593Smuzhiyun marvell,odmi-frames = <4>; 139*4882a593Smuzhiyun reg = <0x300000 0x4000>, 140*4882a593Smuzhiyun <0x304000 0x4000>, 141*4882a593Smuzhiyun <0x308000 0x4000>, 142*4882a593Smuzhiyun <0x30C000 0x4000>; 143*4882a593Smuzhiyun marvell,spi-base = <128>, <136>, <144>, <152>; 144*4882a593Smuzhiyun }; 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun gicp: gicp@3f0040 { 147*4882a593Smuzhiyun compatible = "marvell,ap806-gicp"; 148*4882a593Smuzhiyun reg = <0x3f0040 0x10>; 149*4882a593Smuzhiyun marvell,spi-ranges = <64 64>, <288 64>; 150*4882a593Smuzhiyun msi-controller; 151*4882a593Smuzhiyun }; 152*4882a593Smuzhiyun 153*4882a593Smuzhiyun pic: interrupt-controller@3f0100 { 154*4882a593Smuzhiyun compatible = "marvell,armada-8k-pic"; 155*4882a593Smuzhiyun reg = <0x3f0100 0x10>; 156*4882a593Smuzhiyun #interrupt-cells = <1>; 157*4882a593Smuzhiyun interrupt-controller; 158*4882a593Smuzhiyun interrupts = <GIC_PPI 15 IRQ_TYPE_LEVEL_HIGH>; 159*4882a593Smuzhiyun }; 160*4882a593Smuzhiyun 161*4882a593Smuzhiyun sei: interrupt-controller@3f0200 { 162*4882a593Smuzhiyun compatible = "marvell,ap806-sei"; 163*4882a593Smuzhiyun reg = <0x3f0200 0x40>; 164*4882a593Smuzhiyun interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 165*4882a593Smuzhiyun #interrupt-cells = <1>; 166*4882a593Smuzhiyun interrupt-controller; 167*4882a593Smuzhiyun msi-controller; 168*4882a593Smuzhiyun }; 169*4882a593Smuzhiyun 170*4882a593Smuzhiyun xor@400000 { 171*4882a593Smuzhiyun compatible = "marvell,armada-7k-xor", "marvell,xor-v2"; 172*4882a593Smuzhiyun reg = <0x400000 0x1000>, 173*4882a593Smuzhiyun <0x410000 0x1000>; 174*4882a593Smuzhiyun msi-parent = <&gic_v2m0>; 175*4882a593Smuzhiyun clocks = <&ap_clk 3>; 176*4882a593Smuzhiyun dma-coherent; 177*4882a593Smuzhiyun }; 178*4882a593Smuzhiyun 179*4882a593Smuzhiyun xor@420000 { 180*4882a593Smuzhiyun compatible = "marvell,armada-7k-xor", "marvell,xor-v2"; 181*4882a593Smuzhiyun reg = <0x420000 0x1000>, 182*4882a593Smuzhiyun <0x430000 0x1000>; 183*4882a593Smuzhiyun msi-parent = <&gic_v2m0>; 184*4882a593Smuzhiyun clocks = <&ap_clk 3>; 185*4882a593Smuzhiyun dma-coherent; 186*4882a593Smuzhiyun }; 187*4882a593Smuzhiyun 188*4882a593Smuzhiyun xor@440000 { 189*4882a593Smuzhiyun compatible = "marvell,armada-7k-xor", "marvell,xor-v2"; 190*4882a593Smuzhiyun reg = <0x440000 0x1000>, 191*4882a593Smuzhiyun <0x450000 0x1000>; 192*4882a593Smuzhiyun msi-parent = <&gic_v2m0>; 193*4882a593Smuzhiyun clocks = <&ap_clk 3>; 194*4882a593Smuzhiyun dma-coherent; 195*4882a593Smuzhiyun }; 196*4882a593Smuzhiyun 197*4882a593Smuzhiyun xor@460000 { 198*4882a593Smuzhiyun compatible = "marvell,armada-7k-xor", "marvell,xor-v2"; 199*4882a593Smuzhiyun reg = <0x460000 0x1000>, 200*4882a593Smuzhiyun <0x470000 0x1000>; 201*4882a593Smuzhiyun msi-parent = <&gic_v2m0>; 202*4882a593Smuzhiyun clocks = <&ap_clk 3>; 203*4882a593Smuzhiyun dma-coherent; 204*4882a593Smuzhiyun }; 205*4882a593Smuzhiyun 206*4882a593Smuzhiyun spi0: spi@510600 { 207*4882a593Smuzhiyun compatible = "marvell,armada-380-spi"; 208*4882a593Smuzhiyun reg = <0x510600 0x50>; 209*4882a593Smuzhiyun #address-cells = <1>; 210*4882a593Smuzhiyun #size-cells = <0>; 211*4882a593Smuzhiyun interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 212*4882a593Smuzhiyun clocks = <&ap_clk 3>; 213*4882a593Smuzhiyun status = "disabled"; 214*4882a593Smuzhiyun }; 215*4882a593Smuzhiyun 216*4882a593Smuzhiyun i2c0: i2c@511000 { 217*4882a593Smuzhiyun compatible = "marvell,mv78230-i2c"; 218*4882a593Smuzhiyun reg = <0x511000 0x20>; 219*4882a593Smuzhiyun #address-cells = <1>; 220*4882a593Smuzhiyun #size-cells = <0>; 221*4882a593Smuzhiyun interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; 222*4882a593Smuzhiyun clocks = <&ap_clk 3>; 223*4882a593Smuzhiyun status = "disabled"; 224*4882a593Smuzhiyun }; 225*4882a593Smuzhiyun 226*4882a593Smuzhiyun uart0: serial@512000 { 227*4882a593Smuzhiyun compatible = "snps,dw-apb-uart"; 228*4882a593Smuzhiyun reg = <0x512000 0x100>; 229*4882a593Smuzhiyun reg-shift = <2>; 230*4882a593Smuzhiyun interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; 231*4882a593Smuzhiyun reg-io-width = <1>; 232*4882a593Smuzhiyun clocks = <&ap_clk 3>; 233*4882a593Smuzhiyun status = "disabled"; 234*4882a593Smuzhiyun }; 235*4882a593Smuzhiyun 236*4882a593Smuzhiyun uart1: serial@512100 { 237*4882a593Smuzhiyun compatible = "snps,dw-apb-uart"; 238*4882a593Smuzhiyun reg = <0x512100 0x100>; 239*4882a593Smuzhiyun reg-shift = <2>; 240*4882a593Smuzhiyun interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 241*4882a593Smuzhiyun reg-io-width = <1>; 242*4882a593Smuzhiyun clocks = <&ap_clk 3>; 243*4882a593Smuzhiyun status = "disabled"; 244*4882a593Smuzhiyun 245*4882a593Smuzhiyun }; 246*4882a593Smuzhiyun 247*4882a593Smuzhiyun watchdog: watchdog@610000 { 248*4882a593Smuzhiyun compatible = "arm,sbsa-gwdt"; 249*4882a593Smuzhiyun reg = <0x610000 0x1000>, <0x600000 0x1000>; 250*4882a593Smuzhiyun interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 251*4882a593Smuzhiyun }; 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun ap_sdhci0: sdhci@6e0000 { 254*4882a593Smuzhiyun compatible = "marvell,armada-ap806-sdhci"; 255*4882a593Smuzhiyun reg = <0x6e0000 0x300>; 256*4882a593Smuzhiyun interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; 257*4882a593Smuzhiyun clock-names = "core"; 258*4882a593Smuzhiyun clocks = <&ap_clk 4>; 259*4882a593Smuzhiyun dma-coherent; 260*4882a593Smuzhiyun marvell,xenon-phy-slow-mode; 261*4882a593Smuzhiyun status = "disabled"; 262*4882a593Smuzhiyun }; 263*4882a593Smuzhiyun 264*4882a593Smuzhiyun ap_syscon0: system-controller@6f4000 { 265*4882a593Smuzhiyun compatible = "syscon", "simple-mfd"; 266*4882a593Smuzhiyun reg = <0x6f4000 0x2000>; 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun ap_pinctrl: pinctrl { 269*4882a593Smuzhiyun compatible = "marvell,ap806-pinctrl"; 270*4882a593Smuzhiyun 271*4882a593Smuzhiyun uart0_pins: uart0-pins { 272*4882a593Smuzhiyun marvell,pins = "mpp11", "mpp19"; 273*4882a593Smuzhiyun marvell,function = "uart0"; 274*4882a593Smuzhiyun }; 275*4882a593Smuzhiyun }; 276*4882a593Smuzhiyun 277*4882a593Smuzhiyun ap_gpio: gpio@1040 { 278*4882a593Smuzhiyun compatible = "marvell,armada-8k-gpio"; 279*4882a593Smuzhiyun offset = <0x1040>; 280*4882a593Smuzhiyun ngpios = <20>; 281*4882a593Smuzhiyun gpio-controller; 282*4882a593Smuzhiyun #gpio-cells = <2>; 283*4882a593Smuzhiyun gpio-ranges = <&ap_pinctrl 0 0 20>; 284*4882a593Smuzhiyun }; 285*4882a593Smuzhiyun }; 286*4882a593Smuzhiyun 287*4882a593Smuzhiyun ap_syscon1: system-controller@6f8000 { 288*4882a593Smuzhiyun compatible = "syscon", "simple-mfd"; 289*4882a593Smuzhiyun reg = <0x6f8000 0x1000>; 290*4882a593Smuzhiyun #address-cells = <1>; 291*4882a593Smuzhiyun #size-cells = <1>; 292*4882a593Smuzhiyun 293*4882a593Smuzhiyun ap_thermal: thermal-sensor@80 { 294*4882a593Smuzhiyun compatible = "marvell,armada-ap806-thermal"; 295*4882a593Smuzhiyun reg = <0x80 0x10>; 296*4882a593Smuzhiyun interrupt-parent = <&sei>; 297*4882a593Smuzhiyun interrupts = <18>; 298*4882a593Smuzhiyun #thermal-sensor-cells = <1>; 299*4882a593Smuzhiyun }; 300*4882a593Smuzhiyun }; 301*4882a593Smuzhiyun }; 302*4882a593Smuzhiyun }; 303*4882a593Smuzhiyun 304*4882a593Smuzhiyun /* 305*4882a593Smuzhiyun * The thermal IP features one internal sensor plus, if applicable, one 306*4882a593Smuzhiyun * remote channel wired to one sensor per CPU. 307*4882a593Smuzhiyun * 308*4882a593Smuzhiyun * Only one thermal zone per AP/CP may trigger interrupts at a time, the 309*4882a593Smuzhiyun * first one that will have a critical trip point will be chosen. 310*4882a593Smuzhiyun */ 311*4882a593Smuzhiyun thermal-zones { 312*4882a593Smuzhiyun ap_thermal_ic: ap-thermal-ic { 313*4882a593Smuzhiyun polling-delay-passive = <0>; /* Interrupt driven */ 314*4882a593Smuzhiyun polling-delay = <0>; /* Interrupt driven */ 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun thermal-sensors = <&ap_thermal 0>; 317*4882a593Smuzhiyun 318*4882a593Smuzhiyun trips { 319*4882a593Smuzhiyun ap_crit: ap-crit { 320*4882a593Smuzhiyun temperature = <100000>; /* mC degrees */ 321*4882a593Smuzhiyun hysteresis = <2000>; /* mC degrees */ 322*4882a593Smuzhiyun type = "critical"; 323*4882a593Smuzhiyun }; 324*4882a593Smuzhiyun }; 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun cooling-maps { }; 327*4882a593Smuzhiyun }; 328*4882a593Smuzhiyun 329*4882a593Smuzhiyun ap_thermal_cpu0: ap-thermal-cpu0 { 330*4882a593Smuzhiyun polling-delay-passive = <1000>; 331*4882a593Smuzhiyun polling-delay = <1000>; 332*4882a593Smuzhiyun 333*4882a593Smuzhiyun thermal-sensors = <&ap_thermal 1>; 334*4882a593Smuzhiyun 335*4882a593Smuzhiyun trips { 336*4882a593Smuzhiyun cpu0_hot: cpu0-hot { 337*4882a593Smuzhiyun temperature = <85000>; 338*4882a593Smuzhiyun hysteresis = <2000>; 339*4882a593Smuzhiyun type = "passive"; 340*4882a593Smuzhiyun }; 341*4882a593Smuzhiyun cpu0_emerg: cpu0-emerg { 342*4882a593Smuzhiyun temperature = <95000>; 343*4882a593Smuzhiyun hysteresis = <2000>; 344*4882a593Smuzhiyun type = "passive"; 345*4882a593Smuzhiyun }; 346*4882a593Smuzhiyun }; 347*4882a593Smuzhiyun 348*4882a593Smuzhiyun cooling-maps { 349*4882a593Smuzhiyun map0_hot: map0-hot { 350*4882a593Smuzhiyun trip = <&cpu0_hot>; 351*4882a593Smuzhiyun cooling-device = <&cpu0 1 2>, 352*4882a593Smuzhiyun <&cpu1 1 2>; 353*4882a593Smuzhiyun }; 354*4882a593Smuzhiyun map0_emerg: map0-ermerg { 355*4882a593Smuzhiyun trip = <&cpu0_emerg>; 356*4882a593Smuzhiyun cooling-device = <&cpu0 3 3>, 357*4882a593Smuzhiyun <&cpu1 3 3>; 358*4882a593Smuzhiyun }; 359*4882a593Smuzhiyun }; 360*4882a593Smuzhiyun }; 361*4882a593Smuzhiyun 362*4882a593Smuzhiyun ap_thermal_cpu1: ap-thermal-cpu1 { 363*4882a593Smuzhiyun polling-delay-passive = <1000>; 364*4882a593Smuzhiyun polling-delay = <1000>; 365*4882a593Smuzhiyun 366*4882a593Smuzhiyun thermal-sensors = <&ap_thermal 2>; 367*4882a593Smuzhiyun 368*4882a593Smuzhiyun trips { 369*4882a593Smuzhiyun cpu1_hot: cpu1-hot { 370*4882a593Smuzhiyun temperature = <85000>; 371*4882a593Smuzhiyun hysteresis = <2000>; 372*4882a593Smuzhiyun type = "passive"; 373*4882a593Smuzhiyun }; 374*4882a593Smuzhiyun cpu1_emerg: cpu1-emerg { 375*4882a593Smuzhiyun temperature = <95000>; 376*4882a593Smuzhiyun hysteresis = <2000>; 377*4882a593Smuzhiyun type = "passive"; 378*4882a593Smuzhiyun }; 379*4882a593Smuzhiyun }; 380*4882a593Smuzhiyun 381*4882a593Smuzhiyun cooling-maps { 382*4882a593Smuzhiyun map1_hot: map1-hot { 383*4882a593Smuzhiyun trip = <&cpu1_hot>; 384*4882a593Smuzhiyun cooling-device = <&cpu0 1 2>, 385*4882a593Smuzhiyun <&cpu1 1 2>; 386*4882a593Smuzhiyun }; 387*4882a593Smuzhiyun map1_emerg: map1-emerg { 388*4882a593Smuzhiyun trip = <&cpu1_emerg>; 389*4882a593Smuzhiyun cooling-device = <&cpu0 3 3>, 390*4882a593Smuzhiyun <&cpu1 3 3>; 391*4882a593Smuzhiyun }; 392*4882a593Smuzhiyun }; 393*4882a593Smuzhiyun }; 394*4882a593Smuzhiyun 395*4882a593Smuzhiyun ap_thermal_cpu2: ap-thermal-cpu2 { 396*4882a593Smuzhiyun polling-delay-passive = <1000>; 397*4882a593Smuzhiyun polling-delay = <1000>; 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun thermal-sensors = <&ap_thermal 3>; 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun trips { 402*4882a593Smuzhiyun cpu2_hot: cpu2-hot { 403*4882a593Smuzhiyun temperature = <85000>; 404*4882a593Smuzhiyun hysteresis = <2000>; 405*4882a593Smuzhiyun type = "passive"; 406*4882a593Smuzhiyun }; 407*4882a593Smuzhiyun cpu2_emerg: cpu2-emerg { 408*4882a593Smuzhiyun temperature = <95000>; 409*4882a593Smuzhiyun hysteresis = <2000>; 410*4882a593Smuzhiyun type = "passive"; 411*4882a593Smuzhiyun }; 412*4882a593Smuzhiyun }; 413*4882a593Smuzhiyun 414*4882a593Smuzhiyun cooling-maps { 415*4882a593Smuzhiyun map2_hot: map2-hot { 416*4882a593Smuzhiyun trip = <&cpu2_hot>; 417*4882a593Smuzhiyun cooling-device = <&cpu2 1 2>, 418*4882a593Smuzhiyun <&cpu3 1 2>; 419*4882a593Smuzhiyun }; 420*4882a593Smuzhiyun map2_emerg: map2-emerg { 421*4882a593Smuzhiyun trip = <&cpu2_emerg>; 422*4882a593Smuzhiyun cooling-device = <&cpu2 3 3>, 423*4882a593Smuzhiyun <&cpu3 3 3>; 424*4882a593Smuzhiyun }; 425*4882a593Smuzhiyun }; 426*4882a593Smuzhiyun }; 427*4882a593Smuzhiyun 428*4882a593Smuzhiyun ap_thermal_cpu3: ap-thermal-cpu3 { 429*4882a593Smuzhiyun polling-delay-passive = <1000>; 430*4882a593Smuzhiyun polling-delay = <1000>; 431*4882a593Smuzhiyun 432*4882a593Smuzhiyun thermal-sensors = <&ap_thermal 4>; 433*4882a593Smuzhiyun 434*4882a593Smuzhiyun trips { 435*4882a593Smuzhiyun cpu3_hot: cpu3-hot { 436*4882a593Smuzhiyun temperature = <85000>; 437*4882a593Smuzhiyun hysteresis = <2000>; 438*4882a593Smuzhiyun type = "passive"; 439*4882a593Smuzhiyun }; 440*4882a593Smuzhiyun cpu3_emerg: cpu3-emerg { 441*4882a593Smuzhiyun temperature = <95000>; 442*4882a593Smuzhiyun hysteresis = <2000>; 443*4882a593Smuzhiyun type = "passive"; 444*4882a593Smuzhiyun }; 445*4882a593Smuzhiyun }; 446*4882a593Smuzhiyun 447*4882a593Smuzhiyun cooling-maps { 448*4882a593Smuzhiyun map3_hot: map3-bhot { 449*4882a593Smuzhiyun trip = <&cpu3_hot>; 450*4882a593Smuzhiyun cooling-device = <&cpu2 1 2>, 451*4882a593Smuzhiyun <&cpu3 1 2>; 452*4882a593Smuzhiyun }; 453*4882a593Smuzhiyun map3_emerg: map3-emerg { 454*4882a593Smuzhiyun trip = <&cpu3_emerg>; 455*4882a593Smuzhiyun cooling-device = <&cpu2 3 3>, 456*4882a593Smuzhiyun <&cpu3 3 3>; 457*4882a593Smuzhiyun }; 458*4882a593Smuzhiyun }; 459*4882a593Smuzhiyun }; 460*4882a593Smuzhiyun }; 461*4882a593Smuzhiyun}; 462