13e98fc12SMasahiro Yamada// SPDX-License-Identifier: GPL-2.0+ OR MIT 23e98fc12SMasahiro Yamada// 33e98fc12SMasahiro Yamada// Device Tree Source for UniPhier LD20 SoC 43e98fc12SMasahiro Yamada// 53e98fc12SMasahiro Yamada// Copyright (C) 2015-2016 Socionext Inc. 63e98fc12SMasahiro Yamada// Author: Masahiro Yamada <yamada.masahiro@socionext.com> 752159d27SMasahiro Yamada 8b443fb42SMasahiro Yamada#include <dt-bindings/gpio/gpio.h> 9b443fb42SMasahiro Yamada#include <dt-bindings/gpio/uniphier-gpio.h> 10b443fb42SMasahiro Yamada#include <dt-bindings/thermal/thermal.h> 11b443fb42SMasahiro Yamada 12d9403001SMasahiro Yamada/memreserve/ 0x80000000 0x02000000; 1352159d27SMasahiro Yamada 1452159d27SMasahiro Yamada/ { 1552159d27SMasahiro Yamada compatible = "socionext,uniphier-ld20"; 1652159d27SMasahiro Yamada #address-cells = <2>; 1752159d27SMasahiro Yamada #size-cells = <2>; 1852159d27SMasahiro Yamada interrupt-parent = <&gic>; 1952159d27SMasahiro Yamada 2052159d27SMasahiro Yamada cpus { 2152159d27SMasahiro Yamada #address-cells = <2>; 2252159d27SMasahiro Yamada #size-cells = <0>; 2352159d27SMasahiro Yamada 2452159d27SMasahiro Yamada cpu-map { 2552159d27SMasahiro Yamada cluster0 { 2652159d27SMasahiro Yamada core0 { 2752159d27SMasahiro Yamada cpu = <&cpu0>; 2852159d27SMasahiro Yamada }; 2952159d27SMasahiro Yamada core1 { 3052159d27SMasahiro Yamada cpu = <&cpu1>; 3152159d27SMasahiro Yamada }; 3252159d27SMasahiro Yamada }; 3352159d27SMasahiro Yamada 3452159d27SMasahiro Yamada cluster1 { 3552159d27SMasahiro Yamada core0 { 3652159d27SMasahiro Yamada cpu = <&cpu2>; 3752159d27SMasahiro Yamada }; 3852159d27SMasahiro Yamada core1 { 3952159d27SMasahiro Yamada cpu = <&cpu3>; 4052159d27SMasahiro Yamada }; 4152159d27SMasahiro Yamada }; 4252159d27SMasahiro Yamada }; 4352159d27SMasahiro Yamada 4452159d27SMasahiro Yamada cpu0: cpu@0 { 4552159d27SMasahiro Yamada device_type = "cpu"; 4652159d27SMasahiro Yamada compatible = "arm,cortex-a72", "arm,armv8"; 4752159d27SMasahiro Yamada reg = <0 0x000>; 48cd62214dSMasahiro Yamada clocks = <&sys_clk 32>; 49cd62214dSMasahiro Yamada enable-method = "psci"; 50cd62214dSMasahiro Yamada operating-points-v2 = <&cluster0_opp>; 51b443fb42SMasahiro Yamada #cooling-cells = <2>; 5252159d27SMasahiro Yamada }; 5352159d27SMasahiro Yamada 5452159d27SMasahiro Yamada cpu1: cpu@1 { 5552159d27SMasahiro Yamada device_type = "cpu"; 5652159d27SMasahiro Yamada compatible = "arm,cortex-a72", "arm,armv8"; 5752159d27SMasahiro Yamada reg = <0 0x001>; 58cd62214dSMasahiro Yamada clocks = <&sys_clk 32>; 59cd62214dSMasahiro Yamada enable-method = "psci"; 60cd62214dSMasahiro Yamada operating-points-v2 = <&cluster0_opp>; 6133aae6b5SMasahiro Yamada #cooling-cells = <2>; 6252159d27SMasahiro Yamada }; 6352159d27SMasahiro Yamada 6452159d27SMasahiro Yamada cpu2: cpu@100 { 6552159d27SMasahiro Yamada device_type = "cpu"; 6652159d27SMasahiro Yamada compatible = "arm,cortex-a53", "arm,armv8"; 6752159d27SMasahiro Yamada reg = <0 0x100>; 68cd62214dSMasahiro Yamada clocks = <&sys_clk 33>; 69cd62214dSMasahiro Yamada enable-method = "psci"; 70cd62214dSMasahiro Yamada operating-points-v2 = <&cluster1_opp>; 71b443fb42SMasahiro Yamada #cooling-cells = <2>; 7252159d27SMasahiro Yamada }; 7352159d27SMasahiro Yamada 7452159d27SMasahiro Yamada cpu3: cpu@101 { 7552159d27SMasahiro Yamada device_type = "cpu"; 7652159d27SMasahiro Yamada compatible = "arm,cortex-a53", "arm,armv8"; 7752159d27SMasahiro Yamada reg = <0 0x101>; 78cd62214dSMasahiro Yamada clocks = <&sys_clk 33>; 79cd62214dSMasahiro Yamada enable-method = "psci"; 80cd62214dSMasahiro Yamada operating-points-v2 = <&cluster1_opp>; 8133aae6b5SMasahiro Yamada #cooling-cells = <2>; 8252159d27SMasahiro Yamada }; 8352159d27SMasahiro Yamada }; 8452159d27SMasahiro Yamada 85b443fb42SMasahiro Yamada cluster0_opp: opp-table0 { 86cd62214dSMasahiro Yamada compatible = "operating-points-v2"; 87cd62214dSMasahiro Yamada opp-shared; 88cd62214dSMasahiro Yamada 894e7f8de4SMasahiro Yamada opp-250000000 { 90cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <250000000>; 91cd62214dSMasahiro Yamada clock-latency-ns = <300>; 92cd62214dSMasahiro Yamada }; 934e7f8de4SMasahiro Yamada opp-275000000 { 94cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <275000000>; 95cd62214dSMasahiro Yamada clock-latency-ns = <300>; 96cd62214dSMasahiro Yamada }; 974e7f8de4SMasahiro Yamada opp-500000000 { 98cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <500000000>; 99cd62214dSMasahiro Yamada clock-latency-ns = <300>; 100cd62214dSMasahiro Yamada }; 1014e7f8de4SMasahiro Yamada opp-550000000 { 102cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <550000000>; 103cd62214dSMasahiro Yamada clock-latency-ns = <300>; 104cd62214dSMasahiro Yamada }; 1054e7f8de4SMasahiro Yamada opp-666667000 { 106cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <666667000>; 107cd62214dSMasahiro Yamada clock-latency-ns = <300>; 108cd62214dSMasahiro Yamada }; 1094e7f8de4SMasahiro Yamada opp-733334000 { 110cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <733334000>; 111cd62214dSMasahiro Yamada clock-latency-ns = <300>; 112cd62214dSMasahiro Yamada }; 1134e7f8de4SMasahiro Yamada opp-1000000000 { 114cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <1000000000>; 115cd62214dSMasahiro Yamada clock-latency-ns = <300>; 116cd62214dSMasahiro Yamada }; 1174e7f8de4SMasahiro Yamada opp-1100000000 { 118cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <1100000000>; 119cd62214dSMasahiro Yamada clock-latency-ns = <300>; 120cd62214dSMasahiro Yamada }; 121cd62214dSMasahiro Yamada }; 122cd62214dSMasahiro Yamada 123b443fb42SMasahiro Yamada cluster1_opp: opp-table1 { 124cd62214dSMasahiro Yamada compatible = "operating-points-v2"; 125cd62214dSMasahiro Yamada opp-shared; 126cd62214dSMasahiro Yamada 1274e7f8de4SMasahiro Yamada opp-250000000 { 128cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <250000000>; 129cd62214dSMasahiro Yamada clock-latency-ns = <300>; 130cd62214dSMasahiro Yamada }; 1314e7f8de4SMasahiro Yamada opp-275000000 { 132cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <275000000>; 133cd62214dSMasahiro Yamada clock-latency-ns = <300>; 134cd62214dSMasahiro Yamada }; 1354e7f8de4SMasahiro Yamada opp-500000000 { 136cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <500000000>; 137cd62214dSMasahiro Yamada clock-latency-ns = <300>; 138cd62214dSMasahiro Yamada }; 1394e7f8de4SMasahiro Yamada opp-550000000 { 140cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <550000000>; 141cd62214dSMasahiro Yamada clock-latency-ns = <300>; 142cd62214dSMasahiro Yamada }; 1434e7f8de4SMasahiro Yamada opp-666667000 { 144cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <666667000>; 145cd62214dSMasahiro Yamada clock-latency-ns = <300>; 146cd62214dSMasahiro Yamada }; 1474e7f8de4SMasahiro Yamada opp-733334000 { 148cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <733334000>; 149cd62214dSMasahiro Yamada clock-latency-ns = <300>; 150cd62214dSMasahiro Yamada }; 1514e7f8de4SMasahiro Yamada opp-1000000000 { 152cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <1000000000>; 153cd62214dSMasahiro Yamada clock-latency-ns = <300>; 154cd62214dSMasahiro Yamada }; 1554e7f8de4SMasahiro Yamada opp-1100000000 { 156cd62214dSMasahiro Yamada opp-hz = /bits/ 64 <1100000000>; 157cd62214dSMasahiro Yamada clock-latency-ns = <300>; 158cd62214dSMasahiro Yamada }; 159cd62214dSMasahiro Yamada }; 160cd62214dSMasahiro Yamada 161cd62214dSMasahiro Yamada psci { 162cd62214dSMasahiro Yamada compatible = "arm,psci-1.0"; 163cd62214dSMasahiro Yamada method = "smc"; 164cd62214dSMasahiro Yamada }; 165cd62214dSMasahiro Yamada 16652159d27SMasahiro Yamada clocks { 16752159d27SMasahiro Yamada refclk: ref { 16852159d27SMasahiro Yamada compatible = "fixed-clock"; 16952159d27SMasahiro Yamada #clock-cells = <0>; 17052159d27SMasahiro Yamada clock-frequency = <25000000>; 17152159d27SMasahiro Yamada }; 17252159d27SMasahiro Yamada }; 17352159d27SMasahiro Yamada 174b443fb42SMasahiro Yamada emmc_pwrseq: emmc-pwrseq { 175b443fb42SMasahiro Yamada compatible = "mmc-pwrseq-emmc"; 176b443fb42SMasahiro Yamada reset-gpios = <&gpio UNIPHIER_GPIO_PORT(3, 2) GPIO_ACTIVE_LOW>; 177b443fb42SMasahiro Yamada }; 178b443fb42SMasahiro Yamada 17952159d27SMasahiro Yamada timer { 18052159d27SMasahiro Yamada compatible = "arm,armv8-timer"; 18152159d27SMasahiro Yamada interrupts = <1 13 4>, 18252159d27SMasahiro Yamada <1 14 4>, 18352159d27SMasahiro Yamada <1 11 4>, 18452159d27SMasahiro Yamada <1 10 4>; 18552159d27SMasahiro Yamada }; 18652159d27SMasahiro Yamada 187b443fb42SMasahiro Yamada thermal-zones { 188b443fb42SMasahiro Yamada cpu-thermal { 189b443fb42SMasahiro Yamada polling-delay-passive = <250>; /* 250ms */ 190b443fb42SMasahiro Yamada polling-delay = <1000>; /* 1000ms */ 191b443fb42SMasahiro Yamada thermal-sensors = <&pvtctl>; 192b443fb42SMasahiro Yamada 193b443fb42SMasahiro Yamada trips { 194b443fb42SMasahiro Yamada cpu_crit: cpu-crit { 195b443fb42SMasahiro Yamada temperature = <110000>; /* 110C */ 196b443fb42SMasahiro Yamada hysteresis = <2000>; 197b443fb42SMasahiro Yamada type = "critical"; 198b443fb42SMasahiro Yamada }; 199b443fb42SMasahiro Yamada cpu_alert: cpu-alert { 200b443fb42SMasahiro Yamada temperature = <100000>; /* 100C */ 201b443fb42SMasahiro Yamada hysteresis = <2000>; 202b443fb42SMasahiro Yamada type = "passive"; 203b443fb42SMasahiro Yamada }; 204b443fb42SMasahiro Yamada }; 205b443fb42SMasahiro Yamada 206b443fb42SMasahiro Yamada cooling-maps { 207b443fb42SMasahiro Yamada map0 { 208b443fb42SMasahiro Yamada trip = <&cpu_alert>; 209b443fb42SMasahiro Yamada cooling-device = <&cpu0 210b443fb42SMasahiro Yamada THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 211b443fb42SMasahiro Yamada }; 212b443fb42SMasahiro Yamada map1 { 213b443fb42SMasahiro Yamada trip = <&cpu_alert>; 214b443fb42SMasahiro Yamada cooling-device = <&cpu2 215b443fb42SMasahiro Yamada THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; 216b443fb42SMasahiro Yamada }; 217b443fb42SMasahiro Yamada }; 218b443fb42SMasahiro Yamada }; 219b443fb42SMasahiro Yamada }; 220b443fb42SMasahiro Yamada 2217ad79c12SMasahiro Yamada soc@0 { 22252159d27SMasahiro Yamada compatible = "simple-bus"; 22352159d27SMasahiro Yamada #address-cells = <1>; 22452159d27SMasahiro Yamada #size-cells = <1>; 22552159d27SMasahiro Yamada ranges = <0 0 0 0xffffffff>; 22652159d27SMasahiro Yamada 22752159d27SMasahiro Yamada serial0: serial@54006800 { 22852159d27SMasahiro Yamada compatible = "socionext,uniphier-uart"; 22952159d27SMasahiro Yamada status = "disabled"; 23052159d27SMasahiro Yamada reg = <0x54006800 0x40>; 23152159d27SMasahiro Yamada interrupts = <0 33 4>; 23252159d27SMasahiro Yamada pinctrl-names = "default"; 23352159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_uart0>; 23452159d27SMasahiro Yamada clocks = <&peri_clk 0>; 235b443fb42SMasahiro Yamada resets = <&peri_rst 0>; 23652159d27SMasahiro Yamada }; 23752159d27SMasahiro Yamada 23852159d27SMasahiro Yamada serial1: serial@54006900 { 23952159d27SMasahiro Yamada compatible = "socionext,uniphier-uart"; 24052159d27SMasahiro Yamada status = "disabled"; 24152159d27SMasahiro Yamada reg = <0x54006900 0x40>; 24252159d27SMasahiro Yamada interrupts = <0 35 4>; 24352159d27SMasahiro Yamada pinctrl-names = "default"; 24452159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_uart1>; 24552159d27SMasahiro Yamada clocks = <&peri_clk 1>; 246b443fb42SMasahiro Yamada resets = <&peri_rst 1>; 24752159d27SMasahiro Yamada }; 24852159d27SMasahiro Yamada 24952159d27SMasahiro Yamada serial2: serial@54006a00 { 25052159d27SMasahiro Yamada compatible = "socionext,uniphier-uart"; 25152159d27SMasahiro Yamada status = "disabled"; 25252159d27SMasahiro Yamada reg = <0x54006a00 0x40>; 25352159d27SMasahiro Yamada interrupts = <0 37 4>; 25452159d27SMasahiro Yamada pinctrl-names = "default"; 25552159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_uart2>; 25652159d27SMasahiro Yamada clocks = <&peri_clk 2>; 257b443fb42SMasahiro Yamada resets = <&peri_rst 2>; 25852159d27SMasahiro Yamada }; 25952159d27SMasahiro Yamada 26052159d27SMasahiro Yamada serial3: serial@54006b00 { 26152159d27SMasahiro Yamada compatible = "socionext,uniphier-uart"; 26252159d27SMasahiro Yamada status = "disabled"; 26352159d27SMasahiro Yamada reg = <0x54006b00 0x40>; 26452159d27SMasahiro Yamada interrupts = <0 177 4>; 26552159d27SMasahiro Yamada pinctrl-names = "default"; 26652159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_uart3>; 26752159d27SMasahiro Yamada clocks = <&peri_clk 3>; 268b443fb42SMasahiro Yamada resets = <&peri_rst 3>; 26952159d27SMasahiro Yamada }; 27052159d27SMasahiro Yamada 27127287487SMasahiro Yamada gpio: gpio@55000000 { 27227287487SMasahiro Yamada compatible = "socionext,uniphier-gpio"; 27327287487SMasahiro Yamada reg = <0x55000000 0x200>; 27427287487SMasahiro Yamada interrupt-parent = <&aidet>; 27527287487SMasahiro Yamada interrupt-controller; 27627287487SMasahiro Yamada #interrupt-cells = <2>; 27727287487SMasahiro Yamada gpio-controller; 27827287487SMasahiro Yamada #gpio-cells = <2>; 27927287487SMasahiro Yamada gpio-ranges = <&pinctrl 0 0 0>, 28027287487SMasahiro Yamada <&pinctrl 96 0 0>, 28127287487SMasahiro Yamada <&pinctrl 160 0 0>; 28227287487SMasahiro Yamada gpio-ranges-group-names = "gpio_range0", 28327287487SMasahiro Yamada "gpio_range1", 28427287487SMasahiro Yamada "gpio_range2"; 28527287487SMasahiro Yamada ngpios = <205>; 28627287487SMasahiro Yamada socionext,interrupt-ranges = <0 48 16>, <16 154 5>, 28727287487SMasahiro Yamada <21 217 3>; 28827287487SMasahiro Yamada }; 28927287487SMasahiro Yamada 2903e98fc12SMasahiro Yamada audio@56000000 { 2913e98fc12SMasahiro Yamada compatible = "socionext,uniphier-ld20-aio"; 2923e98fc12SMasahiro Yamada reg = <0x56000000 0x80000>; 2933e98fc12SMasahiro Yamada interrupts = <0 144 4>; 2943e98fc12SMasahiro Yamada pinctrl-names = "default"; 2953e98fc12SMasahiro Yamada pinctrl-0 = <&pinctrl_aout1>, 2963e98fc12SMasahiro Yamada <&pinctrl_aoutiec1>; 2973e98fc12SMasahiro Yamada clock-names = "aio"; 2983e98fc12SMasahiro Yamada clocks = <&sys_clk 40>; 2993e98fc12SMasahiro Yamada reset-names = "aio"; 3003e98fc12SMasahiro Yamada resets = <&sys_rst 40>; 3013e98fc12SMasahiro Yamada #sound-dai-cells = <1>; 3023e98fc12SMasahiro Yamada socionext,syscon = <&soc_glue>; 3033e98fc12SMasahiro Yamada 3043e98fc12SMasahiro Yamada i2s_port0: port@0 { 3053e98fc12SMasahiro Yamada i2s_hdmi: endpoint { 3063e98fc12SMasahiro Yamada }; 3073e98fc12SMasahiro Yamada }; 3083e98fc12SMasahiro Yamada 3093e98fc12SMasahiro Yamada i2s_port1: port@1 { 3103e98fc12SMasahiro Yamada i2s_pcmin2: endpoint { 3113e98fc12SMasahiro Yamada }; 3123e98fc12SMasahiro Yamada }; 3133e98fc12SMasahiro Yamada 3143e98fc12SMasahiro Yamada i2s_port2: port@2 { 3153e98fc12SMasahiro Yamada i2s_line: endpoint { 3163e98fc12SMasahiro Yamada dai-format = "i2s"; 3173e98fc12SMasahiro Yamada remote-endpoint = <&evea_line>; 3183e98fc12SMasahiro Yamada }; 3193e98fc12SMasahiro Yamada }; 3203e98fc12SMasahiro Yamada 3213e98fc12SMasahiro Yamada i2s_port3: port@3 { 3223e98fc12SMasahiro Yamada i2s_hpcmout1: endpoint { 3233e98fc12SMasahiro Yamada }; 3243e98fc12SMasahiro Yamada }; 3253e98fc12SMasahiro Yamada 3263e98fc12SMasahiro Yamada i2s_port4: port@4 { 3273e98fc12SMasahiro Yamada i2s_hp: endpoint { 3283e98fc12SMasahiro Yamada dai-format = "i2s"; 3293e98fc12SMasahiro Yamada remote-endpoint = <&evea_hp>; 3303e98fc12SMasahiro Yamada }; 3313e98fc12SMasahiro Yamada }; 3323e98fc12SMasahiro Yamada 3333e98fc12SMasahiro Yamada spdif_port0: port@5 { 3343e98fc12SMasahiro Yamada spdif_hiecout1: endpoint { 3353e98fc12SMasahiro Yamada }; 3363e98fc12SMasahiro Yamada }; 3373e98fc12SMasahiro Yamada 3383e98fc12SMasahiro Yamada src_port0: port@6 { 3393e98fc12SMasahiro Yamada i2s_epcmout2: endpoint { 3403e98fc12SMasahiro Yamada }; 3413e98fc12SMasahiro Yamada }; 3423e98fc12SMasahiro Yamada 3433e98fc12SMasahiro Yamada src_port1: port@7 { 3443e98fc12SMasahiro Yamada i2s_epcmout3: endpoint { 3453e98fc12SMasahiro Yamada }; 3463e98fc12SMasahiro Yamada }; 3473e98fc12SMasahiro Yamada 3483e98fc12SMasahiro Yamada comp_spdif_port0: port@8 { 3493e98fc12SMasahiro Yamada comp_spdif_hiecout1: endpoint { 3503e98fc12SMasahiro Yamada }; 3513e98fc12SMasahiro Yamada }; 3523e98fc12SMasahiro Yamada }; 3533e98fc12SMasahiro Yamada 3543e98fc12SMasahiro Yamada codec@57900000 { 3553e98fc12SMasahiro Yamada compatible = "socionext,uniphier-evea"; 3563e98fc12SMasahiro Yamada reg = <0x57900000 0x1000>; 3573e98fc12SMasahiro Yamada clock-names = "evea", "exiv"; 3583e98fc12SMasahiro Yamada clocks = <&sys_clk 41>, <&sys_clk 42>; 3593e98fc12SMasahiro Yamada reset-names = "evea", "exiv", "adamv"; 3603e98fc12SMasahiro Yamada resets = <&sys_rst 41>, <&sys_rst 42>, <&adamv_rst 0>; 3613e98fc12SMasahiro Yamada #sound-dai-cells = <1>; 3623e98fc12SMasahiro Yamada 3633e98fc12SMasahiro Yamada port@0 { 3643e98fc12SMasahiro Yamada evea_line: endpoint { 3653e98fc12SMasahiro Yamada remote-endpoint = <&i2s_line>; 3663e98fc12SMasahiro Yamada }; 3673e98fc12SMasahiro Yamada }; 3683e98fc12SMasahiro Yamada 3693e98fc12SMasahiro Yamada port@1 { 3703e98fc12SMasahiro Yamada evea_hp: endpoint { 3713e98fc12SMasahiro Yamada remote-endpoint = <&i2s_hp>; 3723e98fc12SMasahiro Yamada }; 3733e98fc12SMasahiro Yamada }; 3743e98fc12SMasahiro Yamada }; 3753e98fc12SMasahiro Yamada 37627287487SMasahiro Yamada adamv@57920000 { 37727287487SMasahiro Yamada compatible = "socionext,uniphier-ld20-adamv", 37827287487SMasahiro Yamada "simple-mfd", "syscon"; 37927287487SMasahiro Yamada reg = <0x57920000 0x1000>; 38027287487SMasahiro Yamada 38127287487SMasahiro Yamada adamv_rst: reset { 38227287487SMasahiro Yamada compatible = "socionext,uniphier-ld20-adamv-reset"; 38327287487SMasahiro Yamada #reset-cells = <1>; 38427287487SMasahiro Yamada }; 38527287487SMasahiro Yamada }; 38627287487SMasahiro Yamada 38752159d27SMasahiro Yamada i2c0: i2c@58780000 { 38852159d27SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 38952159d27SMasahiro Yamada status = "disabled"; 39052159d27SMasahiro Yamada reg = <0x58780000 0x80>; 39152159d27SMasahiro Yamada #address-cells = <1>; 39252159d27SMasahiro Yamada #size-cells = <0>; 39352159d27SMasahiro Yamada interrupts = <0 41 4>; 39452159d27SMasahiro Yamada pinctrl-names = "default"; 39552159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c0>; 396cd62214dSMasahiro Yamada clocks = <&peri_clk 4>; 397b443fb42SMasahiro Yamada resets = <&peri_rst 4>; 39852159d27SMasahiro Yamada clock-frequency = <100000>; 39952159d27SMasahiro Yamada }; 40052159d27SMasahiro Yamada 40152159d27SMasahiro Yamada i2c1: i2c@58781000 { 40252159d27SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 40352159d27SMasahiro Yamada status = "disabled"; 40452159d27SMasahiro Yamada reg = <0x58781000 0x80>; 40552159d27SMasahiro Yamada #address-cells = <1>; 40652159d27SMasahiro Yamada #size-cells = <0>; 40752159d27SMasahiro Yamada interrupts = <0 42 4>; 40852159d27SMasahiro Yamada pinctrl-names = "default"; 40952159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c1>; 410cd62214dSMasahiro Yamada clocks = <&peri_clk 5>; 411b443fb42SMasahiro Yamada resets = <&peri_rst 5>; 41252159d27SMasahiro Yamada clock-frequency = <100000>; 41352159d27SMasahiro Yamada }; 41452159d27SMasahiro Yamada 41552159d27SMasahiro Yamada i2c2: i2c@58782000 { 41652159d27SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 41752159d27SMasahiro Yamada reg = <0x58782000 0x80>; 41852159d27SMasahiro Yamada #address-cells = <1>; 41952159d27SMasahiro Yamada #size-cells = <0>; 42052159d27SMasahiro Yamada interrupts = <0 43 4>; 421cd62214dSMasahiro Yamada clocks = <&peri_clk 6>; 422b443fb42SMasahiro Yamada resets = <&peri_rst 6>; 42352159d27SMasahiro Yamada clock-frequency = <400000>; 42452159d27SMasahiro Yamada }; 42552159d27SMasahiro Yamada 42652159d27SMasahiro Yamada i2c3: i2c@58783000 { 42752159d27SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 42852159d27SMasahiro Yamada status = "disabled"; 42952159d27SMasahiro Yamada reg = <0x58783000 0x80>; 43052159d27SMasahiro Yamada #address-cells = <1>; 43152159d27SMasahiro Yamada #size-cells = <0>; 43252159d27SMasahiro Yamada interrupts = <0 44 4>; 43352159d27SMasahiro Yamada pinctrl-names = "default"; 43452159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c3>; 435cd62214dSMasahiro Yamada clocks = <&peri_clk 7>; 436b443fb42SMasahiro Yamada resets = <&peri_rst 7>; 43752159d27SMasahiro Yamada clock-frequency = <100000>; 43852159d27SMasahiro Yamada }; 43952159d27SMasahiro Yamada 44052159d27SMasahiro Yamada i2c4: i2c@58784000 { 44152159d27SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 44252159d27SMasahiro Yamada status = "disabled"; 44352159d27SMasahiro Yamada reg = <0x58784000 0x80>; 44452159d27SMasahiro Yamada #address-cells = <1>; 44552159d27SMasahiro Yamada #size-cells = <0>; 44652159d27SMasahiro Yamada interrupts = <0 45 4>; 44752159d27SMasahiro Yamada pinctrl-names = "default"; 44852159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_i2c4>; 449cd62214dSMasahiro Yamada clocks = <&peri_clk 8>; 450b443fb42SMasahiro Yamada resets = <&peri_rst 8>; 45152159d27SMasahiro Yamada clock-frequency = <100000>; 45252159d27SMasahiro Yamada }; 45352159d27SMasahiro Yamada 45452159d27SMasahiro Yamada i2c5: i2c@58785000 { 45552159d27SMasahiro Yamada compatible = "socionext,uniphier-fi2c"; 45652159d27SMasahiro Yamada reg = <0x58785000 0x80>; 45752159d27SMasahiro Yamada #address-cells = <1>; 45852159d27SMasahiro Yamada #size-cells = <0>; 45952159d27SMasahiro Yamada interrupts = <0 25 4>; 460cd62214dSMasahiro Yamada clocks = <&peri_clk 9>; 461b443fb42SMasahiro Yamada resets = <&peri_rst 9>; 46252159d27SMasahiro Yamada clock-frequency = <400000>; 46352159d27SMasahiro Yamada }; 46452159d27SMasahiro Yamada 46552159d27SMasahiro Yamada system_bus: system-bus@58c00000 { 46652159d27SMasahiro Yamada compatible = "socionext,uniphier-system-bus"; 46752159d27SMasahiro Yamada status = "disabled"; 46852159d27SMasahiro Yamada reg = <0x58c00000 0x400>; 46952159d27SMasahiro Yamada #address-cells = <2>; 47052159d27SMasahiro Yamada #size-cells = <1>; 47152159d27SMasahiro Yamada pinctrl-names = "default"; 47252159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_system_bus>; 47352159d27SMasahiro Yamada }; 47452159d27SMasahiro Yamada 475abb6ac25SMasahiro Yamada smpctrl@59801000 { 47652159d27SMasahiro Yamada compatible = "socionext,uniphier-smpctrl"; 47752159d27SMasahiro Yamada reg = <0x59801000 0x400>; 47852159d27SMasahiro Yamada }; 47952159d27SMasahiro Yamada 480cd62214dSMasahiro Yamada sdctrl@59810000 { 481cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-sdctrl", 48252159d27SMasahiro Yamada "simple-mfd", "syscon"; 4836c9e46efSMasahiro Yamada reg = <0x59810000 0x400>; 48452159d27SMasahiro Yamada 485cd62214dSMasahiro Yamada sd_clk: clock { 486cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-sd-clock"; 48752159d27SMasahiro Yamada #clock-cells = <1>; 48852159d27SMasahiro Yamada }; 48952159d27SMasahiro Yamada 490cd62214dSMasahiro Yamada sd_rst: reset { 491cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-sd-reset"; 49252159d27SMasahiro Yamada #reset-cells = <1>; 49352159d27SMasahiro Yamada }; 49452159d27SMasahiro Yamada }; 49552159d27SMasahiro Yamada 49652159d27SMasahiro Yamada perictrl@59820000 { 497cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-perictrl", 49852159d27SMasahiro Yamada "simple-mfd", "syscon"; 49952159d27SMasahiro Yamada reg = <0x59820000 0x200>; 50052159d27SMasahiro Yamada 50152159d27SMasahiro Yamada peri_clk: clock { 50252159d27SMasahiro Yamada compatible = "socionext,uniphier-ld20-peri-clock"; 50352159d27SMasahiro Yamada #clock-cells = <1>; 50452159d27SMasahiro Yamada }; 50552159d27SMasahiro Yamada 50652159d27SMasahiro Yamada peri_rst: reset { 50752159d27SMasahiro Yamada compatible = "socionext,uniphier-ld20-peri-reset"; 50852159d27SMasahiro Yamada #reset-cells = <1>; 50952159d27SMasahiro Yamada }; 51052159d27SMasahiro Yamada }; 51152159d27SMasahiro Yamada 512cd62214dSMasahiro Yamada emmc: sdhc@5a000000 { 5137a6139c9SMasahiro Yamada compatible = "socionext,uniphier-sd4hc", "cdns,sd4hc"; 514cd62214dSMasahiro Yamada reg = <0x5a000000 0x400>; 515cd62214dSMasahiro Yamada interrupts = <0 78 4>; 516cd62214dSMasahiro Yamada pinctrl-names = "default"; 51733aae6b5SMasahiro Yamada pinctrl-0 = <&pinctrl_emmc>; 518cd62214dSMasahiro Yamada clocks = <&sys_clk 4>; 519b443fb42SMasahiro Yamada resets = <&sys_rst 4>; 520cd62214dSMasahiro Yamada bus-width = <8>; 521cd62214dSMasahiro Yamada mmc-ddr-1_8v; 522cd62214dSMasahiro Yamada mmc-hs200-1_8v; 523b443fb42SMasahiro Yamada mmc-pwrseq = <&emmc_pwrseq>; 524c3d3e2a1SMasahiro Yamada cdns,phy-input-delay-legacy = <9>; 5254e7f8de4SMasahiro Yamada cdns,phy-input-delay-mmc-highspeed = <2>; 5264e7f8de4SMasahiro Yamada cdns,phy-input-delay-mmc-ddr = <3>; 5274e7f8de4SMasahiro Yamada cdns,phy-dll-delay-sdclk = <21>; 5284e7f8de4SMasahiro Yamada cdns,phy-dll-delay-sdclk-hsmmc = <21>; 529cd62214dSMasahiro Yamada }; 530cd62214dSMasahiro Yamada 53152159d27SMasahiro Yamada sd: sdhc@5a400000 { 532*c3ab1e11SMasahiro Yamada compatible = "socionext,uniphier-sd-v3.1.1"; 53352159d27SMasahiro Yamada status = "disabled"; 53452159d27SMasahiro Yamada reg = <0x5a400000 0x800>; 53552159d27SMasahiro Yamada interrupts = <0 76 4>; 53652159d27SMasahiro Yamada pinctrl-names = "default"; 53752159d27SMasahiro Yamada pinctrl-0 = <&pinctrl_sd>; 538cd62214dSMasahiro Yamada clocks = <&sd_clk 0>; 53952159d27SMasahiro Yamada reset-names = "host"; 540cd62214dSMasahiro Yamada resets = <&sd_rst 0>; 54152159d27SMasahiro Yamada bus-width = <4>; 542cd62214dSMasahiro Yamada cap-sd-highspeed; 54352159d27SMasahiro Yamada }; 54452159d27SMasahiro Yamada 5453e98fc12SMasahiro Yamada soc_glue: soc-glue@5f800000 { 546cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-soc-glue", 54752159d27SMasahiro Yamada "simple-mfd", "syscon"; 54852159d27SMasahiro Yamada reg = <0x5f800000 0x2000>; 54952159d27SMasahiro Yamada 55052159d27SMasahiro Yamada pinctrl: pinctrl { 55152159d27SMasahiro Yamada compatible = "socionext,uniphier-ld20-pinctrl"; 55252159d27SMasahiro Yamada }; 55352159d27SMasahiro Yamada }; 55452159d27SMasahiro Yamada 555b443fb42SMasahiro Yamada soc-glue@5f900000 { 556b443fb42SMasahiro Yamada compatible = "socionext,uniphier-ld20-soc-glue-debug", 557b443fb42SMasahiro Yamada "simple-mfd"; 558b443fb42SMasahiro Yamada #address-cells = <1>; 559b443fb42SMasahiro Yamada #size-cells = <1>; 560b443fb42SMasahiro Yamada ranges = <0 0x5f900000 0x2000>; 561b443fb42SMasahiro Yamada 562b443fb42SMasahiro Yamada efuse@100 { 563b443fb42SMasahiro Yamada compatible = "socionext,uniphier-efuse"; 564b443fb42SMasahiro Yamada reg = <0x100 0x28>; 565b443fb42SMasahiro Yamada }; 566b443fb42SMasahiro Yamada 567b443fb42SMasahiro Yamada efuse@200 { 568b443fb42SMasahiro Yamada compatible = "socionext,uniphier-efuse"; 569b443fb42SMasahiro Yamada reg = <0x200 0x68>; 570b443fb42SMasahiro Yamada }; 571b443fb42SMasahiro Yamada }; 572b443fb42SMasahiro Yamada 5736c9e46efSMasahiro Yamada aidet: aidet@5fc20000 { 5746c9e46efSMasahiro Yamada compatible = "socionext,uniphier-ld20-aidet"; 57552159d27SMasahiro Yamada reg = <0x5fc20000 0x200>; 5766c9e46efSMasahiro Yamada interrupt-controller; 5776c9e46efSMasahiro Yamada #interrupt-cells = <2>; 57852159d27SMasahiro Yamada }; 57952159d27SMasahiro Yamada 58052159d27SMasahiro Yamada gic: interrupt-controller@5fe00000 { 58152159d27SMasahiro Yamada compatible = "arm,gic-v3"; 58252159d27SMasahiro Yamada reg = <0x5fe00000 0x10000>, /* GICD */ 58352159d27SMasahiro Yamada <0x5fe80000 0x80000>; /* GICR */ 58452159d27SMasahiro Yamada interrupt-controller; 58552159d27SMasahiro Yamada #interrupt-cells = <3>; 58652159d27SMasahiro Yamada interrupts = <1 9 4>; 58752159d27SMasahiro Yamada }; 58852159d27SMasahiro Yamada 58952159d27SMasahiro Yamada sysctrl@61840000 { 590cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-sysctrl", 59152159d27SMasahiro Yamada "simple-mfd", "syscon"; 592cd62214dSMasahiro Yamada reg = <0x61840000 0x10000>; 59352159d27SMasahiro Yamada 59452159d27SMasahiro Yamada sys_clk: clock { 59552159d27SMasahiro Yamada compatible = "socionext,uniphier-ld20-clock"; 59652159d27SMasahiro Yamada #clock-cells = <1>; 59752159d27SMasahiro Yamada }; 59852159d27SMasahiro Yamada 59952159d27SMasahiro Yamada sys_rst: reset { 60052159d27SMasahiro Yamada compatible = "socionext,uniphier-ld20-reset"; 60152159d27SMasahiro Yamada #reset-cells = <1>; 60252159d27SMasahiro Yamada }; 6036c9e46efSMasahiro Yamada 6046c9e46efSMasahiro Yamada watchdog { 6056c9e46efSMasahiro Yamada compatible = "socionext,uniphier-wdt"; 6066c9e46efSMasahiro Yamada }; 607b443fb42SMasahiro Yamada 608b443fb42SMasahiro Yamada pvtctl: pvtctl { 609b443fb42SMasahiro Yamada compatible = "socionext,uniphier-ld20-thermal"; 610b443fb42SMasahiro Yamada interrupts = <0 3 4>; 611b443fb42SMasahiro Yamada #thermal-sensor-cells = <0>; 612b443fb42SMasahiro Yamada socionext,tmod-calibration = <0x0f22 0x68ee>; 613b443fb42SMasahiro Yamada }; 61452159d27SMasahiro Yamada }; 615cd62214dSMasahiro Yamada 6163e98fc12SMasahiro Yamada eth: ethernet@65000000 { 6173e98fc12SMasahiro Yamada compatible = "socionext,uniphier-ld20-ave4"; 6183e98fc12SMasahiro Yamada status = "disabled"; 6193e98fc12SMasahiro Yamada reg = <0x65000000 0x8500>; 6203e98fc12SMasahiro Yamada interrupts = <0 66 4>; 6213e98fc12SMasahiro Yamada pinctrl-names = "default"; 6223e98fc12SMasahiro Yamada pinctrl-0 = <&pinctrl_ether_rgmii>; 6233c0fa6ceSKunihiko Hayashi clock-names = "ether"; 6243e98fc12SMasahiro Yamada clocks = <&sys_clk 6>; 6253c0fa6ceSKunihiko Hayashi reset-names = "ether"; 6263e98fc12SMasahiro Yamada resets = <&sys_rst 6>; 6273e98fc12SMasahiro Yamada phy-mode = "rgmii"; 6283e98fc12SMasahiro Yamada local-mac-address = [00 00 00 00 00 00]; 62969b3d4e9SKunihiko Hayashi socionext,syscon-phy-mode = <&soc_glue 0>; 6303e98fc12SMasahiro Yamada 6313e98fc12SMasahiro Yamada mdio: mdio { 6323e98fc12SMasahiro Yamada #address-cells = <1>; 6333e98fc12SMasahiro Yamada #size-cells = <0>; 6343e98fc12SMasahiro Yamada }; 6353e98fc12SMasahiro Yamada }; 6363e98fc12SMasahiro Yamada 637cd62214dSMasahiro Yamada usb: usb@65b00000 { 638cd62214dSMasahiro Yamada compatible = "socionext,uniphier-ld20-dwc3"; 639cd62214dSMasahiro Yamada reg = <0x65b00000 0x1000>; 640cd62214dSMasahiro Yamada #address-cells = <1>; 641cd62214dSMasahiro Yamada #size-cells = <1>; 642cd62214dSMasahiro Yamada ranges; 643cd62214dSMasahiro Yamada pinctrl-names = "default"; 644cd62214dSMasahiro Yamada pinctrl-0 = <&pinctrl_usb0>, <&pinctrl_usb1>, 645cd62214dSMasahiro Yamada <&pinctrl_usb2>, <&pinctrl_usb3>; 646cd62214dSMasahiro Yamada dwc3@65a00000 { 647cd62214dSMasahiro Yamada compatible = "snps,dwc3"; 648cd62214dSMasahiro Yamada reg = <0x65a00000 0x10000>; 649cd62214dSMasahiro Yamada interrupts = <0 134 4>; 6503444d1d4SMasahiro Yamada dr_mode = "host"; 651cd62214dSMasahiro Yamada tx-fifo-resize; 652cd62214dSMasahiro Yamada }; 653cd62214dSMasahiro Yamada }; 654cd62214dSMasahiro Yamada 655cd62214dSMasahiro Yamada nand: nand@68000000 { 6564e7f8de4SMasahiro Yamada compatible = "socionext,uniphier-denali-nand-v5b"; 657cd62214dSMasahiro Yamada status = "disabled"; 658cd62214dSMasahiro Yamada reg-names = "nand_data", "denali_reg"; 659cd62214dSMasahiro Yamada reg = <0x68000000 0x20>, <0x68100000 0x1000>; 660cd62214dSMasahiro Yamada interrupts = <0 65 4>; 661cd62214dSMasahiro Yamada pinctrl-names = "default"; 662cd62214dSMasahiro Yamada pinctrl-0 = <&pinctrl_nand>; 663cd62214dSMasahiro Yamada clocks = <&sys_clk 2>; 664b443fb42SMasahiro Yamada resets = <&sys_rst 2>; 665cd62214dSMasahiro Yamada }; 66652159d27SMasahiro Yamada }; 66752159d27SMasahiro Yamada}; 66852159d27SMasahiro Yamada 6696c9e46efSMasahiro Yamada#include "uniphier-pinctrl.dtsi" 6703e98fc12SMasahiro Yamada 6713e98fc12SMasahiro Yamada&pinctrl_aout1 { 6723e98fc12SMasahiro Yamada drive-strength = <4>; /* default: 3.5mA */ 6733e98fc12SMasahiro Yamada 6743e98fc12SMasahiro Yamada ao1dacck { 6753e98fc12SMasahiro Yamada pins = "AO1DACCK"; 6763e98fc12SMasahiro Yamada drive-strength = <5>; /* 5mA */ 6773e98fc12SMasahiro Yamada }; 6783e98fc12SMasahiro Yamada}; 6793e98fc12SMasahiro Yamada 6803e98fc12SMasahiro Yamada&pinctrl_aoutiec1 { 6813e98fc12SMasahiro Yamada drive-strength = <4>; /* default: 3.5mA */ 6823e98fc12SMasahiro Yamada 6833e98fc12SMasahiro Yamada ao1arc { 6843e98fc12SMasahiro Yamada pins = "AO1ARC"; 6853e98fc12SMasahiro Yamada drive-strength = <11>; /* 11mA */ 6863e98fc12SMasahiro Yamada }; 6873e98fc12SMasahiro Yamada}; 688