1*4882a593Smuzhiyun/* 2*4882a593Smuzhiyun * Copyright 2012-2015 Maxime Ripard 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * Maxime Ripard <maxime.ripard@free-electrons.com> 5*4882a593Smuzhiyun * 6*4882a593Smuzhiyun * This file is dual-licensed: you can use it either under the terms 7*4882a593Smuzhiyun * of the GPL or the X11 license, at your option. Note that this dual 8*4882a593Smuzhiyun * licensing only applies to this file, and not this project as a 9*4882a593Smuzhiyun * whole. 10*4882a593Smuzhiyun * 11*4882a593Smuzhiyun * a) This library is free software; you can redistribute it and/or 12*4882a593Smuzhiyun * modify it under the terms of the GNU General Public License as 13*4882a593Smuzhiyun * published by the Free Software Foundation; either version 2 of the 14*4882a593Smuzhiyun * License, or (at your option) any later version. 15*4882a593Smuzhiyun * 16*4882a593Smuzhiyun * This library is distributed in the hope that it will be useful, 17*4882a593Smuzhiyun * but WITHOUT ANY WARRANTY; without even the implied warranty of 18*4882a593Smuzhiyun * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19*4882a593Smuzhiyun * GNU General Public License for more details. 20*4882a593Smuzhiyun * 21*4882a593Smuzhiyun * Or, alternatively, 22*4882a593Smuzhiyun * 23*4882a593Smuzhiyun * b) Permission is hereby granted, free of charge, to any person 24*4882a593Smuzhiyun * obtaining a copy of this software and associated documentation 25*4882a593Smuzhiyun * files (the "Software"), to deal in the Software without 26*4882a593Smuzhiyun * restriction, including without limitation the rights to use, 27*4882a593Smuzhiyun * copy, modify, merge, publish, distribute, sublicense, and/or 28*4882a593Smuzhiyun * sell copies of the Software, and to permit persons to whom the 29*4882a593Smuzhiyun * Software is furnished to do so, subject to the following 30*4882a593Smuzhiyun * conditions: 31*4882a593Smuzhiyun * 32*4882a593Smuzhiyun * The above copyright notice and this permission notice shall be 33*4882a593Smuzhiyun * included in all copies or substantial portions of the Software. 34*4882a593Smuzhiyun * 35*4882a593Smuzhiyun * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 36*4882a593Smuzhiyun * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 37*4882a593Smuzhiyun * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 38*4882a593Smuzhiyun * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 39*4882a593Smuzhiyun * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 40*4882a593Smuzhiyun * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 41*4882a593Smuzhiyun * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 42*4882a593Smuzhiyun * OTHER DEALINGS IN THE SOFTWARE. 43*4882a593Smuzhiyun */ 44*4882a593Smuzhiyun 45*4882a593Smuzhiyun#include <dt-bindings/clock/sun5i-ccu.h> 46*4882a593Smuzhiyun#include <dt-bindings/dma/sun4i-a10.h> 47*4882a593Smuzhiyun#include <dt-bindings/reset/sun5i-ccu.h> 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun/ { 50*4882a593Smuzhiyun interrupt-parent = <&intc>; 51*4882a593Smuzhiyun #address-cells = <1>; 52*4882a593Smuzhiyun #size-cells = <1>; 53*4882a593Smuzhiyun 54*4882a593Smuzhiyun cpus { 55*4882a593Smuzhiyun #address-cells = <1>; 56*4882a593Smuzhiyun #size-cells = <0>; 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun cpu0: cpu@0 { 59*4882a593Smuzhiyun device_type = "cpu"; 60*4882a593Smuzhiyun compatible = "arm,cortex-a8"; 61*4882a593Smuzhiyun reg = <0x0>; 62*4882a593Smuzhiyun clocks = <&ccu CLK_CPU>; 63*4882a593Smuzhiyun }; 64*4882a593Smuzhiyun }; 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun chosen { 67*4882a593Smuzhiyun #address-cells = <1>; 68*4882a593Smuzhiyun #size-cells = <1>; 69*4882a593Smuzhiyun ranges; 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun framebuffer-lcd0 { 72*4882a593Smuzhiyun compatible = "allwinner,simple-framebuffer", 73*4882a593Smuzhiyun "simple-framebuffer"; 74*4882a593Smuzhiyun allwinner,pipeline = "de_be0-lcd0"; 75*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_LCD>, <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, 76*4882a593Smuzhiyun <&ccu CLK_TCON_CH0>, <&ccu CLK_DRAM_DE_BE>; 77*4882a593Smuzhiyun status = "disabled"; 78*4882a593Smuzhiyun }; 79*4882a593Smuzhiyun 80*4882a593Smuzhiyun framebuffer-lcd0-tve0 { 81*4882a593Smuzhiyun compatible = "allwinner,simple-framebuffer", 82*4882a593Smuzhiyun "simple-framebuffer"; 83*4882a593Smuzhiyun allwinner,pipeline = "de_be0-lcd0-tve0"; 84*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_TVE>, <&ccu CLK_AHB_LCD>, 85*4882a593Smuzhiyun <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, 86*4882a593Smuzhiyun <&ccu CLK_TCON_CH1>, <&ccu CLK_DRAM_DE_BE>; 87*4882a593Smuzhiyun status = "disabled"; 88*4882a593Smuzhiyun }; 89*4882a593Smuzhiyun }; 90*4882a593Smuzhiyun 91*4882a593Smuzhiyun clocks { 92*4882a593Smuzhiyun #address-cells = <1>; 93*4882a593Smuzhiyun #size-cells = <1>; 94*4882a593Smuzhiyun ranges; 95*4882a593Smuzhiyun 96*4882a593Smuzhiyun osc24M: clk-24M { 97*4882a593Smuzhiyun #clock-cells = <0>; 98*4882a593Smuzhiyun compatible = "fixed-clock"; 99*4882a593Smuzhiyun clock-frequency = <24000000>; 100*4882a593Smuzhiyun clock-output-names = "osc24M"; 101*4882a593Smuzhiyun }; 102*4882a593Smuzhiyun 103*4882a593Smuzhiyun osc32k: clk-32k { 104*4882a593Smuzhiyun #clock-cells = <0>; 105*4882a593Smuzhiyun compatible = "fixed-clock"; 106*4882a593Smuzhiyun clock-frequency = <32768>; 107*4882a593Smuzhiyun clock-output-names = "osc32k"; 108*4882a593Smuzhiyun }; 109*4882a593Smuzhiyun }; 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun reserved-memory { 112*4882a593Smuzhiyun #address-cells = <1>; 113*4882a593Smuzhiyun #size-cells = <1>; 114*4882a593Smuzhiyun ranges; 115*4882a593Smuzhiyun 116*4882a593Smuzhiyun /* Address must be kept in the lower 256 MiBs of DRAM for VE. */ 117*4882a593Smuzhiyun default-pool { 118*4882a593Smuzhiyun compatible = "shared-dma-pool"; 119*4882a593Smuzhiyun size = <0x6000000>; 120*4882a593Smuzhiyun alloc-ranges = <0x40000000 0x10000000>; 121*4882a593Smuzhiyun reusable; 122*4882a593Smuzhiyun linux,cma-default; 123*4882a593Smuzhiyun }; 124*4882a593Smuzhiyun }; 125*4882a593Smuzhiyun 126*4882a593Smuzhiyun soc { 127*4882a593Smuzhiyun compatible = "simple-bus"; 128*4882a593Smuzhiyun #address-cells = <1>; 129*4882a593Smuzhiyun #size-cells = <1>; 130*4882a593Smuzhiyun dma-ranges; 131*4882a593Smuzhiyun ranges; 132*4882a593Smuzhiyun 133*4882a593Smuzhiyun system-control@1c00000 { 134*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-system-control"; 135*4882a593Smuzhiyun reg = <0x01c00000 0x30>; 136*4882a593Smuzhiyun #address-cells = <1>; 137*4882a593Smuzhiyun #size-cells = <1>; 138*4882a593Smuzhiyun ranges; 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun sram_a: sram@0 { 141*4882a593Smuzhiyun compatible = "mmio-sram"; 142*4882a593Smuzhiyun reg = <0x00000000 0xc000>; 143*4882a593Smuzhiyun #address-cells = <1>; 144*4882a593Smuzhiyun #size-cells = <1>; 145*4882a593Smuzhiyun ranges = <0 0x00000000 0xc000>; 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun emac_sram: sram-section@8000 { 148*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-sram-a3-a4", 149*4882a593Smuzhiyun "allwinner,sun4i-a10-sram-a3-a4"; 150*4882a593Smuzhiyun reg = <0x8000 0x4000>; 151*4882a593Smuzhiyun status = "disabled"; 152*4882a593Smuzhiyun }; 153*4882a593Smuzhiyun }; 154*4882a593Smuzhiyun 155*4882a593Smuzhiyun sram_d: sram@10000 { 156*4882a593Smuzhiyun compatible = "mmio-sram"; 157*4882a593Smuzhiyun reg = <0x00010000 0x1000>; 158*4882a593Smuzhiyun #address-cells = <1>; 159*4882a593Smuzhiyun #size-cells = <1>; 160*4882a593Smuzhiyun ranges = <0 0x00010000 0x1000>; 161*4882a593Smuzhiyun 162*4882a593Smuzhiyun otg_sram: sram-section@0 { 163*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-sram-d", 164*4882a593Smuzhiyun "allwinner,sun4i-a10-sram-d"; 165*4882a593Smuzhiyun reg = <0x0000 0x1000>; 166*4882a593Smuzhiyun status = "disabled"; 167*4882a593Smuzhiyun }; 168*4882a593Smuzhiyun }; 169*4882a593Smuzhiyun 170*4882a593Smuzhiyun sram_c: sram@1d00000 { 171*4882a593Smuzhiyun compatible = "mmio-sram"; 172*4882a593Smuzhiyun reg = <0x01d00000 0xd0000>; 173*4882a593Smuzhiyun #address-cells = <1>; 174*4882a593Smuzhiyun #size-cells = <1>; 175*4882a593Smuzhiyun ranges = <0 0x01d00000 0xd0000>; 176*4882a593Smuzhiyun 177*4882a593Smuzhiyun ve_sram: sram-section@0 { 178*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-sram-c1", 179*4882a593Smuzhiyun "allwinner,sun4i-a10-sram-c1"; 180*4882a593Smuzhiyun reg = <0x000000 0x80000>; 181*4882a593Smuzhiyun }; 182*4882a593Smuzhiyun }; 183*4882a593Smuzhiyun }; 184*4882a593Smuzhiyun 185*4882a593Smuzhiyun mbus: dram-controller@1c01000 { 186*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-mbus"; 187*4882a593Smuzhiyun reg = <0x01c01000 0x1000>; 188*4882a593Smuzhiyun clocks = <&ccu CLK_MBUS>; 189*4882a593Smuzhiyun #address-cells = <1>; 190*4882a593Smuzhiyun #size-cells = <1>; 191*4882a593Smuzhiyun dma-ranges = <0x00000000 0x40000000 0x20000000>; 192*4882a593Smuzhiyun #interconnect-cells = <1>; 193*4882a593Smuzhiyun }; 194*4882a593Smuzhiyun 195*4882a593Smuzhiyun dma: dma-controller@1c02000 { 196*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-dma"; 197*4882a593Smuzhiyun reg = <0x01c02000 0x1000>; 198*4882a593Smuzhiyun interrupts = <27>; 199*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_DMA>; 200*4882a593Smuzhiyun #dma-cells = <2>; 201*4882a593Smuzhiyun }; 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun nfc: nand-controller@1c03000 { 204*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-nand"; 205*4882a593Smuzhiyun reg = <0x01c03000 0x1000>; 206*4882a593Smuzhiyun interrupts = <37>; 207*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_NAND>, <&ccu CLK_NAND>; 208*4882a593Smuzhiyun clock-names = "ahb", "mod"; 209*4882a593Smuzhiyun dmas = <&dma SUN4I_DMA_DEDICATED 3>; 210*4882a593Smuzhiyun dma-names = "rxtx"; 211*4882a593Smuzhiyun status = "disabled"; 212*4882a593Smuzhiyun #address-cells = <1>; 213*4882a593Smuzhiyun #size-cells = <0>; 214*4882a593Smuzhiyun }; 215*4882a593Smuzhiyun 216*4882a593Smuzhiyun spi0: spi@1c05000 { 217*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-spi"; 218*4882a593Smuzhiyun reg = <0x01c05000 0x1000>; 219*4882a593Smuzhiyun interrupts = <10>; 220*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_SPI0>, <&ccu CLK_SPI0>; 221*4882a593Smuzhiyun clock-names = "ahb", "mod"; 222*4882a593Smuzhiyun dmas = <&dma SUN4I_DMA_DEDICATED 27>, 223*4882a593Smuzhiyun <&dma SUN4I_DMA_DEDICATED 26>; 224*4882a593Smuzhiyun dma-names = "rx", "tx"; 225*4882a593Smuzhiyun status = "disabled"; 226*4882a593Smuzhiyun #address-cells = <1>; 227*4882a593Smuzhiyun #size-cells = <0>; 228*4882a593Smuzhiyun }; 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun spi1: spi@1c06000 { 231*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-spi"; 232*4882a593Smuzhiyun reg = <0x01c06000 0x1000>; 233*4882a593Smuzhiyun interrupts = <11>; 234*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_SPI1>, <&ccu CLK_SPI1>; 235*4882a593Smuzhiyun clock-names = "ahb", "mod"; 236*4882a593Smuzhiyun dmas = <&dma SUN4I_DMA_DEDICATED 9>, 237*4882a593Smuzhiyun <&dma SUN4I_DMA_DEDICATED 8>; 238*4882a593Smuzhiyun dma-names = "rx", "tx"; 239*4882a593Smuzhiyun status = "disabled"; 240*4882a593Smuzhiyun #address-cells = <1>; 241*4882a593Smuzhiyun #size-cells = <0>; 242*4882a593Smuzhiyun }; 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun tve0: tv-encoder@1c0a000 { 245*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-tv-encoder"; 246*4882a593Smuzhiyun reg = <0x01c0a000 0x1000>; 247*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_TVE>; 248*4882a593Smuzhiyun resets = <&ccu RST_TVE>; 249*4882a593Smuzhiyun status = "disabled"; 250*4882a593Smuzhiyun 251*4882a593Smuzhiyun port { 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun tve0_in_tcon0: endpoint { 254*4882a593Smuzhiyun remote-endpoint = <&tcon0_out_tve0>; 255*4882a593Smuzhiyun }; 256*4882a593Smuzhiyun }; 257*4882a593Smuzhiyun }; 258*4882a593Smuzhiyun 259*4882a593Smuzhiyun emac: ethernet@1c0b000 { 260*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-emac"; 261*4882a593Smuzhiyun reg = <0x01c0b000 0x1000>; 262*4882a593Smuzhiyun interrupts = <55>; 263*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_EMAC>; 264*4882a593Smuzhiyun allwinner,sram = <&emac_sram 1>; 265*4882a593Smuzhiyun status = "disabled"; 266*4882a593Smuzhiyun }; 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun mdio: mdio@1c0b080 { 269*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-mdio"; 270*4882a593Smuzhiyun reg = <0x01c0b080 0x14>; 271*4882a593Smuzhiyun status = "disabled"; 272*4882a593Smuzhiyun #address-cells = <1>; 273*4882a593Smuzhiyun #size-cells = <0>; 274*4882a593Smuzhiyun }; 275*4882a593Smuzhiyun 276*4882a593Smuzhiyun tcon0: lcd-controller@1c0c000 { 277*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-tcon"; 278*4882a593Smuzhiyun reg = <0x01c0c000 0x1000>; 279*4882a593Smuzhiyun interrupts = <44>; 280*4882a593Smuzhiyun dmas = <&dma SUN4I_DMA_DEDICATED 14>; 281*4882a593Smuzhiyun resets = <&ccu RST_LCD>; 282*4882a593Smuzhiyun reset-names = "lcd"; 283*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_LCD>, 284*4882a593Smuzhiyun <&ccu CLK_TCON_CH0>, 285*4882a593Smuzhiyun <&ccu CLK_TCON_CH1>; 286*4882a593Smuzhiyun clock-names = "ahb", 287*4882a593Smuzhiyun "tcon-ch0", 288*4882a593Smuzhiyun "tcon-ch1"; 289*4882a593Smuzhiyun clock-output-names = "tcon-pixel-clock"; 290*4882a593Smuzhiyun #clock-cells = <0>; 291*4882a593Smuzhiyun status = "disabled"; 292*4882a593Smuzhiyun 293*4882a593Smuzhiyun ports { 294*4882a593Smuzhiyun #address-cells = <1>; 295*4882a593Smuzhiyun #size-cells = <0>; 296*4882a593Smuzhiyun 297*4882a593Smuzhiyun tcon0_in: port@0 { 298*4882a593Smuzhiyun reg = <0>; 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun tcon0_in_be0: endpoint { 301*4882a593Smuzhiyun remote-endpoint = <&be0_out_tcon0>; 302*4882a593Smuzhiyun }; 303*4882a593Smuzhiyun }; 304*4882a593Smuzhiyun 305*4882a593Smuzhiyun tcon0_out: port@1 { 306*4882a593Smuzhiyun #address-cells = <1>; 307*4882a593Smuzhiyun #size-cells = <0>; 308*4882a593Smuzhiyun reg = <1>; 309*4882a593Smuzhiyun 310*4882a593Smuzhiyun tcon0_out_tve0: endpoint@1 { 311*4882a593Smuzhiyun reg = <1>; 312*4882a593Smuzhiyun remote-endpoint = <&tve0_in_tcon0>; 313*4882a593Smuzhiyun allwinner,tcon-channel = <1>; 314*4882a593Smuzhiyun }; 315*4882a593Smuzhiyun }; 316*4882a593Smuzhiyun }; 317*4882a593Smuzhiyun }; 318*4882a593Smuzhiyun 319*4882a593Smuzhiyun video-codec@1c0e000 { 320*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-video-engine"; 321*4882a593Smuzhiyun reg = <0x01c0e000 0x1000>; 322*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_VE>, <&ccu CLK_VE>, 323*4882a593Smuzhiyun <&ccu CLK_DRAM_VE>; 324*4882a593Smuzhiyun clock-names = "ahb", "mod", "ram"; 325*4882a593Smuzhiyun resets = <&ccu RST_VE>; 326*4882a593Smuzhiyun interrupts = <53>; 327*4882a593Smuzhiyun allwinner,sram = <&ve_sram 1>; 328*4882a593Smuzhiyun }; 329*4882a593Smuzhiyun 330*4882a593Smuzhiyun mmc0: mmc@1c0f000 { 331*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-mmc"; 332*4882a593Smuzhiyun reg = <0x01c0f000 0x1000>; 333*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_MMC0>, <&ccu CLK_MMC0>; 334*4882a593Smuzhiyun clock-names = "ahb", "mmc"; 335*4882a593Smuzhiyun interrupts = <32>; 336*4882a593Smuzhiyun pinctrl-names = "default"; 337*4882a593Smuzhiyun pinctrl-0 = <&mmc0_pins>; 338*4882a593Smuzhiyun status = "disabled"; 339*4882a593Smuzhiyun #address-cells = <1>; 340*4882a593Smuzhiyun #size-cells = <0>; 341*4882a593Smuzhiyun }; 342*4882a593Smuzhiyun 343*4882a593Smuzhiyun mmc1: mmc@1c10000 { 344*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-mmc"; 345*4882a593Smuzhiyun reg = <0x01c10000 0x1000>; 346*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_MMC1>, <&ccu CLK_MMC1>; 347*4882a593Smuzhiyun clock-names = "ahb", "mmc"; 348*4882a593Smuzhiyun interrupts = <33>; 349*4882a593Smuzhiyun status = "disabled"; 350*4882a593Smuzhiyun #address-cells = <1>; 351*4882a593Smuzhiyun #size-cells = <0>; 352*4882a593Smuzhiyun }; 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun mmc2: mmc@1c11000 { 355*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-mmc"; 356*4882a593Smuzhiyun reg = <0x01c11000 0x1000>; 357*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_MMC2>, <&ccu CLK_MMC2>; 358*4882a593Smuzhiyun clock-names = "ahb", "mmc"; 359*4882a593Smuzhiyun interrupts = <34>; 360*4882a593Smuzhiyun status = "disabled"; 361*4882a593Smuzhiyun #address-cells = <1>; 362*4882a593Smuzhiyun #size-cells = <0>; 363*4882a593Smuzhiyun }; 364*4882a593Smuzhiyun 365*4882a593Smuzhiyun usb_otg: usb@1c13000 { 366*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-musb"; 367*4882a593Smuzhiyun reg = <0x01c13000 0x0400>; 368*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_OTG>; 369*4882a593Smuzhiyun interrupts = <38>; 370*4882a593Smuzhiyun interrupt-names = "mc"; 371*4882a593Smuzhiyun phys = <&usbphy 0>; 372*4882a593Smuzhiyun phy-names = "usb"; 373*4882a593Smuzhiyun extcon = <&usbphy 0>; 374*4882a593Smuzhiyun allwinner,sram = <&otg_sram 1>; 375*4882a593Smuzhiyun dr_mode = "otg"; 376*4882a593Smuzhiyun status = "disabled"; 377*4882a593Smuzhiyun }; 378*4882a593Smuzhiyun 379*4882a593Smuzhiyun usbphy: phy@1c13400 { 380*4882a593Smuzhiyun #phy-cells = <1>; 381*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-usb-phy"; 382*4882a593Smuzhiyun reg = <0x01c13400 0x10>, <0x01c14800 0x4>; 383*4882a593Smuzhiyun reg-names = "phy_ctrl", "pmu1"; 384*4882a593Smuzhiyun clocks = <&ccu CLK_USB_PHY0>; 385*4882a593Smuzhiyun clock-names = "usb_phy"; 386*4882a593Smuzhiyun resets = <&ccu RST_USB_PHY0>, <&ccu RST_USB_PHY1>; 387*4882a593Smuzhiyun reset-names = "usb0_reset", "usb1_reset"; 388*4882a593Smuzhiyun status = "disabled"; 389*4882a593Smuzhiyun }; 390*4882a593Smuzhiyun 391*4882a593Smuzhiyun ehci0: usb@1c14000 { 392*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-ehci", "generic-ehci"; 393*4882a593Smuzhiyun reg = <0x01c14000 0x100>; 394*4882a593Smuzhiyun interrupts = <39>; 395*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_EHCI>; 396*4882a593Smuzhiyun phys = <&usbphy 1>; 397*4882a593Smuzhiyun phy-names = "usb"; 398*4882a593Smuzhiyun status = "disabled"; 399*4882a593Smuzhiyun }; 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun ohci0: usb@1c14400 { 402*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-ohci", "generic-ohci"; 403*4882a593Smuzhiyun reg = <0x01c14400 0x100>; 404*4882a593Smuzhiyun interrupts = <40>; 405*4882a593Smuzhiyun clocks = <&ccu CLK_USB_OHCI>, <&ccu CLK_AHB_OHCI>; 406*4882a593Smuzhiyun phys = <&usbphy 1>; 407*4882a593Smuzhiyun phy-names = "usb"; 408*4882a593Smuzhiyun status = "disabled"; 409*4882a593Smuzhiyun }; 410*4882a593Smuzhiyun 411*4882a593Smuzhiyun crypto: crypto-engine@1c15000 { 412*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-crypto", 413*4882a593Smuzhiyun "allwinner,sun4i-a10-crypto"; 414*4882a593Smuzhiyun reg = <0x01c15000 0x1000>; 415*4882a593Smuzhiyun interrupts = <54>; 416*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_SS>, <&ccu CLK_SS>; 417*4882a593Smuzhiyun clock-names = "ahb", "mod"; 418*4882a593Smuzhiyun }; 419*4882a593Smuzhiyun 420*4882a593Smuzhiyun spi2: spi@1c17000 { 421*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-spi"; 422*4882a593Smuzhiyun reg = <0x01c17000 0x1000>; 423*4882a593Smuzhiyun interrupts = <12>; 424*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_SPI2>, <&ccu CLK_SPI2>; 425*4882a593Smuzhiyun clock-names = "ahb", "mod"; 426*4882a593Smuzhiyun dmas = <&dma SUN4I_DMA_DEDICATED 29>, 427*4882a593Smuzhiyun <&dma SUN4I_DMA_DEDICATED 28>; 428*4882a593Smuzhiyun dma-names = "rx", "tx"; 429*4882a593Smuzhiyun status = "disabled"; 430*4882a593Smuzhiyun #address-cells = <1>; 431*4882a593Smuzhiyun #size-cells = <0>; 432*4882a593Smuzhiyun }; 433*4882a593Smuzhiyun 434*4882a593Smuzhiyun ccu: clock@1c20000 { 435*4882a593Smuzhiyun reg = <0x01c20000 0x400>; 436*4882a593Smuzhiyun clocks = <&osc24M>, <&osc32k>; 437*4882a593Smuzhiyun clock-names = "hosc", "losc"; 438*4882a593Smuzhiyun #clock-cells = <1>; 439*4882a593Smuzhiyun #reset-cells = <1>; 440*4882a593Smuzhiyun }; 441*4882a593Smuzhiyun 442*4882a593Smuzhiyun intc: interrupt-controller@1c20400 { 443*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-ic"; 444*4882a593Smuzhiyun reg = <0x01c20400 0x400>; 445*4882a593Smuzhiyun interrupt-controller; 446*4882a593Smuzhiyun #interrupt-cells = <1>; 447*4882a593Smuzhiyun }; 448*4882a593Smuzhiyun 449*4882a593Smuzhiyun pio: pinctrl@1c20800 { 450*4882a593Smuzhiyun reg = <0x01c20800 0x400>; 451*4882a593Smuzhiyun interrupts = <28>; 452*4882a593Smuzhiyun clocks = <&ccu CLK_APB0_PIO>, <&osc24M>, <&osc32k>; 453*4882a593Smuzhiyun clock-names = "apb", "hosc", "losc"; 454*4882a593Smuzhiyun gpio-controller; 455*4882a593Smuzhiyun interrupt-controller; 456*4882a593Smuzhiyun #interrupt-cells = <3>; 457*4882a593Smuzhiyun #gpio-cells = <3>; 458*4882a593Smuzhiyun 459*4882a593Smuzhiyun emac_pd_pins: emac-pd-pins { 460*4882a593Smuzhiyun pins = "PD6", "PD7", "PD10", 461*4882a593Smuzhiyun "PD11", "PD12", "PD13", "PD14", 462*4882a593Smuzhiyun "PD15", "PD18", "PD19", "PD20", 463*4882a593Smuzhiyun "PD21", "PD22", "PD23", "PD24", 464*4882a593Smuzhiyun "PD25", "PD26", "PD27"; 465*4882a593Smuzhiyun function = "emac"; 466*4882a593Smuzhiyun }; 467*4882a593Smuzhiyun 468*4882a593Smuzhiyun i2c0_pins: i2c0-pins { 469*4882a593Smuzhiyun pins = "PB0", "PB1"; 470*4882a593Smuzhiyun function = "i2c0"; 471*4882a593Smuzhiyun }; 472*4882a593Smuzhiyun 473*4882a593Smuzhiyun i2c1_pins: i2c1-pins { 474*4882a593Smuzhiyun pins = "PB15", "PB16"; 475*4882a593Smuzhiyun function = "i2c1"; 476*4882a593Smuzhiyun }; 477*4882a593Smuzhiyun 478*4882a593Smuzhiyun i2c2_pins: i2c2-pins { 479*4882a593Smuzhiyun pins = "PB17", "PB18"; 480*4882a593Smuzhiyun function = "i2c2"; 481*4882a593Smuzhiyun }; 482*4882a593Smuzhiyun 483*4882a593Smuzhiyun ir0_rx_pin: ir0-rx-pin { 484*4882a593Smuzhiyun pins = "PB4"; 485*4882a593Smuzhiyun function = "ir0"; 486*4882a593Smuzhiyun }; 487*4882a593Smuzhiyun 488*4882a593Smuzhiyun lcd_rgb565_pins: lcd-rgb565-pins { 489*4882a593Smuzhiyun pins = "PD3", "PD4", "PD5", "PD6", "PD7", 490*4882a593Smuzhiyun "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", 491*4882a593Smuzhiyun "PD19", "PD20", "PD21", "PD22", "PD23", 492*4882a593Smuzhiyun "PD24", "PD25", "PD26", "PD27"; 493*4882a593Smuzhiyun function = "lcd0"; 494*4882a593Smuzhiyun }; 495*4882a593Smuzhiyun 496*4882a593Smuzhiyun lcd_rgb666_pins: lcd-rgb666-pins { 497*4882a593Smuzhiyun pins = "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", 498*4882a593Smuzhiyun "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", 499*4882a593Smuzhiyun "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", 500*4882a593Smuzhiyun "PD24", "PD25", "PD26", "PD27"; 501*4882a593Smuzhiyun function = "lcd0"; 502*4882a593Smuzhiyun }; 503*4882a593Smuzhiyun 504*4882a593Smuzhiyun mmc0_pins: mmc0-pins { 505*4882a593Smuzhiyun pins = "PF0", "PF1", "PF2", "PF3", 506*4882a593Smuzhiyun "PF4", "PF5"; 507*4882a593Smuzhiyun function = "mmc0"; 508*4882a593Smuzhiyun drive-strength = <30>; 509*4882a593Smuzhiyun bias-pull-up; 510*4882a593Smuzhiyun }; 511*4882a593Smuzhiyun 512*4882a593Smuzhiyun mmc2_4bit_pc_pins: mmc2-4bit-pc-pins { 513*4882a593Smuzhiyun pins = "PC6", "PC7", "PC8", "PC9", 514*4882a593Smuzhiyun "PC10", "PC11"; 515*4882a593Smuzhiyun function = "mmc2"; 516*4882a593Smuzhiyun drive-strength = <30>; 517*4882a593Smuzhiyun bias-pull-up; 518*4882a593Smuzhiyun }; 519*4882a593Smuzhiyun 520*4882a593Smuzhiyun mmc2_8bit_pins: mmc2-8bit-pins { 521*4882a593Smuzhiyun pins = "PC6", "PC7", "PC8", "PC9", 522*4882a593Smuzhiyun "PC10", "PC11", "PC12", "PC13", 523*4882a593Smuzhiyun "PC14", "PC15"; 524*4882a593Smuzhiyun function = "mmc2"; 525*4882a593Smuzhiyun drive-strength = <30>; 526*4882a593Smuzhiyun bias-pull-up; 527*4882a593Smuzhiyun }; 528*4882a593Smuzhiyun 529*4882a593Smuzhiyun nand_pins: nand-pins { 530*4882a593Smuzhiyun pins = "PC0", "PC1", "PC2", 531*4882a593Smuzhiyun "PC5", "PC8", "PC9", "PC10", 532*4882a593Smuzhiyun "PC11", "PC12", "PC13", "PC14", 533*4882a593Smuzhiyun "PC15"; 534*4882a593Smuzhiyun function = "nand0"; 535*4882a593Smuzhiyun }; 536*4882a593Smuzhiyun 537*4882a593Smuzhiyun nand_cs0_pin: nand-cs0-pin { 538*4882a593Smuzhiyun pins = "PC4"; 539*4882a593Smuzhiyun function = "nand0"; 540*4882a593Smuzhiyun }; 541*4882a593Smuzhiyun 542*4882a593Smuzhiyun nand_rb0_pin: nand-rb0-pin { 543*4882a593Smuzhiyun pins = "PC6"; 544*4882a593Smuzhiyun function = "nand0"; 545*4882a593Smuzhiyun }; 546*4882a593Smuzhiyun 547*4882a593Smuzhiyun pwm0_pin: pwm0-pin { 548*4882a593Smuzhiyun pins = "PB2"; 549*4882a593Smuzhiyun function = "pwm"; 550*4882a593Smuzhiyun }; 551*4882a593Smuzhiyun 552*4882a593Smuzhiyun spi2_pe_pins: spi2-pe-pins { 553*4882a593Smuzhiyun pins = "PE1", "PE2", "PE3"; 554*4882a593Smuzhiyun function = "spi2"; 555*4882a593Smuzhiyun }; 556*4882a593Smuzhiyun 557*4882a593Smuzhiyun spi2_cs0_pe_pin: spi2-cs0-pe-pin { 558*4882a593Smuzhiyun pins = "PE0"; 559*4882a593Smuzhiyun function = "spi2"; 560*4882a593Smuzhiyun }; 561*4882a593Smuzhiyun 562*4882a593Smuzhiyun uart1_pe_pins: uart1-pe-pins { 563*4882a593Smuzhiyun pins = "PE10", "PE11"; 564*4882a593Smuzhiyun function = "uart1"; 565*4882a593Smuzhiyun }; 566*4882a593Smuzhiyun 567*4882a593Smuzhiyun uart1_pg_pins: uart1-pg-pins { 568*4882a593Smuzhiyun pins = "PG3", "PG4"; 569*4882a593Smuzhiyun function = "uart1"; 570*4882a593Smuzhiyun }; 571*4882a593Smuzhiyun 572*4882a593Smuzhiyun uart2_pd_pins: uart2-pd-pins { 573*4882a593Smuzhiyun pins = "PD2", "PD3"; 574*4882a593Smuzhiyun function = "uart2"; 575*4882a593Smuzhiyun }; 576*4882a593Smuzhiyun 577*4882a593Smuzhiyun uart2_cts_rts_pd_pins: uart2-cts-rts-pd-pins { 578*4882a593Smuzhiyun pins = "PD4", "PD5"; 579*4882a593Smuzhiyun function = "uart2"; 580*4882a593Smuzhiyun }; 581*4882a593Smuzhiyun 582*4882a593Smuzhiyun uart3_pg_pins: uart3-pg-pins { 583*4882a593Smuzhiyun pins = "PG9", "PG10"; 584*4882a593Smuzhiyun function = "uart3"; 585*4882a593Smuzhiyun }; 586*4882a593Smuzhiyun 587*4882a593Smuzhiyun uart3_cts_rts_pg_pins: uart3-cts-rts-pg-pins { 588*4882a593Smuzhiyun pins = "PG11", "PG12"; 589*4882a593Smuzhiyun function = "uart3"; 590*4882a593Smuzhiyun }; 591*4882a593Smuzhiyun }; 592*4882a593Smuzhiyun 593*4882a593Smuzhiyun timer@1c20c00 { 594*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-timer"; 595*4882a593Smuzhiyun reg = <0x01c20c00 0x90>; 596*4882a593Smuzhiyun interrupts = <22>, 597*4882a593Smuzhiyun <23>, 598*4882a593Smuzhiyun <24>, 599*4882a593Smuzhiyun <25>, 600*4882a593Smuzhiyun <67>, 601*4882a593Smuzhiyun <68>; 602*4882a593Smuzhiyun clocks = <&ccu CLK_HOSC>; 603*4882a593Smuzhiyun }; 604*4882a593Smuzhiyun 605*4882a593Smuzhiyun wdt: watchdog@1c20c90 { 606*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-wdt"; 607*4882a593Smuzhiyun reg = <0x01c20c90 0x10>; 608*4882a593Smuzhiyun interrupts = <24>; 609*4882a593Smuzhiyun clocks = <&osc24M>; 610*4882a593Smuzhiyun }; 611*4882a593Smuzhiyun 612*4882a593Smuzhiyun ir0: ir@1c21800 { 613*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-ir"; 614*4882a593Smuzhiyun clocks = <&ccu CLK_APB0_IR>, <&ccu CLK_IR>; 615*4882a593Smuzhiyun clock-names = "apb", "ir"; 616*4882a593Smuzhiyun interrupts = <5>; 617*4882a593Smuzhiyun reg = <0x01c21800 0x40>; 618*4882a593Smuzhiyun status = "disabled"; 619*4882a593Smuzhiyun }; 620*4882a593Smuzhiyun 621*4882a593Smuzhiyun lradc: lradc@1c22800 { 622*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-lradc-keys"; 623*4882a593Smuzhiyun reg = <0x01c22800 0x100>; 624*4882a593Smuzhiyun interrupts = <31>; 625*4882a593Smuzhiyun status = "disabled"; 626*4882a593Smuzhiyun }; 627*4882a593Smuzhiyun 628*4882a593Smuzhiyun codec: codec@1c22c00 { 629*4882a593Smuzhiyun #sound-dai-cells = <0>; 630*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-codec"; 631*4882a593Smuzhiyun reg = <0x01c22c00 0x40>; 632*4882a593Smuzhiyun interrupts = <30>; 633*4882a593Smuzhiyun clocks = <&ccu CLK_APB0_CODEC>, <&ccu CLK_CODEC>; 634*4882a593Smuzhiyun clock-names = "apb", "codec"; 635*4882a593Smuzhiyun dmas = <&dma SUN4I_DMA_NORMAL 19>, 636*4882a593Smuzhiyun <&dma SUN4I_DMA_NORMAL 19>; 637*4882a593Smuzhiyun dma-names = "rx", "tx"; 638*4882a593Smuzhiyun status = "disabled"; 639*4882a593Smuzhiyun }; 640*4882a593Smuzhiyun 641*4882a593Smuzhiyun sid: eeprom@1c23800 { 642*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-sid"; 643*4882a593Smuzhiyun reg = <0x01c23800 0x10>; 644*4882a593Smuzhiyun }; 645*4882a593Smuzhiyun 646*4882a593Smuzhiyun rtp: rtp@1c25000 { 647*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-ts"; 648*4882a593Smuzhiyun reg = <0x01c25000 0x100>; 649*4882a593Smuzhiyun interrupts = <29>; 650*4882a593Smuzhiyun #thermal-sensor-cells = <0>; 651*4882a593Smuzhiyun }; 652*4882a593Smuzhiyun 653*4882a593Smuzhiyun uart0: serial@1c28000 { 654*4882a593Smuzhiyun compatible = "snps,dw-apb-uart"; 655*4882a593Smuzhiyun reg = <0x01c28000 0x400>; 656*4882a593Smuzhiyun interrupts = <1>; 657*4882a593Smuzhiyun reg-shift = <2>; 658*4882a593Smuzhiyun reg-io-width = <4>; 659*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_UART0>; 660*4882a593Smuzhiyun status = "disabled"; 661*4882a593Smuzhiyun }; 662*4882a593Smuzhiyun 663*4882a593Smuzhiyun uart1: serial@1c28400 { 664*4882a593Smuzhiyun compatible = "snps,dw-apb-uart"; 665*4882a593Smuzhiyun reg = <0x01c28400 0x400>; 666*4882a593Smuzhiyun interrupts = <2>; 667*4882a593Smuzhiyun reg-shift = <2>; 668*4882a593Smuzhiyun reg-io-width = <4>; 669*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_UART1>; 670*4882a593Smuzhiyun status = "disabled"; 671*4882a593Smuzhiyun }; 672*4882a593Smuzhiyun 673*4882a593Smuzhiyun uart2: serial@1c28800 { 674*4882a593Smuzhiyun compatible = "snps,dw-apb-uart"; 675*4882a593Smuzhiyun reg = <0x01c28800 0x400>; 676*4882a593Smuzhiyun interrupts = <3>; 677*4882a593Smuzhiyun reg-shift = <2>; 678*4882a593Smuzhiyun reg-io-width = <4>; 679*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_UART2>; 680*4882a593Smuzhiyun status = "disabled"; 681*4882a593Smuzhiyun }; 682*4882a593Smuzhiyun 683*4882a593Smuzhiyun uart3: serial@1c28c00 { 684*4882a593Smuzhiyun compatible = "snps,dw-apb-uart"; 685*4882a593Smuzhiyun reg = <0x01c28c00 0x400>; 686*4882a593Smuzhiyun interrupts = <4>; 687*4882a593Smuzhiyun reg-shift = <2>; 688*4882a593Smuzhiyun reg-io-width = <4>; 689*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_UART3>; 690*4882a593Smuzhiyun status = "disabled"; 691*4882a593Smuzhiyun }; 692*4882a593Smuzhiyun 693*4882a593Smuzhiyun i2c0: i2c@1c2ac00 { 694*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-i2c"; 695*4882a593Smuzhiyun reg = <0x01c2ac00 0x400>; 696*4882a593Smuzhiyun interrupts = <7>; 697*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_I2C0>; 698*4882a593Smuzhiyun pinctrl-names = "default"; 699*4882a593Smuzhiyun pinctrl-0 = <&i2c0_pins>; 700*4882a593Smuzhiyun status = "disabled"; 701*4882a593Smuzhiyun #address-cells = <1>; 702*4882a593Smuzhiyun #size-cells = <0>; 703*4882a593Smuzhiyun }; 704*4882a593Smuzhiyun 705*4882a593Smuzhiyun i2c1: i2c@1c2b000 { 706*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-i2c"; 707*4882a593Smuzhiyun reg = <0x01c2b000 0x400>; 708*4882a593Smuzhiyun interrupts = <8>; 709*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_I2C1>; 710*4882a593Smuzhiyun pinctrl-names = "default"; 711*4882a593Smuzhiyun pinctrl-0 = <&i2c1_pins>; 712*4882a593Smuzhiyun status = "disabled"; 713*4882a593Smuzhiyun #address-cells = <1>; 714*4882a593Smuzhiyun #size-cells = <0>; 715*4882a593Smuzhiyun }; 716*4882a593Smuzhiyun 717*4882a593Smuzhiyun i2c2: i2c@1c2b400 { 718*4882a593Smuzhiyun compatible = "allwinner,sun4i-a10-i2c"; 719*4882a593Smuzhiyun reg = <0x01c2b400 0x400>; 720*4882a593Smuzhiyun interrupts = <9>; 721*4882a593Smuzhiyun clocks = <&ccu CLK_APB1_I2C2>; 722*4882a593Smuzhiyun pinctrl-names = "default"; 723*4882a593Smuzhiyun pinctrl-0 = <&i2c2_pins>; 724*4882a593Smuzhiyun status = "disabled"; 725*4882a593Smuzhiyun #address-cells = <1>; 726*4882a593Smuzhiyun #size-cells = <0>; 727*4882a593Smuzhiyun }; 728*4882a593Smuzhiyun 729*4882a593Smuzhiyun timer@1c60000 { 730*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-hstimer"; 731*4882a593Smuzhiyun reg = <0x01c60000 0x1000>; 732*4882a593Smuzhiyun interrupts = <82>, <83>; 733*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_HSTIMER>; 734*4882a593Smuzhiyun }; 735*4882a593Smuzhiyun 736*4882a593Smuzhiyun fe0: display-frontend@1e00000 { 737*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-display-frontend"; 738*4882a593Smuzhiyun reg = <0x01e00000 0x20000>; 739*4882a593Smuzhiyun interrupts = <47>; 740*4882a593Smuzhiyun clocks = <&ccu CLK_DE_FE>, <&ccu CLK_DE_FE>, 741*4882a593Smuzhiyun <&ccu CLK_DRAM_DE_FE>; 742*4882a593Smuzhiyun clock-names = "ahb", "mod", 743*4882a593Smuzhiyun "ram"; 744*4882a593Smuzhiyun resets = <&ccu RST_DE_FE>; 745*4882a593Smuzhiyun interconnects = <&mbus 19>; 746*4882a593Smuzhiyun interconnect-names = "dma-mem"; 747*4882a593Smuzhiyun status = "disabled"; 748*4882a593Smuzhiyun 749*4882a593Smuzhiyun ports { 750*4882a593Smuzhiyun #address-cells = <1>; 751*4882a593Smuzhiyun #size-cells = <0>; 752*4882a593Smuzhiyun 753*4882a593Smuzhiyun fe0_out: port@1 { 754*4882a593Smuzhiyun reg = <1>; 755*4882a593Smuzhiyun 756*4882a593Smuzhiyun fe0_out_be0: endpoint { 757*4882a593Smuzhiyun remote-endpoint = <&be0_in_fe0>; 758*4882a593Smuzhiyun }; 759*4882a593Smuzhiyun }; 760*4882a593Smuzhiyun }; 761*4882a593Smuzhiyun }; 762*4882a593Smuzhiyun 763*4882a593Smuzhiyun be0: display-backend@1e60000 { 764*4882a593Smuzhiyun compatible = "allwinner,sun5i-a13-display-backend"; 765*4882a593Smuzhiyun reg = <0x01e60000 0x10000>; 766*4882a593Smuzhiyun interrupts = <47>; 767*4882a593Smuzhiyun clocks = <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, 768*4882a593Smuzhiyun <&ccu CLK_DRAM_DE_BE>; 769*4882a593Smuzhiyun clock-names = "ahb", "mod", 770*4882a593Smuzhiyun "ram"; 771*4882a593Smuzhiyun resets = <&ccu RST_DE_BE>; 772*4882a593Smuzhiyun interconnects = <&mbus 18>; 773*4882a593Smuzhiyun interconnect-names = "dma-mem"; 774*4882a593Smuzhiyun status = "disabled"; 775*4882a593Smuzhiyun 776*4882a593Smuzhiyun ports { 777*4882a593Smuzhiyun #address-cells = <1>; 778*4882a593Smuzhiyun #size-cells = <0>; 779*4882a593Smuzhiyun 780*4882a593Smuzhiyun be0_in: port@0 { 781*4882a593Smuzhiyun reg = <0>; 782*4882a593Smuzhiyun 783*4882a593Smuzhiyun be0_in_fe0: endpoint { 784*4882a593Smuzhiyun remote-endpoint = <&fe0_out_be0>; 785*4882a593Smuzhiyun }; 786*4882a593Smuzhiyun }; 787*4882a593Smuzhiyun 788*4882a593Smuzhiyun be0_out: port@1 { 789*4882a593Smuzhiyun reg = <1>; 790*4882a593Smuzhiyun 791*4882a593Smuzhiyun be0_out_tcon0: endpoint { 792*4882a593Smuzhiyun remote-endpoint = <&tcon0_in_be0>; 793*4882a593Smuzhiyun }; 794*4882a593Smuzhiyun }; 795*4882a593Smuzhiyun }; 796*4882a593Smuzhiyun }; 797*4882a593Smuzhiyun }; 798*4882a593Smuzhiyun}; 799