xref: /openbmc/linux/arch/arm64/boot/dts/marvell/armada-ap80x.dtsi (revision 5ee9cd065836e5934710ca35653bce7905add20b)
17409b155SKonstantin Porotchkin// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
27409b155SKonstantin Porotchkin/*
37409b155SKonstantin Porotchkin * Copyright (C) 2019 Marvell Technology Group Ltd.
47409b155SKonstantin Porotchkin *
57409b155SKonstantin Porotchkin * Device Tree file for Marvell Armada AP80x.
67409b155SKonstantin Porotchkin */
77409b155SKonstantin Porotchkin
87409b155SKonstantin Porotchkin#include <dt-bindings/interrupt-controller/arm-gic.h>
97409b155SKonstantin Porotchkin#include <dt-bindings/thermal/thermal.h>
107409b155SKonstantin Porotchkin
117409b155SKonstantin Porotchkin/dts-v1/;
127409b155SKonstantin Porotchkin
137409b155SKonstantin Porotchkin/ {
147409b155SKonstantin Porotchkin	#address-cells = <2>;
157409b155SKonstantin Porotchkin	#size-cells = <2>;
167409b155SKonstantin Porotchkin
177409b155SKonstantin Porotchkin	aliases {
187409b155SKonstantin Porotchkin		serial0 = &uart0;
197409b155SKonstantin Porotchkin		serial1 = &uart1;
207409b155SKonstantin Porotchkin		gpio0 = &ap_gpio;
217409b155SKonstantin Porotchkin		spi0 = &spi0;
227409b155SKonstantin Porotchkin	};
237409b155SKonstantin Porotchkin
247409b155SKonstantin Porotchkin	psci {
257409b155SKonstantin Porotchkin		compatible = "arm,psci-0.2";
267409b155SKonstantin Porotchkin		method = "smc";
277409b155SKonstantin Porotchkin	};
287409b155SKonstantin Porotchkin
297409b155SKonstantin Porotchkin	reserved-memory {
307409b155SKonstantin Porotchkin		#address-cells = <2>;
317409b155SKonstantin Porotchkin		#size-cells = <2>;
327409b155SKonstantin Porotchkin		ranges;
337409b155SKonstantin Porotchkin
347409b155SKonstantin Porotchkin		/*
357409b155SKonstantin Porotchkin		 * This area matches the mapping done with a
367409b155SKonstantin Porotchkin		 * mainline U-Boot, and should be updated by the
377409b155SKonstantin Porotchkin		 * bootloader.
387409b155SKonstantin Porotchkin		 */
397409b155SKonstantin Porotchkin
407409b155SKonstantin Porotchkin		psci-area@4000000 {
417409b155SKonstantin Porotchkin			reg = <0x0 0x4000000 0x0 0x200000>;
427409b155SKonstantin Porotchkin			no-map;
437409b155SKonstantin Porotchkin		};
4499d2900fSKonstantin Porotchkin
4599d2900fSKonstantin Porotchkin		tee@4400000 {
4699d2900fSKonstantin Porotchkin			reg = <0 0x4400000 0 0x1000000>;
4799d2900fSKonstantin Porotchkin			no-map;
4899d2900fSKonstantin Porotchkin		};
497409b155SKonstantin Porotchkin	};
507409b155SKonstantin Porotchkin
517409b155SKonstantin Porotchkin	AP_NAME {
527409b155SKonstantin Porotchkin		#address-cells = <2>;
537409b155SKonstantin Porotchkin		#size-cells = <2>;
547409b155SKonstantin Porotchkin		compatible = "simple-bus";
557409b155SKonstantin Porotchkin		interrupt-parent = <&gic>;
567409b155SKonstantin Porotchkin		ranges;
577409b155SKonstantin Porotchkin
587409b155SKonstantin Porotchkin		config-space@f0000000 {
597409b155SKonstantin Porotchkin			#address-cells = <1>;
607409b155SKonstantin Porotchkin			#size-cells = <1>;
617409b155SKonstantin Porotchkin			compatible = "simple-bus";
627409b155SKonstantin Porotchkin			ranges = <0x0 0x0 0xf0000000 0x1000000>;
637409b155SKonstantin Porotchkin
6483a3545dSMarcin Wojtas			smmu: iommu@5000000 {
6583a3545dSMarcin Wojtas				compatible = "marvell,ap806-smmu-500", "arm,mmu-500";
6683a3545dSMarcin Wojtas				reg = <0x100000 0x100000>;
6783a3545dSMarcin Wojtas				dma-coherent;
6883a3545dSMarcin Wojtas				#iommu-cells = <1>;
6983a3545dSMarcin Wojtas				#global-interrupts = <1>;
7083a3545dSMarcin Wojtas				interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7183a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7283a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7383a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7483a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7583a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7683a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7783a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>,
7883a3545dSMarcin Wojtas					     <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>;
7983a3545dSMarcin Wojtas				status = "disabled";
8083a3545dSMarcin Wojtas			};
8183a3545dSMarcin Wojtas
827409b155SKonstantin Porotchkin			gic: interrupt-controller@210000 {
837409b155SKonstantin Porotchkin				compatible = "arm,gic-400";
847409b155SKonstantin Porotchkin				#interrupt-cells = <3>;
857409b155SKonstantin Porotchkin				#address-cells = <1>;
867409b155SKonstantin Porotchkin				#size-cells = <1>;
877409b155SKonstantin Porotchkin				ranges;
887409b155SKonstantin Porotchkin				interrupt-controller;
897409b155SKonstantin Porotchkin				interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
907409b155SKonstantin Porotchkin				reg = <0x210000 0x10000>,
917409b155SKonstantin Porotchkin				      <0x220000 0x20000>,
927409b155SKonstantin Porotchkin				      <0x240000 0x20000>,
937409b155SKonstantin Porotchkin				      <0x260000 0x20000>;
947409b155SKonstantin Porotchkin
957409b155SKonstantin Porotchkin				gic_v2m0: v2m@280000 {
967409b155SKonstantin Porotchkin					compatible = "arm,gic-v2m-frame";
977409b155SKonstantin Porotchkin					msi-controller;
987409b155SKonstantin Porotchkin					reg = <0x280000 0x1000>;
997409b155SKonstantin Porotchkin					arm,msi-base-spi = <160>;
1007409b155SKonstantin Porotchkin					arm,msi-num-spis = <32>;
1017409b155SKonstantin Porotchkin				};
1027409b155SKonstantin Porotchkin				gic_v2m1: v2m@290000 {
1037409b155SKonstantin Porotchkin					compatible = "arm,gic-v2m-frame";
1047409b155SKonstantin Porotchkin					msi-controller;
1057409b155SKonstantin Porotchkin					reg = <0x290000 0x1000>;
1067409b155SKonstantin Porotchkin					arm,msi-base-spi = <192>;
1077409b155SKonstantin Porotchkin					arm,msi-num-spis = <32>;
1087409b155SKonstantin Porotchkin				};
1097409b155SKonstantin Porotchkin				gic_v2m2: v2m@2a0000 {
1107409b155SKonstantin Porotchkin					compatible = "arm,gic-v2m-frame";
1117409b155SKonstantin Porotchkin					msi-controller;
1127409b155SKonstantin Porotchkin					reg = <0x2a0000 0x1000>;
1137409b155SKonstantin Porotchkin					arm,msi-base-spi = <224>;
1147409b155SKonstantin Porotchkin					arm,msi-num-spis = <32>;
1157409b155SKonstantin Porotchkin				};
1167409b155SKonstantin Porotchkin				gic_v2m3: v2m@2b0000 {
1177409b155SKonstantin Porotchkin					compatible = "arm,gic-v2m-frame";
1187409b155SKonstantin Porotchkin					msi-controller;
1197409b155SKonstantin Porotchkin					reg = <0x2b0000 0x1000>;
1207409b155SKonstantin Porotchkin					arm,msi-base-spi = <256>;
1217409b155SKonstantin Porotchkin					arm,msi-num-spis = <32>;
1227409b155SKonstantin Porotchkin				};
1237409b155SKonstantin Porotchkin			};
1247409b155SKonstantin Porotchkin
1257409b155SKonstantin Porotchkin			timer {
1267409b155SKonstantin Porotchkin				compatible = "arm,armv8-timer";
1277409b155SKonstantin Porotchkin				interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1287409b155SKonstantin Porotchkin					     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1297409b155SKonstantin Porotchkin					     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
1307409b155SKonstantin Porotchkin					     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
1317409b155SKonstantin Porotchkin			};
1327409b155SKonstantin Porotchkin
1337409b155SKonstantin Porotchkin			pmu {
1347409b155SKonstantin Porotchkin				compatible = "arm,cortex-a72-pmu";
1357409b155SKonstantin Porotchkin				interrupt-parent = <&pic>;
1367409b155SKonstantin Porotchkin				interrupts = <17>;
1377409b155SKonstantin Porotchkin			};
1387409b155SKonstantin Porotchkin
1397409b155SKonstantin Porotchkin			odmi: odmi@300000 {
1407409b155SKonstantin Porotchkin				compatible = "marvell,odmi-controller";
1417409b155SKonstantin Porotchkin				msi-controller;
1427409b155SKonstantin Porotchkin				marvell,odmi-frames = <4>;
1437409b155SKonstantin Porotchkin				reg = <0x300000 0x4000>,
1447409b155SKonstantin Porotchkin				      <0x304000 0x4000>,
1457409b155SKonstantin Porotchkin				      <0x308000 0x4000>,
1467409b155SKonstantin Porotchkin				      <0x30C000 0x4000>;
1477409b155SKonstantin Porotchkin				marvell,spi-base = <128>, <136>, <144>, <152>;
1487409b155SKonstantin Porotchkin			};
1497409b155SKonstantin Porotchkin
1507409b155SKonstantin Porotchkin			gicp: gicp@3f0040 {
1517409b155SKonstantin Porotchkin				compatible = "marvell,ap806-gicp";
1527409b155SKonstantin Porotchkin				reg = <0x3f0040 0x10>;
1537409b155SKonstantin Porotchkin				marvell,spi-ranges = <64 64>, <288 64>;
1547409b155SKonstantin Porotchkin				msi-controller;
1557409b155SKonstantin Porotchkin			};
1567409b155SKonstantin Porotchkin
1577409b155SKonstantin Porotchkin			pic: interrupt-controller@3f0100 {
1587409b155SKonstantin Porotchkin				compatible = "marvell,armada-8k-pic";
1597409b155SKonstantin Porotchkin				reg = <0x3f0100 0x10>;
1607409b155SKonstantin Porotchkin				#interrupt-cells = <1>;
1617409b155SKonstantin Porotchkin				interrupt-controller;
1627409b155SKonstantin Porotchkin				interrupts = <GIC_PPI 15 IRQ_TYPE_LEVEL_HIGH>;
1637409b155SKonstantin Porotchkin			};
1647409b155SKonstantin Porotchkin
1657409b155SKonstantin Porotchkin			sei: interrupt-controller@3f0200 {
1667409b155SKonstantin Porotchkin				compatible = "marvell,ap806-sei";
1677409b155SKonstantin Porotchkin				reg = <0x3f0200 0x40>;
1687409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>;
1697409b155SKonstantin Porotchkin				#interrupt-cells = <1>;
1707409b155SKonstantin Porotchkin				interrupt-controller;
1717409b155SKonstantin Porotchkin				msi-controller;
1727409b155SKonstantin Porotchkin			};
1737409b155SKonstantin Porotchkin
1747409b155SKonstantin Porotchkin			xor@400000 {
1757409b155SKonstantin Porotchkin				compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
1767409b155SKonstantin Porotchkin				reg = <0x400000 0x1000>,
1777409b155SKonstantin Porotchkin				      <0x410000 0x1000>;
1787409b155SKonstantin Porotchkin				msi-parent = <&gic_v2m0>;
1797409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
1807409b155SKonstantin Porotchkin				dma-coherent;
1817409b155SKonstantin Porotchkin			};
1827409b155SKonstantin Porotchkin
1837409b155SKonstantin Porotchkin			xor@420000 {
1847409b155SKonstantin Porotchkin				compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
1857409b155SKonstantin Porotchkin				reg = <0x420000 0x1000>,
1867409b155SKonstantin Porotchkin				      <0x430000 0x1000>;
1877409b155SKonstantin Porotchkin				msi-parent = <&gic_v2m0>;
1887409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
1897409b155SKonstantin Porotchkin				dma-coherent;
1907409b155SKonstantin Porotchkin			};
1917409b155SKonstantin Porotchkin
1927409b155SKonstantin Porotchkin			xor@440000 {
1937409b155SKonstantin Porotchkin				compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
1947409b155SKonstantin Porotchkin				reg = <0x440000 0x1000>,
1957409b155SKonstantin Porotchkin				      <0x450000 0x1000>;
1967409b155SKonstantin Porotchkin				msi-parent = <&gic_v2m0>;
1977409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
1987409b155SKonstantin Porotchkin				dma-coherent;
1997409b155SKonstantin Porotchkin			};
2007409b155SKonstantin Porotchkin
2017409b155SKonstantin Porotchkin			xor@460000 {
2027409b155SKonstantin Porotchkin				compatible = "marvell,armada-7k-xor", "marvell,xor-v2";
2037409b155SKonstantin Porotchkin				reg = <0x460000 0x1000>,
2047409b155SKonstantin Porotchkin				      <0x470000 0x1000>;
2057409b155SKonstantin Porotchkin				msi-parent = <&gic_v2m0>;
2067409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
2077409b155SKonstantin Porotchkin				dma-coherent;
2087409b155SKonstantin Porotchkin			};
2097409b155SKonstantin Porotchkin
2107409b155SKonstantin Porotchkin			spi0: spi@510600 {
2117409b155SKonstantin Porotchkin				compatible = "marvell,armada-380-spi";
2127409b155SKonstantin Porotchkin				reg = <0x510600 0x50>;
2137409b155SKonstantin Porotchkin				#address-cells = <1>;
2147409b155SKonstantin Porotchkin				#size-cells = <0>;
2157409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>;
2167409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
2177409b155SKonstantin Porotchkin				status = "disabled";
2187409b155SKonstantin Porotchkin			};
2197409b155SKonstantin Porotchkin
2207409b155SKonstantin Porotchkin			i2c0: i2c@511000 {
2217409b155SKonstantin Porotchkin				compatible = "marvell,mv78230-i2c";
2227409b155SKonstantin Porotchkin				reg = <0x511000 0x20>;
2237409b155SKonstantin Porotchkin				#address-cells = <1>;
2247409b155SKonstantin Porotchkin				#size-cells = <0>;
2257409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>;
2267409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
2277409b155SKonstantin Porotchkin				status = "disabled";
2287409b155SKonstantin Porotchkin			};
2297409b155SKonstantin Porotchkin
2307409b155SKonstantin Porotchkin			uart0: serial@512000 {
2317409b155SKonstantin Porotchkin				compatible = "snps,dw-apb-uart";
2327409b155SKonstantin Porotchkin				reg = <0x512000 0x100>;
2337409b155SKonstantin Porotchkin				reg-shift = <2>;
2347409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>;
2357409b155SKonstantin Porotchkin				reg-io-width = <1>;
2367409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
2377409b155SKonstantin Porotchkin				status = "disabled";
2387409b155SKonstantin Porotchkin			};
2397409b155SKonstantin Porotchkin
2407409b155SKonstantin Porotchkin			uart1: serial@512100 {
2417409b155SKonstantin Porotchkin				compatible = "snps,dw-apb-uart";
2427409b155SKonstantin Porotchkin				reg = <0x512100 0x100>;
2437409b155SKonstantin Porotchkin				reg-shift = <2>;
2447409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
2457409b155SKonstantin Porotchkin				reg-io-width = <1>;
2467409b155SKonstantin Porotchkin				clocks = <&ap_clk 3>;
2477409b155SKonstantin Porotchkin				status = "disabled";
2487409b155SKonstantin Porotchkin
2497409b155SKonstantin Porotchkin			};
2507409b155SKonstantin Porotchkin
2517409b155SKonstantin Porotchkin			watchdog: watchdog@610000 {
2527409b155SKonstantin Porotchkin				compatible = "arm,sbsa-gwdt";
2537409b155SKonstantin Porotchkin				reg = <0x610000 0x1000>, <0x600000 0x1000>;
2547409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
2557409b155SKonstantin Porotchkin			};
2567409b155SKonstantin Porotchkin
257239466bdSChris Packham			ap_sdhci0: mmc@6e0000 {
2587409b155SKonstantin Porotchkin				compatible = "marvell,armada-ap806-sdhci";
2597409b155SKonstantin Porotchkin				reg = <0x6e0000 0x300>;
2607409b155SKonstantin Porotchkin				interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>;
2617409b155SKonstantin Porotchkin				clock-names = "core";
2627409b155SKonstantin Porotchkin				clocks = <&ap_clk 4>;
2637409b155SKonstantin Porotchkin				dma-coherent;
2647409b155SKonstantin Porotchkin				marvell,xenon-phy-slow-mode;
2657409b155SKonstantin Porotchkin				status = "disabled";
2667409b155SKonstantin Porotchkin			};
2677409b155SKonstantin Porotchkin
2687409b155SKonstantin Porotchkin			ap_syscon0: system-controller@6f4000 {
2697409b155SKonstantin Porotchkin				compatible = "syscon", "simple-mfd";
2707409b155SKonstantin Porotchkin				reg = <0x6f4000 0x2000>;
2717409b155SKonstantin Porotchkin
2727409b155SKonstantin Porotchkin				ap_pinctrl: pinctrl {
2737409b155SKonstantin Porotchkin					compatible = "marvell,ap806-pinctrl";
2747409b155SKonstantin Porotchkin
2757409b155SKonstantin Porotchkin					uart0_pins: uart0-pins {
2767409b155SKonstantin Porotchkin						marvell,pins = "mpp11", "mpp19";
2777409b155SKonstantin Porotchkin						marvell,function = "uart0";
2787409b155SKonstantin Porotchkin					};
2797409b155SKonstantin Porotchkin				};
2807409b155SKonstantin Porotchkin
2817409b155SKonstantin Porotchkin				ap_gpio: gpio@1040 {
2827409b155SKonstantin Porotchkin					compatible = "marvell,armada-8k-gpio";
2837409b155SKonstantin Porotchkin					offset = <0x1040>;
2847409b155SKonstantin Porotchkin					ngpios = <20>;
2857409b155SKonstantin Porotchkin					gpio-controller;
2867409b155SKonstantin Porotchkin					#gpio-cells = <2>;
2877409b155SKonstantin Porotchkin					gpio-ranges = <&ap_pinctrl 0 0 20>;
28835db5e32SBaruch Siach					marvell,pwm-offset = <0x10c0>;
28935db5e32SBaruch Siach					#pwm-cells = <2>;
29035db5e32SBaruch Siach					clocks = <&ap_clk 3>;
2917409b155SKonstantin Porotchkin				};
2927409b155SKonstantin Porotchkin			};
2937409b155SKonstantin Porotchkin
2947409b155SKonstantin Porotchkin			ap_syscon1: system-controller@6f8000 {
2957409b155SKonstantin Porotchkin				compatible = "syscon", "simple-mfd";
2967409b155SKonstantin Porotchkin				reg = <0x6f8000 0x1000>;
2977409b155SKonstantin Porotchkin				#address-cells = <1>;
2987409b155SKonstantin Porotchkin				#size-cells = <1>;
2997409b155SKonstantin Porotchkin
3007409b155SKonstantin Porotchkin				ap_thermal: thermal-sensor@80 {
3017409b155SKonstantin Porotchkin					compatible = "marvell,armada-ap806-thermal";
3027409b155SKonstantin Porotchkin					reg = <0x80 0x10>;
3037409b155SKonstantin Porotchkin					interrupt-parent = <&sei>;
3047409b155SKonstantin Porotchkin					interrupts = <18>;
3057409b155SKonstantin Porotchkin					#thermal-sensor-cells = <1>;
3067409b155SKonstantin Porotchkin				};
3077409b155SKonstantin Porotchkin			};
3087409b155SKonstantin Porotchkin		};
3097409b155SKonstantin Porotchkin	};
3107409b155SKonstantin Porotchkin
3117409b155SKonstantin Porotchkin	/*
3127409b155SKonstantin Porotchkin	 * The thermal IP features one internal sensor plus, if applicable, one
3137409b155SKonstantin Porotchkin	 * remote channel wired to one sensor per CPU.
3147409b155SKonstantin Porotchkin	 *
3157409b155SKonstantin Porotchkin	 * Only one thermal zone per AP/CP may trigger interrupts at a time, the
3167409b155SKonstantin Porotchkin	 * first one that will have a critical trip point will be chosen.
3177409b155SKonstantin Porotchkin	 */
3187409b155SKonstantin Porotchkin	thermal-zones {
319*4b6a412eSKrzysztof Kozlowski		ap_thermal_ic: ap-ic-thermal {
3207409b155SKonstantin Porotchkin			polling-delay-passive = <0>; /* Interrupt driven */
3217409b155SKonstantin Porotchkin			polling-delay = <0>; /* Interrupt driven */
3227409b155SKonstantin Porotchkin
3237409b155SKonstantin Porotchkin			thermal-sensors = <&ap_thermal 0>;
3247409b155SKonstantin Porotchkin
3257409b155SKonstantin Porotchkin			trips {
3267409b155SKonstantin Porotchkin				ap_crit: ap-crit {
3277409b155SKonstantin Porotchkin					temperature = <100000>; /* mC degrees */
3287409b155SKonstantin Porotchkin					hysteresis = <2000>; /* mC degrees */
3297409b155SKonstantin Porotchkin					type = "critical";
3307409b155SKonstantin Porotchkin				};
3317409b155SKonstantin Porotchkin			};
3327409b155SKonstantin Porotchkin
3337409b155SKonstantin Porotchkin			cooling-maps { };
3347409b155SKonstantin Porotchkin		};
3357409b155SKonstantin Porotchkin
336*4b6a412eSKrzysztof Kozlowski		ap_thermal_cpu0: ap-cpu0-thermal {
3377409b155SKonstantin Porotchkin			polling-delay-passive = <1000>;
3387409b155SKonstantin Porotchkin			polling-delay = <1000>;
3397409b155SKonstantin Porotchkin
3407409b155SKonstantin Porotchkin			thermal-sensors = <&ap_thermal 1>;
3417409b155SKonstantin Porotchkin
3427409b155SKonstantin Porotchkin			trips {
3437409b155SKonstantin Porotchkin				cpu0_hot: cpu0-hot {
3447409b155SKonstantin Porotchkin					temperature = <85000>;
3457409b155SKonstantin Porotchkin					hysteresis = <2000>;
3467409b155SKonstantin Porotchkin					type = "passive";
3477409b155SKonstantin Porotchkin				};
3487409b155SKonstantin Porotchkin				cpu0_emerg: cpu0-emerg {
3497409b155SKonstantin Porotchkin					temperature = <95000>;
3507409b155SKonstantin Porotchkin					hysteresis = <2000>;
3517409b155SKonstantin Porotchkin					type = "passive";
3527409b155SKonstantin Porotchkin				};
3537409b155SKonstantin Porotchkin			};
3547409b155SKonstantin Porotchkin
3557409b155SKonstantin Porotchkin			cooling-maps {
3567409b155SKonstantin Porotchkin				map0_hot: map0-hot {
3577409b155SKonstantin Porotchkin					trip = <&cpu0_hot>;
3587409b155SKonstantin Porotchkin					cooling-device = <&cpu0 1 2>,
3597409b155SKonstantin Porotchkin						<&cpu1 1 2>;
3607409b155SKonstantin Porotchkin				};
3617409b155SKonstantin Porotchkin				map0_emerg: map0-ermerg {
3627409b155SKonstantin Porotchkin					trip = <&cpu0_emerg>;
3637409b155SKonstantin Porotchkin					cooling-device = <&cpu0 3 3>,
3647409b155SKonstantin Porotchkin						<&cpu1 3 3>;
3657409b155SKonstantin Porotchkin				};
3667409b155SKonstantin Porotchkin			};
3677409b155SKonstantin Porotchkin		};
3687409b155SKonstantin Porotchkin
369*4b6a412eSKrzysztof Kozlowski		ap_thermal_cpu1: ap-cpu1-thermal {
3707409b155SKonstantin Porotchkin			polling-delay-passive = <1000>;
3717409b155SKonstantin Porotchkin			polling-delay = <1000>;
3727409b155SKonstantin Porotchkin
3737409b155SKonstantin Porotchkin			thermal-sensors = <&ap_thermal 2>;
3747409b155SKonstantin Porotchkin
3757409b155SKonstantin Porotchkin			trips {
3767409b155SKonstantin Porotchkin				cpu1_hot: cpu1-hot {
3777409b155SKonstantin Porotchkin					temperature = <85000>;
3787409b155SKonstantin Porotchkin					hysteresis = <2000>;
3797409b155SKonstantin Porotchkin					type = "passive";
3807409b155SKonstantin Porotchkin				};
3817409b155SKonstantin Porotchkin				cpu1_emerg: cpu1-emerg {
3827409b155SKonstantin Porotchkin					temperature = <95000>;
3837409b155SKonstantin Porotchkin					hysteresis = <2000>;
3847409b155SKonstantin Porotchkin					type = "passive";
3857409b155SKonstantin Porotchkin				};
3867409b155SKonstantin Porotchkin			};
3877409b155SKonstantin Porotchkin
3887409b155SKonstantin Porotchkin			cooling-maps {
3897409b155SKonstantin Porotchkin				map1_hot: map1-hot {
3907409b155SKonstantin Porotchkin					trip = <&cpu1_hot>;
3917409b155SKonstantin Porotchkin					cooling-device = <&cpu0 1 2>,
3927409b155SKonstantin Porotchkin						<&cpu1 1 2>;
3937409b155SKonstantin Porotchkin				};
3947409b155SKonstantin Porotchkin				map1_emerg: map1-emerg {
3957409b155SKonstantin Porotchkin					trip = <&cpu1_emerg>;
3967409b155SKonstantin Porotchkin					cooling-device = <&cpu0 3 3>,
3977409b155SKonstantin Porotchkin						<&cpu1 3 3>;
3987409b155SKonstantin Porotchkin				};
3997409b155SKonstantin Porotchkin			};
4007409b155SKonstantin Porotchkin		};
4017409b155SKonstantin Porotchkin
402*4b6a412eSKrzysztof Kozlowski		ap_thermal_cpu2: ap-cpu2-thermal {
4037409b155SKonstantin Porotchkin			polling-delay-passive = <1000>;
4047409b155SKonstantin Porotchkin			polling-delay = <1000>;
4057409b155SKonstantin Porotchkin
4067409b155SKonstantin Porotchkin			thermal-sensors = <&ap_thermal 3>;
4077409b155SKonstantin Porotchkin
4087409b155SKonstantin Porotchkin			trips {
4097409b155SKonstantin Porotchkin				cpu2_hot: cpu2-hot {
4107409b155SKonstantin Porotchkin					temperature = <85000>;
4117409b155SKonstantin Porotchkin					hysteresis = <2000>;
4127409b155SKonstantin Porotchkin					type = "passive";
4137409b155SKonstantin Porotchkin				};
4147409b155SKonstantin Porotchkin				cpu2_emerg: cpu2-emerg {
4157409b155SKonstantin Porotchkin					temperature = <95000>;
4167409b155SKonstantin Porotchkin					hysteresis = <2000>;
4177409b155SKonstantin Porotchkin					type = "passive";
4187409b155SKonstantin Porotchkin				};
4197409b155SKonstantin Porotchkin			};
4207409b155SKonstantin Porotchkin
4217409b155SKonstantin Porotchkin			cooling-maps {
4227409b155SKonstantin Porotchkin				map2_hot: map2-hot {
4237409b155SKonstantin Porotchkin					trip = <&cpu2_hot>;
4247409b155SKonstantin Porotchkin					cooling-device = <&cpu2 1 2>,
4257409b155SKonstantin Porotchkin						<&cpu3 1 2>;
4267409b155SKonstantin Porotchkin				};
4277409b155SKonstantin Porotchkin				map2_emerg: map2-emerg {
4287409b155SKonstantin Porotchkin					trip = <&cpu2_emerg>;
4297409b155SKonstantin Porotchkin					cooling-device = <&cpu2 3 3>,
4307409b155SKonstantin Porotchkin						<&cpu3 3 3>;
4317409b155SKonstantin Porotchkin				};
4327409b155SKonstantin Porotchkin			};
4337409b155SKonstantin Porotchkin		};
4347409b155SKonstantin Porotchkin
435*4b6a412eSKrzysztof Kozlowski		ap_thermal_cpu3: ap-cpu3-thermal {
4367409b155SKonstantin Porotchkin			polling-delay-passive = <1000>;
4377409b155SKonstantin Porotchkin			polling-delay = <1000>;
4387409b155SKonstantin Porotchkin
4397409b155SKonstantin Porotchkin			thermal-sensors = <&ap_thermal 4>;
4407409b155SKonstantin Porotchkin
4417409b155SKonstantin Porotchkin			trips {
4427409b155SKonstantin Porotchkin				cpu3_hot: cpu3-hot {
4437409b155SKonstantin Porotchkin					temperature = <85000>;
4447409b155SKonstantin Porotchkin					hysteresis = <2000>;
4457409b155SKonstantin Porotchkin					type = "passive";
4467409b155SKonstantin Porotchkin				};
4477409b155SKonstantin Porotchkin				cpu3_emerg: cpu3-emerg {
4487409b155SKonstantin Porotchkin					temperature = <95000>;
4497409b155SKonstantin Porotchkin					hysteresis = <2000>;
4507409b155SKonstantin Porotchkin					type = "passive";
4517409b155SKonstantin Porotchkin				};
4527409b155SKonstantin Porotchkin			};
4537409b155SKonstantin Porotchkin
4547409b155SKonstantin Porotchkin			cooling-maps {
4557409b155SKonstantin Porotchkin				map3_hot: map3-bhot {
4567409b155SKonstantin Porotchkin					trip = <&cpu3_hot>;
4577409b155SKonstantin Porotchkin					cooling-device = <&cpu2 1 2>,
4587409b155SKonstantin Porotchkin						<&cpu3 1 2>;
4597409b155SKonstantin Porotchkin				};
4607409b155SKonstantin Porotchkin				map3_emerg: map3-emerg {
4617409b155SKonstantin Porotchkin					trip = <&cpu3_emerg>;
4627409b155SKonstantin Porotchkin					cooling-device = <&cpu2 3 3>,
4637409b155SKonstantin Porotchkin						<&cpu3 3 3>;
4647409b155SKonstantin Porotchkin				};
4657409b155SKonstantin Porotchkin			};
4667409b155SKonstantin Porotchkin		};
4677409b155SKonstantin Porotchkin	};
4687409b155SKonstantin Porotchkin};
469