1292816a6SGregory CLEMENT// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2adbc3695SGregory CLEMENT/* 3adbc3695SGregory CLEMENT * Device Tree Include file for Marvell Armada 37xx family of SoCs. 4adbc3695SGregory CLEMENT * 5adbc3695SGregory CLEMENT * Copyright (C) 2016 Marvell 6adbc3695SGregory CLEMENT * 7adbc3695SGregory CLEMENT * Gregory CLEMENT <gregory.clement@free-electrons.com> 8adbc3695SGregory CLEMENT * 9adbc3695SGregory CLEMENT */ 10adbc3695SGregory CLEMENT 11adbc3695SGregory CLEMENT#include <dt-bindings/interrupt-controller/arm-gic.h> 12adbc3695SGregory CLEMENT 13adbc3695SGregory CLEMENT/ { 14adbc3695SGregory CLEMENT model = "Marvell Armada 37xx SoC"; 15adbc3695SGregory CLEMENT compatible = "marvell,armada3700"; 16adbc3695SGregory CLEMENT interrupt-parent = <&gic>; 17adbc3695SGregory CLEMENT #address-cells = <2>; 18adbc3695SGregory CLEMENT #size-cells = <2>; 19adbc3695SGregory CLEMENT 20adbc3695SGregory CLEMENT aliases { 21adbc3695SGregory CLEMENT serial0 = &uart0; 227c48dc20SMiquel Raynal serial1 = &uart1; 23adbc3695SGregory CLEMENT }; 24adbc3695SGregory CLEMENT 254436a371SVictor Gu reserved-memory { 264436a371SVictor Gu #address-cells = <2>; 274436a371SVictor Gu #size-cells = <2>; 284436a371SVictor Gu ranges; 294436a371SVictor Gu 304436a371SVictor Gu /* 314436a371SVictor Gu * The PSCI firmware region depicted below is the default one 324436a371SVictor Gu * and should be updated by the bootloader. 334436a371SVictor Gu */ 344436a371SVictor Gu psci-area@4000000 { 354436a371SVictor Gu reg = <0 0x4000000 0 0x200000>; 364436a371SVictor Gu no-map; 374436a371SVictor Gu }; 384436a371SVictor Gu }; 394436a371SVictor Gu 40adbc3695SGregory CLEMENT cpus { 41adbc3695SGregory CLEMENT #address-cells = <1>; 42adbc3695SGregory CLEMENT #size-cells = <0>; 4392e5d4e9SGregory CLEMENT cpu0: cpu@0 { 44adbc3695SGregory CLEMENT device_type = "cpu"; 45adbc3695SGregory CLEMENT compatible = "arm,cortex-a53", "arm,armv8"; 46adbc3695SGregory CLEMENT reg = <0>; 47e8d66e79SGregory CLEMENT clocks = <&nb_periph_clk 16>; 48adbc3695SGregory CLEMENT enable-method = "psci"; 49adbc3695SGregory CLEMENT }; 50adbc3695SGregory CLEMENT }; 51adbc3695SGregory CLEMENT 52adbc3695SGregory CLEMENT psci { 53adbc3695SGregory CLEMENT compatible = "arm,psci-0.2"; 54adbc3695SGregory CLEMENT method = "smc"; 55adbc3695SGregory CLEMENT }; 56adbc3695SGregory CLEMENT 57adbc3695SGregory CLEMENT timer { 58adbc3695SGregory CLEMENT compatible = "arm,armv8-timer"; 5988cda007SMarc Zyngier interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_HIGH>, 6088cda007SMarc Zyngier <GIC_PPI 14 IRQ_TYPE_LEVEL_HIGH>, 6188cda007SMarc Zyngier <GIC_PPI 11 IRQ_TYPE_LEVEL_HIGH>, 6288cda007SMarc Zyngier <GIC_PPI 10 IRQ_TYPE_LEVEL_HIGH>; 63adbc3695SGregory CLEMENT }; 64adbc3695SGregory CLEMENT 65395e66baSMarc Zyngier pmu { 66395e66baSMarc Zyngier compatible = "arm,armv8-pmuv3"; 67395e66baSMarc Zyngier interrupts = <GIC_PPI 7 IRQ_TYPE_LEVEL_HIGH>; 68395e66baSMarc Zyngier }; 69395e66baSMarc Zyngier 70adbc3695SGregory CLEMENT soc { 71adbc3695SGregory CLEMENT compatible = "simple-bus"; 72adbc3695SGregory CLEMENT #address-cells = <2>; 73adbc3695SGregory CLEMENT #size-cells = <2>; 74adbc3695SGregory CLEMENT ranges; 75adbc3695SGregory CLEMENT 76ee5d5619SGregory CLEMENT internal-regs@d0000000 { 77adbc3695SGregory CLEMENT #address-cells = <1>; 78adbc3695SGregory CLEMENT #size-cells = <1>; 79adbc3695SGregory CLEMENT compatible = "simple-bus"; 80adbc3695SGregory CLEMENT /* 32M internal register @ 0xd000_0000 */ 81adbc3695SGregory CLEMENT ranges = <0x0 0x0 0xd0000000 0x2000000>; 82adbc3695SGregory CLEMENT 83620cfb31SMarek Behún wdt: watchdog@8300 { 84620cfb31SMarek Behún compatible = "marvell,armada-3700-wdt"; 85620cfb31SMarek Behún reg = <0x8300 0x40>; 86620cfb31SMarek Behún marvell,system-controller = <&cpu_misc>; 87620cfb31SMarek Behún clocks = <&xtalclk>; 88620cfb31SMarek Behún }; 89620cfb31SMarek Behún 90620cfb31SMarek Behún cpu_misc: system-controller@d000 { 91620cfb31SMarek Behún compatible = "marvell,armada-3700-cpu-misc", 92620cfb31SMarek Behún "syscon"; 93620cfb31SMarek Behún reg = <0xd000 0x1000>; 94620cfb31SMarek Behún }; 95620cfb31SMarek Behún 96e09dfa8fSRomain Perier spi0: spi@10600 { 97e09dfa8fSRomain Perier compatible = "marvell,armada-3700-spi"; 98e09dfa8fSRomain Perier #address-cells = <1>; 99e09dfa8fSRomain Perier #size-cells = <0>; 100e09dfa8fSRomain Perier reg = <0x10600 0xA00>; 101e09dfa8fSRomain Perier clocks = <&nb_periph_clk 7>; 102e09dfa8fSRomain Perier interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; 103e09dfa8fSRomain Perier num-cs = <4>; 104e09dfa8fSRomain Perier status = "disabled"; 105e09dfa8fSRomain Perier }; 106e09dfa8fSRomain Perier 107c7d7ea67SRomain Perier i2c0: i2c@11000 { 108c7d7ea67SRomain Perier compatible = "marvell,armada-3700-i2c"; 109c7d7ea67SRomain Perier reg = <0x11000 0x24>; 1100ddd48deSGregory CLEMENT #address-cells = <1>; 1110ddd48deSGregory CLEMENT #size-cells = <0>; 112c7d7ea67SRomain Perier clocks = <&nb_periph_clk 10>; 113c7d7ea67SRomain Perier interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; 114c7d7ea67SRomain Perier mrvl,i2c-fast-mode; 115c7d7ea67SRomain Perier status = "disabled"; 116c7d7ea67SRomain Perier }; 117c7d7ea67SRomain Perier 118c7d7ea67SRomain Perier i2c1: i2c@11080 { 119c7d7ea67SRomain Perier compatible = "marvell,armada-3700-i2c"; 120c7d7ea67SRomain Perier reg = <0x11080 0x24>; 1210ddd48deSGregory CLEMENT #address-cells = <1>; 1220ddd48deSGregory CLEMENT #size-cells = <0>; 123c7d7ea67SRomain Perier clocks = <&nb_periph_clk 9>; 124c7d7ea67SRomain Perier interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; 125c7d7ea67SRomain Perier mrvl,i2c-fast-mode; 126c7d7ea67SRomain Perier status = "disabled"; 127c7d7ea67SRomain Perier }; 128c7d7ea67SRomain Perier 129d970737fSGregory CLEMENT avs: avs@11500 { 130d970737fSGregory CLEMENT compatible = "marvell,armada-3700-avs", 131d970737fSGregory CLEMENT "syscon"; 132d970737fSGregory CLEMENT reg = <0x11500 0x40>; 133d970737fSGregory CLEMENT }; 134d970737fSGregory CLEMENT 135adbc3695SGregory CLEMENT uart0: serial@12000 { 136adbc3695SGregory CLEMENT compatible = "marvell,armada-3700-uart"; 137c737abc1Sallen yan reg = <0x12000 0x200>; 1382ff0d0b5SMiquel Raynal clocks = <&xtalclk>; 1397c48dc20SMiquel Raynal interrupts = 1407c48dc20SMiquel Raynal <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, 1417c48dc20SMiquel Raynal <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>, 1427c48dc20SMiquel Raynal <GIC_SPI 13 IRQ_TYPE_LEVEL_HIGH>; 1437c48dc20SMiquel Raynal interrupt-names = "uart-sum", "uart-tx", "uart-rx"; 1447c48dc20SMiquel Raynal status = "disabled"; 1457c48dc20SMiquel Raynal }; 1467c48dc20SMiquel Raynal 1477c48dc20SMiquel Raynal uart1: serial@12200 { 1487c48dc20SMiquel Raynal compatible = "marvell,armada-3700-uart-ext"; 1497c48dc20SMiquel Raynal reg = <0x12200 0x30>; 1507c48dc20SMiquel Raynal clocks = <&xtalclk>; 1517c48dc20SMiquel Raynal interrupts = 1527c48dc20SMiquel Raynal <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>, 1537c48dc20SMiquel Raynal <GIC_SPI 31 IRQ_TYPE_EDGE_RISING>; 1547c48dc20SMiquel Raynal interrupt-names = "uart-tx", "uart-rx"; 155adbc3695SGregory CLEMENT status = "disabled"; 156adbc3695SGregory CLEMENT }; 157adbc3695SGregory CLEMENT 15829f0c9edSGregory CLEMENT nb_periph_clk: nb-periph-clk@13000 { 1595f4beef6SGregory CLEMENT compatible = "marvell,armada-3700-periph-clock-nb"; 1605f4beef6SGregory CLEMENT reg = <0x13000 0x100>; 1615f4beef6SGregory CLEMENT clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>, 1625f4beef6SGregory CLEMENT <&tbg 3>, <&xtalclk>; 1635f4beef6SGregory CLEMENT #clock-cells = <1>; 1645f4beef6SGregory CLEMENT }; 1655f4beef6SGregory CLEMENT 16629f0c9edSGregory CLEMENT sb_periph_clk: sb-periph-clk@18000 { 1675f4beef6SGregory CLEMENT compatible = "marvell,armada-3700-periph-clock-sb"; 1685f4beef6SGregory CLEMENT reg = <0x18000 0x100>; 1695f4beef6SGregory CLEMENT clocks = <&tbg 0>, <&tbg 1>, <&tbg 2>, 1705f4beef6SGregory CLEMENT <&tbg 3>, <&xtalclk>; 1715f4beef6SGregory CLEMENT #clock-cells = <1>; 1725f4beef6SGregory CLEMENT }; 1735f4beef6SGregory CLEMENT 174e3e1a55eSGregory CLEMENT tbg: tbg@13200 { 175e3e1a55eSGregory CLEMENT compatible = "marvell,armada-3700-tbg-clock"; 176e3e1a55eSGregory CLEMENT reg = <0x13200 0x100>; 177e3e1a55eSGregory CLEMENT clocks = <&xtalclk>; 178e3e1a55eSGregory CLEMENT #clock-cells = <1>; 179e3e1a55eSGregory CLEMENT }; 180e3e1a55eSGregory CLEMENT 181afda007fSGregory CLEMENT pinctrl_nb: pinctrl@13800 { 182afda007fSGregory CLEMENT compatible = "marvell,armada3710-nb-pinctrl", 183ddeba40bSGregory CLEMENT "syscon", "simple-mfd"; 184afda007fSGregory CLEMENT reg = <0x13800 0x100>, <0x13C00 0x20>; 185bd473ecdSUwe Kleine-König /* MPP1[19:0] */ 186afda007fSGregory CLEMENT gpionb: gpio { 187afda007fSGregory CLEMENT #gpio-cells = <2>; 188afda007fSGregory CLEMENT gpio-ranges = <&pinctrl_nb 0 0 36>; 189afda007fSGregory CLEMENT gpio-controller; 190bd473ecdSUwe Kleine-König interrupt-controller; 191bd473ecdSUwe Kleine-König #interrupt-cells = <2>; 192afda007fSGregory CLEMENT interrupts = 193afda007fSGregory CLEMENT <GIC_SPI 51 IRQ_TYPE_LEVEL_HIGH>, 194afda007fSGregory CLEMENT <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>, 195afda007fSGregory CLEMENT <GIC_SPI 53 IRQ_TYPE_LEVEL_HIGH>, 196afda007fSGregory CLEMENT <GIC_SPI 54 IRQ_TYPE_LEVEL_HIGH>, 197afda007fSGregory CLEMENT <GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>, 198afda007fSGregory CLEMENT <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>, 199afda007fSGregory CLEMENT <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>, 200afda007fSGregory CLEMENT <GIC_SPI 58 IRQ_TYPE_LEVEL_HIGH>, 201afda007fSGregory CLEMENT <GIC_SPI 152 IRQ_TYPE_LEVEL_HIGH>, 202afda007fSGregory CLEMENT <GIC_SPI 153 IRQ_TYPE_LEVEL_HIGH>, 203afda007fSGregory CLEMENT <GIC_SPI 154 IRQ_TYPE_LEVEL_HIGH>, 204afda007fSGregory CLEMENT <GIC_SPI 155 IRQ_TYPE_LEVEL_HIGH>; 205afda007fSGregory CLEMENT }; 206ddeba40bSGregory CLEMENT 207ddeba40bSGregory CLEMENT xtalclk: xtal-clk { 208ddeba40bSGregory CLEMENT compatible = "marvell,armada-3700-xtal-clock"; 209ddeba40bSGregory CLEMENT clock-output-names = "xtal"; 210ddeba40bSGregory CLEMENT #clock-cells = <0>; 211ddeba40bSGregory CLEMENT }; 2126a680783SGregory CLEMENT 2136a680783SGregory CLEMENT spi_quad_pins: spi-quad-pins { 2146a680783SGregory CLEMENT groups = "spi_quad"; 2156a680783SGregory CLEMENT function = "spi"; 2166a680783SGregory CLEMENT }; 2176a680783SGregory CLEMENT 2186a680783SGregory CLEMENT i2c1_pins: i2c1-pins { 2196a680783SGregory CLEMENT groups = "i2c1"; 2206a680783SGregory CLEMENT function = "i2c"; 2216a680783SGregory CLEMENT }; 2226a680783SGregory CLEMENT 2236a680783SGregory CLEMENT i2c2_pins: i2c2-pins { 2246a680783SGregory CLEMENT groups = "i2c2"; 2256a680783SGregory CLEMENT function = "i2c"; 2266a680783SGregory CLEMENT }; 2276a680783SGregory CLEMENT 2286a680783SGregory CLEMENT uart1_pins: uart1-pins { 2296a680783SGregory CLEMENT groups = "uart1"; 2306a680783SGregory CLEMENT function = "uart"; 2316a680783SGregory CLEMENT }; 2326a680783SGregory CLEMENT 2336a680783SGregory CLEMENT uart2_pins: uart2-pins { 2346a680783SGregory CLEMENT groups = "uart2"; 2356a680783SGregory CLEMENT function = "uart"; 2366a680783SGregory CLEMENT }; 237eefe3284SDing Tao 238eefe3284SDing Tao mmc_pins: mmc-pins { 239eefe3284SDing Tao groups = "emmc_nb"; 240eefe3284SDing Tao function = "emmc"; 241eefe3284SDing Tao }; 242ddeba40bSGregory CLEMENT }; 243ddeba40bSGregory CLEMENT 244e8d66e79SGregory CLEMENT nb_pm: syscon@14000 { 245e8d66e79SGregory CLEMENT compatible = "marvell,armada-3700-nb-pm", 246e8d66e79SGregory CLEMENT "syscon"; 247e8d66e79SGregory CLEMENT reg = <0x14000 0x60>; 248e8d66e79SGregory CLEMENT }; 249e8d66e79SGregory CLEMENT 2502ef303f0SMiquel Raynal comphy: phy@18300 { 2512ef303f0SMiquel Raynal compatible = "marvell,comphy-a3700"; 2522ef303f0SMiquel Raynal reg = <0x18300 0x300>, 2532ef303f0SMiquel Raynal <0x1F000 0x400>, 2542ef303f0SMiquel Raynal <0x5C000 0x400>, 2552ef303f0SMiquel Raynal <0xe0178 0x8>; 2562ef303f0SMiquel Raynal reg-names = "comphy", 2572ef303f0SMiquel Raynal "lane1_pcie_gbe", 2582ef303f0SMiquel Raynal "lane0_usb3_gbe", 2592ef303f0SMiquel Raynal "lane2_sata_usb3"; 2602ef303f0SMiquel Raynal #address-cells = <1>; 2612ef303f0SMiquel Raynal #size-cells = <0>; 2622ef303f0SMiquel Raynal 2632ef303f0SMiquel Raynal comphy0: phy@0 { 2642ef303f0SMiquel Raynal reg = <0>; 2652ef303f0SMiquel Raynal #phy-cells = <1>; 2662ef303f0SMiquel Raynal }; 2672ef303f0SMiquel Raynal 2682ef303f0SMiquel Raynal comphy1: phy@1 { 2692ef303f0SMiquel Raynal reg = <1>; 2702ef303f0SMiquel Raynal #phy-cells = <1>; 2712ef303f0SMiquel Raynal }; 2722ef303f0SMiquel Raynal 2732ef303f0SMiquel Raynal comphy2: phy@2 { 2742ef303f0SMiquel Raynal reg = <2>; 2752ef303f0SMiquel Raynal #phy-cells = <1>; 2762ef303f0SMiquel Raynal }; 2772ef303f0SMiquel Raynal }; 2782ef303f0SMiquel Raynal 279afda007fSGregory CLEMENT pinctrl_sb: pinctrl@18800 { 280afda007fSGregory CLEMENT compatible = "marvell,armada3710-sb-pinctrl", 281afda007fSGregory CLEMENT "syscon", "simple-mfd"; 282afda007fSGregory CLEMENT reg = <0x18800 0x100>, <0x18C00 0x20>; 283bd473ecdSUwe Kleine-König /* MPP2[23:0] */ 284afda007fSGregory CLEMENT gpiosb: gpio { 285afda007fSGregory CLEMENT #gpio-cells = <2>; 286d7a65c49SGregory CLEMENT gpio-ranges = <&pinctrl_sb 0 0 30>; 287afda007fSGregory CLEMENT gpio-controller; 288bd473ecdSUwe Kleine-König interrupt-controller; 289bd473ecdSUwe Kleine-König #interrupt-cells = <2>; 290afda007fSGregory CLEMENT interrupts = 291afda007fSGregory CLEMENT <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>, 292afda007fSGregory CLEMENT <GIC_SPI 159 IRQ_TYPE_LEVEL_HIGH>, 293afda007fSGregory CLEMENT <GIC_SPI 158 IRQ_TYPE_LEVEL_HIGH>, 294afda007fSGregory CLEMENT <GIC_SPI 157 IRQ_TYPE_LEVEL_HIGH>, 295afda007fSGregory CLEMENT <GIC_SPI 156 IRQ_TYPE_LEVEL_HIGH>; 296afda007fSGregory CLEMENT }; 2976a680783SGregory CLEMENT 2986a680783SGregory CLEMENT rgmii_pins: mii-pins { 2996a680783SGregory CLEMENT groups = "rgmii"; 3006a680783SGregory CLEMENT function = "mii"; 3016a680783SGregory CLEMENT }; 3026a680783SGregory CLEMENT 3034f63b1c3SRemi Pommarel smi_pins: smi-pins { 3044f63b1c3SRemi Pommarel groups = "smi"; 3054f63b1c3SRemi Pommarel function = "smi"; 3064f63b1c3SRemi Pommarel }; 3074f63b1c3SRemi Pommarel 308eefe3284SDing Tao sdio_pins: sdio-pins { 309eefe3284SDing Tao groups = "sdio_sb"; 310eefe3284SDing Tao function = "sdio"; 311eefe3284SDing Tao }; 312eefe3284SDing Tao 313a5470af9SMiquel Raynal pcie_reset_pins: pcie-reset-pins { 314a5470af9SMiquel Raynal groups = "pcie1"; 315a5470af9SMiquel Raynal function = "pcie"; 316a5470af9SMiquel Raynal }; 317a5470af9SMiquel Raynal 318a5470af9SMiquel Raynal pcie_clkreq_pins: pcie-clkreq-pins { 319a5470af9SMiquel Raynal groups = "pcie1_clkreq"; 320a5470af9SMiquel Raynal function = "pcie"; 321a5470af9SMiquel Raynal }; 32219b67d5cSGregory CLEMENT }; 32319b67d5cSGregory CLEMENT 324ea7ae885SGregory CLEMENT eth0: ethernet@30000 { 325ea7ae885SGregory CLEMENT compatible = "marvell,armada-3700-neta"; 326ea7ae885SGregory CLEMENT reg = <0x30000 0x4000>; 327ea7ae885SGregory CLEMENT interrupts = <GIC_SPI 42 IRQ_TYPE_LEVEL_HIGH>; 328ea7ae885SGregory CLEMENT clocks = <&sb_periph_clk 8>; 329ea7ae885SGregory CLEMENT status = "disabled"; 330ea7ae885SGregory CLEMENT }; 331ea7ae885SGregory CLEMENT 332ea7ae885SGregory CLEMENT mdio: mdio@32004 { 333ea7ae885SGregory CLEMENT #address-cells = <1>; 334ea7ae885SGregory CLEMENT #size-cells = <0>; 335ea7ae885SGregory CLEMENT compatible = "marvell,orion-mdio"; 336ea7ae885SGregory CLEMENT reg = <0x32004 0x4>; 337ea7ae885SGregory CLEMENT }; 338ea7ae885SGregory CLEMENT 339ea7ae885SGregory CLEMENT eth1: ethernet@40000 { 340ea7ae885SGregory CLEMENT compatible = "marvell,armada-3700-neta"; 341ea7ae885SGregory CLEMENT reg = <0x40000 0x4000>; 342ea7ae885SGregory CLEMENT interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; 343ea7ae885SGregory CLEMENT clocks = <&sb_periph_clk 7>; 344ea7ae885SGregory CLEMENT status = "disabled"; 345ea7ae885SGregory CLEMENT }; 346ea7ae885SGregory CLEMENT 347cc2684c4SAndreas Färber usb3: usb@58000 { 348150fa112SGregory CLEMENT compatible = "marvell,armada3700-xhci", 349150fa112SGregory CLEMENT "generic-xhci"; 350adbc3695SGregory CLEMENT reg = <0x58000 0x4000>; 35105d168a5SMiquel Raynal marvell,usb-misc-reg = <&usb32_syscon>; 35286fcb2bcSGregory CLEMENT interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; 353e4afb480SGregory CLEMENT clocks = <&sb_periph_clk 12>; 354bd3d25b0SMiquel Raynal phys = <&comphy0 0>, <&usb2_utmi_otg_phy>; 355bd3d25b0SMiquel Raynal phy-names = "usb3-phy", "usb2-utmi-otg-phy"; 356adbc3695SGregory CLEMENT status = "disabled"; 357adbc3695SGregory CLEMENT }; 358adbc3695SGregory CLEMENT 35905d168a5SMiquel Raynal usb2_utmi_otg_phy: phy@5d000 { 36005d168a5SMiquel Raynal compatible = "marvell,a3700-utmi-otg-phy"; 36105d168a5SMiquel Raynal reg = <0x5d000 0x800>; 36205d168a5SMiquel Raynal marvell,usb-misc-reg = <&usb32_syscon>; 36305d168a5SMiquel Raynal #phy-cells = <0>; 36405d168a5SMiquel Raynal }; 36505d168a5SMiquel Raynal 36605d168a5SMiquel Raynal usb32_syscon: system-controller@5d800 { 36705d168a5SMiquel Raynal compatible = "marvell,armada-3700-usb2-host-device-misc", 36805d168a5SMiquel Raynal "syscon"; 36905d168a5SMiquel Raynal reg = <0x5d800 0x800>; 37005d168a5SMiquel Raynal }; 37105d168a5SMiquel Raynal 3724fc056edSGregory CLEMENT usb2: usb@5e000 { 3734fc056edSGregory CLEMENT compatible = "marvell,armada-3700-ehci"; 374b3ad58bcSMiquel Raynal reg = <0x5e000 0x1000>; 37505d168a5SMiquel Raynal marvell,usb-misc-reg = <&usb2_syscon>; 3764fc056edSGregory CLEMENT interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; 377bd3d25b0SMiquel Raynal phys = <&usb2_utmi_host_phy>; 378bd3d25b0SMiquel Raynal phy-names = "usb2-utmi-host-phy"; 3794fc056edSGregory CLEMENT status = "disabled"; 3804fc056edSGregory CLEMENT }; 3814fc056edSGregory CLEMENT 38205d168a5SMiquel Raynal usb2_utmi_host_phy: phy@5f000 { 38305d168a5SMiquel Raynal compatible = "marvell,a3700-utmi-host-phy"; 38405d168a5SMiquel Raynal reg = <0x5f000 0x800>; 38505d168a5SMiquel Raynal marvell,usb-misc-reg = <&usb2_syscon>; 38605d168a5SMiquel Raynal #phy-cells = <0>; 38705d168a5SMiquel Raynal }; 38805d168a5SMiquel Raynal 38905d168a5SMiquel Raynal usb2_syscon: system-controller@5f800 { 39005d168a5SMiquel Raynal compatible = "marvell,armada-3700-usb2-host-misc", 39105d168a5SMiquel Raynal "syscon"; 39205d168a5SMiquel Raynal reg = <0x5f800 0x800>; 39305d168a5SMiquel Raynal }; 39405d168a5SMiquel Raynal 39519b67d5cSGregory CLEMENT xor@60900 { 39619b67d5cSGregory CLEMENT compatible = "marvell,armada-3700-xor"; 397e9bfac54SGregory CLEMENT reg = <0x60900 0x100>, 398e9bfac54SGregory CLEMENT <0x60b00 0x100>; 39919b67d5cSGregory CLEMENT 40019b67d5cSGregory CLEMENT xor10 { 40119b67d5cSGregory CLEMENT interrupts = <GIC_SPI 47 IRQ_TYPE_LEVEL_HIGH>; 40219b67d5cSGregory CLEMENT }; 40319b67d5cSGregory CLEMENT xor11 { 40419b67d5cSGregory CLEMENT interrupts = <GIC_SPI 48 IRQ_TYPE_LEVEL_HIGH>; 40519b67d5cSGregory CLEMENT }; 40619b67d5cSGregory CLEMENT }; 40719b67d5cSGregory CLEMENT 408e2707a28SAntoine Tenart crypto: crypto@90000 { 409c462f6c7SAntoine Tenart compatible = "inside-secure,safexcel-eip97ies"; 410e2707a28SAntoine Tenart reg = <0x90000 0x20000>; 411e2707a28SAntoine Tenart interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>, 412e2707a28SAntoine Tenart <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, 413e2707a28SAntoine Tenart <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, 414e2707a28SAntoine Tenart <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>, 415e2707a28SAntoine Tenart <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>, 416e2707a28SAntoine Tenart <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; 417e2707a28SAntoine Tenart interrupt-names = "mem", "ring0", "ring1", 418e2707a28SAntoine Tenart "ring2", "ring3", "eip"; 419e2707a28SAntoine Tenart clocks = <&nb_periph_clk 15>; 420e2707a28SAntoine Tenart }; 421e2707a28SAntoine Tenart 4221208d2f0SKonstantin Porotchkin sdhci1: sdhci@d0000 { 4231208d2f0SKonstantin Porotchkin compatible = "marvell,armada-3700-sdhci", 4241208d2f0SKonstantin Porotchkin "marvell,sdhci-xenon"; 4251208d2f0SKonstantin Porotchkin reg = <0xd0000 0x300>, 4261208d2f0SKonstantin Porotchkin <0x1e808 0x4>; 4271208d2f0SKonstantin Porotchkin interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; 4281208d2f0SKonstantin Porotchkin clocks = <&nb_periph_clk 0>; 4291208d2f0SKonstantin Porotchkin clock-names = "core"; 4301208d2f0SKonstantin Porotchkin status = "disabled"; 4311208d2f0SKonstantin Porotchkin }; 4321208d2f0SKonstantin Porotchkin 43353e74778SGregory CLEMENT sdhci0: sdhci@d8000 { 43453e74778SGregory CLEMENT compatible = "marvell,armada-3700-sdhci", 43553e74778SGregory CLEMENT "marvell,sdhci-xenon"; 436e9bfac54SGregory CLEMENT reg = <0xd8000 0x300>, 437e9bfac54SGregory CLEMENT <0x17808 0x4>; 43853e74778SGregory CLEMENT interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; 43953e74778SGregory CLEMENT clocks = <&nb_periph_clk 0>; 44053e74778SGregory CLEMENT clock-names = "core"; 44153e74778SGregory CLEMENT status = "disabled"; 44253e74778SGregory CLEMENT }; 44353e74778SGregory CLEMENT 4447b01cff5SAndreas Färber sata: sata@e0000 { 445adbc3695SGregory CLEMENT compatible = "marvell,armada-3700-ahci"; 446d68def52SMiquel Raynal reg = <0xe0000 0x178>; 447adbc3695SGregory CLEMENT interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; 44802967b85SMiquel Raynal clocks = <&nb_periph_clk 1>; 449adbc3695SGregory CLEMENT status = "disabled"; 450adbc3695SGregory CLEMENT }; 451adbc3695SGregory CLEMENT 452adbc3695SGregory CLEMENT gic: interrupt-controller@1d00000 { 453adbc3695SGregory CLEMENT compatible = "arm,gic-v3"; 454adbc3695SGregory CLEMENT #interrupt-cells = <3>; 455adbc3695SGregory CLEMENT interrupt-controller; 456adbc3695SGregory CLEMENT reg = <0x1d00000 0x10000>, /* GICD */ 4575f926e88SMarc Zyngier <0x1d40000 0x40000>, /* GICR */ 4585f926e88SMarc Zyngier <0x1d80000 0x2000>, /* GICC */ 4595f926e88SMarc Zyngier <0x1d90000 0x2000>, /* GICH */ 4605f926e88SMarc Zyngier <0x1da0000 0x20000>; /* GICV */ 46195696d29SMarc Zyngier interrupts = <GIC_PPI 9 IRQ_TYPE_LEVEL_HIGH>; 462adbc3695SGregory CLEMENT }; 463adbc3695SGregory CLEMENT }; 46476f6386bSThomas Petazzoni 46576f6386bSThomas Petazzoni pcie0: pcie@d0070000 { 46676f6386bSThomas Petazzoni compatible = "marvell,armada-3700-pcie"; 46776f6386bSThomas Petazzoni device_type = "pci"; 46876f6386bSThomas Petazzoni status = "disabled"; 46976f6386bSThomas Petazzoni reg = <0 0xd0070000 0 0x20000>; 47076f6386bSThomas Petazzoni #address-cells = <3>; 47176f6386bSThomas Petazzoni #size-cells = <2>; 47276f6386bSThomas Petazzoni bus-range = <0x00 0xff>; 47376f6386bSThomas Petazzoni interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; 47476f6386bSThomas Petazzoni #interrupt-cells = <1>; 47576f6386bSThomas Petazzoni msi-parent = <&pcie0>; 47676f6386bSThomas Petazzoni msi-controller; 47776f6386bSThomas Petazzoni ranges = <0x82000000 0 0xe8000000 0 0xe8000000 0 0x1000000 /* Port 0 MEM */ 47876f6386bSThomas Petazzoni 0x81000000 0 0xe9000000 0 0xe9000000 0 0x10000>; /* Port 0 IO*/ 47976f6386bSThomas Petazzoni interrupt-map-mask = <0 0 0 7>; 48076f6386bSThomas Petazzoni interrupt-map = <0 0 0 1 &pcie_intc 0>, 48176f6386bSThomas Petazzoni <0 0 0 2 &pcie_intc 1>, 48276f6386bSThomas Petazzoni <0 0 0 3 &pcie_intc 2>, 48376f6386bSThomas Petazzoni <0 0 0 4 &pcie_intc 3>; 48476f6386bSThomas Petazzoni pcie_intc: interrupt-controller { 48576f6386bSThomas Petazzoni interrupt-controller; 48676f6386bSThomas Petazzoni #interrupt-cells = <1>; 48776f6386bSThomas Petazzoni }; 48876f6386bSThomas Petazzoni }; 489adbc3695SGregory CLEMENT }; 490adbc3695SGregory CLEMENT}; 491