1f51746adSGeert Uytterhoeven// SPDX-License-Identifier: GPL-2.0 2f51746adSGeert Uytterhoeven/* 3f51746adSGeert Uytterhoeven * Device Tree Source for the R-Car M3-W+ (R8A77961) SoC 4f51746adSGeert Uytterhoeven * 5f51746adSGeert Uytterhoeven * Copyright (C) 2016-2017 Renesas Electronics Corp. 6f51746adSGeert Uytterhoeven */ 7f51746adSGeert Uytterhoeven 8f51746adSGeert Uytterhoeven#include <dt-bindings/clock/r8a77961-cpg-mssr.h> 9f51746adSGeert Uytterhoeven#include <dt-bindings/interrupt-controller/arm-gic.h> 10f51746adSGeert Uytterhoeven#include <dt-bindings/power/r8a77961-sysc.h> 11f51746adSGeert Uytterhoeven 12f51746adSGeert Uytterhoeven#define CPG_AUDIO_CLK_I R8A77961_CLK_S0D4 13f51746adSGeert Uytterhoeven 14f51746adSGeert Uytterhoeven/ { 15f51746adSGeert Uytterhoeven compatible = "renesas,r8a77961"; 16f51746adSGeert Uytterhoeven #address-cells = <2>; 17f51746adSGeert Uytterhoeven #size-cells = <2>; 18f51746adSGeert Uytterhoeven 19f51746adSGeert Uytterhoeven /* 20f51746adSGeert Uytterhoeven * The external audio clocks are configured as 0 Hz fixed frequency 21f51746adSGeert Uytterhoeven * clocks by default. 22f51746adSGeert Uytterhoeven * Boards that provide audio clocks should override them. 23f51746adSGeert Uytterhoeven */ 24f51746adSGeert Uytterhoeven audio_clk_a: audio_clk_a { 25f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 26f51746adSGeert Uytterhoeven #clock-cells = <0>; 27f51746adSGeert Uytterhoeven clock-frequency = <0>; 28f51746adSGeert Uytterhoeven }; 29f51746adSGeert Uytterhoeven 30f51746adSGeert Uytterhoeven audio_clk_b: audio_clk_b { 31f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 32f51746adSGeert Uytterhoeven #clock-cells = <0>; 33f51746adSGeert Uytterhoeven clock-frequency = <0>; 34f51746adSGeert Uytterhoeven }; 35f51746adSGeert Uytterhoeven 36f51746adSGeert Uytterhoeven audio_clk_c: audio_clk_c { 37f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 38f51746adSGeert Uytterhoeven #clock-cells = <0>; 39f51746adSGeert Uytterhoeven clock-frequency = <0>; 40f51746adSGeert Uytterhoeven }; 41f51746adSGeert Uytterhoeven 42f51746adSGeert Uytterhoeven /* External CAN clock - to be overridden by boards that provide it */ 43f51746adSGeert Uytterhoeven can_clk: can { 44f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 45f51746adSGeert Uytterhoeven #clock-cells = <0>; 46f51746adSGeert Uytterhoeven clock-frequency = <0>; 47f51746adSGeert Uytterhoeven }; 48f51746adSGeert Uytterhoeven 49f51746adSGeert Uytterhoeven cluster0_opp: opp_table0 { 50f51746adSGeert Uytterhoeven compatible = "operating-points-v2"; 51f51746adSGeert Uytterhoeven opp-shared; 52f51746adSGeert Uytterhoeven 53f51746adSGeert Uytterhoeven opp-500000000 { 54f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <500000000>; 55f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 56f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 57f51746adSGeert Uytterhoeven }; 58f51746adSGeert Uytterhoeven opp-1000000000 { 59f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1000000000>; 60f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 61f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 62f51746adSGeert Uytterhoeven }; 63f51746adSGeert Uytterhoeven opp-1500000000 { 64f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1500000000>; 65f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 66f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 67f51746adSGeert Uytterhoeven }; 68f51746adSGeert Uytterhoeven opp-1600000000 { 69f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1600000000>; 70f51746adSGeert Uytterhoeven opp-microvolt = <900000>; 71f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 72f51746adSGeert Uytterhoeven turbo-mode; 73f51746adSGeert Uytterhoeven }; 74f51746adSGeert Uytterhoeven opp-1700000000 { 75f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1700000000>; 76f51746adSGeert Uytterhoeven opp-microvolt = <900000>; 77f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 78f51746adSGeert Uytterhoeven turbo-mode; 79f51746adSGeert Uytterhoeven }; 80f51746adSGeert Uytterhoeven opp-1800000000 { 81f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1800000000>; 82f51746adSGeert Uytterhoeven opp-microvolt = <960000>; 83f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 84f51746adSGeert Uytterhoeven turbo-mode; 85f51746adSGeert Uytterhoeven }; 86f51746adSGeert Uytterhoeven }; 87f51746adSGeert Uytterhoeven 88f51746adSGeert Uytterhoeven cluster1_opp: opp_table1 { 89f51746adSGeert Uytterhoeven compatible = "operating-points-v2"; 90f51746adSGeert Uytterhoeven opp-shared; 91f51746adSGeert Uytterhoeven 92f51746adSGeert Uytterhoeven opp-800000000 { 93f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <800000000>; 94f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 95f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 96f51746adSGeert Uytterhoeven }; 97f51746adSGeert Uytterhoeven opp-1000000000 { 98f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1000000000>; 99f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 100f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 101f51746adSGeert Uytterhoeven }; 102f51746adSGeert Uytterhoeven opp-1200000000 { 103f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1200000000>; 104f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 105f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 106f51746adSGeert Uytterhoeven }; 107f51746adSGeert Uytterhoeven opp-1300000000 { 108f51746adSGeert Uytterhoeven opp-hz = /bits/ 64 <1300000000>; 109f51746adSGeert Uytterhoeven opp-microvolt = <820000>; 110f51746adSGeert Uytterhoeven clock-latency-ns = <300000>; 111f51746adSGeert Uytterhoeven turbo-mode; 112f51746adSGeert Uytterhoeven }; 113f51746adSGeert Uytterhoeven }; 114f51746adSGeert Uytterhoeven 115f51746adSGeert Uytterhoeven cpus { 116f51746adSGeert Uytterhoeven #address-cells = <1>; 117f51746adSGeert Uytterhoeven #size-cells = <0>; 118f51746adSGeert Uytterhoeven 119f51746adSGeert Uytterhoeven cpu-map { 120f51746adSGeert Uytterhoeven cluster0 { 121f51746adSGeert Uytterhoeven core0 { 122f51746adSGeert Uytterhoeven cpu = <&a57_0>; 123f51746adSGeert Uytterhoeven }; 124f51746adSGeert Uytterhoeven core1 { 125f51746adSGeert Uytterhoeven cpu = <&a57_1>; 126f51746adSGeert Uytterhoeven }; 127f51746adSGeert Uytterhoeven }; 128f51746adSGeert Uytterhoeven 129f51746adSGeert Uytterhoeven cluster1 { 130f51746adSGeert Uytterhoeven core0 { 131f51746adSGeert Uytterhoeven cpu = <&a53_0>; 132f51746adSGeert Uytterhoeven }; 133f51746adSGeert Uytterhoeven core1 { 134f51746adSGeert Uytterhoeven cpu = <&a53_1>; 135f51746adSGeert Uytterhoeven }; 136f51746adSGeert Uytterhoeven core2 { 137f51746adSGeert Uytterhoeven cpu = <&a53_2>; 138f51746adSGeert Uytterhoeven }; 139f51746adSGeert Uytterhoeven core3 { 140f51746adSGeert Uytterhoeven cpu = <&a53_3>; 141f51746adSGeert Uytterhoeven }; 142f51746adSGeert Uytterhoeven }; 143f51746adSGeert Uytterhoeven }; 144f51746adSGeert Uytterhoeven 145f51746adSGeert Uytterhoeven a57_0: cpu@0 { 146f51746adSGeert Uytterhoeven compatible = "arm,cortex-a57"; 147f51746adSGeert Uytterhoeven reg = <0x0>; 148f51746adSGeert Uytterhoeven device_type = "cpu"; 149f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA57_CPU0>; 150f51746adSGeert Uytterhoeven next-level-cache = <&L2_CA57>; 151f51746adSGeert Uytterhoeven enable-method = "psci"; 152f51746adSGeert Uytterhoeven cpu-idle-states = <&CPU_SLEEP_0>; 153f51746adSGeert Uytterhoeven dynamic-power-coefficient = <854>; 154f51746adSGeert Uytterhoeven clocks = <&cpg CPG_CORE R8A77961_CLK_Z>; 155f51746adSGeert Uytterhoeven operating-points-v2 = <&cluster0_opp>; 156f51746adSGeert Uytterhoeven capacity-dmips-mhz = <1024>; 157f51746adSGeert Uytterhoeven #cooling-cells = <2>; 158f51746adSGeert Uytterhoeven }; 159f51746adSGeert Uytterhoeven 160f51746adSGeert Uytterhoeven a57_1: cpu@1 { 161f51746adSGeert Uytterhoeven compatible = "arm,cortex-a57"; 162f51746adSGeert Uytterhoeven reg = <0x1>; 163f51746adSGeert Uytterhoeven device_type = "cpu"; 164f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA57_CPU1>; 165f51746adSGeert Uytterhoeven next-level-cache = <&L2_CA57>; 166f51746adSGeert Uytterhoeven enable-method = "psci"; 167f51746adSGeert Uytterhoeven cpu-idle-states = <&CPU_SLEEP_0>; 168f51746adSGeert Uytterhoeven clocks = <&cpg CPG_CORE R8A77961_CLK_Z>; 169f51746adSGeert Uytterhoeven operating-points-v2 = <&cluster0_opp>; 170f51746adSGeert Uytterhoeven capacity-dmips-mhz = <1024>; 171f51746adSGeert Uytterhoeven #cooling-cells = <2>; 172f51746adSGeert Uytterhoeven }; 173f51746adSGeert Uytterhoeven 174f51746adSGeert Uytterhoeven a53_0: cpu@100 { 175f51746adSGeert Uytterhoeven compatible = "arm,cortex-a53"; 176f51746adSGeert Uytterhoeven reg = <0x100>; 177f51746adSGeert Uytterhoeven device_type = "cpu"; 178f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA53_CPU0>; 179f51746adSGeert Uytterhoeven next-level-cache = <&L2_CA53>; 180f51746adSGeert Uytterhoeven enable-method = "psci"; 181f51746adSGeert Uytterhoeven cpu-idle-states = <&CPU_SLEEP_1>; 182f51746adSGeert Uytterhoeven #cooling-cells = <2>; 183f51746adSGeert Uytterhoeven dynamic-power-coefficient = <277>; 184f51746adSGeert Uytterhoeven clocks = <&cpg CPG_CORE R8A77961_CLK_Z2>; 185f51746adSGeert Uytterhoeven operating-points-v2 = <&cluster1_opp>; 186f51746adSGeert Uytterhoeven capacity-dmips-mhz = <535>; 187f51746adSGeert Uytterhoeven }; 188f51746adSGeert Uytterhoeven 189f51746adSGeert Uytterhoeven a53_1: cpu@101 { 190f51746adSGeert Uytterhoeven compatible = "arm,cortex-a53"; 191f51746adSGeert Uytterhoeven reg = <0x101>; 192f51746adSGeert Uytterhoeven device_type = "cpu"; 193f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA53_CPU1>; 194f51746adSGeert Uytterhoeven next-level-cache = <&L2_CA53>; 195f51746adSGeert Uytterhoeven enable-method = "psci"; 196f51746adSGeert Uytterhoeven cpu-idle-states = <&CPU_SLEEP_1>; 197f51746adSGeert Uytterhoeven clocks = <&cpg CPG_CORE R8A77961_CLK_Z2>; 198f51746adSGeert Uytterhoeven operating-points-v2 = <&cluster1_opp>; 199f51746adSGeert Uytterhoeven capacity-dmips-mhz = <535>; 200f51746adSGeert Uytterhoeven }; 201f51746adSGeert Uytterhoeven 202f51746adSGeert Uytterhoeven a53_2: cpu@102 { 203f51746adSGeert Uytterhoeven compatible = "arm,cortex-a53"; 204f51746adSGeert Uytterhoeven reg = <0x102>; 205f51746adSGeert Uytterhoeven device_type = "cpu"; 206f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA53_CPU2>; 207f51746adSGeert Uytterhoeven next-level-cache = <&L2_CA53>; 208f51746adSGeert Uytterhoeven enable-method = "psci"; 209f51746adSGeert Uytterhoeven cpu-idle-states = <&CPU_SLEEP_1>; 210f51746adSGeert Uytterhoeven clocks = <&cpg CPG_CORE R8A77961_CLK_Z2>; 211f51746adSGeert Uytterhoeven operating-points-v2 = <&cluster1_opp>; 212f51746adSGeert Uytterhoeven capacity-dmips-mhz = <535>; 213f51746adSGeert Uytterhoeven }; 214f51746adSGeert Uytterhoeven 215f51746adSGeert Uytterhoeven a53_3: cpu@103 { 216f51746adSGeert Uytterhoeven compatible = "arm,cortex-a53"; 217f51746adSGeert Uytterhoeven reg = <0x103>; 218f51746adSGeert Uytterhoeven device_type = "cpu"; 219f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA53_CPU3>; 220f51746adSGeert Uytterhoeven next-level-cache = <&L2_CA53>; 221f51746adSGeert Uytterhoeven enable-method = "psci"; 222f51746adSGeert Uytterhoeven cpu-idle-states = <&CPU_SLEEP_1>; 223f51746adSGeert Uytterhoeven clocks = <&cpg CPG_CORE R8A77961_CLK_Z2>; 224f51746adSGeert Uytterhoeven operating-points-v2 = <&cluster1_opp>; 225f51746adSGeert Uytterhoeven capacity-dmips-mhz = <535>; 226f51746adSGeert Uytterhoeven }; 227f51746adSGeert Uytterhoeven 228f51746adSGeert Uytterhoeven L2_CA57: cache-controller-0 { 229f51746adSGeert Uytterhoeven compatible = "cache"; 230f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA57_SCU>; 231f51746adSGeert Uytterhoeven cache-unified; 232f51746adSGeert Uytterhoeven cache-level = <2>; 233f51746adSGeert Uytterhoeven }; 234f51746adSGeert Uytterhoeven 235f51746adSGeert Uytterhoeven L2_CA53: cache-controller-1 { 236f51746adSGeert Uytterhoeven compatible = "cache"; 237f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_CA53_SCU>; 238f51746adSGeert Uytterhoeven cache-unified; 239f51746adSGeert Uytterhoeven cache-level = <2>; 240f51746adSGeert Uytterhoeven }; 241f51746adSGeert Uytterhoeven 242f51746adSGeert Uytterhoeven idle-states { 243f51746adSGeert Uytterhoeven entry-method = "psci"; 244f51746adSGeert Uytterhoeven 245f51746adSGeert Uytterhoeven CPU_SLEEP_0: cpu-sleep-0 { 246f51746adSGeert Uytterhoeven compatible = "arm,idle-state"; 247f51746adSGeert Uytterhoeven arm,psci-suspend-param = <0x0010000>; 248f51746adSGeert Uytterhoeven local-timer-stop; 249f51746adSGeert Uytterhoeven entry-latency-us = <400>; 250f51746adSGeert Uytterhoeven exit-latency-us = <500>; 251f51746adSGeert Uytterhoeven min-residency-us = <4000>; 252f51746adSGeert Uytterhoeven }; 253f51746adSGeert Uytterhoeven 254f51746adSGeert Uytterhoeven CPU_SLEEP_1: cpu-sleep-1 { 255f51746adSGeert Uytterhoeven compatible = "arm,idle-state"; 256f51746adSGeert Uytterhoeven arm,psci-suspend-param = <0x0010000>; 257f51746adSGeert Uytterhoeven local-timer-stop; 258f51746adSGeert Uytterhoeven entry-latency-us = <700>; 259f51746adSGeert Uytterhoeven exit-latency-us = <700>; 260f51746adSGeert Uytterhoeven min-residency-us = <5000>; 261f51746adSGeert Uytterhoeven }; 262f51746adSGeert Uytterhoeven }; 263f51746adSGeert Uytterhoeven }; 264f51746adSGeert Uytterhoeven 265f51746adSGeert Uytterhoeven extal_clk: extal { 266f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 267f51746adSGeert Uytterhoeven #clock-cells = <0>; 268f51746adSGeert Uytterhoeven /* This value must be overridden by the board */ 269f51746adSGeert Uytterhoeven clock-frequency = <0>; 270f51746adSGeert Uytterhoeven }; 271f51746adSGeert Uytterhoeven 272f51746adSGeert Uytterhoeven extalr_clk: extalr { 273f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 274f51746adSGeert Uytterhoeven #clock-cells = <0>; 275f51746adSGeert Uytterhoeven /* This value must be overridden by the board */ 276f51746adSGeert Uytterhoeven clock-frequency = <0>; 277f51746adSGeert Uytterhoeven }; 278f51746adSGeert Uytterhoeven 279f51746adSGeert Uytterhoeven /* External PCIe clock - can be overridden by the board */ 280f51746adSGeert Uytterhoeven pcie_bus_clk: pcie_bus { 281f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 282f51746adSGeert Uytterhoeven #clock-cells = <0>; 283f51746adSGeert Uytterhoeven clock-frequency = <0>; 284f51746adSGeert Uytterhoeven }; 285f51746adSGeert Uytterhoeven 286f51746adSGeert Uytterhoeven pmu_a53 { 287f51746adSGeert Uytterhoeven compatible = "arm,cortex-a53-pmu"; 288f51746adSGeert Uytterhoeven interrupts-extended = <&gic GIC_SPI 84 IRQ_TYPE_LEVEL_HIGH>, 289f51746adSGeert Uytterhoeven <&gic GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>, 290f51746adSGeert Uytterhoeven <&gic GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>, 291f51746adSGeert Uytterhoeven <&gic GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; 292f51746adSGeert Uytterhoeven interrupt-affinity = <&a53_0>, <&a53_1>, <&a53_2>, <&a53_3>; 293f51746adSGeert Uytterhoeven }; 294f51746adSGeert Uytterhoeven 295f51746adSGeert Uytterhoeven pmu_a57 { 296f51746adSGeert Uytterhoeven compatible = "arm,cortex-a57-pmu"; 297f51746adSGeert Uytterhoeven interrupts-extended = <&gic GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, 298f51746adSGeert Uytterhoeven <&gic GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 299f51746adSGeert Uytterhoeven interrupt-affinity = <&a57_0>, <&a57_1>; 300f51746adSGeert Uytterhoeven }; 301f51746adSGeert Uytterhoeven 302f51746adSGeert Uytterhoeven psci { 303f51746adSGeert Uytterhoeven compatible = "arm,psci-1.0", "arm,psci-0.2"; 304f51746adSGeert Uytterhoeven method = "smc"; 305f51746adSGeert Uytterhoeven }; 306f51746adSGeert Uytterhoeven 307f51746adSGeert Uytterhoeven /* External SCIF clock - to be overridden by boards that provide it */ 308f51746adSGeert Uytterhoeven scif_clk: scif { 309f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 310f51746adSGeert Uytterhoeven #clock-cells = <0>; 311f51746adSGeert Uytterhoeven clock-frequency = <0>; 312f51746adSGeert Uytterhoeven }; 313f51746adSGeert Uytterhoeven 314f51746adSGeert Uytterhoeven soc { 315f51746adSGeert Uytterhoeven compatible = "simple-bus"; 316f51746adSGeert Uytterhoeven interrupt-parent = <&gic>; 317f51746adSGeert Uytterhoeven #address-cells = <2>; 318f51746adSGeert Uytterhoeven #size-cells = <2>; 319f51746adSGeert Uytterhoeven ranges; 320f51746adSGeert Uytterhoeven 321f51746adSGeert Uytterhoeven rwdt: watchdog@e6020000 { 32236065b07SGeert Uytterhoeven compatible = "renesas,r8a77961-wdt", 32336065b07SGeert Uytterhoeven "renesas,rcar-gen3-wdt"; 324f51746adSGeert Uytterhoeven reg = <0 0xe6020000 0 0x0c>; 32536065b07SGeert Uytterhoeven clocks = <&cpg CPG_MOD 402>; 32636065b07SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 32736065b07SGeert Uytterhoeven resets = <&cpg 402>; 32836065b07SGeert Uytterhoeven status = "disabled"; 329f51746adSGeert Uytterhoeven }; 330f51746adSGeert Uytterhoeven 331c6ef2b34SGeert Uytterhoeven gpio0: gpio@e6050000 { 332c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 333c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 334c6ef2b34SGeert Uytterhoeven reg = <0 0xe6050000 0 0x50>; 335c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 336f51746adSGeert Uytterhoeven #gpio-cells = <2>; 337f51746adSGeert Uytterhoeven gpio-controller; 338c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 0 16>; 339f51746adSGeert Uytterhoeven #interrupt-cells = <2>; 340f51746adSGeert Uytterhoeven interrupt-controller; 341c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 912>; 342c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 343c6ef2b34SGeert Uytterhoeven resets = <&cpg 912>; 344c6ef2b34SGeert Uytterhoeven }; 345c6ef2b34SGeert Uytterhoeven 346c6ef2b34SGeert Uytterhoeven gpio1: gpio@e6051000 { 347c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 348c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 349c6ef2b34SGeert Uytterhoeven reg = <0 0xe6051000 0 0x50>; 350c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>; 351c6ef2b34SGeert Uytterhoeven #gpio-cells = <2>; 352c6ef2b34SGeert Uytterhoeven gpio-controller; 353c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 32 29>; 354c6ef2b34SGeert Uytterhoeven #interrupt-cells = <2>; 355c6ef2b34SGeert Uytterhoeven interrupt-controller; 356c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 911>; 357c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 358c6ef2b34SGeert Uytterhoeven resets = <&cpg 911>; 359c6ef2b34SGeert Uytterhoeven }; 360c6ef2b34SGeert Uytterhoeven 361c6ef2b34SGeert Uytterhoeven gpio2: gpio@e6052000 { 362c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 363c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 364c6ef2b34SGeert Uytterhoeven reg = <0 0xe6052000 0 0x50>; 365c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 366c6ef2b34SGeert Uytterhoeven #gpio-cells = <2>; 367c6ef2b34SGeert Uytterhoeven gpio-controller; 368c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 64 15>; 369c6ef2b34SGeert Uytterhoeven #interrupt-cells = <2>; 370c6ef2b34SGeert Uytterhoeven interrupt-controller; 371c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 910>; 372c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 373c6ef2b34SGeert Uytterhoeven resets = <&cpg 910>; 374f51746adSGeert Uytterhoeven }; 375f51746adSGeert Uytterhoeven 376f51746adSGeert Uytterhoeven gpio3: gpio@e6053000 { 377c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 378c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 379f51746adSGeert Uytterhoeven reg = <0 0xe6053000 0 0x50>; 380c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 381f51746adSGeert Uytterhoeven #gpio-cells = <2>; 382f51746adSGeert Uytterhoeven gpio-controller; 383c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 96 16>; 384f51746adSGeert Uytterhoeven #interrupt-cells = <2>; 385f51746adSGeert Uytterhoeven interrupt-controller; 386c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 909>; 387c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 388c6ef2b34SGeert Uytterhoeven resets = <&cpg 909>; 389f51746adSGeert Uytterhoeven }; 390f51746adSGeert Uytterhoeven 391f51746adSGeert Uytterhoeven gpio4: gpio@e6054000 { 392c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 393c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 394f51746adSGeert Uytterhoeven reg = <0 0xe6054000 0 0x50>; 395c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 396f51746adSGeert Uytterhoeven #gpio-cells = <2>; 397f51746adSGeert Uytterhoeven gpio-controller; 398c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 128 18>; 399f51746adSGeert Uytterhoeven #interrupt-cells = <2>; 400f51746adSGeert Uytterhoeven interrupt-controller; 401c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 908>; 402c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 403c6ef2b34SGeert Uytterhoeven resets = <&cpg 908>; 404f51746adSGeert Uytterhoeven }; 405f51746adSGeert Uytterhoeven 406f51746adSGeert Uytterhoeven gpio5: gpio@e6055000 { 407c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 408c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 409f51746adSGeert Uytterhoeven reg = <0 0xe6055000 0 0x50>; 410c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 9 IRQ_TYPE_LEVEL_HIGH>; 411f51746adSGeert Uytterhoeven #gpio-cells = <2>; 412f51746adSGeert Uytterhoeven gpio-controller; 413c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 160 26>; 414f51746adSGeert Uytterhoeven #interrupt-cells = <2>; 415f51746adSGeert Uytterhoeven interrupt-controller; 416c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 907>; 417c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 418c6ef2b34SGeert Uytterhoeven resets = <&cpg 907>; 419f51746adSGeert Uytterhoeven }; 420f51746adSGeert Uytterhoeven 421f51746adSGeert Uytterhoeven gpio6: gpio@e6055400 { 422c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 423c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 424f51746adSGeert Uytterhoeven reg = <0 0xe6055400 0 0x50>; 425c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 10 IRQ_TYPE_LEVEL_HIGH>; 426f51746adSGeert Uytterhoeven #gpio-cells = <2>; 427f51746adSGeert Uytterhoeven gpio-controller; 428c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 192 32>; 429f51746adSGeert Uytterhoeven #interrupt-cells = <2>; 430f51746adSGeert Uytterhoeven interrupt-controller; 431c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 906>; 432c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 433c6ef2b34SGeert Uytterhoeven resets = <&cpg 906>; 434c6ef2b34SGeert Uytterhoeven }; 435c6ef2b34SGeert Uytterhoeven 436c6ef2b34SGeert Uytterhoeven gpio7: gpio@e6055800 { 437c6ef2b34SGeert Uytterhoeven compatible = "renesas,gpio-r8a77961", 438c6ef2b34SGeert Uytterhoeven "renesas,rcar-gen3-gpio"; 439c6ef2b34SGeert Uytterhoeven reg = <0 0xe6055800 0 0x50>; 440c6ef2b34SGeert Uytterhoeven interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>; 441c6ef2b34SGeert Uytterhoeven #gpio-cells = <2>; 442c6ef2b34SGeert Uytterhoeven gpio-controller; 443c6ef2b34SGeert Uytterhoeven gpio-ranges = <&pfc 0 224 4>; 444c6ef2b34SGeert Uytterhoeven #interrupt-cells = <2>; 445c6ef2b34SGeert Uytterhoeven interrupt-controller; 446c6ef2b34SGeert Uytterhoeven clocks = <&cpg CPG_MOD 905>; 447c6ef2b34SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 448c6ef2b34SGeert Uytterhoeven resets = <&cpg 905>; 449f51746adSGeert Uytterhoeven }; 450f51746adSGeert Uytterhoeven 451f51746adSGeert Uytterhoeven pfc: pin-controller@e6060000 { 452f51746adSGeert Uytterhoeven compatible = "renesas,pfc-r8a77961"; 453f51746adSGeert Uytterhoeven reg = <0 0xe6060000 0 0x50c>; 454f51746adSGeert Uytterhoeven }; 455f51746adSGeert Uytterhoeven 456f51746adSGeert Uytterhoeven cpg: clock-controller@e6150000 { 457f51746adSGeert Uytterhoeven compatible = "renesas,r8a77961-cpg-mssr"; 458f51746adSGeert Uytterhoeven reg = <0 0xe6150000 0 0x1000>; 459f51746adSGeert Uytterhoeven clocks = <&extal_clk>, <&extalr_clk>; 460f51746adSGeert Uytterhoeven clock-names = "extal", "extalr"; 461f51746adSGeert Uytterhoeven #clock-cells = <2>; 462f51746adSGeert Uytterhoeven #power-domain-cells = <0>; 463f51746adSGeert Uytterhoeven #reset-cells = <1>; 464f51746adSGeert Uytterhoeven }; 465f51746adSGeert Uytterhoeven 466f51746adSGeert Uytterhoeven rst: reset-controller@e6160000 { 467f51746adSGeert Uytterhoeven compatible = "renesas,r8a77961-rst"; 468f51746adSGeert Uytterhoeven reg = <0 0xe6160000 0 0x0200>; 469f51746adSGeert Uytterhoeven }; 470f51746adSGeert Uytterhoeven 471f51746adSGeert Uytterhoeven sysc: system-controller@e6180000 { 472f51746adSGeert Uytterhoeven compatible = "renesas,r8a77961-sysc"; 473f51746adSGeert Uytterhoeven reg = <0 0xe6180000 0 0x0400>; 474f51746adSGeert Uytterhoeven #power-domain-cells = <1>; 475f51746adSGeert Uytterhoeven }; 476f51746adSGeert Uytterhoeven 477f51746adSGeert Uytterhoeven intc_ex: interrupt-controller@e61c0000 { 478f51746adSGeert Uytterhoeven #interrupt-cells = <2>; 479f51746adSGeert Uytterhoeven interrupt-controller; 480f51746adSGeert Uytterhoeven reg = <0 0xe61c0000 0 0x200>; 481f51746adSGeert Uytterhoeven /* placeholder */ 482f51746adSGeert Uytterhoeven }; 483f51746adSGeert Uytterhoeven 484f51746adSGeert Uytterhoeven i2c2: i2c@e6510000 { 485f51746adSGeert Uytterhoeven #address-cells = <1>; 486f51746adSGeert Uytterhoeven #size-cells = <0>; 487f51746adSGeert Uytterhoeven reg = <0 0xe6510000 0 0x40>; 488f51746adSGeert Uytterhoeven /* placeholder */ 489f51746adSGeert Uytterhoeven }; 490f51746adSGeert Uytterhoeven 491f51746adSGeert Uytterhoeven i2c4: i2c@e66d8000 { 492f51746adSGeert Uytterhoeven #address-cells = <1>; 493f51746adSGeert Uytterhoeven #size-cells = <0>; 494f51746adSGeert Uytterhoeven reg = <0 0xe66d8000 0 0x40>; 495f51746adSGeert Uytterhoeven /* placeholder */ 496f51746adSGeert Uytterhoeven }; 497f51746adSGeert Uytterhoeven 498f51746adSGeert Uytterhoeven i2c_dvfs: i2c@e60b0000 { 499f51746adSGeert Uytterhoeven #address-cells = <1>; 500f51746adSGeert Uytterhoeven #size-cells = <0>; 501f51746adSGeert Uytterhoeven reg = <0 0xe60b0000 0 0x425>; 502f51746adSGeert Uytterhoeven /* placeholder */ 503f51746adSGeert Uytterhoeven }; 504f51746adSGeert Uytterhoeven 505f51746adSGeert Uytterhoeven hscif1: serial@e6550000 { 506f51746adSGeert Uytterhoeven reg = <0 0xe6550000 0 0x60>; 507f51746adSGeert Uytterhoeven /* placeholder */ 508f51746adSGeert Uytterhoeven }; 509f51746adSGeert Uytterhoeven 510f51746adSGeert Uytterhoeven hsusb: usb@e6590000 { 511f51746adSGeert Uytterhoeven reg = <0 0xe6590000 0 0x200>; 512f51746adSGeert Uytterhoeven /* placeholder */ 513f51746adSGeert Uytterhoeven }; 514f51746adSGeert Uytterhoeven 515f51746adSGeert Uytterhoeven usb3_phy0: usb-phy@e65ee000 { 516f51746adSGeert Uytterhoeven reg = <0 0xe65ee000 0 0x90>; 517f51746adSGeert Uytterhoeven #phy-cells = <0>; 518f51746adSGeert Uytterhoeven /* placeholder */ 519f51746adSGeert Uytterhoeven }; 520f51746adSGeert Uytterhoeven 5218372579dSGeert Uytterhoeven dmac0: dma-controller@e6700000 { 5228372579dSGeert Uytterhoeven compatible = "renesas,dmac-r8a77961", 5238372579dSGeert Uytterhoeven "renesas,rcar-dmac"; 5248372579dSGeert Uytterhoeven reg = <0 0xe6700000 0 0x10000>; 5258372579dSGeert Uytterhoeven interrupts = <GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>, 5268372579dSGeert Uytterhoeven <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>, 5278372579dSGeert Uytterhoeven <GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>, 5288372579dSGeert Uytterhoeven <GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>, 5298372579dSGeert Uytterhoeven <GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>, 5308372579dSGeert Uytterhoeven <GIC_SPI 204 IRQ_TYPE_LEVEL_HIGH>, 5318372579dSGeert Uytterhoeven <GIC_SPI 205 IRQ_TYPE_LEVEL_HIGH>, 5328372579dSGeert Uytterhoeven <GIC_SPI 206 IRQ_TYPE_LEVEL_HIGH>, 5338372579dSGeert Uytterhoeven <GIC_SPI 207 IRQ_TYPE_LEVEL_HIGH>, 5348372579dSGeert Uytterhoeven <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>, 5358372579dSGeert Uytterhoeven <GIC_SPI 209 IRQ_TYPE_LEVEL_HIGH>, 5368372579dSGeert Uytterhoeven <GIC_SPI 210 IRQ_TYPE_LEVEL_HIGH>, 5378372579dSGeert Uytterhoeven <GIC_SPI 211 IRQ_TYPE_LEVEL_HIGH>, 5388372579dSGeert Uytterhoeven <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>, 5398372579dSGeert Uytterhoeven <GIC_SPI 213 IRQ_TYPE_LEVEL_HIGH>, 5408372579dSGeert Uytterhoeven <GIC_SPI 214 IRQ_TYPE_LEVEL_HIGH>, 5418372579dSGeert Uytterhoeven <GIC_SPI 215 IRQ_TYPE_LEVEL_HIGH>; 5428372579dSGeert Uytterhoeven interrupt-names = "error", 5438372579dSGeert Uytterhoeven "ch0", "ch1", "ch2", "ch3", 5448372579dSGeert Uytterhoeven "ch4", "ch5", "ch6", "ch7", 5458372579dSGeert Uytterhoeven "ch8", "ch9", "ch10", "ch11", 5468372579dSGeert Uytterhoeven "ch12", "ch13", "ch14", "ch15"; 5478372579dSGeert Uytterhoeven clocks = <&cpg CPG_MOD 219>; 5488372579dSGeert Uytterhoeven clock-names = "fck"; 5498372579dSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 5508372579dSGeert Uytterhoeven resets = <&cpg 219>; 5518372579dSGeert Uytterhoeven #dma-cells = <1>; 5528372579dSGeert Uytterhoeven dma-channels = <16>; 5538372579dSGeert Uytterhoeven }; 5548372579dSGeert Uytterhoeven 5558372579dSGeert Uytterhoeven dmac1: dma-controller@e7300000 { 5568372579dSGeert Uytterhoeven compatible = "renesas,dmac-r8a77961", 5578372579dSGeert Uytterhoeven "renesas,rcar-dmac"; 5588372579dSGeert Uytterhoeven reg = <0 0xe7300000 0 0x10000>; 5598372579dSGeert Uytterhoeven interrupts = <GIC_SPI 220 IRQ_TYPE_LEVEL_HIGH>, 5608372579dSGeert Uytterhoeven <GIC_SPI 216 IRQ_TYPE_LEVEL_HIGH>, 5618372579dSGeert Uytterhoeven <GIC_SPI 217 IRQ_TYPE_LEVEL_HIGH>, 5628372579dSGeert Uytterhoeven <GIC_SPI 218 IRQ_TYPE_LEVEL_HIGH>, 5638372579dSGeert Uytterhoeven <GIC_SPI 219 IRQ_TYPE_LEVEL_HIGH>, 5648372579dSGeert Uytterhoeven <GIC_SPI 308 IRQ_TYPE_LEVEL_HIGH>, 5658372579dSGeert Uytterhoeven <GIC_SPI 309 IRQ_TYPE_LEVEL_HIGH>, 5668372579dSGeert Uytterhoeven <GIC_SPI 310 IRQ_TYPE_LEVEL_HIGH>, 5678372579dSGeert Uytterhoeven <GIC_SPI 311 IRQ_TYPE_LEVEL_HIGH>, 5688372579dSGeert Uytterhoeven <GIC_SPI 312 IRQ_TYPE_LEVEL_HIGH>, 5698372579dSGeert Uytterhoeven <GIC_SPI 313 IRQ_TYPE_LEVEL_HIGH>, 5708372579dSGeert Uytterhoeven <GIC_SPI 314 IRQ_TYPE_LEVEL_HIGH>, 5718372579dSGeert Uytterhoeven <GIC_SPI 315 IRQ_TYPE_LEVEL_HIGH>, 5728372579dSGeert Uytterhoeven <GIC_SPI 316 IRQ_TYPE_LEVEL_HIGH>, 5738372579dSGeert Uytterhoeven <GIC_SPI 317 IRQ_TYPE_LEVEL_HIGH>, 5748372579dSGeert Uytterhoeven <GIC_SPI 318 IRQ_TYPE_LEVEL_HIGH>, 5758372579dSGeert Uytterhoeven <GIC_SPI 319 IRQ_TYPE_LEVEL_HIGH>; 5768372579dSGeert Uytterhoeven interrupt-names = "error", 5778372579dSGeert Uytterhoeven "ch0", "ch1", "ch2", "ch3", 5788372579dSGeert Uytterhoeven "ch4", "ch5", "ch6", "ch7", 5798372579dSGeert Uytterhoeven "ch8", "ch9", "ch10", "ch11", 5808372579dSGeert Uytterhoeven "ch12", "ch13", "ch14", "ch15"; 5818372579dSGeert Uytterhoeven clocks = <&cpg CPG_MOD 218>; 5828372579dSGeert Uytterhoeven clock-names = "fck"; 5838372579dSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 5848372579dSGeert Uytterhoeven resets = <&cpg 218>; 5858372579dSGeert Uytterhoeven #dma-cells = <1>; 5868372579dSGeert Uytterhoeven dma-channels = <16>; 5878372579dSGeert Uytterhoeven }; 5888372579dSGeert Uytterhoeven 5898372579dSGeert Uytterhoeven dmac2: dma-controller@e7310000 { 5908372579dSGeert Uytterhoeven compatible = "renesas,dmac-r8a77961", 5918372579dSGeert Uytterhoeven "renesas,rcar-dmac"; 5928372579dSGeert Uytterhoeven reg = <0 0xe7310000 0 0x10000>; 5938372579dSGeert Uytterhoeven interrupts = <GIC_SPI 416 IRQ_TYPE_LEVEL_HIGH>, 5948372579dSGeert Uytterhoeven <GIC_SPI 417 IRQ_TYPE_LEVEL_HIGH>, 5958372579dSGeert Uytterhoeven <GIC_SPI 418 IRQ_TYPE_LEVEL_HIGH>, 5968372579dSGeert Uytterhoeven <GIC_SPI 419 IRQ_TYPE_LEVEL_HIGH>, 5978372579dSGeert Uytterhoeven <GIC_SPI 420 IRQ_TYPE_LEVEL_HIGH>, 5988372579dSGeert Uytterhoeven <GIC_SPI 421 IRQ_TYPE_LEVEL_HIGH>, 5998372579dSGeert Uytterhoeven <GIC_SPI 422 IRQ_TYPE_LEVEL_HIGH>, 6008372579dSGeert Uytterhoeven <GIC_SPI 423 IRQ_TYPE_LEVEL_HIGH>, 6018372579dSGeert Uytterhoeven <GIC_SPI 424 IRQ_TYPE_LEVEL_HIGH>, 6028372579dSGeert Uytterhoeven <GIC_SPI 425 IRQ_TYPE_LEVEL_HIGH>, 6038372579dSGeert Uytterhoeven <GIC_SPI 426 IRQ_TYPE_LEVEL_HIGH>, 6048372579dSGeert Uytterhoeven <GIC_SPI 427 IRQ_TYPE_LEVEL_HIGH>, 6058372579dSGeert Uytterhoeven <GIC_SPI 428 IRQ_TYPE_LEVEL_HIGH>, 6068372579dSGeert Uytterhoeven <GIC_SPI 429 IRQ_TYPE_LEVEL_HIGH>, 6078372579dSGeert Uytterhoeven <GIC_SPI 430 IRQ_TYPE_LEVEL_HIGH>, 6088372579dSGeert Uytterhoeven <GIC_SPI 431 IRQ_TYPE_LEVEL_HIGH>, 6098372579dSGeert Uytterhoeven <GIC_SPI 397 IRQ_TYPE_LEVEL_HIGH>; 6108372579dSGeert Uytterhoeven interrupt-names = "error", 6118372579dSGeert Uytterhoeven "ch0", "ch1", "ch2", "ch3", 6128372579dSGeert Uytterhoeven "ch4", "ch5", "ch6", "ch7", 6138372579dSGeert Uytterhoeven "ch8", "ch9", "ch10", "ch11", 6148372579dSGeert Uytterhoeven "ch12", "ch13", "ch14", "ch15"; 6158372579dSGeert Uytterhoeven clocks = <&cpg CPG_MOD 217>; 6168372579dSGeert Uytterhoeven clock-names = "fck"; 6178372579dSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 6188372579dSGeert Uytterhoeven resets = <&cpg 217>; 6198372579dSGeert Uytterhoeven #dma-cells = <1>; 6208372579dSGeert Uytterhoeven dma-channels = <16>; 6218372579dSGeert Uytterhoeven }; 6228372579dSGeert Uytterhoeven 623f51746adSGeert Uytterhoeven avb: ethernet@e6800000 { 6249ccf74a9SGeert Uytterhoeven compatible = "renesas,etheravb-r8a77961", 6259ccf74a9SGeert Uytterhoeven "renesas,etheravb-rcar-gen3"; 626f51746adSGeert Uytterhoeven reg = <0 0xe6800000 0 0x800>, <0 0xe6a00000 0 0x10000>; 6279ccf74a9SGeert Uytterhoeven interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>, 6289ccf74a9SGeert Uytterhoeven <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 6299ccf74a9SGeert Uytterhoeven <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>, 6309ccf74a9SGeert Uytterhoeven <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>, 6319ccf74a9SGeert Uytterhoeven <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>, 6329ccf74a9SGeert Uytterhoeven <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>, 6339ccf74a9SGeert Uytterhoeven <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>, 6349ccf74a9SGeert Uytterhoeven <GIC_SPI 46 IRQ_TYPE_LEVEL_HIGH>, 6359ccf74a9SGeert Uytterhoeven <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>, 6369ccf74a9SGeert Uytterhoeven <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>, 6379ccf74a9SGeert Uytterhoeven <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>, 6389ccf74a9SGeert Uytterhoeven <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>, 6399ccf74a9SGeert Uytterhoeven <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>, 6409ccf74a9SGeert Uytterhoeven <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>, 6419ccf74a9SGeert Uytterhoeven <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, 6429ccf74a9SGeert Uytterhoeven <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, 6439ccf74a9SGeert Uytterhoeven <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 6449ccf74a9SGeert Uytterhoeven <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, 6459ccf74a9SGeert Uytterhoeven <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, 6469ccf74a9SGeert Uytterhoeven <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, 6479ccf74a9SGeert Uytterhoeven <GIC_SPI 59 IRQ_TYPE_LEVEL_HIGH>, 6489ccf74a9SGeert Uytterhoeven <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>, 6499ccf74a9SGeert Uytterhoeven <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>, 6509ccf74a9SGeert Uytterhoeven <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>, 6519ccf74a9SGeert Uytterhoeven <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; 6529ccf74a9SGeert Uytterhoeven interrupt-names = "ch0", "ch1", "ch2", "ch3", 6539ccf74a9SGeert Uytterhoeven "ch4", "ch5", "ch6", "ch7", 6549ccf74a9SGeert Uytterhoeven "ch8", "ch9", "ch10", "ch11", 6559ccf74a9SGeert Uytterhoeven "ch12", "ch13", "ch14", "ch15", 6569ccf74a9SGeert Uytterhoeven "ch16", "ch17", "ch18", "ch19", 6579ccf74a9SGeert Uytterhoeven "ch20", "ch21", "ch22", "ch23", 6589ccf74a9SGeert Uytterhoeven "ch24"; 6599ccf74a9SGeert Uytterhoeven clocks = <&cpg CPG_MOD 812>; 6609ccf74a9SGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 6619ccf74a9SGeert Uytterhoeven resets = <&cpg 812>; 6629ccf74a9SGeert Uytterhoeven phy-mode = "rgmii"; 663f51746adSGeert Uytterhoeven #address-cells = <1>; 664f51746adSGeert Uytterhoeven #size-cells = <0>; 6659ccf74a9SGeert Uytterhoeven status = "disabled"; 666f51746adSGeert Uytterhoeven }; 667f51746adSGeert Uytterhoeven 668f51746adSGeert Uytterhoeven pwm1: pwm@e6e31000 { 669f51746adSGeert Uytterhoeven reg = <0 0xe6e31000 0 8>; 670f51746adSGeert Uytterhoeven #pwm-cells = <2>; 671f51746adSGeert Uytterhoeven /* placeholder */ 672f51746adSGeert Uytterhoeven }; 673f51746adSGeert Uytterhoeven 674f51746adSGeert Uytterhoeven scif1: serial@e6e68000 { 675f51746adSGeert Uytterhoeven reg = <0 0xe6e68000 0 64>; 676f51746adSGeert Uytterhoeven /* placeholder */ 677f51746adSGeert Uytterhoeven }; 678f51746adSGeert Uytterhoeven 679f51746adSGeert Uytterhoeven scif2: serial@e6e88000 { 680f51746adSGeert Uytterhoeven compatible = "renesas,scif-r8a77961", 681f51746adSGeert Uytterhoeven "renesas,rcar-gen3-scif", "renesas,scif"; 682f51746adSGeert Uytterhoeven reg = <0 0xe6e88000 0 64>; 683f51746adSGeert Uytterhoeven interrupts = <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>; 684f51746adSGeert Uytterhoeven clocks = <&cpg CPG_MOD 310>, 685f51746adSGeert Uytterhoeven <&cpg CPG_CORE R8A77961_CLK_S3D1>, 686f51746adSGeert Uytterhoeven <&scif_clk>; 687f51746adSGeert Uytterhoeven clock-names = "fck", "brg_int", "scif_clk"; 688f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 689f51746adSGeert Uytterhoeven resets = <&cpg 310>; 690f51746adSGeert Uytterhoeven status = "disabled"; 691f51746adSGeert Uytterhoeven }; 692f51746adSGeert Uytterhoeven 693f51746adSGeert Uytterhoeven vin0: video@e6ef0000 { 694f51746adSGeert Uytterhoeven reg = <0 0xe6ef0000 0 0x1000>; 695f51746adSGeert Uytterhoeven /* placeholder */ 696f51746adSGeert Uytterhoeven }; 697f51746adSGeert Uytterhoeven 698f51746adSGeert Uytterhoeven vin1: video@e6ef1000 { 699f51746adSGeert Uytterhoeven reg = <0 0xe6ef1000 0 0x1000>; 700f51746adSGeert Uytterhoeven /* placeholder */ 701f51746adSGeert Uytterhoeven }; 702f51746adSGeert Uytterhoeven 703f51746adSGeert Uytterhoeven vin2: video@e6ef2000 { 704f51746adSGeert Uytterhoeven reg = <0 0xe6ef2000 0 0x1000>; 705f51746adSGeert Uytterhoeven /* placeholder */ 706f51746adSGeert Uytterhoeven }; 707f51746adSGeert Uytterhoeven 708f51746adSGeert Uytterhoeven vin3: video@e6ef3000 { 709f51746adSGeert Uytterhoeven reg = <0 0xe6ef3000 0 0x1000>; 710f51746adSGeert Uytterhoeven /* placeholder */ 711f51746adSGeert Uytterhoeven }; 712f51746adSGeert Uytterhoeven 713f51746adSGeert Uytterhoeven vin4: video@e6ef4000 { 714f51746adSGeert Uytterhoeven reg = <0 0xe6ef4000 0 0x1000>; 715f51746adSGeert Uytterhoeven /* placeholder */ 716f51746adSGeert Uytterhoeven }; 717f51746adSGeert Uytterhoeven 718f51746adSGeert Uytterhoeven vin5: video@e6ef5000 { 719f51746adSGeert Uytterhoeven reg = <0 0xe6ef5000 0 0x1000>; 720f51746adSGeert Uytterhoeven /* placeholder */ 721f51746adSGeert Uytterhoeven }; 722f51746adSGeert Uytterhoeven 723f51746adSGeert Uytterhoeven vin6: video@e6ef6000 { 724f51746adSGeert Uytterhoeven reg = <0 0xe6ef6000 0 0x1000>; 725f51746adSGeert Uytterhoeven /* placeholder */ 726f51746adSGeert Uytterhoeven }; 727f51746adSGeert Uytterhoeven 728f51746adSGeert Uytterhoeven vin7: video@e6ef7000 { 729f51746adSGeert Uytterhoeven reg = <0 0xe6ef7000 0 0x1000>; 730f51746adSGeert Uytterhoeven /* placeholder */ 731f51746adSGeert Uytterhoeven }; 732f51746adSGeert Uytterhoeven 733f51746adSGeert Uytterhoeven rcar_sound: sound@ec500000 { 734f51746adSGeert Uytterhoeven reg = <0 0xec500000 0 0x1000>, /* SCU */ 735f51746adSGeert Uytterhoeven <0 0xec5a0000 0 0x100>, /* ADG */ 736f51746adSGeert Uytterhoeven <0 0xec540000 0 0x1000>, /* SSIU */ 737f51746adSGeert Uytterhoeven <0 0xec541000 0 0x280>, /* SSI */ 738f51746adSGeert Uytterhoeven <0 0xec760000 0 0x200>; /* Audio DMAC peri peri*/ 739f51746adSGeert Uytterhoeven /* placeholder */ 740f51746adSGeert Uytterhoeven rcar_sound,dvc { 741f51746adSGeert Uytterhoeven dvc0: dvc-0 { }; 742f51746adSGeert Uytterhoeven dvc1: dvc-1 { }; 743f51746adSGeert Uytterhoeven }; 744f51746adSGeert Uytterhoeven 745f51746adSGeert Uytterhoeven rcar_sound,src { 746f51746adSGeert Uytterhoeven src0: src-0 { }; 747f51746adSGeert Uytterhoeven src1: src-1 { }; 748f51746adSGeert Uytterhoeven }; 749f51746adSGeert Uytterhoeven 750f51746adSGeert Uytterhoeven rcar_sound,ssi { 751f51746adSGeert Uytterhoeven ssi0: ssi-0 { }; 752f51746adSGeert Uytterhoeven ssi1: ssi-1 { }; 753f51746adSGeert Uytterhoeven }; 754f51746adSGeert Uytterhoeven }; 755f51746adSGeert Uytterhoeven 756f51746adSGeert Uytterhoeven xhci0: usb@ee000000 { 757f51746adSGeert Uytterhoeven reg = <0 0xee000000 0 0xc00>; 758f51746adSGeert Uytterhoeven /* placeholder */ 759f51746adSGeert Uytterhoeven }; 760f51746adSGeert Uytterhoeven 761f51746adSGeert Uytterhoeven usb3_peri0: usb@ee020000 { 762f51746adSGeert Uytterhoeven reg = <0 0xee020000 0 0x400>; 763f51746adSGeert Uytterhoeven /* placeholder */ 764f51746adSGeert Uytterhoeven }; 765f51746adSGeert Uytterhoeven 766f51746adSGeert Uytterhoeven ohci0: usb@ee080000 { 767f51746adSGeert Uytterhoeven reg = <0 0xee080000 0 0x100>; 768f51746adSGeert Uytterhoeven /* placeholder */ 769f51746adSGeert Uytterhoeven }; 770f51746adSGeert Uytterhoeven 771f51746adSGeert Uytterhoeven ohci1: usb@ee0a0000 { 772f51746adSGeert Uytterhoeven reg = <0 0xee0a0000 0 0x100>; 773f51746adSGeert Uytterhoeven /* placeholder */ 774f51746adSGeert Uytterhoeven }; 775f51746adSGeert Uytterhoeven 776f51746adSGeert Uytterhoeven ehci0: usb@ee080100 { 777f51746adSGeert Uytterhoeven reg = <0 0xee080100 0 0x100>; 778f51746adSGeert Uytterhoeven /* placeholder */ 779f51746adSGeert Uytterhoeven }; 780f51746adSGeert Uytterhoeven 781f51746adSGeert Uytterhoeven ehci1: usb@ee0a0100 { 782f51746adSGeert Uytterhoeven reg = <0 0xee0a0100 0 0x100>; 783f51746adSGeert Uytterhoeven /* placeholder */ 784f51746adSGeert Uytterhoeven }; 785f51746adSGeert Uytterhoeven 786f51746adSGeert Uytterhoeven usb2_phy0: usb-phy@ee080200 { 787f51746adSGeert Uytterhoeven reg = <0 0xee080200 0 0x700>; 788f51746adSGeert Uytterhoeven /* placeholder */ 789f51746adSGeert Uytterhoeven }; 790f51746adSGeert Uytterhoeven 791f51746adSGeert Uytterhoeven usb2_phy1: usb-phy@ee0a0200 { 792f51746adSGeert Uytterhoeven reg = <0 0xee0a0200 0 0x700>; 793f51746adSGeert Uytterhoeven /* placeholder */ 794f51746adSGeert Uytterhoeven }; 795f51746adSGeert Uytterhoeven 796f51746adSGeert Uytterhoeven sdhi0: sd@ee100000 { 797f51746adSGeert Uytterhoeven reg = <0 0xee100000 0 0x2000>; 798f51746adSGeert Uytterhoeven /* placeholder */ 799f51746adSGeert Uytterhoeven }; 800f51746adSGeert Uytterhoeven 801f51746adSGeert Uytterhoeven sdhi2: sd@ee140000 { 802f51746adSGeert Uytterhoeven reg = <0 0xee140000 0 0x2000>; 803f51746adSGeert Uytterhoeven /* placeholder */ 804f51746adSGeert Uytterhoeven }; 805f51746adSGeert Uytterhoeven 806f51746adSGeert Uytterhoeven sdhi3: sd@ee160000 { 807f51746adSGeert Uytterhoeven reg = <0 0xee160000 0 0x2000>; 808f51746adSGeert Uytterhoeven /* placeholder */ 809f51746adSGeert Uytterhoeven }; 810f51746adSGeert Uytterhoeven 811f51746adSGeert Uytterhoeven gic: interrupt-controller@f1010000 { 812f51746adSGeert Uytterhoeven compatible = "arm,gic-400"; 813f51746adSGeert Uytterhoeven #interrupt-cells = <3>; 814f51746adSGeert Uytterhoeven #address-cells = <0>; 815f51746adSGeert Uytterhoeven interrupt-controller; 816f51746adSGeert Uytterhoeven reg = <0x0 0xf1010000 0 0x1000>, 817f51746adSGeert Uytterhoeven <0x0 0xf1020000 0 0x20000>, 818f51746adSGeert Uytterhoeven <0x0 0xf1040000 0 0x20000>, 819f51746adSGeert Uytterhoeven <0x0 0xf1060000 0 0x20000>; 820f51746adSGeert Uytterhoeven interrupts = <GIC_PPI 9 821f51746adSGeert Uytterhoeven (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_HIGH)>; 822f51746adSGeert Uytterhoeven clocks = <&cpg CPG_MOD 408>; 823f51746adSGeert Uytterhoeven clock-names = "clk"; 824f51746adSGeert Uytterhoeven power-domains = <&sysc R8A77961_PD_ALWAYS_ON>; 825f51746adSGeert Uytterhoeven resets = <&cpg 408>; 826f51746adSGeert Uytterhoeven }; 827f51746adSGeert Uytterhoeven 828f51746adSGeert Uytterhoeven pciec0: pcie@fe000000 { 829f51746adSGeert Uytterhoeven reg = <0 0xfe000000 0 0x80000>; 830f51746adSGeert Uytterhoeven /* placeholder */ 831f51746adSGeert Uytterhoeven }; 832f51746adSGeert Uytterhoeven 833f51746adSGeert Uytterhoeven pciec1: pcie@ee800000 { 834f51746adSGeert Uytterhoeven reg = <0 0xee800000 0 0x80000>; 835f51746adSGeert Uytterhoeven /* placeholder */ 836f51746adSGeert Uytterhoeven }; 837f51746adSGeert Uytterhoeven 838f51746adSGeert Uytterhoeven csi20: csi2@fea80000 { 839f51746adSGeert Uytterhoeven reg = <0 0xfea80000 0 0x10000>; 840f51746adSGeert Uytterhoeven /* placeholder */ 841f51746adSGeert Uytterhoeven 842f51746adSGeert Uytterhoeven ports { 843f51746adSGeert Uytterhoeven #address-cells = <1>; 844f51746adSGeert Uytterhoeven #size-cells = <0>; 845f51746adSGeert Uytterhoeven 846f51746adSGeert Uytterhoeven port@1 { 847f51746adSGeert Uytterhoeven #address-cells = <1>; 848f51746adSGeert Uytterhoeven #size-cells = <0>; 849f51746adSGeert Uytterhoeven reg = <1>; 850f51746adSGeert Uytterhoeven }; 851f51746adSGeert Uytterhoeven }; 852f51746adSGeert Uytterhoeven }; 853f51746adSGeert Uytterhoeven 854f51746adSGeert Uytterhoeven csi40: csi2@feaa0000 { 855f51746adSGeert Uytterhoeven reg = <0 0xfeaa0000 0 0x10000>; 856f51746adSGeert Uytterhoeven /* placeholder */ 857f51746adSGeert Uytterhoeven 858f51746adSGeert Uytterhoeven ports { 859f51746adSGeert Uytterhoeven #address-cells = <1>; 860f51746adSGeert Uytterhoeven #size-cells = <0>; 861f51746adSGeert Uytterhoeven 862f51746adSGeert Uytterhoeven port@1 { 863f51746adSGeert Uytterhoeven #address-cells = <1>; 864f51746adSGeert Uytterhoeven #size-cells = <0>; 865f51746adSGeert Uytterhoeven 866f51746adSGeert Uytterhoeven reg = <1>; 867f51746adSGeert Uytterhoeven }; 868f51746adSGeert Uytterhoeven }; 869f51746adSGeert Uytterhoeven }; 870f51746adSGeert Uytterhoeven 871f51746adSGeert Uytterhoeven hdmi0: hdmi@fead0000 { 872f51746adSGeert Uytterhoeven reg = <0 0xfead0000 0 0x10000>; 873f51746adSGeert Uytterhoeven /* placeholder */ 874f51746adSGeert Uytterhoeven 875f51746adSGeert Uytterhoeven ports { 876f51746adSGeert Uytterhoeven #address-cells = <1>; 877f51746adSGeert Uytterhoeven #size-cells = <0>; 878f51746adSGeert Uytterhoeven port@0 { 879f51746adSGeert Uytterhoeven reg = <0>; 880f51746adSGeert Uytterhoeven }; 881f51746adSGeert Uytterhoeven port@1 { 882f51746adSGeert Uytterhoeven reg = <1>; 883f51746adSGeert Uytterhoeven }; 884f51746adSGeert Uytterhoeven port@2 { 885f51746adSGeert Uytterhoeven /* HDMI sound */ 886f51746adSGeert Uytterhoeven reg = <2>; 887f51746adSGeert Uytterhoeven }; 888f51746adSGeert Uytterhoeven }; 889f51746adSGeert Uytterhoeven }; 890f51746adSGeert Uytterhoeven 891f51746adSGeert Uytterhoeven du: display@feb00000 { 892f51746adSGeert Uytterhoeven reg = <0 0xfeb00000 0 0x70000>; 893f51746adSGeert Uytterhoeven /* placeholder */ 894f51746adSGeert Uytterhoeven 895f51746adSGeert Uytterhoeven ports { 896f51746adSGeert Uytterhoeven #address-cells = <1>; 897f51746adSGeert Uytterhoeven #size-cells = <0>; 898f51746adSGeert Uytterhoeven 899f51746adSGeert Uytterhoeven port@0 { 900f51746adSGeert Uytterhoeven reg = <0>; 901f51746adSGeert Uytterhoeven du_out_rgb: endpoint { 902f51746adSGeert Uytterhoeven }; 903f51746adSGeert Uytterhoeven }; 904f51746adSGeert Uytterhoeven port@1 { 905f51746adSGeert Uytterhoeven reg = <1>; 906f51746adSGeert Uytterhoeven du_out_hdmi0: endpoint { 907f51746adSGeert Uytterhoeven }; 908f51746adSGeert Uytterhoeven }; 909f51746adSGeert Uytterhoeven port@2 { 910f51746adSGeert Uytterhoeven reg = <2>; 911f51746adSGeert Uytterhoeven du_out_lvds0: endpoint { 912f51746adSGeert Uytterhoeven }; 913f51746adSGeert Uytterhoeven }; 914f51746adSGeert Uytterhoeven }; 915f51746adSGeert Uytterhoeven }; 916f51746adSGeert Uytterhoeven 917f51746adSGeert Uytterhoeven prr: chipid@fff00044 { 918f51746adSGeert Uytterhoeven compatible = "renesas,prr"; 919f51746adSGeert Uytterhoeven reg = <0 0xfff00044 0 4>; 920f51746adSGeert Uytterhoeven }; 921f51746adSGeert Uytterhoeven }; 922f51746adSGeert Uytterhoeven 923f51746adSGeert Uytterhoeven timer { 924f51746adSGeert Uytterhoeven compatible = "arm,armv8-timer"; 925f51746adSGeert Uytterhoeven interrupts-extended = <&gic GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 926f51746adSGeert Uytterhoeven <&gic GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 927f51746adSGeert Uytterhoeven <&gic GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>, 928f51746adSGeert Uytterhoeven <&gic GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(6) | IRQ_TYPE_LEVEL_LOW)>; 929f51746adSGeert Uytterhoeven }; 930f51746adSGeert Uytterhoeven 931f51746adSGeert Uytterhoeven /* External USB clocks - can be overridden by the board */ 932f51746adSGeert Uytterhoeven usb3s0_clk: usb3s0 { 933f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 934f51746adSGeert Uytterhoeven #clock-cells = <0>; 935f51746adSGeert Uytterhoeven clock-frequency = <0>; 936f51746adSGeert Uytterhoeven }; 937f51746adSGeert Uytterhoeven 938f51746adSGeert Uytterhoeven usb_extal_clk: usb_extal { 939f51746adSGeert Uytterhoeven compatible = "fixed-clock"; 940f51746adSGeert Uytterhoeven #clock-cells = <0>; 941f51746adSGeert Uytterhoeven clock-frequency = <0>; 942f51746adSGeert Uytterhoeven }; 943f51746adSGeert Uytterhoeven}; 944