162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
262306a36Sopenharmony_ci
362306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h>
462306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h>
562306a36Sopenharmony_ci#include <dt-bindings/phy/phy.h>
662306a36Sopenharmony_ci#include <dt-bindings/soc/bcm-pmb.h>
762306a36Sopenharmony_ci
862306a36Sopenharmony_ci/dts-v1/;
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci/ {
1162306a36Sopenharmony_ci	interrupt-parent = <&gic>;
1262306a36Sopenharmony_ci
1362306a36Sopenharmony_ci	#address-cells = <2>;
1462306a36Sopenharmony_ci	#size-cells = <2>;
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci	aliases {
1762306a36Sopenharmony_ci		serial0 = &uart0;
1862306a36Sopenharmony_ci	};
1962306a36Sopenharmony_ci
2062306a36Sopenharmony_ci	chosen {
2162306a36Sopenharmony_ci		stdout-path = "serial0:115200n8";
2262306a36Sopenharmony_ci	};
2362306a36Sopenharmony_ci
2462306a36Sopenharmony_ci	cpus {
2562306a36Sopenharmony_ci		#address-cells = <1>;
2662306a36Sopenharmony_ci		#size-cells = <0>;
2762306a36Sopenharmony_ci
2862306a36Sopenharmony_ci		cpu0: cpu@0 {
2962306a36Sopenharmony_ci			device_type = "cpu";
3062306a36Sopenharmony_ci			compatible = "brcm,brahma-b53";
3162306a36Sopenharmony_ci			reg = <0x0>;
3262306a36Sopenharmony_ci			enable-method = "spin-table";
3362306a36Sopenharmony_ci			cpu-release-addr = <0x0 0xfff8>;
3462306a36Sopenharmony_ci			next-level-cache = <&l2>;
3562306a36Sopenharmony_ci		};
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci		cpu1: cpu@1 {
3862306a36Sopenharmony_ci			device_type = "cpu";
3962306a36Sopenharmony_ci			compatible = "brcm,brahma-b53";
4062306a36Sopenharmony_ci			reg = <0x1>;
4162306a36Sopenharmony_ci			enable-method = "spin-table";
4262306a36Sopenharmony_ci			cpu-release-addr = <0x0 0xfff8>;
4362306a36Sopenharmony_ci			next-level-cache = <&l2>;
4462306a36Sopenharmony_ci		};
4562306a36Sopenharmony_ci
4662306a36Sopenharmony_ci		cpu2: cpu@2 {
4762306a36Sopenharmony_ci			device_type = "cpu";
4862306a36Sopenharmony_ci			compatible = "brcm,brahma-b53";
4962306a36Sopenharmony_ci			reg = <0x2>;
5062306a36Sopenharmony_ci			enable-method = "spin-table";
5162306a36Sopenharmony_ci			cpu-release-addr = <0x0 0xfff8>;
5262306a36Sopenharmony_ci			next-level-cache = <&l2>;
5362306a36Sopenharmony_ci		};
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci		cpu3: cpu@3 {
5662306a36Sopenharmony_ci			device_type = "cpu";
5762306a36Sopenharmony_ci			compatible = "brcm,brahma-b53";
5862306a36Sopenharmony_ci			reg = <0x3>;
5962306a36Sopenharmony_ci			enable-method = "spin-table";
6062306a36Sopenharmony_ci			cpu-release-addr = <0x0 0xfff8>;
6162306a36Sopenharmony_ci			next-level-cache = <&l2>;
6262306a36Sopenharmony_ci		};
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci		l2: l2-cache0 {
6562306a36Sopenharmony_ci			compatible = "cache";
6662306a36Sopenharmony_ci			cache-level = <2>;
6762306a36Sopenharmony_ci			cache-unified;
6862306a36Sopenharmony_ci		};
6962306a36Sopenharmony_ci	};
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci	axi@81000000 {
7262306a36Sopenharmony_ci		compatible = "simple-bus";
7362306a36Sopenharmony_ci		#address-cells = <1>;
7462306a36Sopenharmony_ci		#size-cells = <1>;
7562306a36Sopenharmony_ci		ranges = <0x00 0x00 0x81000000 0x4000>;
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci		gic: interrupt-controller@1000 {
7862306a36Sopenharmony_ci			compatible = "arm,gic-400";
7962306a36Sopenharmony_ci			#interrupt-cells = <3>;
8062306a36Sopenharmony_ci			#address-cells = <0>;
8162306a36Sopenharmony_ci			interrupt-controller;
8262306a36Sopenharmony_ci			reg = <0x1000 0x1000>,
8362306a36Sopenharmony_ci			      <0x2000 0x2000>;
8462306a36Sopenharmony_ci		};
8562306a36Sopenharmony_ci	};
8662306a36Sopenharmony_ci
8762306a36Sopenharmony_ci	timer {
8862306a36Sopenharmony_ci		compatible = "arm,armv8-timer";
8962306a36Sopenharmony_ci		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
9062306a36Sopenharmony_ci			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
9162306a36Sopenharmony_ci			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
9262306a36Sopenharmony_ci			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
9362306a36Sopenharmony_ci	};
9462306a36Sopenharmony_ci
9562306a36Sopenharmony_ci	pmu {
9662306a36Sopenharmony_ci		compatible = "arm,cortex-a53-pmu";
9762306a36Sopenharmony_ci		interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>,
9862306a36Sopenharmony_ci			     <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>,
9962306a36Sopenharmony_ci			     <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>,
10062306a36Sopenharmony_ci			     <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>;
10162306a36Sopenharmony_ci		interrupt-affinity = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>;
10262306a36Sopenharmony_ci	};
10362306a36Sopenharmony_ci
10462306a36Sopenharmony_ci	clocks {
10562306a36Sopenharmony_ci		periph_clk: periph_clk {
10662306a36Sopenharmony_ci			compatible = "fixed-clock";
10762306a36Sopenharmony_ci			#clock-cells = <0>;
10862306a36Sopenharmony_ci			clock-frequency = <50000000>;
10962306a36Sopenharmony_ci			clock-output-names = "periph";
11062306a36Sopenharmony_ci		};
11162306a36Sopenharmony_ci
11262306a36Sopenharmony_ci		hsspi_pll: hsspi-pll {
11362306a36Sopenharmony_ci			compatible = "fixed-clock";
11462306a36Sopenharmony_ci			#clock-cells = <0>;
11562306a36Sopenharmony_ci			clock-frequency = <400000000>;
11662306a36Sopenharmony_ci		};
11762306a36Sopenharmony_ci	};
11862306a36Sopenharmony_ci
11962306a36Sopenharmony_ci	soc {
12062306a36Sopenharmony_ci		compatible = "simple-bus";
12162306a36Sopenharmony_ci		#address-cells = <1>;
12262306a36Sopenharmony_ci		#size-cells = <1>;
12362306a36Sopenharmony_ci		ranges = <0x00 0x00 0x80000000 0x281000>;
12462306a36Sopenharmony_ci
12562306a36Sopenharmony_ci		enet: ethernet@2000 {
12662306a36Sopenharmony_ci			compatible = "brcm,bcm4908-enet";
12762306a36Sopenharmony_ci			reg = <0x2000 0x1000>;
12862306a36Sopenharmony_ci
12962306a36Sopenharmony_ci			interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>,
13062306a36Sopenharmony_ci				     <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>;
13162306a36Sopenharmony_ci			interrupt-names = "rx", "tx";
13262306a36Sopenharmony_ci		};
13362306a36Sopenharmony_ci
13462306a36Sopenharmony_ci		usb_phy: usb-phy@c200 {
13562306a36Sopenharmony_ci			compatible = "brcm,bcm4908-usb-phy";
13662306a36Sopenharmony_ci			reg = <0xc200 0x100>;
13762306a36Sopenharmony_ci			reg-names = "ctrl";
13862306a36Sopenharmony_ci			power-domains = <&pmb BCM_PMB_HOST_USB>;
13962306a36Sopenharmony_ci			dr_mode = "host";
14062306a36Sopenharmony_ci			brcm,has-xhci;
14162306a36Sopenharmony_ci			brcm,has-eohci;
14262306a36Sopenharmony_ci			#phy-cells = <1>;
14362306a36Sopenharmony_ci			status = "disabled";
14462306a36Sopenharmony_ci		};
14562306a36Sopenharmony_ci
14662306a36Sopenharmony_ci		ehci: usb@c300 {
14762306a36Sopenharmony_ci			compatible = "generic-ehci";
14862306a36Sopenharmony_ci			reg = <0xc300 0x100>;
14962306a36Sopenharmony_ci			interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>;
15062306a36Sopenharmony_ci			phys = <&usb_phy PHY_TYPE_USB2>;
15162306a36Sopenharmony_ci			status = "disabled";
15262306a36Sopenharmony_ci
15362306a36Sopenharmony_ci			#address-cells = <1>;
15462306a36Sopenharmony_ci			#size-cells = <0>;
15562306a36Sopenharmony_ci
15662306a36Sopenharmony_ci			ehci_port1: port@1 {
15762306a36Sopenharmony_ci				reg = <1>;
15862306a36Sopenharmony_ci				#trigger-source-cells = <0>;
15962306a36Sopenharmony_ci			};
16062306a36Sopenharmony_ci
16162306a36Sopenharmony_ci			ehci_port2: port@2 {
16262306a36Sopenharmony_ci				reg = <2>;
16362306a36Sopenharmony_ci				#trigger-source-cells = <0>;
16462306a36Sopenharmony_ci			};
16562306a36Sopenharmony_ci		};
16662306a36Sopenharmony_ci
16762306a36Sopenharmony_ci		ohci: usb@c400 {
16862306a36Sopenharmony_ci			compatible = "generic-ohci";
16962306a36Sopenharmony_ci			reg = <0xc400 0x100>;
17062306a36Sopenharmony_ci			interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>;
17162306a36Sopenharmony_ci			phys = <&usb_phy PHY_TYPE_USB2>;
17262306a36Sopenharmony_ci			status = "disabled";
17362306a36Sopenharmony_ci
17462306a36Sopenharmony_ci			#address-cells = <1>;
17562306a36Sopenharmony_ci			#size-cells = <0>;
17662306a36Sopenharmony_ci
17762306a36Sopenharmony_ci			ohci_port1: port@1 {
17862306a36Sopenharmony_ci				reg = <1>;
17962306a36Sopenharmony_ci				#trigger-source-cells = <0>;
18062306a36Sopenharmony_ci			};
18162306a36Sopenharmony_ci
18262306a36Sopenharmony_ci			ohci_port2: port@2 {
18362306a36Sopenharmony_ci				reg = <2>;
18462306a36Sopenharmony_ci				#trigger-source-cells = <0>;
18562306a36Sopenharmony_ci			};
18662306a36Sopenharmony_ci		};
18762306a36Sopenharmony_ci
18862306a36Sopenharmony_ci		xhci: usb@d000 {
18962306a36Sopenharmony_ci			compatible = "generic-xhci";
19062306a36Sopenharmony_ci			reg = <0xd000 0x8c8>;
19162306a36Sopenharmony_ci			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
19262306a36Sopenharmony_ci			phys = <&usb_phy PHY_TYPE_USB3>;
19362306a36Sopenharmony_ci			status = "disabled";
19462306a36Sopenharmony_ci
19562306a36Sopenharmony_ci			#address-cells = <1>;
19662306a36Sopenharmony_ci			#size-cells = <0>;
19762306a36Sopenharmony_ci
19862306a36Sopenharmony_ci			xhci_port1: port@1 {
19962306a36Sopenharmony_ci				reg = <1>;
20062306a36Sopenharmony_ci				#trigger-source-cells = <0>;
20162306a36Sopenharmony_ci			};
20262306a36Sopenharmony_ci
20362306a36Sopenharmony_ci			xhci_port2: port@2 {
20462306a36Sopenharmony_ci				reg = <2>;
20562306a36Sopenharmony_ci				#trigger-source-cells = <0>;
20662306a36Sopenharmony_ci			};
20762306a36Sopenharmony_ci		};
20862306a36Sopenharmony_ci
20962306a36Sopenharmony_ci		bus@80000 {
21062306a36Sopenharmony_ci			compatible = "simple-bus";
21162306a36Sopenharmony_ci			#size-cells = <1>;
21262306a36Sopenharmony_ci			#address-cells = <1>;
21362306a36Sopenharmony_ci			ranges = <0 0x80000 0x50000>;
21462306a36Sopenharmony_ci
21562306a36Sopenharmony_ci			ethernet-switch@0 {
21662306a36Sopenharmony_ci				compatible = "brcm,bcm4908-switch";
21762306a36Sopenharmony_ci				reg = <0x0 0x40000>,
21862306a36Sopenharmony_ci				      <0x40000 0x110>,
21962306a36Sopenharmony_ci				      <0x40340 0x30>,
22062306a36Sopenharmony_ci				      <0x40380 0x30>,
22162306a36Sopenharmony_ci				      <0x40600 0x34>,
22262306a36Sopenharmony_ci				      <0x40800 0x208>;
22362306a36Sopenharmony_ci				reg-names = "core", "reg", "intrl2_0",
22462306a36Sopenharmony_ci					    "intrl2_1", "fcb", "acb";
22562306a36Sopenharmony_ci				interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>,
22662306a36Sopenharmony_ci					     <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>;
22762306a36Sopenharmony_ci				brcm,num-gphy = <5>;
22862306a36Sopenharmony_ci				brcm,num-rgmii-ports = <2>;
22962306a36Sopenharmony_ci
23062306a36Sopenharmony_ci				ports: ports {
23162306a36Sopenharmony_ci					#address-cells = <1>;
23262306a36Sopenharmony_ci					#size-cells = <0>;
23362306a36Sopenharmony_ci
23462306a36Sopenharmony_ci					port@0 {
23562306a36Sopenharmony_ci						reg = <0>;
23662306a36Sopenharmony_ci						phy-mode = "internal";
23762306a36Sopenharmony_ci						phy-handle = <&phy8>;
23862306a36Sopenharmony_ci					};
23962306a36Sopenharmony_ci
24062306a36Sopenharmony_ci					port@1 {
24162306a36Sopenharmony_ci						reg = <1>;
24262306a36Sopenharmony_ci						phy-mode = "internal";
24362306a36Sopenharmony_ci						phy-handle = <&phy9>;
24462306a36Sopenharmony_ci					};
24562306a36Sopenharmony_ci
24662306a36Sopenharmony_ci					port@2 {
24762306a36Sopenharmony_ci						reg = <2>;
24862306a36Sopenharmony_ci						phy-mode = "internal";
24962306a36Sopenharmony_ci						phy-handle = <&phy10>;
25062306a36Sopenharmony_ci					};
25162306a36Sopenharmony_ci
25262306a36Sopenharmony_ci					port@3 {
25362306a36Sopenharmony_ci						reg = <3>;
25462306a36Sopenharmony_ci						phy-mode = "internal";
25562306a36Sopenharmony_ci						phy-handle = <&phy11>;
25662306a36Sopenharmony_ci					};
25762306a36Sopenharmony_ci
25862306a36Sopenharmony_ci					port@8 {
25962306a36Sopenharmony_ci						reg = <8>;
26062306a36Sopenharmony_ci						phy-mode = "internal";
26162306a36Sopenharmony_ci						ethernet = <&enet>;
26262306a36Sopenharmony_ci
26362306a36Sopenharmony_ci						fixed-link {
26462306a36Sopenharmony_ci							speed = <1000>;
26562306a36Sopenharmony_ci							full-duplex;
26662306a36Sopenharmony_ci						};
26762306a36Sopenharmony_ci					};
26862306a36Sopenharmony_ci				};
26962306a36Sopenharmony_ci			};
27062306a36Sopenharmony_ci
27162306a36Sopenharmony_ci			mdio: mdio@405c0 {
27262306a36Sopenharmony_ci				compatible = "brcm,unimac-mdio";
27362306a36Sopenharmony_ci				reg = <0x405c0 0x8>;
27462306a36Sopenharmony_ci				reg-names = "mdio";
27562306a36Sopenharmony_ci				#size-cells = <0>;
27662306a36Sopenharmony_ci				#address-cells = <1>;
27762306a36Sopenharmony_ci
27862306a36Sopenharmony_ci				phy8: ethernet-phy@8 {
27962306a36Sopenharmony_ci					reg = <8>;
28062306a36Sopenharmony_ci				};
28162306a36Sopenharmony_ci
28262306a36Sopenharmony_ci				phy9: ethernet-phy@9 {
28362306a36Sopenharmony_ci					reg = <9>;
28462306a36Sopenharmony_ci				};
28562306a36Sopenharmony_ci
28662306a36Sopenharmony_ci				phy10: ethernet-phy@a {
28762306a36Sopenharmony_ci					reg = <10>;
28862306a36Sopenharmony_ci				};
28962306a36Sopenharmony_ci
29062306a36Sopenharmony_ci				phy11: ethernet-phy@b {
29162306a36Sopenharmony_ci					reg = <11>;
29262306a36Sopenharmony_ci				};
29362306a36Sopenharmony_ci
29462306a36Sopenharmony_ci				phy12: ethernet-phy@c {
29562306a36Sopenharmony_ci					reg = <12>;
29662306a36Sopenharmony_ci				};
29762306a36Sopenharmony_ci			};
29862306a36Sopenharmony_ci		};
29962306a36Sopenharmony_ci
30062306a36Sopenharmony_ci		procmon: bus@280000 {
30162306a36Sopenharmony_ci			compatible = "simple-bus";
30262306a36Sopenharmony_ci			reg = <0x280000 0x1000>;
30362306a36Sopenharmony_ci			ranges;
30462306a36Sopenharmony_ci
30562306a36Sopenharmony_ci			#address-cells = <1>;
30662306a36Sopenharmony_ci			#size-cells = <1>;
30762306a36Sopenharmony_ci
30862306a36Sopenharmony_ci			pmb: power-controller@2800c0 {
30962306a36Sopenharmony_ci				compatible = "brcm,bcm4908-pmb";
31062306a36Sopenharmony_ci				reg = <0x2800c0 0x40>;
31162306a36Sopenharmony_ci				#power-domain-cells = <1>;
31262306a36Sopenharmony_ci			};
31362306a36Sopenharmony_ci		};
31462306a36Sopenharmony_ci	};
31562306a36Sopenharmony_ci
31662306a36Sopenharmony_ci	bus@ff800000 {
31762306a36Sopenharmony_ci		compatible = "simple-bus";
31862306a36Sopenharmony_ci		#address-cells = <1>;
31962306a36Sopenharmony_ci		#size-cells = <1>;
32062306a36Sopenharmony_ci		ranges = <0x00 0x00 0xff800000 0x3000>;
32162306a36Sopenharmony_ci
32262306a36Sopenharmony_ci		twd: timer-mfd@400 {
32362306a36Sopenharmony_ci			compatible = "brcm,bcm4908-twd", "simple-mfd", "syscon";
32462306a36Sopenharmony_ci			reg = <0x400 0x4c>;
32562306a36Sopenharmony_ci			ranges = <0x0 0x400 0x4c>;
32662306a36Sopenharmony_ci
32762306a36Sopenharmony_ci			#address-cells = <1>;
32862306a36Sopenharmony_ci			#size-cells = <1>;
32962306a36Sopenharmony_ci
33062306a36Sopenharmony_ci			timer@0 {
33162306a36Sopenharmony_ci				compatible = "brcm,bcm63138-timer";
33262306a36Sopenharmony_ci				reg = <0x0 0x28>;
33362306a36Sopenharmony_ci			};
33462306a36Sopenharmony_ci
33562306a36Sopenharmony_ci			watchdog@28 {
33662306a36Sopenharmony_ci				compatible = "brcm,bcm6345-wdt";
33762306a36Sopenharmony_ci				reg = <0x28 0x8>;
33862306a36Sopenharmony_ci			};
33962306a36Sopenharmony_ci		};
34062306a36Sopenharmony_ci
34162306a36Sopenharmony_ci		gpio0: gpio-controller@500 {
34262306a36Sopenharmony_ci			compatible = "brcm,bcm6345-gpio";
34362306a36Sopenharmony_ci			reg-names = "dirout", "dat";
34462306a36Sopenharmony_ci			reg = <0x500 0x28>, <0x528 0x28>;
34562306a36Sopenharmony_ci
34662306a36Sopenharmony_ci			#gpio-cells = <2>;
34762306a36Sopenharmony_ci			gpio-controller;
34862306a36Sopenharmony_ci		};
34962306a36Sopenharmony_ci
35062306a36Sopenharmony_ci		pinctrl@560 {
35162306a36Sopenharmony_ci			compatible = "brcm,bcm4908-pinctrl";
35262306a36Sopenharmony_ci			reg = <0x560 0x10>;
35362306a36Sopenharmony_ci
35462306a36Sopenharmony_ci			pins_led_0_a: led_0-a-pins {
35562306a36Sopenharmony_ci				function = "led_0";
35662306a36Sopenharmony_ci				groups = "led_0_grp_a";
35762306a36Sopenharmony_ci			};
35862306a36Sopenharmony_ci
35962306a36Sopenharmony_ci			pins_led_1_a: led_1-a-pins {
36062306a36Sopenharmony_ci				function = "led_1";
36162306a36Sopenharmony_ci				groups = "led_1_grp_a";
36262306a36Sopenharmony_ci			};
36362306a36Sopenharmony_ci
36462306a36Sopenharmony_ci			pins_led_2_a: led_2-a-pins {
36562306a36Sopenharmony_ci				function = "led_2";
36662306a36Sopenharmony_ci				groups = "led_2_grp_a";
36762306a36Sopenharmony_ci			};
36862306a36Sopenharmony_ci
36962306a36Sopenharmony_ci			pins_led_3_a: led_3-a-pins {
37062306a36Sopenharmony_ci				function = "led_3";
37162306a36Sopenharmony_ci				groups = "led_3_grp_a";
37262306a36Sopenharmony_ci			};
37362306a36Sopenharmony_ci
37462306a36Sopenharmony_ci			pins_led_4_a: led_4-a-pins {
37562306a36Sopenharmony_ci				function = "led_4";
37662306a36Sopenharmony_ci				groups = "led_4_grp_a";
37762306a36Sopenharmony_ci			};
37862306a36Sopenharmony_ci
37962306a36Sopenharmony_ci			pins_led_5_a: led_5-a-pins {
38062306a36Sopenharmony_ci				function = "led_5";
38162306a36Sopenharmony_ci				groups = "led_5_grp_a";
38262306a36Sopenharmony_ci			};
38362306a36Sopenharmony_ci
38462306a36Sopenharmony_ci			pins_led_6_a: led_6-a-pins {
38562306a36Sopenharmony_ci				function = "led_6";
38662306a36Sopenharmony_ci				groups = "led_6_grp_a";
38762306a36Sopenharmony_ci			};
38862306a36Sopenharmony_ci
38962306a36Sopenharmony_ci			pins_led_7_a: led_7-a-pins {
39062306a36Sopenharmony_ci				function = "led_7";
39162306a36Sopenharmony_ci				groups = "led_7_grp_a";
39262306a36Sopenharmony_ci			};
39362306a36Sopenharmony_ci
39462306a36Sopenharmony_ci			pins_led_8_a: led_8-a-pins {
39562306a36Sopenharmony_ci				function = "led_8";
39662306a36Sopenharmony_ci				groups = "led_8_grp_a";
39762306a36Sopenharmony_ci			};
39862306a36Sopenharmony_ci
39962306a36Sopenharmony_ci			pins_led_9_a: led_9-a-pins {
40062306a36Sopenharmony_ci				function = "led_9";
40162306a36Sopenharmony_ci				groups = "led_9_grp_a";
40262306a36Sopenharmony_ci			};
40362306a36Sopenharmony_ci
40462306a36Sopenharmony_ci			pins_led_10_a: led_10-a-pins {
40562306a36Sopenharmony_ci				function = "led_10";
40662306a36Sopenharmony_ci				groups = "led_10_grp_a";
40762306a36Sopenharmony_ci			};
40862306a36Sopenharmony_ci
40962306a36Sopenharmony_ci			pins_led_11_a: led_11-a-pins {
41062306a36Sopenharmony_ci				function = "led_11";
41162306a36Sopenharmony_ci				groups = "led_11_grp_a";
41262306a36Sopenharmony_ci			};
41362306a36Sopenharmony_ci
41462306a36Sopenharmony_ci			pins_led_12_a: led_12-a-pins {
41562306a36Sopenharmony_ci				function = "led_12";
41662306a36Sopenharmony_ci				groups = "led_12_grp_a";
41762306a36Sopenharmony_ci			};
41862306a36Sopenharmony_ci
41962306a36Sopenharmony_ci			pins_led_13_a: led_13-a-pins {
42062306a36Sopenharmony_ci				function = "led_13";
42162306a36Sopenharmony_ci				groups = "led_13_grp_a";
42262306a36Sopenharmony_ci			};
42362306a36Sopenharmony_ci
42462306a36Sopenharmony_ci			pins_led_14_a: led_14-a-pins {
42562306a36Sopenharmony_ci				function = "led_14";
42662306a36Sopenharmony_ci				groups = "led_14_grp_a";
42762306a36Sopenharmony_ci			};
42862306a36Sopenharmony_ci
42962306a36Sopenharmony_ci			pins_led_15_a: led_15-a-pins {
43062306a36Sopenharmony_ci				function = "led_15";
43162306a36Sopenharmony_ci				groups = "led_15_grp_a";
43262306a36Sopenharmony_ci			};
43362306a36Sopenharmony_ci
43462306a36Sopenharmony_ci			pins_led_16_a: led_16-a-pins {
43562306a36Sopenharmony_ci				function = "led_16";
43662306a36Sopenharmony_ci				groups = "led_16_grp_a";
43762306a36Sopenharmony_ci			};
43862306a36Sopenharmony_ci
43962306a36Sopenharmony_ci			pins_led_17_a: led_17-a-pins {
44062306a36Sopenharmony_ci				function = "led_17";
44162306a36Sopenharmony_ci				groups = "led_17_grp_a";
44262306a36Sopenharmony_ci			};
44362306a36Sopenharmony_ci
44462306a36Sopenharmony_ci			pins_led_18_a: led_18-a-pins {
44562306a36Sopenharmony_ci				function = "led_18";
44662306a36Sopenharmony_ci				groups = "led_18_grp_a";
44762306a36Sopenharmony_ci			};
44862306a36Sopenharmony_ci
44962306a36Sopenharmony_ci			pins_led_19_a: led_19-a-pins {
45062306a36Sopenharmony_ci				function = "led_19";
45162306a36Sopenharmony_ci				groups = "led_19_grp_a";
45262306a36Sopenharmony_ci			};
45362306a36Sopenharmony_ci
45462306a36Sopenharmony_ci			pins_led_20_a: led_20-a-pins {
45562306a36Sopenharmony_ci				function = "led_20";
45662306a36Sopenharmony_ci				groups = "led_20_grp_a";
45762306a36Sopenharmony_ci			};
45862306a36Sopenharmony_ci
45962306a36Sopenharmony_ci			pins_led_21_a: led_21-a-pins {
46062306a36Sopenharmony_ci				function = "led_21";
46162306a36Sopenharmony_ci				groups = "led_21_grp_a";
46262306a36Sopenharmony_ci			};
46362306a36Sopenharmony_ci
46462306a36Sopenharmony_ci			pins_led_22_a: led_22-a-pins {
46562306a36Sopenharmony_ci				function = "led_22";
46662306a36Sopenharmony_ci				groups = "led_22_grp_a";
46762306a36Sopenharmony_ci			};
46862306a36Sopenharmony_ci
46962306a36Sopenharmony_ci			pins_led_23_a: led_23-a-pins {
47062306a36Sopenharmony_ci				function = "led_23";
47162306a36Sopenharmony_ci				groups = "led_23_grp_a";
47262306a36Sopenharmony_ci			};
47362306a36Sopenharmony_ci
47462306a36Sopenharmony_ci			pins_led_24_a: led_24-a-pins {
47562306a36Sopenharmony_ci				function = "led_24";
47662306a36Sopenharmony_ci				groups = "led_24_grp_a";
47762306a36Sopenharmony_ci			};
47862306a36Sopenharmony_ci
47962306a36Sopenharmony_ci			pins_led_25_a: led_25-a-pins {
48062306a36Sopenharmony_ci				function = "led_25";
48162306a36Sopenharmony_ci				groups = "led_25_grp_a";
48262306a36Sopenharmony_ci			};
48362306a36Sopenharmony_ci
48462306a36Sopenharmony_ci			pins_led_26_a: led_26-a-pins {
48562306a36Sopenharmony_ci				function = "led_26";
48662306a36Sopenharmony_ci				groups = "led_26_grp_a";
48762306a36Sopenharmony_ci			};
48862306a36Sopenharmony_ci
48962306a36Sopenharmony_ci			pins_led_27_a: led_27-a-pins {
49062306a36Sopenharmony_ci				function = "led_27";
49162306a36Sopenharmony_ci				groups = "led_27_grp_a";
49262306a36Sopenharmony_ci			};
49362306a36Sopenharmony_ci
49462306a36Sopenharmony_ci			pins_led_28_a: led_28-a-pins {
49562306a36Sopenharmony_ci				function = "led_28";
49662306a36Sopenharmony_ci				groups = "led_28_grp_a";
49762306a36Sopenharmony_ci			};
49862306a36Sopenharmony_ci
49962306a36Sopenharmony_ci			pins_led_29_a: led_29-a-pins {
50062306a36Sopenharmony_ci				function = "led_29";
50162306a36Sopenharmony_ci				groups = "led_29_grp_a";
50262306a36Sopenharmony_ci			};
50362306a36Sopenharmony_ci
50462306a36Sopenharmony_ci			pins_led_30_a: led_30-a-pins {
50562306a36Sopenharmony_ci				function = "led_30";
50662306a36Sopenharmony_ci				groups = "led_30_grp_a";
50762306a36Sopenharmony_ci			};
50862306a36Sopenharmony_ci
50962306a36Sopenharmony_ci			pins_led_31_a: led_31-a-pins {
51062306a36Sopenharmony_ci				function = "led_31";
51162306a36Sopenharmony_ci				groups = "led_31_grp_a";
51262306a36Sopenharmony_ci			};
51362306a36Sopenharmony_ci
51462306a36Sopenharmony_ci			pins_hs_uart: hs_uart-pins {
51562306a36Sopenharmony_ci				function = "hs_uart";
51662306a36Sopenharmony_ci				groups = "hs_uart_grp";
51762306a36Sopenharmony_ci			};
51862306a36Sopenharmony_ci
51962306a36Sopenharmony_ci			pins_i2c_a: i2c-a-pins {
52062306a36Sopenharmony_ci				function = "i2c";
52162306a36Sopenharmony_ci				groups = "i2c_grp_a";
52262306a36Sopenharmony_ci			};
52362306a36Sopenharmony_ci
52462306a36Sopenharmony_ci			pins_i2c_b: i2c-b-pins {
52562306a36Sopenharmony_ci				function = "i2c";
52662306a36Sopenharmony_ci				groups = "i2c_grp_b";
52762306a36Sopenharmony_ci			};
52862306a36Sopenharmony_ci
52962306a36Sopenharmony_ci			pins_i2s: i2s-pins {
53062306a36Sopenharmony_ci				function = "i2s";
53162306a36Sopenharmony_ci				groups = "i2s_grp";
53262306a36Sopenharmony_ci			};
53362306a36Sopenharmony_ci
53462306a36Sopenharmony_ci			pins_nand_ctrl: nand_ctrl-pins {
53562306a36Sopenharmony_ci				function = "nand_ctrl";
53662306a36Sopenharmony_ci				groups = "nand_ctrl_grp";
53762306a36Sopenharmony_ci			};
53862306a36Sopenharmony_ci
53962306a36Sopenharmony_ci			pins_nand_data: nand_data-pins {
54062306a36Sopenharmony_ci				function = "nand_data";
54162306a36Sopenharmony_ci				groups = "nand_data_grp";
54262306a36Sopenharmony_ci			};
54362306a36Sopenharmony_ci
54462306a36Sopenharmony_ci			pins_emmc_ctrl: emmc_ctrl-pins {
54562306a36Sopenharmony_ci				function = "emmc_ctrl";
54662306a36Sopenharmony_ci				groups = "emmc_ctrl_grp";
54762306a36Sopenharmony_ci			};
54862306a36Sopenharmony_ci
54962306a36Sopenharmony_ci			pins_usb0_pwr: usb0_pwr-pins {
55062306a36Sopenharmony_ci				function = "usb0_pwr";
55162306a36Sopenharmony_ci				groups = "usb0_pwr_grp";
55262306a36Sopenharmony_ci			};
55362306a36Sopenharmony_ci
55462306a36Sopenharmony_ci			pins_usb1_pwr: usb1_pwr-pins {
55562306a36Sopenharmony_ci				function = "usb1_pwr";
55662306a36Sopenharmony_ci				groups = "usb1_pwr_grp";
55762306a36Sopenharmony_ci			};
55862306a36Sopenharmony_ci		};
55962306a36Sopenharmony_ci
56062306a36Sopenharmony_ci		uart0: serial@640 {
56162306a36Sopenharmony_ci			compatible = "brcm,bcm6345-uart";
56262306a36Sopenharmony_ci			reg = <0x640 0x18>;
56362306a36Sopenharmony_ci			interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>;
56462306a36Sopenharmony_ci			clocks = <&periph_clk>;
56562306a36Sopenharmony_ci			clock-names = "refclk";
56662306a36Sopenharmony_ci			status = "okay";
56762306a36Sopenharmony_ci		};
56862306a36Sopenharmony_ci
56962306a36Sopenharmony_ci		leds: leds@800 {
57062306a36Sopenharmony_ci			compatible = "brcm,bcm4908-leds", "brcm,bcm63138-leds";
57162306a36Sopenharmony_ci			reg = <0x800 0xdc>;
57262306a36Sopenharmony_ci
57362306a36Sopenharmony_ci			#address-cells = <1>;
57462306a36Sopenharmony_ci			#size-cells = <0>;
57562306a36Sopenharmony_ci		};
57662306a36Sopenharmony_ci
57762306a36Sopenharmony_ci		hsspi: spi@1000 {
57862306a36Sopenharmony_ci			#address-cells = <1>;
57962306a36Sopenharmony_ci			#size-cells = <0>;
58062306a36Sopenharmony_ci			compatible = "brcm,bcm4908-hsspi", "brcm,bcmbca-hsspi-v1.0";
58162306a36Sopenharmony_ci			reg = <0x1000 0x600>;
58262306a36Sopenharmony_ci			interrupts = <GIC_SPI 36 IRQ_TYPE_LEVEL_HIGH>;
58362306a36Sopenharmony_ci			clocks = <&hsspi_pll &hsspi_pll>;
58462306a36Sopenharmony_ci			clock-names = "hsspi", "pll";
58562306a36Sopenharmony_ci			num-cs = <8>;
58662306a36Sopenharmony_ci			status = "disabled";
58762306a36Sopenharmony_ci		};
58862306a36Sopenharmony_ci
58962306a36Sopenharmony_ci		nand-controller@1800 {
59062306a36Sopenharmony_ci			#address-cells = <1>;
59162306a36Sopenharmony_ci			#size-cells = <0>;
59262306a36Sopenharmony_ci			compatible = "brcm,nand-bcm63138", "brcm,brcmnand-v7.1", "brcm,brcmnand";
59362306a36Sopenharmony_ci			reg = <0x1800 0x600>, <0x2000 0x10>;
59462306a36Sopenharmony_ci			reg-names = "nand", "nand-int-base";
59562306a36Sopenharmony_ci			interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>;
59662306a36Sopenharmony_ci			interrupt-names = "nand_ctlrdy";
59762306a36Sopenharmony_ci			status = "okay";
59862306a36Sopenharmony_ci
59962306a36Sopenharmony_ci			nandcs: nand@0 {
60062306a36Sopenharmony_ci				compatible = "brcm,nandcs";
60162306a36Sopenharmony_ci				reg = <0>;
60262306a36Sopenharmony_ci			};
60362306a36Sopenharmony_ci		};
60462306a36Sopenharmony_ci
60562306a36Sopenharmony_ci		i2c@2100 {
60662306a36Sopenharmony_ci			compatible = "brcm,brcmper-i2c";
60762306a36Sopenharmony_ci			reg = <0x2100 0x58>;
60862306a36Sopenharmony_ci			clock-frequency = <97500>;
60962306a36Sopenharmony_ci			pinctrl-names = "default";
61062306a36Sopenharmony_ci			pinctrl-0 = <&pins_i2c_a>;
61162306a36Sopenharmony_ci			status = "disabled";
61262306a36Sopenharmony_ci		};
61362306a36Sopenharmony_ci
61462306a36Sopenharmony_ci		misc@2600 {
61562306a36Sopenharmony_ci			compatible = "brcm,misc", "simple-mfd";
61662306a36Sopenharmony_ci			reg = <0x2600 0xe4>;
61762306a36Sopenharmony_ci
61862306a36Sopenharmony_ci			#address-cells = <1>;
61962306a36Sopenharmony_ci			#size-cells = <1>;
62062306a36Sopenharmony_ci			ranges = <0x00 0x2600 0xe4>;
62162306a36Sopenharmony_ci
62262306a36Sopenharmony_ci			reset-controller@2644 {
62362306a36Sopenharmony_ci				compatible = "brcm,bcm4908-misc-pcie-reset";
62462306a36Sopenharmony_ci				reg = <0x44 0x04>;
62562306a36Sopenharmony_ci				#reset-cells = <1>;
62662306a36Sopenharmony_ci			};
62762306a36Sopenharmony_ci		};
62862306a36Sopenharmony_ci	};
62962306a36Sopenharmony_ci
63062306a36Sopenharmony_ci	reboot {
63162306a36Sopenharmony_ci		compatible = "syscon-reboot";
63262306a36Sopenharmony_ci		regmap = <&twd>;
63362306a36Sopenharmony_ci		offset = <0x34>;
63462306a36Sopenharmony_ci		mask = <1>;
63562306a36Sopenharmony_ci	};
63662306a36Sopenharmony_ci};
637