162306a36Sopenharmony_ci/*
262306a36Sopenharmony_ci * Copyright 2014 Chen-Yu Tsai
362306a36Sopenharmony_ci *
462306a36Sopenharmony_ci * Chen-Yu Tsai <wens@csie.org>
562306a36Sopenharmony_ci *
662306a36Sopenharmony_ci * This file is dual-licensed: you can use it either under the terms
762306a36Sopenharmony_ci * of the GPL or the X11 license, at your option. Note that this dual
862306a36Sopenharmony_ci * licensing only applies to this file, and not this project as a
962306a36Sopenharmony_ci * whole.
1062306a36Sopenharmony_ci *
1162306a36Sopenharmony_ci *  a) This file is free software; you can redistribute it and/or
1262306a36Sopenharmony_ci *     modify it under the terms of the GNU General Public License as
1362306a36Sopenharmony_ci *     published by the Free Software Foundation; either version 2 of the
1462306a36Sopenharmony_ci *     License, or (at your option) any later version.
1562306a36Sopenharmony_ci *
1662306a36Sopenharmony_ci *     This file is distributed in the hope that it will be useful,
1762306a36Sopenharmony_ci *     but WITHOUT ANY WARRANTY; without even the implied warranty of
1862306a36Sopenharmony_ci *     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
1962306a36Sopenharmony_ci *     GNU General Public License for more details.
2062306a36Sopenharmony_ci *
2162306a36Sopenharmony_ci * Or, alternatively,
2262306a36Sopenharmony_ci *
2362306a36Sopenharmony_ci *  b) Permission is hereby granted, free of charge, to any person
2462306a36Sopenharmony_ci *     obtaining a copy of this software and associated documentation
2562306a36Sopenharmony_ci *     files (the "Software"), to deal in the Software without
2662306a36Sopenharmony_ci *     restriction, including without limitation the rights to use,
2762306a36Sopenharmony_ci *     copy, modify, merge, publish, distribute, sublicense, and/or
2862306a36Sopenharmony_ci *     sell copies of the Software, and to permit persons to whom the
2962306a36Sopenharmony_ci *     Software is furnished to do so, subject to the following
3062306a36Sopenharmony_ci *     conditions:
3162306a36Sopenharmony_ci *
3262306a36Sopenharmony_ci *     The above copyright notice and this permission notice shall be
3362306a36Sopenharmony_ci *     included in all copies or substantial portions of the Software.
3462306a36Sopenharmony_ci *
3562306a36Sopenharmony_ci *     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
3662306a36Sopenharmony_ci *     EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
3762306a36Sopenharmony_ci *     OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
3862306a36Sopenharmony_ci *     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
3962306a36Sopenharmony_ci *     HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
4062306a36Sopenharmony_ci *     WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
4162306a36Sopenharmony_ci *     FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
4262306a36Sopenharmony_ci *     OTHER DEALINGS IN THE SOFTWARE.
4362306a36Sopenharmony_ci */
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci#include "sun8i-a23-a33.dtsi"
4662306a36Sopenharmony_ci#include <dt-bindings/thermal/thermal.h>
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci/ {
4962306a36Sopenharmony_ci	cpu0_opp_table: opp-table-cpu {
5062306a36Sopenharmony_ci		compatible = "operating-points-v2";
5162306a36Sopenharmony_ci		opp-shared;
5262306a36Sopenharmony_ci
5362306a36Sopenharmony_ci		opp-120000000 {
5462306a36Sopenharmony_ci			opp-hz = /bits/ 64 <120000000>;
5562306a36Sopenharmony_ci			opp-microvolt = <1040000>;
5662306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
5762306a36Sopenharmony_ci		};
5862306a36Sopenharmony_ci
5962306a36Sopenharmony_ci		opp-240000000 {
6062306a36Sopenharmony_ci			opp-hz = /bits/ 64 <240000000>;
6162306a36Sopenharmony_ci			opp-microvolt = <1040000>;
6262306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
6362306a36Sopenharmony_ci		};
6462306a36Sopenharmony_ci
6562306a36Sopenharmony_ci		opp-312000000 {
6662306a36Sopenharmony_ci			opp-hz = /bits/ 64 <312000000>;
6762306a36Sopenharmony_ci			opp-microvolt = <1040000>;
6862306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
6962306a36Sopenharmony_ci		};
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci		opp-408000000 {
7262306a36Sopenharmony_ci			opp-hz = /bits/ 64 <408000000>;
7362306a36Sopenharmony_ci			opp-microvolt = <1040000>;
7462306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
7562306a36Sopenharmony_ci		};
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci		opp-480000000 {
7862306a36Sopenharmony_ci			opp-hz = /bits/ 64 <480000000>;
7962306a36Sopenharmony_ci			opp-microvolt = <1040000>;
8062306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
8162306a36Sopenharmony_ci		};
8262306a36Sopenharmony_ci
8362306a36Sopenharmony_ci		opp-504000000 {
8462306a36Sopenharmony_ci			opp-hz = /bits/ 64 <504000000>;
8562306a36Sopenharmony_ci			opp-microvolt = <1040000>;
8662306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
8762306a36Sopenharmony_ci		};
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci		opp-600000000 {
9062306a36Sopenharmony_ci			opp-hz = /bits/ 64 <600000000>;
9162306a36Sopenharmony_ci			opp-microvolt = <1040000>;
9262306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
9362306a36Sopenharmony_ci		};
9462306a36Sopenharmony_ci
9562306a36Sopenharmony_ci		opp-648000000 {
9662306a36Sopenharmony_ci			opp-hz = /bits/ 64 <648000000>;
9762306a36Sopenharmony_ci			opp-microvolt = <1040000>;
9862306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
9962306a36Sopenharmony_ci		};
10062306a36Sopenharmony_ci
10162306a36Sopenharmony_ci		opp-720000000 {
10262306a36Sopenharmony_ci			opp-hz = /bits/ 64 <720000000>;
10362306a36Sopenharmony_ci			opp-microvolt = <1100000>;
10462306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
10562306a36Sopenharmony_ci		};
10662306a36Sopenharmony_ci
10762306a36Sopenharmony_ci		opp-816000000 {
10862306a36Sopenharmony_ci			opp-hz = /bits/ 64 <816000000>;
10962306a36Sopenharmony_ci			opp-microvolt = <1100000>;
11062306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
11162306a36Sopenharmony_ci		};
11262306a36Sopenharmony_ci
11362306a36Sopenharmony_ci		opp-912000000 {
11462306a36Sopenharmony_ci			opp-hz = /bits/ 64 <912000000>;
11562306a36Sopenharmony_ci			opp-microvolt = <1200000>;
11662306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
11762306a36Sopenharmony_ci		};
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci		opp-1008000000 {
12062306a36Sopenharmony_ci			opp-hz = /bits/ 64 <1008000000>;
12162306a36Sopenharmony_ci			opp-microvolt = <1200000>;
12262306a36Sopenharmony_ci			clock-latency-ns = <244144>; /* 8 32k periods */
12362306a36Sopenharmony_ci		};
12462306a36Sopenharmony_ci	};
12562306a36Sopenharmony_ci
12662306a36Sopenharmony_ci	cpus {
12762306a36Sopenharmony_ci		cpu@0 {
12862306a36Sopenharmony_ci			clocks = <&ccu CLK_CPUX>;
12962306a36Sopenharmony_ci			clock-names = "cpu";
13062306a36Sopenharmony_ci			operating-points-v2 = <&cpu0_opp_table>;
13162306a36Sopenharmony_ci			#cooling-cells = <2>;
13262306a36Sopenharmony_ci		};
13362306a36Sopenharmony_ci
13462306a36Sopenharmony_ci		cpu1: cpu@1 {
13562306a36Sopenharmony_ci			clocks = <&ccu CLK_CPUX>;
13662306a36Sopenharmony_ci			clock-names = "cpu";
13762306a36Sopenharmony_ci			operating-points-v2 = <&cpu0_opp_table>;
13862306a36Sopenharmony_ci			#cooling-cells = <2>;
13962306a36Sopenharmony_ci		};
14062306a36Sopenharmony_ci
14162306a36Sopenharmony_ci		cpu2: cpu@2 {
14262306a36Sopenharmony_ci			compatible = "arm,cortex-a7";
14362306a36Sopenharmony_ci			device_type = "cpu";
14462306a36Sopenharmony_ci			reg = <2>;
14562306a36Sopenharmony_ci			clocks = <&ccu CLK_CPUX>;
14662306a36Sopenharmony_ci			clock-names = "cpu";
14762306a36Sopenharmony_ci			operating-points-v2 = <&cpu0_opp_table>;
14862306a36Sopenharmony_ci			#cooling-cells = <2>;
14962306a36Sopenharmony_ci		};
15062306a36Sopenharmony_ci
15162306a36Sopenharmony_ci		cpu3: cpu@3 {
15262306a36Sopenharmony_ci			compatible = "arm,cortex-a7";
15362306a36Sopenharmony_ci			device_type = "cpu";
15462306a36Sopenharmony_ci			reg = <3>;
15562306a36Sopenharmony_ci			clocks = <&ccu CLK_CPUX>;
15662306a36Sopenharmony_ci			clock-names = "cpu";
15762306a36Sopenharmony_ci			operating-points-v2 = <&cpu0_opp_table>;
15862306a36Sopenharmony_ci			#cooling-cells = <2>;
15962306a36Sopenharmony_ci		};
16062306a36Sopenharmony_ci	};
16162306a36Sopenharmony_ci
16262306a36Sopenharmony_ci	iio-hwmon {
16362306a36Sopenharmony_ci		compatible = "iio-hwmon";
16462306a36Sopenharmony_ci		io-channels = <&ths>;
16562306a36Sopenharmony_ci	};
16662306a36Sopenharmony_ci
16762306a36Sopenharmony_ci	mali_opp_table: opp-table-gpu {
16862306a36Sopenharmony_ci		compatible = "operating-points-v2";
16962306a36Sopenharmony_ci
17062306a36Sopenharmony_ci		opp-144000000 {
17162306a36Sopenharmony_ci			opp-hz = /bits/ 64 <144000000>;
17262306a36Sopenharmony_ci		};
17362306a36Sopenharmony_ci
17462306a36Sopenharmony_ci		opp-240000000 {
17562306a36Sopenharmony_ci			opp-hz = /bits/ 64 <240000000>;
17662306a36Sopenharmony_ci		};
17762306a36Sopenharmony_ci
17862306a36Sopenharmony_ci		opp-384000000 {
17962306a36Sopenharmony_ci			opp-hz = /bits/ 64 <384000000>;
18062306a36Sopenharmony_ci		};
18162306a36Sopenharmony_ci	};
18262306a36Sopenharmony_ci
18362306a36Sopenharmony_ci	sound: sound {
18462306a36Sopenharmony_ci		compatible = "simple-audio-card";
18562306a36Sopenharmony_ci		simple-audio-card,name = "sun8i-a33-audio";
18662306a36Sopenharmony_ci		simple-audio-card,format = "i2s";
18762306a36Sopenharmony_ci		simple-audio-card,frame-master = <&link_codec>;
18862306a36Sopenharmony_ci		simple-audio-card,bitclock-master = <&link_codec>;
18962306a36Sopenharmony_ci		simple-audio-card,mclk-fs = <128>;
19062306a36Sopenharmony_ci		simple-audio-card,aux-devs = <&codec_analog>;
19162306a36Sopenharmony_ci		simple-audio-card,routing =
19262306a36Sopenharmony_ci			"Left DAC", "DACL",
19362306a36Sopenharmony_ci			"Right DAC", "DACR";
19462306a36Sopenharmony_ci		status = "disabled";
19562306a36Sopenharmony_ci
19662306a36Sopenharmony_ci		simple-audio-card,cpu {
19762306a36Sopenharmony_ci			sound-dai = <&dai>;
19862306a36Sopenharmony_ci		};
19962306a36Sopenharmony_ci
20062306a36Sopenharmony_ci		link_codec: simple-audio-card,codec {
20162306a36Sopenharmony_ci			sound-dai = <&codec 0>;
20262306a36Sopenharmony_ci		};
20362306a36Sopenharmony_ci	};
20462306a36Sopenharmony_ci
20562306a36Sopenharmony_ci	soc {
20662306a36Sopenharmony_ci		video-codec@1c0e000 {
20762306a36Sopenharmony_ci			compatible = "allwinner,sun8i-a33-video-engine";
20862306a36Sopenharmony_ci			reg = <0x01c0e000 0x1000>;
20962306a36Sopenharmony_ci			clocks = <&ccu CLK_BUS_VE>, <&ccu CLK_VE>,
21062306a36Sopenharmony_ci				 <&ccu CLK_DRAM_VE>;
21162306a36Sopenharmony_ci			clock-names = "ahb", "mod", "ram";
21262306a36Sopenharmony_ci			resets = <&ccu RST_BUS_VE>;
21362306a36Sopenharmony_ci			interrupts = <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
21462306a36Sopenharmony_ci			allwinner,sram = <&ve_sram 1>;
21562306a36Sopenharmony_ci		};
21662306a36Sopenharmony_ci
21762306a36Sopenharmony_ci		crypto: crypto-engine@1c15000 {
21862306a36Sopenharmony_ci			compatible = "allwinner,sun8i-a33-crypto";
21962306a36Sopenharmony_ci			reg = <0x01c15000 0x1000>;
22062306a36Sopenharmony_ci			interrupts = <GIC_SPI 80 IRQ_TYPE_LEVEL_HIGH>;
22162306a36Sopenharmony_ci			clocks = <&ccu CLK_BUS_SS>, <&ccu CLK_SS>;
22262306a36Sopenharmony_ci			clock-names = "ahb", "mod";
22362306a36Sopenharmony_ci			resets = <&ccu RST_BUS_SS>;
22462306a36Sopenharmony_ci			reset-names = "ahb";
22562306a36Sopenharmony_ci		};
22662306a36Sopenharmony_ci
22762306a36Sopenharmony_ci		dai: dai@1c22c00 {
22862306a36Sopenharmony_ci			#sound-dai-cells = <0>;
22962306a36Sopenharmony_ci			compatible = "allwinner,sun6i-a31-i2s";
23062306a36Sopenharmony_ci			reg = <0x01c22c00 0x200>;
23162306a36Sopenharmony_ci			interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
23262306a36Sopenharmony_ci			clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>;
23362306a36Sopenharmony_ci			clock-names = "apb", "mod";
23462306a36Sopenharmony_ci			resets = <&ccu RST_BUS_CODEC>;
23562306a36Sopenharmony_ci			dmas = <&dma 15>, <&dma 15>;
23662306a36Sopenharmony_ci			dma-names = "rx", "tx";
23762306a36Sopenharmony_ci			status = "disabled";
23862306a36Sopenharmony_ci		};
23962306a36Sopenharmony_ci
24062306a36Sopenharmony_ci		codec: codec@1c22e00 {
24162306a36Sopenharmony_ci			#sound-dai-cells = <1>;
24262306a36Sopenharmony_ci			compatible = "allwinner,sun8i-a33-codec";
24362306a36Sopenharmony_ci			reg = <0x01c22e00 0x400>;
24462306a36Sopenharmony_ci			interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
24562306a36Sopenharmony_ci			clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>;
24662306a36Sopenharmony_ci			clock-names = "bus", "mod";
24762306a36Sopenharmony_ci			status = "disabled";
24862306a36Sopenharmony_ci		};
24962306a36Sopenharmony_ci
25062306a36Sopenharmony_ci		ths: ths@1c25000 {
25162306a36Sopenharmony_ci			compatible = "allwinner,sun8i-a33-ths";
25262306a36Sopenharmony_ci			reg = <0x01c25000 0x100>;
25362306a36Sopenharmony_ci			#thermal-sensor-cells = <0>;
25462306a36Sopenharmony_ci			#io-channel-cells = <0>;
25562306a36Sopenharmony_ci		};
25662306a36Sopenharmony_ci
25762306a36Sopenharmony_ci		dsi: dsi@1ca0000 {
25862306a36Sopenharmony_ci			compatible = "allwinner,sun6i-a31-mipi-dsi";
25962306a36Sopenharmony_ci			reg = <0x01ca0000 0x1000>;
26062306a36Sopenharmony_ci			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
26162306a36Sopenharmony_ci			clocks = <&ccu CLK_BUS_MIPI_DSI>,
26262306a36Sopenharmony_ci				 <&ccu CLK_DSI_SCLK>;
26362306a36Sopenharmony_ci			clock-names = "bus", "mod";
26462306a36Sopenharmony_ci			resets = <&ccu RST_BUS_MIPI_DSI>;
26562306a36Sopenharmony_ci			phys = <&dphy>;
26662306a36Sopenharmony_ci			phy-names = "dphy";
26762306a36Sopenharmony_ci			status = "disabled";
26862306a36Sopenharmony_ci			#address-cells = <1>;
26962306a36Sopenharmony_ci			#size-cells = <0>;
27062306a36Sopenharmony_ci
27162306a36Sopenharmony_ci			port {
27262306a36Sopenharmony_ci				dsi_in_tcon0: endpoint {
27362306a36Sopenharmony_ci					remote-endpoint = <&tcon0_out_dsi>;
27462306a36Sopenharmony_ci				};
27562306a36Sopenharmony_ci			};
27662306a36Sopenharmony_ci		};
27762306a36Sopenharmony_ci
27862306a36Sopenharmony_ci		dphy: d-phy@1ca1000 {
27962306a36Sopenharmony_ci			compatible = "allwinner,sun6i-a31-mipi-dphy";
28062306a36Sopenharmony_ci			reg = <0x01ca1000 0x1000>;
28162306a36Sopenharmony_ci			interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>;
28262306a36Sopenharmony_ci			clocks = <&ccu CLK_BUS_MIPI_DSI>,
28362306a36Sopenharmony_ci				 <&ccu CLK_DSI_DPHY>;
28462306a36Sopenharmony_ci			clock-names = "bus", "mod";
28562306a36Sopenharmony_ci			resets = <&ccu RST_BUS_MIPI_DSI>;
28662306a36Sopenharmony_ci			status = "disabled";
28762306a36Sopenharmony_ci			#phy-cells = <0>;
28862306a36Sopenharmony_ci		};
28962306a36Sopenharmony_ci	};
29062306a36Sopenharmony_ci
29162306a36Sopenharmony_ci	thermal-zones {
29262306a36Sopenharmony_ci		cpu-thermal {
29362306a36Sopenharmony_ci			/* milliseconds */
29462306a36Sopenharmony_ci			polling-delay-passive = <250>;
29562306a36Sopenharmony_ci			polling-delay = <1000>;
29662306a36Sopenharmony_ci			thermal-sensors = <&ths>;
29762306a36Sopenharmony_ci
29862306a36Sopenharmony_ci			cooling-maps {
29962306a36Sopenharmony_ci				map0 {
30062306a36Sopenharmony_ci					trip = <&cpu_alert0>;
30162306a36Sopenharmony_ci					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
30262306a36Sopenharmony_ci							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
30362306a36Sopenharmony_ci							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
30462306a36Sopenharmony_ci							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
30562306a36Sopenharmony_ci				};
30662306a36Sopenharmony_ci				map1 {
30762306a36Sopenharmony_ci					trip = <&cpu_alert1>;
30862306a36Sopenharmony_ci					cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
30962306a36Sopenharmony_ci							 <&cpu1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
31062306a36Sopenharmony_ci							 <&cpu2 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
31162306a36Sopenharmony_ci							 <&cpu3 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
31262306a36Sopenharmony_ci				};
31362306a36Sopenharmony_ci
31462306a36Sopenharmony_ci				map2 {
31562306a36Sopenharmony_ci					trip = <&gpu_alert0>;
31662306a36Sopenharmony_ci					cooling-device = <&mali 1 THERMAL_NO_LIMIT>;
31762306a36Sopenharmony_ci				};
31862306a36Sopenharmony_ci
31962306a36Sopenharmony_ci				map3 {
32062306a36Sopenharmony_ci					trip = <&gpu_alert1>;
32162306a36Sopenharmony_ci					cooling-device = <&mali 2 THERMAL_NO_LIMIT>;
32262306a36Sopenharmony_ci				};
32362306a36Sopenharmony_ci			};
32462306a36Sopenharmony_ci
32562306a36Sopenharmony_ci			trips {
32662306a36Sopenharmony_ci				cpu_alert0: cpu_alert0 {
32762306a36Sopenharmony_ci					/* milliCelsius */
32862306a36Sopenharmony_ci					temperature = <75000>;
32962306a36Sopenharmony_ci					hysteresis = <2000>;
33062306a36Sopenharmony_ci					type = "passive";
33162306a36Sopenharmony_ci				};
33262306a36Sopenharmony_ci
33362306a36Sopenharmony_ci				gpu_alert0: gpu_alert0 {
33462306a36Sopenharmony_ci					/* milliCelsius */
33562306a36Sopenharmony_ci					temperature = <85000>;
33662306a36Sopenharmony_ci					hysteresis = <2000>;
33762306a36Sopenharmony_ci					type = "passive";
33862306a36Sopenharmony_ci				};
33962306a36Sopenharmony_ci
34062306a36Sopenharmony_ci				cpu_alert1: cpu_alert1 {
34162306a36Sopenharmony_ci					/* milliCelsius */
34262306a36Sopenharmony_ci					temperature = <90000>;
34362306a36Sopenharmony_ci					hysteresis = <2000>;
34462306a36Sopenharmony_ci					type = "hot";
34562306a36Sopenharmony_ci				};
34662306a36Sopenharmony_ci
34762306a36Sopenharmony_ci				gpu_alert1: gpu_alert1 {
34862306a36Sopenharmony_ci					/* milliCelsius */
34962306a36Sopenharmony_ci					temperature = <95000>;
35062306a36Sopenharmony_ci					hysteresis = <2000>;
35162306a36Sopenharmony_ci					type = "hot";
35262306a36Sopenharmony_ci				};
35362306a36Sopenharmony_ci
35462306a36Sopenharmony_ci				cpu_crit: cpu_crit {
35562306a36Sopenharmony_ci					/* milliCelsius */
35662306a36Sopenharmony_ci					temperature = <110000>;
35762306a36Sopenharmony_ci					hysteresis = <2000>;
35862306a36Sopenharmony_ci					type = "critical";
35962306a36Sopenharmony_ci				};
36062306a36Sopenharmony_ci			};
36162306a36Sopenharmony_ci		};
36262306a36Sopenharmony_ci	};
36362306a36Sopenharmony_ci};
36462306a36Sopenharmony_ci
36562306a36Sopenharmony_ci&be0 {
36662306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-display-backend";
36762306a36Sopenharmony_ci	/* A33 has an extra "SAT" module packed inside the display backend */
36862306a36Sopenharmony_ci	reg = <0x01e60000 0x10000>, <0x01e80000 0x1000>;
36962306a36Sopenharmony_ci	reg-names = "be", "sat";
37062306a36Sopenharmony_ci	clocks = <&ccu CLK_BUS_DE_BE>, <&ccu CLK_DE_BE>,
37162306a36Sopenharmony_ci		 <&ccu CLK_DRAM_DE_BE>, <&ccu CLK_BUS_SAT>;
37262306a36Sopenharmony_ci	clock-names = "ahb", "mod",
37362306a36Sopenharmony_ci		      "ram", "sat";
37462306a36Sopenharmony_ci	resets = <&ccu RST_BUS_DE_BE>, <&ccu RST_BUS_SAT>;
37562306a36Sopenharmony_ci	reset-names = "be", "sat";
37662306a36Sopenharmony_ci};
37762306a36Sopenharmony_ci
37862306a36Sopenharmony_ci&ccu {
37962306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-ccu";
38062306a36Sopenharmony_ci};
38162306a36Sopenharmony_ci
38262306a36Sopenharmony_ci&de {
38362306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-display-engine";
38462306a36Sopenharmony_ci};
38562306a36Sopenharmony_ci
38662306a36Sopenharmony_ci&drc0 {
38762306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-drc";
38862306a36Sopenharmony_ci};
38962306a36Sopenharmony_ci
39062306a36Sopenharmony_ci&fe0 {
39162306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-display-frontend";
39262306a36Sopenharmony_ci};
39362306a36Sopenharmony_ci
39462306a36Sopenharmony_ci&mali {
39562306a36Sopenharmony_ci	operating-points-v2 = <&mali_opp_table>;
39662306a36Sopenharmony_ci};
39762306a36Sopenharmony_ci
39862306a36Sopenharmony_ci&pio {
39962306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-pinctrl";
40062306a36Sopenharmony_ci	interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
40162306a36Sopenharmony_ci		     <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
40262306a36Sopenharmony_ci
40362306a36Sopenharmony_ci	uart0_pb_pins: uart0-pb-pins {
40462306a36Sopenharmony_ci		pins = "PB0", "PB1";
40562306a36Sopenharmony_ci		function = "uart0";
40662306a36Sopenharmony_ci	};
40762306a36Sopenharmony_ci
40862306a36Sopenharmony_ci};
40962306a36Sopenharmony_ci
41062306a36Sopenharmony_ci&tcon0 {
41162306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-tcon";
41262306a36Sopenharmony_ci};
41362306a36Sopenharmony_ci
41462306a36Sopenharmony_ci&tcon0_out {
41562306a36Sopenharmony_ci	#address-cells = <1>;
41662306a36Sopenharmony_ci	#size-cells = <0>;
41762306a36Sopenharmony_ci
41862306a36Sopenharmony_ci	tcon0_out_dsi: endpoint@1 {
41962306a36Sopenharmony_ci		reg = <1>;
42062306a36Sopenharmony_ci		remote-endpoint = <&dsi_in_tcon0>;
42162306a36Sopenharmony_ci	};
42262306a36Sopenharmony_ci};
42362306a36Sopenharmony_ci
42462306a36Sopenharmony_ci&usb_otg {
42562306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-musb";
42662306a36Sopenharmony_ci};
42762306a36Sopenharmony_ci
42862306a36Sopenharmony_ci&usbphy {
42962306a36Sopenharmony_ci	compatible = "allwinner,sun8i-a33-usb-phy";
43062306a36Sopenharmony_ci	reg = <0x01c19400 0x14>, <0x01c1a800 0x4>;
43162306a36Sopenharmony_ci	reg-names = "phy_ctrl", "pmu1";
43262306a36Sopenharmony_ci};
433