xref: /linux/scripts/dtc/include-prefixes/riscv/starfive/jh7110.dtsi (revision e2c510d6d630fe6593a0cf87531913b4b08ebeb1)
160bf0a39SEmil Renner Berthing// SPDX-License-Identifier: GPL-2.0 OR MIT
260bf0a39SEmil Renner Berthing/*
360bf0a39SEmil Renner Berthing * Copyright (C) 2022 StarFive Technology Co., Ltd.
460bf0a39SEmil Renner Berthing * Copyright (C) 2022 Emil Renner Berthing <kernel@esmil.dk>
560bf0a39SEmil Renner Berthing */
660bf0a39SEmil Renner Berthing
760bf0a39SEmil Renner Berthing/dts-v1/;
860bf0a39SEmil Renner Berthing#include <dt-bindings/clock/starfive,jh7110-crg.h>
960bf0a39SEmil Renner Berthing#include <dt-bindings/reset/starfive,jh7110-crg.h>
1060bf0a39SEmil Renner Berthing
1160bf0a39SEmil Renner Berthing/ {
1260bf0a39SEmil Renner Berthing	compatible = "starfive,jh7110";
1360bf0a39SEmil Renner Berthing	#address-cells = <2>;
1460bf0a39SEmil Renner Berthing	#size-cells = <2>;
1560bf0a39SEmil Renner Berthing
1660bf0a39SEmil Renner Berthing	cpus {
1760bf0a39SEmil Renner Berthing		#address-cells = <1>;
1860bf0a39SEmil Renner Berthing		#size-cells = <0>;
1960bf0a39SEmil Renner Berthing
2060bf0a39SEmil Renner Berthing		S7_0: cpu@0 {
2160bf0a39SEmil Renner Berthing			compatible = "sifive,s7", "riscv";
2260bf0a39SEmil Renner Berthing			reg = <0>;
2360bf0a39SEmil Renner Berthing			device_type = "cpu";
2460bf0a39SEmil Renner Berthing			i-cache-block-size = <64>;
2560bf0a39SEmil Renner Berthing			i-cache-sets = <64>;
2660bf0a39SEmil Renner Berthing			i-cache-size = <16384>;
2760bf0a39SEmil Renner Berthing			next-level-cache = <&ccache>;
2860bf0a39SEmil Renner Berthing			riscv,isa = "rv64imac_zba_zbb";
2960bf0a39SEmil Renner Berthing			status = "disabled";
3060bf0a39SEmil Renner Berthing
3160bf0a39SEmil Renner Berthing			cpu0_intc: interrupt-controller {
3260bf0a39SEmil Renner Berthing				compatible = "riscv,cpu-intc";
3360bf0a39SEmil Renner Berthing				interrupt-controller;
3460bf0a39SEmil Renner Berthing				#interrupt-cells = <1>;
3560bf0a39SEmil Renner Berthing			};
3660bf0a39SEmil Renner Berthing		};
3760bf0a39SEmil Renner Berthing
3860bf0a39SEmil Renner Berthing		U74_1: cpu@1 {
3960bf0a39SEmil Renner Berthing			compatible = "sifive,u74-mc", "riscv";
4060bf0a39SEmil Renner Berthing			reg = <1>;
4160bf0a39SEmil Renner Berthing			d-cache-block-size = <64>;
4260bf0a39SEmil Renner Berthing			d-cache-sets = <64>;
4360bf0a39SEmil Renner Berthing			d-cache-size = <32768>;
4460bf0a39SEmil Renner Berthing			d-tlb-sets = <1>;
4560bf0a39SEmil Renner Berthing			d-tlb-size = <40>;
4660bf0a39SEmil Renner Berthing			device_type = "cpu";
4760bf0a39SEmil Renner Berthing			i-cache-block-size = <64>;
4860bf0a39SEmil Renner Berthing			i-cache-sets = <64>;
4960bf0a39SEmil Renner Berthing			i-cache-size = <32768>;
5060bf0a39SEmil Renner Berthing			i-tlb-sets = <1>;
5160bf0a39SEmil Renner Berthing			i-tlb-size = <40>;
5260bf0a39SEmil Renner Berthing			mmu-type = "riscv,sv39";
5360bf0a39SEmil Renner Berthing			next-level-cache = <&ccache>;
5460bf0a39SEmil Renner Berthing			riscv,isa = "rv64imafdc_zba_zbb";
5560bf0a39SEmil Renner Berthing			tlb-split;
56*e2c510d6SMason Huo			operating-points-v2 = <&cpu_opp>;
57*e2c510d6SMason Huo			clocks = <&syscrg JH7110_SYSCLK_CPU_CORE>;
58*e2c510d6SMason Huo			clock-names = "cpu";
5960bf0a39SEmil Renner Berthing
6060bf0a39SEmil Renner Berthing			cpu1_intc: interrupt-controller {
6160bf0a39SEmil Renner Berthing				compatible = "riscv,cpu-intc";
6260bf0a39SEmil Renner Berthing				interrupt-controller;
6360bf0a39SEmil Renner Berthing				#interrupt-cells = <1>;
6460bf0a39SEmil Renner Berthing			};
6560bf0a39SEmil Renner Berthing		};
6660bf0a39SEmil Renner Berthing
6760bf0a39SEmil Renner Berthing		U74_2: cpu@2 {
6860bf0a39SEmil Renner Berthing			compatible = "sifive,u74-mc", "riscv";
6960bf0a39SEmil Renner Berthing			reg = <2>;
7060bf0a39SEmil Renner Berthing			d-cache-block-size = <64>;
7160bf0a39SEmil Renner Berthing			d-cache-sets = <64>;
7260bf0a39SEmil Renner Berthing			d-cache-size = <32768>;
7360bf0a39SEmil Renner Berthing			d-tlb-sets = <1>;
7460bf0a39SEmil Renner Berthing			d-tlb-size = <40>;
7560bf0a39SEmil Renner Berthing			device_type = "cpu";
7660bf0a39SEmil Renner Berthing			i-cache-block-size = <64>;
7760bf0a39SEmil Renner Berthing			i-cache-sets = <64>;
7860bf0a39SEmil Renner Berthing			i-cache-size = <32768>;
7960bf0a39SEmil Renner Berthing			i-tlb-sets = <1>;
8060bf0a39SEmil Renner Berthing			i-tlb-size = <40>;
8160bf0a39SEmil Renner Berthing			mmu-type = "riscv,sv39";
8260bf0a39SEmil Renner Berthing			next-level-cache = <&ccache>;
8360bf0a39SEmil Renner Berthing			riscv,isa = "rv64imafdc_zba_zbb";
8460bf0a39SEmil Renner Berthing			tlb-split;
85*e2c510d6SMason Huo			operating-points-v2 = <&cpu_opp>;
86*e2c510d6SMason Huo			clocks = <&syscrg JH7110_SYSCLK_CPU_CORE>;
87*e2c510d6SMason Huo			clock-names = "cpu";
8860bf0a39SEmil Renner Berthing
8960bf0a39SEmil Renner Berthing			cpu2_intc: interrupt-controller {
9060bf0a39SEmil Renner Berthing				compatible = "riscv,cpu-intc";
9160bf0a39SEmil Renner Berthing				interrupt-controller;
9260bf0a39SEmil Renner Berthing				#interrupt-cells = <1>;
9360bf0a39SEmil Renner Berthing			};
9460bf0a39SEmil Renner Berthing		};
9560bf0a39SEmil Renner Berthing
9660bf0a39SEmil Renner Berthing		U74_3: cpu@3 {
9760bf0a39SEmil Renner Berthing			compatible = "sifive,u74-mc", "riscv";
9860bf0a39SEmil Renner Berthing			reg = <3>;
9960bf0a39SEmil Renner Berthing			d-cache-block-size = <64>;
10060bf0a39SEmil Renner Berthing			d-cache-sets = <64>;
10160bf0a39SEmil Renner Berthing			d-cache-size = <32768>;
10260bf0a39SEmil Renner Berthing			d-tlb-sets = <1>;
10360bf0a39SEmil Renner Berthing			d-tlb-size = <40>;
10460bf0a39SEmil Renner Berthing			device_type = "cpu";
10560bf0a39SEmil Renner Berthing			i-cache-block-size = <64>;
10660bf0a39SEmil Renner Berthing			i-cache-sets = <64>;
10760bf0a39SEmil Renner Berthing			i-cache-size = <32768>;
10860bf0a39SEmil Renner Berthing			i-tlb-sets = <1>;
10960bf0a39SEmil Renner Berthing			i-tlb-size = <40>;
11060bf0a39SEmil Renner Berthing			mmu-type = "riscv,sv39";
11160bf0a39SEmil Renner Berthing			next-level-cache = <&ccache>;
11260bf0a39SEmil Renner Berthing			riscv,isa = "rv64imafdc_zba_zbb";
11360bf0a39SEmil Renner Berthing			tlb-split;
114*e2c510d6SMason Huo			operating-points-v2 = <&cpu_opp>;
115*e2c510d6SMason Huo			clocks = <&syscrg JH7110_SYSCLK_CPU_CORE>;
116*e2c510d6SMason Huo			clock-names = "cpu";
11760bf0a39SEmil Renner Berthing
11860bf0a39SEmil Renner Berthing			cpu3_intc: interrupt-controller {
11960bf0a39SEmil Renner Berthing				compatible = "riscv,cpu-intc";
12060bf0a39SEmil Renner Berthing				interrupt-controller;
12160bf0a39SEmil Renner Berthing				#interrupt-cells = <1>;
12260bf0a39SEmil Renner Berthing			};
12360bf0a39SEmil Renner Berthing		};
12460bf0a39SEmil Renner Berthing
12560bf0a39SEmil Renner Berthing		U74_4: cpu@4 {
12660bf0a39SEmil Renner Berthing			compatible = "sifive,u74-mc", "riscv";
12760bf0a39SEmil Renner Berthing			reg = <4>;
12860bf0a39SEmil Renner Berthing			d-cache-block-size = <64>;
12960bf0a39SEmil Renner Berthing			d-cache-sets = <64>;
13060bf0a39SEmil Renner Berthing			d-cache-size = <32768>;
13160bf0a39SEmil Renner Berthing			d-tlb-sets = <1>;
13260bf0a39SEmil Renner Berthing			d-tlb-size = <40>;
13360bf0a39SEmil Renner Berthing			device_type = "cpu";
13460bf0a39SEmil Renner Berthing			i-cache-block-size = <64>;
13560bf0a39SEmil Renner Berthing			i-cache-sets = <64>;
13660bf0a39SEmil Renner Berthing			i-cache-size = <32768>;
13760bf0a39SEmil Renner Berthing			i-tlb-sets = <1>;
13860bf0a39SEmil Renner Berthing			i-tlb-size = <40>;
13960bf0a39SEmil Renner Berthing			mmu-type = "riscv,sv39";
14060bf0a39SEmil Renner Berthing			next-level-cache = <&ccache>;
14160bf0a39SEmil Renner Berthing			riscv,isa = "rv64imafdc_zba_zbb";
14260bf0a39SEmil Renner Berthing			tlb-split;
143*e2c510d6SMason Huo			operating-points-v2 = <&cpu_opp>;
144*e2c510d6SMason Huo			clocks = <&syscrg JH7110_SYSCLK_CPU_CORE>;
145*e2c510d6SMason Huo			clock-names = "cpu";
14660bf0a39SEmil Renner Berthing
14760bf0a39SEmil Renner Berthing			cpu4_intc: interrupt-controller {
14860bf0a39SEmil Renner Berthing				compatible = "riscv,cpu-intc";
14960bf0a39SEmil Renner Berthing				interrupt-controller;
15060bf0a39SEmil Renner Berthing				#interrupt-cells = <1>;
15160bf0a39SEmil Renner Berthing			};
15260bf0a39SEmil Renner Berthing		};
15360bf0a39SEmil Renner Berthing
15460bf0a39SEmil Renner Berthing		cpu-map {
15560bf0a39SEmil Renner Berthing			cluster0 {
15660bf0a39SEmil Renner Berthing				core0 {
15760bf0a39SEmil Renner Berthing					cpu = <&S7_0>;
15860bf0a39SEmil Renner Berthing				};
15960bf0a39SEmil Renner Berthing
16060bf0a39SEmil Renner Berthing				core1 {
16160bf0a39SEmil Renner Berthing					cpu = <&U74_1>;
16260bf0a39SEmil Renner Berthing				};
16360bf0a39SEmil Renner Berthing
16460bf0a39SEmil Renner Berthing				core2 {
16560bf0a39SEmil Renner Berthing					cpu = <&U74_2>;
16660bf0a39SEmil Renner Berthing				};
16760bf0a39SEmil Renner Berthing
16860bf0a39SEmil Renner Berthing				core3 {
16960bf0a39SEmil Renner Berthing					cpu = <&U74_3>;
17060bf0a39SEmil Renner Berthing				};
17160bf0a39SEmil Renner Berthing
17260bf0a39SEmil Renner Berthing				core4 {
17360bf0a39SEmil Renner Berthing					cpu = <&U74_4>;
17460bf0a39SEmil Renner Berthing				};
17560bf0a39SEmil Renner Berthing			};
17660bf0a39SEmil Renner Berthing		};
17760bf0a39SEmil Renner Berthing	};
17860bf0a39SEmil Renner Berthing
179*e2c510d6SMason Huo	cpu_opp: opp-table-0 {
180*e2c510d6SMason Huo			compatible = "operating-points-v2";
181*e2c510d6SMason Huo			opp-shared;
182*e2c510d6SMason Huo			opp-375000000 {
183*e2c510d6SMason Huo					opp-hz = /bits/ 64 <375000000>;
184*e2c510d6SMason Huo					opp-microvolt = <800000>;
185*e2c510d6SMason Huo			};
186*e2c510d6SMason Huo			opp-500000000 {
187*e2c510d6SMason Huo					opp-hz = /bits/ 64 <500000000>;
188*e2c510d6SMason Huo					opp-microvolt = <800000>;
189*e2c510d6SMason Huo			};
190*e2c510d6SMason Huo			opp-750000000 {
191*e2c510d6SMason Huo					opp-hz = /bits/ 64 <750000000>;
192*e2c510d6SMason Huo					opp-microvolt = <800000>;
193*e2c510d6SMason Huo			};
194*e2c510d6SMason Huo			opp-1500000000 {
195*e2c510d6SMason Huo					opp-hz = /bits/ 64 <1500000000>;
196*e2c510d6SMason Huo					opp-microvolt = <1040000>;
197*e2c510d6SMason Huo			};
198*e2c510d6SMason Huo	};
199*e2c510d6SMason Huo
20060bf0a39SEmil Renner Berthing	gmac0_rgmii_rxin: gmac0-rgmii-rxin-clock {
20160bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
20260bf0a39SEmil Renner Berthing		clock-output-names = "gmac0_rgmii_rxin";
20360bf0a39SEmil Renner Berthing		#clock-cells = <0>;
20460bf0a39SEmil Renner Berthing	};
20560bf0a39SEmil Renner Berthing
20660bf0a39SEmil Renner Berthing	gmac0_rmii_refin: gmac0-rmii-refin-clock {
20760bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
20860bf0a39SEmil Renner Berthing		clock-output-names = "gmac0_rmii_refin";
20960bf0a39SEmil Renner Berthing		#clock-cells = <0>;
21060bf0a39SEmil Renner Berthing	};
21160bf0a39SEmil Renner Berthing
21260bf0a39SEmil Renner Berthing	gmac1_rgmii_rxin: gmac1-rgmii-rxin-clock {
21360bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
21460bf0a39SEmil Renner Berthing		clock-output-names = "gmac1_rgmii_rxin";
21560bf0a39SEmil Renner Berthing		#clock-cells = <0>;
21660bf0a39SEmil Renner Berthing	};
21760bf0a39SEmil Renner Berthing
21860bf0a39SEmil Renner Berthing	gmac1_rmii_refin: gmac1-rmii-refin-clock {
21960bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
22060bf0a39SEmil Renner Berthing		clock-output-names = "gmac1_rmii_refin";
22160bf0a39SEmil Renner Berthing		#clock-cells = <0>;
22260bf0a39SEmil Renner Berthing	};
22360bf0a39SEmil Renner Berthing
22460bf0a39SEmil Renner Berthing	i2srx_bclk_ext: i2srx-bclk-ext-clock {
22560bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
22660bf0a39SEmil Renner Berthing		clock-output-names = "i2srx_bclk_ext";
22760bf0a39SEmil Renner Berthing		#clock-cells = <0>;
22860bf0a39SEmil Renner Berthing	};
22960bf0a39SEmil Renner Berthing
23060bf0a39SEmil Renner Berthing	i2srx_lrck_ext: i2srx-lrck-ext-clock {
23160bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
23260bf0a39SEmil Renner Berthing		clock-output-names = "i2srx_lrck_ext";
23360bf0a39SEmil Renner Berthing		#clock-cells = <0>;
23460bf0a39SEmil Renner Berthing	};
23560bf0a39SEmil Renner Berthing
23660bf0a39SEmil Renner Berthing	i2stx_bclk_ext: i2stx-bclk-ext-clock {
23760bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
23860bf0a39SEmil Renner Berthing		clock-output-names = "i2stx_bclk_ext";
23960bf0a39SEmil Renner Berthing		#clock-cells = <0>;
24060bf0a39SEmil Renner Berthing	};
24160bf0a39SEmil Renner Berthing
24260bf0a39SEmil Renner Berthing	i2stx_lrck_ext: i2stx-lrck-ext-clock {
24360bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
24460bf0a39SEmil Renner Berthing		clock-output-names = "i2stx_lrck_ext";
24560bf0a39SEmil Renner Berthing		#clock-cells = <0>;
24660bf0a39SEmil Renner Berthing	};
24760bf0a39SEmil Renner Berthing
24860bf0a39SEmil Renner Berthing	mclk_ext: mclk-ext-clock {
24960bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
25060bf0a39SEmil Renner Berthing		clock-output-names = "mclk_ext";
25160bf0a39SEmil Renner Berthing		#clock-cells = <0>;
25260bf0a39SEmil Renner Berthing	};
25360bf0a39SEmil Renner Berthing
25460bf0a39SEmil Renner Berthing	osc: oscillator {
25560bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
25660bf0a39SEmil Renner Berthing		clock-output-names = "osc";
25760bf0a39SEmil Renner Berthing		#clock-cells = <0>;
25860bf0a39SEmil Renner Berthing	};
25960bf0a39SEmil Renner Berthing
26060bf0a39SEmil Renner Berthing	rtc_osc: rtc-oscillator {
26160bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
26260bf0a39SEmil Renner Berthing		clock-output-names = "rtc_osc";
26360bf0a39SEmil Renner Berthing		#clock-cells = <0>;
26460bf0a39SEmil Renner Berthing	};
26560bf0a39SEmil Renner Berthing
26660bf0a39SEmil Renner Berthing	tdm_ext: tdm-ext-clock {
26760bf0a39SEmil Renner Berthing		compatible = "fixed-clock";
26860bf0a39SEmil Renner Berthing		clock-output-names = "tdm_ext";
26960bf0a39SEmil Renner Berthing		#clock-cells = <0>;
27060bf0a39SEmil Renner Berthing	};
27160bf0a39SEmil Renner Berthing
27260bf0a39SEmil Renner Berthing	soc {
27360bf0a39SEmil Renner Berthing		compatible = "simple-bus";
27460bf0a39SEmil Renner Berthing		interrupt-parent = <&plic>;
27560bf0a39SEmil Renner Berthing		#address-cells = <2>;
27660bf0a39SEmil Renner Berthing		#size-cells = <2>;
27760bf0a39SEmil Renner Berthing		ranges;
27860bf0a39SEmil Renner Berthing
27960bf0a39SEmil Renner Berthing		clint: timer@2000000 {
28060bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-clint", "sifive,clint0";
28160bf0a39SEmil Renner Berthing			reg = <0x0 0x2000000 0x0 0x10000>;
28260bf0a39SEmil Renner Berthing			interrupts-extended = <&cpu0_intc 3>, <&cpu0_intc 7>,
28360bf0a39SEmil Renner Berthing					      <&cpu1_intc 3>, <&cpu1_intc 7>,
28460bf0a39SEmil Renner Berthing					      <&cpu2_intc 3>, <&cpu2_intc 7>,
28560bf0a39SEmil Renner Berthing					      <&cpu3_intc 3>, <&cpu3_intc 7>,
28660bf0a39SEmil Renner Berthing					      <&cpu4_intc 3>, <&cpu4_intc 7>;
28760bf0a39SEmil Renner Berthing		};
28860bf0a39SEmil Renner Berthing
28960bf0a39SEmil Renner Berthing		ccache: cache-controller@2010000 {
29060bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-ccache", "sifive,ccache0", "cache";
29160bf0a39SEmil Renner Berthing			reg = <0x0 0x2010000 0x0 0x4000>;
29260bf0a39SEmil Renner Berthing			interrupts = <1>, <3>, <4>, <2>;
29360bf0a39SEmil Renner Berthing			cache-block-size = <64>;
29460bf0a39SEmil Renner Berthing			cache-level = <2>;
29560bf0a39SEmil Renner Berthing			cache-sets = <2048>;
29660bf0a39SEmil Renner Berthing			cache-size = <2097152>;
29760bf0a39SEmil Renner Berthing			cache-unified;
29860bf0a39SEmil Renner Berthing		};
29960bf0a39SEmil Renner Berthing
30060bf0a39SEmil Renner Berthing		plic: interrupt-controller@c000000 {
30160bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-plic", "sifive,plic-1.0.0";
30260bf0a39SEmil Renner Berthing			reg = <0x0 0xc000000 0x0 0x4000000>;
30360bf0a39SEmil Renner Berthing			interrupts-extended = <&cpu0_intc 11>,
30460bf0a39SEmil Renner Berthing					      <&cpu1_intc 11>, <&cpu1_intc 9>,
30560bf0a39SEmil Renner Berthing					      <&cpu2_intc 11>, <&cpu2_intc 9>,
30660bf0a39SEmil Renner Berthing					      <&cpu3_intc 11>, <&cpu3_intc 9>,
30760bf0a39SEmil Renner Berthing					      <&cpu4_intc 11>, <&cpu4_intc 9>;
30860bf0a39SEmil Renner Berthing			interrupt-controller;
30960bf0a39SEmil Renner Berthing			#interrupt-cells = <1>;
31060bf0a39SEmil Renner Berthing			#address-cells = <0>;
31160bf0a39SEmil Renner Berthing			riscv,ndev = <136>;
31260bf0a39SEmil Renner Berthing		};
31360bf0a39SEmil Renner Berthing
31460bf0a39SEmil Renner Berthing		uart0: serial@10000000 {
31560bf0a39SEmil Renner Berthing			compatible = "snps,dw-apb-uart";
31660bf0a39SEmil Renner Berthing			reg = <0x0 0x10000000 0x0 0x10000>;
31760bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_UART0_CORE>,
31860bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_UART0_APB>;
31960bf0a39SEmil Renner Berthing			clock-names = "baudclk", "apb_pclk";
32060bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_UART0_APB>;
32160bf0a39SEmil Renner Berthing			interrupts = <32>;
32260bf0a39SEmil Renner Berthing			reg-io-width = <4>;
32360bf0a39SEmil Renner Berthing			reg-shift = <2>;
32460bf0a39SEmil Renner Berthing			status = "disabled";
32560bf0a39SEmil Renner Berthing		};
32660bf0a39SEmil Renner Berthing
32760bf0a39SEmil Renner Berthing		uart1: serial@10010000 {
32860bf0a39SEmil Renner Berthing			compatible = "snps,dw-apb-uart";
32960bf0a39SEmil Renner Berthing			reg = <0x0 0x10010000 0x0 0x10000>;
33060bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_UART1_CORE>,
33160bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_UART1_APB>;
33260bf0a39SEmil Renner Berthing			clock-names = "baudclk", "apb_pclk";
33360bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_UART1_APB>;
33460bf0a39SEmil Renner Berthing			interrupts = <33>;
33560bf0a39SEmil Renner Berthing			reg-io-width = <4>;
33660bf0a39SEmil Renner Berthing			reg-shift = <2>;
33760bf0a39SEmil Renner Berthing			status = "disabled";
33860bf0a39SEmil Renner Berthing		};
33960bf0a39SEmil Renner Berthing
34060bf0a39SEmil Renner Berthing		uart2: serial@10020000 {
34160bf0a39SEmil Renner Berthing			compatible = "snps,dw-apb-uart";
34260bf0a39SEmil Renner Berthing			reg = <0x0 0x10020000 0x0 0x10000>;
34360bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_UART2_CORE>,
34460bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_UART2_APB>;
34560bf0a39SEmil Renner Berthing			clock-names = "baudclk", "apb_pclk";
34660bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_UART2_APB>;
34760bf0a39SEmil Renner Berthing			interrupts = <34>;
34860bf0a39SEmil Renner Berthing			reg-io-width = <4>;
34960bf0a39SEmil Renner Berthing			reg-shift = <2>;
35060bf0a39SEmil Renner Berthing			status = "disabled";
35160bf0a39SEmil Renner Berthing		};
35260bf0a39SEmil Renner Berthing
35360bf0a39SEmil Renner Berthing		i2c0: i2c@10030000 {
35460bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
35560bf0a39SEmil Renner Berthing			reg = <0x0 0x10030000 0x0 0x10000>;
35660bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C0_APB>;
35760bf0a39SEmil Renner Berthing			clock-names = "ref";
35860bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C0_APB>;
35960bf0a39SEmil Renner Berthing			interrupts = <35>;
36060bf0a39SEmil Renner Berthing			#address-cells = <1>;
36160bf0a39SEmil Renner Berthing			#size-cells = <0>;
36260bf0a39SEmil Renner Berthing			status = "disabled";
36360bf0a39SEmil Renner Berthing		};
36460bf0a39SEmil Renner Berthing
36560bf0a39SEmil Renner Berthing		i2c1: i2c@10040000 {
36660bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
36760bf0a39SEmil Renner Berthing			reg = <0x0 0x10040000 0x0 0x10000>;
36860bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C1_APB>;
36960bf0a39SEmil Renner Berthing			clock-names = "ref";
37060bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C1_APB>;
37160bf0a39SEmil Renner Berthing			interrupts = <36>;
37260bf0a39SEmil Renner Berthing			#address-cells = <1>;
37360bf0a39SEmil Renner Berthing			#size-cells = <0>;
37460bf0a39SEmil Renner Berthing			status = "disabled";
37560bf0a39SEmil Renner Berthing		};
37660bf0a39SEmil Renner Berthing
37760bf0a39SEmil Renner Berthing		i2c2: i2c@10050000 {
37860bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
37960bf0a39SEmil Renner Berthing			reg = <0x0 0x10050000 0x0 0x10000>;
38060bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C2_APB>;
38160bf0a39SEmil Renner Berthing			clock-names = "ref";
38260bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C2_APB>;
38360bf0a39SEmil Renner Berthing			interrupts = <37>;
38460bf0a39SEmil Renner Berthing			#address-cells = <1>;
38560bf0a39SEmil Renner Berthing			#size-cells = <0>;
38660bf0a39SEmil Renner Berthing			status = "disabled";
38760bf0a39SEmil Renner Berthing		};
38860bf0a39SEmil Renner Berthing
38960bf0a39SEmil Renner Berthing		uart3: serial@12000000 {
39060bf0a39SEmil Renner Berthing			compatible = "snps,dw-apb-uart";
39160bf0a39SEmil Renner Berthing			reg = <0x0 0x12000000 0x0 0x10000>;
39260bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_UART3_CORE>,
39360bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_UART3_APB>;
39460bf0a39SEmil Renner Berthing			clock-names = "baudclk", "apb_pclk";
39560bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_UART3_APB>;
39660bf0a39SEmil Renner Berthing			interrupts = <45>;
39760bf0a39SEmil Renner Berthing			reg-io-width = <4>;
39860bf0a39SEmil Renner Berthing			reg-shift = <2>;
39960bf0a39SEmil Renner Berthing			status = "disabled";
40060bf0a39SEmil Renner Berthing		};
40160bf0a39SEmil Renner Berthing
40260bf0a39SEmil Renner Berthing		uart4: serial@12010000 {
40360bf0a39SEmil Renner Berthing			compatible = "snps,dw-apb-uart";
40460bf0a39SEmil Renner Berthing			reg = <0x0 0x12010000 0x0 0x10000>;
40560bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_UART4_CORE>,
40660bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_UART4_APB>;
40760bf0a39SEmil Renner Berthing			clock-names = "baudclk", "apb_pclk";
40860bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_UART4_APB>;
40960bf0a39SEmil Renner Berthing			interrupts = <46>;
41060bf0a39SEmil Renner Berthing			reg-io-width = <4>;
41160bf0a39SEmil Renner Berthing			reg-shift = <2>;
41260bf0a39SEmil Renner Berthing			status = "disabled";
41360bf0a39SEmil Renner Berthing		};
41460bf0a39SEmil Renner Berthing
41560bf0a39SEmil Renner Berthing		uart5: serial@12020000 {
41660bf0a39SEmil Renner Berthing			compatible = "snps,dw-apb-uart";
41760bf0a39SEmil Renner Berthing			reg = <0x0 0x12020000 0x0 0x10000>;
41860bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_UART5_CORE>,
41960bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_UART5_APB>;
42060bf0a39SEmil Renner Berthing			clock-names = "baudclk", "apb_pclk";
42160bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_UART5_APB>;
42260bf0a39SEmil Renner Berthing			interrupts = <47>;
42360bf0a39SEmil Renner Berthing			reg-io-width = <4>;
42460bf0a39SEmil Renner Berthing			reg-shift = <2>;
42560bf0a39SEmil Renner Berthing			status = "disabled";
42660bf0a39SEmil Renner Berthing		};
42760bf0a39SEmil Renner Berthing
42860bf0a39SEmil Renner Berthing		i2c3: i2c@12030000 {
42960bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
43060bf0a39SEmil Renner Berthing			reg = <0x0 0x12030000 0x0 0x10000>;
43160bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C3_APB>;
43260bf0a39SEmil Renner Berthing			clock-names = "ref";
43360bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C3_APB>;
43460bf0a39SEmil Renner Berthing			interrupts = <48>;
43560bf0a39SEmil Renner Berthing			#address-cells = <1>;
43660bf0a39SEmil Renner Berthing			#size-cells = <0>;
43760bf0a39SEmil Renner Berthing			status = "disabled";
43860bf0a39SEmil Renner Berthing		};
43960bf0a39SEmil Renner Berthing
44060bf0a39SEmil Renner Berthing		i2c4: i2c@12040000 {
44160bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
44260bf0a39SEmil Renner Berthing			reg = <0x0 0x12040000 0x0 0x10000>;
44360bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C4_APB>;
44460bf0a39SEmil Renner Berthing			clock-names = "ref";
44560bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C4_APB>;
44660bf0a39SEmil Renner Berthing			interrupts = <49>;
44760bf0a39SEmil Renner Berthing			#address-cells = <1>;
44860bf0a39SEmil Renner Berthing			#size-cells = <0>;
44960bf0a39SEmil Renner Berthing			status = "disabled";
45060bf0a39SEmil Renner Berthing		};
45160bf0a39SEmil Renner Berthing
45260bf0a39SEmil Renner Berthing		i2c5: i2c@12050000 {
45360bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
45460bf0a39SEmil Renner Berthing			reg = <0x0 0x12050000 0x0 0x10000>;
45560bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C5_APB>;
45660bf0a39SEmil Renner Berthing			clock-names = "ref";
45760bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C5_APB>;
45860bf0a39SEmil Renner Berthing			interrupts = <50>;
45960bf0a39SEmil Renner Berthing			#address-cells = <1>;
46060bf0a39SEmil Renner Berthing			#size-cells = <0>;
46160bf0a39SEmil Renner Berthing			status = "disabled";
46260bf0a39SEmil Renner Berthing		};
46360bf0a39SEmil Renner Berthing
46460bf0a39SEmil Renner Berthing		i2c6: i2c@12060000 {
46560bf0a39SEmil Renner Berthing			compatible = "snps,designware-i2c";
46660bf0a39SEmil Renner Berthing			reg = <0x0 0x12060000 0x0 0x10000>;
46760bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_I2C6_APB>;
46860bf0a39SEmil Renner Berthing			clock-names = "ref";
46960bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_I2C6_APB>;
47060bf0a39SEmil Renner Berthing			interrupts = <51>;
47160bf0a39SEmil Renner Berthing			#address-cells = <1>;
47260bf0a39SEmil Renner Berthing			#size-cells = <0>;
47360bf0a39SEmil Renner Berthing			status = "disabled";
47460bf0a39SEmil Renner Berthing		};
47560bf0a39SEmil Renner Berthing
47660bf0a39SEmil Renner Berthing		syscrg: clock-controller@13020000 {
47760bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-syscrg";
47860bf0a39SEmil Renner Berthing			reg = <0x0 0x13020000 0x0 0x10000>;
47960bf0a39SEmil Renner Berthing			clocks = <&osc>, <&gmac1_rmii_refin>,
48060bf0a39SEmil Renner Berthing				 <&gmac1_rgmii_rxin>,
48160bf0a39SEmil Renner Berthing				 <&i2stx_bclk_ext>, <&i2stx_lrck_ext>,
48260bf0a39SEmil Renner Berthing				 <&i2srx_bclk_ext>, <&i2srx_lrck_ext>,
48360bf0a39SEmil Renner Berthing				 <&tdm_ext>, <&mclk_ext>;
48460bf0a39SEmil Renner Berthing			clock-names = "osc", "gmac1_rmii_refin",
48560bf0a39SEmil Renner Berthing				      "gmac1_rgmii_rxin",
48660bf0a39SEmil Renner Berthing				      "i2stx_bclk_ext", "i2stx_lrck_ext",
48760bf0a39SEmil Renner Berthing				      "i2srx_bclk_ext", "i2srx_lrck_ext",
48860bf0a39SEmil Renner Berthing				      "tdm_ext", "mclk_ext";
48960bf0a39SEmil Renner Berthing			#clock-cells = <1>;
49060bf0a39SEmil Renner Berthing			#reset-cells = <1>;
49160bf0a39SEmil Renner Berthing		};
49260bf0a39SEmil Renner Berthing
49360bf0a39SEmil Renner Berthing		sysgpio: pinctrl@13040000 {
49460bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-sys-pinctrl";
49560bf0a39SEmil Renner Berthing			reg = <0x0 0x13040000 0x0 0x10000>;
49660bf0a39SEmil Renner Berthing			clocks = <&syscrg JH7110_SYSCLK_IOMUX_APB>;
49760bf0a39SEmil Renner Berthing			resets = <&syscrg JH7110_SYSRST_IOMUX_APB>;
49860bf0a39SEmil Renner Berthing			interrupts = <86>;
49960bf0a39SEmil Renner Berthing			interrupt-controller;
50060bf0a39SEmil Renner Berthing			#interrupt-cells = <2>;
50160bf0a39SEmil Renner Berthing			gpio-controller;
50260bf0a39SEmil Renner Berthing			#gpio-cells = <2>;
50360bf0a39SEmil Renner Berthing		};
50460bf0a39SEmil Renner Berthing
5056361b7deSXingyu Wu		watchdog@13070000 {
5066361b7deSXingyu Wu			compatible = "starfive,jh7110-wdt";
5076361b7deSXingyu Wu			reg = <0x0 0x13070000 0x0 0x10000>;
5086361b7deSXingyu Wu			clocks = <&syscrg JH7110_SYSCLK_WDT_APB>,
5096361b7deSXingyu Wu				 <&syscrg JH7110_SYSCLK_WDT_CORE>;
5106361b7deSXingyu Wu			clock-names = "apb", "core";
5116361b7deSXingyu Wu			resets = <&syscrg JH7110_SYSRST_WDT_APB>,
5126361b7deSXingyu Wu				 <&syscrg JH7110_SYSRST_WDT_CORE>;
5136361b7deSXingyu Wu		};
5146361b7deSXingyu Wu
51560bf0a39SEmil Renner Berthing		aoncrg: clock-controller@17000000 {
51660bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-aoncrg";
51760bf0a39SEmil Renner Berthing			reg = <0x0 0x17000000 0x0 0x10000>;
51860bf0a39SEmil Renner Berthing			clocks = <&osc>, <&gmac0_rmii_refin>,
51960bf0a39SEmil Renner Berthing				 <&gmac0_rgmii_rxin>,
52060bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_STG_AXIAHB>,
52160bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_APB_BUS>,
52260bf0a39SEmil Renner Berthing				 <&syscrg JH7110_SYSCLK_GMAC0_GTXCLK>,
52360bf0a39SEmil Renner Berthing				 <&rtc_osc>;
52460bf0a39SEmil Renner Berthing			clock-names = "osc", "gmac0_rmii_refin",
52560bf0a39SEmil Renner Berthing				      "gmac0_rgmii_rxin", "stg_axiahb",
52660bf0a39SEmil Renner Berthing				      "apb_bus", "gmac0_gtxclk",
52760bf0a39SEmil Renner Berthing				      "rtc_osc";
52860bf0a39SEmil Renner Berthing			#clock-cells = <1>;
52960bf0a39SEmil Renner Berthing			#reset-cells = <1>;
53060bf0a39SEmil Renner Berthing		};
53160bf0a39SEmil Renner Berthing
53260bf0a39SEmil Renner Berthing		aongpio: pinctrl@17020000 {
53360bf0a39SEmil Renner Berthing			compatible = "starfive,jh7110-aon-pinctrl";
53460bf0a39SEmil Renner Berthing			reg = <0x0 0x17020000 0x0 0x10000>;
53560bf0a39SEmil Renner Berthing			resets = <&aoncrg JH7110_AONRST_IOMUX>;
53660bf0a39SEmil Renner Berthing			interrupts = <85>;
53760bf0a39SEmil Renner Berthing			interrupt-controller;
53860bf0a39SEmil Renner Berthing			#interrupt-cells = <2>;
53960bf0a39SEmil Renner Berthing			gpio-controller;
54060bf0a39SEmil Renner Berthing			#gpio-cells = <2>;
54160bf0a39SEmil Renner Berthing		};
5426a887bccSWalker Chen
5436a887bccSWalker Chen		pwrc: power-controller@17030000 {
5446a887bccSWalker Chen			compatible = "starfive,jh7110-pmu";
5456a887bccSWalker Chen			reg = <0x0 0x17030000 0x0 0x10000>;
5466a887bccSWalker Chen			interrupts = <111>;
5476a887bccSWalker Chen			#power-domain-cells = <1>;
5486a887bccSWalker Chen		};
54960bf0a39SEmil Renner Berthing	};
55060bf0a39SEmil Renner Berthing};
551