1077e5f4fSSamuel Holland// SPDX-License-Identifier: (GPL-2.0+ or MIT) 2077e5f4fSSamuel Holland// Copyright (C) 2021-2022 Samuel Holland <samuel@sholland.org> 3077e5f4fSSamuel Holland 4077e5f4fSSamuel Holland#include <dt-bindings/clock/sun6i-rtc.h> 5077e5f4fSSamuel Holland#include <dt-bindings/clock/sun8i-de2.h> 6077e5f4fSSamuel Holland#include <dt-bindings/clock/sun8i-tcon-top.h> 7077e5f4fSSamuel Holland#include <dt-bindings/clock/sun20i-d1-ccu.h> 8077e5f4fSSamuel Holland#include <dt-bindings/clock/sun20i-d1-r-ccu.h> 9077e5f4fSSamuel Holland#include <dt-bindings/interrupt-controller/irq.h> 10077e5f4fSSamuel Holland#include <dt-bindings/reset/sun8i-de2.h> 11077e5f4fSSamuel Holland#include <dt-bindings/reset/sun20i-d1-ccu.h> 12077e5f4fSSamuel Holland#include <dt-bindings/reset/sun20i-d1-r-ccu.h> 13077e5f4fSSamuel Holland 14077e5f4fSSamuel Holland/ { 15077e5f4fSSamuel Holland #address-cells = <1>; 16077e5f4fSSamuel Holland #size-cells = <1>; 17077e5f4fSSamuel Holland 18077e5f4fSSamuel Holland dcxo: dcxo-clk { 19077e5f4fSSamuel Holland compatible = "fixed-clock"; 20077e5f4fSSamuel Holland clock-output-names = "dcxo"; 21077e5f4fSSamuel Holland #clock-cells = <0>; 22077e5f4fSSamuel Holland }; 23077e5f4fSSamuel Holland 24077e5f4fSSamuel Holland de: display-engine { 25077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-display-engine"; 26077e5f4fSSamuel Holland allwinner,pipelines = <&mixer0>, <&mixer1>; 27077e5f4fSSamuel Holland status = "disabled"; 28077e5f4fSSamuel Holland }; 29077e5f4fSSamuel Holland 30077e5f4fSSamuel Holland soc { 31077e5f4fSSamuel Holland compatible = "simple-bus"; 32077e5f4fSSamuel Holland ranges; 33077e5f4fSSamuel Holland dma-noncoherent; 34077e5f4fSSamuel Holland #address-cells = <1>; 35077e5f4fSSamuel Holland #size-cells = <1>; 36077e5f4fSSamuel Holland 37077e5f4fSSamuel Holland pio: pinctrl@2000000 { 38077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-pinctrl"; 39077e5f4fSSamuel Holland reg = <0x2000000 0x800>; 40077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(69) IRQ_TYPE_LEVEL_HIGH>, 41077e5f4fSSamuel Holland <SOC_PERIPHERAL_IRQ(71) IRQ_TYPE_LEVEL_HIGH>, 42077e5f4fSSamuel Holland <SOC_PERIPHERAL_IRQ(73) IRQ_TYPE_LEVEL_HIGH>, 43077e5f4fSSamuel Holland <SOC_PERIPHERAL_IRQ(75) IRQ_TYPE_LEVEL_HIGH>, 44077e5f4fSSamuel Holland <SOC_PERIPHERAL_IRQ(77) IRQ_TYPE_LEVEL_HIGH>, 45077e5f4fSSamuel Holland <SOC_PERIPHERAL_IRQ(79) IRQ_TYPE_LEVEL_HIGH>; 46077e5f4fSSamuel Holland clocks = <&ccu CLK_APB0>, 47077e5f4fSSamuel Holland <&dcxo>, 48077e5f4fSSamuel Holland <&rtc CLK_OSC32K>; 49077e5f4fSSamuel Holland clock-names = "apb", "hosc", "losc"; 50077e5f4fSSamuel Holland gpio-controller; 51077e5f4fSSamuel Holland interrupt-controller; 52077e5f4fSSamuel Holland #gpio-cells = <3>; 53077e5f4fSSamuel Holland #interrupt-cells = <3>; 54077e5f4fSSamuel Holland 55077e5f4fSSamuel Holland /omit-if-no-ref/ 56077e5f4fSSamuel Holland clk_pg11_pin: clk-pg11-pin { 57077e5f4fSSamuel Holland pins = "PG11"; 58077e5f4fSSamuel Holland function = "clk"; 59077e5f4fSSamuel Holland }; 60077e5f4fSSamuel Holland 61077e5f4fSSamuel Holland /omit-if-no-ref/ 62077e5f4fSSamuel Holland dsi_4lane_pins: dsi-4lane-pins { 63077e5f4fSSamuel Holland pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", 64077e5f4fSSamuel Holland "PD6", "PD7", "PD8", "PD9"; 65077e5f4fSSamuel Holland drive-strength = <30>; 66077e5f4fSSamuel Holland function = "dsi"; 67077e5f4fSSamuel Holland }; 68077e5f4fSSamuel Holland 69077e5f4fSSamuel Holland /omit-if-no-ref/ 70077e5f4fSSamuel Holland lcd_rgb666_pins: lcd-rgb666-pins { 71077e5f4fSSamuel Holland pins = "PD0", "PD1", "PD2", "PD3", "PD4", "PD5", 72077e5f4fSSamuel Holland "PD6", "PD7", "PD8", "PD9", "PD10", "PD11", 73077e5f4fSSamuel Holland "PD12", "PD13", "PD14", "PD15", "PD16", "PD17", 74077e5f4fSSamuel Holland "PD18", "PD19", "PD20", "PD21"; 75077e5f4fSSamuel Holland function = "lcd0"; 76077e5f4fSSamuel Holland }; 77077e5f4fSSamuel Holland 78077e5f4fSSamuel Holland /omit-if-no-ref/ 79077e5f4fSSamuel Holland mmc0_pins: mmc0-pins { 80077e5f4fSSamuel Holland pins = "PF0", "PF1", "PF2", "PF3", "PF4", "PF5"; 81077e5f4fSSamuel Holland function = "mmc0"; 82077e5f4fSSamuel Holland }; 83077e5f4fSSamuel Holland 84077e5f4fSSamuel Holland /omit-if-no-ref/ 85077e5f4fSSamuel Holland mmc1_pins: mmc1-pins { 86077e5f4fSSamuel Holland pins = "PG0", "PG1", "PG2", "PG3", "PG4", "PG5"; 87077e5f4fSSamuel Holland function = "mmc1"; 88077e5f4fSSamuel Holland }; 89077e5f4fSSamuel Holland 90077e5f4fSSamuel Holland /omit-if-no-ref/ 91077e5f4fSSamuel Holland mmc2_pins: mmc2-pins { 92077e5f4fSSamuel Holland pins = "PC2", "PC3", "PC4", "PC5", "PC6", "PC7"; 93077e5f4fSSamuel Holland function = "mmc2"; 94077e5f4fSSamuel Holland }; 95077e5f4fSSamuel Holland 96077e5f4fSSamuel Holland /omit-if-no-ref/ 97077e5f4fSSamuel Holland rgmii_pe_pins: rgmii-pe-pins { 98077e5f4fSSamuel Holland pins = "PE0", "PE1", "PE2", "PE3", "PE4", 99077e5f4fSSamuel Holland "PE5", "PE6", "PE7", "PE8", "PE9", 100077e5f4fSSamuel Holland "PE11", "PE12", "PE13", "PE14", "PE15"; 101077e5f4fSSamuel Holland function = "emac"; 102077e5f4fSSamuel Holland }; 103077e5f4fSSamuel Holland 104077e5f4fSSamuel Holland /omit-if-no-ref/ 105077e5f4fSSamuel Holland rmii_pe_pins: rmii-pe-pins { 106077e5f4fSSamuel Holland pins = "PE0", "PE1", "PE2", "PE3", "PE4", 107077e5f4fSSamuel Holland "PE5", "PE6", "PE7", "PE8", "PE9"; 108077e5f4fSSamuel Holland function = "emac"; 109077e5f4fSSamuel Holland }; 110077e5f4fSSamuel Holland 111077e5f4fSSamuel Holland /omit-if-no-ref/ 112077e5f4fSSamuel Holland uart1_pg6_pins: uart1-pg6-pins { 113077e5f4fSSamuel Holland pins = "PG6", "PG7"; 114077e5f4fSSamuel Holland function = "uart1"; 115077e5f4fSSamuel Holland }; 116077e5f4fSSamuel Holland 117077e5f4fSSamuel Holland /omit-if-no-ref/ 118077e5f4fSSamuel Holland uart1_pg8_rts_cts_pins: uart1-pg8-rts-cts-pins { 119077e5f4fSSamuel Holland pins = "PG8", "PG9"; 120077e5f4fSSamuel Holland function = "uart1"; 121077e5f4fSSamuel Holland }; 122077e5f4fSSamuel Holland 123077e5f4fSSamuel Holland /omit-if-no-ref/ 124077e5f4fSSamuel Holland uart3_pb_pins: uart3-pb-pins { 125077e5f4fSSamuel Holland pins = "PB6", "PB7"; 126077e5f4fSSamuel Holland function = "uart3"; 127077e5f4fSSamuel Holland }; 128077e5f4fSSamuel Holland }; 129077e5f4fSSamuel Holland 130077e5f4fSSamuel Holland ccu: clock-controller@2001000 { 131077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-ccu"; 132077e5f4fSSamuel Holland reg = <0x2001000 0x1000>; 133077e5f4fSSamuel Holland clocks = <&dcxo>, 134077e5f4fSSamuel Holland <&rtc CLK_OSC32K>, 135077e5f4fSSamuel Holland <&rtc CLK_IOSC>; 136077e5f4fSSamuel Holland clock-names = "hosc", "losc", "iosc"; 137077e5f4fSSamuel Holland #clock-cells = <1>; 138077e5f4fSSamuel Holland #reset-cells = <1>; 139077e5f4fSSamuel Holland }; 140077e5f4fSSamuel Holland 141077e5f4fSSamuel Holland dmic: dmic@2031000 { 142077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-dmic", 143077e5f4fSSamuel Holland "allwinner,sun50i-h6-dmic"; 144077e5f4fSSamuel Holland reg = <0x2031000 0x400>; 145077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(24) IRQ_TYPE_LEVEL_HIGH>; 146077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_DMIC>, 147077e5f4fSSamuel Holland <&ccu CLK_DMIC>; 148077e5f4fSSamuel Holland clock-names = "bus", "mod"; 149077e5f4fSSamuel Holland resets = <&ccu RST_BUS_DMIC>; 150077e5f4fSSamuel Holland dmas = <&dma 8>; 151077e5f4fSSamuel Holland dma-names = "rx"; 152077e5f4fSSamuel Holland status = "disabled"; 153077e5f4fSSamuel Holland #sound-dai-cells = <0>; 154077e5f4fSSamuel Holland }; 155077e5f4fSSamuel Holland 156077e5f4fSSamuel Holland i2s1: i2s@2033000 { 157077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-i2s", 158077e5f4fSSamuel Holland "allwinner,sun50i-r329-i2s"; 159077e5f4fSSamuel Holland reg = <0x2033000 0x1000>; 160077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(27) IRQ_TYPE_LEVEL_HIGH>; 161077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_I2S1>, 162077e5f4fSSamuel Holland <&ccu CLK_I2S1>; 163077e5f4fSSamuel Holland clock-names = "apb", "mod"; 164077e5f4fSSamuel Holland resets = <&ccu RST_BUS_I2S1>; 165077e5f4fSSamuel Holland dmas = <&dma 4>, <&dma 4>; 166077e5f4fSSamuel Holland dma-names = "rx", "tx"; 167077e5f4fSSamuel Holland status = "disabled"; 168077e5f4fSSamuel Holland #sound-dai-cells = <0>; 169077e5f4fSSamuel Holland }; 170077e5f4fSSamuel Holland 171077e5f4fSSamuel Holland i2s2: i2s@2034000 { 172077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-i2s", 173077e5f4fSSamuel Holland "allwinner,sun50i-r329-i2s"; 174077e5f4fSSamuel Holland reg = <0x2034000 0x1000>; 175077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(28) IRQ_TYPE_LEVEL_HIGH>; 176077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_I2S2>, 177077e5f4fSSamuel Holland <&ccu CLK_I2S2>; 178077e5f4fSSamuel Holland clock-names = "apb", "mod"; 179077e5f4fSSamuel Holland resets = <&ccu RST_BUS_I2S2>; 180077e5f4fSSamuel Holland dmas = <&dma 5>, <&dma 5>; 181077e5f4fSSamuel Holland dma-names = "rx", "tx"; 182077e5f4fSSamuel Holland status = "disabled"; 183077e5f4fSSamuel Holland #sound-dai-cells = <0>; 184077e5f4fSSamuel Holland }; 185077e5f4fSSamuel Holland 186077e5f4fSSamuel Holland timer: timer@2050000 { 187077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-timer", 188077e5f4fSSamuel Holland "allwinner,sun8i-a23-timer"; 189077e5f4fSSamuel Holland reg = <0x2050000 0xa0>; 190077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(59) IRQ_TYPE_LEVEL_HIGH>, 191077e5f4fSSamuel Holland <SOC_PERIPHERAL_IRQ(60) IRQ_TYPE_LEVEL_HIGH>; 192077e5f4fSSamuel Holland clocks = <&dcxo>; 193077e5f4fSSamuel Holland }; 194077e5f4fSSamuel Holland 195077e5f4fSSamuel Holland wdt: watchdog@20500a0 { 196077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-wdt-reset", 197077e5f4fSSamuel Holland "allwinner,sun20i-d1-wdt"; 198077e5f4fSSamuel Holland reg = <0x20500a0 0x20>; 199077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(63) IRQ_TYPE_LEVEL_HIGH>; 200077e5f4fSSamuel Holland clocks = <&dcxo>, <&rtc CLK_OSC32K>; 201077e5f4fSSamuel Holland clock-names = "hosc", "losc"; 202077e5f4fSSamuel Holland status = "reserved"; 203077e5f4fSSamuel Holland }; 204077e5f4fSSamuel Holland 205077e5f4fSSamuel Holland uart0: serial@2500000 { 206077e5f4fSSamuel Holland compatible = "snps,dw-apb-uart"; 207077e5f4fSSamuel Holland reg = <0x2500000 0x400>; 208077e5f4fSSamuel Holland reg-io-width = <4>; 209077e5f4fSSamuel Holland reg-shift = <2>; 210077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(2) IRQ_TYPE_LEVEL_HIGH>; 211077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_UART0>; 212077e5f4fSSamuel Holland resets = <&ccu RST_BUS_UART0>; 213077e5f4fSSamuel Holland dmas = <&dma 14>, <&dma 14>; 214077e5f4fSSamuel Holland dma-names = "rx", "tx"; 215077e5f4fSSamuel Holland status = "disabled"; 216077e5f4fSSamuel Holland }; 217077e5f4fSSamuel Holland 218077e5f4fSSamuel Holland uart1: serial@2500400 { 219077e5f4fSSamuel Holland compatible = "snps,dw-apb-uart"; 220077e5f4fSSamuel Holland reg = <0x2500400 0x400>; 221077e5f4fSSamuel Holland reg-io-width = <4>; 222077e5f4fSSamuel Holland reg-shift = <2>; 223077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(3) IRQ_TYPE_LEVEL_HIGH>; 224077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_UART1>; 225077e5f4fSSamuel Holland resets = <&ccu RST_BUS_UART1>; 226077e5f4fSSamuel Holland dmas = <&dma 15>, <&dma 15>; 227077e5f4fSSamuel Holland dma-names = "rx", "tx"; 228077e5f4fSSamuel Holland status = "disabled"; 229077e5f4fSSamuel Holland }; 230077e5f4fSSamuel Holland 231077e5f4fSSamuel Holland uart2: serial@2500800 { 232077e5f4fSSamuel Holland compatible = "snps,dw-apb-uart"; 233077e5f4fSSamuel Holland reg = <0x2500800 0x400>; 234077e5f4fSSamuel Holland reg-io-width = <4>; 235077e5f4fSSamuel Holland reg-shift = <2>; 236077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(4) IRQ_TYPE_LEVEL_HIGH>; 237077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_UART2>; 238077e5f4fSSamuel Holland resets = <&ccu RST_BUS_UART2>; 239077e5f4fSSamuel Holland dmas = <&dma 16>, <&dma 16>; 240077e5f4fSSamuel Holland dma-names = "rx", "tx"; 241077e5f4fSSamuel Holland status = "disabled"; 242077e5f4fSSamuel Holland }; 243077e5f4fSSamuel Holland 244077e5f4fSSamuel Holland uart3: serial@2500c00 { 245077e5f4fSSamuel Holland compatible = "snps,dw-apb-uart"; 246077e5f4fSSamuel Holland reg = <0x2500c00 0x400>; 247077e5f4fSSamuel Holland reg-io-width = <4>; 248077e5f4fSSamuel Holland reg-shift = <2>; 249077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(5) IRQ_TYPE_LEVEL_HIGH>; 250077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_UART3>; 251077e5f4fSSamuel Holland resets = <&ccu RST_BUS_UART3>; 252077e5f4fSSamuel Holland dmas = <&dma 17>, <&dma 17>; 253077e5f4fSSamuel Holland dma-names = "rx", "tx"; 254077e5f4fSSamuel Holland status = "disabled"; 255077e5f4fSSamuel Holland }; 256077e5f4fSSamuel Holland 257077e5f4fSSamuel Holland uart4: serial@2501000 { 258077e5f4fSSamuel Holland compatible = "snps,dw-apb-uart"; 259077e5f4fSSamuel Holland reg = <0x2501000 0x400>; 260077e5f4fSSamuel Holland reg-io-width = <4>; 261077e5f4fSSamuel Holland reg-shift = <2>; 262077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(6) IRQ_TYPE_LEVEL_HIGH>; 263077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_UART4>; 264077e5f4fSSamuel Holland resets = <&ccu RST_BUS_UART4>; 265077e5f4fSSamuel Holland dmas = <&dma 18>, <&dma 18>; 266077e5f4fSSamuel Holland dma-names = "rx", "tx"; 267077e5f4fSSamuel Holland status = "disabled"; 268077e5f4fSSamuel Holland }; 269077e5f4fSSamuel Holland 270077e5f4fSSamuel Holland uart5: serial@2501400 { 271077e5f4fSSamuel Holland compatible = "snps,dw-apb-uart"; 272077e5f4fSSamuel Holland reg = <0x2501400 0x400>; 273077e5f4fSSamuel Holland reg-io-width = <4>; 274077e5f4fSSamuel Holland reg-shift = <2>; 275077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(7) IRQ_TYPE_LEVEL_HIGH>; 276077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_UART5>; 277077e5f4fSSamuel Holland resets = <&ccu RST_BUS_UART5>; 278077e5f4fSSamuel Holland dmas = <&dma 19>, <&dma 19>; 279077e5f4fSSamuel Holland dma-names = "rx", "tx"; 280077e5f4fSSamuel Holland status = "disabled"; 281077e5f4fSSamuel Holland }; 282077e5f4fSSamuel Holland 283077e5f4fSSamuel Holland i2c0: i2c@2502000 { 284077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-i2c", 285077e5f4fSSamuel Holland "allwinner,sun8i-v536-i2c", 286077e5f4fSSamuel Holland "allwinner,sun6i-a31-i2c"; 287077e5f4fSSamuel Holland reg = <0x2502000 0x400>; 288077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(9) IRQ_TYPE_LEVEL_HIGH>; 289077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_I2C0>; 290077e5f4fSSamuel Holland resets = <&ccu RST_BUS_I2C0>; 291077e5f4fSSamuel Holland dmas = <&dma 43>, <&dma 43>; 292077e5f4fSSamuel Holland dma-names = "rx", "tx"; 293077e5f4fSSamuel Holland status = "disabled"; 294077e5f4fSSamuel Holland #address-cells = <1>; 295077e5f4fSSamuel Holland #size-cells = <0>; 296077e5f4fSSamuel Holland }; 297077e5f4fSSamuel Holland 298077e5f4fSSamuel Holland i2c1: i2c@2502400 { 299077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-i2c", 300077e5f4fSSamuel Holland "allwinner,sun8i-v536-i2c", 301077e5f4fSSamuel Holland "allwinner,sun6i-a31-i2c"; 302077e5f4fSSamuel Holland reg = <0x2502400 0x400>; 303077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(10) IRQ_TYPE_LEVEL_HIGH>; 304077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_I2C1>; 305077e5f4fSSamuel Holland resets = <&ccu RST_BUS_I2C1>; 306077e5f4fSSamuel Holland dmas = <&dma 44>, <&dma 44>; 307077e5f4fSSamuel Holland dma-names = "rx", "tx"; 308077e5f4fSSamuel Holland status = "disabled"; 309077e5f4fSSamuel Holland #address-cells = <1>; 310077e5f4fSSamuel Holland #size-cells = <0>; 311077e5f4fSSamuel Holland }; 312077e5f4fSSamuel Holland 313077e5f4fSSamuel Holland i2c2: i2c@2502800 { 314077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-i2c", 315077e5f4fSSamuel Holland "allwinner,sun8i-v536-i2c", 316077e5f4fSSamuel Holland "allwinner,sun6i-a31-i2c"; 317077e5f4fSSamuel Holland reg = <0x2502800 0x400>; 318077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(11) IRQ_TYPE_LEVEL_HIGH>; 319077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_I2C2>; 320077e5f4fSSamuel Holland resets = <&ccu RST_BUS_I2C2>; 321077e5f4fSSamuel Holland dmas = <&dma 45>, <&dma 45>; 322077e5f4fSSamuel Holland dma-names = "rx", "tx"; 323077e5f4fSSamuel Holland status = "disabled"; 324077e5f4fSSamuel Holland #address-cells = <1>; 325077e5f4fSSamuel Holland #size-cells = <0>; 326077e5f4fSSamuel Holland }; 327077e5f4fSSamuel Holland 328077e5f4fSSamuel Holland i2c3: i2c@2502c00 { 329077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-i2c", 330077e5f4fSSamuel Holland "allwinner,sun8i-v536-i2c", 331077e5f4fSSamuel Holland "allwinner,sun6i-a31-i2c"; 332077e5f4fSSamuel Holland reg = <0x2502c00 0x400>; 333077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(12) IRQ_TYPE_LEVEL_HIGH>; 334077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_I2C3>; 335077e5f4fSSamuel Holland resets = <&ccu RST_BUS_I2C3>; 336077e5f4fSSamuel Holland dmas = <&dma 46>, <&dma 46>; 337077e5f4fSSamuel Holland dma-names = "rx", "tx"; 338077e5f4fSSamuel Holland status = "disabled"; 339077e5f4fSSamuel Holland #address-cells = <1>; 340077e5f4fSSamuel Holland #size-cells = <0>; 341077e5f4fSSamuel Holland }; 342077e5f4fSSamuel Holland 343077e5f4fSSamuel Holland syscon: syscon@3000000 { 344077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-system-control"; 345077e5f4fSSamuel Holland reg = <0x3000000 0x1000>; 346077e5f4fSSamuel Holland ranges; 347077e5f4fSSamuel Holland #address-cells = <1>; 348077e5f4fSSamuel Holland #size-cells = <1>; 349077e5f4fSSamuel Holland }; 350077e5f4fSSamuel Holland 351077e5f4fSSamuel Holland dma: dma-controller@3002000 { 352077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-dma"; 353077e5f4fSSamuel Holland reg = <0x3002000 0x1000>; 354077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(50) IRQ_TYPE_LEVEL_HIGH>; 355077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_DMA>, <&ccu CLK_MBUS_DMA>; 356077e5f4fSSamuel Holland clock-names = "bus", "mbus"; 357077e5f4fSSamuel Holland resets = <&ccu RST_BUS_DMA>; 358077e5f4fSSamuel Holland dma-channels = <16>; 359077e5f4fSSamuel Holland dma-requests = <48>; 360077e5f4fSSamuel Holland #dma-cells = <1>; 361077e5f4fSSamuel Holland }; 362077e5f4fSSamuel Holland 363077e5f4fSSamuel Holland sid: efuse@3006000 { 364077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-sid"; 365077e5f4fSSamuel Holland reg = <0x3006000 0x1000>; 366077e5f4fSSamuel Holland #address-cells = <1>; 367077e5f4fSSamuel Holland #size-cells = <1>; 368077e5f4fSSamuel Holland }; 369077e5f4fSSamuel Holland 370077e5f4fSSamuel Holland mbus: dram-controller@3102000 { 371077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-mbus"; 372077e5f4fSSamuel Holland reg = <0x3102000 0x1000>, 373077e5f4fSSamuel Holland <0x3103000 0x1000>; 374077e5f4fSSamuel Holland reg-names = "mbus", "dram"; 375077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(43) IRQ_TYPE_LEVEL_HIGH>; 376077e5f4fSSamuel Holland clocks = <&ccu CLK_MBUS>, 377077e5f4fSSamuel Holland <&ccu CLK_DRAM>, 378077e5f4fSSamuel Holland <&ccu CLK_BUS_DRAM>; 379077e5f4fSSamuel Holland clock-names = "mbus", "dram", "bus"; 380077e5f4fSSamuel Holland dma-ranges = <0 0x40000000 0x80000000>; 381077e5f4fSSamuel Holland #address-cells = <1>; 382077e5f4fSSamuel Holland #size-cells = <1>; 383077e5f4fSSamuel Holland #interconnect-cells = <1>; 384077e5f4fSSamuel Holland }; 385077e5f4fSSamuel Holland 386077e5f4fSSamuel Holland mmc0: mmc@4020000 { 387077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-mmc"; 388077e5f4fSSamuel Holland reg = <0x4020000 0x1000>; 389077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(40) IRQ_TYPE_LEVEL_HIGH>; 390077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_MMC0>, <&ccu CLK_MMC0>; 391077e5f4fSSamuel Holland clock-names = "ahb", "mmc"; 392077e5f4fSSamuel Holland resets = <&ccu RST_BUS_MMC0>; 393077e5f4fSSamuel Holland reset-names = "ahb"; 394077e5f4fSSamuel Holland cap-sd-highspeed; 395077e5f4fSSamuel Holland max-frequency = <150000000>; 396077e5f4fSSamuel Holland no-mmc; 397077e5f4fSSamuel Holland status = "disabled"; 398077e5f4fSSamuel Holland #address-cells = <1>; 399077e5f4fSSamuel Holland #size-cells = <0>; 400077e5f4fSSamuel Holland }; 401077e5f4fSSamuel Holland 402077e5f4fSSamuel Holland mmc1: mmc@4021000 { 403077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-mmc"; 404077e5f4fSSamuel Holland reg = <0x4021000 0x1000>; 405077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(41) IRQ_TYPE_LEVEL_HIGH>; 406077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_MMC1>, <&ccu CLK_MMC1>; 407077e5f4fSSamuel Holland clock-names = "ahb", "mmc"; 408077e5f4fSSamuel Holland resets = <&ccu RST_BUS_MMC1>; 409077e5f4fSSamuel Holland reset-names = "ahb"; 410077e5f4fSSamuel Holland cap-sd-highspeed; 411077e5f4fSSamuel Holland max-frequency = <150000000>; 412077e5f4fSSamuel Holland no-mmc; 413077e5f4fSSamuel Holland status = "disabled"; 414077e5f4fSSamuel Holland #address-cells = <1>; 415077e5f4fSSamuel Holland #size-cells = <0>; 416077e5f4fSSamuel Holland }; 417077e5f4fSSamuel Holland 418077e5f4fSSamuel Holland mmc2: mmc@4022000 { 419077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-emmc", 420077e5f4fSSamuel Holland "allwinner,sun50i-a100-emmc"; 421077e5f4fSSamuel Holland reg = <0x4022000 0x1000>; 422077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(42) IRQ_TYPE_LEVEL_HIGH>; 423077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_MMC2>, <&ccu CLK_MMC2>; 424077e5f4fSSamuel Holland clock-names = "ahb", "mmc"; 425077e5f4fSSamuel Holland resets = <&ccu RST_BUS_MMC2>; 426077e5f4fSSamuel Holland reset-names = "ahb"; 427077e5f4fSSamuel Holland cap-mmc-highspeed; 428077e5f4fSSamuel Holland max-frequency = <150000000>; 429077e5f4fSSamuel Holland mmc-ddr-1_8v; 430077e5f4fSSamuel Holland mmc-ddr-3_3v; 431077e5f4fSSamuel Holland no-sd; 432077e5f4fSSamuel Holland no-sdio; 433077e5f4fSSamuel Holland status = "disabled"; 434077e5f4fSSamuel Holland #address-cells = <1>; 435077e5f4fSSamuel Holland #size-cells = <0>; 436077e5f4fSSamuel Holland }; 437077e5f4fSSamuel Holland 438077e5f4fSSamuel Holland usb_otg: usb@4100000 { 439077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-musb", 440077e5f4fSSamuel Holland "allwinner,sun8i-a33-musb"; 441077e5f4fSSamuel Holland reg = <0x4100000 0x400>; 442077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(29) IRQ_TYPE_LEVEL_HIGH>; 443077e5f4fSSamuel Holland interrupt-names = "mc"; 444077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_OTG>; 445077e5f4fSSamuel Holland resets = <&ccu RST_BUS_OTG>; 446077e5f4fSSamuel Holland extcon = <&usbphy 0>; 447077e5f4fSSamuel Holland phys = <&usbphy 0>; 448077e5f4fSSamuel Holland phy-names = "usb"; 449077e5f4fSSamuel Holland status = "disabled"; 450077e5f4fSSamuel Holland }; 451077e5f4fSSamuel Holland 452077e5f4fSSamuel Holland usbphy: phy@4100400 { 453077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-usb-phy"; 454077e5f4fSSamuel Holland reg = <0x4100400 0x100>, 455077e5f4fSSamuel Holland <0x4101800 0x100>, 456077e5f4fSSamuel Holland <0x4200800 0x100>; 457077e5f4fSSamuel Holland reg-names = "phy_ctrl", 458077e5f4fSSamuel Holland "pmu0", 459077e5f4fSSamuel Holland "pmu1"; 460077e5f4fSSamuel Holland clocks = <&dcxo>, 461077e5f4fSSamuel Holland <&dcxo>; 462077e5f4fSSamuel Holland clock-names = "usb0_phy", 463077e5f4fSSamuel Holland "usb1_phy"; 464077e5f4fSSamuel Holland resets = <&ccu RST_USB_PHY0>, 465077e5f4fSSamuel Holland <&ccu RST_USB_PHY1>; 466077e5f4fSSamuel Holland reset-names = "usb0_reset", 467077e5f4fSSamuel Holland "usb1_reset"; 468077e5f4fSSamuel Holland status = "disabled"; 469077e5f4fSSamuel Holland #phy-cells = <1>; 470077e5f4fSSamuel Holland }; 471077e5f4fSSamuel Holland 472077e5f4fSSamuel Holland ehci0: usb@4101000 { 473077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-ehci", 474077e5f4fSSamuel Holland "generic-ehci"; 475077e5f4fSSamuel Holland reg = <0x4101000 0x100>; 476077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(30) IRQ_TYPE_LEVEL_HIGH>; 477077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_OHCI0>, 478077e5f4fSSamuel Holland <&ccu CLK_BUS_EHCI0>, 479077e5f4fSSamuel Holland <&ccu CLK_USB_OHCI0>; 480077e5f4fSSamuel Holland resets = <&ccu RST_BUS_OHCI0>, 481077e5f4fSSamuel Holland <&ccu RST_BUS_EHCI0>; 482077e5f4fSSamuel Holland phys = <&usbphy 0>; 483077e5f4fSSamuel Holland phy-names = "usb"; 484077e5f4fSSamuel Holland status = "disabled"; 485077e5f4fSSamuel Holland }; 486077e5f4fSSamuel Holland 487077e5f4fSSamuel Holland ohci0: usb@4101400 { 488077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-ohci", 489077e5f4fSSamuel Holland "generic-ohci"; 490077e5f4fSSamuel Holland reg = <0x4101400 0x100>; 491077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(31) IRQ_TYPE_LEVEL_HIGH>; 492077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_OHCI0>, 493077e5f4fSSamuel Holland <&ccu CLK_USB_OHCI0>; 494077e5f4fSSamuel Holland resets = <&ccu RST_BUS_OHCI0>; 495077e5f4fSSamuel Holland phys = <&usbphy 0>; 496077e5f4fSSamuel Holland phy-names = "usb"; 497077e5f4fSSamuel Holland status = "disabled"; 498077e5f4fSSamuel Holland }; 499077e5f4fSSamuel Holland 500077e5f4fSSamuel Holland ehci1: usb@4200000 { 501077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-ehci", 502077e5f4fSSamuel Holland "generic-ehci"; 503077e5f4fSSamuel Holland reg = <0x4200000 0x100>; 504077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(33) IRQ_TYPE_LEVEL_HIGH>; 505077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_OHCI1>, 506077e5f4fSSamuel Holland <&ccu CLK_BUS_EHCI1>, 507077e5f4fSSamuel Holland <&ccu CLK_USB_OHCI1>; 508077e5f4fSSamuel Holland resets = <&ccu RST_BUS_OHCI1>, 509077e5f4fSSamuel Holland <&ccu RST_BUS_EHCI1>; 510077e5f4fSSamuel Holland phys = <&usbphy 1>; 511077e5f4fSSamuel Holland phy-names = "usb"; 512077e5f4fSSamuel Holland status = "disabled"; 513077e5f4fSSamuel Holland }; 514077e5f4fSSamuel Holland 515077e5f4fSSamuel Holland ohci1: usb@4200400 { 516077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-ohci", 517077e5f4fSSamuel Holland "generic-ohci"; 518077e5f4fSSamuel Holland reg = <0x4200400 0x100>; 519077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(34) IRQ_TYPE_LEVEL_HIGH>; 520077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_OHCI1>, 521077e5f4fSSamuel Holland <&ccu CLK_USB_OHCI1>; 522077e5f4fSSamuel Holland resets = <&ccu RST_BUS_OHCI1>; 523077e5f4fSSamuel Holland phys = <&usbphy 1>; 524077e5f4fSSamuel Holland phy-names = "usb"; 525077e5f4fSSamuel Holland status = "disabled"; 526077e5f4fSSamuel Holland }; 527077e5f4fSSamuel Holland 528077e5f4fSSamuel Holland emac: ethernet@4500000 { 529077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-emac", 530077e5f4fSSamuel Holland "allwinner,sun50i-a64-emac"; 531077e5f4fSSamuel Holland reg = <0x4500000 0x10000>; 532077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(46) IRQ_TYPE_LEVEL_HIGH>; 533077e5f4fSSamuel Holland interrupt-names = "macirq"; 534077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_EMAC>; 535077e5f4fSSamuel Holland clock-names = "stmmaceth"; 536077e5f4fSSamuel Holland resets = <&ccu RST_BUS_EMAC>; 537077e5f4fSSamuel Holland reset-names = "stmmaceth"; 538077e5f4fSSamuel Holland syscon = <&syscon>; 539077e5f4fSSamuel Holland status = "disabled"; 540077e5f4fSSamuel Holland 541077e5f4fSSamuel Holland mdio: mdio { 542077e5f4fSSamuel Holland compatible = "snps,dwmac-mdio"; 543077e5f4fSSamuel Holland #address-cells = <1>; 544077e5f4fSSamuel Holland #size-cells = <0>; 545077e5f4fSSamuel Holland }; 546077e5f4fSSamuel Holland }; 547077e5f4fSSamuel Holland 548077e5f4fSSamuel Holland display_clocks: clock-controller@5000000 { 549077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-de2-clk", 550077e5f4fSSamuel Holland "allwinner,sun50i-h5-de2-clk"; 551077e5f4fSSamuel Holland reg = <0x5000000 0x10000>; 552077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_DE>, <&ccu CLK_DE>; 553077e5f4fSSamuel Holland clock-names = "bus", "mod"; 554077e5f4fSSamuel Holland resets = <&ccu RST_BUS_DE>; 555077e5f4fSSamuel Holland #clock-cells = <1>; 556077e5f4fSSamuel Holland #reset-cells = <1>; 557077e5f4fSSamuel Holland }; 558077e5f4fSSamuel Holland 559077e5f4fSSamuel Holland mixer0: mixer@5100000 { 560077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-de2-mixer-0"; 561077e5f4fSSamuel Holland reg = <0x5100000 0x100000>; 562077e5f4fSSamuel Holland clocks = <&display_clocks CLK_BUS_MIXER0>, 563077e5f4fSSamuel Holland <&display_clocks CLK_MIXER0>; 564077e5f4fSSamuel Holland clock-names = "bus", "mod"; 565077e5f4fSSamuel Holland resets = <&display_clocks RST_MIXER0>; 566077e5f4fSSamuel Holland 567077e5f4fSSamuel Holland ports { 568077e5f4fSSamuel Holland #address-cells = <1>; 569077e5f4fSSamuel Holland #size-cells = <0>; 570077e5f4fSSamuel Holland 571077e5f4fSSamuel Holland mixer0_out: port@1 { 572077e5f4fSSamuel Holland reg = <1>; 573077e5f4fSSamuel Holland 574077e5f4fSSamuel Holland mixer0_out_tcon_top_mixer0: endpoint { 575077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_mixer0_in_mixer0>; 576077e5f4fSSamuel Holland }; 577077e5f4fSSamuel Holland }; 578077e5f4fSSamuel Holland }; 579077e5f4fSSamuel Holland }; 580077e5f4fSSamuel Holland 581077e5f4fSSamuel Holland mixer1: mixer@5200000 { 582077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-de2-mixer-1"; 583077e5f4fSSamuel Holland reg = <0x5200000 0x100000>; 584077e5f4fSSamuel Holland clocks = <&display_clocks CLK_BUS_MIXER1>, 585077e5f4fSSamuel Holland <&display_clocks CLK_MIXER1>; 586077e5f4fSSamuel Holland clock-names = "bus", "mod"; 587077e5f4fSSamuel Holland resets = <&display_clocks RST_MIXER1>; 588077e5f4fSSamuel Holland 589077e5f4fSSamuel Holland ports { 590077e5f4fSSamuel Holland #address-cells = <1>; 591077e5f4fSSamuel Holland #size-cells = <0>; 592077e5f4fSSamuel Holland 593077e5f4fSSamuel Holland mixer1_out: port@1 { 594077e5f4fSSamuel Holland reg = <1>; 595077e5f4fSSamuel Holland 596077e5f4fSSamuel Holland mixer1_out_tcon_top_mixer1: endpoint { 597077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_mixer1_in_mixer1>; 598077e5f4fSSamuel Holland }; 599077e5f4fSSamuel Holland }; 600077e5f4fSSamuel Holland }; 601077e5f4fSSamuel Holland }; 602077e5f4fSSamuel Holland 603077e5f4fSSamuel Holland dsi: dsi@5450000 { 604077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-mipi-dsi", 605077e5f4fSSamuel Holland "allwinner,sun50i-a100-mipi-dsi"; 606077e5f4fSSamuel Holland reg = <0x5450000 0x1000>; 607077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(92) IRQ_TYPE_LEVEL_HIGH>; 608077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_MIPI_DSI>, 609077e5f4fSSamuel Holland <&tcon_top CLK_TCON_TOP_DSI>; 610077e5f4fSSamuel Holland clock-names = "bus", "mod"; 611077e5f4fSSamuel Holland resets = <&ccu RST_BUS_MIPI_DSI>; 612077e5f4fSSamuel Holland phys = <&dphy>; 613077e5f4fSSamuel Holland phy-names = "dphy"; 614077e5f4fSSamuel Holland status = "disabled"; 615077e5f4fSSamuel Holland 616077e5f4fSSamuel Holland port { 617077e5f4fSSamuel Holland dsi_in_tcon_lcd0: endpoint { 618077e5f4fSSamuel Holland remote-endpoint = <&tcon_lcd0_out_dsi>; 619077e5f4fSSamuel Holland }; 620077e5f4fSSamuel Holland }; 621077e5f4fSSamuel Holland }; 622077e5f4fSSamuel Holland 623077e5f4fSSamuel Holland dphy: phy@5451000 { 624077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-mipi-dphy", 625077e5f4fSSamuel Holland "allwinner,sun50i-a100-mipi-dphy"; 626077e5f4fSSamuel Holland reg = <0x5451000 0x1000>; 627077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(92) IRQ_TYPE_LEVEL_HIGH>; 628077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_MIPI_DSI>, 629077e5f4fSSamuel Holland <&ccu CLK_MIPI_DSI>; 630077e5f4fSSamuel Holland clock-names = "bus", "mod"; 631077e5f4fSSamuel Holland resets = <&ccu RST_BUS_MIPI_DSI>; 632077e5f4fSSamuel Holland #phy-cells = <0>; 633077e5f4fSSamuel Holland }; 634077e5f4fSSamuel Holland 635077e5f4fSSamuel Holland tcon_top: tcon-top@5460000 { 636077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-tcon-top"; 637077e5f4fSSamuel Holland reg = <0x5460000 0x1000>; 638077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_DPSS_TOP>, 639077e5f4fSSamuel Holland <&ccu CLK_TCON_TV>, 640077e5f4fSSamuel Holland <&ccu CLK_TVE>, 641077e5f4fSSamuel Holland <&ccu CLK_TCON_LCD0>; 642077e5f4fSSamuel Holland clock-names = "bus", "tcon-tv0", "tve0", "dsi"; 643077e5f4fSSamuel Holland clock-output-names = "tcon-top-tv0", "tcon-top-dsi"; 644077e5f4fSSamuel Holland resets = <&ccu RST_BUS_DPSS_TOP>; 645077e5f4fSSamuel Holland #clock-cells = <1>; 646077e5f4fSSamuel Holland 647077e5f4fSSamuel Holland ports { 648077e5f4fSSamuel Holland #address-cells = <1>; 649077e5f4fSSamuel Holland #size-cells = <0>; 650077e5f4fSSamuel Holland 651077e5f4fSSamuel Holland tcon_top_mixer0_in: port@0 { 652077e5f4fSSamuel Holland reg = <0>; 653077e5f4fSSamuel Holland 654077e5f4fSSamuel Holland tcon_top_mixer0_in_mixer0: endpoint { 655077e5f4fSSamuel Holland remote-endpoint = <&mixer0_out_tcon_top_mixer0>; 656077e5f4fSSamuel Holland }; 657077e5f4fSSamuel Holland }; 658077e5f4fSSamuel Holland 659077e5f4fSSamuel Holland tcon_top_mixer0_out: port@1 { 660077e5f4fSSamuel Holland reg = <1>; 661077e5f4fSSamuel Holland #address-cells = <1>; 662077e5f4fSSamuel Holland #size-cells = <0>; 663077e5f4fSSamuel Holland 664077e5f4fSSamuel Holland tcon_top_mixer0_out_tcon_lcd0: endpoint@0 { 665077e5f4fSSamuel Holland reg = <0>; 666077e5f4fSSamuel Holland remote-endpoint = <&tcon_lcd0_in_tcon_top_mixer0>; 667077e5f4fSSamuel Holland }; 668077e5f4fSSamuel Holland 669077e5f4fSSamuel Holland tcon_top_mixer0_out_tcon_tv0: endpoint@2 { 670077e5f4fSSamuel Holland reg = <2>; 671077e5f4fSSamuel Holland remote-endpoint = <&tcon_tv0_in_tcon_top_mixer0>; 672077e5f4fSSamuel Holland }; 673077e5f4fSSamuel Holland }; 674077e5f4fSSamuel Holland 675077e5f4fSSamuel Holland tcon_top_mixer1_in: port@2 { 676077e5f4fSSamuel Holland reg = <2>; 677077e5f4fSSamuel Holland #address-cells = <1>; 678077e5f4fSSamuel Holland #size-cells = <0>; 679077e5f4fSSamuel Holland 680077e5f4fSSamuel Holland tcon_top_mixer1_in_mixer1: endpoint@1 { 681077e5f4fSSamuel Holland reg = <1>; 682077e5f4fSSamuel Holland remote-endpoint = <&mixer1_out_tcon_top_mixer1>; 683077e5f4fSSamuel Holland }; 684077e5f4fSSamuel Holland }; 685077e5f4fSSamuel Holland 686077e5f4fSSamuel Holland tcon_top_mixer1_out: port@3 { 687077e5f4fSSamuel Holland reg = <3>; 688077e5f4fSSamuel Holland #address-cells = <1>; 689077e5f4fSSamuel Holland #size-cells = <0>; 690077e5f4fSSamuel Holland 691077e5f4fSSamuel Holland tcon_top_mixer1_out_tcon_lcd0: endpoint@0 { 692077e5f4fSSamuel Holland reg = <0>; 693077e5f4fSSamuel Holland remote-endpoint = <&tcon_lcd0_in_tcon_top_mixer1>; 694077e5f4fSSamuel Holland }; 695077e5f4fSSamuel Holland 696077e5f4fSSamuel Holland tcon_top_mixer1_out_tcon_tv0: endpoint@2 { 697077e5f4fSSamuel Holland reg = <2>; 698077e5f4fSSamuel Holland remote-endpoint = <&tcon_tv0_in_tcon_top_mixer1>; 699077e5f4fSSamuel Holland }; 700077e5f4fSSamuel Holland }; 701077e5f4fSSamuel Holland 702077e5f4fSSamuel Holland tcon_top_hdmi_in: port@4 { 703077e5f4fSSamuel Holland reg = <4>; 704077e5f4fSSamuel Holland 705077e5f4fSSamuel Holland tcon_top_hdmi_in_tcon_tv0: endpoint { 706077e5f4fSSamuel Holland remote-endpoint = <&tcon_tv0_out_tcon_top_hdmi>; 707077e5f4fSSamuel Holland }; 708077e5f4fSSamuel Holland }; 709077e5f4fSSamuel Holland 710077e5f4fSSamuel Holland tcon_top_hdmi_out: port@5 { 711077e5f4fSSamuel Holland reg = <5>; 712077e5f4fSSamuel Holland }; 713077e5f4fSSamuel Holland }; 714077e5f4fSSamuel Holland }; 715077e5f4fSSamuel Holland 716077e5f4fSSamuel Holland tcon_lcd0: lcd-controller@5461000 { 717077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-tcon-lcd"; 718077e5f4fSSamuel Holland reg = <0x5461000 0x1000>; 719077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(90) IRQ_TYPE_LEVEL_HIGH>; 720077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_TCON_LCD0>, 721077e5f4fSSamuel Holland <&ccu CLK_TCON_LCD0>; 722077e5f4fSSamuel Holland clock-names = "ahb", "tcon-ch0"; 723077e5f4fSSamuel Holland clock-output-names = "tcon-pixel-clock"; 724077e5f4fSSamuel Holland resets = <&ccu RST_BUS_TCON_LCD0>, 725077e5f4fSSamuel Holland <&ccu RST_BUS_LVDS0>; 726077e5f4fSSamuel Holland reset-names = "lcd", "lvds"; 727077e5f4fSSamuel Holland #clock-cells = <0>; 728077e5f4fSSamuel Holland 729077e5f4fSSamuel Holland ports { 730077e5f4fSSamuel Holland #address-cells = <1>; 731077e5f4fSSamuel Holland #size-cells = <0>; 732077e5f4fSSamuel Holland 733077e5f4fSSamuel Holland tcon_lcd0_in: port@0 { 734077e5f4fSSamuel Holland reg = <0>; 735077e5f4fSSamuel Holland #address-cells = <1>; 736077e5f4fSSamuel Holland #size-cells = <0>; 737077e5f4fSSamuel Holland 738077e5f4fSSamuel Holland tcon_lcd0_in_tcon_top_mixer0: endpoint@0 { 739077e5f4fSSamuel Holland reg = <0>; 740077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_mixer0_out_tcon_lcd0>; 741077e5f4fSSamuel Holland }; 742077e5f4fSSamuel Holland 743077e5f4fSSamuel Holland tcon_lcd0_in_tcon_top_mixer1: endpoint@1 { 744077e5f4fSSamuel Holland reg = <1>; 745077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_mixer1_out_tcon_lcd0>; 746077e5f4fSSamuel Holland }; 747077e5f4fSSamuel Holland }; 748077e5f4fSSamuel Holland 749077e5f4fSSamuel Holland tcon_lcd0_out: port@1 { 750077e5f4fSSamuel Holland reg = <1>; 751077e5f4fSSamuel Holland #address-cells = <1>; 752077e5f4fSSamuel Holland #size-cells = <0>; 753077e5f4fSSamuel Holland 754077e5f4fSSamuel Holland tcon_lcd0_out_dsi: endpoint@1 { 755077e5f4fSSamuel Holland reg = <1>; 756077e5f4fSSamuel Holland remote-endpoint = <&dsi_in_tcon_lcd0>; 757077e5f4fSSamuel Holland }; 758077e5f4fSSamuel Holland }; 759077e5f4fSSamuel Holland }; 760077e5f4fSSamuel Holland }; 761077e5f4fSSamuel Holland 762077e5f4fSSamuel Holland tcon_tv0: lcd-controller@5470000 { 763077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-tcon-tv"; 764077e5f4fSSamuel Holland reg = <0x5470000 0x1000>; 765077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(91) IRQ_TYPE_LEVEL_HIGH>; 766077e5f4fSSamuel Holland clocks = <&ccu CLK_BUS_TCON_TV>, 767077e5f4fSSamuel Holland <&tcon_top CLK_TCON_TOP_TV0>; 768077e5f4fSSamuel Holland clock-names = "ahb", "tcon-ch1"; 769077e5f4fSSamuel Holland resets = <&ccu RST_BUS_TCON_TV>; 770077e5f4fSSamuel Holland reset-names = "lcd"; 771077e5f4fSSamuel Holland 772077e5f4fSSamuel Holland ports { 773077e5f4fSSamuel Holland #address-cells = <1>; 774077e5f4fSSamuel Holland #size-cells = <0>; 775077e5f4fSSamuel Holland 776077e5f4fSSamuel Holland tcon_tv0_in: port@0 { 777077e5f4fSSamuel Holland reg = <0>; 778077e5f4fSSamuel Holland #address-cells = <1>; 779077e5f4fSSamuel Holland #size-cells = <0>; 780077e5f4fSSamuel Holland 781077e5f4fSSamuel Holland tcon_tv0_in_tcon_top_mixer0: endpoint@0 { 782077e5f4fSSamuel Holland reg = <0>; 783077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_mixer0_out_tcon_tv0>; 784077e5f4fSSamuel Holland }; 785077e5f4fSSamuel Holland 786077e5f4fSSamuel Holland tcon_tv0_in_tcon_top_mixer1: endpoint@1 { 787077e5f4fSSamuel Holland reg = <1>; 788077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_mixer1_out_tcon_tv0>; 789077e5f4fSSamuel Holland }; 790077e5f4fSSamuel Holland }; 791077e5f4fSSamuel Holland 792077e5f4fSSamuel Holland tcon_tv0_out: port@1 { 793077e5f4fSSamuel Holland reg = <1>; 794077e5f4fSSamuel Holland 795077e5f4fSSamuel Holland tcon_tv0_out_tcon_top_hdmi: endpoint { 796077e5f4fSSamuel Holland remote-endpoint = <&tcon_top_hdmi_in_tcon_tv0>; 797077e5f4fSSamuel Holland }; 798077e5f4fSSamuel Holland }; 799077e5f4fSSamuel Holland }; 800077e5f4fSSamuel Holland }; 801077e5f4fSSamuel Holland 802*dca36f7bSSamuel Holland ppu: power-controller@7001000 { 803*dca36f7bSSamuel Holland compatible = "allwinner,sun20i-d1-ppu"; 804*dca36f7bSSamuel Holland reg = <0x7001000 0x1000>; 805*dca36f7bSSamuel Holland clocks = <&r_ccu CLK_BUS_R_PPU>; 806*dca36f7bSSamuel Holland resets = <&r_ccu RST_BUS_R_PPU>; 807*dca36f7bSSamuel Holland #power-domain-cells = <1>; 808*dca36f7bSSamuel Holland }; 809*dca36f7bSSamuel Holland 810077e5f4fSSamuel Holland r_ccu: clock-controller@7010000 { 811077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-r-ccu"; 812077e5f4fSSamuel Holland reg = <0x7010000 0x400>; 813077e5f4fSSamuel Holland clocks = <&dcxo>, 814077e5f4fSSamuel Holland <&rtc CLK_OSC32K>, 815077e5f4fSSamuel Holland <&rtc CLK_IOSC>, 816077e5f4fSSamuel Holland <&ccu CLK_PLL_PERIPH0_DIV3>; 817077e5f4fSSamuel Holland clock-names = "hosc", "losc", "iosc", "pll-periph"; 818077e5f4fSSamuel Holland #clock-cells = <1>; 819077e5f4fSSamuel Holland #reset-cells = <1>; 820077e5f4fSSamuel Holland }; 821077e5f4fSSamuel Holland 822077e5f4fSSamuel Holland rtc: rtc@7090000 { 823077e5f4fSSamuel Holland compatible = "allwinner,sun20i-d1-rtc", 824077e5f4fSSamuel Holland "allwinner,sun50i-r329-rtc"; 825077e5f4fSSamuel Holland reg = <0x7090000 0x400>; 826077e5f4fSSamuel Holland interrupts = <SOC_PERIPHERAL_IRQ(144) IRQ_TYPE_LEVEL_HIGH>; 827077e5f4fSSamuel Holland clocks = <&r_ccu CLK_BUS_R_RTC>, 828077e5f4fSSamuel Holland <&dcxo>, 829077e5f4fSSamuel Holland <&r_ccu CLK_R_AHB>; 830077e5f4fSSamuel Holland clock-names = "bus", "hosc", "ahb"; 831077e5f4fSSamuel Holland #clock-cells = <1>; 832077e5f4fSSamuel Holland }; 833077e5f4fSSamuel Holland }; 834077e5f4fSSamuel Holland}; 835