16bc37facSAndre Przywara/* 26bc37facSAndre Przywara * Copyright (C) 2016 ARM Ltd. 36bc37facSAndre Przywara * based on the Allwinner H3 dtsi: 46bc37facSAndre Przywara * Copyright (C) 2015 Jens Kuske <jenskuske@gmail.com> 56bc37facSAndre Przywara * 66bc37facSAndre Przywara * This file is dual-licensed: you can use it either under the terms 76bc37facSAndre Przywara * of the GPL or the X11 license, at your option. Note that this dual 86bc37facSAndre Przywara * licensing only applies to this file, and not this project as a 96bc37facSAndre Przywara * whole. 106bc37facSAndre Przywara * 116bc37facSAndre Przywara * a) This file is free software; you can redistribute it and/or 126bc37facSAndre Przywara * modify it under the terms of the GNU General Public License as 136bc37facSAndre Przywara * published by the Free Software Foundation; either version 2 of the 146bc37facSAndre Przywara * License, or (at your option) any later version. 156bc37facSAndre Przywara * 166bc37facSAndre Przywara * This file is distributed in the hope that it will be useful, 176bc37facSAndre Przywara * but WITHOUT ANY WARRANTY; without even the implied warranty of 186bc37facSAndre Przywara * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 196bc37facSAndre Przywara * GNU General Public License for more details. 206bc37facSAndre Przywara * 216bc37facSAndre Przywara * Or, alternatively, 226bc37facSAndre Przywara * 236bc37facSAndre Przywara * b) Permission is hereby granted, free of charge, to any person 246bc37facSAndre Przywara * obtaining a copy of this software and associated documentation 256bc37facSAndre Przywara * files (the "Software"), to deal in the Software without 266bc37facSAndre Przywara * restriction, including without limitation the rights to use, 276bc37facSAndre Przywara * copy, modify, merge, publish, distribute, sublicense, and/or 286bc37facSAndre Przywara * sell copies of the Software, and to permit persons to whom the 296bc37facSAndre Przywara * Software is furnished to do so, subject to the following 306bc37facSAndre Przywara * conditions: 316bc37facSAndre Przywara * 326bc37facSAndre Przywara * The above copyright notice and this permission notice shall be 336bc37facSAndre Przywara * included in all copies or substantial portions of the Software. 346bc37facSAndre Przywara * 356bc37facSAndre Przywara * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 366bc37facSAndre Przywara * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 376bc37facSAndre Przywara * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 386bc37facSAndre Przywara * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 396bc37facSAndre Przywara * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 406bc37facSAndre Przywara * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 416bc37facSAndre Przywara * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 426bc37facSAndre Przywara * OTHER DEALINGS IN THE SOFTWARE. 436bc37facSAndre Przywara */ 446bc37facSAndre Przywara 45a004ee35SIcenowy Zheng#include <dt-bindings/clock/sun50i-a64-ccu.h> 462c796fc8SIcenowy Zheng#include <dt-bindings/clock/sun8i-de2.h> 47494d8a2cSChen-Yu Tsai#include <dt-bindings/clock/sun8i-r-ccu.h> 486bc37facSAndre Przywara#include <dt-bindings/interrupt-controller/arm-gic.h> 49a004ee35SIcenowy Zheng#include <dt-bindings/reset/sun50i-a64-ccu.h> 502c796fc8SIcenowy Zheng#include <dt-bindings/reset/sun8i-de2.h> 51871b5352SIcenowy Zheng#include <dt-bindings/reset/sun8i-r-ccu.h> 526bc37facSAndre Przywara 536bc37facSAndre Przywara/ { 546bc37facSAndre Przywara interrupt-parent = <&gic>; 556bc37facSAndre Przywara #address-cells = <1>; 566bc37facSAndre Przywara #size-cells = <1>; 576bc37facSAndre Przywara 58c1cff65fSHarald Geyer chosen { 59c1cff65fSHarald Geyer #address-cells = <1>; 60c1cff65fSHarald Geyer #size-cells = <1>; 61c1cff65fSHarald Geyer ranges; 62c1cff65fSHarald Geyer 63c1cff65fSHarald Geyer simplefb_lcd: framebuffer-lcd { 64c1cff65fSHarald Geyer compatible = "allwinner,simple-framebuffer", 65c1cff65fSHarald Geyer "simple-framebuffer"; 66c1cff65fSHarald Geyer allwinner,pipeline = "mixer0-lcd0"; 67c1cff65fSHarald Geyer clocks = <&ccu CLK_TCON0>, 682c796fc8SIcenowy Zheng <&display_clocks CLK_MIXER0>; 69c1cff65fSHarald Geyer status = "disabled"; 70c1cff65fSHarald Geyer }; 71fca63f58SIcenowy Zheng 72fca63f58SIcenowy Zheng simplefb_hdmi: framebuffer-hdmi { 73fca63f58SIcenowy Zheng compatible = "allwinner,simple-framebuffer", 74fca63f58SIcenowy Zheng "simple-framebuffer"; 75fca63f58SIcenowy Zheng allwinner,pipeline = "mixer1-lcd1-hdmi"; 76fca63f58SIcenowy Zheng clocks = <&display_clocks CLK_MIXER1>, 77fca63f58SIcenowy Zheng <&ccu CLK_TCON1>, <&ccu CLK_HDMI>; 78fca63f58SIcenowy Zheng status = "disabled"; 79fca63f58SIcenowy Zheng }; 80c1cff65fSHarald Geyer }; 81c1cff65fSHarald Geyer 826bc37facSAndre Przywara cpus { 836bc37facSAndre Przywara #address-cells = <1>; 846bc37facSAndre Przywara #size-cells = <0>; 856bc37facSAndre Przywara 866bc37facSAndre Przywara cpu0: cpu@0 { 876bc37facSAndre Przywara compatible = "arm,cortex-a53", "arm,armv8"; 886bc37facSAndre Przywara device_type = "cpu"; 896bc37facSAndre Przywara reg = <0>; 906bc37facSAndre Przywara enable-method = "psci"; 9139defc81SAndre Przywara next-level-cache = <&L2>; 926bc37facSAndre Przywara }; 936bc37facSAndre Przywara 946bc37facSAndre Przywara cpu1: cpu@1 { 956bc37facSAndre Przywara compatible = "arm,cortex-a53", "arm,armv8"; 966bc37facSAndre Przywara device_type = "cpu"; 976bc37facSAndre Przywara reg = <1>; 986bc37facSAndre Przywara enable-method = "psci"; 9939defc81SAndre Przywara next-level-cache = <&L2>; 1006bc37facSAndre Przywara }; 1016bc37facSAndre Przywara 1026bc37facSAndre Przywara cpu2: cpu@2 { 1036bc37facSAndre Przywara compatible = "arm,cortex-a53", "arm,armv8"; 1046bc37facSAndre Przywara device_type = "cpu"; 1056bc37facSAndre Przywara reg = <2>; 1066bc37facSAndre Przywara enable-method = "psci"; 10739defc81SAndre Przywara next-level-cache = <&L2>; 1086bc37facSAndre Przywara }; 1096bc37facSAndre Przywara 1106bc37facSAndre Przywara cpu3: cpu@3 { 1116bc37facSAndre Przywara compatible = "arm,cortex-a53", "arm,armv8"; 1126bc37facSAndre Przywara device_type = "cpu"; 1136bc37facSAndre Przywara reg = <3>; 1146bc37facSAndre Przywara enable-method = "psci"; 11539defc81SAndre Przywara next-level-cache = <&L2>; 11639defc81SAndre Przywara }; 11739defc81SAndre Przywara 11839defc81SAndre Przywara L2: l2-cache { 11939defc81SAndre Przywara compatible = "cache"; 12039defc81SAndre Przywara cache-level = <2>; 1216bc37facSAndre Przywara }; 1226bc37facSAndre Przywara }; 1236bc37facSAndre Przywara 1246bc37facSAndre Przywara osc24M: osc24M_clk { 1256bc37facSAndre Przywara #clock-cells = <0>; 1266bc37facSAndre Przywara compatible = "fixed-clock"; 1276bc37facSAndre Przywara clock-frequency = <24000000>; 1286bc37facSAndre Przywara clock-output-names = "osc24M"; 1296bc37facSAndre Przywara }; 1306bc37facSAndre Przywara 1316bc37facSAndre Przywara osc32k: osc32k_clk { 1326bc37facSAndre Przywara #clock-cells = <0>; 1336bc37facSAndre Przywara compatible = "fixed-clock"; 1346bc37facSAndre Przywara clock-frequency = <32768>; 1356bc37facSAndre Przywara clock-output-names = "osc32k"; 1366bc37facSAndre Przywara }; 1376bc37facSAndre Przywara 138791a9e00SIcenowy Zheng iosc: internal-osc-clk { 139791a9e00SIcenowy Zheng #clock-cells = <0>; 140791a9e00SIcenowy Zheng compatible = "fixed-clock"; 141791a9e00SIcenowy Zheng clock-frequency = <16000000>; 142791a9e00SIcenowy Zheng clock-accuracy = <300000000>; 143791a9e00SIcenowy Zheng clock-output-names = "iosc"; 144791a9e00SIcenowy Zheng }; 145791a9e00SIcenowy Zheng 1466bc37facSAndre Przywara psci { 1476bc37facSAndre Przywara compatible = "arm,psci-0.2"; 1486bc37facSAndre Przywara method = "smc"; 1496bc37facSAndre Przywara }; 1506bc37facSAndre Przywara 15178e07137SMarcus Cooper sound_spdif { 15278e07137SMarcus Cooper compatible = "simple-audio-card"; 15378e07137SMarcus Cooper simple-audio-card,name = "On-board SPDIF"; 15478e07137SMarcus Cooper 15578e07137SMarcus Cooper simple-audio-card,cpu { 15678e07137SMarcus Cooper sound-dai = <&spdif>; 15778e07137SMarcus Cooper }; 15878e07137SMarcus Cooper 15978e07137SMarcus Cooper simple-audio-card,codec { 16078e07137SMarcus Cooper sound-dai = <&spdif_out>; 16178e07137SMarcus Cooper }; 16278e07137SMarcus Cooper }; 16378e07137SMarcus Cooper 16478e07137SMarcus Cooper spdif_out: spdif-out { 16578e07137SMarcus Cooper #sound-dai-cells = <0>; 16678e07137SMarcus Cooper compatible = "linux,spdif-dit"; 16778e07137SMarcus Cooper }; 16878e07137SMarcus Cooper 1696bc37facSAndre Przywara timer { 1706bc37facSAndre Przywara compatible = "arm,armv8-timer"; 1716bc37facSAndre Przywara interrupts = <GIC_PPI 13 1726bc37facSAndre Przywara (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 1736bc37facSAndre Przywara <GIC_PPI 14 1746bc37facSAndre Przywara (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 1756bc37facSAndre Przywara <GIC_PPI 11 1766bc37facSAndre Przywara (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>, 1776bc37facSAndre Przywara <GIC_PPI 10 1786bc37facSAndre Przywara (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 1796bc37facSAndre Przywara }; 1806bc37facSAndre Przywara 1816bc37facSAndre Przywara soc { 1826bc37facSAndre Przywara compatible = "simple-bus"; 1836bc37facSAndre Przywara #address-cells = <1>; 1846bc37facSAndre Przywara #size-cells = <1>; 1856bc37facSAndre Przywara ranges; 1866bc37facSAndre Przywara 1872c796fc8SIcenowy Zheng de2@1000000 { 1882c796fc8SIcenowy Zheng compatible = "allwinner,sun50i-a64-de2"; 1892c796fc8SIcenowy Zheng reg = <0x1000000 0x400000>; 1902c796fc8SIcenowy Zheng allwinner,sram = <&de2_sram 1>; 1912c796fc8SIcenowy Zheng #address-cells = <1>; 1922c796fc8SIcenowy Zheng #size-cells = <1>; 1932c796fc8SIcenowy Zheng ranges = <0 0x1000000 0x400000>; 1942c796fc8SIcenowy Zheng 1952c796fc8SIcenowy Zheng display_clocks: clock@0 { 1962c796fc8SIcenowy Zheng compatible = "allwinner,sun50i-a64-de2-clk"; 1972c796fc8SIcenowy Zheng reg = <0x0 0x100000>; 1982c796fc8SIcenowy Zheng clocks = <&ccu CLK_DE>, 1992c796fc8SIcenowy Zheng <&ccu CLK_BUS_DE>; 2002c796fc8SIcenowy Zheng clock-names = "mod", 2012c796fc8SIcenowy Zheng "bus"; 2022c796fc8SIcenowy Zheng resets = <&ccu RST_BUS_DE>; 2032c796fc8SIcenowy Zheng #clock-cells = <1>; 2042c796fc8SIcenowy Zheng #reset-cells = <1>; 2052c796fc8SIcenowy Zheng }; 2062c796fc8SIcenowy Zheng }; 2072c796fc8SIcenowy Zheng 20879b95360SCorentin Labbe syscon: syscon@1c00000 { 2091f1f5183SIcenowy Zheng compatible = "allwinner,sun50i-a64-system-control"; 21079b95360SCorentin Labbe reg = <0x01c00000 0x1000>; 2111f1f5183SIcenowy Zheng #address-cells = <1>; 2121f1f5183SIcenowy Zheng #size-cells = <1>; 2131f1f5183SIcenowy Zheng ranges; 2141f1f5183SIcenowy Zheng 2151f1f5183SIcenowy Zheng sram_c: sram@18000 { 2161f1f5183SIcenowy Zheng compatible = "mmio-sram"; 2171f1f5183SIcenowy Zheng reg = <0x00018000 0x28000>; 2181f1f5183SIcenowy Zheng #address-cells = <1>; 2191f1f5183SIcenowy Zheng #size-cells = <1>; 2201f1f5183SIcenowy Zheng ranges = <0 0x00018000 0x28000>; 2211f1f5183SIcenowy Zheng 2221f1f5183SIcenowy Zheng de2_sram: sram-section@0 { 2231f1f5183SIcenowy Zheng compatible = "allwinner,sun50i-a64-sram-c"; 2241f1f5183SIcenowy Zheng reg = <0x0000 0x28000>; 2251f1f5183SIcenowy Zheng }; 2261f1f5183SIcenowy Zheng }; 22779b95360SCorentin Labbe }; 22879b95360SCorentin Labbe 229c32637e0SStefan Brüns dma: dma-controller@1c02000 { 230c32637e0SStefan Brüns compatible = "allwinner,sun50i-a64-dma"; 231c32637e0SStefan Brüns reg = <0x01c02000 0x1000>; 232c32637e0SStefan Brüns interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; 233c32637e0SStefan Brüns clocks = <&ccu CLK_BUS_DMA>; 234c32637e0SStefan Brüns dma-channels = <8>; 235c32637e0SStefan Brüns dma-requests = <27>; 236c32637e0SStefan Brüns resets = <&ccu RST_BUS_DMA>; 237c32637e0SStefan Brüns #dma-cells = <1>; 238c32637e0SStefan Brüns }; 239c32637e0SStefan Brüns 240f3dff347SAndre Przywara mmc0: mmc@1c0f000 { 241f3dff347SAndre Przywara compatible = "allwinner,sun50i-a64-mmc"; 242f3dff347SAndre Przywara reg = <0x01c0f000 0x1000>; 243f3dff347SAndre Przywara clocks = <&ccu CLK_BUS_MMC0>, <&ccu CLK_MMC0>; 244f3dff347SAndre Przywara clock-names = "ahb", "mmc"; 245f3dff347SAndre Przywara resets = <&ccu RST_BUS_MMC0>; 246f3dff347SAndre Przywara reset-names = "ahb"; 247f3dff347SAndre Przywara interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; 24822be992fSMaxime Ripard max-frequency = <150000000>; 249f3dff347SAndre Przywara status = "disabled"; 250f3dff347SAndre Przywara #address-cells = <1>; 251f3dff347SAndre Przywara #size-cells = <0>; 252f3dff347SAndre Przywara }; 253f3dff347SAndre Przywara 254f3dff347SAndre Przywara mmc1: mmc@1c10000 { 255f3dff347SAndre Przywara compatible = "allwinner,sun50i-a64-mmc"; 256f3dff347SAndre Przywara reg = <0x01c10000 0x1000>; 257f3dff347SAndre Przywara clocks = <&ccu CLK_BUS_MMC1>, <&ccu CLK_MMC1>; 258f3dff347SAndre Przywara clock-names = "ahb", "mmc"; 259f3dff347SAndre Przywara resets = <&ccu RST_BUS_MMC1>; 260f3dff347SAndre Przywara reset-names = "ahb"; 261f3dff347SAndre Przywara interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; 26222be992fSMaxime Ripard max-frequency = <150000000>; 263f3dff347SAndre Przywara status = "disabled"; 264f3dff347SAndre Przywara #address-cells = <1>; 265f3dff347SAndre Przywara #size-cells = <0>; 266f3dff347SAndre Przywara }; 267f3dff347SAndre Przywara 268f3dff347SAndre Przywara mmc2: mmc@1c11000 { 269f3dff347SAndre Przywara compatible = "allwinner,sun50i-a64-emmc"; 270f3dff347SAndre Przywara reg = <0x01c11000 0x1000>; 271f3dff347SAndre Przywara clocks = <&ccu CLK_BUS_MMC2>, <&ccu CLK_MMC2>; 272f3dff347SAndre Przywara clock-names = "ahb", "mmc"; 273f3dff347SAndre Przywara resets = <&ccu RST_BUS_MMC2>; 274f3dff347SAndre Przywara reset-names = "ahb"; 275f3dff347SAndre Przywara interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; 27622be992fSMaxime Ripard max-frequency = <200000000>; 277f3dff347SAndre Przywara status = "disabled"; 278f3dff347SAndre Przywara #address-cells = <1>; 279f3dff347SAndre Przywara #size-cells = <0>; 280f3dff347SAndre Przywara }; 281f3dff347SAndre Przywara 282ac947b17SEmmanuel Vadot sid: eeprom@1c14000 { 283ac947b17SEmmanuel Vadot compatible = "allwinner,sun50i-a64-sid"; 284ac947b17SEmmanuel Vadot reg = <0x1c14000 0x400>; 285ac947b17SEmmanuel Vadot }; 286ac947b17SEmmanuel Vadot 287d6c9da12SCorentin LABBE usb_otg: usb@1c19000 { 288972a3ecdSIcenowy Zheng compatible = "allwinner,sun8i-a33-musb"; 289972a3ecdSIcenowy Zheng reg = <0x01c19000 0x0400>; 290972a3ecdSIcenowy Zheng clocks = <&ccu CLK_BUS_OTG>; 291972a3ecdSIcenowy Zheng resets = <&ccu RST_BUS_OTG>; 292972a3ecdSIcenowy Zheng interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; 293972a3ecdSIcenowy Zheng interrupt-names = "mc"; 294972a3ecdSIcenowy Zheng phys = <&usbphy 0>; 295972a3ecdSIcenowy Zheng phy-names = "usb"; 296972a3ecdSIcenowy Zheng extcon = <&usbphy 0>; 297972a3ecdSIcenowy Zheng status = "disabled"; 298972a3ecdSIcenowy Zheng }; 299972a3ecdSIcenowy Zheng 300d6c9da12SCorentin LABBE usbphy: phy@1c19400 { 301a004ee35SIcenowy Zheng compatible = "allwinner,sun50i-a64-usb-phy"; 302a004ee35SIcenowy Zheng reg = <0x01c19400 0x14>, 3030d984797SIcenowy Zheng <0x01c1a800 0x4>, 304a004ee35SIcenowy Zheng <0x01c1b800 0x4>; 305a004ee35SIcenowy Zheng reg-names = "phy_ctrl", 3060d984797SIcenowy Zheng "pmu0", 307a004ee35SIcenowy Zheng "pmu1"; 308a004ee35SIcenowy Zheng clocks = <&ccu CLK_USB_PHY0>, 309a004ee35SIcenowy Zheng <&ccu CLK_USB_PHY1>; 310a004ee35SIcenowy Zheng clock-names = "usb0_phy", 311a004ee35SIcenowy Zheng "usb1_phy"; 312a004ee35SIcenowy Zheng resets = <&ccu RST_USB_PHY0>, 313a004ee35SIcenowy Zheng <&ccu RST_USB_PHY1>; 314a004ee35SIcenowy Zheng reset-names = "usb0_reset", 315a004ee35SIcenowy Zheng "usb1_reset"; 316a004ee35SIcenowy Zheng status = "disabled"; 317a004ee35SIcenowy Zheng #phy-cells = <1>; 318a004ee35SIcenowy Zheng }; 319a004ee35SIcenowy Zheng 320d6c9da12SCorentin LABBE ehci0: usb@1c1a000 { 321dc03a047SIcenowy Zheng compatible = "allwinner,sun50i-a64-ehci", "generic-ehci"; 322dc03a047SIcenowy Zheng reg = <0x01c1a000 0x100>; 323dc03a047SIcenowy Zheng interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; 324dc03a047SIcenowy Zheng clocks = <&ccu CLK_BUS_OHCI0>, 325dc03a047SIcenowy Zheng <&ccu CLK_BUS_EHCI0>, 326dc03a047SIcenowy Zheng <&ccu CLK_USB_OHCI0>; 327dc03a047SIcenowy Zheng resets = <&ccu RST_BUS_OHCI0>, 328dc03a047SIcenowy Zheng <&ccu RST_BUS_EHCI0>; 329dc03a047SIcenowy Zheng status = "disabled"; 330dc03a047SIcenowy Zheng }; 331dc03a047SIcenowy Zheng 332d6c9da12SCorentin LABBE ohci0: usb@1c1a400 { 333dc03a047SIcenowy Zheng compatible = "allwinner,sun50i-a64-ohci", "generic-ohci"; 334dc03a047SIcenowy Zheng reg = <0x01c1a400 0x100>; 335dc03a047SIcenowy Zheng interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; 336dc03a047SIcenowy Zheng clocks = <&ccu CLK_BUS_OHCI0>, 337dc03a047SIcenowy Zheng <&ccu CLK_USB_OHCI0>; 338dc03a047SIcenowy Zheng resets = <&ccu RST_BUS_OHCI0>; 339dc03a047SIcenowy Zheng status = "disabled"; 340dc03a047SIcenowy Zheng }; 341dc03a047SIcenowy Zheng 342d6c9da12SCorentin LABBE ehci1: usb@1c1b000 { 343a004ee35SIcenowy Zheng compatible = "allwinner,sun50i-a64-ehci", "generic-ehci"; 344a004ee35SIcenowy Zheng reg = <0x01c1b000 0x100>; 345a004ee35SIcenowy Zheng interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; 346a004ee35SIcenowy Zheng clocks = <&ccu CLK_BUS_OHCI1>, 347a004ee35SIcenowy Zheng <&ccu CLK_BUS_EHCI1>, 348a004ee35SIcenowy Zheng <&ccu CLK_USB_OHCI1>; 349a004ee35SIcenowy Zheng resets = <&ccu RST_BUS_OHCI1>, 350a004ee35SIcenowy Zheng <&ccu RST_BUS_EHCI1>; 351a004ee35SIcenowy Zheng phys = <&usbphy 1>; 352a004ee35SIcenowy Zheng phy-names = "usb"; 353a004ee35SIcenowy Zheng status = "disabled"; 354a004ee35SIcenowy Zheng }; 355a004ee35SIcenowy Zheng 356d6c9da12SCorentin LABBE ohci1: usb@1c1b400 { 357a004ee35SIcenowy Zheng compatible = "allwinner,sun50i-a64-ohci", "generic-ohci"; 358a004ee35SIcenowy Zheng reg = <0x01c1b400 0x100>; 359a004ee35SIcenowy Zheng interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; 360a004ee35SIcenowy Zheng clocks = <&ccu CLK_BUS_OHCI1>, 361a004ee35SIcenowy Zheng <&ccu CLK_USB_OHCI1>; 362a004ee35SIcenowy Zheng resets = <&ccu RST_BUS_OHCI1>; 363a004ee35SIcenowy Zheng phys = <&usbphy 1>; 364a004ee35SIcenowy Zheng phy-names = "usb"; 365a004ee35SIcenowy Zheng status = "disabled"; 366a004ee35SIcenowy Zheng }; 367a004ee35SIcenowy Zheng 368d6c9da12SCorentin LABBE ccu: clock@1c20000 { 3696bc37facSAndre Przywara compatible = "allwinner,sun50i-a64-ccu"; 3706bc37facSAndre Przywara reg = <0x01c20000 0x400>; 3716bc37facSAndre Przywara clocks = <&osc24M>, <&osc32k>; 3726bc37facSAndre Przywara clock-names = "hosc", "losc"; 3736bc37facSAndre Przywara #clock-cells = <1>; 3746bc37facSAndre Przywara #reset-cells = <1>; 3756bc37facSAndre Przywara }; 3766bc37facSAndre Przywara 3776bc37facSAndre Przywara pio: pinctrl@1c20800 { 3786bc37facSAndre Przywara compatible = "allwinner,sun50i-a64-pinctrl"; 3796bc37facSAndre Przywara reg = <0x01c20800 0x400>; 3806bc37facSAndre Przywara interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 3816bc37facSAndre Przywara <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>, 3826bc37facSAndre Przywara <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; 383f98121f3SArnd Bergmann clocks = <&ccu 58>; 3846bc37facSAndre Przywara gpio-controller; 3856bc37facSAndre Przywara #gpio-cells = <3>; 3866bc37facSAndre Przywara interrupt-controller; 3876bc37facSAndre Przywara #interrupt-cells = <3>; 3886bc37facSAndre Przywara 38911239fe6SHarald Geyer i2c0_pins: i2c0_pins { 39011239fe6SHarald Geyer pins = "PH0", "PH1"; 39111239fe6SHarald Geyer function = "i2c0"; 39211239fe6SHarald Geyer }; 39311239fe6SHarald Geyer 3946bc37facSAndre Przywara i2c1_pins: i2c1_pins { 3956bc37facSAndre Przywara pins = "PH2", "PH3"; 3966bc37facSAndre Przywara function = "i2c1"; 3976bc37facSAndre Przywara }; 3986bc37facSAndre Przywara 399a3e8f492SMaxime Ripard mmc0_pins: mmc0-pins { 400a3e8f492SMaxime Ripard pins = "PF0", "PF1", "PF2", "PF3", 401a3e8f492SMaxime Ripard "PF4", "PF5"; 402a3e8f492SMaxime Ripard function = "mmc0"; 403a3e8f492SMaxime Ripard drive-strength = <30>; 404a3e8f492SMaxime Ripard bias-pull-up; 405a3e8f492SMaxime Ripard }; 406a3e8f492SMaxime Ripard 407a3e8f492SMaxime Ripard mmc1_pins: mmc1-pins { 408a3e8f492SMaxime Ripard pins = "PG0", "PG1", "PG2", "PG3", 409a3e8f492SMaxime Ripard "PG4", "PG5"; 410a3e8f492SMaxime Ripard function = "mmc1"; 411a3e8f492SMaxime Ripard drive-strength = <30>; 412a3e8f492SMaxime Ripard bias-pull-up; 413a3e8f492SMaxime Ripard }; 414a3e8f492SMaxime Ripard 415a3e8f492SMaxime Ripard mmc2_pins: mmc2-pins { 416fa59dd2eSChen-Yu Tsai pins = "PC5", "PC6", "PC8", "PC9", 417a3e8f492SMaxime Ripard "PC10","PC11", "PC12", "PC13", 418a3e8f492SMaxime Ripard "PC14", "PC15", "PC16"; 419a3e8f492SMaxime Ripard function = "mmc2"; 420a3e8f492SMaxime Ripard drive-strength = <30>; 421a3e8f492SMaxime Ripard bias-pull-up; 422a3e8f492SMaxime Ripard }; 423a3e8f492SMaxime Ripard 424fa59dd2eSChen-Yu Tsai mmc2_ds_pin: mmc2-ds-pin { 425fa59dd2eSChen-Yu Tsai pins = "PC1"; 426fa59dd2eSChen-Yu Tsai function = "mmc2"; 427fa59dd2eSChen-Yu Tsai drive-strength = <30>; 428fa59dd2eSChen-Yu Tsai bias-pull-up; 429fa59dd2eSChen-Yu Tsai }; 430fa59dd2eSChen-Yu Tsai 431b5df280bSAndre Przywara pwm_pin: pwm_pin { 432b5df280bSAndre Przywara pins = "PD22"; 433b5df280bSAndre Przywara function = "pwm"; 434b5df280bSAndre Przywara }; 435b5df280bSAndre Przywara 436e53f67e9SCorentin Labbe rmii_pins: rmii_pins { 437e53f67e9SCorentin Labbe pins = "PD10", "PD11", "PD13", "PD14", "PD17", 438e53f67e9SCorentin Labbe "PD18", "PD19", "PD20", "PD22", "PD23"; 439e53f67e9SCorentin Labbe function = "emac"; 440e53f67e9SCorentin Labbe drive-strength = <40>; 441e53f67e9SCorentin Labbe }; 442e53f67e9SCorentin Labbe 443e53f67e9SCorentin Labbe rgmii_pins: rgmii_pins { 444e53f67e9SCorentin Labbe pins = "PD8", "PD9", "PD10", "PD11", "PD12", 445e53f67e9SCorentin Labbe "PD13", "PD15", "PD16", "PD17", "PD18", 446e53f67e9SCorentin Labbe "PD19", "PD20", "PD21", "PD22", "PD23"; 447e53f67e9SCorentin Labbe function = "emac"; 448e53f67e9SCorentin Labbe drive-strength = <40>; 449e53f67e9SCorentin Labbe }; 450e53f67e9SCorentin Labbe 451b399d2acSMarcus Cooper spdif_tx_pin: spdif { 452b399d2acSMarcus Cooper pins = "PH8"; 453b399d2acSMarcus Cooper function = "spdif"; 454b399d2acSMarcus Cooper }; 455b399d2acSMarcus Cooper 456b518bb15SStefan Brüns spi0_pins: spi0 { 457b518bb15SStefan Brüns pins = "PC0", "PC1", "PC2", "PC3"; 458b518bb15SStefan Brüns function = "spi0"; 459b518bb15SStefan Brüns }; 460b518bb15SStefan Brüns 461b518bb15SStefan Brüns spi1_pins: spi1 { 462b518bb15SStefan Brüns pins = "PD0", "PD1", "PD2", "PD3"; 463b518bb15SStefan Brüns function = "spi1"; 464b518bb15SStefan Brüns }; 465b518bb15SStefan Brüns 466*d91ebb95SChen-Yu Tsai uart0_pb_pins: uart0-pb-pins { 4676bc37facSAndre Przywara pins = "PB8", "PB9"; 4686bc37facSAndre Przywara function = "uart0"; 4696bc37facSAndre Przywara }; 470e7ba733dSAndre Przywara 471e7ba733dSAndre Przywara uart1_pins: uart1_pins { 472e7ba733dSAndre Przywara pins = "PG6", "PG7"; 473e7ba733dSAndre Przywara function = "uart1"; 474e7ba733dSAndre Przywara }; 475e7ba733dSAndre Przywara 476e7ba733dSAndre Przywara uart1_rts_cts_pins: uart1_rts_cts_pins { 477e7ba733dSAndre Przywara pins = "PG8", "PG9"; 478e7ba733dSAndre Przywara function = "uart1"; 479e7ba733dSAndre Przywara }; 48079825719SAndreas Färber 48179825719SAndreas Färber uart2_pins: uart2-pins { 48279825719SAndreas Färber pins = "PB0", "PB1"; 48379825719SAndreas Färber function = "uart2"; 48479825719SAndreas Färber }; 4852273aa16SAndreas Färber 4862273aa16SAndreas Färber uart3_pins: uart3-pins { 4872273aa16SAndreas Färber pins = "PD0", "PD1"; 4882273aa16SAndreas Färber function = "uart3"; 4892273aa16SAndreas Färber }; 4902273aa16SAndreas Färber 4912273aa16SAndreas Färber uart4_pins: uart4-pins { 4922273aa16SAndreas Färber pins = "PD2", "PD3"; 4932273aa16SAndreas Färber function = "uart4"; 4942273aa16SAndreas Färber }; 4952273aa16SAndreas Färber 4962273aa16SAndreas Färber uart4_rts_cts_pins: uart4-rts-cts-pins { 4972273aa16SAndreas Färber pins = "PD4", "PD5"; 4982273aa16SAndreas Färber function = "uart4"; 4992273aa16SAndreas Färber }; 5006bc37facSAndre Przywara }; 5016bc37facSAndre Przywara 502b399d2acSMarcus Cooper spdif: spdif@1c21000 { 503b399d2acSMarcus Cooper #sound-dai-cells = <0>; 504b399d2acSMarcus Cooper compatible = "allwinner,sun50i-a64-spdif", 505b399d2acSMarcus Cooper "allwinner,sun8i-h3-spdif"; 506b399d2acSMarcus Cooper reg = <0x01c21000 0x400>; 507b399d2acSMarcus Cooper interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; 508b399d2acSMarcus Cooper clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>; 509b399d2acSMarcus Cooper resets = <&ccu RST_BUS_SPDIF>; 510b399d2acSMarcus Cooper clock-names = "apb", "spdif"; 511b399d2acSMarcus Cooper dmas = <&dma 2>; 512b399d2acSMarcus Cooper dma-names = "tx"; 513b399d2acSMarcus Cooper pinctrl-names = "default"; 514b399d2acSMarcus Cooper pinctrl-0 = <&spdif_tx_pin>; 515b399d2acSMarcus Cooper status = "disabled"; 516b399d2acSMarcus Cooper }; 517b399d2acSMarcus Cooper 5181c92c009SMarcus Cooper i2s0: i2s@1c22000 { 5191c92c009SMarcus Cooper #sound-dai-cells = <0>; 5201c92c009SMarcus Cooper compatible = "allwinner,sun50i-a64-i2s", 5211c92c009SMarcus Cooper "allwinner,sun8i-h3-i2s"; 5221c92c009SMarcus Cooper reg = <0x01c22000 0x400>; 5231c92c009SMarcus Cooper interrupts = <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 5241c92c009SMarcus Cooper clocks = <&ccu CLK_BUS_I2S0>, <&ccu CLK_I2S0>; 5251c92c009SMarcus Cooper clock-names = "apb", "mod"; 5261c92c009SMarcus Cooper resets = <&ccu RST_BUS_I2S0>; 5271c92c009SMarcus Cooper dma-names = "rx", "tx"; 5281c92c009SMarcus Cooper dmas = <&dma 3>, <&dma 3>; 5291c92c009SMarcus Cooper status = "disabled"; 5301c92c009SMarcus Cooper }; 5311c92c009SMarcus Cooper 5321c92c009SMarcus Cooper i2s1: i2s@1c22400 { 5331c92c009SMarcus Cooper #sound-dai-cells = <0>; 5341c92c009SMarcus Cooper compatible = "allwinner,sun50i-a64-i2s", 5351c92c009SMarcus Cooper "allwinner,sun8i-h3-i2s"; 5361c92c009SMarcus Cooper reg = <0x01c22400 0x400>; 5371c92c009SMarcus Cooper interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; 5381c92c009SMarcus Cooper clocks = <&ccu CLK_BUS_I2S1>, <&ccu CLK_I2S1>; 5391c92c009SMarcus Cooper clock-names = "apb", "mod"; 5401c92c009SMarcus Cooper resets = <&ccu RST_BUS_I2S1>; 5411c92c009SMarcus Cooper dma-names = "rx", "tx"; 5421c92c009SMarcus Cooper dmas = <&dma 4>, <&dma 4>; 5431c92c009SMarcus Cooper status = "disabled"; 5441c92c009SMarcus Cooper }; 5451c92c009SMarcus Cooper 5466bc37facSAndre Przywara uart0: serial@1c28000 { 5476bc37facSAndre Przywara compatible = "snps,dw-apb-uart"; 5486bc37facSAndre Przywara reg = <0x01c28000 0x400>; 5496bc37facSAndre Przywara interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 5506bc37facSAndre Przywara reg-shift = <2>; 5516bc37facSAndre Przywara reg-io-width = <4>; 552494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_UART0>; 553494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_UART0>; 5546bc37facSAndre Przywara status = "disabled"; 5556bc37facSAndre Przywara }; 5566bc37facSAndre Przywara 5576bc37facSAndre Przywara uart1: serial@1c28400 { 5586bc37facSAndre Przywara compatible = "snps,dw-apb-uart"; 5596bc37facSAndre Przywara reg = <0x01c28400 0x400>; 5606bc37facSAndre Przywara interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 5616bc37facSAndre Przywara reg-shift = <2>; 5626bc37facSAndre Przywara reg-io-width = <4>; 563494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_UART1>; 564494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_UART1>; 5656bc37facSAndre Przywara status = "disabled"; 5666bc37facSAndre Przywara }; 5676bc37facSAndre Przywara 5686bc37facSAndre Przywara uart2: serial@1c28800 { 5696bc37facSAndre Przywara compatible = "snps,dw-apb-uart"; 5706bc37facSAndre Przywara reg = <0x01c28800 0x400>; 5716bc37facSAndre Przywara interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 5726bc37facSAndre Przywara reg-shift = <2>; 5736bc37facSAndre Przywara reg-io-width = <4>; 574494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_UART2>; 575494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_UART2>; 5766bc37facSAndre Przywara status = "disabled"; 5776bc37facSAndre Przywara }; 5786bc37facSAndre Przywara 5796bc37facSAndre Przywara uart3: serial@1c28c00 { 5806bc37facSAndre Przywara compatible = "snps,dw-apb-uart"; 5816bc37facSAndre Przywara reg = <0x01c28c00 0x400>; 5826bc37facSAndre Przywara interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 5836bc37facSAndre Przywara reg-shift = <2>; 5846bc37facSAndre Przywara reg-io-width = <4>; 585494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_UART3>; 586494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_UART3>; 5876bc37facSAndre Przywara status = "disabled"; 5886bc37facSAndre Przywara }; 5896bc37facSAndre Przywara 5906bc37facSAndre Przywara uart4: serial@1c29000 { 5916bc37facSAndre Przywara compatible = "snps,dw-apb-uart"; 5926bc37facSAndre Przywara reg = <0x01c29000 0x400>; 5936bc37facSAndre Przywara interrupts = <GIC_SPI 4 IRQ_TYPE_LEVEL_HIGH>; 5946bc37facSAndre Przywara reg-shift = <2>; 5956bc37facSAndre Przywara reg-io-width = <4>; 596494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_UART4>; 597494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_UART4>; 5986bc37facSAndre Przywara status = "disabled"; 5996bc37facSAndre Przywara }; 6006bc37facSAndre Przywara 6016bc37facSAndre Przywara i2c0: i2c@1c2ac00 { 6026bc37facSAndre Przywara compatible = "allwinner,sun6i-a31-i2c"; 6036bc37facSAndre Przywara reg = <0x01c2ac00 0x400>; 6046bc37facSAndre Przywara interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; 605494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_I2C0>; 606494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_I2C0>; 6076bc37facSAndre Przywara status = "disabled"; 6086bc37facSAndre Przywara #address-cells = <1>; 6096bc37facSAndre Przywara #size-cells = <0>; 6106bc37facSAndre Przywara }; 6116bc37facSAndre Przywara 6126bc37facSAndre Przywara i2c1: i2c@1c2b000 { 6136bc37facSAndre Przywara compatible = "allwinner,sun6i-a31-i2c"; 6146bc37facSAndre Przywara reg = <0x01c2b000 0x400>; 6156bc37facSAndre Przywara interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; 616494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_I2C1>; 617494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_I2C1>; 6186bc37facSAndre Przywara status = "disabled"; 6196bc37facSAndre Przywara #address-cells = <1>; 6206bc37facSAndre Przywara #size-cells = <0>; 6216bc37facSAndre Przywara }; 6226bc37facSAndre Przywara 6236bc37facSAndre Przywara i2c2: i2c@1c2b400 { 6246bc37facSAndre Przywara compatible = "allwinner,sun6i-a31-i2c"; 6256bc37facSAndre Przywara reg = <0x01c2b400 0x400>; 6266bc37facSAndre Przywara interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; 627494d8a2cSChen-Yu Tsai clocks = <&ccu CLK_BUS_I2C2>; 628494d8a2cSChen-Yu Tsai resets = <&ccu RST_BUS_I2C2>; 6296bc37facSAndre Przywara status = "disabled"; 6306bc37facSAndre Przywara #address-cells = <1>; 6316bc37facSAndre Przywara #size-cells = <0>; 6326bc37facSAndre Przywara }; 6336bc37facSAndre Przywara 634b518bb15SStefan Brüns 635d6c9da12SCorentin LABBE spi0: spi@1c68000 { 636b518bb15SStefan Brüns compatible = "allwinner,sun8i-h3-spi"; 637b518bb15SStefan Brüns reg = <0x01c68000 0x1000>; 638b518bb15SStefan Brüns interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; 639b518bb15SStefan Brüns clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; 640b518bb15SStefan Brüns clock-names = "ahb", "mod"; 64106c1258aSStefan Brüns dmas = <&dma 23>, <&dma 23>; 64206c1258aSStefan Brüns dma-names = "rx", "tx"; 643b518bb15SStefan Brüns pinctrl-names = "default"; 644b518bb15SStefan Brüns pinctrl-0 = <&spi0_pins>; 645b518bb15SStefan Brüns resets = <&ccu RST_BUS_SPI0>; 646b518bb15SStefan Brüns status = "disabled"; 647b518bb15SStefan Brüns num-cs = <1>; 648b518bb15SStefan Brüns #address-cells = <1>; 649b518bb15SStefan Brüns #size-cells = <0>; 650b518bb15SStefan Brüns }; 651b518bb15SStefan Brüns 652d6c9da12SCorentin LABBE spi1: spi@1c69000 { 653b518bb15SStefan Brüns compatible = "allwinner,sun8i-h3-spi"; 654b518bb15SStefan Brüns reg = <0x01c69000 0x1000>; 655b518bb15SStefan Brüns interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; 656b518bb15SStefan Brüns clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; 657b518bb15SStefan Brüns clock-names = "ahb", "mod"; 65806c1258aSStefan Brüns dmas = <&dma 24>, <&dma 24>; 65906c1258aSStefan Brüns dma-names = "rx", "tx"; 660b518bb15SStefan Brüns pinctrl-names = "default"; 661b518bb15SStefan Brüns pinctrl-0 = <&spi1_pins>; 662b518bb15SStefan Brüns resets = <&ccu RST_BUS_SPI1>; 663b518bb15SStefan Brüns status = "disabled"; 664b518bb15SStefan Brüns num-cs = <1>; 665b518bb15SStefan Brüns #address-cells = <1>; 666b518bb15SStefan Brüns #size-cells = <0>; 667b518bb15SStefan Brüns }; 668b518bb15SStefan Brüns 66994f44288SCorentin Labbe emac: ethernet@1c30000 { 67094f44288SCorentin Labbe compatible = "allwinner,sun50i-a64-emac"; 67194f44288SCorentin Labbe syscon = <&syscon>; 67294f44288SCorentin Labbe reg = <0x01c30000 0x10000>; 67394f44288SCorentin Labbe interrupts = <GIC_SPI 82 IRQ_TYPE_LEVEL_HIGH>; 67494f44288SCorentin Labbe interrupt-names = "macirq"; 67594f44288SCorentin Labbe resets = <&ccu RST_BUS_EMAC>; 67694f44288SCorentin Labbe reset-names = "stmmaceth"; 67794f44288SCorentin Labbe clocks = <&ccu CLK_BUS_EMAC>; 67894f44288SCorentin Labbe clock-names = "stmmaceth"; 67994f44288SCorentin Labbe status = "disabled"; 68094f44288SCorentin Labbe 68194f44288SCorentin Labbe mdio: mdio { 68216416084SCorentin Labbe compatible = "snps,dwmac-mdio"; 68394f44288SCorentin Labbe #address-cells = <1>; 68494f44288SCorentin Labbe #size-cells = <0>; 68594f44288SCorentin Labbe }; 68694f44288SCorentin Labbe }; 68794f44288SCorentin Labbe 6886bc37facSAndre Przywara gic: interrupt-controller@1c81000 { 6896bc37facSAndre Przywara compatible = "arm,gic-400"; 6906bc37facSAndre Przywara reg = <0x01c81000 0x1000>, 6916bc37facSAndre Przywara <0x01c82000 0x2000>, 6926bc37facSAndre Przywara <0x01c84000 0x2000>, 6936bc37facSAndre Przywara <0x01c86000 0x2000>; 6946bc37facSAndre Przywara interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; 6956bc37facSAndre Przywara interrupt-controller; 6966bc37facSAndre Przywara #interrupt-cells = <3>; 6976bc37facSAndre Przywara }; 6986bc37facSAndre Przywara 699b5df280bSAndre Przywara pwm: pwm@1c21400 { 700b5df280bSAndre Przywara compatible = "allwinner,sun50i-a64-pwm", 701b5df280bSAndre Przywara "allwinner,sun5i-a13-pwm"; 702b5df280bSAndre Przywara reg = <0x01c21400 0x400>; 703b5df280bSAndre Przywara clocks = <&osc24M>; 704b5df280bSAndre Przywara pinctrl-names = "default"; 705b5df280bSAndre Przywara pinctrl-0 = <&pwm_pin>; 706b5df280bSAndre Przywara #pwm-cells = <3>; 707b5df280bSAndre Przywara status = "disabled"; 708b5df280bSAndre Przywara }; 709b5df280bSAndre Przywara 7106bc37facSAndre Przywara rtc: rtc@1f00000 { 7116bc37facSAndre Przywara compatible = "allwinner,sun6i-a31-rtc"; 7126bc37facSAndre Przywara reg = <0x01f00000 0x54>; 7136bc37facSAndre Przywara interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, 7146bc37facSAndre Przywara <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; 715e1a9a474SJagan Teki clock-output-names = "rtc-osc32k", "rtc-osc32k-out"; 716e1a9a474SJagan Teki clocks = <&osc32k>; 717e1a9a474SJagan Teki #clock-cells = <1>; 7186bc37facSAndre Przywara }; 719791a9e00SIcenowy Zheng 720535ca508SIcenowy Zheng r_intc: interrupt-controller@1f00c00 { 721535ca508SIcenowy Zheng compatible = "allwinner,sun50i-a64-r-intc", 722535ca508SIcenowy Zheng "allwinner,sun6i-a31-r-intc"; 723535ca508SIcenowy Zheng interrupt-controller; 724535ca508SIcenowy Zheng #interrupt-cells = <2>; 725535ca508SIcenowy Zheng reg = <0x01f00c00 0x400>; 726535ca508SIcenowy Zheng interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; 727535ca508SIcenowy Zheng }; 728535ca508SIcenowy Zheng 729791a9e00SIcenowy Zheng r_ccu: clock@1f01400 { 730791a9e00SIcenowy Zheng compatible = "allwinner,sun50i-a64-r-ccu"; 731791a9e00SIcenowy Zheng reg = <0x01f01400 0x100>; 732f74994a9SChen-Yu Tsai clocks = <&osc24M>, <&osc32k>, <&iosc>, 733f74994a9SChen-Yu Tsai <&ccu 11>; 734f74994a9SChen-Yu Tsai clock-names = "hosc", "losc", "iosc", "pll-periph"; 735791a9e00SIcenowy Zheng #clock-cells = <1>; 736791a9e00SIcenowy Zheng #reset-cells = <1>; 737791a9e00SIcenowy Zheng }; 738ec427905SIcenowy Zheng 739871b5352SIcenowy Zheng r_i2c: i2c@1f02400 { 740871b5352SIcenowy Zheng compatible = "allwinner,sun50i-a64-i2c", 741871b5352SIcenowy Zheng "allwinner,sun6i-a31-i2c"; 742871b5352SIcenowy Zheng reg = <0x01f02400 0x400>; 743871b5352SIcenowy Zheng interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; 744871b5352SIcenowy Zheng clocks = <&r_ccu CLK_APB0_I2C>; 745871b5352SIcenowy Zheng resets = <&r_ccu RST_APB0_I2C>; 746871b5352SIcenowy Zheng status = "disabled"; 747871b5352SIcenowy Zheng #address-cells = <1>; 748871b5352SIcenowy Zheng #size-cells = <0>; 749871b5352SIcenowy Zheng }; 750871b5352SIcenowy Zheng 751b5df280bSAndre Przywara r_pwm: pwm@1f03800 { 752b5df280bSAndre Przywara compatible = "allwinner,sun50i-a64-pwm", 753b5df280bSAndre Przywara "allwinner,sun5i-a13-pwm"; 754b5df280bSAndre Przywara reg = <0x01f03800 0x400>; 755b5df280bSAndre Przywara clocks = <&osc24M>; 756b5df280bSAndre Przywara pinctrl-names = "default"; 757b5df280bSAndre Przywara pinctrl-0 = <&r_pwm_pin>; 758b5df280bSAndre Przywara #pwm-cells = <3>; 759b5df280bSAndre Przywara status = "disabled"; 760b5df280bSAndre Przywara }; 761b5df280bSAndre Przywara 762d6c9da12SCorentin LABBE r_pio: pinctrl@1f02c00 { 763ec427905SIcenowy Zheng compatible = "allwinner,sun50i-a64-r-pinctrl"; 764ec427905SIcenowy Zheng reg = <0x01f02c00 0x400>; 765ec427905SIcenowy Zheng interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 766494d8a2cSChen-Yu Tsai clocks = <&r_ccu CLK_APB0_PIO>, <&osc24M>, <&osc32k>; 767ec427905SIcenowy Zheng clock-names = "apb", "hosc", "losc"; 768ec427905SIcenowy Zheng gpio-controller; 769ec427905SIcenowy Zheng #gpio-cells = <3>; 770ec427905SIcenowy Zheng interrupt-controller; 771ec427905SIcenowy Zheng #interrupt-cells = <3>; 7723b38fdedSIcenowy Zheng 773871b5352SIcenowy Zheng r_i2c_pins_a: i2c-a { 774871b5352SIcenowy Zheng pins = "PL8", "PL9"; 775871b5352SIcenowy Zheng function = "s_i2c"; 776871b5352SIcenowy Zheng }; 777871b5352SIcenowy Zheng 778b5df280bSAndre Przywara r_pwm_pin: pwm { 779b5df280bSAndre Przywara pins = "PL10"; 780b5df280bSAndre Przywara function = "s_pwm"; 781b5df280bSAndre Przywara }; 782b5df280bSAndre Przywara 78392d378fbSCorentin LABBE r_rsb_pins: rsb { 7843b38fdedSIcenowy Zheng pins = "PL0", "PL1"; 7853b38fdedSIcenowy Zheng function = "s_rsb"; 7863b38fdedSIcenowy Zheng }; 7873b38fdedSIcenowy Zheng }; 7883b38fdedSIcenowy Zheng 7893b38fdedSIcenowy Zheng r_rsb: rsb@1f03400 { 7903b38fdedSIcenowy Zheng compatible = "allwinner,sun8i-a23-rsb"; 7913b38fdedSIcenowy Zheng reg = <0x01f03400 0x400>; 7923b38fdedSIcenowy Zheng interrupts = <GIC_SPI 39 IRQ_TYPE_LEVEL_HIGH>; 7933b38fdedSIcenowy Zheng clocks = <&r_ccu 6>; 7943b38fdedSIcenowy Zheng clock-frequency = <3000000>; 7953b38fdedSIcenowy Zheng resets = <&r_ccu 2>; 7963b38fdedSIcenowy Zheng pinctrl-names = "default"; 7973b38fdedSIcenowy Zheng pinctrl-0 = <&r_rsb_pins>; 7983b38fdedSIcenowy Zheng status = "disabled"; 7993b38fdedSIcenowy Zheng #address-cells = <1>; 8003b38fdedSIcenowy Zheng #size-cells = <0>; 801ec427905SIcenowy Zheng }; 802d4185043SHarald Geyer 803d4185043SHarald Geyer wdt0: watchdog@1c20ca0 { 804d4185043SHarald Geyer compatible = "allwinner,sun50i-a64-wdt", 805d4185043SHarald Geyer "allwinner,sun6i-a31-wdt"; 806d4185043SHarald Geyer reg = <0x01c20ca0 0x20>; 807d4185043SHarald Geyer interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 808d4185043SHarald Geyer }; 8096bc37facSAndre Przywara }; 8106bc37facSAndre Przywara}; 811