184943d6fSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2cb7aa33aSEmmanuel Vadot// Copyright (C) 2021-2022 Samuel Holland <samuel@sholland.org> 3cb7aa33aSEmmanuel Vadot 4cb7aa33aSEmmanuel Vadot#include <dt-bindings/clock/sun6i-rtc.h> 5cb7aa33aSEmmanuel Vadot#include <dt-bindings/clock/sun8i-de2.h> 6cb7aa33aSEmmanuel Vadot#include <dt-bindings/clock/sun8i-tcon-top.h> 7cb7aa33aSEmmanuel Vadot#include <dt-bindings/clock/sun20i-d1-ccu.h> 8cb7aa33aSEmmanuel Vadot#include <dt-bindings/clock/sun20i-d1-r-ccu.h> 9cb7aa33aSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 10cb7aa33aSEmmanuel Vadot#include <dt-bindings/reset/sun8i-de2.h> 11cb7aa33aSEmmanuel Vadot#include <dt-bindings/reset/sun20i-d1-ccu.h> 12cb7aa33aSEmmanuel Vadot#include <dt-bindings/reset/sun20i-d1-r-ccu.h> 13cb7aa33aSEmmanuel Vadot 14cb7aa33aSEmmanuel Vadot/ { 15cb7aa33aSEmmanuel Vadot #address-cells = <1>; 16cb7aa33aSEmmanuel Vadot #size-cells = <1>; 17cb7aa33aSEmmanuel Vadot 18cb7aa33aSEmmanuel Vadot dcxo: dcxo-clk { 19cb7aa33aSEmmanuel Vadot compatible = "fixed-clock"; 20cb7aa33aSEmmanuel Vadot clock-output-names = "dcxo"; 21cb7aa33aSEmmanuel Vadot #clock-cells = <0>; 22cb7aa33aSEmmanuel Vadot }; 23cb7aa33aSEmmanuel Vadot 24cb7aa33aSEmmanuel Vadot de: display-engine { 25cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-display-engine"; 26cb7aa33aSEmmanuel Vadot allwinner,pipelines = <&mixer0>, <&mixer1>; 27cb7aa33aSEmmanuel Vadot status = "disabled"; 28cb7aa33aSEmmanuel Vadot }; 29cb7aa33aSEmmanuel Vadot 30cb7aa33aSEmmanuel Vadot soc { 31cb7aa33aSEmmanuel Vadot compatible = "simple-bus"; 32cb7aa33aSEmmanuel Vadot ranges; 33cb7aa33aSEmmanuel Vadot dma-noncoherent; 34cb7aa33aSEmmanuel Vadot #address-cells = <1>; 35cb7aa33aSEmmanuel Vadot #size-cells = <1>; 36cb7aa33aSEmmanuel Vadot 37cb7aa33aSEmmanuel Vadot pio: pinctrl@2000000 { 38cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-pinctrl"; 39cb7aa33aSEmmanuel Vadot reg = <0x2000000 0x800>; 40cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(69) IRQ_TYPE_LEVEL_HIGH>, 41cb7aa33aSEmmanuel Vadot <SOC_PERIPHERAL_IRQ(71) IRQ_TYPE_LEVEL_HIGH>, 42cb7aa33aSEmmanuel Vadot <SOC_PERIPHERAL_IRQ(73) IRQ_TYPE_LEVEL_HIGH>, 43cb7aa33aSEmmanuel Vadot <SOC_PERIPHERAL_IRQ(75) IRQ_TYPE_LEVEL_HIGH>, 44cb7aa33aSEmmanuel Vadot <SOC_PERIPHERAL_IRQ(77) IRQ_TYPE_LEVEL_HIGH>, 45cb7aa33aSEmmanuel Vadot <SOC_PERIPHERAL_IRQ(79) IRQ_TYPE_LEVEL_HIGH>; 46cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_APB0>, 47cb7aa33aSEmmanuel Vadot <&dcxo>, 48cb7aa33aSEmmanuel Vadot <&rtc CLK_OSC32K>; 49cb7aa33aSEmmanuel Vadot clock-names = "apb", "hosc", "losc"; 50cb7aa33aSEmmanuel Vadot gpio-controller; 51cb7aa33aSEmmanuel Vadot interrupt-controller; 52cb7aa33aSEmmanuel Vadot #gpio-cells = <3>; 53cb7aa33aSEmmanuel Vadot #interrupt-cells = <3>; 54cb7aa33aSEmmanuel Vadot 55cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 56aa1a8ff2SEmmanuel Vadot can0_pins: can0-pins { 57aa1a8ff2SEmmanuel Vadot pins = "PB2", "PB3"; 58aa1a8ff2SEmmanuel Vadot function = "can0"; 59aa1a8ff2SEmmanuel Vadot }; 60aa1a8ff2SEmmanuel Vadot 61aa1a8ff2SEmmanuel Vadot /omit-if-no-ref/ 62aa1a8ff2SEmmanuel Vadot can1_pins: can1-pins { 63aa1a8ff2SEmmanuel Vadot pins = "PB4", "PB5"; 64aa1a8ff2SEmmanuel Vadot function = "can1"; 65aa1a8ff2SEmmanuel Vadot }; 66aa1a8ff2SEmmanuel Vadot 67aa1a8ff2SEmmanuel Vadot /omit-if-no-ref/ 68cb7aa33aSEmmanuel Vadot clk_pg11_pin: clk-pg11-pin { 69cb7aa33aSEmmanuel Vadot pins = "PG11"; 70cb7aa33aSEmmanuel Vadot function = "clk"; 71cb7aa33aSEmmanuel Vadot }; 72cb7aa33aSEmmanuel Vadot 73cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 74cb7aa33aSEmmanuel Vadot dsi_4lane_pins: dsi-4lane-pins { 75cb7aa33aSEmmanuel Vadot pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", 76cb7aa33aSEmmanuel Vadot "PD6", "PD7", "PD8", "PD9"; 77cb7aa33aSEmmanuel Vadot drive-strength = <30>; 78cb7aa33aSEmmanuel Vadot function = "dsi"; 79cb7aa33aSEmmanuel Vadot }; 80cb7aa33aSEmmanuel Vadot 81cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 82cb7aa33aSEmmanuel Vadot lcd_rgb666_pins: lcd-rgb666-pins { 83cb7aa33aSEmmanuel Vadot pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", 84cb7aa33aSEmmanuel Vadot "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", 85cb7aa33aSEmmanuel Vadot "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", 86cb7aa33aSEmmanuel Vadot "PD18", "PD19", "PD20", "PD21"; 87cb7aa33aSEmmanuel Vadot function = "lcd0"; 88cb7aa33aSEmmanuel Vadot }; 89cb7aa33aSEmmanuel Vadot 90cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 91cb7aa33aSEmmanuel Vadot mmc0_pins: mmc0-pins { 92cb7aa33aSEmmanuel Vadot pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; 93cb7aa33aSEmmanuel Vadot function = "mmc0"; 94cb7aa33aSEmmanuel Vadot }; 95cb7aa33aSEmmanuel Vadot 96cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 97cb7aa33aSEmmanuel Vadot mmc1_pins: mmc1-pins { 98cb7aa33aSEmmanuel Vadot pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5"; 99cb7aa33aSEmmanuel Vadot function = "mmc1"; 100cb7aa33aSEmmanuel Vadot }; 101cb7aa33aSEmmanuel Vadot 102cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 103cb7aa33aSEmmanuel Vadot mmc2_pins: mmc2-pins { 104cb7aa33aSEmmanuel Vadot pins = "PC2", "PC3", "PC4", "PC5", "PC6", "PC7"; 105cb7aa33aSEmmanuel Vadot function = "mmc2"; 106cb7aa33aSEmmanuel Vadot }; 107cb7aa33aSEmmanuel Vadot 108cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 109cb7aa33aSEmmanuel Vadot rgmii_pe_pins: rgmii-pe-pins { 110cb7aa33aSEmmanuel Vadot pins = "PE0", "PE1", "PE2", "PE3", "PE4", 111cb7aa33aSEmmanuel Vadot "PE5", "PE6", "PE7", "PE8", "PE9", 112cb7aa33aSEmmanuel Vadot "PE11", "PE12", "PE13", "PE14", "PE15"; 113cb7aa33aSEmmanuel Vadot function = "emac"; 114cb7aa33aSEmmanuel Vadot }; 115cb7aa33aSEmmanuel Vadot 116cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 117cb7aa33aSEmmanuel Vadot rmii_pe_pins: rmii-pe-pins { 118cb7aa33aSEmmanuel Vadot pins = "PE0", "PE1", "PE2", "PE3", "PE4", 119cb7aa33aSEmmanuel Vadot "PE5", "PE6", "PE7", "PE8", "PE9"; 120cb7aa33aSEmmanuel Vadot function = "emac"; 121cb7aa33aSEmmanuel Vadot }; 122cb7aa33aSEmmanuel Vadot 123cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 124f126890aSEmmanuel Vadot spi0_pins: spi0-pins { 125f126890aSEmmanuel Vadot pins = "PC2", "PC3", "PC4", "PC5"; 126f126890aSEmmanuel Vadot function = "spi0"; 127f126890aSEmmanuel Vadot }; 128f126890aSEmmanuel Vadot 129f126890aSEmmanuel Vadot /omit-if-no-ref/ 130cb7aa33aSEmmanuel Vadot uart1_pg6_pins: uart1-pg6-pins { 131cb7aa33aSEmmanuel Vadot pins = "PG6", "PG7"; 132cb7aa33aSEmmanuel Vadot function = "uart1"; 133cb7aa33aSEmmanuel Vadot }; 134cb7aa33aSEmmanuel Vadot 135cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 136cb7aa33aSEmmanuel Vadot uart1_pg8_rts_cts_pins: uart1-pg8-rts-cts-pins { 137cb7aa33aSEmmanuel Vadot pins = "PG8", "PG9"; 138cb7aa33aSEmmanuel Vadot function = "uart1"; 139cb7aa33aSEmmanuel Vadot }; 140cb7aa33aSEmmanuel Vadot 141cb7aa33aSEmmanuel Vadot /omit-if-no-ref/ 142cb7aa33aSEmmanuel Vadot uart3_pb_pins: uart3-pb-pins { 143cb7aa33aSEmmanuel Vadot pins = "PB6", "PB7"; 144cb7aa33aSEmmanuel Vadot function = "uart3"; 145cb7aa33aSEmmanuel Vadot }; 146cb7aa33aSEmmanuel Vadot }; 147cb7aa33aSEmmanuel Vadot 148cb7aa33aSEmmanuel Vadot ccu: clock-controller@2001000 { 149cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-ccu"; 150cb7aa33aSEmmanuel Vadot reg = <0x2001000 0x1000>; 151cb7aa33aSEmmanuel Vadot clocks = <&dcxo>, 152cb7aa33aSEmmanuel Vadot <&rtc CLK_OSC32K>, 153cb7aa33aSEmmanuel Vadot <&rtc CLK_IOSC>; 154cb7aa33aSEmmanuel Vadot clock-names = "hosc", "losc", "iosc"; 155cb7aa33aSEmmanuel Vadot #clock-cells = <1>; 156cb7aa33aSEmmanuel Vadot #reset-cells = <1>; 157cb7aa33aSEmmanuel Vadot }; 158cb7aa33aSEmmanuel Vadot 159aa1a8ff2SEmmanuel Vadot gpadc: adc@2009000 { 160aa1a8ff2SEmmanuel Vadot compatible = "allwinner,sun20i-d1-gpadc"; 161aa1a8ff2SEmmanuel Vadot reg = <0x2009000 0x400>; 162aa1a8ff2SEmmanuel Vadot clocks = <&ccu CLK_BUS_GPADC>; 163aa1a8ff2SEmmanuel Vadot resets = <&ccu RST_BUS_GPADC>; 164aa1a8ff2SEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(57) IRQ_TYPE_LEVEL_HIGH>; 165aa1a8ff2SEmmanuel Vadot status = "disabled"; 166aa1a8ff2SEmmanuel Vadot #io-channel-cells = <1>; 167aa1a8ff2SEmmanuel Vadot }; 168aa1a8ff2SEmmanuel Vadot 169cb7aa33aSEmmanuel Vadot dmic: dmic@2031000 { 170cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-dmic", 171cb7aa33aSEmmanuel Vadot "allwinner,sun50i-h6-dmic"; 172cb7aa33aSEmmanuel Vadot reg = <0x2031000 0x400>; 173cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(24) IRQ_TYPE_LEVEL_HIGH>; 174cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_DMIC>, 175cb7aa33aSEmmanuel Vadot <&ccu CLK_DMIC>; 176cb7aa33aSEmmanuel Vadot clock-names = "bus", "mod"; 177cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_DMIC>; 178cb7aa33aSEmmanuel Vadot dmas = <&dma 8>; 179cb7aa33aSEmmanuel Vadot dma-names = "rx"; 180cb7aa33aSEmmanuel Vadot status = "disabled"; 181cb7aa33aSEmmanuel Vadot #sound-dai-cells = <0>; 182cb7aa33aSEmmanuel Vadot }; 183cb7aa33aSEmmanuel Vadot 184cb7aa33aSEmmanuel Vadot i2s1: i2s@2033000 { 185cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-i2s", 186cb7aa33aSEmmanuel Vadot "allwinner,sun50i-r329-i2s"; 187cb7aa33aSEmmanuel Vadot reg = <0x2033000 0x1000>; 188cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(27) IRQ_TYPE_LEVEL_HIGH>; 189cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_I2S1>, 190cb7aa33aSEmmanuel Vadot <&ccu CLK_I2S1>; 191cb7aa33aSEmmanuel Vadot clock-names = "apb", "mod"; 192cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_I2S1>; 193cb7aa33aSEmmanuel Vadot dmas = <&dma 4>, <&dma 4>; 194cb7aa33aSEmmanuel Vadot dma-names = "rx", "tx"; 195cb7aa33aSEmmanuel Vadot status = "disabled"; 196cb7aa33aSEmmanuel Vadot #sound-dai-cells = <0>; 197cb7aa33aSEmmanuel Vadot }; 198cb7aa33aSEmmanuel Vadot 199cb7aa33aSEmmanuel Vadot i2s2: i2s@2034000 { 200cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-i2s", 201cb7aa33aSEmmanuel Vadot "allwinner,sun50i-r329-i2s"; 202cb7aa33aSEmmanuel Vadot reg = <0x2034000 0x1000>; 203cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(28) IRQ_TYPE_LEVEL_HIGH>; 204cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_I2S2>, 205cb7aa33aSEmmanuel Vadot <&ccu CLK_I2S2>; 206cb7aa33aSEmmanuel Vadot clock-names = "apb", "mod"; 207cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_I2S2>; 208cb7aa33aSEmmanuel Vadot dmas = <&dma 5>, <&dma 5>; 209cb7aa33aSEmmanuel Vadot dma-names = "rx", "tx"; 210cb7aa33aSEmmanuel Vadot status = "disabled"; 211cb7aa33aSEmmanuel Vadot #sound-dai-cells = <0>; 212cb7aa33aSEmmanuel Vadot }; 213cb7aa33aSEmmanuel Vadot 214cb7aa33aSEmmanuel Vadot timer: timer@2050000 { 215cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-timer", 216cb7aa33aSEmmanuel Vadot "allwinner,sun8i-a23-timer"; 217cb7aa33aSEmmanuel Vadot reg = <0x2050000 0xa0>; 218cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(59) IRQ_TYPE_LEVEL_HIGH>, 219cb7aa33aSEmmanuel Vadot <SOC_PERIPHERAL_IRQ(60) IRQ_TYPE_LEVEL_HIGH>; 220cb7aa33aSEmmanuel Vadot clocks = <&dcxo>; 221cb7aa33aSEmmanuel Vadot }; 222cb7aa33aSEmmanuel Vadot 223cb7aa33aSEmmanuel Vadot wdt: watchdog@20500a0 { 224cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-wdt-reset", 225cb7aa33aSEmmanuel Vadot "allwinner,sun20i-d1-wdt"; 226cb7aa33aSEmmanuel Vadot reg = <0x20500a0 0x20>; 227cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(63) IRQ_TYPE_LEVEL_HIGH>; 228cb7aa33aSEmmanuel Vadot clocks = <&dcxo>, <&rtc CLK_OSC32K>; 229cb7aa33aSEmmanuel Vadot clock-names = "hosc", "losc"; 230cb7aa33aSEmmanuel Vadot status = "reserved"; 231cb7aa33aSEmmanuel Vadot }; 232cb7aa33aSEmmanuel Vadot 233cb7aa33aSEmmanuel Vadot uart0: serial@2500000 { 234cb7aa33aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 235cb7aa33aSEmmanuel Vadot reg = <0x2500000 0x400>; 236cb7aa33aSEmmanuel Vadot reg-io-width = <4>; 237cb7aa33aSEmmanuel Vadot reg-shift = <2>; 238cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(2) IRQ_TYPE_LEVEL_HIGH>; 239cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_UART0>; 240cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_UART0>; 241cb7aa33aSEmmanuel Vadot dmas = <&dma 14>, <&dma 14>; 242fac71e4eSEmmanuel Vadot dma-names = "tx", "rx"; 243cb7aa33aSEmmanuel Vadot status = "disabled"; 244cb7aa33aSEmmanuel Vadot }; 245cb7aa33aSEmmanuel Vadot 246cb7aa33aSEmmanuel Vadot uart1: serial@2500400 { 247cb7aa33aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 248cb7aa33aSEmmanuel Vadot reg = <0x2500400 0x400>; 249cb7aa33aSEmmanuel Vadot reg-io-width = <4>; 250cb7aa33aSEmmanuel Vadot reg-shift = <2>; 251cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(3) IRQ_TYPE_LEVEL_HIGH>; 252cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_UART1>; 253cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_UART1>; 254cb7aa33aSEmmanuel Vadot dmas = <&dma 15>, <&dma 15>; 255fac71e4eSEmmanuel Vadot dma-names = "tx", "rx"; 256cb7aa33aSEmmanuel Vadot status = "disabled"; 257cb7aa33aSEmmanuel Vadot }; 258cb7aa33aSEmmanuel Vadot 259cb7aa33aSEmmanuel Vadot uart2: serial@2500800 { 260cb7aa33aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 261cb7aa33aSEmmanuel Vadot reg = <0x2500800 0x400>; 262cb7aa33aSEmmanuel Vadot reg-io-width = <4>; 263cb7aa33aSEmmanuel Vadot reg-shift = <2>; 264cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(4) IRQ_TYPE_LEVEL_HIGH>; 265cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_UART2>; 266cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_UART2>; 267cb7aa33aSEmmanuel Vadot dmas = <&dma 16>, <&dma 16>; 268fac71e4eSEmmanuel Vadot dma-names = "tx", "rx"; 269cb7aa33aSEmmanuel Vadot status = "disabled"; 270cb7aa33aSEmmanuel Vadot }; 271cb7aa33aSEmmanuel Vadot 272cb7aa33aSEmmanuel Vadot uart3: serial@2500c00 { 273cb7aa33aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 274cb7aa33aSEmmanuel Vadot reg = <0x2500c00 0x400>; 275cb7aa33aSEmmanuel Vadot reg-io-width = <4>; 276cb7aa33aSEmmanuel Vadot reg-shift = <2>; 277cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(5) IRQ_TYPE_LEVEL_HIGH>; 278cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_UART3>; 279cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_UART3>; 280cb7aa33aSEmmanuel Vadot dmas = <&dma 17>, <&dma 17>; 281fac71e4eSEmmanuel Vadot dma-names = "tx", "rx"; 282cb7aa33aSEmmanuel Vadot status = "disabled"; 283cb7aa33aSEmmanuel Vadot }; 284cb7aa33aSEmmanuel Vadot 285cb7aa33aSEmmanuel Vadot uart4: serial@2501000 { 286cb7aa33aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 287cb7aa33aSEmmanuel Vadot reg = <0x2501000 0x400>; 288cb7aa33aSEmmanuel Vadot reg-io-width = <4>; 289cb7aa33aSEmmanuel Vadot reg-shift = <2>; 290cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(6) IRQ_TYPE_LEVEL_HIGH>; 291cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_UART4>; 292cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_UART4>; 293cb7aa33aSEmmanuel Vadot dmas = <&dma 18>, <&dma 18>; 294fac71e4eSEmmanuel Vadot dma-names = "tx", "rx"; 295cb7aa33aSEmmanuel Vadot status = "disabled"; 296cb7aa33aSEmmanuel Vadot }; 297cb7aa33aSEmmanuel Vadot 298cb7aa33aSEmmanuel Vadot uart5: serial@2501400 { 299cb7aa33aSEmmanuel Vadot compatible = "snps,dw-apb-uart"; 300cb7aa33aSEmmanuel Vadot reg = <0x2501400 0x400>; 301cb7aa33aSEmmanuel Vadot reg-io-width = <4>; 302cb7aa33aSEmmanuel Vadot reg-shift = <2>; 303cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(7) IRQ_TYPE_LEVEL_HIGH>; 304cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_UART5>; 305cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_UART5>; 306cb7aa33aSEmmanuel Vadot dmas = <&dma 19>, <&dma 19>; 307fac71e4eSEmmanuel Vadot dma-names = "tx", "rx"; 308cb7aa33aSEmmanuel Vadot status = "disabled"; 309cb7aa33aSEmmanuel Vadot }; 310cb7aa33aSEmmanuel Vadot 311cb7aa33aSEmmanuel Vadot i2c0: i2c@2502000 { 312cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-i2c", 313cb7aa33aSEmmanuel Vadot "allwinner,sun8i-v536-i2c", 314cb7aa33aSEmmanuel Vadot "allwinner,sun6i-a31-i2c"; 315cb7aa33aSEmmanuel Vadot reg = <0x2502000 0x400>; 316cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(9) IRQ_TYPE_LEVEL_HIGH>; 317cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_I2C0>; 318cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_I2C0>; 319cb7aa33aSEmmanuel Vadot dmas = <&dma 43>, <&dma 43>; 320cb7aa33aSEmmanuel Vadot dma-names = "rx", "tx"; 321cb7aa33aSEmmanuel Vadot status = "disabled"; 322cb7aa33aSEmmanuel Vadot #address-cells = <1>; 323cb7aa33aSEmmanuel Vadot #size-cells = <0>; 324cb7aa33aSEmmanuel Vadot }; 325cb7aa33aSEmmanuel Vadot 326cb7aa33aSEmmanuel Vadot i2c1: i2c@2502400 { 327cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-i2c", 328cb7aa33aSEmmanuel Vadot "allwinner,sun8i-v536-i2c", 329cb7aa33aSEmmanuel Vadot "allwinner,sun6i-a31-i2c"; 330cb7aa33aSEmmanuel Vadot reg = <0x2502400 0x400>; 331cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(10) IRQ_TYPE_LEVEL_HIGH>; 332cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_I2C1>; 333cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_I2C1>; 334cb7aa33aSEmmanuel Vadot dmas = <&dma 44>, <&dma 44>; 335cb7aa33aSEmmanuel Vadot dma-names = "rx", "tx"; 336cb7aa33aSEmmanuel Vadot status = "disabled"; 337cb7aa33aSEmmanuel Vadot #address-cells = <1>; 338cb7aa33aSEmmanuel Vadot #size-cells = <0>; 339cb7aa33aSEmmanuel Vadot }; 340cb7aa33aSEmmanuel Vadot 341cb7aa33aSEmmanuel Vadot i2c2: i2c@2502800 { 342cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-i2c", 343cb7aa33aSEmmanuel Vadot "allwinner,sun8i-v536-i2c", 344cb7aa33aSEmmanuel Vadot "allwinner,sun6i-a31-i2c"; 345cb7aa33aSEmmanuel Vadot reg = <0x2502800 0x400>; 346cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(11) IRQ_TYPE_LEVEL_HIGH>; 347cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_I2C2>; 348cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_I2C2>; 349cb7aa33aSEmmanuel Vadot dmas = <&dma 45>, <&dma 45>; 350cb7aa33aSEmmanuel Vadot dma-names = "rx", "tx"; 351cb7aa33aSEmmanuel Vadot status = "disabled"; 352cb7aa33aSEmmanuel Vadot #address-cells = <1>; 353cb7aa33aSEmmanuel Vadot #size-cells = <0>; 354cb7aa33aSEmmanuel Vadot }; 355cb7aa33aSEmmanuel Vadot 356cb7aa33aSEmmanuel Vadot i2c3: i2c@2502c00 { 357cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-i2c", 358cb7aa33aSEmmanuel Vadot "allwinner,sun8i-v536-i2c", 359cb7aa33aSEmmanuel Vadot "allwinner,sun6i-a31-i2c"; 360cb7aa33aSEmmanuel Vadot reg = <0x2502c00 0x400>; 361cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(12) IRQ_TYPE_LEVEL_HIGH>; 362cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_I2C3>; 363cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_I2C3>; 364cb7aa33aSEmmanuel Vadot dmas = <&dma 46>, <&dma 46>; 365cb7aa33aSEmmanuel Vadot dma-names = "rx", "tx"; 366cb7aa33aSEmmanuel Vadot status = "disabled"; 367cb7aa33aSEmmanuel Vadot #address-cells = <1>; 368cb7aa33aSEmmanuel Vadot #size-cells = <0>; 369cb7aa33aSEmmanuel Vadot }; 370cb7aa33aSEmmanuel Vadot 371aa1a8ff2SEmmanuel Vadot can0: can@2504000 { 372aa1a8ff2SEmmanuel Vadot compatible = "allwinner,sun20i-d1-can"; 373aa1a8ff2SEmmanuel Vadot reg = <0x02504000 0x400>; 374aa1a8ff2SEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(21) IRQ_TYPE_LEVEL_HIGH>; 375aa1a8ff2SEmmanuel Vadot clocks = <&ccu CLK_BUS_CAN0>; 376aa1a8ff2SEmmanuel Vadot resets = <&ccu RST_BUS_CAN0>; 377aa1a8ff2SEmmanuel Vadot pinctrl-names = "default"; 378aa1a8ff2SEmmanuel Vadot pinctrl-0 = <&can0_pins>; 379aa1a8ff2SEmmanuel Vadot status = "disabled"; 380aa1a8ff2SEmmanuel Vadot }; 381aa1a8ff2SEmmanuel Vadot 382aa1a8ff2SEmmanuel Vadot can1: can@2504400 { 383aa1a8ff2SEmmanuel Vadot compatible = "allwinner,sun20i-d1-can"; 384aa1a8ff2SEmmanuel Vadot reg = <0x02504400 0x400>; 385aa1a8ff2SEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(22) IRQ_TYPE_LEVEL_HIGH>; 386aa1a8ff2SEmmanuel Vadot clocks = <&ccu CLK_BUS_CAN1>; 387aa1a8ff2SEmmanuel Vadot resets = <&ccu RST_BUS_CAN1>; 388aa1a8ff2SEmmanuel Vadot pinctrl-names = "default"; 389aa1a8ff2SEmmanuel Vadot pinctrl-0 = <&can1_pins>; 390aa1a8ff2SEmmanuel Vadot status = "disabled"; 391aa1a8ff2SEmmanuel Vadot }; 392aa1a8ff2SEmmanuel Vadot 393cb7aa33aSEmmanuel Vadot syscon: syscon@3000000 { 394cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-system-control"; 395cb7aa33aSEmmanuel Vadot reg = <0x3000000 0x1000>; 396cb7aa33aSEmmanuel Vadot ranges; 397cb7aa33aSEmmanuel Vadot #address-cells = <1>; 398cb7aa33aSEmmanuel Vadot #size-cells = <1>; 399*0e8011faSEmmanuel Vadot 400*0e8011faSEmmanuel Vadot regulators@3000150 { 401*0e8011faSEmmanuel Vadot compatible = "allwinner,sun20i-d1-system-ldos"; 402*0e8011faSEmmanuel Vadot reg = <0x3000150 0x4>; 403*0e8011faSEmmanuel Vadot 404*0e8011faSEmmanuel Vadot reg_ldoa: ldoa { 405*0e8011faSEmmanuel Vadot }; 406*0e8011faSEmmanuel Vadot 407*0e8011faSEmmanuel Vadot reg_ldob: ldob { 408*0e8011faSEmmanuel Vadot }; 409*0e8011faSEmmanuel Vadot }; 410cb7aa33aSEmmanuel Vadot }; 411cb7aa33aSEmmanuel Vadot 412cb7aa33aSEmmanuel Vadot dma: dma-controller@3002000 { 413cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-dma"; 414cb7aa33aSEmmanuel Vadot reg = <0x3002000 0x1000>; 415cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(50) IRQ_TYPE_LEVEL_HIGH>; 416cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_DMA>, <&ccu CLK_MBUS_DMA>; 417cb7aa33aSEmmanuel Vadot clock-names = "bus", "mbus"; 418cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_DMA>; 419cb7aa33aSEmmanuel Vadot dma-channels = <16>; 420cb7aa33aSEmmanuel Vadot dma-requests = <48>; 421cb7aa33aSEmmanuel Vadot #dma-cells = <1>; 422cb7aa33aSEmmanuel Vadot }; 423cb7aa33aSEmmanuel Vadot 424cb7aa33aSEmmanuel Vadot sid: efuse@3006000 { 425cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-sid"; 426cb7aa33aSEmmanuel Vadot reg = <0x3006000 0x1000>; 427cb7aa33aSEmmanuel Vadot #address-cells = <1>; 428cb7aa33aSEmmanuel Vadot #size-cells = <1>; 429cb7aa33aSEmmanuel Vadot }; 430cb7aa33aSEmmanuel Vadot 431fac71e4eSEmmanuel Vadot crypto: crypto@3040000 { 432fac71e4eSEmmanuel Vadot compatible = "allwinner,sun20i-d1-crypto"; 433fac71e4eSEmmanuel Vadot reg = <0x3040000 0x800>; 434fac71e4eSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(52) IRQ_TYPE_LEVEL_HIGH>; 435fac71e4eSEmmanuel Vadot clocks = <&ccu CLK_BUS_CE>, 436fac71e4eSEmmanuel Vadot <&ccu CLK_CE>, 437fac71e4eSEmmanuel Vadot <&ccu CLK_MBUS_CE>, 438fac71e4eSEmmanuel Vadot <&rtc CLK_IOSC>; 439fac71e4eSEmmanuel Vadot clock-names = "bus", "mod", "ram", "trng"; 440fac71e4eSEmmanuel Vadot resets = <&ccu RST_BUS_CE>; 441fac71e4eSEmmanuel Vadot }; 442fac71e4eSEmmanuel Vadot 443cb7aa33aSEmmanuel Vadot mbus: dram-controller@3102000 { 444cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-mbus"; 445cb7aa33aSEmmanuel Vadot reg = <0x3102000 0x1000>, 446cb7aa33aSEmmanuel Vadot <0x3103000 0x1000>; 447cb7aa33aSEmmanuel Vadot reg-names = "mbus", "dram"; 448cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(43) IRQ_TYPE_LEVEL_HIGH>; 449cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_MBUS>, 450cb7aa33aSEmmanuel Vadot <&ccu CLK_DRAM>, 451cb7aa33aSEmmanuel Vadot <&ccu CLK_BUS_DRAM>; 452cb7aa33aSEmmanuel Vadot clock-names = "mbus", "dram", "bus"; 453cb7aa33aSEmmanuel Vadot dma-ranges = <0 0x40000000 0x80000000>; 454cb7aa33aSEmmanuel Vadot #address-cells = <1>; 455cb7aa33aSEmmanuel Vadot #size-cells = <1>; 456cb7aa33aSEmmanuel Vadot #interconnect-cells = <1>; 457cb7aa33aSEmmanuel Vadot }; 458cb7aa33aSEmmanuel Vadot 459cb7aa33aSEmmanuel Vadot mmc0: mmc@4020000 { 460cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-mmc"; 461cb7aa33aSEmmanuel Vadot reg = <0x4020000 0x1000>; 462cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(40) IRQ_TYPE_LEVEL_HIGH>; 463cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_MMC0>, <&ccu CLK_MMC0>; 464cb7aa33aSEmmanuel Vadot clock-names = "ahb", "mmc"; 465cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_MMC0>; 466cb7aa33aSEmmanuel Vadot reset-names = "ahb"; 467cb7aa33aSEmmanuel Vadot cap-sd-highspeed; 468cb7aa33aSEmmanuel Vadot max-frequency = <150000000>; 469cb7aa33aSEmmanuel Vadot no-mmc; 470cb7aa33aSEmmanuel Vadot status = "disabled"; 471cb7aa33aSEmmanuel Vadot #address-cells = <1>; 472cb7aa33aSEmmanuel Vadot #size-cells = <0>; 473cb7aa33aSEmmanuel Vadot }; 474cb7aa33aSEmmanuel Vadot 475cb7aa33aSEmmanuel Vadot mmc1: mmc@4021000 { 476cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-mmc"; 477cb7aa33aSEmmanuel Vadot reg = <0x4021000 0x1000>; 478cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(41) IRQ_TYPE_LEVEL_HIGH>; 479cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_MMC1>, <&ccu CLK_MMC1>; 480cb7aa33aSEmmanuel Vadot clock-names = "ahb", "mmc"; 481cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_MMC1>; 482cb7aa33aSEmmanuel Vadot reset-names = "ahb"; 483cb7aa33aSEmmanuel Vadot cap-sd-highspeed; 484cb7aa33aSEmmanuel Vadot max-frequency = <150000000>; 485cb7aa33aSEmmanuel Vadot no-mmc; 486cb7aa33aSEmmanuel Vadot status = "disabled"; 487cb7aa33aSEmmanuel Vadot #address-cells = <1>; 488cb7aa33aSEmmanuel Vadot #size-cells = <0>; 489cb7aa33aSEmmanuel Vadot }; 490cb7aa33aSEmmanuel Vadot 491cb7aa33aSEmmanuel Vadot mmc2: mmc@4022000 { 492cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-emmc", 493cb7aa33aSEmmanuel Vadot "allwinner,sun50i-a100-emmc"; 494cb7aa33aSEmmanuel Vadot reg = <0x4022000 0x1000>; 495cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(42) IRQ_TYPE_LEVEL_HIGH>; 496cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_MMC2>, <&ccu CLK_MMC2>; 497cb7aa33aSEmmanuel Vadot clock-names = "ahb", "mmc"; 498cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_MMC2>; 499cb7aa33aSEmmanuel Vadot reset-names = "ahb"; 500cb7aa33aSEmmanuel Vadot cap-mmc-highspeed; 501cb7aa33aSEmmanuel Vadot max-frequency = <150000000>; 502cb7aa33aSEmmanuel Vadot mmc-ddr-1_8v; 503cb7aa33aSEmmanuel Vadot mmc-ddr-3_3v; 504cb7aa33aSEmmanuel Vadot no-sd; 505cb7aa33aSEmmanuel Vadot no-sdio; 506cb7aa33aSEmmanuel Vadot status = "disabled"; 507cb7aa33aSEmmanuel Vadot #address-cells = <1>; 508cb7aa33aSEmmanuel Vadot #size-cells = <0>; 509cb7aa33aSEmmanuel Vadot }; 510cb7aa33aSEmmanuel Vadot 511f126890aSEmmanuel Vadot spi0: spi@4025000 { 512f126890aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-spi", 513f126890aSEmmanuel Vadot "allwinner,sun50i-r329-spi"; 514f126890aSEmmanuel Vadot reg = <0x04025000 0x1000>; 515f126890aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(15) IRQ_TYPE_LEVEL_HIGH>; 516f126890aSEmmanuel Vadot clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; 517f126890aSEmmanuel Vadot clock-names = "ahb", "mod"; 518f126890aSEmmanuel Vadot dmas = <&dma 22>, <&dma 22>; 519f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 520f126890aSEmmanuel Vadot resets = <&ccu RST_BUS_SPI0>; 521f126890aSEmmanuel Vadot status = "disabled"; 522f126890aSEmmanuel Vadot #address-cells = <1>; 523f126890aSEmmanuel Vadot #size-cells = <0>; 524f126890aSEmmanuel Vadot }; 525f126890aSEmmanuel Vadot 526f126890aSEmmanuel Vadot spi1: spi@4026000 { 527f126890aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-spi-dbi", 528f126890aSEmmanuel Vadot "allwinner,sun50i-r329-spi-dbi", 529f126890aSEmmanuel Vadot "allwinner,sun50i-r329-spi"; 530f126890aSEmmanuel Vadot reg = <0x04026000 0x1000>; 531f126890aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(16) IRQ_TYPE_LEVEL_HIGH>; 532f126890aSEmmanuel Vadot clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; 533f126890aSEmmanuel Vadot clock-names = "ahb", "mod"; 534f126890aSEmmanuel Vadot dmas = <&dma 23>, <&dma 23>; 535f126890aSEmmanuel Vadot dma-names = "rx", "tx"; 536f126890aSEmmanuel Vadot resets = <&ccu RST_BUS_SPI1>; 537f126890aSEmmanuel Vadot status = "disabled"; 538f126890aSEmmanuel Vadot #address-cells = <1>; 539f126890aSEmmanuel Vadot #size-cells = <0>; 540f126890aSEmmanuel Vadot }; 541f126890aSEmmanuel Vadot 542cb7aa33aSEmmanuel Vadot usb_otg: usb@4100000 { 543cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-musb", 544cb7aa33aSEmmanuel Vadot "allwinner,sun8i-a33-musb"; 545cb7aa33aSEmmanuel Vadot reg = <0x4100000 0x400>; 546cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(29) IRQ_TYPE_LEVEL_HIGH>; 547cb7aa33aSEmmanuel Vadot interrupt-names = "mc"; 548cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_OTG>; 549cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_OTG>; 550cb7aa33aSEmmanuel Vadot extcon = <&usbphy 0>; 551cb7aa33aSEmmanuel Vadot phys = <&usbphy 0>; 552cb7aa33aSEmmanuel Vadot phy-names = "usb"; 553cb7aa33aSEmmanuel Vadot status = "disabled"; 554cb7aa33aSEmmanuel Vadot }; 555cb7aa33aSEmmanuel Vadot 556cb7aa33aSEmmanuel Vadot usbphy: phy@4100400 { 557cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-usb-phy"; 558cb7aa33aSEmmanuel Vadot reg = <0x4100400 0x100>, 559cb7aa33aSEmmanuel Vadot <0x4101800 0x100>, 560cb7aa33aSEmmanuel Vadot <0x4200800 0x100>; 561cb7aa33aSEmmanuel Vadot reg-names = "phy_ctrl", 562cb7aa33aSEmmanuel Vadot "pmu0", 563cb7aa33aSEmmanuel Vadot "pmu1"; 564cb7aa33aSEmmanuel Vadot clocks = <&dcxo>, 565cb7aa33aSEmmanuel Vadot <&dcxo>; 566cb7aa33aSEmmanuel Vadot clock-names = "usb0_phy", 567cb7aa33aSEmmanuel Vadot "usb1_phy"; 568cb7aa33aSEmmanuel Vadot resets = <&ccu RST_USB_PHY0>, 569cb7aa33aSEmmanuel Vadot <&ccu RST_USB_PHY1>; 570cb7aa33aSEmmanuel Vadot reset-names = "usb0_reset", 571cb7aa33aSEmmanuel Vadot "usb1_reset"; 572cb7aa33aSEmmanuel Vadot status = "disabled"; 573cb7aa33aSEmmanuel Vadot #phy-cells = <1>; 574cb7aa33aSEmmanuel Vadot }; 575cb7aa33aSEmmanuel Vadot 576cb7aa33aSEmmanuel Vadot ehci0: usb@4101000 { 577cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-ehci", 578cb7aa33aSEmmanuel Vadot "generic-ehci"; 579cb7aa33aSEmmanuel Vadot reg = <0x4101000 0x100>; 580cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(30) IRQ_TYPE_LEVEL_HIGH>; 581cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_OHCI0>, 582cb7aa33aSEmmanuel Vadot <&ccu CLK_BUS_EHCI0>, 583cb7aa33aSEmmanuel Vadot <&ccu CLK_USB_OHCI0>; 584cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_OHCI0>, 585cb7aa33aSEmmanuel Vadot <&ccu RST_BUS_EHCI0>; 586cb7aa33aSEmmanuel Vadot phys = <&usbphy 0>; 587cb7aa33aSEmmanuel Vadot phy-names = "usb"; 588cb7aa33aSEmmanuel Vadot status = "disabled"; 589cb7aa33aSEmmanuel Vadot }; 590cb7aa33aSEmmanuel Vadot 591cb7aa33aSEmmanuel Vadot ohci0: usb@4101400 { 592cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-ohci", 593cb7aa33aSEmmanuel Vadot "generic-ohci"; 594cb7aa33aSEmmanuel Vadot reg = <0x4101400 0x100>; 595cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(31) IRQ_TYPE_LEVEL_HIGH>; 596cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_OHCI0>, 597cb7aa33aSEmmanuel Vadot <&ccu CLK_USB_OHCI0>; 598cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_OHCI0>; 599cb7aa33aSEmmanuel Vadot phys = <&usbphy 0>; 600cb7aa33aSEmmanuel Vadot phy-names = "usb"; 601cb7aa33aSEmmanuel Vadot status = "disabled"; 602cb7aa33aSEmmanuel Vadot }; 603cb7aa33aSEmmanuel Vadot 604cb7aa33aSEmmanuel Vadot ehci1: usb@4200000 { 605cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-ehci", 606cb7aa33aSEmmanuel Vadot "generic-ehci"; 607cb7aa33aSEmmanuel Vadot reg = <0x4200000 0x100>; 608cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(33) IRQ_TYPE_LEVEL_HIGH>; 609cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_OHCI1>, 610cb7aa33aSEmmanuel Vadot <&ccu CLK_BUS_EHCI1>, 611cb7aa33aSEmmanuel Vadot <&ccu CLK_USB_OHCI1>; 612cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_OHCI1>, 613cb7aa33aSEmmanuel Vadot <&ccu RST_BUS_EHCI1>; 614cb7aa33aSEmmanuel Vadot phys = <&usbphy 1>; 615cb7aa33aSEmmanuel Vadot phy-names = "usb"; 616cb7aa33aSEmmanuel Vadot status = "disabled"; 617cb7aa33aSEmmanuel Vadot }; 618cb7aa33aSEmmanuel Vadot 619cb7aa33aSEmmanuel Vadot ohci1: usb@4200400 { 620cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-ohci", 621cb7aa33aSEmmanuel Vadot "generic-ohci"; 622cb7aa33aSEmmanuel Vadot reg = <0x4200400 0x100>; 623cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(34) IRQ_TYPE_LEVEL_HIGH>; 624cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_OHCI1>, 625cb7aa33aSEmmanuel Vadot <&ccu CLK_USB_OHCI1>; 626cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_OHCI1>; 627cb7aa33aSEmmanuel Vadot phys = <&usbphy 1>; 628cb7aa33aSEmmanuel Vadot phy-names = "usb"; 629cb7aa33aSEmmanuel Vadot status = "disabled"; 630cb7aa33aSEmmanuel Vadot }; 631cb7aa33aSEmmanuel Vadot 632cb7aa33aSEmmanuel Vadot emac: ethernet@4500000 { 633cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-emac", 634cb7aa33aSEmmanuel Vadot "allwinner,sun50i-a64-emac"; 635cb7aa33aSEmmanuel Vadot reg = <0x4500000 0x10000>; 636cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(46) IRQ_TYPE_LEVEL_HIGH>; 637cb7aa33aSEmmanuel Vadot interrupt-names = "macirq"; 638cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_EMAC>; 639cb7aa33aSEmmanuel Vadot clock-names = "stmmaceth"; 640cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_EMAC>; 641cb7aa33aSEmmanuel Vadot reset-names = "stmmaceth"; 642cb7aa33aSEmmanuel Vadot syscon = <&syscon>; 643cb7aa33aSEmmanuel Vadot status = "disabled"; 644cb7aa33aSEmmanuel Vadot 645cb7aa33aSEmmanuel Vadot mdio: mdio { 646cb7aa33aSEmmanuel Vadot compatible = "snps,dwmac-mdio"; 647cb7aa33aSEmmanuel Vadot #address-cells = <1>; 648cb7aa33aSEmmanuel Vadot #size-cells = <0>; 649cb7aa33aSEmmanuel Vadot }; 650cb7aa33aSEmmanuel Vadot }; 651cb7aa33aSEmmanuel Vadot 652cb7aa33aSEmmanuel Vadot display_clocks: clock-controller@5000000 { 653cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-de2-clk", 654cb7aa33aSEmmanuel Vadot "allwinner,sun50i-h5-de2-clk"; 655cb7aa33aSEmmanuel Vadot reg = <0x5000000 0x10000>; 656cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_DE>, <&ccu CLK_DE>; 657cb7aa33aSEmmanuel Vadot clock-names = "bus", "mod"; 658cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_DE>; 659cb7aa33aSEmmanuel Vadot #clock-cells = <1>; 660cb7aa33aSEmmanuel Vadot #reset-cells = <1>; 661cb7aa33aSEmmanuel Vadot }; 662cb7aa33aSEmmanuel Vadot 663cb7aa33aSEmmanuel Vadot mixer0: mixer@5100000 { 664cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-de2-mixer-0"; 665cb7aa33aSEmmanuel Vadot reg = <0x5100000 0x100000>; 666cb7aa33aSEmmanuel Vadot clocks = <&display_clocks CLK_BUS_MIXER0>, 667cb7aa33aSEmmanuel Vadot <&display_clocks CLK_MIXER0>; 668cb7aa33aSEmmanuel Vadot clock-names = "bus", "mod"; 669cb7aa33aSEmmanuel Vadot resets = <&display_clocks RST_MIXER0>; 670cb7aa33aSEmmanuel Vadot 671cb7aa33aSEmmanuel Vadot ports { 672cb7aa33aSEmmanuel Vadot #address-cells = <1>; 673cb7aa33aSEmmanuel Vadot #size-cells = <0>; 674cb7aa33aSEmmanuel Vadot 675cb7aa33aSEmmanuel Vadot mixer0_out: port@1 { 676cb7aa33aSEmmanuel Vadot reg = <1>; 677cb7aa33aSEmmanuel Vadot 678cb7aa33aSEmmanuel Vadot mixer0_out_tcon_top_mixer0: endpoint { 679cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_mixer0_in_mixer0>; 680cb7aa33aSEmmanuel Vadot }; 681cb7aa33aSEmmanuel Vadot }; 682cb7aa33aSEmmanuel Vadot }; 683cb7aa33aSEmmanuel Vadot }; 684cb7aa33aSEmmanuel Vadot 685cb7aa33aSEmmanuel Vadot mixer1: mixer@5200000 { 686cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-de2-mixer-1"; 687cb7aa33aSEmmanuel Vadot reg = <0x5200000 0x100000>; 688cb7aa33aSEmmanuel Vadot clocks = <&display_clocks CLK_BUS_MIXER1>, 689cb7aa33aSEmmanuel Vadot <&display_clocks CLK_MIXER1>; 690cb7aa33aSEmmanuel Vadot clock-names = "bus", "mod"; 691cb7aa33aSEmmanuel Vadot resets = <&display_clocks RST_MIXER1>; 692cb7aa33aSEmmanuel Vadot 693cb7aa33aSEmmanuel Vadot ports { 694cb7aa33aSEmmanuel Vadot #address-cells = <1>; 695cb7aa33aSEmmanuel Vadot #size-cells = <0>; 696cb7aa33aSEmmanuel Vadot 697cb7aa33aSEmmanuel Vadot mixer1_out: port@1 { 698cb7aa33aSEmmanuel Vadot reg = <1>; 699cb7aa33aSEmmanuel Vadot 700cb7aa33aSEmmanuel Vadot mixer1_out_tcon_top_mixer1: endpoint { 701cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_mixer1_in_mixer1>; 702cb7aa33aSEmmanuel Vadot }; 703cb7aa33aSEmmanuel Vadot }; 704cb7aa33aSEmmanuel Vadot }; 705cb7aa33aSEmmanuel Vadot }; 706cb7aa33aSEmmanuel Vadot 707cb7aa33aSEmmanuel Vadot dsi: dsi@5450000 { 708cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-mipi-dsi", 709cb7aa33aSEmmanuel Vadot "allwinner,sun50i-a100-mipi-dsi"; 710cb7aa33aSEmmanuel Vadot reg = <0x5450000 0x1000>; 711cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(92) IRQ_TYPE_LEVEL_HIGH>; 712cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_MIPI_DSI>, 713cb7aa33aSEmmanuel Vadot <&tcon_top CLK_TCON_TOP_DSI>; 714cb7aa33aSEmmanuel Vadot clock-names = "bus", "mod"; 715cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_MIPI_DSI>; 716cb7aa33aSEmmanuel Vadot phys = <&dphy>; 717cb7aa33aSEmmanuel Vadot phy-names = "dphy"; 718cb7aa33aSEmmanuel Vadot status = "disabled"; 719cb7aa33aSEmmanuel Vadot 720cb7aa33aSEmmanuel Vadot port { 721cb7aa33aSEmmanuel Vadot dsi_in_tcon_lcd0: endpoint { 722cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_lcd0_out_dsi>; 723cb7aa33aSEmmanuel Vadot }; 724cb7aa33aSEmmanuel Vadot }; 725cb7aa33aSEmmanuel Vadot }; 726cb7aa33aSEmmanuel Vadot 727cb7aa33aSEmmanuel Vadot dphy: phy@5451000 { 728cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-mipi-dphy", 729cb7aa33aSEmmanuel Vadot "allwinner,sun50i-a100-mipi-dphy"; 730cb7aa33aSEmmanuel Vadot reg = <0x5451000 0x1000>; 731cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(92) IRQ_TYPE_LEVEL_HIGH>; 732cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_MIPI_DSI>, 733cb7aa33aSEmmanuel Vadot <&ccu CLK_MIPI_DSI>; 734cb7aa33aSEmmanuel Vadot clock-names = "bus", "mod"; 735cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_MIPI_DSI>; 736cb7aa33aSEmmanuel Vadot #phy-cells = <0>; 737cb7aa33aSEmmanuel Vadot }; 738cb7aa33aSEmmanuel Vadot 739cb7aa33aSEmmanuel Vadot tcon_top: tcon-top@5460000 { 740cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-tcon-top"; 741cb7aa33aSEmmanuel Vadot reg = <0x5460000 0x1000>; 742cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_DPSS_TOP>, 743cb7aa33aSEmmanuel Vadot <&ccu CLK_TCON_TV>, 744cb7aa33aSEmmanuel Vadot <&ccu CLK_TVE>, 745cb7aa33aSEmmanuel Vadot <&ccu CLK_TCON_LCD0>; 746cb7aa33aSEmmanuel Vadot clock-names = "bus", "tcon-tv0", "tve0", "dsi"; 747cb7aa33aSEmmanuel Vadot clock-output-names = "tcon-top-tv0", "tcon-top-dsi"; 748cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_DPSS_TOP>; 749cb7aa33aSEmmanuel Vadot #clock-cells = <1>; 750cb7aa33aSEmmanuel Vadot 751cb7aa33aSEmmanuel Vadot ports { 752cb7aa33aSEmmanuel Vadot #address-cells = <1>; 753cb7aa33aSEmmanuel Vadot #size-cells = <0>; 754cb7aa33aSEmmanuel Vadot 755cb7aa33aSEmmanuel Vadot tcon_top_mixer0_in: port@0 { 756cb7aa33aSEmmanuel Vadot reg = <0>; 757cb7aa33aSEmmanuel Vadot 758cb7aa33aSEmmanuel Vadot tcon_top_mixer0_in_mixer0: endpoint { 759cb7aa33aSEmmanuel Vadot remote-endpoint = <&mixer0_out_tcon_top_mixer0>; 760cb7aa33aSEmmanuel Vadot }; 761cb7aa33aSEmmanuel Vadot }; 762cb7aa33aSEmmanuel Vadot 763cb7aa33aSEmmanuel Vadot tcon_top_mixer0_out: port@1 { 764cb7aa33aSEmmanuel Vadot reg = <1>; 765cb7aa33aSEmmanuel Vadot #address-cells = <1>; 766cb7aa33aSEmmanuel Vadot #size-cells = <0>; 767cb7aa33aSEmmanuel Vadot 768cb7aa33aSEmmanuel Vadot tcon_top_mixer0_out_tcon_lcd0: endpoint@0 { 769cb7aa33aSEmmanuel Vadot reg = <0>; 770cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_lcd0_in_tcon_top_mixer0>; 771cb7aa33aSEmmanuel Vadot }; 772cb7aa33aSEmmanuel Vadot 773cb7aa33aSEmmanuel Vadot tcon_top_mixer0_out_tcon_tv0: endpoint@2 { 774cb7aa33aSEmmanuel Vadot reg = <2>; 775cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_tv0_in_tcon_top_mixer0>; 776cb7aa33aSEmmanuel Vadot }; 777cb7aa33aSEmmanuel Vadot }; 778cb7aa33aSEmmanuel Vadot 779cb7aa33aSEmmanuel Vadot tcon_top_mixer1_in: port@2 { 780cb7aa33aSEmmanuel Vadot reg = <2>; 781cb7aa33aSEmmanuel Vadot #address-cells = <1>; 782cb7aa33aSEmmanuel Vadot #size-cells = <0>; 783cb7aa33aSEmmanuel Vadot 784cb7aa33aSEmmanuel Vadot tcon_top_mixer1_in_mixer1: endpoint@1 { 785cb7aa33aSEmmanuel Vadot reg = <1>; 786cb7aa33aSEmmanuel Vadot remote-endpoint = <&mixer1_out_tcon_top_mixer1>; 787cb7aa33aSEmmanuel Vadot }; 788cb7aa33aSEmmanuel Vadot }; 789cb7aa33aSEmmanuel Vadot 790cb7aa33aSEmmanuel Vadot tcon_top_mixer1_out: port@3 { 791cb7aa33aSEmmanuel Vadot reg = <3>; 792cb7aa33aSEmmanuel Vadot #address-cells = <1>; 793cb7aa33aSEmmanuel Vadot #size-cells = <0>; 794cb7aa33aSEmmanuel Vadot 795cb7aa33aSEmmanuel Vadot tcon_top_mixer1_out_tcon_lcd0: endpoint@0 { 796cb7aa33aSEmmanuel Vadot reg = <0>; 797cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_lcd0_in_tcon_top_mixer1>; 798cb7aa33aSEmmanuel Vadot }; 799cb7aa33aSEmmanuel Vadot 800cb7aa33aSEmmanuel Vadot tcon_top_mixer1_out_tcon_tv0: endpoint@2 { 801cb7aa33aSEmmanuel Vadot reg = <2>; 802cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_tv0_in_tcon_top_mixer1>; 803cb7aa33aSEmmanuel Vadot }; 804cb7aa33aSEmmanuel Vadot }; 805cb7aa33aSEmmanuel Vadot 806cb7aa33aSEmmanuel Vadot tcon_top_hdmi_in: port@4 { 807cb7aa33aSEmmanuel Vadot reg = <4>; 808cb7aa33aSEmmanuel Vadot 809cb7aa33aSEmmanuel Vadot tcon_top_hdmi_in_tcon_tv0: endpoint { 810cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_tv0_out_tcon_top_hdmi>; 811cb7aa33aSEmmanuel Vadot }; 812cb7aa33aSEmmanuel Vadot }; 813cb7aa33aSEmmanuel Vadot 814cb7aa33aSEmmanuel Vadot tcon_top_hdmi_out: port@5 { 815cb7aa33aSEmmanuel Vadot reg = <5>; 816cb7aa33aSEmmanuel Vadot }; 817cb7aa33aSEmmanuel Vadot }; 818cb7aa33aSEmmanuel Vadot }; 819cb7aa33aSEmmanuel Vadot 820cb7aa33aSEmmanuel Vadot tcon_lcd0: lcd-controller@5461000 { 821cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-tcon-lcd"; 822cb7aa33aSEmmanuel Vadot reg = <0x5461000 0x1000>; 823cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(90) IRQ_TYPE_LEVEL_HIGH>; 824cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_TCON_LCD0>, 825cb7aa33aSEmmanuel Vadot <&ccu CLK_TCON_LCD0>; 826cb7aa33aSEmmanuel Vadot clock-names = "ahb", "tcon-ch0"; 827cb7aa33aSEmmanuel Vadot clock-output-names = "tcon-pixel-clock"; 828cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_TCON_LCD0>, 829cb7aa33aSEmmanuel Vadot <&ccu RST_BUS_LVDS0>; 830cb7aa33aSEmmanuel Vadot reset-names = "lcd", "lvds"; 831cb7aa33aSEmmanuel Vadot #clock-cells = <0>; 832cb7aa33aSEmmanuel Vadot 833cb7aa33aSEmmanuel Vadot ports { 834cb7aa33aSEmmanuel Vadot #address-cells = <1>; 835cb7aa33aSEmmanuel Vadot #size-cells = <0>; 836cb7aa33aSEmmanuel Vadot 837cb7aa33aSEmmanuel Vadot tcon_lcd0_in: port@0 { 838cb7aa33aSEmmanuel Vadot reg = <0>; 839cb7aa33aSEmmanuel Vadot #address-cells = <1>; 840cb7aa33aSEmmanuel Vadot #size-cells = <0>; 841cb7aa33aSEmmanuel Vadot 842cb7aa33aSEmmanuel Vadot tcon_lcd0_in_tcon_top_mixer0: endpoint@0 { 843cb7aa33aSEmmanuel Vadot reg = <0>; 844cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_mixer0_out_tcon_lcd0>; 845cb7aa33aSEmmanuel Vadot }; 846cb7aa33aSEmmanuel Vadot 847cb7aa33aSEmmanuel Vadot tcon_lcd0_in_tcon_top_mixer1: endpoint@1 { 848cb7aa33aSEmmanuel Vadot reg = <1>; 849cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_mixer1_out_tcon_lcd0>; 850cb7aa33aSEmmanuel Vadot }; 851cb7aa33aSEmmanuel Vadot }; 852cb7aa33aSEmmanuel Vadot 853cb7aa33aSEmmanuel Vadot tcon_lcd0_out: port@1 { 854cb7aa33aSEmmanuel Vadot reg = <1>; 855cb7aa33aSEmmanuel Vadot #address-cells = <1>; 856cb7aa33aSEmmanuel Vadot #size-cells = <0>; 857cb7aa33aSEmmanuel Vadot 858cb7aa33aSEmmanuel Vadot tcon_lcd0_out_dsi: endpoint@1 { 859cb7aa33aSEmmanuel Vadot reg = <1>; 860cb7aa33aSEmmanuel Vadot remote-endpoint = <&dsi_in_tcon_lcd0>; 861cb7aa33aSEmmanuel Vadot }; 862cb7aa33aSEmmanuel Vadot }; 863cb7aa33aSEmmanuel Vadot }; 864cb7aa33aSEmmanuel Vadot }; 865cb7aa33aSEmmanuel Vadot 866cb7aa33aSEmmanuel Vadot tcon_tv0: lcd-controller@5470000 { 867cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-tcon-tv"; 868cb7aa33aSEmmanuel Vadot reg = <0x5470000 0x1000>; 869cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(91) IRQ_TYPE_LEVEL_HIGH>; 870cb7aa33aSEmmanuel Vadot clocks = <&ccu CLK_BUS_TCON_TV>, 871cb7aa33aSEmmanuel Vadot <&tcon_top CLK_TCON_TOP_TV0>; 872cb7aa33aSEmmanuel Vadot clock-names = "ahb", "tcon-ch1"; 873cb7aa33aSEmmanuel Vadot resets = <&ccu RST_BUS_TCON_TV>; 874cb7aa33aSEmmanuel Vadot reset-names = "lcd"; 875cb7aa33aSEmmanuel Vadot 876cb7aa33aSEmmanuel Vadot ports { 877cb7aa33aSEmmanuel Vadot #address-cells = <1>; 878cb7aa33aSEmmanuel Vadot #size-cells = <0>; 879cb7aa33aSEmmanuel Vadot 880cb7aa33aSEmmanuel Vadot tcon_tv0_in: port@0 { 881cb7aa33aSEmmanuel Vadot reg = <0>; 882cb7aa33aSEmmanuel Vadot #address-cells = <1>; 883cb7aa33aSEmmanuel Vadot #size-cells = <0>; 884cb7aa33aSEmmanuel Vadot 885cb7aa33aSEmmanuel Vadot tcon_tv0_in_tcon_top_mixer0: endpoint@0 { 886cb7aa33aSEmmanuel Vadot reg = <0>; 887cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_mixer0_out_tcon_tv0>; 888cb7aa33aSEmmanuel Vadot }; 889cb7aa33aSEmmanuel Vadot 890cb7aa33aSEmmanuel Vadot tcon_tv0_in_tcon_top_mixer1: endpoint@1 { 891cb7aa33aSEmmanuel Vadot reg = <1>; 892cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_mixer1_out_tcon_tv0>; 893cb7aa33aSEmmanuel Vadot }; 894cb7aa33aSEmmanuel Vadot }; 895cb7aa33aSEmmanuel Vadot 896cb7aa33aSEmmanuel Vadot tcon_tv0_out: port@1 { 897cb7aa33aSEmmanuel Vadot reg = <1>; 898cb7aa33aSEmmanuel Vadot 899cb7aa33aSEmmanuel Vadot tcon_tv0_out_tcon_top_hdmi: endpoint { 900cb7aa33aSEmmanuel Vadot remote-endpoint = <&tcon_top_hdmi_in_tcon_tv0>; 901cb7aa33aSEmmanuel Vadot }; 902cb7aa33aSEmmanuel Vadot }; 903cb7aa33aSEmmanuel Vadot }; 904cb7aa33aSEmmanuel Vadot }; 905cb7aa33aSEmmanuel Vadot 906cb7aa33aSEmmanuel Vadot ppu: power-controller@7001000 { 907cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-ppu"; 908cb7aa33aSEmmanuel Vadot reg = <0x7001000 0x1000>; 909cb7aa33aSEmmanuel Vadot clocks = <&r_ccu CLK_BUS_R_PPU>; 910cb7aa33aSEmmanuel Vadot resets = <&r_ccu RST_BUS_R_PPU>; 911cb7aa33aSEmmanuel Vadot #power-domain-cells = <1>; 912cb7aa33aSEmmanuel Vadot }; 913cb7aa33aSEmmanuel Vadot 914cb7aa33aSEmmanuel Vadot r_ccu: clock-controller@7010000 { 915cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-r-ccu"; 916cb7aa33aSEmmanuel Vadot reg = <0x7010000 0x400>; 917cb7aa33aSEmmanuel Vadot clocks = <&dcxo>, 918cb7aa33aSEmmanuel Vadot <&rtc CLK_OSC32K>, 919cb7aa33aSEmmanuel Vadot <&rtc CLK_IOSC>, 920cb7aa33aSEmmanuel Vadot <&ccu CLK_PLL_PERIPH0_DIV3>; 921cb7aa33aSEmmanuel Vadot clock-names = "hosc", "losc", "iosc", "pll-periph"; 922cb7aa33aSEmmanuel Vadot #clock-cells = <1>; 923cb7aa33aSEmmanuel Vadot #reset-cells = <1>; 924cb7aa33aSEmmanuel Vadot }; 925cb7aa33aSEmmanuel Vadot 926cb7aa33aSEmmanuel Vadot rtc: rtc@7090000 { 927cb7aa33aSEmmanuel Vadot compatible = "allwinner,sun20i-d1-rtc", 928cb7aa33aSEmmanuel Vadot "allwinner,sun50i-r329-rtc"; 929cb7aa33aSEmmanuel Vadot reg = <0x7090000 0x400>; 930cb7aa33aSEmmanuel Vadot interrupts = <SOC_PERIPHERAL_IRQ(144) IRQ_TYPE_LEVEL_HIGH>; 931cb7aa33aSEmmanuel Vadot clocks = <&r_ccu CLK_BUS_R_RTC>, 932cb7aa33aSEmmanuel Vadot <&dcxo>, 933cb7aa33aSEmmanuel Vadot <&r_ccu CLK_R_AHB>; 934cb7aa33aSEmmanuel Vadot clock-names = "bus", "hosc", "ahb"; 935cb7aa33aSEmmanuel Vadot #clock-cells = <1>; 936cb7aa33aSEmmanuel Vadot }; 937cb7aa33aSEmmanuel Vadot }; 938cb7aa33aSEmmanuel Vadot}; 939