1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2*c66ec88fSEmmanuel Vadot/* 3*c66ec88fSEmmanuel Vadot * Device Tree Source for the R-Car H3 (R8A77950) SoC 4*c66ec88fSEmmanuel Vadot * 5*c66ec88fSEmmanuel Vadot * Copyright (C) 2015 Renesas Electronics Corp. 6*c66ec88fSEmmanuel Vadot */ 7*c66ec88fSEmmanuel Vadot 8*c66ec88fSEmmanuel Vadot#include "r8a77951.dtsi" 9*c66ec88fSEmmanuel Vadot 10*c66ec88fSEmmanuel Vadot&audma0 { 11*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_mp1 0>, <&ipmmu_mp1 1>, 12*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 2>, <&ipmmu_mp1 3>, 13*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 4>, <&ipmmu_mp1 5>, 14*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 6>, <&ipmmu_mp1 7>, 15*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 8>, <&ipmmu_mp1 9>, 16*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 10>, <&ipmmu_mp1 11>, 17*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 12>, <&ipmmu_mp1 13>, 18*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 14>, <&ipmmu_mp1 15>; 19*c66ec88fSEmmanuel Vadot}; 20*c66ec88fSEmmanuel Vadot 21*c66ec88fSEmmanuel Vadot&audma1 { 22*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_mp1 16>, <&ipmmu_mp1 17>, 23*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 18>, <&ipmmu_mp1 19>, 24*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 20>, <&ipmmu_mp1 21>, 25*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 22>, <&ipmmu_mp1 23>, 26*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 24>, <&ipmmu_mp1 25>, 27*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 26>, <&ipmmu_mp1 27>, 28*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 28>, <&ipmmu_mp1 29>, 29*c66ec88fSEmmanuel Vadot <&ipmmu_mp1 30>, <&ipmmu_mp1 31>; 30*c66ec88fSEmmanuel Vadot}; 31*c66ec88fSEmmanuel Vadot 32*c66ec88fSEmmanuel Vadot&du { 33*c66ec88fSEmmanuel Vadot renesas,vsps = <&vspd0 0>, <&vspd1 0>, <&vspd2 0>, <&vspd3 0>; 34*c66ec88fSEmmanuel Vadot}; 35*c66ec88fSEmmanuel Vadot 36*c66ec88fSEmmanuel Vadot&fcpvb1 { 37*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vp0 7>; 38*c66ec88fSEmmanuel Vadot}; 39*c66ec88fSEmmanuel Vadot 40*c66ec88fSEmmanuel Vadot&fcpf1 { 41*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vp0 1>; 42*c66ec88fSEmmanuel Vadot}; 43*c66ec88fSEmmanuel Vadot 44*c66ec88fSEmmanuel Vadot&fcpvi1 { 45*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vp0 9>; 46*c66ec88fSEmmanuel Vadot}; 47*c66ec88fSEmmanuel Vadot 48*c66ec88fSEmmanuel Vadot&fcpvd2 { 49*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vi0 10>; 50*c66ec88fSEmmanuel Vadot}; 51*c66ec88fSEmmanuel Vadot 52*c66ec88fSEmmanuel Vadot&gpio1 { 53*c66ec88fSEmmanuel Vadot gpio-ranges = <&pfc 0 32 28>; 54*c66ec88fSEmmanuel Vadot}; 55*c66ec88fSEmmanuel Vadot 56*c66ec88fSEmmanuel Vadot&ipmmu_vi0 { 57*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 11>; 58*c66ec88fSEmmanuel Vadot}; 59*c66ec88fSEmmanuel Vadot 60*c66ec88fSEmmanuel Vadot&ipmmu_vp0 { 61*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 12>; 62*c66ec88fSEmmanuel Vadot}; 63*c66ec88fSEmmanuel Vadot 64*c66ec88fSEmmanuel Vadot&ipmmu_vc0 { 65*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 9>; 66*c66ec88fSEmmanuel Vadot}; 67*c66ec88fSEmmanuel Vadot 68*c66ec88fSEmmanuel Vadot&ipmmu_vc1 { 69*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 10>; 70*c66ec88fSEmmanuel Vadot}; 71*c66ec88fSEmmanuel Vadot 72*c66ec88fSEmmanuel Vadot&ipmmu_rt { 73*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 7>; 74*c66ec88fSEmmanuel Vadot}; 75*c66ec88fSEmmanuel Vadot 76*c66ec88fSEmmanuel Vadot&soc { 77*c66ec88fSEmmanuel Vadot /delete-node/ dma-controller@e6460000; 78*c66ec88fSEmmanuel Vadot /delete-node/ dma-controller@e6470000; 79*c66ec88fSEmmanuel Vadot 80*c66ec88fSEmmanuel Vadot ipmmu_mp1: iommu@ec680000 { 81*c66ec88fSEmmanuel Vadot compatible = "renesas,ipmmu-r8a7795"; 82*c66ec88fSEmmanuel Vadot reg = <0 0xec680000 0 0x1000>; 83*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 5>; 84*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 85*c66ec88fSEmmanuel Vadot #iommu-cells = <1>; 86*c66ec88fSEmmanuel Vadot }; 87*c66ec88fSEmmanuel Vadot 88*c66ec88fSEmmanuel Vadot ipmmu_sy: iommu@e7730000 { 89*c66ec88fSEmmanuel Vadot compatible = "renesas,ipmmu-r8a7795"; 90*c66ec88fSEmmanuel Vadot reg = <0 0xe7730000 0 0x1000>; 91*c66ec88fSEmmanuel Vadot renesas,ipmmu-main = <&ipmmu_mm 8>; 92*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 93*c66ec88fSEmmanuel Vadot #iommu-cells = <1>; 94*c66ec88fSEmmanuel Vadot }; 95*c66ec88fSEmmanuel Vadot 96*c66ec88fSEmmanuel Vadot /delete-node/ iommu@fd950000; 97*c66ec88fSEmmanuel Vadot /delete-node/ iommu@fd960000; 98*c66ec88fSEmmanuel Vadot /delete-node/ iommu@fd970000; 99*c66ec88fSEmmanuel Vadot /delete-node/ iommu@febe0000; 100*c66ec88fSEmmanuel Vadot /delete-node/ iommu@fe980000; 101*c66ec88fSEmmanuel Vadot 102*c66ec88fSEmmanuel Vadot xhci1: usb@ee040000 { 103*c66ec88fSEmmanuel Vadot compatible = "renesas,xhci-r8a7795", "renesas,rcar-gen3-xhci"; 104*c66ec88fSEmmanuel Vadot reg = <0 0xee040000 0 0xc00>; 105*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; 106*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 327>; 107*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 108*c66ec88fSEmmanuel Vadot resets = <&cpg 327>; 109*c66ec88fSEmmanuel Vadot status = "disabled"; 110*c66ec88fSEmmanuel Vadot }; 111*c66ec88fSEmmanuel Vadot 112*c66ec88fSEmmanuel Vadot /delete-node/ usb@e659c000; 113*c66ec88fSEmmanuel Vadot /delete-node/ usb@ee0e0000; 114*c66ec88fSEmmanuel Vadot /delete-node/ usb@ee0e0100; 115*c66ec88fSEmmanuel Vadot 116*c66ec88fSEmmanuel Vadot /delete-node/ usb-phy@ee0e0200; 117*c66ec88fSEmmanuel Vadot 118*c66ec88fSEmmanuel Vadot fdp1@fe948000 { 119*c66ec88fSEmmanuel Vadot compatible = "renesas,fdp1"; 120*c66ec88fSEmmanuel Vadot reg = <0 0xfe948000 0 0x2400>; 121*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 264 IRQ_TYPE_LEVEL_HIGH>; 122*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 117>; 123*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_A3VP>; 124*c66ec88fSEmmanuel Vadot resets = <&cpg 117>; 125*c66ec88fSEmmanuel Vadot renesas,fcp = <&fcpf2>; 126*c66ec88fSEmmanuel Vadot }; 127*c66ec88fSEmmanuel Vadot 128*c66ec88fSEmmanuel Vadot fcpf2: fcp@fe952000 { 129*c66ec88fSEmmanuel Vadot compatible = "renesas,fcpf"; 130*c66ec88fSEmmanuel Vadot reg = <0 0xfe952000 0 0x200>; 131*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 613>; 132*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_A3VP>; 133*c66ec88fSEmmanuel Vadot resets = <&cpg 613>; 134*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vp0 2>; 135*c66ec88fSEmmanuel Vadot }; 136*c66ec88fSEmmanuel Vadot 137*c66ec88fSEmmanuel Vadot fcpvd3: fcp@fea3f000 { 138*c66ec88fSEmmanuel Vadot compatible = "renesas,fcpv"; 139*c66ec88fSEmmanuel Vadot reg = <0 0xfea3f000 0 0x200>; 140*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 600>; 141*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 142*c66ec88fSEmmanuel Vadot resets = <&cpg 600>; 143*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vi0 11>; 144*c66ec88fSEmmanuel Vadot }; 145*c66ec88fSEmmanuel Vadot 146*c66ec88fSEmmanuel Vadot fcpvi2: fcp@fe9cf000 { 147*c66ec88fSEmmanuel Vadot compatible = "renesas,fcpv"; 148*c66ec88fSEmmanuel Vadot reg = <0 0xfe9cf000 0 0x200>; 149*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 609>; 150*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_A3VP>; 151*c66ec88fSEmmanuel Vadot resets = <&cpg 609>; 152*c66ec88fSEmmanuel Vadot iommus = <&ipmmu_vp0 10>; 153*c66ec88fSEmmanuel Vadot }; 154*c66ec88fSEmmanuel Vadot 155*c66ec88fSEmmanuel Vadot vspd3: vsp@fea38000 { 156*c66ec88fSEmmanuel Vadot compatible = "renesas,vsp2"; 157*c66ec88fSEmmanuel Vadot reg = <0 0xfea38000 0 0x5000>; 158*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 469 IRQ_TYPE_LEVEL_HIGH>; 159*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 620>; 160*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 161*c66ec88fSEmmanuel Vadot resets = <&cpg 620>; 162*c66ec88fSEmmanuel Vadot 163*c66ec88fSEmmanuel Vadot renesas,fcp = <&fcpvd3>; 164*c66ec88fSEmmanuel Vadot }; 165*c66ec88fSEmmanuel Vadot 166*c66ec88fSEmmanuel Vadot vspi2: vsp@fe9c0000 { 167*c66ec88fSEmmanuel Vadot compatible = "renesas,vsp2"; 168*c66ec88fSEmmanuel Vadot reg = <0 0xfe9c0000 0 0x8000>; 169*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 446 IRQ_TYPE_LEVEL_HIGH>; 170*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 629>; 171*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_A3VP>; 172*c66ec88fSEmmanuel Vadot resets = <&cpg 629>; 173*c66ec88fSEmmanuel Vadot 174*c66ec88fSEmmanuel Vadot renesas,fcp = <&fcpvi2>; 175*c66ec88fSEmmanuel Vadot }; 176*c66ec88fSEmmanuel Vadot 177*c66ec88fSEmmanuel Vadot csi21: csi2@fea90000 { 178*c66ec88fSEmmanuel Vadot compatible = "renesas,r8a7795-csi2"; 179*c66ec88fSEmmanuel Vadot reg = <0 0xfea90000 0 0x10000>; 180*c66ec88fSEmmanuel Vadot interrupts = <GIC_SPI 185 IRQ_TYPE_LEVEL_HIGH>; 181*c66ec88fSEmmanuel Vadot clocks = <&cpg CPG_MOD 713>; 182*c66ec88fSEmmanuel Vadot power-domains = <&sysc R8A7795_PD_ALWAYS_ON>; 183*c66ec88fSEmmanuel Vadot resets = <&cpg 713>; 184*c66ec88fSEmmanuel Vadot status = "disabled"; 185*c66ec88fSEmmanuel Vadot 186*c66ec88fSEmmanuel Vadot ports { 187*c66ec88fSEmmanuel Vadot #address-cells = <1>; 188*c66ec88fSEmmanuel Vadot #size-cells = <0>; 189*c66ec88fSEmmanuel Vadot 190*c66ec88fSEmmanuel Vadot port@1 { 191*c66ec88fSEmmanuel Vadot #address-cells = <1>; 192*c66ec88fSEmmanuel Vadot #size-cells = <0>; 193*c66ec88fSEmmanuel Vadot 194*c66ec88fSEmmanuel Vadot reg = <1>; 195*c66ec88fSEmmanuel Vadot 196*c66ec88fSEmmanuel Vadot csi21vin0: endpoint@0 { 197*c66ec88fSEmmanuel Vadot reg = <0>; 198*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin0csi21>; 199*c66ec88fSEmmanuel Vadot }; 200*c66ec88fSEmmanuel Vadot csi21vin1: endpoint@1 { 201*c66ec88fSEmmanuel Vadot reg = <1>; 202*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin1csi21>; 203*c66ec88fSEmmanuel Vadot }; 204*c66ec88fSEmmanuel Vadot csi21vin2: endpoint@2 { 205*c66ec88fSEmmanuel Vadot reg = <2>; 206*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin2csi21>; 207*c66ec88fSEmmanuel Vadot }; 208*c66ec88fSEmmanuel Vadot csi21vin3: endpoint@3 { 209*c66ec88fSEmmanuel Vadot reg = <3>; 210*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin3csi21>; 211*c66ec88fSEmmanuel Vadot }; 212*c66ec88fSEmmanuel Vadot csi21vin4: endpoint@4 { 213*c66ec88fSEmmanuel Vadot reg = <4>; 214*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin4csi21>; 215*c66ec88fSEmmanuel Vadot }; 216*c66ec88fSEmmanuel Vadot csi21vin5: endpoint@5 { 217*c66ec88fSEmmanuel Vadot reg = <5>; 218*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin5csi21>; 219*c66ec88fSEmmanuel Vadot }; 220*c66ec88fSEmmanuel Vadot csi21vin6: endpoint@6 { 221*c66ec88fSEmmanuel Vadot reg = <6>; 222*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin6csi21>; 223*c66ec88fSEmmanuel Vadot }; 224*c66ec88fSEmmanuel Vadot csi21vin7: endpoint@7 { 225*c66ec88fSEmmanuel Vadot reg = <7>; 226*c66ec88fSEmmanuel Vadot remote-endpoint = <&vin7csi21>; 227*c66ec88fSEmmanuel Vadot }; 228*c66ec88fSEmmanuel Vadot }; 229*c66ec88fSEmmanuel Vadot }; 230*c66ec88fSEmmanuel Vadot }; 231*c66ec88fSEmmanuel Vadot}; 232*c66ec88fSEmmanuel Vadot 233*c66ec88fSEmmanuel Vadot&vin0 { 234*c66ec88fSEmmanuel Vadot ports { 235*c66ec88fSEmmanuel Vadot port@1 { 236*c66ec88fSEmmanuel Vadot vin0csi21: endpoint@1 { 237*c66ec88fSEmmanuel Vadot reg = <1>; 238*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin0>; 239*c66ec88fSEmmanuel Vadot }; 240*c66ec88fSEmmanuel Vadot }; 241*c66ec88fSEmmanuel Vadot }; 242*c66ec88fSEmmanuel Vadot}; 243*c66ec88fSEmmanuel Vadot 244*c66ec88fSEmmanuel Vadot&vin1 { 245*c66ec88fSEmmanuel Vadot ports { 246*c66ec88fSEmmanuel Vadot port@1 { 247*c66ec88fSEmmanuel Vadot vin1csi21: endpoint@1 { 248*c66ec88fSEmmanuel Vadot reg = <1>; 249*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin1>; 250*c66ec88fSEmmanuel Vadot }; 251*c66ec88fSEmmanuel Vadot }; 252*c66ec88fSEmmanuel Vadot }; 253*c66ec88fSEmmanuel Vadot}; 254*c66ec88fSEmmanuel Vadot 255*c66ec88fSEmmanuel Vadot&vin2 { 256*c66ec88fSEmmanuel Vadot ports { 257*c66ec88fSEmmanuel Vadot port@1 { 258*c66ec88fSEmmanuel Vadot vin2csi21: endpoint@1 { 259*c66ec88fSEmmanuel Vadot reg = <1>; 260*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin2>; 261*c66ec88fSEmmanuel Vadot }; 262*c66ec88fSEmmanuel Vadot }; 263*c66ec88fSEmmanuel Vadot }; 264*c66ec88fSEmmanuel Vadot}; 265*c66ec88fSEmmanuel Vadot 266*c66ec88fSEmmanuel Vadot&vin3 { 267*c66ec88fSEmmanuel Vadot ports { 268*c66ec88fSEmmanuel Vadot port@1 { 269*c66ec88fSEmmanuel Vadot vin3csi21: endpoint@1 { 270*c66ec88fSEmmanuel Vadot reg = <1>; 271*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin3>; 272*c66ec88fSEmmanuel Vadot }; 273*c66ec88fSEmmanuel Vadot }; 274*c66ec88fSEmmanuel Vadot }; 275*c66ec88fSEmmanuel Vadot}; 276*c66ec88fSEmmanuel Vadot 277*c66ec88fSEmmanuel Vadot&vin4 { 278*c66ec88fSEmmanuel Vadot ports { 279*c66ec88fSEmmanuel Vadot port@1 { 280*c66ec88fSEmmanuel Vadot vin4csi21: endpoint@1 { 281*c66ec88fSEmmanuel Vadot reg = <1>; 282*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin4>; 283*c66ec88fSEmmanuel Vadot }; 284*c66ec88fSEmmanuel Vadot }; 285*c66ec88fSEmmanuel Vadot }; 286*c66ec88fSEmmanuel Vadot}; 287*c66ec88fSEmmanuel Vadot 288*c66ec88fSEmmanuel Vadot&vin5 { 289*c66ec88fSEmmanuel Vadot ports { 290*c66ec88fSEmmanuel Vadot port@1 { 291*c66ec88fSEmmanuel Vadot vin5csi21: endpoint@1 { 292*c66ec88fSEmmanuel Vadot reg = <1>; 293*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin5>; 294*c66ec88fSEmmanuel Vadot }; 295*c66ec88fSEmmanuel Vadot }; 296*c66ec88fSEmmanuel Vadot }; 297*c66ec88fSEmmanuel Vadot}; 298*c66ec88fSEmmanuel Vadot 299*c66ec88fSEmmanuel Vadot&vin6 { 300*c66ec88fSEmmanuel Vadot ports { 301*c66ec88fSEmmanuel Vadot port@1 { 302*c66ec88fSEmmanuel Vadot vin6csi21: endpoint@1 { 303*c66ec88fSEmmanuel Vadot reg = <1>; 304*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin6>; 305*c66ec88fSEmmanuel Vadot }; 306*c66ec88fSEmmanuel Vadot }; 307*c66ec88fSEmmanuel Vadot }; 308*c66ec88fSEmmanuel Vadot}; 309*c66ec88fSEmmanuel Vadot 310*c66ec88fSEmmanuel Vadot&vin7 { 311*c66ec88fSEmmanuel Vadot ports { 312*c66ec88fSEmmanuel Vadot port@1 { 313*c66ec88fSEmmanuel Vadot vin7csi21: endpoint@1 { 314*c66ec88fSEmmanuel Vadot reg = <1>; 315*c66ec88fSEmmanuel Vadot remote-endpoint = <&csi21vin7>; 316*c66ec88fSEmmanuel Vadot }; 317*c66ec88fSEmmanuel Vadot }; 318*c66ec88fSEmmanuel Vadot }; 319*c66ec88fSEmmanuel Vadot}; 320