18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0+ OR MIT
28c2ecf20Sopenharmony_ci//
38c2ecf20Sopenharmony_ci// Device Tree Source for UniPhier LD11 SoC
48c2ecf20Sopenharmony_ci//
58c2ecf20Sopenharmony_ci// Copyright (C) 2016 Socionext Inc.
68c2ecf20Sopenharmony_ci//   Author: Masahiro Yamada <yamada.masahiro@socionext.com>
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
98c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/uniphier-gpio.h>
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci/ {
128c2ecf20Sopenharmony_ci	compatible = "socionext,uniphier-ld11";
138c2ecf20Sopenharmony_ci	#address-cells = <2>;
148c2ecf20Sopenharmony_ci	#size-cells = <2>;
158c2ecf20Sopenharmony_ci	interrupt-parent = <&gic>;
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci	cpus {
188c2ecf20Sopenharmony_ci		#address-cells = <2>;
198c2ecf20Sopenharmony_ci		#size-cells = <0>;
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci		cpu-map {
228c2ecf20Sopenharmony_ci			cluster0 {
238c2ecf20Sopenharmony_ci				core0 {
248c2ecf20Sopenharmony_ci					cpu = <&cpu0>;
258c2ecf20Sopenharmony_ci				};
268c2ecf20Sopenharmony_ci				core1 {
278c2ecf20Sopenharmony_ci					cpu = <&cpu1>;
288c2ecf20Sopenharmony_ci				};
298c2ecf20Sopenharmony_ci			};
308c2ecf20Sopenharmony_ci		};
318c2ecf20Sopenharmony_ci
328c2ecf20Sopenharmony_ci		cpu0: cpu@0 {
338c2ecf20Sopenharmony_ci			device_type = "cpu";
348c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
358c2ecf20Sopenharmony_ci			reg = <0 0x000>;
368c2ecf20Sopenharmony_ci			clocks = <&sys_clk 33>;
378c2ecf20Sopenharmony_ci			enable-method = "psci";
388c2ecf20Sopenharmony_ci			operating-points-v2 = <&cluster0_opp>;
398c2ecf20Sopenharmony_ci		};
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci		cpu1: cpu@1 {
428c2ecf20Sopenharmony_ci			device_type = "cpu";
438c2ecf20Sopenharmony_ci			compatible = "arm,cortex-a53";
448c2ecf20Sopenharmony_ci			reg = <0 0x001>;
458c2ecf20Sopenharmony_ci			clocks = <&sys_clk 33>;
468c2ecf20Sopenharmony_ci			enable-method = "psci";
478c2ecf20Sopenharmony_ci			operating-points-v2 = <&cluster0_opp>;
488c2ecf20Sopenharmony_ci		};
498c2ecf20Sopenharmony_ci	};
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci	cluster0_opp: opp-table {
528c2ecf20Sopenharmony_ci		compatible = "operating-points-v2";
538c2ecf20Sopenharmony_ci		opp-shared;
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ci		opp-245000000 {
568c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <245000000>;
578c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
588c2ecf20Sopenharmony_ci		};
598c2ecf20Sopenharmony_ci		opp-250000000 {
608c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <250000000>;
618c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
628c2ecf20Sopenharmony_ci		};
638c2ecf20Sopenharmony_ci		opp-490000000 {
648c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <490000000>;
658c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
668c2ecf20Sopenharmony_ci		};
678c2ecf20Sopenharmony_ci		opp-500000000 {
688c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <500000000>;
698c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
708c2ecf20Sopenharmony_ci		};
718c2ecf20Sopenharmony_ci		opp-653334000 {
728c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <653334000>;
738c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
748c2ecf20Sopenharmony_ci		};
758c2ecf20Sopenharmony_ci		opp-666667000 {
768c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <666667000>;
778c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
788c2ecf20Sopenharmony_ci		};
798c2ecf20Sopenharmony_ci		opp-980000000 {
808c2ecf20Sopenharmony_ci			opp-hz = /bits/ 64 <980000000>;
818c2ecf20Sopenharmony_ci			clock-latency-ns = <300>;
828c2ecf20Sopenharmony_ci		};
838c2ecf20Sopenharmony_ci	};
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ci	psci {
868c2ecf20Sopenharmony_ci		compatible = "arm,psci-1.0";
878c2ecf20Sopenharmony_ci		method = "smc";
888c2ecf20Sopenharmony_ci	};
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_ci	clocks {
918c2ecf20Sopenharmony_ci		refclk: ref {
928c2ecf20Sopenharmony_ci			compatible = "fixed-clock";
938c2ecf20Sopenharmony_ci			#clock-cells = <0>;
948c2ecf20Sopenharmony_ci			clock-frequency = <25000000>;
958c2ecf20Sopenharmony_ci		};
968c2ecf20Sopenharmony_ci	};
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci	emmc_pwrseq: emmc-pwrseq {
998c2ecf20Sopenharmony_ci		compatible = "mmc-pwrseq-emmc";
1008c2ecf20Sopenharmony_ci		reset-gpios = <&gpio UNIPHIER_GPIO_PORT(3, 2) GPIO_ACTIVE_LOW>;
1018c2ecf20Sopenharmony_ci	};
1028c2ecf20Sopenharmony_ci
1038c2ecf20Sopenharmony_ci	timer {
1048c2ecf20Sopenharmony_ci		compatible = "arm,armv8-timer";
1058c2ecf20Sopenharmony_ci		interrupts = <1 13 4>,
1068c2ecf20Sopenharmony_ci			     <1 14 4>,
1078c2ecf20Sopenharmony_ci			     <1 11 4>,
1088c2ecf20Sopenharmony_ci			     <1 10 4>;
1098c2ecf20Sopenharmony_ci	};
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ci	reserved-memory {
1128c2ecf20Sopenharmony_ci		#address-cells = <2>;
1138c2ecf20Sopenharmony_ci		#size-cells = <2>;
1148c2ecf20Sopenharmony_ci		ranges;
1158c2ecf20Sopenharmony_ci
1168c2ecf20Sopenharmony_ci		secure-memory@81000000 {
1178c2ecf20Sopenharmony_ci			reg = <0x0 0x81000000 0x0 0x01000000>;
1188c2ecf20Sopenharmony_ci			no-map;
1198c2ecf20Sopenharmony_ci		};
1208c2ecf20Sopenharmony_ci	};
1218c2ecf20Sopenharmony_ci
1228c2ecf20Sopenharmony_ci	soc@0 {
1238c2ecf20Sopenharmony_ci		compatible = "simple-bus";
1248c2ecf20Sopenharmony_ci		#address-cells = <1>;
1258c2ecf20Sopenharmony_ci		#size-cells = <1>;
1268c2ecf20Sopenharmony_ci		ranges = <0 0 0 0xffffffff>;
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ci		spi0: spi@54006000 {
1298c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-scssi";
1308c2ecf20Sopenharmony_ci			status = "disabled";
1318c2ecf20Sopenharmony_ci			reg = <0x54006000 0x100>;
1328c2ecf20Sopenharmony_ci			#address-cells = <1>;
1338c2ecf20Sopenharmony_ci			#size-cells = <0>;
1348c2ecf20Sopenharmony_ci			interrupts = <0 39 4>;
1358c2ecf20Sopenharmony_ci			pinctrl-names = "default";
1368c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_spi0>;
1378c2ecf20Sopenharmony_ci			clocks = <&peri_clk 11>;
1388c2ecf20Sopenharmony_ci			resets = <&peri_rst 11>;
1398c2ecf20Sopenharmony_ci		};
1408c2ecf20Sopenharmony_ci
1418c2ecf20Sopenharmony_ci		spi1: spi@54006100 {
1428c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-scssi";
1438c2ecf20Sopenharmony_ci			status = "disabled";
1448c2ecf20Sopenharmony_ci			reg = <0x54006100 0x100>;
1458c2ecf20Sopenharmony_ci			#address-cells = <1>;
1468c2ecf20Sopenharmony_ci			#size-cells = <0>;
1478c2ecf20Sopenharmony_ci			interrupts = <0 216 4>;
1488c2ecf20Sopenharmony_ci			pinctrl-names = "default";
1498c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_spi1>;
1508c2ecf20Sopenharmony_ci			clocks = <&peri_clk 12>;
1518c2ecf20Sopenharmony_ci			resets = <&peri_rst 12>;
1528c2ecf20Sopenharmony_ci		};
1538c2ecf20Sopenharmony_ci
1548c2ecf20Sopenharmony_ci		serial0: serial@54006800 {
1558c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-uart";
1568c2ecf20Sopenharmony_ci			status = "disabled";
1578c2ecf20Sopenharmony_ci			reg = <0x54006800 0x40>;
1588c2ecf20Sopenharmony_ci			interrupts = <0 33 4>;
1598c2ecf20Sopenharmony_ci			pinctrl-names = "default";
1608c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_uart0>;
1618c2ecf20Sopenharmony_ci			clocks = <&peri_clk 0>;
1628c2ecf20Sopenharmony_ci			resets = <&peri_rst 0>;
1638c2ecf20Sopenharmony_ci		};
1648c2ecf20Sopenharmony_ci
1658c2ecf20Sopenharmony_ci		serial1: serial@54006900 {
1668c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-uart";
1678c2ecf20Sopenharmony_ci			status = "disabled";
1688c2ecf20Sopenharmony_ci			reg = <0x54006900 0x40>;
1698c2ecf20Sopenharmony_ci			interrupts = <0 35 4>;
1708c2ecf20Sopenharmony_ci			pinctrl-names = "default";
1718c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_uart1>;
1728c2ecf20Sopenharmony_ci			clocks = <&peri_clk 1>;
1738c2ecf20Sopenharmony_ci			resets = <&peri_rst 1>;
1748c2ecf20Sopenharmony_ci		};
1758c2ecf20Sopenharmony_ci
1768c2ecf20Sopenharmony_ci		serial2: serial@54006a00 {
1778c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-uart";
1788c2ecf20Sopenharmony_ci			status = "disabled";
1798c2ecf20Sopenharmony_ci			reg = <0x54006a00 0x40>;
1808c2ecf20Sopenharmony_ci			interrupts = <0 37 4>;
1818c2ecf20Sopenharmony_ci			pinctrl-names = "default";
1828c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_uart2>;
1838c2ecf20Sopenharmony_ci			clocks = <&peri_clk 2>;
1848c2ecf20Sopenharmony_ci			resets = <&peri_rst 2>;
1858c2ecf20Sopenharmony_ci		};
1868c2ecf20Sopenharmony_ci
1878c2ecf20Sopenharmony_ci		serial3: serial@54006b00 {
1888c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-uart";
1898c2ecf20Sopenharmony_ci			status = "disabled";
1908c2ecf20Sopenharmony_ci			reg = <0x54006b00 0x40>;
1918c2ecf20Sopenharmony_ci			interrupts = <0 177 4>;
1928c2ecf20Sopenharmony_ci			pinctrl-names = "default";
1938c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_uart3>;
1948c2ecf20Sopenharmony_ci			clocks = <&peri_clk 3>;
1958c2ecf20Sopenharmony_ci			resets = <&peri_rst 3>;
1968c2ecf20Sopenharmony_ci		};
1978c2ecf20Sopenharmony_ci
1988c2ecf20Sopenharmony_ci		gpio: gpio@55000000 {
1998c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-gpio";
2008c2ecf20Sopenharmony_ci			reg = <0x55000000 0x200>;
2018c2ecf20Sopenharmony_ci			interrupt-parent = <&aidet>;
2028c2ecf20Sopenharmony_ci			interrupt-controller;
2038c2ecf20Sopenharmony_ci			#interrupt-cells = <2>;
2048c2ecf20Sopenharmony_ci			gpio-controller;
2058c2ecf20Sopenharmony_ci			#gpio-cells = <2>;
2068c2ecf20Sopenharmony_ci			gpio-ranges = <&pinctrl 0 0 0>,
2078c2ecf20Sopenharmony_ci				      <&pinctrl 43 0 0>,
2088c2ecf20Sopenharmony_ci				      <&pinctrl 51 0 0>,
2098c2ecf20Sopenharmony_ci				      <&pinctrl 96 0 0>,
2108c2ecf20Sopenharmony_ci				      <&pinctrl 160 0 0>,
2118c2ecf20Sopenharmony_ci				      <&pinctrl 184 0 0>;
2128c2ecf20Sopenharmony_ci			gpio-ranges-group-names = "gpio_range0",
2138c2ecf20Sopenharmony_ci						  "gpio_range1",
2148c2ecf20Sopenharmony_ci						  "gpio_range2",
2158c2ecf20Sopenharmony_ci						  "gpio_range3",
2168c2ecf20Sopenharmony_ci						  "gpio_range4",
2178c2ecf20Sopenharmony_ci						  "gpio_range5";
2188c2ecf20Sopenharmony_ci			ngpios = <200>;
2198c2ecf20Sopenharmony_ci			socionext,interrupt-ranges = <0 48 16>, <16 154 5>,
2208c2ecf20Sopenharmony_ci						     <21 217 3>;
2218c2ecf20Sopenharmony_ci		};
2228c2ecf20Sopenharmony_ci
2238c2ecf20Sopenharmony_ci		audio@56000000 {
2248c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-aio";
2258c2ecf20Sopenharmony_ci			reg = <0x56000000 0x80000>;
2268c2ecf20Sopenharmony_ci			interrupts = <0 144 4>;
2278c2ecf20Sopenharmony_ci			pinctrl-names = "default";
2288c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_aout1>,
2298c2ecf20Sopenharmony_ci				    <&pinctrl_aoutiec1>;
2308c2ecf20Sopenharmony_ci			clock-names = "aio";
2318c2ecf20Sopenharmony_ci			clocks = <&sys_clk 40>;
2328c2ecf20Sopenharmony_ci			reset-names = "aio";
2338c2ecf20Sopenharmony_ci			resets = <&sys_rst 40>;
2348c2ecf20Sopenharmony_ci			#sound-dai-cells = <1>;
2358c2ecf20Sopenharmony_ci			socionext,syscon = <&soc_glue>;
2368c2ecf20Sopenharmony_ci
2378c2ecf20Sopenharmony_ci			i2s_port0: port@0 {
2388c2ecf20Sopenharmony_ci				i2s_hdmi: endpoint {
2398c2ecf20Sopenharmony_ci				};
2408c2ecf20Sopenharmony_ci			};
2418c2ecf20Sopenharmony_ci
2428c2ecf20Sopenharmony_ci			i2s_port1: port@1 {
2438c2ecf20Sopenharmony_ci				i2s_pcmin2: endpoint {
2448c2ecf20Sopenharmony_ci				};
2458c2ecf20Sopenharmony_ci			};
2468c2ecf20Sopenharmony_ci
2478c2ecf20Sopenharmony_ci			i2s_port2: port@2 {
2488c2ecf20Sopenharmony_ci				i2s_line: endpoint {
2498c2ecf20Sopenharmony_ci					dai-format = "i2s";
2508c2ecf20Sopenharmony_ci					remote-endpoint = <&evea_line>;
2518c2ecf20Sopenharmony_ci				};
2528c2ecf20Sopenharmony_ci			};
2538c2ecf20Sopenharmony_ci
2548c2ecf20Sopenharmony_ci			i2s_port3: port@3 {
2558c2ecf20Sopenharmony_ci				i2s_hpcmout1: endpoint {
2568c2ecf20Sopenharmony_ci				};
2578c2ecf20Sopenharmony_ci			};
2588c2ecf20Sopenharmony_ci
2598c2ecf20Sopenharmony_ci			i2s_port4: port@4 {
2608c2ecf20Sopenharmony_ci				i2s_hp: endpoint {
2618c2ecf20Sopenharmony_ci					dai-format = "i2s";
2628c2ecf20Sopenharmony_ci					remote-endpoint = <&evea_hp>;
2638c2ecf20Sopenharmony_ci				};
2648c2ecf20Sopenharmony_ci			};
2658c2ecf20Sopenharmony_ci
2668c2ecf20Sopenharmony_ci			spdif_port0: port@5 {
2678c2ecf20Sopenharmony_ci				spdif_hiecout1: endpoint {
2688c2ecf20Sopenharmony_ci				};
2698c2ecf20Sopenharmony_ci			};
2708c2ecf20Sopenharmony_ci
2718c2ecf20Sopenharmony_ci			src_port0: port@6 {
2728c2ecf20Sopenharmony_ci				i2s_epcmout2: endpoint {
2738c2ecf20Sopenharmony_ci				};
2748c2ecf20Sopenharmony_ci			};
2758c2ecf20Sopenharmony_ci
2768c2ecf20Sopenharmony_ci			src_port1: port@7 {
2778c2ecf20Sopenharmony_ci				i2s_epcmout3: endpoint {
2788c2ecf20Sopenharmony_ci				};
2798c2ecf20Sopenharmony_ci			};
2808c2ecf20Sopenharmony_ci
2818c2ecf20Sopenharmony_ci			comp_spdif_port0: port@8 {
2828c2ecf20Sopenharmony_ci				comp_spdif_hiecout1: endpoint {
2838c2ecf20Sopenharmony_ci				};
2848c2ecf20Sopenharmony_ci			};
2858c2ecf20Sopenharmony_ci		};
2868c2ecf20Sopenharmony_ci
2878c2ecf20Sopenharmony_ci		codec@57900000 {
2888c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-evea";
2898c2ecf20Sopenharmony_ci			reg = <0x57900000 0x1000>;
2908c2ecf20Sopenharmony_ci			clock-names = "evea", "exiv";
2918c2ecf20Sopenharmony_ci			clocks = <&sys_clk 41>, <&sys_clk 42>;
2928c2ecf20Sopenharmony_ci			reset-names = "evea", "exiv", "adamv";
2938c2ecf20Sopenharmony_ci			resets = <&sys_rst 41>, <&sys_rst 42>, <&adamv_rst 0>;
2948c2ecf20Sopenharmony_ci			#sound-dai-cells = <1>;
2958c2ecf20Sopenharmony_ci
2968c2ecf20Sopenharmony_ci			port@0 {
2978c2ecf20Sopenharmony_ci				evea_line: endpoint {
2988c2ecf20Sopenharmony_ci					remote-endpoint = <&i2s_line>;
2998c2ecf20Sopenharmony_ci				};
3008c2ecf20Sopenharmony_ci			};
3018c2ecf20Sopenharmony_ci
3028c2ecf20Sopenharmony_ci			port@1 {
3038c2ecf20Sopenharmony_ci				evea_hp: endpoint {
3048c2ecf20Sopenharmony_ci					remote-endpoint = <&i2s_hp>;
3058c2ecf20Sopenharmony_ci				};
3068c2ecf20Sopenharmony_ci			};
3078c2ecf20Sopenharmony_ci		};
3088c2ecf20Sopenharmony_ci
3098c2ecf20Sopenharmony_ci		adamv@57920000 {
3108c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-adamv",
3118c2ecf20Sopenharmony_ci				     "simple-mfd", "syscon";
3128c2ecf20Sopenharmony_ci			reg = <0x57920000 0x1000>;
3138c2ecf20Sopenharmony_ci
3148c2ecf20Sopenharmony_ci			adamv_rst: reset {
3158c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-adamv-reset";
3168c2ecf20Sopenharmony_ci				#reset-cells = <1>;
3178c2ecf20Sopenharmony_ci			};
3188c2ecf20Sopenharmony_ci		};
3198c2ecf20Sopenharmony_ci
3208c2ecf20Sopenharmony_ci		i2c0: i2c@58780000 {
3218c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-fi2c";
3228c2ecf20Sopenharmony_ci			status = "disabled";
3238c2ecf20Sopenharmony_ci			reg = <0x58780000 0x80>;
3248c2ecf20Sopenharmony_ci			#address-cells = <1>;
3258c2ecf20Sopenharmony_ci			#size-cells = <0>;
3268c2ecf20Sopenharmony_ci			interrupts = <0 41 4>;
3278c2ecf20Sopenharmony_ci			pinctrl-names = "default";
3288c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_i2c0>;
3298c2ecf20Sopenharmony_ci			clocks = <&peri_clk 4>;
3308c2ecf20Sopenharmony_ci			resets = <&peri_rst 4>;
3318c2ecf20Sopenharmony_ci			clock-frequency = <100000>;
3328c2ecf20Sopenharmony_ci		};
3338c2ecf20Sopenharmony_ci
3348c2ecf20Sopenharmony_ci		i2c1: i2c@58781000 {
3358c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-fi2c";
3368c2ecf20Sopenharmony_ci			status = "disabled";
3378c2ecf20Sopenharmony_ci			reg = <0x58781000 0x80>;
3388c2ecf20Sopenharmony_ci			#address-cells = <1>;
3398c2ecf20Sopenharmony_ci			#size-cells = <0>;
3408c2ecf20Sopenharmony_ci			interrupts = <0 42 4>;
3418c2ecf20Sopenharmony_ci			pinctrl-names = "default";
3428c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_i2c1>;
3438c2ecf20Sopenharmony_ci			clocks = <&peri_clk 5>;
3448c2ecf20Sopenharmony_ci			resets = <&peri_rst 5>;
3458c2ecf20Sopenharmony_ci			clock-frequency = <100000>;
3468c2ecf20Sopenharmony_ci		};
3478c2ecf20Sopenharmony_ci
3488c2ecf20Sopenharmony_ci		i2c2: i2c@58782000 {
3498c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-fi2c";
3508c2ecf20Sopenharmony_ci			reg = <0x58782000 0x80>;
3518c2ecf20Sopenharmony_ci			#address-cells = <1>;
3528c2ecf20Sopenharmony_ci			#size-cells = <0>;
3538c2ecf20Sopenharmony_ci			interrupts = <0 43 4>;
3548c2ecf20Sopenharmony_ci			clocks = <&peri_clk 6>;
3558c2ecf20Sopenharmony_ci			resets = <&peri_rst 6>;
3568c2ecf20Sopenharmony_ci			clock-frequency = <400000>;
3578c2ecf20Sopenharmony_ci		};
3588c2ecf20Sopenharmony_ci
3598c2ecf20Sopenharmony_ci		i2c3: i2c@58783000 {
3608c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-fi2c";
3618c2ecf20Sopenharmony_ci			status = "disabled";
3628c2ecf20Sopenharmony_ci			reg = <0x58783000 0x80>;
3638c2ecf20Sopenharmony_ci			#address-cells = <1>;
3648c2ecf20Sopenharmony_ci			#size-cells = <0>;
3658c2ecf20Sopenharmony_ci			interrupts = <0 44 4>;
3668c2ecf20Sopenharmony_ci			pinctrl-names = "default";
3678c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_i2c3>;
3688c2ecf20Sopenharmony_ci			clocks = <&peri_clk 7>;
3698c2ecf20Sopenharmony_ci			resets = <&peri_rst 7>;
3708c2ecf20Sopenharmony_ci			clock-frequency = <100000>;
3718c2ecf20Sopenharmony_ci		};
3728c2ecf20Sopenharmony_ci
3738c2ecf20Sopenharmony_ci		i2c4: i2c@58784000 {
3748c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-fi2c";
3758c2ecf20Sopenharmony_ci			status = "disabled";
3768c2ecf20Sopenharmony_ci			reg = <0x58784000 0x80>;
3778c2ecf20Sopenharmony_ci			#address-cells = <1>;
3788c2ecf20Sopenharmony_ci			#size-cells = <0>;
3798c2ecf20Sopenharmony_ci			interrupts = <0 45 4>;
3808c2ecf20Sopenharmony_ci			pinctrl-names = "default";
3818c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_i2c4>;
3828c2ecf20Sopenharmony_ci			clocks = <&peri_clk 8>;
3838c2ecf20Sopenharmony_ci			resets = <&peri_rst 8>;
3848c2ecf20Sopenharmony_ci			clock-frequency = <100000>;
3858c2ecf20Sopenharmony_ci		};
3868c2ecf20Sopenharmony_ci
3878c2ecf20Sopenharmony_ci		i2c5: i2c@58785000 {
3888c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-fi2c";
3898c2ecf20Sopenharmony_ci			reg = <0x58785000 0x80>;
3908c2ecf20Sopenharmony_ci			#address-cells = <1>;
3918c2ecf20Sopenharmony_ci			#size-cells = <0>;
3928c2ecf20Sopenharmony_ci			interrupts = <0 25 4>;
3938c2ecf20Sopenharmony_ci			clocks = <&peri_clk 9>;
3948c2ecf20Sopenharmony_ci			resets = <&peri_rst 9>;
3958c2ecf20Sopenharmony_ci			clock-frequency = <400000>;
3968c2ecf20Sopenharmony_ci		};
3978c2ecf20Sopenharmony_ci
3988c2ecf20Sopenharmony_ci		system_bus: system-bus@58c00000 {
3998c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-system-bus";
4008c2ecf20Sopenharmony_ci			status = "disabled";
4018c2ecf20Sopenharmony_ci			reg = <0x58c00000 0x400>;
4028c2ecf20Sopenharmony_ci			#address-cells = <2>;
4038c2ecf20Sopenharmony_ci			#size-cells = <1>;
4048c2ecf20Sopenharmony_ci			pinctrl-names = "default";
4058c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_system_bus>;
4068c2ecf20Sopenharmony_ci		};
4078c2ecf20Sopenharmony_ci
4088c2ecf20Sopenharmony_ci		smpctrl@59801000 {
4098c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-smpctrl";
4108c2ecf20Sopenharmony_ci			reg = <0x59801000 0x400>;
4118c2ecf20Sopenharmony_ci		};
4128c2ecf20Sopenharmony_ci
4138c2ecf20Sopenharmony_ci		sdctrl@59810000 {
4148c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-sdctrl",
4158c2ecf20Sopenharmony_ci				     "simple-mfd", "syscon";
4168c2ecf20Sopenharmony_ci			reg = <0x59810000 0x400>;
4178c2ecf20Sopenharmony_ci
4188c2ecf20Sopenharmony_ci			sd_rst: reset {
4198c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-sd-reset";
4208c2ecf20Sopenharmony_ci				#reset-cells = <1>;
4218c2ecf20Sopenharmony_ci			};
4228c2ecf20Sopenharmony_ci		};
4238c2ecf20Sopenharmony_ci
4248c2ecf20Sopenharmony_ci		perictrl@59820000 {
4258c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-perictrl",
4268c2ecf20Sopenharmony_ci				     "simple-mfd", "syscon";
4278c2ecf20Sopenharmony_ci			reg = <0x59820000 0x200>;
4288c2ecf20Sopenharmony_ci
4298c2ecf20Sopenharmony_ci			peri_clk: clock {
4308c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-peri-clock";
4318c2ecf20Sopenharmony_ci				#clock-cells = <1>;
4328c2ecf20Sopenharmony_ci			};
4338c2ecf20Sopenharmony_ci
4348c2ecf20Sopenharmony_ci			peri_rst: reset {
4358c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-peri-reset";
4368c2ecf20Sopenharmony_ci				#reset-cells = <1>;
4378c2ecf20Sopenharmony_ci			};
4388c2ecf20Sopenharmony_ci		};
4398c2ecf20Sopenharmony_ci
4408c2ecf20Sopenharmony_ci		emmc: mmc@5a000000 {
4418c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc";
4428c2ecf20Sopenharmony_ci			reg = <0x5a000000 0x400>;
4438c2ecf20Sopenharmony_ci			interrupts = <0 78 4>;
4448c2ecf20Sopenharmony_ci			pinctrl-names = "default";
4458c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_emmc>;
4468c2ecf20Sopenharmony_ci			clocks = <&sys_clk 4>;
4478c2ecf20Sopenharmony_ci			resets = <&sys_rst 4>;
4488c2ecf20Sopenharmony_ci			bus-width = <8>;
4498c2ecf20Sopenharmony_ci			mmc-ddr-1_8v;
4508c2ecf20Sopenharmony_ci			mmc-hs200-1_8v;
4518c2ecf20Sopenharmony_ci			mmc-pwrseq = <&emmc_pwrseq>;
4528c2ecf20Sopenharmony_ci			cdns,phy-input-delay-legacy = <9>;
4538c2ecf20Sopenharmony_ci			cdns,phy-input-delay-mmc-highspeed = <2>;
4548c2ecf20Sopenharmony_ci			cdns,phy-input-delay-mmc-ddr = <3>;
4558c2ecf20Sopenharmony_ci			cdns,phy-dll-delay-sdclk = <21>;
4568c2ecf20Sopenharmony_ci			cdns,phy-dll-delay-sdclk-hsmmc = <21>;
4578c2ecf20Sopenharmony_ci		};
4588c2ecf20Sopenharmony_ci
4598c2ecf20Sopenharmony_ci		usb0: usb@5a800100 {
4608c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ehci", "generic-ehci";
4618c2ecf20Sopenharmony_ci			status = "disabled";
4628c2ecf20Sopenharmony_ci			reg = <0x5a800100 0x100>;
4638c2ecf20Sopenharmony_ci			interrupts = <0 243 4>;
4648c2ecf20Sopenharmony_ci			pinctrl-names = "default";
4658c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_usb0>;
4668c2ecf20Sopenharmony_ci			clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 8>,
4678c2ecf20Sopenharmony_ci				 <&mio_clk 12>;
4688c2ecf20Sopenharmony_ci			resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 8>,
4698c2ecf20Sopenharmony_ci				 <&mio_rst 12>;
4708c2ecf20Sopenharmony_ci			phy-names = "usb";
4718c2ecf20Sopenharmony_ci			phys = <&usb_phy0>;
4728c2ecf20Sopenharmony_ci			has-transaction-translator;
4738c2ecf20Sopenharmony_ci		};
4748c2ecf20Sopenharmony_ci
4758c2ecf20Sopenharmony_ci		usb1: usb@5a810100 {
4768c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ehci", "generic-ehci";
4778c2ecf20Sopenharmony_ci			status = "disabled";
4788c2ecf20Sopenharmony_ci			reg = <0x5a810100 0x100>;
4798c2ecf20Sopenharmony_ci			interrupts = <0 244 4>;
4808c2ecf20Sopenharmony_ci			pinctrl-names = "default";
4818c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_usb1>;
4828c2ecf20Sopenharmony_ci			clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 9>,
4838c2ecf20Sopenharmony_ci				 <&mio_clk 13>;
4848c2ecf20Sopenharmony_ci			resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 9>,
4858c2ecf20Sopenharmony_ci				 <&mio_rst 13>;
4868c2ecf20Sopenharmony_ci			phy-names = "usb";
4878c2ecf20Sopenharmony_ci			phys = <&usb_phy1>;
4888c2ecf20Sopenharmony_ci			has-transaction-translator;
4898c2ecf20Sopenharmony_ci		};
4908c2ecf20Sopenharmony_ci
4918c2ecf20Sopenharmony_ci		usb2: usb@5a820100 {
4928c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ehci", "generic-ehci";
4938c2ecf20Sopenharmony_ci			status = "disabled";
4948c2ecf20Sopenharmony_ci			reg = <0x5a820100 0x100>;
4958c2ecf20Sopenharmony_ci			interrupts = <0 245 4>;
4968c2ecf20Sopenharmony_ci			pinctrl-names = "default";
4978c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_usb2>;
4988c2ecf20Sopenharmony_ci			clocks = <&sys_clk 8>, <&mio_clk 7>, <&mio_clk 10>,
4998c2ecf20Sopenharmony_ci				 <&mio_clk 14>;
5008c2ecf20Sopenharmony_ci			resets = <&sys_rst 8>, <&mio_rst 7>, <&mio_rst 10>,
5018c2ecf20Sopenharmony_ci				 <&mio_rst 14>;
5028c2ecf20Sopenharmony_ci			phy-names = "usb";
5038c2ecf20Sopenharmony_ci			phys = <&usb_phy2>;
5048c2ecf20Sopenharmony_ci			has-transaction-translator;
5058c2ecf20Sopenharmony_ci		};
5068c2ecf20Sopenharmony_ci
5078c2ecf20Sopenharmony_ci		mioctrl@5b3e0000 {
5088c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-mioctrl",
5098c2ecf20Sopenharmony_ci				     "simple-mfd", "syscon";
5108c2ecf20Sopenharmony_ci			reg = <0x5b3e0000 0x800>;
5118c2ecf20Sopenharmony_ci
5128c2ecf20Sopenharmony_ci			mio_clk: clock {
5138c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-mio-clock";
5148c2ecf20Sopenharmony_ci				#clock-cells = <1>;
5158c2ecf20Sopenharmony_ci			};
5168c2ecf20Sopenharmony_ci
5178c2ecf20Sopenharmony_ci			mio_rst: reset {
5188c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-mio-reset";
5198c2ecf20Sopenharmony_ci				#reset-cells = <1>;
5208c2ecf20Sopenharmony_ci				resets = <&sys_rst 7>;
5218c2ecf20Sopenharmony_ci			};
5228c2ecf20Sopenharmony_ci		};
5238c2ecf20Sopenharmony_ci
5248c2ecf20Sopenharmony_ci		soc_glue: soc-glue@5f800000 {
5258c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-soc-glue",
5268c2ecf20Sopenharmony_ci				     "simple-mfd", "syscon";
5278c2ecf20Sopenharmony_ci			reg = <0x5f800000 0x2000>;
5288c2ecf20Sopenharmony_ci
5298c2ecf20Sopenharmony_ci			pinctrl: pinctrl {
5308c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-pinctrl";
5318c2ecf20Sopenharmony_ci			};
5328c2ecf20Sopenharmony_ci
5338c2ecf20Sopenharmony_ci			usb-phy {
5348c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-usb2-phy";
5358c2ecf20Sopenharmony_ci				#address-cells = <1>;
5368c2ecf20Sopenharmony_ci				#size-cells = <0>;
5378c2ecf20Sopenharmony_ci
5388c2ecf20Sopenharmony_ci				usb_phy0: phy@0 {
5398c2ecf20Sopenharmony_ci					reg = <0>;
5408c2ecf20Sopenharmony_ci					#phy-cells = <0>;
5418c2ecf20Sopenharmony_ci				};
5428c2ecf20Sopenharmony_ci
5438c2ecf20Sopenharmony_ci				usb_phy1: phy@1 {
5448c2ecf20Sopenharmony_ci					reg = <1>;
5458c2ecf20Sopenharmony_ci					#phy-cells = <0>;
5468c2ecf20Sopenharmony_ci				};
5478c2ecf20Sopenharmony_ci
5488c2ecf20Sopenharmony_ci				usb_phy2: phy@2 {
5498c2ecf20Sopenharmony_ci					reg = <2>;
5508c2ecf20Sopenharmony_ci					#phy-cells = <0>;
5518c2ecf20Sopenharmony_ci				};
5528c2ecf20Sopenharmony_ci			};
5538c2ecf20Sopenharmony_ci		};
5548c2ecf20Sopenharmony_ci
5558c2ecf20Sopenharmony_ci		soc-glue@5f900000 {
5568c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-soc-glue-debug",
5578c2ecf20Sopenharmony_ci				     "simple-mfd";
5588c2ecf20Sopenharmony_ci			#address-cells = <1>;
5598c2ecf20Sopenharmony_ci			#size-cells = <1>;
5608c2ecf20Sopenharmony_ci			ranges = <0 0x5f900000 0x2000>;
5618c2ecf20Sopenharmony_ci
5628c2ecf20Sopenharmony_ci			efuse@100 {
5638c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-efuse";
5648c2ecf20Sopenharmony_ci				reg = <0x100 0x28>;
5658c2ecf20Sopenharmony_ci			};
5668c2ecf20Sopenharmony_ci
5678c2ecf20Sopenharmony_ci			efuse@200 {
5688c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-efuse";
5698c2ecf20Sopenharmony_ci				reg = <0x200 0x68>;
5708c2ecf20Sopenharmony_ci			};
5718c2ecf20Sopenharmony_ci		};
5728c2ecf20Sopenharmony_ci
5738c2ecf20Sopenharmony_ci		xdmac: dma-controller@5fc10000 {
5748c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-xdmac";
5758c2ecf20Sopenharmony_ci			reg = <0x5fc10000 0x5300>;
5768c2ecf20Sopenharmony_ci			interrupts = <0 188 4>;
5778c2ecf20Sopenharmony_ci			dma-channels = <16>;
5788c2ecf20Sopenharmony_ci			#dma-cells = <2>;
5798c2ecf20Sopenharmony_ci		};
5808c2ecf20Sopenharmony_ci
5818c2ecf20Sopenharmony_ci		aidet: interrupt-controller@5fc20000 {
5828c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-aidet";
5838c2ecf20Sopenharmony_ci			reg = <0x5fc20000 0x200>;
5848c2ecf20Sopenharmony_ci			interrupt-controller;
5858c2ecf20Sopenharmony_ci			#interrupt-cells = <2>;
5868c2ecf20Sopenharmony_ci		};
5878c2ecf20Sopenharmony_ci
5888c2ecf20Sopenharmony_ci		gic: interrupt-controller@5fe00000 {
5898c2ecf20Sopenharmony_ci			compatible = "arm,gic-v3";
5908c2ecf20Sopenharmony_ci			reg = <0x5fe00000 0x10000>,	/* GICD */
5918c2ecf20Sopenharmony_ci			      <0x5fe40000 0x80000>;	/* GICR */
5928c2ecf20Sopenharmony_ci			interrupt-controller;
5938c2ecf20Sopenharmony_ci			#interrupt-cells = <3>;
5948c2ecf20Sopenharmony_ci			interrupts = <1 9 4>;
5958c2ecf20Sopenharmony_ci		};
5968c2ecf20Sopenharmony_ci
5978c2ecf20Sopenharmony_ci		sysctrl@61840000 {
5988c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-sysctrl",
5998c2ecf20Sopenharmony_ci				     "simple-mfd", "syscon";
6008c2ecf20Sopenharmony_ci			reg = <0x61840000 0x10000>;
6018c2ecf20Sopenharmony_ci
6028c2ecf20Sopenharmony_ci			sys_clk: clock {
6038c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-clock";
6048c2ecf20Sopenharmony_ci				#clock-cells = <1>;
6058c2ecf20Sopenharmony_ci			};
6068c2ecf20Sopenharmony_ci
6078c2ecf20Sopenharmony_ci			sys_rst: reset {
6088c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-ld11-reset";
6098c2ecf20Sopenharmony_ci				#reset-cells = <1>;
6108c2ecf20Sopenharmony_ci			};
6118c2ecf20Sopenharmony_ci
6128c2ecf20Sopenharmony_ci			watchdog {
6138c2ecf20Sopenharmony_ci				compatible = "socionext,uniphier-wdt";
6148c2ecf20Sopenharmony_ci			};
6158c2ecf20Sopenharmony_ci		};
6168c2ecf20Sopenharmony_ci
6178c2ecf20Sopenharmony_ci		eth: ethernet@65000000 {
6188c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-ld11-ave4";
6198c2ecf20Sopenharmony_ci			status = "disabled";
6208c2ecf20Sopenharmony_ci			reg = <0x65000000 0x8500>;
6218c2ecf20Sopenharmony_ci			interrupts = <0 66 4>;
6228c2ecf20Sopenharmony_ci			clock-names = "ether";
6238c2ecf20Sopenharmony_ci			clocks = <&sys_clk 6>;
6248c2ecf20Sopenharmony_ci			reset-names = "ether";
6258c2ecf20Sopenharmony_ci			resets = <&sys_rst 6>;
6268c2ecf20Sopenharmony_ci			phy-mode = "internal";
6278c2ecf20Sopenharmony_ci			local-mac-address = [00 00 00 00 00 00];
6288c2ecf20Sopenharmony_ci			socionext,syscon-phy-mode = <&soc_glue 0>;
6298c2ecf20Sopenharmony_ci
6308c2ecf20Sopenharmony_ci			mdio: mdio {
6318c2ecf20Sopenharmony_ci				#address-cells = <1>;
6328c2ecf20Sopenharmony_ci				#size-cells = <0>;
6338c2ecf20Sopenharmony_ci			};
6348c2ecf20Sopenharmony_ci		};
6358c2ecf20Sopenharmony_ci
6368c2ecf20Sopenharmony_ci		nand: nand-controller@68000000 {
6378c2ecf20Sopenharmony_ci			compatible = "socionext,uniphier-denali-nand-v5b";
6388c2ecf20Sopenharmony_ci			status = "disabled";
6398c2ecf20Sopenharmony_ci			reg-names = "nand_data", "denali_reg";
6408c2ecf20Sopenharmony_ci			reg = <0x68000000 0x20>, <0x68100000 0x1000>;
6418c2ecf20Sopenharmony_ci			#address-cells = <1>;
6428c2ecf20Sopenharmony_ci			#size-cells = <0>;
6438c2ecf20Sopenharmony_ci			interrupts = <0 65 4>;
6448c2ecf20Sopenharmony_ci			pinctrl-names = "default";
6458c2ecf20Sopenharmony_ci			pinctrl-0 = <&pinctrl_nand>;
6468c2ecf20Sopenharmony_ci			clock-names = "nand", "nand_x", "ecc";
6478c2ecf20Sopenharmony_ci			clocks = <&sys_clk 2>, <&sys_clk 3>, <&sys_clk 3>;
6488c2ecf20Sopenharmony_ci			reset-names = "nand", "reg";
6498c2ecf20Sopenharmony_ci			resets = <&sys_rst 2>, <&sys_rst 2>;
6508c2ecf20Sopenharmony_ci		};
6518c2ecf20Sopenharmony_ci	};
6528c2ecf20Sopenharmony_ci};
6538c2ecf20Sopenharmony_ci
6548c2ecf20Sopenharmony_ci#include "uniphier-pinctrl.dtsi"
6558c2ecf20Sopenharmony_ci
6568c2ecf20Sopenharmony_ci&pinctrl_aoutiec1 {
6578c2ecf20Sopenharmony_ci	drive-strength = <4>;	/* default: 4mA */
6588c2ecf20Sopenharmony_ci
6598c2ecf20Sopenharmony_ci	ao1arc {
6608c2ecf20Sopenharmony_ci		pins = "AO1ARC";
6618c2ecf20Sopenharmony_ci		drive-strength = <8>;	/* 8mA */
6628c2ecf20Sopenharmony_ci	};
6638c2ecf20Sopenharmony_ci};
664