xref: /linux/arch/arm64/boot/dts/amlogic/meson-s4.dtsi (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1ac4dfd0dSXianwei Zhao// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2ac4dfd0dSXianwei Zhao/*
3ac4dfd0dSXianwei Zhao * Copyright (c) 2021 Amlogic, Inc. All rights reserved.
4ac4dfd0dSXianwei Zhao */
5ac4dfd0dSXianwei Zhao
6ac4dfd0dSXianwei Zhao#include <dt-bindings/interrupt-controller/irq.h>
7ac4dfd0dSXianwei Zhao#include <dt-bindings/interrupt-controller/arm-gic.h>
86383f5a2SQianggui Song#include <dt-bindings/gpio/gpio.h>
940ae6729SXianwei Zhao#include <dt-bindings/gpio/meson-s4-gpio.h>
1040ae6729SXianwei Zhao#include <dt-bindings/clock/amlogic,s4-pll-clkc.h>
1140ae6729SXianwei Zhao#include <dt-bindings/clock/amlogic,s4-peripherals-clkc.h>
1240ae6729SXianwei Zhao#include <dt-bindings/power/meson-s4-power.h>
133ab9d54bSXianwei Zhao#include <dt-bindings/reset/amlogic,meson-s4-reset.h>
14ac4dfd0dSXianwei Zhao
15ac4dfd0dSXianwei Zhao/ {
16ac4dfd0dSXianwei Zhao	cpus {
17ac4dfd0dSXianwei Zhao		#address-cells = <2>;
18ac4dfd0dSXianwei Zhao		#size-cells = <0>;
19ac4dfd0dSXianwei Zhao
20ac4dfd0dSXianwei Zhao		cpu0: cpu@0 {
21ac4dfd0dSXianwei Zhao			device_type = "cpu";
229af9c58aSXianwei Zhao			compatible = "arm,cortex-a35";
23ac4dfd0dSXianwei Zhao			reg = <0x0 0x0>;
24ac4dfd0dSXianwei Zhao			enable-method = "psci";
25ac4dfd0dSXianwei Zhao		};
26ac4dfd0dSXianwei Zhao
27ac4dfd0dSXianwei Zhao		cpu1: cpu@1 {
28ac4dfd0dSXianwei Zhao			device_type = "cpu";
299af9c58aSXianwei Zhao			compatible = "arm,cortex-a35";
30ac4dfd0dSXianwei Zhao			reg = <0x0 0x1>;
31ac4dfd0dSXianwei Zhao			enable-method = "psci";
32ac4dfd0dSXianwei Zhao		};
33ac4dfd0dSXianwei Zhao
34ac4dfd0dSXianwei Zhao		cpu2: cpu@2 {
35ac4dfd0dSXianwei Zhao			device_type = "cpu";
369af9c58aSXianwei Zhao			compatible = "arm,cortex-a35";
37ac4dfd0dSXianwei Zhao			reg = <0x0 0x2>;
38ac4dfd0dSXianwei Zhao			enable-method = "psci";
39ac4dfd0dSXianwei Zhao		};
40ac4dfd0dSXianwei Zhao
41ac4dfd0dSXianwei Zhao		cpu3: cpu@3 {
42ac4dfd0dSXianwei Zhao			device_type = "cpu";
439af9c58aSXianwei Zhao			compatible = "arm,cortex-a35";
44ac4dfd0dSXianwei Zhao			reg = <0x0 0x3>;
45ac4dfd0dSXianwei Zhao			enable-method = "psci";
46ac4dfd0dSXianwei Zhao		};
47ac4dfd0dSXianwei Zhao	};
48ac4dfd0dSXianwei Zhao
49ac4dfd0dSXianwei Zhao	timer {
50ac4dfd0dSXianwei Zhao		compatible = "arm,armv8-timer";
51ac4dfd0dSXianwei Zhao		interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
52ac4dfd0dSXianwei Zhao			     <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
53ac4dfd0dSXianwei Zhao			     <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
54ac4dfd0dSXianwei Zhao			     <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>;
55ac4dfd0dSXianwei Zhao	};
56ac4dfd0dSXianwei Zhao
57ac4dfd0dSXianwei Zhao	psci {
58ac4dfd0dSXianwei Zhao		compatible = "arm,psci-1.0";
59ac4dfd0dSXianwei Zhao		method = "smc";
60ac4dfd0dSXianwei Zhao	};
61ac4dfd0dSXianwei Zhao
62ac4dfd0dSXianwei Zhao	xtal: xtal-clk {
63ac4dfd0dSXianwei Zhao		compatible = "fixed-clock";
64ac4dfd0dSXianwei Zhao		clock-frequency = <24000000>;
65ac4dfd0dSXianwei Zhao		clock-output-names = "xtal";
66ac4dfd0dSXianwei Zhao		#clock-cells = <0>;
67ac4dfd0dSXianwei Zhao	};
68ac4dfd0dSXianwei Zhao
6972907de9SXianwei Zhao	firmware {
7072907de9SXianwei Zhao		sm: secure-monitor {
7172907de9SXianwei Zhao			compatible = "amlogic,meson-gxbb-sm";
7272907de9SXianwei Zhao
73085f7a29SShunzhou Jiang			pwrc: power-controller {
74085f7a29SShunzhou Jiang				compatible = "amlogic,meson-s4-pwrc";
75085f7a29SShunzhou Jiang				#power-domain-cells = <1>;
7672907de9SXianwei Zhao			};
7772907de9SXianwei Zhao		};
78085f7a29SShunzhou Jiang	};
79085f7a29SShunzhou Jiang
80ac4dfd0dSXianwei Zhao	soc {
81ac4dfd0dSXianwei Zhao		compatible = "simple-bus";
82ac4dfd0dSXianwei Zhao		#address-cells = <2>;
83ac4dfd0dSXianwei Zhao		#size-cells = <2>;
84ac4dfd0dSXianwei Zhao		ranges;
85ac4dfd0dSXianwei Zhao
86ac4dfd0dSXianwei Zhao		gic: interrupt-controller@fff01000 {
87ac4dfd0dSXianwei Zhao			compatible = "arm,gic-400";
88ac4dfd0dSXianwei Zhao			#interrupt-cells = <3>;
89ac4dfd0dSXianwei Zhao			#address-cells = <0>;
90ac4dfd0dSXianwei Zhao			interrupt-controller;
91ac4dfd0dSXianwei Zhao			reg = <0x0 0xfff01000 0 0x1000>,
92ac4dfd0dSXianwei Zhao			      <0x0 0xfff02000 0 0x2000>,
93ac4dfd0dSXianwei Zhao			      <0x0 0xfff04000 0 0x2000>,
94ac4dfd0dSXianwei Zhao			      <0x0 0xfff06000 0 0x2000>;
95ac4dfd0dSXianwei Zhao			interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>;
96ac4dfd0dSXianwei Zhao		};
97ac4dfd0dSXianwei Zhao
98d1e336eeSNeil Armstrong		apb4: bus@fe000000 {
99ac4dfd0dSXianwei Zhao			compatible = "simple-bus";
100ac4dfd0dSXianwei Zhao			reg = <0x0 0xfe000000 0x0 0x480000>;
101ac4dfd0dSXianwei Zhao			#address-cells = <2>;
102ac4dfd0dSXianwei Zhao			#size-cells = <2>;
103ac4dfd0dSXianwei Zhao			ranges = <0x0 0x0 0x0 0xfe000000 0x0 0x480000>;
104ac4dfd0dSXianwei Zhao
10540ae6729SXianwei Zhao			clkc_periphs: clock-controller@0 {
10640ae6729SXianwei Zhao				compatible = "amlogic,s4-peripherals-clkc";
10740ae6729SXianwei Zhao				reg = <0x0 0x0 0x0 0x49c>;
10840ae6729SXianwei Zhao				clocks = <&clkc_pll CLKID_FCLK_DIV2>,
10940ae6729SXianwei Zhao					<&clkc_pll CLKID_FCLK_DIV2P5>,
11040ae6729SXianwei Zhao					<&clkc_pll CLKID_FCLK_DIV3>,
11140ae6729SXianwei Zhao					<&clkc_pll CLKID_FCLK_DIV4>,
11240ae6729SXianwei Zhao					<&clkc_pll CLKID_FCLK_DIV5>,
11340ae6729SXianwei Zhao					<&clkc_pll CLKID_FCLK_DIV7>,
11440ae6729SXianwei Zhao					<&clkc_pll CLKID_HIFI_PLL>,
11540ae6729SXianwei Zhao					<&clkc_pll CLKID_GP0_PLL>,
11640ae6729SXianwei Zhao					<&clkc_pll CLKID_MPLL0>,
11740ae6729SXianwei Zhao					<&clkc_pll CLKID_MPLL1>,
11840ae6729SXianwei Zhao					<&clkc_pll CLKID_MPLL2>,
11940ae6729SXianwei Zhao					<&clkc_pll CLKID_MPLL3>,
12040ae6729SXianwei Zhao					<&clkc_pll CLKID_HDMI_PLL>,
12140ae6729SXianwei Zhao					<&xtal>;
12240ae6729SXianwei Zhao				clock-names = "fclk_div2", "fclk_div2p5", "fclk_div3",
12340ae6729SXianwei Zhao						"fclk_div4", "fclk_div5", "fclk_div7",
12440ae6729SXianwei Zhao						"hifi_pll", "gp0_pll", "mpll0", "mpll1",
12540ae6729SXianwei Zhao						"mpll2", "mpll3", "hdmi_pll", "xtal";
12640ae6729SXianwei Zhao				#clock-cells = <1>;
12740ae6729SXianwei Zhao			};
12840ae6729SXianwei Zhao
12940ae6729SXianwei Zhao			clkc_pll: clock-controller@8000 {
13040ae6729SXianwei Zhao				compatible = "amlogic,s4-pll-clkc";
13140ae6729SXianwei Zhao				reg = <0x0 0x8000 0x0 0x1e8>;
13240ae6729SXianwei Zhao				clocks = <&xtal>;
13340ae6729SXianwei Zhao				clock-names = "xtal";
13440ae6729SXianwei Zhao				#clock-cells = <1>;
13540ae6729SXianwei Zhao			};
13640ae6729SXianwei Zhao
1372d66f912SHuqiang Qin			watchdog@2100 {
1382d66f912SHuqiang Qin				compatible = "amlogic,s4-wdt", "amlogic,t7-wdt";
1392d66f912SHuqiang Qin				reg = <0x0 0x2100 0x0 0x10>;
1402d66f912SHuqiang Qin				clocks = <&xtal>;
1412d66f912SHuqiang Qin			};
1422d66f912SHuqiang Qin
1436383f5a2SQianggui Song			periphs_pinctrl: pinctrl@4000 {
1446383f5a2SQianggui Song				compatible = "amlogic,meson-s4-periphs-pinctrl";
1456383f5a2SQianggui Song				#address-cells = <2>;
1466383f5a2SQianggui Song				#size-cells = <2>;
1476383f5a2SQianggui Song				ranges;
1486383f5a2SQianggui Song
1496383f5a2SQianggui Song				gpio: bank@4000 {
1506383f5a2SQianggui Song					reg = <0x0 0x4000 0x0 0x004c>,
1516383f5a2SQianggui Song					      <0x0 0x40c0 0x0 0x0220>;
1526383f5a2SQianggui Song					reg-names = "mux", "gpio";
1536383f5a2SQianggui Song					gpio-controller;
1546383f5a2SQianggui Song					#gpio-cells = <2>;
1556383f5a2SQianggui Song					gpio-ranges = <&periphs_pinctrl 0 0 82>;
1566383f5a2SQianggui Song				};
157dc8bc779SZelong Dong
158dc8bc779SZelong Dong				remote_pins: remote-pin {
159dc8bc779SZelong Dong					mux {
160dc8bc779SZelong Dong						groups = "remote_in";
161dc8bc779SZelong Dong						function = "remote_in";
162dc8bc779SZelong Dong						bias-disable;
163dc8bc779SZelong Dong					};
164dc8bc779SZelong Dong				};
16540ae6729SXianwei Zhao
16640ae6729SXianwei Zhao				i2c0_pins1: i2c0-pins1 {
16740ae6729SXianwei Zhao					mux {
16840ae6729SXianwei Zhao						groups = "i2c0_sda",
16940ae6729SXianwei Zhao						       "i2c0_scl";
17040ae6729SXianwei Zhao						function = "i2c0";
17140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
17240ae6729SXianwei Zhao						bias-disable;
17340ae6729SXianwei Zhao					};
17440ae6729SXianwei Zhao				};
17540ae6729SXianwei Zhao
17640ae6729SXianwei Zhao				i2c1_pins1: i2c1-pins1 {
17740ae6729SXianwei Zhao					mux {
17840ae6729SXianwei Zhao						groups = "i2c1_sda_c",
17940ae6729SXianwei Zhao						       "i2c1_scl_c";
18040ae6729SXianwei Zhao						function = "i2c1";
18140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
18240ae6729SXianwei Zhao						bias-disable;
18340ae6729SXianwei Zhao					};
18440ae6729SXianwei Zhao				};
18540ae6729SXianwei Zhao
18640ae6729SXianwei Zhao				i2c1_pins2: i2c1-pins2 {
18740ae6729SXianwei Zhao					mux {
18840ae6729SXianwei Zhao						groups = "i2c1_sda_d",
18940ae6729SXianwei Zhao						       "i2c1_scl_d";
19040ae6729SXianwei Zhao						function = "i2c1";
19140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
19240ae6729SXianwei Zhao						bias-disable;
19340ae6729SXianwei Zhao					};
19440ae6729SXianwei Zhao				};
19540ae6729SXianwei Zhao
19640ae6729SXianwei Zhao				i2c1_pins3: i2c1-pins3 {
19740ae6729SXianwei Zhao					mux {
19840ae6729SXianwei Zhao						groups = "i2c1_sda_h",
19940ae6729SXianwei Zhao						       "i2c1_scl_h";
20040ae6729SXianwei Zhao						function = "i2c1";
20140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
20240ae6729SXianwei Zhao						bias-disable;
20340ae6729SXianwei Zhao					};
20440ae6729SXianwei Zhao				};
20540ae6729SXianwei Zhao
20640ae6729SXianwei Zhao				i2c1_pins4: i2c1-pins4 {
20740ae6729SXianwei Zhao					mux {
20840ae6729SXianwei Zhao						groups = "i2c1_sda_x",
20940ae6729SXianwei Zhao						       "i2c1_scl_x";
21040ae6729SXianwei Zhao						function = "i2c1";
21140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
21240ae6729SXianwei Zhao						bias-disable;
21340ae6729SXianwei Zhao					};
21440ae6729SXianwei Zhao				};
21540ae6729SXianwei Zhao
21640ae6729SXianwei Zhao				i2c2_pins1: i2c2-pins1 {
21740ae6729SXianwei Zhao					mux {
21840ae6729SXianwei Zhao						groups = "i2c2_sda_d",
21940ae6729SXianwei Zhao						       "i2c2_scl_d";
22040ae6729SXianwei Zhao						function = "i2c2";
22140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
22240ae6729SXianwei Zhao						bias-disable;
22340ae6729SXianwei Zhao					};
22440ae6729SXianwei Zhao				};
22540ae6729SXianwei Zhao
22640ae6729SXianwei Zhao				i2c2_pins2: i2c2-pins2 {
22740ae6729SXianwei Zhao					mux {
22840ae6729SXianwei Zhao						groups = "i2c2_sda_h8",
22940ae6729SXianwei Zhao						       "i2c2_scl_h9";
23040ae6729SXianwei Zhao						function = "i2c2";
23140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
23240ae6729SXianwei Zhao						bias-disable;
23340ae6729SXianwei Zhao					};
23440ae6729SXianwei Zhao				};
23540ae6729SXianwei Zhao
23640ae6729SXianwei Zhao				i2c2_pins3: i2c2-pins3 {
23740ae6729SXianwei Zhao					mux {
23840ae6729SXianwei Zhao						groups = "i2c2_sda_h0",
23940ae6729SXianwei Zhao						       "i2c2_scl_h1";
24040ae6729SXianwei Zhao						function = "i2c2";
24140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
24240ae6729SXianwei Zhao						bias-disable;
24340ae6729SXianwei Zhao					};
24440ae6729SXianwei Zhao				};
24540ae6729SXianwei Zhao
24640ae6729SXianwei Zhao				i2c3_pins1: i2c3-pins1 {
24740ae6729SXianwei Zhao					mux {
24840ae6729SXianwei Zhao						groups = "i2c3_sda_x",
24940ae6729SXianwei Zhao						       "i2c3_scl_x";
25040ae6729SXianwei Zhao						function = "i2c3";
25140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
25240ae6729SXianwei Zhao						bias-disable;
25340ae6729SXianwei Zhao					};
25440ae6729SXianwei Zhao				};
25540ae6729SXianwei Zhao
25640ae6729SXianwei Zhao				i2c3_pins2: i2c3-pins2 {
25740ae6729SXianwei Zhao					mux {
25840ae6729SXianwei Zhao						groups = "i2c3_sda_z",
25940ae6729SXianwei Zhao						       "i2c3_scl_z";
26040ae6729SXianwei Zhao						function = "i2c3";
26140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
26240ae6729SXianwei Zhao						bias-disable;
26340ae6729SXianwei Zhao					};
26440ae6729SXianwei Zhao				};
26540ae6729SXianwei Zhao
26640ae6729SXianwei Zhao				i2c4_pins1: i2c4-pins1 {
26740ae6729SXianwei Zhao					mux {
26840ae6729SXianwei Zhao						groups = "i2c4_sda_c",
26940ae6729SXianwei Zhao						       "i2c4_scl_c";
27040ae6729SXianwei Zhao						function = "i2c4";
27140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
27240ae6729SXianwei Zhao						bias-disable;
27340ae6729SXianwei Zhao					};
27440ae6729SXianwei Zhao				};
27540ae6729SXianwei Zhao
27640ae6729SXianwei Zhao				i2c4_pins2: i2c4-pins2 {
27740ae6729SXianwei Zhao					mux {
27840ae6729SXianwei Zhao						groups = "i2c4_sda_d",
27940ae6729SXianwei Zhao						       "i2c4_scl_d";
28040ae6729SXianwei Zhao						function = "i2c4";
28140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
28240ae6729SXianwei Zhao						bias-disable;
28340ae6729SXianwei Zhao					};
28440ae6729SXianwei Zhao				};
28540ae6729SXianwei Zhao
28640ae6729SXianwei Zhao				i2c4_pins3: i2c4-pins3 {
28740ae6729SXianwei Zhao					mux {
28840ae6729SXianwei Zhao						groups = "i2c4_sda_z",
28940ae6729SXianwei Zhao						       "i2c4_scl_z";
29040ae6729SXianwei Zhao						function = "i2c4";
29140ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
29240ae6729SXianwei Zhao						bias-disable;
29340ae6729SXianwei Zhao					};
29440ae6729SXianwei Zhao				};
29540ae6729SXianwei Zhao
29640ae6729SXianwei Zhao				nand_pins: nand-pins {
29740ae6729SXianwei Zhao					mux {
29840ae6729SXianwei Zhao						groups = "emmc_nand_d0",
29940ae6729SXianwei Zhao						       "emmc_nand_d1",
30040ae6729SXianwei Zhao						       "emmc_nand_d2",
30140ae6729SXianwei Zhao						       "emmc_nand_d3",
30240ae6729SXianwei Zhao						       "emmc_nand_d4",
30340ae6729SXianwei Zhao						       "emmc_nand_d5",
30440ae6729SXianwei Zhao						       "emmc_nand_d6",
30540ae6729SXianwei Zhao						       "emmc_nand_d7",
30640ae6729SXianwei Zhao						       "nand_ce0",
30740ae6729SXianwei Zhao						       "nand_ale",
30840ae6729SXianwei Zhao						       "nand_cle",
30940ae6729SXianwei Zhao						       "nand_wen_clk",
31040ae6729SXianwei Zhao						       "nand_ren_wr";
31140ae6729SXianwei Zhao						function = "nand";
31240ae6729SXianwei Zhao						input-enable;
31340ae6729SXianwei Zhao					};
31440ae6729SXianwei Zhao				};
31540ae6729SXianwei Zhao
316e227c1e1SJunyi Zhao				pwm_a_pins1: pwm-a-pins1 {
317e227c1e1SJunyi Zhao					mux {
318e227c1e1SJunyi Zhao						groups = "pwm_a_d";
319e227c1e1SJunyi Zhao						function = "pwm_a";
320e227c1e1SJunyi Zhao					};
321e227c1e1SJunyi Zhao				};
322e227c1e1SJunyi Zhao
323e227c1e1SJunyi Zhao				pwm_a_pins2: pwm-a-pins2 {
324e227c1e1SJunyi Zhao					mux {
325e227c1e1SJunyi Zhao						groups = "pwm_a_x";
326e227c1e1SJunyi Zhao						function = "pwm_a";
327e227c1e1SJunyi Zhao					};
328e227c1e1SJunyi Zhao				};
329e227c1e1SJunyi Zhao
330e227c1e1SJunyi Zhao				pwm_b_pins1: pwm-b-pins1 {
331e227c1e1SJunyi Zhao					mux {
332e227c1e1SJunyi Zhao						groups = "pwm_b_d";
333e227c1e1SJunyi Zhao						function = "pwm_b";
334e227c1e1SJunyi Zhao					};
335e227c1e1SJunyi Zhao				};
336e227c1e1SJunyi Zhao
337e227c1e1SJunyi Zhao				pwm_b_pins2: pwm-b-pins2 {
338e227c1e1SJunyi Zhao					mux {
339e227c1e1SJunyi Zhao						groups = "pwm_b_x";
340e227c1e1SJunyi Zhao						function = "pwm_b";
341e227c1e1SJunyi Zhao					};
342e227c1e1SJunyi Zhao				};
343e227c1e1SJunyi Zhao
344e227c1e1SJunyi Zhao				pwm_c_pins1: pwm-c-pins1 {
345e227c1e1SJunyi Zhao					mux {
346e227c1e1SJunyi Zhao						groups = "pwm_c_d";
347e227c1e1SJunyi Zhao						function = "pwm_c";
348e227c1e1SJunyi Zhao					};
349e227c1e1SJunyi Zhao				};
350e227c1e1SJunyi Zhao
351e227c1e1SJunyi Zhao				pwm_c_pins2: pwm-c-pins2 {
352e227c1e1SJunyi Zhao					mux {
353e227c1e1SJunyi Zhao						groups = "pwm_c_x";
354e227c1e1SJunyi Zhao						function = "pwm_c";
355e227c1e1SJunyi Zhao					};
356e227c1e1SJunyi Zhao				};
357e227c1e1SJunyi Zhao
358e227c1e1SJunyi Zhao				pwm_d_pins1: pwm-d-pins1 {
359e227c1e1SJunyi Zhao					mux {
360e227c1e1SJunyi Zhao						groups = "pwm_d_d";
361e227c1e1SJunyi Zhao						function = "pwm_d";
362e227c1e1SJunyi Zhao					};
363e227c1e1SJunyi Zhao				};
364e227c1e1SJunyi Zhao
365e227c1e1SJunyi Zhao				pwm_d_pins2: pwm-d-pins2 {
366e227c1e1SJunyi Zhao					mux {
367e227c1e1SJunyi Zhao						groups = "pwm_d_h";
368e227c1e1SJunyi Zhao						function = "pwm_d";
369e227c1e1SJunyi Zhao					};
370e227c1e1SJunyi Zhao				};
371e227c1e1SJunyi Zhao
372e227c1e1SJunyi Zhao				pwm_e_pins1: pwm-e-pins1 {
373e227c1e1SJunyi Zhao					mux {
374e227c1e1SJunyi Zhao						groups = "pwm_e_x";
375e227c1e1SJunyi Zhao						function = "pwm_e";
376e227c1e1SJunyi Zhao					};
377e227c1e1SJunyi Zhao				};
378e227c1e1SJunyi Zhao
379e227c1e1SJunyi Zhao				pwm_e_pins2: pwm-e-pins2 {
380e227c1e1SJunyi Zhao					mux {
381e227c1e1SJunyi Zhao						groups = "pwm_e_z";
382e227c1e1SJunyi Zhao						function = "pwm_e";
383e227c1e1SJunyi Zhao					};
384e227c1e1SJunyi Zhao				};
385e227c1e1SJunyi Zhao
386e227c1e1SJunyi Zhao				pwm_f_pins1: pwm-f-pins1 {
387e227c1e1SJunyi Zhao					mux {
388e227c1e1SJunyi Zhao						groups = "pwm_f_x";
389e227c1e1SJunyi Zhao						function = "pwm_f";
390e227c1e1SJunyi Zhao					};
391e227c1e1SJunyi Zhao				};
392e227c1e1SJunyi Zhao
393e227c1e1SJunyi Zhao				pwm_f_pins2: pwm-f-pins2 {
394e227c1e1SJunyi Zhao					mux {
395e227c1e1SJunyi Zhao						groups = "pwm_f_z";
396e227c1e1SJunyi Zhao						function = "pwm_f";
397e227c1e1SJunyi Zhao					};
398e227c1e1SJunyi Zhao				};
399e227c1e1SJunyi Zhao
400e227c1e1SJunyi Zhao				pwm_g_pins1: pwm-g-pins1 {
401e227c1e1SJunyi Zhao					mux {
402e227c1e1SJunyi Zhao						groups = "pwm_g_d";
403e227c1e1SJunyi Zhao						function = "pwm_g";
404e227c1e1SJunyi Zhao					};
405e227c1e1SJunyi Zhao				};
406e227c1e1SJunyi Zhao
407e227c1e1SJunyi Zhao				pwm_g_pins2: pwm-g-pins2 {
408e227c1e1SJunyi Zhao					mux {
409e227c1e1SJunyi Zhao						groups = "pwm_g_z";
410e227c1e1SJunyi Zhao						function = "pwm_g";
411e227c1e1SJunyi Zhao					};
412e227c1e1SJunyi Zhao				};
413e227c1e1SJunyi Zhao
414e227c1e1SJunyi Zhao				pwm_h_pins: pwm-h-pins {
415e227c1e1SJunyi Zhao					mux {
416e227c1e1SJunyi Zhao						groups = "pwm_h";
417e227c1e1SJunyi Zhao						function = "pwm_h";
418e227c1e1SJunyi Zhao					};
419e227c1e1SJunyi Zhao				};
420e227c1e1SJunyi Zhao
421e227c1e1SJunyi Zhao				pwm_i_pins1: pwm-i-pins1 {
422e227c1e1SJunyi Zhao					mux {
423e227c1e1SJunyi Zhao						groups = "pwm_i_d";
424e227c1e1SJunyi Zhao						function = "pwm_i";
425e227c1e1SJunyi Zhao					};
426e227c1e1SJunyi Zhao				};
427e227c1e1SJunyi Zhao
428e227c1e1SJunyi Zhao				pwm_i_pins2: pwm-i-pins2 {
429e227c1e1SJunyi Zhao					mux {
430e227c1e1SJunyi Zhao						groups = "pwm_i_h";
431e227c1e1SJunyi Zhao						function = "pwm_i";
432e227c1e1SJunyi Zhao					};
433e227c1e1SJunyi Zhao				};
434e227c1e1SJunyi Zhao
435e227c1e1SJunyi Zhao				pwm_j_pins: pwm-j-pins {
436e227c1e1SJunyi Zhao					mux {
437e227c1e1SJunyi Zhao						groups = "pwm_j";
438e227c1e1SJunyi Zhao						function = "pwm_j";
439e227c1e1SJunyi Zhao					};
440e227c1e1SJunyi Zhao				};
441e227c1e1SJunyi Zhao
442e227c1e1SJunyi Zhao				pwm_a_hiz_pins: pwm-a-hiz-pins {
443e227c1e1SJunyi Zhao					mux {
444e227c1e1SJunyi Zhao						groups = "pwm_a_hiz";
445e227c1e1SJunyi Zhao						function = "pwm_a_hiz";
446e227c1e1SJunyi Zhao					};
447e227c1e1SJunyi Zhao				};
448e227c1e1SJunyi Zhao
449e227c1e1SJunyi Zhao				pwm_b_hiz_pins: pwm-b-hiz-pins {
450e227c1e1SJunyi Zhao					mux {
451e227c1e1SJunyi Zhao						groups = "pwm_b_hiz";
452e227c1e1SJunyi Zhao						function = "pwm_b_hiz";
453e227c1e1SJunyi Zhao					};
454e227c1e1SJunyi Zhao				};
455e227c1e1SJunyi Zhao
456e227c1e1SJunyi Zhao				pwm_c_hiz_pins: pwm-c-hiz-pins {
457e227c1e1SJunyi Zhao					mux {
458e227c1e1SJunyi Zhao						groups = "pwm_c_hiz";
459e227c1e1SJunyi Zhao						function = "pwm_c_hiz";
460e227c1e1SJunyi Zhao					};
461e227c1e1SJunyi Zhao				};
462e227c1e1SJunyi Zhao
463e227c1e1SJunyi Zhao				pwm_g_hiz_pins: pwm-g-hiz-pins {
464e227c1e1SJunyi Zhao					mux {
465e227c1e1SJunyi Zhao						groups = "pwm_g_hiz";
466e227c1e1SJunyi Zhao						function = "pwm_g_hiz";
467e227c1e1SJunyi Zhao					};
468e227c1e1SJunyi Zhao				};
469e227c1e1SJunyi Zhao
4703ab9d54bSXianwei Zhao				sdcard_pins: sdcard-pins {
4713ab9d54bSXianwei Zhao					mux {
4723ab9d54bSXianwei Zhao						groups = "sdcard_d0_c",
4733ab9d54bSXianwei Zhao							 "sdcard_d1_c",
4743ab9d54bSXianwei Zhao							 "sdcard_d2_c",
4753ab9d54bSXianwei Zhao							 "sdcard_d3_c",
4763ab9d54bSXianwei Zhao							 "sdcard_clk_c",
4773ab9d54bSXianwei Zhao							 "sdcard_cmd_c";
4783ab9d54bSXianwei Zhao						function = "sdcard";
4793ab9d54bSXianwei Zhao						bias-pull-up;
4803ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
4813ab9d54bSXianwei Zhao					};
4823ab9d54bSXianwei Zhao				};
4833ab9d54bSXianwei Zhao
4843ab9d54bSXianwei Zhao				sdcard_clk_gate_pins: sdcard-clk-gate-pins {
4853ab9d54bSXianwei Zhao					mux {
4863ab9d54bSXianwei Zhao						groups = "GPIOC_4";
4873ab9d54bSXianwei Zhao						function = "gpio_periphs";
4883ab9d54bSXianwei Zhao						bias-pull-down;
4893ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
4903ab9d54bSXianwei Zhao					};
4913ab9d54bSXianwei Zhao				};
4923ab9d54bSXianwei Zhao
4933ab9d54bSXianwei Zhao				emmc_pins: emmc-pins {
4943ab9d54bSXianwei Zhao					mux-0 {
4953ab9d54bSXianwei Zhao						groups = "emmc_nand_d0",
4963ab9d54bSXianwei Zhao							 "emmc_nand_d1",
4973ab9d54bSXianwei Zhao							 "emmc_nand_d2",
4983ab9d54bSXianwei Zhao							 "emmc_nand_d3",
4993ab9d54bSXianwei Zhao							 "emmc_nand_d4",
5003ab9d54bSXianwei Zhao							 "emmc_nand_d5",
5013ab9d54bSXianwei Zhao							 "emmc_nand_d6",
5023ab9d54bSXianwei Zhao							 "emmc_nand_d7",
5033ab9d54bSXianwei Zhao							 "emmc_cmd";
5043ab9d54bSXianwei Zhao						function = "emmc";
5053ab9d54bSXianwei Zhao						bias-pull-up;
5063ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
5073ab9d54bSXianwei Zhao					};
5083ab9d54bSXianwei Zhao					mux-1 {
5093ab9d54bSXianwei Zhao						groups = "emmc_clk";
5103ab9d54bSXianwei Zhao						function = "emmc";
5113ab9d54bSXianwei Zhao						bias-pull-up;
5123ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
5133ab9d54bSXianwei Zhao					};
5143ab9d54bSXianwei Zhao				};
5153ab9d54bSXianwei Zhao
5163ab9d54bSXianwei Zhao				emmc_ds_pins: emmc-ds-pins {
5173ab9d54bSXianwei Zhao					mux {
5183ab9d54bSXianwei Zhao						groups = "emmc_nand_ds";
5193ab9d54bSXianwei Zhao						function = "emmc";
5203ab9d54bSXianwei Zhao						bias-pull-down;
5213ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
5223ab9d54bSXianwei Zhao					};
5233ab9d54bSXianwei Zhao				};
5243ab9d54bSXianwei Zhao
5253ab9d54bSXianwei Zhao				emmc_clk_gate_pins: emmc-clk-gate-pins {
5263ab9d54bSXianwei Zhao					mux {
5273ab9d54bSXianwei Zhao						groups = "GPIOB_8";
5283ab9d54bSXianwei Zhao						function = "gpio_periphs";
5293ab9d54bSXianwei Zhao						bias-pull-down;
5303ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
5313ab9d54bSXianwei Zhao					};
5323ab9d54bSXianwei Zhao				};
5333ab9d54bSXianwei Zhao
5343ab9d54bSXianwei Zhao				sdio_pins: sdio-pins {
5353ab9d54bSXianwei Zhao					mux {
5363ab9d54bSXianwei Zhao						groups = "sdio_d0",
5373ab9d54bSXianwei Zhao							 "sdio_d1",
5383ab9d54bSXianwei Zhao							 "sdio_d2",
5393ab9d54bSXianwei Zhao							 "sdio_d3",
5403ab9d54bSXianwei Zhao							 "sdio_clk",
5413ab9d54bSXianwei Zhao							 "sdio_cmd";
5423ab9d54bSXianwei Zhao						function = "sdio";
5433ab9d54bSXianwei Zhao						bias-pull-up;
5443ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
5453ab9d54bSXianwei Zhao					};
5463ab9d54bSXianwei Zhao				};
5473ab9d54bSXianwei Zhao
5483ab9d54bSXianwei Zhao				sdio_clk_gate_pins: sdio-clk-gate-pins {
5493ab9d54bSXianwei Zhao					mux {
5503ab9d54bSXianwei Zhao						groups = "GPIOX_4";
5513ab9d54bSXianwei Zhao						function = "gpio_periphs";
5523ab9d54bSXianwei Zhao						bias-pull-down;
5533ab9d54bSXianwei Zhao						drive-strength-microamp = <4000>;
5543ab9d54bSXianwei Zhao					};
5553ab9d54bSXianwei Zhao				};
5563ab9d54bSXianwei Zhao
55740ae6729SXianwei Zhao				spicc0_pins_x: spicc0-pins_x {
55840ae6729SXianwei Zhao					mux {
55940ae6729SXianwei Zhao						groups = "spi_a_mosi_x",
56040ae6729SXianwei Zhao						       "spi_a_miso_x",
56140ae6729SXianwei Zhao						       "spi_a_clk_x";
56240ae6729SXianwei Zhao						function = "spi_a";
56340ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
56440ae6729SXianwei Zhao					};
56540ae6729SXianwei Zhao				};
56640ae6729SXianwei Zhao
56740ae6729SXianwei Zhao				spicc0_pins_h: spicc0-pins-h {
56840ae6729SXianwei Zhao					mux {
56940ae6729SXianwei Zhao						groups = "spi_a_mosi_h",
57040ae6729SXianwei Zhao						       "spi_a_miso_h",
57140ae6729SXianwei Zhao						       "spi_a_clk_h";
57240ae6729SXianwei Zhao						function = "spi_a";
57340ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
57440ae6729SXianwei Zhao					};
57540ae6729SXianwei Zhao				};
57640ae6729SXianwei Zhao
57740ae6729SXianwei Zhao				spicc0_pins_z: spicc0-pins-z {
57840ae6729SXianwei Zhao					mux {
57940ae6729SXianwei Zhao						groups = "spi_a_mosi_z",
58040ae6729SXianwei Zhao						       "spi_a_miso_z",
58140ae6729SXianwei Zhao						       "spi_a_clk_z";
58240ae6729SXianwei Zhao						function = "spi_a";
58340ae6729SXianwei Zhao						drive-strength-microamp = <3000>;
58440ae6729SXianwei Zhao					};
58540ae6729SXianwei Zhao				};
58640ae6729SXianwei Zhao
5876383f5a2SQianggui Song			};
5886383f5a2SQianggui Song
58939363393SQianggui Song			gpio_intc: interrupt-controller@4080 {
59039363393SQianggui Song				compatible = "amlogic,meson-s4-gpio-intc",
59139363393SQianggui Song					     "amlogic,meson-gpio-intc";
59239363393SQianggui Song				reg = <0x0 0x4080 0x0 0x20>;
59339363393SQianggui Song				interrupt-controller;
59439363393SQianggui Song				#interrupt-cells = <2>;
59539363393SQianggui Song				amlogic,channel-interrupts =
59639363393SQianggui Song					<10 11 12 13 14 15 16 17 18 19 20 21>;
59739363393SQianggui Song			};
59839363393SQianggui Song
59940ae6729SXianwei Zhao			eth_phy: mdio-multiplexer@28000 {
60040ae6729SXianwei Zhao				compatible = "amlogic,g12a-mdio-mux";
60140ae6729SXianwei Zhao				reg = <0x0 0x28000 0x0 0xa4>;
60240ae6729SXianwei Zhao
60340ae6729SXianwei Zhao				#address-cells = <1>;
60440ae6729SXianwei Zhao				#size-cells = <0>;
60540ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_ETHPHY>,
60640ae6729SXianwei Zhao					 <&xtal>,
60740ae6729SXianwei Zhao					 <&clkc_pll CLKID_MPLL_50M>;
60840ae6729SXianwei Zhao				clock-names = "pclk", "clkin0", "clkin1";
60940ae6729SXianwei Zhao				mdio-parent-bus = <&mdio0>;
61040ae6729SXianwei Zhao
61140ae6729SXianwei Zhao				ext_mdio: mdio@0 {
61240ae6729SXianwei Zhao					reg = <0>;
61340ae6729SXianwei Zhao					#address-cells = <1>;
61440ae6729SXianwei Zhao					#size-cells = <0>;
61540ae6729SXianwei Zhao				};
61640ae6729SXianwei Zhao
61740ae6729SXianwei Zhao				int_mdio: mdio@1 {
61840ae6729SXianwei Zhao					reg = <1>;
61940ae6729SXianwei Zhao					#address-cells = <1>;
62040ae6729SXianwei Zhao					#size-cells = <0>;
62140ae6729SXianwei Zhao
62240ae6729SXianwei Zhao					internal_ephy: ethernet-phy@8 {
62340ae6729SXianwei Zhao						compatible = "ethernet-phy-id0180.3301",
62440ae6729SXianwei Zhao							     "ethernet-phy-ieee802.3-c22";
62540ae6729SXianwei Zhao						interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>;
62640ae6729SXianwei Zhao						reg = <8>;
62740ae6729SXianwei Zhao						max-speed = <100>;
62840ae6729SXianwei Zhao					};
62940ae6729SXianwei Zhao				};
63040ae6729SXianwei Zhao			};
63140ae6729SXianwei Zhao
63240ae6729SXianwei Zhao			spicc0: spi@50000 {
63340ae6729SXianwei Zhao				compatible = "amlogic,meson-g12a-spicc";
63440ae6729SXianwei Zhao				reg = <0x0 0x50000 0x0 0x44>;
63540ae6729SXianwei Zhao				interrupts = <GIC_SPI 183 IRQ_TYPE_LEVEL_HIGH>;
63640ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_SPICC0>,
63740ae6729SXianwei Zhao					 <&clkc_periphs CLKID_SPICC0_EN>;
63840ae6729SXianwei Zhao				clock-names = "core", "pclk";
63940ae6729SXianwei Zhao				#address-cells = <1>;
64040ae6729SXianwei Zhao				#size-cells = <0>;
64140ae6729SXianwei Zhao				status = "disabled";
64240ae6729SXianwei Zhao			};
64340ae6729SXianwei Zhao
644e227c1e1SJunyi Zhao			pwm_ab: pwm@58000 {
645e227c1e1SJunyi Zhao				compatible = "amlogic,meson-s4-pwm";
646e227c1e1SJunyi Zhao				reg = <0x0 0x58000 0x0 0x24>;
647e227c1e1SJunyi Zhao				clocks = <&clkc_periphs CLKID_PWM_A>,
648e227c1e1SJunyi Zhao					 <&clkc_periphs CLKID_PWM_B>;
649e227c1e1SJunyi Zhao				#pwm-cells = <3>;
650e227c1e1SJunyi Zhao				status = "disabled";
651e227c1e1SJunyi Zhao			};
652e227c1e1SJunyi Zhao
653e227c1e1SJunyi Zhao			pwm_cd: pwm@5a000 {
654e227c1e1SJunyi Zhao				compatible = "amlogic,meson-s4-pwm";
655e227c1e1SJunyi Zhao				reg = <0x0 0x5a000 0x0 0x24>;
656e227c1e1SJunyi Zhao				clocks = <&clkc_periphs CLKID_PWM_C>,
657e227c1e1SJunyi Zhao					 <&clkc_periphs CLKID_PWM_D>;
658e227c1e1SJunyi Zhao				#pwm-cells = <3>;
659e227c1e1SJunyi Zhao				status = "disabled";
660e227c1e1SJunyi Zhao			};
661e227c1e1SJunyi Zhao
662e227c1e1SJunyi Zhao			pwm_ef: pwm@5c000 {
663e227c1e1SJunyi Zhao				compatible = "amlogic,meson-s4-pwm";
664e227c1e1SJunyi Zhao				reg = <0x0 0x5c000 0x0 0x24>;
665e227c1e1SJunyi Zhao				clocks = <&clkc_periphs CLKID_PWM_E>,
666e227c1e1SJunyi Zhao					 <&clkc_periphs CLKID_PWM_F>;
667e227c1e1SJunyi Zhao				#pwm-cells = <3>;
668e227c1e1SJunyi Zhao				status = "disabled";
669e227c1e1SJunyi Zhao			};
670e227c1e1SJunyi Zhao
671e227c1e1SJunyi Zhao			pwm_gh: pwm@5e000 {
672e227c1e1SJunyi Zhao				compatible = "amlogic,meson-s4-pwm";
673e227c1e1SJunyi Zhao				reg = <0x0 0x5e000 0x0 0x24>;
674e227c1e1SJunyi Zhao				clocks = <&clkc_periphs CLKID_PWM_G>,
675e227c1e1SJunyi Zhao					 <&clkc_periphs CLKID_PWM_H>;
676e227c1e1SJunyi Zhao				#pwm-cells = <3>;
677e227c1e1SJunyi Zhao				status = "disabled";
678e227c1e1SJunyi Zhao			};
679e227c1e1SJunyi Zhao
680e227c1e1SJunyi Zhao			pwm_ij: pwm@60000 {
681e227c1e1SJunyi Zhao				compatible = "amlogic,meson-s4-pwm";
682e227c1e1SJunyi Zhao				reg = <0x0 0x60000 0x0 0x24>;
683e227c1e1SJunyi Zhao				clocks = <&clkc_periphs CLKID_PWM_I>,
684e227c1e1SJunyi Zhao					 <&clkc_periphs CLKID_PWM_J>;
685e227c1e1SJunyi Zhao				#pwm-cells = <3>;
686e227c1e1SJunyi Zhao				status = "disabled";
687e227c1e1SJunyi Zhao			};
688e227c1e1SJunyi Zhao
68940ae6729SXianwei Zhao			i2c0: i2c@66000 {
69040ae6729SXianwei Zhao				compatible = "amlogic,meson-axg-i2c";
69140ae6729SXianwei Zhao				reg = <0x0 0x66000 0x0 0x20>;
69240ae6729SXianwei Zhao				interrupts = <GIC_SPI 160 IRQ_TYPE_EDGE_RISING>;
69340ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_I2C_M_A>;
69440ae6729SXianwei Zhao				#address-cells = <1>;
69540ae6729SXianwei Zhao				#size-cells = <0>;
69640ae6729SXianwei Zhao				status = "disabled";
69740ae6729SXianwei Zhao			};
69840ae6729SXianwei Zhao
69940ae6729SXianwei Zhao			i2c1: i2c@68000 {
70040ae6729SXianwei Zhao				compatible = "amlogic,meson-axg-i2c";
70140ae6729SXianwei Zhao				reg = <0x0 0x68000 0x0 0x20>;
70240ae6729SXianwei Zhao				interrupts = <GIC_SPI 161 IRQ_TYPE_EDGE_RISING>;
70340ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_I2C_M_B>;
70440ae6729SXianwei Zhao				#address-cells = <1>;
70540ae6729SXianwei Zhao				#size-cells = <0>;
70640ae6729SXianwei Zhao				status = "disabled";
70740ae6729SXianwei Zhao			};
70840ae6729SXianwei Zhao
70940ae6729SXianwei Zhao			i2c2: i2c@6a000 {
71040ae6729SXianwei Zhao				compatible = "amlogic,meson-axg-i2c";
71140ae6729SXianwei Zhao				reg = <0x0 0x6a000 0x0 0x20>;
71240ae6729SXianwei Zhao				interrupts = <GIC_SPI 162 IRQ_TYPE_EDGE_RISING>;
71340ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_I2C_M_C>;
71440ae6729SXianwei Zhao				#address-cells = <1>;
71540ae6729SXianwei Zhao				#size-cells = <0>;
71640ae6729SXianwei Zhao				status = "disabled";
71740ae6729SXianwei Zhao			};
71840ae6729SXianwei Zhao
71940ae6729SXianwei Zhao			i2c3: i2c@6c000 {
72040ae6729SXianwei Zhao				compatible = "amlogic,meson-axg-i2c";
72140ae6729SXianwei Zhao				reg = <0x0 0x6c000 0x0 0x20>;
72240ae6729SXianwei Zhao				interrupts = <GIC_SPI 163 IRQ_TYPE_EDGE_RISING>;
72340ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_I2C_M_D>;
72440ae6729SXianwei Zhao				#address-cells = <1>;
72540ae6729SXianwei Zhao				#size-cells = <0>;
72640ae6729SXianwei Zhao				status = "disabled";
72740ae6729SXianwei Zhao			};
72840ae6729SXianwei Zhao
72940ae6729SXianwei Zhao			i2c4: i2c@6e000 {
73040ae6729SXianwei Zhao				compatible = "amlogic,meson-axg-i2c";
73140ae6729SXianwei Zhao				reg = <0x0 0x6e000 0x0 0x20>;
73240ae6729SXianwei Zhao				interrupts = <GIC_SPI 164 IRQ_TYPE_EDGE_RISING>;
73340ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_I2C_M_E>;
73440ae6729SXianwei Zhao				#address-cells = <1>;
73540ae6729SXianwei Zhao				#size-cells = <0>;
73640ae6729SXianwei Zhao				status = "disabled";
73740ae6729SXianwei Zhao			};
73840ae6729SXianwei Zhao
73940ae6729SXianwei Zhao			nand: nand-controller@8c800 {
74040ae6729SXianwei Zhao				compatible = "amlogic,meson-axg-nfc";
74140ae6729SXianwei Zhao				reg = <0x0 0x8c800 0x0 0x100>, <0x0 0x8c000 0x0 0x4>;
74240ae6729SXianwei Zhao				reg-names = "nfc", "emmc";
74340ae6729SXianwei Zhao				interrupts = <GIC_SPI 175 IRQ_TYPE_EDGE_RISING>;
74440ae6729SXianwei Zhao				clocks = <&clkc_periphs CLKID_SD_EMMC_C>,
74540ae6729SXianwei Zhao					<&clkc_pll CLKID_FCLK_DIV2>;
74640ae6729SXianwei Zhao				clock-names = "core", "device";
74740ae6729SXianwei Zhao				status = "disabled";
74840ae6729SXianwei Zhao			};
74940ae6729SXianwei Zhao
750eb54ef36SXianwei Zhao			uart_b: serial@7a000 {
751ac4dfd0dSXianwei Zhao				compatible = "amlogic,meson-s4-uart",
752ac4dfd0dSXianwei Zhao					     "amlogic,meson-ao-uart";
753ac4dfd0dSXianwei Zhao				reg = <0x0 0x7a000 0x0 0x18>;
754ac4dfd0dSXianwei Zhao				interrupts = <GIC_SPI 169 IRQ_TYPE_EDGE_RISING>;
75540ae6729SXianwei Zhao				clocks = <&xtal>, <&clkc_periphs CLKID_UART_B>, <&xtal>;
756ac4dfd0dSXianwei Zhao				clock-names = "xtal", "pclk", "baud";
757eb54ef36SXianwei Zhao				status = "disabled";
758ac4dfd0dSXianwei Zhao			};
759c46952d2SZelong Dong
760c46952d2SZelong Dong			reset: reset-controller@2000 {
761c46952d2SZelong Dong				compatible = "amlogic,meson-s4-reset";
762c46952d2SZelong Dong				reg = <0x0 0x2000 0x0 0x98>;
763c46952d2SZelong Dong				#reset-cells = <1>;
764c46952d2SZelong Dong			};
765dc8bc779SZelong Dong
766*4b26afe7SXianwei Zhao			sec_ao: ao-secure@10220 {
767*4b26afe7SXianwei Zhao				compatible = "amlogic,s4-ao-secure",
768*4b26afe7SXianwei Zhao					     "amlogic,meson-gx-ao-secure",
769*4b26afe7SXianwei Zhao					     "syscon";
770*4b26afe7SXianwei Zhao				reg = <0x0 0x10220 0x0 0x140>;
771*4b26afe7SXianwei Zhao				amlogic,has-chip-id;
772*4b26afe7SXianwei Zhao			};
773*4b26afe7SXianwei Zhao
774dc8bc779SZelong Dong			ir: ir@84040 {
775dc8bc779SZelong Dong				compatible = "amlogic,meson-s4-ir";
776dc8bc779SZelong Dong				reg = <0x0 0x84040 0x0 0x30>;
777dc8bc779SZelong Dong				interrupts = <GIC_SPI 22 IRQ_TYPE_EDGE_RISING>;
778dc8bc779SZelong Dong				status = "disabled";
779dc8bc779SZelong Dong			};
7801e3dbe80SAlexey Romanov
7811e3dbe80SAlexey Romanov			hwrng: rng@440788 {
7821e3dbe80SAlexey Romanov				compatible = "amlogic,meson-s4-rng";
7831e3dbe80SAlexey Romanov				reg = <0x0 0x440788 0x0 0x0c>;
7841e3dbe80SAlexey Romanov			};
785ac4dfd0dSXianwei Zhao		};
78640ae6729SXianwei Zhao
78740ae6729SXianwei Zhao		ethmac: ethernet@fdc00000 {
78840ae6729SXianwei Zhao			compatible = "amlogic,meson-axg-dwmac",
78940ae6729SXianwei Zhao				     "snps,dwmac-3.70a",
79040ae6729SXianwei Zhao				     "snps,dwmac";
79140ae6729SXianwei Zhao			reg = <0x0 0xfdc00000 0x0 0x10000>,
79240ae6729SXianwei Zhao			      <0x0 0xfe024000 0x0 0x8>;
79340ae6729SXianwei Zhao
79440ae6729SXianwei Zhao			interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>;
79540ae6729SXianwei Zhao			interrupt-names = "macirq";
79640ae6729SXianwei Zhao			power-domains = <&pwrc PWRC_S4_ETH_ID>;
79740ae6729SXianwei Zhao			clocks = <&clkc_periphs CLKID_ETH>,
79840ae6729SXianwei Zhao				 <&clkc_pll CLKID_FCLK_DIV2>,
79940ae6729SXianwei Zhao				 <&clkc_pll CLKID_MPLL2>;
80040ae6729SXianwei Zhao			clock-names = "stmmaceth", "clkin0", "clkin1";
80140ae6729SXianwei Zhao			rx-fifo-depth = <4096>;
80240ae6729SXianwei Zhao			tx-fifo-depth = <2048>;
80340ae6729SXianwei Zhao			status = "disabled";
80440ae6729SXianwei Zhao
80540ae6729SXianwei Zhao			mdio0: mdio {
80640ae6729SXianwei Zhao				#address-cells = <1>;
80740ae6729SXianwei Zhao				#size-cells = <0>;
80840ae6729SXianwei Zhao				compatible = "snps,dwmac-mdio";
80940ae6729SXianwei Zhao			};
81040ae6729SXianwei Zhao		};
8113ab9d54bSXianwei Zhao
8123ab9d54bSXianwei Zhao		sdio: mmc@fe088000 {
8133ab9d54bSXianwei Zhao			compatible = "amlogic,meson-axg-mmc";
8143ab9d54bSXianwei Zhao			reg = <0x0 0xfe088000 0x0 0x800>;
8153ab9d54bSXianwei Zhao			interrupts = <GIC_SPI 176 IRQ_TYPE_LEVEL_HIGH>;
8163ab9d54bSXianwei Zhao			clocks = <&clkc_periphs CLKID_SDEMMC_A>,
8173ab9d54bSXianwei Zhao				 <&xtal>,
8183ab9d54bSXianwei Zhao				 <&clkc_pll CLKID_FCLK_DIV2>;
8193ab9d54bSXianwei Zhao			clock-names = "core", "clkin0", "clkin1";
8203ab9d54bSXianwei Zhao			resets = <&reset RESET_SD_EMMC_A>;
8213ab9d54bSXianwei Zhao			cap-sdio-irq;
8223ab9d54bSXianwei Zhao			keep-power-in-suspend;
8233ab9d54bSXianwei Zhao			status = "disabled";
8243ab9d54bSXianwei Zhao		};
8253ab9d54bSXianwei Zhao
8263ab9d54bSXianwei Zhao		sd: mmc@fe08a000 {
8273ab9d54bSXianwei Zhao			compatible = "amlogic,meson-axg-mmc";
8283ab9d54bSXianwei Zhao			reg = <0x0 0xfe08a000 0x0 0x800>;
8293ab9d54bSXianwei Zhao			interrupts = <GIC_SPI 177 IRQ_TYPE_EDGE_RISING>;
8303ab9d54bSXianwei Zhao			clocks = <&clkc_periphs CLKID_SDEMMC_B>,
8313ab9d54bSXianwei Zhao				 <&clkc_periphs CLKID_SD_EMMC_B>,
8323ab9d54bSXianwei Zhao				 <&clkc_pll CLKID_FCLK_DIV2>;
8333ab9d54bSXianwei Zhao			clock-names = "core", "clkin0", "clkin1";
8343ab9d54bSXianwei Zhao			resets = <&reset RESET_SD_EMMC_B>;
8353ab9d54bSXianwei Zhao			status = "disabled";
8363ab9d54bSXianwei Zhao		};
8373ab9d54bSXianwei Zhao
8383ab9d54bSXianwei Zhao		emmc: mmc@fe08c000 {
8393ab9d54bSXianwei Zhao			compatible = "amlogic,meson-axg-mmc";
8403ab9d54bSXianwei Zhao			reg = <0x0 0xfe08c000 0x0 0x800>;
8413ab9d54bSXianwei Zhao			interrupts = <GIC_SPI 178 IRQ_TYPE_EDGE_RISING>;
8423ab9d54bSXianwei Zhao			clocks = <&clkc_periphs CLKID_NAND>,
8433ab9d54bSXianwei Zhao				 <&xtal>,
8443ab9d54bSXianwei Zhao				 <&clkc_pll CLKID_FCLK_DIV2>;
8453ab9d54bSXianwei Zhao			clock-names = "core", "clkin0", "clkin1";
8463ab9d54bSXianwei Zhao			resets = <&reset RESET_NAND_EMMC>;
8473ab9d54bSXianwei Zhao			no-sdio;
8483ab9d54bSXianwei Zhao			no-sd;
8493ab9d54bSXianwei Zhao			status = "disabled";
8503ab9d54bSXianwei Zhao		};
851ac4dfd0dSXianwei Zhao	};
852ac4dfd0dSXianwei Zhao};
853