18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Device Tree Include file for Marvell Armada 37xx family of SoCs. 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright (C) 2016 Marvell 68c2ecf20Sopenharmony_ci * 78c2ecf20Sopenharmony_ci * Gregory CLEMENT <gregory.clement@free-electrons.com> 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci */ 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci#include <dt-bindings/interrupt-controller/arm-gic.h> 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ci/ { 148c2ecf20Sopenharmony_ci model = "Marvell Armada 37xx SoC"; 158c2ecf20Sopenharmony_ci compatible = "marvell,armada3700"; 168c2ecf20Sopenharmony_ci interrupt-parent = <&gic>; 178c2ecf20Sopenharmony_ci #address-cells = <2>; 188c2ecf20Sopenharmony_ci #size-cells = <2>; 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ci aliases { 218c2ecf20Sopenharmony_ci serial0 = &uart0; 228c2ecf20Sopenharmony_ci serial1 = &uart1; 238c2ecf20Sopenharmony_ci }; 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ci reserved-memory { 268c2ecf20Sopenharmony_ci #address-cells = <2>; 278c2ecf20Sopenharmony_ci #size-cells = <2>; 288c2ecf20Sopenharmony_ci ranges; 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci /* 318c2ecf20Sopenharmony_ci * The PSCI firmware region depicted below is the default one 328c2ecf20Sopenharmony_ci * and should be updated by the bootloader. 338c2ecf20Sopenharmony_ci */ 348c2ecf20Sopenharmony_ci psci-area@4000000 { 358c2ecf20Sopenharmony_ci reg = <0 0x4000000 0 0x200000>; 368c2ecf20Sopenharmony_ci no-map; 378c2ecf20Sopenharmony_ci }; 388c2ecf20Sopenharmony_ci }; 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci cpus { 418c2ecf20Sopenharmony_ci #address-cells = <1>; 428c2ecf20Sopenharmony_ci #size-cells = <0>; 438c2ecf20Sopenharmony_ci cpu0: cpu@0 { 448c2ecf20Sopenharmony_ci device_type = "cpu"; 458c2ecf20Sopenharmony_ci compatible = "arm,cortex-a53"; 468c2ecf20Sopenharmony_ci reg = <0>; 478c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 16>; 488c2ecf20Sopenharmony_ci enable-method = "psci"; 498c2ecf20Sopenharmony_ci }; 508c2ecf20Sopenharmony_ci }; 518c2ecf20Sopenharmony_ci 528c2ecf20Sopenharmony_ci psci { 538c2ecf20Sopenharmony_ci compatible = "arm,psci-0.2"; 548c2ecf20Sopenharmony_ci method = "smc"; 558c2ecf20Sopenharmony_ci }; 568c2ecf20Sopenharmony_ci 578c2ecf20Sopenharmony_ci timer { 588c2ecf20Sopenharmony_ci compatible = "arm,armv8-timer"; 598c2ecf20Sopenharmony_ci interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, 608c2ecf20Sopenharmony_ci <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, 618c2ecf20Sopenharmony_ci <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, 628c2ecf20Sopenharmony_ci <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci pmu { 668c2ecf20Sopenharmony_ci compatible = "arm,armv8-pmuv3"; 678c2ecf20Sopenharmony_ci interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; 688c2ecf20Sopenharmony_ci }; 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci soc { 718c2ecf20Sopenharmony_ci compatible = "simple-bus"; 728c2ecf20Sopenharmony_ci #address-cells = <2>; 738c2ecf20Sopenharmony_ci #size-cells = <2>; 748c2ecf20Sopenharmony_ci ranges; 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ci internal-regs@d0000000 { 778c2ecf20Sopenharmony_ci #address-cells = <1>; 788c2ecf20Sopenharmony_ci #size-cells = <1>; 798c2ecf20Sopenharmony_ci compatible = "simple-bus"; 808c2ecf20Sopenharmony_ci /* 32M internal register @ 0xd000_0000 */ 818c2ecf20Sopenharmony_ci ranges = <0x0 0x0 0xd0000000 0x2000000>; 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ci wdt: watchdog@8300 { 848c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-wdt"; 858c2ecf20Sopenharmony_ci reg = <0x8300 0x40>; 868c2ecf20Sopenharmony_ci marvell,system-controller = <&cpu_misc>; 878c2ecf20Sopenharmony_ci clocks = <&xtalclk>; 888c2ecf20Sopenharmony_ci }; 898c2ecf20Sopenharmony_ci 908c2ecf20Sopenharmony_ci cpu_misc: system-controller@d000 { 918c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-cpu-misc", 928c2ecf20Sopenharmony_ci "syscon"; 938c2ecf20Sopenharmony_ci reg = <0xd000 0x1000>; 948c2ecf20Sopenharmony_ci }; 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ci spi0: spi@10600 { 978c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-spi"; 988c2ecf20Sopenharmony_ci #address-cells = <1>; 998c2ecf20Sopenharmony_ci #size-cells = <0>; 1008c2ecf20Sopenharmony_ci reg = <0x10600 0xA00>; 1018c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 7>; 1028c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 1038c2ecf20Sopenharmony_ci num-cs = <4>; 1048c2ecf20Sopenharmony_ci status = "disabled"; 1058c2ecf20Sopenharmony_ci }; 1068c2ecf20Sopenharmony_ci 1078c2ecf20Sopenharmony_ci i2c0: i2c@11000 { 1088c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-i2c"; 1098c2ecf20Sopenharmony_ci reg = <0x11000 0x24>; 1108c2ecf20Sopenharmony_ci #address-cells = <1>; 1118c2ecf20Sopenharmony_ci #size-cells = <0>; 1128c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 10>; 1138c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 1148c2ecf20Sopenharmony_ci mrvl,i2c-fast-mode; 1158c2ecf20Sopenharmony_ci status = "disabled"; 1168c2ecf20Sopenharmony_ci }; 1178c2ecf20Sopenharmony_ci 1188c2ecf20Sopenharmony_ci i2c1: i2c@11080 { 1198c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-i2c"; 1208c2ecf20Sopenharmony_ci reg = <0x11080 0x24>; 1218c2ecf20Sopenharmony_ci #address-cells = <1>; 1228c2ecf20Sopenharmony_ci #size-cells = <0>; 1238c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 9>; 1248c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 1258c2ecf20Sopenharmony_ci mrvl,i2c-fast-mode; 1268c2ecf20Sopenharmony_ci status = "disabled"; 1278c2ecf20Sopenharmony_ci }; 1288c2ecf20Sopenharmony_ci 1298c2ecf20Sopenharmony_ci avs: avs@11500 { 1308c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-avs", 1318c2ecf20Sopenharmony_ci "syscon"; 1328c2ecf20Sopenharmony_ci reg = <0x11500 0x40>; 1338c2ecf20Sopenharmony_ci }; 1348c2ecf20Sopenharmony_ci 1358c2ecf20Sopenharmony_ci uart0: serial@12000 { 1368c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-uart"; 1378c2ecf20Sopenharmony_ci reg = <0x12000 0x18>; 1388c2ecf20Sopenharmony_ci clocks = <&xtalclk>; 1398c2ecf20Sopenharmony_ci interrupts = 1408c2ecf20Sopenharmony_ci <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 1418c2ecf20Sopenharmony_ci <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 1428c2ecf20Sopenharmony_ci <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 1438c2ecf20Sopenharmony_ci interrupt-names = "uart-sum", "uart-tx", "uart-rx"; 1448c2ecf20Sopenharmony_ci status = "disabled"; 1458c2ecf20Sopenharmony_ci }; 1468c2ecf20Sopenharmony_ci 1478c2ecf20Sopenharmony_ci uart1: serial@12200 { 1488c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-uart-ext"; 1498c2ecf20Sopenharmony_ci reg = <0x12200 0x30>; 1508c2ecf20Sopenharmony_ci clocks = <&xtalclk>; 1518c2ecf20Sopenharmony_ci interrupts = 1528c2ecf20Sopenharmony_ci <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>, 1538c2ecf20Sopenharmony_ci <GIC_SPI 31 IRQ_TYPE_EDGE_RISING>; 1548c2ecf20Sopenharmony_ci interrupt-names = "uart-tx", "uart-rx"; 1558c2ecf20Sopenharmony_ci status = "disabled"; 1568c2ecf20Sopenharmony_ci }; 1578c2ecf20Sopenharmony_ci 1588c2ecf20Sopenharmony_ci nb_periph_clk: nb-periph-clk@13000 { 1598c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-periph-clock-nb", 1608c2ecf20Sopenharmony_ci "syscon"; 1618c2ecf20Sopenharmony_ci reg = <0x13000 0x100>; 1628c2ecf20Sopenharmony_ci clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>, 1638c2ecf20Sopenharmony_ci <&tbg 3>, <&xtalclk>; 1648c2ecf20Sopenharmony_ci #clock-cells = <1>; 1658c2ecf20Sopenharmony_ci }; 1668c2ecf20Sopenharmony_ci 1678c2ecf20Sopenharmony_ci sb_periph_clk: sb-periph-clk@18000 { 1688c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-periph-clock-sb"; 1698c2ecf20Sopenharmony_ci reg = <0x18000 0x100>; 1708c2ecf20Sopenharmony_ci clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>, 1718c2ecf20Sopenharmony_ci <&tbg 3>, <&xtalclk>; 1728c2ecf20Sopenharmony_ci #clock-cells = <1>; 1738c2ecf20Sopenharmony_ci }; 1748c2ecf20Sopenharmony_ci 1758c2ecf20Sopenharmony_ci tbg: tbg@13200 { 1768c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-tbg-clock"; 1778c2ecf20Sopenharmony_ci reg = <0x13200 0x100>; 1788c2ecf20Sopenharmony_ci clocks = <&xtalclk>; 1798c2ecf20Sopenharmony_ci #clock-cells = <1>; 1808c2ecf20Sopenharmony_ci }; 1818c2ecf20Sopenharmony_ci 1828c2ecf20Sopenharmony_ci pinctrl_nb: pinctrl@13800 { 1838c2ecf20Sopenharmony_ci compatible = "marvell,armada3710-nb-pinctrl", 1848c2ecf20Sopenharmony_ci "syscon", "simple-mfd"; 1858c2ecf20Sopenharmony_ci reg = <0x13800 0x100>, <0x13C00 0x20>; 1868c2ecf20Sopenharmony_ci /* MPP1[19:0] */ 1878c2ecf20Sopenharmony_ci gpionb: gpio { 1888c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1898c2ecf20Sopenharmony_ci gpio-ranges = <&pinctrl_nb 0 0 36>; 1908c2ecf20Sopenharmony_ci gpio-controller; 1918c2ecf20Sopenharmony_ci interrupt-controller; 1928c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1938c2ecf20Sopenharmony_ci interrupts = 1948c2ecf20Sopenharmony_ci <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>, 1958c2ecf20Sopenharmony_ci <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>, 1968c2ecf20Sopenharmony_ci <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, 1978c2ecf20Sopenharmony_ci <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, 1988c2ecf20Sopenharmony_ci <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 1998c2ecf20Sopenharmony_ci <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, 2008c2ecf20Sopenharmony_ci <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, 2018c2ecf20Sopenharmony_ci <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, 2028c2ecf20Sopenharmony_ci <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 2038c2ecf20Sopenharmony_ci <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 2048c2ecf20Sopenharmony_ci <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 2058c2ecf20Sopenharmony_ci <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 2068c2ecf20Sopenharmony_ci }; 2078c2ecf20Sopenharmony_ci 2088c2ecf20Sopenharmony_ci xtalclk: xtal-clk { 2098c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-xtal-clock"; 2108c2ecf20Sopenharmony_ci clock-output-names = "xtal"; 2118c2ecf20Sopenharmony_ci #clock-cells = <0>; 2128c2ecf20Sopenharmony_ci }; 2138c2ecf20Sopenharmony_ci 2148c2ecf20Sopenharmony_ci spi_quad_pins: spi-quad-pins { 2158c2ecf20Sopenharmony_ci groups = "spi_quad"; 2168c2ecf20Sopenharmony_ci function = "spi"; 2178c2ecf20Sopenharmony_ci }; 2188c2ecf20Sopenharmony_ci 2198c2ecf20Sopenharmony_ci spi_cs1_pins: spi-cs1-pins { 2208c2ecf20Sopenharmony_ci groups = "spi_cs1"; 2218c2ecf20Sopenharmony_ci function = "spi"; 2228c2ecf20Sopenharmony_ci }; 2238c2ecf20Sopenharmony_ci 2248c2ecf20Sopenharmony_ci i2c1_pins: i2c1-pins { 2258c2ecf20Sopenharmony_ci groups = "i2c1"; 2268c2ecf20Sopenharmony_ci function = "i2c"; 2278c2ecf20Sopenharmony_ci }; 2288c2ecf20Sopenharmony_ci 2298c2ecf20Sopenharmony_ci i2c2_pins: i2c2-pins { 2308c2ecf20Sopenharmony_ci groups = "i2c2"; 2318c2ecf20Sopenharmony_ci function = "i2c"; 2328c2ecf20Sopenharmony_ci }; 2338c2ecf20Sopenharmony_ci 2348c2ecf20Sopenharmony_ci uart1_pins: uart1-pins { 2358c2ecf20Sopenharmony_ci groups = "uart1"; 2368c2ecf20Sopenharmony_ci function = "uart"; 2378c2ecf20Sopenharmony_ci }; 2388c2ecf20Sopenharmony_ci 2398c2ecf20Sopenharmony_ci uart2_pins: uart2-pins { 2408c2ecf20Sopenharmony_ci groups = "uart2"; 2418c2ecf20Sopenharmony_ci function = "uart"; 2428c2ecf20Sopenharmony_ci }; 2438c2ecf20Sopenharmony_ci 2448c2ecf20Sopenharmony_ci mmc_pins: mmc-pins { 2458c2ecf20Sopenharmony_ci groups = "emmc_nb"; 2468c2ecf20Sopenharmony_ci function = "emmc"; 2478c2ecf20Sopenharmony_ci }; 2488c2ecf20Sopenharmony_ci }; 2498c2ecf20Sopenharmony_ci 2508c2ecf20Sopenharmony_ci nb_pm: syscon@14000 { 2518c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-nb-pm", 2528c2ecf20Sopenharmony_ci "syscon"; 2538c2ecf20Sopenharmony_ci reg = <0x14000 0x60>; 2548c2ecf20Sopenharmony_ci }; 2558c2ecf20Sopenharmony_ci 2568c2ecf20Sopenharmony_ci comphy: phy@18300 { 2578c2ecf20Sopenharmony_ci compatible = "marvell,comphy-a3700"; 2588c2ecf20Sopenharmony_ci reg = <0x18300 0x300>, 2598c2ecf20Sopenharmony_ci <0x1F000 0x400>, 2608c2ecf20Sopenharmony_ci <0x5C000 0x400>, 2618c2ecf20Sopenharmony_ci <0xe0178 0x8>; 2628c2ecf20Sopenharmony_ci reg-names = "comphy", 2638c2ecf20Sopenharmony_ci "lane1_pcie_gbe", 2648c2ecf20Sopenharmony_ci "lane0_usb3_gbe", 2658c2ecf20Sopenharmony_ci "lane2_sata_usb3"; 2668c2ecf20Sopenharmony_ci #address-cells = <1>; 2678c2ecf20Sopenharmony_ci #size-cells = <0>; 2688c2ecf20Sopenharmony_ci 2698c2ecf20Sopenharmony_ci comphy0: phy@0 { 2708c2ecf20Sopenharmony_ci reg = <0>; 2718c2ecf20Sopenharmony_ci #phy-cells = <1>; 2728c2ecf20Sopenharmony_ci }; 2738c2ecf20Sopenharmony_ci 2748c2ecf20Sopenharmony_ci comphy1: phy@1 { 2758c2ecf20Sopenharmony_ci reg = <1>; 2768c2ecf20Sopenharmony_ci #phy-cells = <1>; 2778c2ecf20Sopenharmony_ci }; 2788c2ecf20Sopenharmony_ci 2798c2ecf20Sopenharmony_ci comphy2: phy@2 { 2808c2ecf20Sopenharmony_ci reg = <2>; 2818c2ecf20Sopenharmony_ci #phy-cells = <1>; 2828c2ecf20Sopenharmony_ci }; 2838c2ecf20Sopenharmony_ci }; 2848c2ecf20Sopenharmony_ci 2858c2ecf20Sopenharmony_ci pinctrl_sb: pinctrl@18800 { 2868c2ecf20Sopenharmony_ci compatible = "marvell,armada3710-sb-pinctrl", 2878c2ecf20Sopenharmony_ci "syscon", "simple-mfd"; 2888c2ecf20Sopenharmony_ci reg = <0x18800 0x100>, <0x18C00 0x20>; 2898c2ecf20Sopenharmony_ci /* MPP2[23:0] */ 2908c2ecf20Sopenharmony_ci gpiosb: gpio { 2918c2ecf20Sopenharmony_ci #gpio-cells = <2>; 2928c2ecf20Sopenharmony_ci gpio-ranges = <&pinctrl_sb 0 0 30>; 2938c2ecf20Sopenharmony_ci gpio-controller; 2948c2ecf20Sopenharmony_ci interrupt-controller; 2958c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 2968c2ecf20Sopenharmony_ci interrupts = 2978c2ecf20Sopenharmony_ci <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 2988c2ecf20Sopenharmony_ci <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 2998c2ecf20Sopenharmony_ci <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 3008c2ecf20Sopenharmony_ci <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 3018c2ecf20Sopenharmony_ci <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 3028c2ecf20Sopenharmony_ci }; 3038c2ecf20Sopenharmony_ci 3048c2ecf20Sopenharmony_ci rgmii_pins: mii-pins { 3058c2ecf20Sopenharmony_ci groups = "rgmii"; 3068c2ecf20Sopenharmony_ci function = "mii"; 3078c2ecf20Sopenharmony_ci }; 3088c2ecf20Sopenharmony_ci 3098c2ecf20Sopenharmony_ci smi_pins: smi-pins { 3108c2ecf20Sopenharmony_ci groups = "smi"; 3118c2ecf20Sopenharmony_ci function = "smi"; 3128c2ecf20Sopenharmony_ci }; 3138c2ecf20Sopenharmony_ci 3148c2ecf20Sopenharmony_ci sdio_pins: sdio-pins { 3158c2ecf20Sopenharmony_ci groups = "sdio_sb"; 3168c2ecf20Sopenharmony_ci function = "sdio"; 3178c2ecf20Sopenharmony_ci }; 3188c2ecf20Sopenharmony_ci 3198c2ecf20Sopenharmony_ci pcie_reset_pins: pcie-reset-pins { 3208c2ecf20Sopenharmony_ci groups = "pcie1"; /* this actually controls "pcie1_reset" */ 3218c2ecf20Sopenharmony_ci function = "gpio"; 3228c2ecf20Sopenharmony_ci }; 3238c2ecf20Sopenharmony_ci 3248c2ecf20Sopenharmony_ci pcie_clkreq_pins: pcie-clkreq-pins { 3258c2ecf20Sopenharmony_ci groups = "pcie1_clkreq"; 3268c2ecf20Sopenharmony_ci function = "pcie"; 3278c2ecf20Sopenharmony_ci }; 3288c2ecf20Sopenharmony_ci }; 3298c2ecf20Sopenharmony_ci 3308c2ecf20Sopenharmony_ci eth0: ethernet@30000 { 3318c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-neta"; 3328c2ecf20Sopenharmony_ci reg = <0x30000 0x4000>; 3338c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 3348c2ecf20Sopenharmony_ci clocks = <&sb_periph_clk 8>; 3358c2ecf20Sopenharmony_ci status = "disabled"; 3368c2ecf20Sopenharmony_ci }; 3378c2ecf20Sopenharmony_ci 3388c2ecf20Sopenharmony_ci mdio: mdio@32004 { 3398c2ecf20Sopenharmony_ci #address-cells = <1>; 3408c2ecf20Sopenharmony_ci #size-cells = <0>; 3418c2ecf20Sopenharmony_ci compatible = "marvell,orion-mdio"; 3428c2ecf20Sopenharmony_ci reg = <0x32004 0x4>; 3438c2ecf20Sopenharmony_ci }; 3448c2ecf20Sopenharmony_ci 3458c2ecf20Sopenharmony_ci eth1: ethernet@40000 { 3468c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-neta"; 3478c2ecf20Sopenharmony_ci reg = <0x40000 0x4000>; 3488c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 3498c2ecf20Sopenharmony_ci clocks = <&sb_periph_clk 7>; 3508c2ecf20Sopenharmony_ci status = "disabled"; 3518c2ecf20Sopenharmony_ci }; 3528c2ecf20Sopenharmony_ci 3538c2ecf20Sopenharmony_ci usb3: usb@58000 { 3548c2ecf20Sopenharmony_ci compatible = "marvell,armada3700-xhci", 3558c2ecf20Sopenharmony_ci "generic-xhci"; 3568c2ecf20Sopenharmony_ci reg = <0x58000 0x4000>; 3578c2ecf20Sopenharmony_ci marvell,usb-misc-reg = <&usb32_syscon>; 3588c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 3598c2ecf20Sopenharmony_ci clocks = <&sb_periph_clk 12>; 3608c2ecf20Sopenharmony_ci phys = <&comphy0 0>, <&usb2_utmi_otg_phy>; 3618c2ecf20Sopenharmony_ci phy-names = "usb3-phy", "usb2-utmi-otg-phy"; 3628c2ecf20Sopenharmony_ci status = "disabled"; 3638c2ecf20Sopenharmony_ci }; 3648c2ecf20Sopenharmony_ci 3658c2ecf20Sopenharmony_ci usb2_utmi_otg_phy: phy@5d000 { 3668c2ecf20Sopenharmony_ci compatible = "marvell,a3700-utmi-otg-phy"; 3678c2ecf20Sopenharmony_ci reg = <0x5d000 0x800>; 3688c2ecf20Sopenharmony_ci marvell,usb-misc-reg = <&usb32_syscon>; 3698c2ecf20Sopenharmony_ci #phy-cells = <0>; 3708c2ecf20Sopenharmony_ci }; 3718c2ecf20Sopenharmony_ci 3728c2ecf20Sopenharmony_ci usb32_syscon: system-controller@5d800 { 3738c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-usb2-host-device-misc", 3748c2ecf20Sopenharmony_ci "syscon"; 3758c2ecf20Sopenharmony_ci reg = <0x5d800 0x800>; 3768c2ecf20Sopenharmony_ci }; 3778c2ecf20Sopenharmony_ci 3788c2ecf20Sopenharmony_ci usb2: usb@5e000 { 3798c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-ehci"; 3808c2ecf20Sopenharmony_ci reg = <0x5e000 0x1000>; 3818c2ecf20Sopenharmony_ci marvell,usb-misc-reg = <&usb2_syscon>; 3828c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 3838c2ecf20Sopenharmony_ci phys = <&usb2_utmi_host_phy>; 3848c2ecf20Sopenharmony_ci phy-names = "usb2-utmi-host-phy"; 3858c2ecf20Sopenharmony_ci status = "disabled"; 3868c2ecf20Sopenharmony_ci }; 3878c2ecf20Sopenharmony_ci 3888c2ecf20Sopenharmony_ci usb2_utmi_host_phy: phy@5f000 { 3898c2ecf20Sopenharmony_ci compatible = "marvell,a3700-utmi-host-phy"; 3908c2ecf20Sopenharmony_ci reg = <0x5f000 0x800>; 3918c2ecf20Sopenharmony_ci marvell,usb-misc-reg = <&usb2_syscon>; 3928c2ecf20Sopenharmony_ci #phy-cells = <0>; 3938c2ecf20Sopenharmony_ci }; 3948c2ecf20Sopenharmony_ci 3958c2ecf20Sopenharmony_ci usb2_syscon: system-controller@5f800 { 3968c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-usb2-host-misc", 3978c2ecf20Sopenharmony_ci "syscon"; 3988c2ecf20Sopenharmony_ci reg = <0x5f800 0x800>; 3998c2ecf20Sopenharmony_ci }; 4008c2ecf20Sopenharmony_ci 4018c2ecf20Sopenharmony_ci xor@60900 { 4028c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-xor"; 4038c2ecf20Sopenharmony_ci reg = <0x60900 0x100>, 4048c2ecf20Sopenharmony_ci <0x60b00 0x100>; 4058c2ecf20Sopenharmony_ci 4068c2ecf20Sopenharmony_ci xor10 { 4078c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 4088c2ecf20Sopenharmony_ci }; 4098c2ecf20Sopenharmony_ci xor11 { 4108c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 4118c2ecf20Sopenharmony_ci }; 4128c2ecf20Sopenharmony_ci }; 4138c2ecf20Sopenharmony_ci 4148c2ecf20Sopenharmony_ci crypto: crypto@90000 { 4158c2ecf20Sopenharmony_ci compatible = "inside-secure,safexcel-eip97ies"; 4168c2ecf20Sopenharmony_ci reg = <0x90000 0x20000>; 4178c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 4188c2ecf20Sopenharmony_ci <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 4198c2ecf20Sopenharmony_ci <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, 4208c2ecf20Sopenharmony_ci <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 4218c2ecf20Sopenharmony_ci <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>, 4228c2ecf20Sopenharmony_ci <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 4238c2ecf20Sopenharmony_ci interrupt-names = "mem", "ring0", "ring1", 4248c2ecf20Sopenharmony_ci "ring2", "ring3", "eip"; 4258c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 15>; 4268c2ecf20Sopenharmony_ci }; 4278c2ecf20Sopenharmony_ci 4288c2ecf20Sopenharmony_ci rwtm: mailbox@b0000 { 4298c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-rwtm-mailbox"; 4308c2ecf20Sopenharmony_ci reg = <0xb0000 0x100>; 4318c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; 4328c2ecf20Sopenharmony_ci #mbox-cells = <1>; 4338c2ecf20Sopenharmony_ci }; 4348c2ecf20Sopenharmony_ci 4358c2ecf20Sopenharmony_ci sdhci1: sdhci@d0000 { 4368c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-sdhci", 4378c2ecf20Sopenharmony_ci "marvell,sdhci-xenon"; 4388c2ecf20Sopenharmony_ci reg = <0xd0000 0x300>, 4398c2ecf20Sopenharmony_ci <0x1e808 0x4>; 4408c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 4418c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 0>; 4428c2ecf20Sopenharmony_ci clock-names = "core"; 4438c2ecf20Sopenharmony_ci status = "disabled"; 4448c2ecf20Sopenharmony_ci }; 4458c2ecf20Sopenharmony_ci 4468c2ecf20Sopenharmony_ci sdhci0: sdhci@d8000 { 4478c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-sdhci", 4488c2ecf20Sopenharmony_ci "marvell,sdhci-xenon"; 4498c2ecf20Sopenharmony_ci reg = <0xd8000 0x300>, 4508c2ecf20Sopenharmony_ci <0x17808 0x4>; 4518c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 4528c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 0>; 4538c2ecf20Sopenharmony_ci clock-names = "core"; 4548c2ecf20Sopenharmony_ci status = "disabled"; 4558c2ecf20Sopenharmony_ci }; 4568c2ecf20Sopenharmony_ci 4578c2ecf20Sopenharmony_ci sata: sata@e0000 { 4588c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-ahci"; 4598c2ecf20Sopenharmony_ci reg = <0xe0000 0x178>; 4608c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 4618c2ecf20Sopenharmony_ci clocks = <&nb_periph_clk 1>; 4628c2ecf20Sopenharmony_ci status = "disabled"; 4638c2ecf20Sopenharmony_ci }; 4648c2ecf20Sopenharmony_ci 4658c2ecf20Sopenharmony_ci gic: interrupt-controller@1d00000 { 4668c2ecf20Sopenharmony_ci compatible = "arm,gic-v3"; 4678c2ecf20Sopenharmony_ci #interrupt-cells = <3>; 4688c2ecf20Sopenharmony_ci interrupt-controller; 4698c2ecf20Sopenharmony_ci reg = <0x1d00000 0x10000>, /* GICD */ 4708c2ecf20Sopenharmony_ci <0x1d40000 0x40000>, /* GICR */ 4718c2ecf20Sopenharmony_ci <0x1d80000 0x2000>, /* GICC */ 4728c2ecf20Sopenharmony_ci <0x1d90000 0x2000>, /* GICH */ 4738c2ecf20Sopenharmony_ci <0x1da0000 0x20000>; /* GICV */ 4748c2ecf20Sopenharmony_ci interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 4758c2ecf20Sopenharmony_ci }; 4768c2ecf20Sopenharmony_ci }; 4778c2ecf20Sopenharmony_ci 4788c2ecf20Sopenharmony_ci pcie0: pcie@d0070000 { 4798c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-pcie"; 4808c2ecf20Sopenharmony_ci device_type = "pci"; 4818c2ecf20Sopenharmony_ci status = "disabled"; 4828c2ecf20Sopenharmony_ci reg = <0 0xd0070000 0 0x20000>; 4838c2ecf20Sopenharmony_ci #address-cells = <3>; 4848c2ecf20Sopenharmony_ci #size-cells = <2>; 4858c2ecf20Sopenharmony_ci bus-range = <0x00 0xff>; 4868c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 4878c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 4888c2ecf20Sopenharmony_ci msi-parent = <&pcie0>; 4898c2ecf20Sopenharmony_ci msi-controller; 4908c2ecf20Sopenharmony_ci /* 4918c2ecf20Sopenharmony_ci * The 128 MiB address range [0xe8000000-0xf0000000] is 4928c2ecf20Sopenharmony_ci * dedicated for PCIe and can be assigned to 8 windows 4938c2ecf20Sopenharmony_ci * with size a power of two. Use one 64 KiB window for 4948c2ecf20Sopenharmony_ci * IO at the end and the remaining seven windows 4958c2ecf20Sopenharmony_ci * (totaling 127 MiB) for MEM. 4968c2ecf20Sopenharmony_ci */ 4978c2ecf20Sopenharmony_ci ranges = <0x82000000 0 0xe8000000 0 0xe8000000 0 0x07f00000 /* Port 0 MEM */ 4988c2ecf20Sopenharmony_ci 0x81000000 0 0x00000000 0 0xefff0000 0 0x00010000>; /* Port 0 IO */ 4998c2ecf20Sopenharmony_ci interrupt-map-mask = <0 0 0 7>; 5008c2ecf20Sopenharmony_ci interrupt-map = <0 0 0 1 &pcie_intc 0>, 5018c2ecf20Sopenharmony_ci <0 0 0 2 &pcie_intc 1>, 5028c2ecf20Sopenharmony_ci <0 0 0 3 &pcie_intc 2>, 5038c2ecf20Sopenharmony_ci <0 0 0 4 &pcie_intc 3>; 5048c2ecf20Sopenharmony_ci max-link-speed = <2>; 5058c2ecf20Sopenharmony_ci phys = <&comphy1 0>; 5068c2ecf20Sopenharmony_ci pcie_intc: interrupt-controller { 5078c2ecf20Sopenharmony_ci interrupt-controller; 5088c2ecf20Sopenharmony_ci #interrupt-cells = <1>; 5098c2ecf20Sopenharmony_ci }; 5108c2ecf20Sopenharmony_ci }; 5118c2ecf20Sopenharmony_ci }; 5128c2ecf20Sopenharmony_ci 5138c2ecf20Sopenharmony_ci firmware { 5148c2ecf20Sopenharmony_ci armada-3700-rwtm { 5158c2ecf20Sopenharmony_ci compatible = "marvell,armada-3700-rwtm-firmware"; 5168c2ecf20Sopenharmony_ci mboxes = <&rwtm 0>; 5178c2ecf20Sopenharmony_ci status = "okay"; 5188c2ecf20Sopenharmony_ci }; 5198c2ecf20Sopenharmony_ci }; 5208c2ecf20Sopenharmony_ci}; 521