162306a36Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
262306a36Sopenharmony_ci// Copyright 2021 Jonathan Neuschäfer
362306a36Sopenharmony_ci
462306a36Sopenharmony_ci#include <dt-bindings/interrupt-controller/irq.h>
562306a36Sopenharmony_ci
662306a36Sopenharmony_ci/ {
762306a36Sopenharmony_ci	compatible = "nuvoton,wpcm450";
862306a36Sopenharmony_ci	#address-cells = <1>;
962306a36Sopenharmony_ci	#size-cells = <1>;
1062306a36Sopenharmony_ci
1162306a36Sopenharmony_ci	aliases {
1262306a36Sopenharmony_ci		gpio0 = &gpio0;
1362306a36Sopenharmony_ci		gpio1 = &gpio1;
1462306a36Sopenharmony_ci		gpio2 = &gpio2;
1562306a36Sopenharmony_ci		gpio3 = &gpio3;
1662306a36Sopenharmony_ci		gpio4 = &gpio4;
1762306a36Sopenharmony_ci		gpio5 = &gpio5;
1862306a36Sopenharmony_ci		gpio6 = &gpio6;
1962306a36Sopenharmony_ci		gpio7 = &gpio7;
2062306a36Sopenharmony_ci	};
2162306a36Sopenharmony_ci
2262306a36Sopenharmony_ci	cpus {
2362306a36Sopenharmony_ci		#address-cells = <1>;
2462306a36Sopenharmony_ci		#size-cells = <0>;
2562306a36Sopenharmony_ci
2662306a36Sopenharmony_ci		cpu@0 {
2762306a36Sopenharmony_ci			compatible = "arm,arm926ej-s";
2862306a36Sopenharmony_ci			device_type = "cpu";
2962306a36Sopenharmony_ci			reg = <0>;
3062306a36Sopenharmony_ci		};
3162306a36Sopenharmony_ci	};
3262306a36Sopenharmony_ci
3362306a36Sopenharmony_ci	clk24m: clock-24mhz {
3462306a36Sopenharmony_ci		/* 24 MHz dummy clock */
3562306a36Sopenharmony_ci		compatible = "fixed-clock";
3662306a36Sopenharmony_ci		clock-frequency = <24000000>;
3762306a36Sopenharmony_ci		#clock-cells = <0>;
3862306a36Sopenharmony_ci	};
3962306a36Sopenharmony_ci
4062306a36Sopenharmony_ci	refclk: clock-48mhz {
4162306a36Sopenharmony_ci		/* 48 MHz reference oscillator */
4262306a36Sopenharmony_ci		compatible = "fixed-clock";
4362306a36Sopenharmony_ci		clock-output-names = "ref";
4462306a36Sopenharmony_ci		clock-frequency = <48000000>;
4562306a36Sopenharmony_ci		#clock-cells = <0>;
4662306a36Sopenharmony_ci	};
4762306a36Sopenharmony_ci
4862306a36Sopenharmony_ci	soc {
4962306a36Sopenharmony_ci		compatible = "simple-bus";
5062306a36Sopenharmony_ci		#address-cells = <1>;
5162306a36Sopenharmony_ci		#size-cells = <1>;
5262306a36Sopenharmony_ci		interrupt-parent = <&aic>;
5362306a36Sopenharmony_ci		ranges;
5462306a36Sopenharmony_ci
5562306a36Sopenharmony_ci		gcr: syscon@b0000000 {
5662306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-gcr", "syscon", "simple-mfd";
5762306a36Sopenharmony_ci			reg = <0xb0000000 0x200>;
5862306a36Sopenharmony_ci		};
5962306a36Sopenharmony_ci
6062306a36Sopenharmony_ci		clk: clock-controller@b0000200 {
6162306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-clk";
6262306a36Sopenharmony_ci			reg = <0xb0000200 0x100>;
6362306a36Sopenharmony_ci			clocks = <&refclk>;
6462306a36Sopenharmony_ci			clock-names = "ref";
6562306a36Sopenharmony_ci			#clock-cells = <1>;
6662306a36Sopenharmony_ci			#reset-cells = <1>;
6762306a36Sopenharmony_ci		};
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci		serial0: serial@b8000000 {
7062306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-uart";
7162306a36Sopenharmony_ci			reg = <0xb8000000 0x20>;
7262306a36Sopenharmony_ci			reg-shift = <2>;
7362306a36Sopenharmony_ci			interrupts = <7 IRQ_TYPE_LEVEL_HIGH>;
7462306a36Sopenharmony_ci			clocks = <&clk24m>;
7562306a36Sopenharmony_ci			pinctrl-names = "default";
7662306a36Sopenharmony_ci			pinctrl-0 = <&bsp_pins>;
7762306a36Sopenharmony_ci			status = "disabled";
7862306a36Sopenharmony_ci		};
7962306a36Sopenharmony_ci
8062306a36Sopenharmony_ci		serial1: serial@b8000100 {
8162306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-uart";
8262306a36Sopenharmony_ci			reg = <0xb8000100 0x20>;
8362306a36Sopenharmony_ci			reg-shift = <2>;
8462306a36Sopenharmony_ci			interrupts = <8 IRQ_TYPE_LEVEL_HIGH>;
8562306a36Sopenharmony_ci			clocks = <&clk24m>;
8662306a36Sopenharmony_ci			status = "disabled";
8762306a36Sopenharmony_ci		};
8862306a36Sopenharmony_ci
8962306a36Sopenharmony_ci		timer0: timer@b8001000 {
9062306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-timer";
9162306a36Sopenharmony_ci			interrupts = <12 IRQ_TYPE_LEVEL_HIGH>;
9262306a36Sopenharmony_ci			reg = <0xb8001000 0x1c>;
9362306a36Sopenharmony_ci			clocks = <&clk24m>;
9462306a36Sopenharmony_ci		};
9562306a36Sopenharmony_ci
9662306a36Sopenharmony_ci		watchdog0: watchdog@b800101c {
9762306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-wdt";
9862306a36Sopenharmony_ci			interrupts = <1 IRQ_TYPE_LEVEL_HIGH>;
9962306a36Sopenharmony_ci			reg = <0xb800101c 0x4>;
10062306a36Sopenharmony_ci			clocks = <&clk24m>;
10162306a36Sopenharmony_ci		};
10262306a36Sopenharmony_ci
10362306a36Sopenharmony_ci		aic: interrupt-controller@b8002000 {
10462306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-aic";
10562306a36Sopenharmony_ci			reg = <0xb8002000 0x1000>;
10662306a36Sopenharmony_ci			interrupt-controller;
10762306a36Sopenharmony_ci			#interrupt-cells = <2>;
10862306a36Sopenharmony_ci		};
10962306a36Sopenharmony_ci
11062306a36Sopenharmony_ci		pinctrl: pinctrl@b8003000 {
11162306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-pinctrl";
11262306a36Sopenharmony_ci			reg = <0xb8003000 0x1000>;
11362306a36Sopenharmony_ci			#address-cells = <1>;
11462306a36Sopenharmony_ci			#size-cells = <0>;
11562306a36Sopenharmony_ci
11662306a36Sopenharmony_ci			gpio0: gpio@0 {
11762306a36Sopenharmony_ci				reg = <0>;
11862306a36Sopenharmony_ci				gpio-controller;
11962306a36Sopenharmony_ci				#gpio-cells = <2>;
12062306a36Sopenharmony_ci				interrupts = <2 IRQ_TYPE_LEVEL_HIGH>,
12162306a36Sopenharmony_ci					     <3 IRQ_TYPE_LEVEL_HIGH>,
12262306a36Sopenharmony_ci					     <4 IRQ_TYPE_LEVEL_HIGH>;
12362306a36Sopenharmony_ci				#interrupt-cells = <2>;
12462306a36Sopenharmony_ci				interrupt-controller;
12562306a36Sopenharmony_ci			};
12662306a36Sopenharmony_ci
12762306a36Sopenharmony_ci			gpio1: gpio@1 {
12862306a36Sopenharmony_ci				reg = <1>;
12962306a36Sopenharmony_ci				gpio-controller;
13062306a36Sopenharmony_ci				#gpio-cells = <2>;
13162306a36Sopenharmony_ci				interrupts = <5 IRQ_TYPE_LEVEL_HIGH>;
13262306a36Sopenharmony_ci				#interrupt-cells = <2>;
13362306a36Sopenharmony_ci				interrupt-controller;
13462306a36Sopenharmony_ci			};
13562306a36Sopenharmony_ci
13662306a36Sopenharmony_ci			gpio2: gpio@2 {
13762306a36Sopenharmony_ci				reg = <2>;
13862306a36Sopenharmony_ci				gpio-controller;
13962306a36Sopenharmony_ci				#gpio-cells = <2>;
14062306a36Sopenharmony_ci			};
14162306a36Sopenharmony_ci
14262306a36Sopenharmony_ci			gpio3: gpio@3 {
14362306a36Sopenharmony_ci				reg = <3>;
14462306a36Sopenharmony_ci				gpio-controller;
14562306a36Sopenharmony_ci				#gpio-cells = <2>;
14662306a36Sopenharmony_ci			};
14762306a36Sopenharmony_ci
14862306a36Sopenharmony_ci			gpio4: gpio@4 {
14962306a36Sopenharmony_ci				reg = <4>;
15062306a36Sopenharmony_ci				gpio-controller;
15162306a36Sopenharmony_ci				#gpio-cells = <2>;
15262306a36Sopenharmony_ci			};
15362306a36Sopenharmony_ci
15462306a36Sopenharmony_ci			gpio5: gpio@5 {
15562306a36Sopenharmony_ci				reg = <5>;
15662306a36Sopenharmony_ci				gpio-controller;
15762306a36Sopenharmony_ci				#gpio-cells = <2>;
15862306a36Sopenharmony_ci			};
15962306a36Sopenharmony_ci
16062306a36Sopenharmony_ci			gpio6: gpio@6 {
16162306a36Sopenharmony_ci				reg = <6>;
16262306a36Sopenharmony_ci				gpio-controller;
16362306a36Sopenharmony_ci				#gpio-cells = <2>;
16462306a36Sopenharmony_ci			};
16562306a36Sopenharmony_ci
16662306a36Sopenharmony_ci			gpio7: gpio@7 {
16762306a36Sopenharmony_ci				reg = <7>;
16862306a36Sopenharmony_ci				gpio-controller;
16962306a36Sopenharmony_ci				#gpio-cells = <2>;
17062306a36Sopenharmony_ci			};
17162306a36Sopenharmony_ci
17262306a36Sopenharmony_ci			smb3_pins: mux-smb3 {
17362306a36Sopenharmony_ci				groups = "smb3";
17462306a36Sopenharmony_ci				function = "smb3";
17562306a36Sopenharmony_ci			};
17662306a36Sopenharmony_ci
17762306a36Sopenharmony_ci			smb4_pins: mux-smb4 {
17862306a36Sopenharmony_ci				groups = "smb4";
17962306a36Sopenharmony_ci				function = "smb4";
18062306a36Sopenharmony_ci			};
18162306a36Sopenharmony_ci
18262306a36Sopenharmony_ci			smb5_pins: mux-smb5 {
18362306a36Sopenharmony_ci				groups = "smb5";
18462306a36Sopenharmony_ci				function = "smb5";
18562306a36Sopenharmony_ci			};
18662306a36Sopenharmony_ci
18762306a36Sopenharmony_ci			scs1_pins: mux-scs1 {
18862306a36Sopenharmony_ci				groups = "scs1";
18962306a36Sopenharmony_ci				function = "scs1";
19062306a36Sopenharmony_ci			};
19162306a36Sopenharmony_ci
19262306a36Sopenharmony_ci			scs2_pins: mux-scs2 {
19362306a36Sopenharmony_ci				groups = "scs2";
19462306a36Sopenharmony_ci				function = "scs2";
19562306a36Sopenharmony_ci			};
19662306a36Sopenharmony_ci
19762306a36Sopenharmony_ci			scs3_pins: mux-scs3 {
19862306a36Sopenharmony_ci				groups = "scs3";
19962306a36Sopenharmony_ci				function = "scs3";
20062306a36Sopenharmony_ci			};
20162306a36Sopenharmony_ci
20262306a36Sopenharmony_ci			smb0_pins: mux-smb0 {
20362306a36Sopenharmony_ci				groups = "smb0";
20462306a36Sopenharmony_ci				function = "smb0";
20562306a36Sopenharmony_ci			};
20662306a36Sopenharmony_ci
20762306a36Sopenharmony_ci			smb1_pins: mux-smb1 {
20862306a36Sopenharmony_ci				groups = "smb1";
20962306a36Sopenharmony_ci				function = "smb1";
21062306a36Sopenharmony_ci			};
21162306a36Sopenharmony_ci
21262306a36Sopenharmony_ci			smb2_pins: mux-smb2 {
21362306a36Sopenharmony_ci				groups = "smb2";
21462306a36Sopenharmony_ci				function = "smb2";
21562306a36Sopenharmony_ci			};
21662306a36Sopenharmony_ci
21762306a36Sopenharmony_ci			bsp_pins: mux-bsp {
21862306a36Sopenharmony_ci				groups = "bsp";
21962306a36Sopenharmony_ci				function = "bsp";
22062306a36Sopenharmony_ci			};
22162306a36Sopenharmony_ci
22262306a36Sopenharmony_ci			hsp1_pins: mux-hsp1 {
22362306a36Sopenharmony_ci				groups = "hsp1";
22462306a36Sopenharmony_ci				function = "hsp1";
22562306a36Sopenharmony_ci			};
22662306a36Sopenharmony_ci
22762306a36Sopenharmony_ci			hsp2_pins: mux-hsp2 {
22862306a36Sopenharmony_ci				groups = "hsp2";
22962306a36Sopenharmony_ci				function = "hsp2";
23062306a36Sopenharmony_ci			};
23162306a36Sopenharmony_ci
23262306a36Sopenharmony_ci			r1err_pins: mux-r1err {
23362306a36Sopenharmony_ci				groups = "r1err";
23462306a36Sopenharmony_ci				function = "r1err";
23562306a36Sopenharmony_ci			};
23662306a36Sopenharmony_ci
23762306a36Sopenharmony_ci			r1md_pins: mux-r1md {
23862306a36Sopenharmony_ci				groups = "r1md";
23962306a36Sopenharmony_ci				function = "r1md";
24062306a36Sopenharmony_ci			};
24162306a36Sopenharmony_ci
24262306a36Sopenharmony_ci			rmii2_pins: mux-rmii2 {
24362306a36Sopenharmony_ci				groups = "rmii2";
24462306a36Sopenharmony_ci				function = "rmii2";
24562306a36Sopenharmony_ci			};
24662306a36Sopenharmony_ci
24762306a36Sopenharmony_ci			r2err_pins: mux-r2err {
24862306a36Sopenharmony_ci				groups = "r2err";
24962306a36Sopenharmony_ci				function = "r2err";
25062306a36Sopenharmony_ci			};
25162306a36Sopenharmony_ci
25262306a36Sopenharmony_ci			r2md_pins: mux-r2md {
25362306a36Sopenharmony_ci				groups = "r2md";
25462306a36Sopenharmony_ci				function = "r2md";
25562306a36Sopenharmony_ci			};
25662306a36Sopenharmony_ci
25762306a36Sopenharmony_ci			kbcc_pins: mux-kbcc {
25862306a36Sopenharmony_ci				groups = "kbcc";
25962306a36Sopenharmony_ci				function = "kbcc";
26062306a36Sopenharmony_ci			};
26162306a36Sopenharmony_ci
26262306a36Sopenharmony_ci			dvo0_pins: mux-dvo0 {
26362306a36Sopenharmony_ci				groups = "dvo";
26462306a36Sopenharmony_ci				function = "dvo0";
26562306a36Sopenharmony_ci			};
26662306a36Sopenharmony_ci
26762306a36Sopenharmony_ci			dvo3_pins: mux-dvo3 {
26862306a36Sopenharmony_ci				groups = "dvo";
26962306a36Sopenharmony_ci				function = "dvo3";
27062306a36Sopenharmony_ci			};
27162306a36Sopenharmony_ci
27262306a36Sopenharmony_ci			clko_pins: mux-clko {
27362306a36Sopenharmony_ci				groups = "clko";
27462306a36Sopenharmony_ci				function = "clko";
27562306a36Sopenharmony_ci			};
27662306a36Sopenharmony_ci
27762306a36Sopenharmony_ci			smi_pins: mux-smi {
27862306a36Sopenharmony_ci				groups = "smi";
27962306a36Sopenharmony_ci				function = "smi";
28062306a36Sopenharmony_ci			};
28162306a36Sopenharmony_ci
28262306a36Sopenharmony_ci			uinc_pins: mux-uinc {
28362306a36Sopenharmony_ci				groups = "uinc";
28462306a36Sopenharmony_ci				function = "uinc";
28562306a36Sopenharmony_ci			};
28662306a36Sopenharmony_ci
28762306a36Sopenharmony_ci			gspi_pins: mux-gspi {
28862306a36Sopenharmony_ci				groups = "gspi";
28962306a36Sopenharmony_ci				function = "gspi";
29062306a36Sopenharmony_ci			};
29162306a36Sopenharmony_ci
29262306a36Sopenharmony_ci			mben_pins: mux-mben {
29362306a36Sopenharmony_ci				groups = "mben";
29462306a36Sopenharmony_ci				function = "mben";
29562306a36Sopenharmony_ci			};
29662306a36Sopenharmony_ci
29762306a36Sopenharmony_ci			xcs2_pins: mux-xcs2 {
29862306a36Sopenharmony_ci				groups = "xcs2";
29962306a36Sopenharmony_ci				function = "xcs2";
30062306a36Sopenharmony_ci			};
30162306a36Sopenharmony_ci
30262306a36Sopenharmony_ci			xcs1_pins: mux-xcs1 {
30362306a36Sopenharmony_ci				groups = "xcs1";
30462306a36Sopenharmony_ci				function = "xcs1";
30562306a36Sopenharmony_ci			};
30662306a36Sopenharmony_ci
30762306a36Sopenharmony_ci			sdio_pins: mux-sdio {
30862306a36Sopenharmony_ci				groups = "sdio";
30962306a36Sopenharmony_ci				function = "sdio";
31062306a36Sopenharmony_ci			};
31162306a36Sopenharmony_ci
31262306a36Sopenharmony_ci			sspi_pins: mux-sspi {
31362306a36Sopenharmony_ci				groups = "sspi";
31462306a36Sopenharmony_ci				function = "sspi";
31562306a36Sopenharmony_ci			};
31662306a36Sopenharmony_ci
31762306a36Sopenharmony_ci			fi0_pins: mux-fi0 {
31862306a36Sopenharmony_ci				groups = "fi0";
31962306a36Sopenharmony_ci				function = "fi0";
32062306a36Sopenharmony_ci			};
32162306a36Sopenharmony_ci
32262306a36Sopenharmony_ci			fi1_pins: mux-fi1 {
32362306a36Sopenharmony_ci				groups = "fi1";
32462306a36Sopenharmony_ci				function = "fi1";
32562306a36Sopenharmony_ci			};
32662306a36Sopenharmony_ci
32762306a36Sopenharmony_ci			fi2_pins: mux-fi2 {
32862306a36Sopenharmony_ci				groups = "fi2";
32962306a36Sopenharmony_ci				function = "fi2";
33062306a36Sopenharmony_ci			};
33162306a36Sopenharmony_ci
33262306a36Sopenharmony_ci			fi3_pins: mux-fi3 {
33362306a36Sopenharmony_ci				groups = "fi3";
33462306a36Sopenharmony_ci				function = "fi3";
33562306a36Sopenharmony_ci			};
33662306a36Sopenharmony_ci
33762306a36Sopenharmony_ci			fi4_pins: mux-fi4 {
33862306a36Sopenharmony_ci				groups = "fi4";
33962306a36Sopenharmony_ci				function = "fi4";
34062306a36Sopenharmony_ci			};
34162306a36Sopenharmony_ci
34262306a36Sopenharmony_ci			fi5_pins: mux-fi5 {
34362306a36Sopenharmony_ci				groups = "fi5";
34462306a36Sopenharmony_ci				function = "fi5";
34562306a36Sopenharmony_ci			};
34662306a36Sopenharmony_ci
34762306a36Sopenharmony_ci			fi6_pins: mux-fi6 {
34862306a36Sopenharmony_ci				groups = "fi6";
34962306a36Sopenharmony_ci				function = "fi6";
35062306a36Sopenharmony_ci			};
35162306a36Sopenharmony_ci
35262306a36Sopenharmony_ci			fi7_pins: mux-fi7 {
35362306a36Sopenharmony_ci				groups = "fi7";
35462306a36Sopenharmony_ci				function = "fi7";
35562306a36Sopenharmony_ci			};
35662306a36Sopenharmony_ci
35762306a36Sopenharmony_ci			fi8_pins: mux-fi8 {
35862306a36Sopenharmony_ci				groups = "fi8";
35962306a36Sopenharmony_ci				function = "fi8";
36062306a36Sopenharmony_ci			};
36162306a36Sopenharmony_ci
36262306a36Sopenharmony_ci			fi9_pins: mux-fi9 {
36362306a36Sopenharmony_ci				groups = "fi9";
36462306a36Sopenharmony_ci				function = "fi9";
36562306a36Sopenharmony_ci			};
36662306a36Sopenharmony_ci
36762306a36Sopenharmony_ci			fi10_pins: mux-fi10 {
36862306a36Sopenharmony_ci				groups = "fi10";
36962306a36Sopenharmony_ci				function = "fi10";
37062306a36Sopenharmony_ci			};
37162306a36Sopenharmony_ci
37262306a36Sopenharmony_ci			fi11_pins: mux-fi11 {
37362306a36Sopenharmony_ci				groups = "fi11";
37462306a36Sopenharmony_ci				function = "fi11";
37562306a36Sopenharmony_ci			};
37662306a36Sopenharmony_ci
37762306a36Sopenharmony_ci			fi12_pins: mux-fi12 {
37862306a36Sopenharmony_ci				groups = "fi12";
37962306a36Sopenharmony_ci				function = "fi12";
38062306a36Sopenharmony_ci			};
38162306a36Sopenharmony_ci
38262306a36Sopenharmony_ci			fi13_pins: mux-fi13 {
38362306a36Sopenharmony_ci				groups = "fi13";
38462306a36Sopenharmony_ci				function = "fi13";
38562306a36Sopenharmony_ci			};
38662306a36Sopenharmony_ci
38762306a36Sopenharmony_ci			fi14_pins: mux-fi14 {
38862306a36Sopenharmony_ci				groups = "fi14";
38962306a36Sopenharmony_ci				function = "fi14";
39062306a36Sopenharmony_ci			};
39162306a36Sopenharmony_ci
39262306a36Sopenharmony_ci			fi15_pins: mux-fi15 {
39362306a36Sopenharmony_ci				groups = "fi15";
39462306a36Sopenharmony_ci				function = "fi15";
39562306a36Sopenharmony_ci			};
39662306a36Sopenharmony_ci
39762306a36Sopenharmony_ci			pwm0_pins: mux-pwm0 {
39862306a36Sopenharmony_ci				groups = "pwm0";
39962306a36Sopenharmony_ci				function = "pwm0";
40062306a36Sopenharmony_ci			};
40162306a36Sopenharmony_ci
40262306a36Sopenharmony_ci			pwm1_pins: mux-pwm1 {
40362306a36Sopenharmony_ci				groups = "pwm1";
40462306a36Sopenharmony_ci				function = "pwm1";
40562306a36Sopenharmony_ci			};
40662306a36Sopenharmony_ci
40762306a36Sopenharmony_ci			pwm2_pins: mux-pwm2 {
40862306a36Sopenharmony_ci				groups = "pwm2";
40962306a36Sopenharmony_ci				function = "pwm2";
41062306a36Sopenharmony_ci			};
41162306a36Sopenharmony_ci
41262306a36Sopenharmony_ci			pwm3_pins: mux-pwm3 {
41362306a36Sopenharmony_ci				groups = "pwm3";
41462306a36Sopenharmony_ci				function = "pwm3";
41562306a36Sopenharmony_ci			};
41662306a36Sopenharmony_ci
41762306a36Sopenharmony_ci			pwm4_pins: mux-pwm4 {
41862306a36Sopenharmony_ci				groups = "pwm4";
41962306a36Sopenharmony_ci				function = "pwm4";
42062306a36Sopenharmony_ci			};
42162306a36Sopenharmony_ci
42262306a36Sopenharmony_ci			pwm5_pins: mux-pwm5 {
42362306a36Sopenharmony_ci				groups = "pwm5";
42462306a36Sopenharmony_ci				function = "pwm5";
42562306a36Sopenharmony_ci			};
42662306a36Sopenharmony_ci
42762306a36Sopenharmony_ci			pwm6_pins: mux-pwm6 {
42862306a36Sopenharmony_ci				groups = "pwm6";
42962306a36Sopenharmony_ci				function = "pwm6";
43062306a36Sopenharmony_ci			};
43162306a36Sopenharmony_ci
43262306a36Sopenharmony_ci			pwm7_pins: mux-pwm7 {
43362306a36Sopenharmony_ci				groups = "pwm7";
43462306a36Sopenharmony_ci				function = "pwm7";
43562306a36Sopenharmony_ci			};
43662306a36Sopenharmony_ci
43762306a36Sopenharmony_ci			hg0_pins: mux-hg0 {
43862306a36Sopenharmony_ci				groups = "hg0";
43962306a36Sopenharmony_ci				function = "hg0";
44062306a36Sopenharmony_ci			};
44162306a36Sopenharmony_ci
44262306a36Sopenharmony_ci			hg1_pins: mux-hg1 {
44362306a36Sopenharmony_ci				groups = "hg1";
44462306a36Sopenharmony_ci				function = "hg1";
44562306a36Sopenharmony_ci			};
44662306a36Sopenharmony_ci
44762306a36Sopenharmony_ci			hg2_pins: mux-hg2 {
44862306a36Sopenharmony_ci				groups = "hg2";
44962306a36Sopenharmony_ci				function = "hg2";
45062306a36Sopenharmony_ci			};
45162306a36Sopenharmony_ci
45262306a36Sopenharmony_ci			hg3_pins: mux-hg3 {
45362306a36Sopenharmony_ci				groups = "hg3";
45462306a36Sopenharmony_ci				function = "hg3";
45562306a36Sopenharmony_ci			};
45662306a36Sopenharmony_ci
45762306a36Sopenharmony_ci			hg4_pins: mux-hg4 {
45862306a36Sopenharmony_ci				groups = "hg4";
45962306a36Sopenharmony_ci				function = "hg4";
46062306a36Sopenharmony_ci			};
46162306a36Sopenharmony_ci
46262306a36Sopenharmony_ci			hg5_pins: mux-hg5 {
46362306a36Sopenharmony_ci				groups = "hg5";
46462306a36Sopenharmony_ci				function = "hg5";
46562306a36Sopenharmony_ci			};
46662306a36Sopenharmony_ci
46762306a36Sopenharmony_ci			hg6_pins: mux-hg6 {
46862306a36Sopenharmony_ci				groups = "hg6";
46962306a36Sopenharmony_ci				function = "hg6";
47062306a36Sopenharmony_ci			};
47162306a36Sopenharmony_ci
47262306a36Sopenharmony_ci			hg7_pins: mux-hg7 {
47362306a36Sopenharmony_ci				groups = "hg7";
47462306a36Sopenharmony_ci				function = "hg7";
47562306a36Sopenharmony_ci			};
47662306a36Sopenharmony_ci		};
47762306a36Sopenharmony_ci
47862306a36Sopenharmony_ci		fiu: spi-controller@c8000000 {
47962306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-fiu";
48062306a36Sopenharmony_ci			#address-cells = <1>;
48162306a36Sopenharmony_ci			#size-cells = <0>;
48262306a36Sopenharmony_ci			reg = <0xc8000000 0x1000>, <0xc0000000 0x4000000>;
48362306a36Sopenharmony_ci			reg-names = "control", "memory";
48462306a36Sopenharmony_ci			clocks = <&clk 0>;
48562306a36Sopenharmony_ci			nuvoton,shm = <&shm>;
48662306a36Sopenharmony_ci			status = "disabled";
48762306a36Sopenharmony_ci		};
48862306a36Sopenharmony_ci
48962306a36Sopenharmony_ci		shm: syscon@c8001000 {
49062306a36Sopenharmony_ci			compatible = "nuvoton,wpcm450-shm", "syscon";
49162306a36Sopenharmony_ci			reg = <0xc8001000 0x1000>;
49262306a36Sopenharmony_ci			reg-io-width = <1>;
49362306a36Sopenharmony_ci		};
49462306a36Sopenharmony_ci	};
49562306a36Sopenharmony_ci};
496