1adbc3695SGregory CLEMENT/* 2adbc3695SGregory CLEMENT * Device Tree file for Marvell Armada 3720 development board 3adbc3695SGregory CLEMENT * (DB-88F3720-DDR3) 4adbc3695SGregory CLEMENT * Copyright (C) 2016 Marvell 5adbc3695SGregory CLEMENT * 6adbc3695SGregory CLEMENT * Gregory CLEMENT <gregory.clement@free-electrons.com> 7adbc3695SGregory CLEMENT * 8adbc3695SGregory CLEMENT * This file is dual-licensed: you can use it either under the terms 9adbc3695SGregory CLEMENT * of the GPL or the X11 license, at your option. Note that this dual 10adbc3695SGregory CLEMENT * licensing only applies to this file, and not this project as a 11adbc3695SGregory CLEMENT * whole. 12adbc3695SGregory CLEMENT * 13adbc3695SGregory CLEMENT * a) This file is free software; you can redistribute it and/or 14adbc3695SGregory CLEMENT * modify it under the terms of the GNU General Public License as 15adbc3695SGregory CLEMENT * published by the Free Software Foundation; either version 2 of the 16adbc3695SGregory CLEMENT * License, or (at your option) any later version. 17adbc3695SGregory CLEMENT * 1858a748f7SAlexandre Belloni * This file is distributed in the hope that it will be useful, 19adbc3695SGregory CLEMENT * but WITHOUT ANY WARRANTY; without even the implied warranty of 20adbc3695SGregory CLEMENT * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 21adbc3695SGregory CLEMENT * GNU General Public License for more details. 22adbc3695SGregory CLEMENT * 2358a748f7SAlexandre Belloni * Or, alternatively, 24adbc3695SGregory CLEMENT * 25adbc3695SGregory CLEMENT * b) Permission is hereby granted, free of charge, to any person 26adbc3695SGregory CLEMENT * obtaining a copy of this software and associated documentation 27adbc3695SGregory CLEMENT * files (the "Software"), to deal in the Software without 2858a748f7SAlexandre Belloni * restriction, including without limitation the rights to use, 29adbc3695SGregory CLEMENT * copy, modify, merge, publish, distribute, sublicense, and/or 30adbc3695SGregory CLEMENT * sell copies of the Software, and to permit persons to whom the 31adbc3695SGregory CLEMENT * Software is furnished to do so, subject to the following 32adbc3695SGregory CLEMENT * conditions: 33adbc3695SGregory CLEMENT * 34adbc3695SGregory CLEMENT * The above copyright notice and this permission notice shall be 35adbc3695SGregory CLEMENT * included in all copies or substantial portions of the Software. 36adbc3695SGregory CLEMENT * 3758a748f7SAlexandre Belloni * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 38adbc3695SGregory CLEMENT * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 39adbc3695SGregory CLEMENT * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 40adbc3695SGregory CLEMENT * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 4158a748f7SAlexandre Belloni * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 42adbc3695SGregory CLEMENT * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 43adbc3695SGregory CLEMENT * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 44adbc3695SGregory CLEMENT * OTHER DEALINGS IN THE SOFTWARE. 45718e4639SGregory CLEMENT * 46718e4639SGregory CLEMENT * This file is compatible with the version 1.4 and the version 2.0 of 47718e4639SGregory CLEMENT * the board, however the CON numbers are different between the 2 48718e4639SGregory CLEMENT * version 49adbc3695SGregory CLEMENT */ 50adbc3695SGregory CLEMENT 51adbc3695SGregory CLEMENT/dts-v1/; 52adbc3695SGregory CLEMENT 53a12af1c2SGregory CLEMENT#include <dt-bindings/gpio/gpio.h> 54adbc3695SGregory CLEMENT#include "armada-372x.dtsi" 55adbc3695SGregory CLEMENT 56adbc3695SGregory CLEMENT/ { 57adbc3695SGregory CLEMENT model = "Marvell Armada 3720 Development Board DB-88F3720-DDR3"; 58adbc3695SGregory CLEMENT compatible = "marvell,armada-3720-db", "marvell,armada3720", "marvell,armada3710"; 59adbc3695SGregory CLEMENT 60adbc3695SGregory CLEMENT chosen { 61adbc3695SGregory CLEMENT stdout-path = "serial0:115200n8"; 62adbc3695SGregory CLEMENT }; 63adbc3695SGregory CLEMENT 6436845345SGregory CLEMENT memory@0 { 65adbc3695SGregory CLEMENT device_type = "memory"; 66adbc3695SGregory CLEMENT reg = <0x00000000 0x00000000 0x00000000 0x20000000>; 67adbc3695SGregory CLEMENT }; 68a12af1c2SGregory CLEMENT 69a12af1c2SGregory CLEMENT exp_usb3_vbus: usb3-vbus { 70a12af1c2SGregory CLEMENT compatible = "regulator-fixed"; 71a12af1c2SGregory CLEMENT regulator-name = "usb3-vbus"; 72a12af1c2SGregory CLEMENT regulator-min-microvolt = <5000000>; 73a12af1c2SGregory CLEMENT regulator-max-microvolt = <5000000>; 74a12af1c2SGregory CLEMENT enable-active-high; 75a12af1c2SGregory CLEMENT regulator-always-on; 76a12af1c2SGregory CLEMENT gpio = <&gpio_exp 1 GPIO_ACTIVE_HIGH>; 77a12af1c2SGregory CLEMENT }; 78a12af1c2SGregory CLEMENT 79a12af1c2SGregory CLEMENT usb3_phy: usb3-phy { 80a12af1c2SGregory CLEMENT compatible = "usb-nop-xceiv"; 81a12af1c2SGregory CLEMENT vcc-supply = <&exp_usb3_vbus>; 82a12af1c2SGregory CLEMENT }; 8307d065abSGregory CLEMENT 8407d065abSGregory CLEMENT vcc_sd_reg1: regulator { 8507d065abSGregory CLEMENT compatible = "regulator-gpio"; 8607d065abSGregory CLEMENT regulator-name = "vcc_sd1"; 8707d065abSGregory CLEMENT regulator-min-microvolt = <1800000>; 8807d065abSGregory CLEMENT regulator-max-microvolt = <3300000>; 8907d065abSGregory CLEMENT regulator-boot-on; 9007d065abSGregory CLEMENT 9107d065abSGregory CLEMENT gpios = <&gpiosb 23 GPIO_ACTIVE_HIGH>; 9207d065abSGregory CLEMENT gpios-states = <0>; 9307d065abSGregory CLEMENT states = <1800000 0x1 9407d065abSGregory CLEMENT 3300000 0x0>; 9507d065abSGregory CLEMENT enable-active-high; 9607d065abSGregory CLEMENT }; 97c13604d9SGregory CLEMENT 98c13604d9SGregory CLEMENT vcc_sd_reg2: regulator-vmcc { 99c13604d9SGregory CLEMENT compatible = "regulator-fixed"; 100c13604d9SGregory CLEMENT regulator-name = "vcc_sd2"; 101c13604d9SGregory CLEMENT regulator-min-microvolt = <3300000>; 102c13604d9SGregory CLEMENT regulator-max-microvolt = <3300000>; 103c13604d9SGregory CLEMENT regulator-boot-on; 104c13604d9SGregory CLEMENT enable-active-high; 105c13604d9SGregory CLEMENT gpio = <&gpio_exp 4 GPIO_ACTIVE_HIGH>; 106c13604d9SGregory CLEMENT }; 1077b01cff5SAndreas Färber}; 108adbc3695SGregory CLEMENT 109718e4639SGregory CLEMENT/* Gigabit module on CON19(V2.0)/CON21(V1.4) */ 110483b4da2SGregory CLEMENTð0 { 111483b4da2SGregory CLEMENT pinctrl-names = "default"; 112483b4da2SGregory CLEMENT pinctrl-0 = <&rgmii_pins>; 113483b4da2SGregory CLEMENT phy-mode = "rgmii-id"; 114483b4da2SGregory CLEMENT phy = <&phy0>; 115483b4da2SGregory CLEMENT status = "okay"; 116483b4da2SGregory CLEMENT}; 117483b4da2SGregory CLEMENT 118718e4639SGregory CLEMENT/* Gigabit module on CON18(V2.0)/CON20(V1.4) */ 119483b4da2SGregory CLEMENTð1 { 120483b4da2SGregory CLEMENT phy-mode = "sgmii"; 121483b4da2SGregory CLEMENT phy = <&phy1>; 122483b4da2SGregory CLEMENT status = "okay"; 123483b4da2SGregory CLEMENT}; 124483b4da2SGregory CLEMENT 125c7d7ea67SRomain Perier&i2c0 { 1266a680783SGregory CLEMENT pinctrl-names = "default"; 1276a680783SGregory CLEMENT pinctrl-0 = <&i2c1_pins>; 128c7d7ea67SRomain Perier status = "okay"; 129a844a652SGregory CLEMENT 130a844a652SGregory CLEMENT gpio_exp: pca9555@22 { 131a844a652SGregory CLEMENT compatible = "nxp,pca9555"; 132a844a652SGregory CLEMENT gpio-controller; 133a844a652SGregory CLEMENT #gpio-cells = <2>; 134a844a652SGregory CLEMENT 135a844a652SGregory CLEMENT reg = <0x22>; 136a844a652SGregory CLEMENT /* 137a844a652SGregory CLEMENT * IO0_0: PWR_EN_USB2 IO1_0: PWR_EN_VTT 138a844a652SGregory CLEMENT * IO0_1: PWR_EN_USB23 IO1_1: MPCIE_WDISABLE 139a844a652SGregory CLEMENT * IO0_2: PWR_EN_SATA IO1_2: RGMII_DEV_RSTN 140a844a652SGregory CLEMENT * IO0_3: PWR_EN_PCIE IO1_3: SGMII_DEV_RSTN 141a844a652SGregory CLEMENT * IO0_4: PWR_EN_SD 142a844a652SGregory CLEMENT * IO0_5: PWR_EN_EMMC 143a844a652SGregory CLEMENT * IO0_6: PWR_EN_RGMII IO1_6: SATA_USB3.0_SEL 144a844a652SGregory CLEMENT * IO0_7: PWR_EN_SGMII IO1_7: PWR_MCI_PS 145a844a652SGregory CLEMENT */ 146a844a652SGregory CLEMENT }; 14785bee2afSGregory CLEMENT 14885bee2afSGregory CLEMENT rtc@68 { 14985bee2afSGregory CLEMENT /* PT7C4337A from pericom fully compatible with the ds1337 */ 15085bee2afSGregory CLEMENT compatible = "dallas,ds1337"; 15185bee2afSGregory CLEMENT reg = <0x68>; 15285bee2afSGregory CLEMENT }; 153c7d7ea67SRomain Perier}; 154c7d7ea67SRomain Perier 155483b4da2SGregory CLEMENT&mdio { 156483b4da2SGregory CLEMENT status = "okay"; 157483b4da2SGregory CLEMENT phy0: ethernet-phy@0 { 158483b4da2SGregory CLEMENT reg = <0>; 159483b4da2SGregory CLEMENT }; 160483b4da2SGregory CLEMENT 161483b4da2SGregory CLEMENT phy1: ethernet-phy@1 { 162483b4da2SGregory CLEMENT reg = <1>; 163483b4da2SGregory CLEMENT }; 164483b4da2SGregory CLEMENT}; 165483b4da2SGregory CLEMENT 166718e4639SGregory CLEMENT/* CON15(V2.0)/CON17(V1.4) : PCIe / CON15(V2.0)/CON12(V1.4) :mini-PCIe */ 167483b4da2SGregory CLEMENT&pcie0 { 168483b4da2SGregory CLEMENT status = "okay"; 169483b4da2SGregory CLEMENT}; 170483b4da2SGregory CLEMENT 1717b01cff5SAndreas Färber/* CON3 */ 1727b01cff5SAndreas Färber&sata { 1737b01cff5SAndreas Färber status = "okay"; 1747b01cff5SAndreas Färber}; 1757b01cff5SAndreas Färber 176483b4da2SGregory CLEMENT&sdhci0 { 177483b4da2SGregory CLEMENT non-removable; 178483b4da2SGregory CLEMENT bus-width = <8>; 179483b4da2SGregory CLEMENT mmc-ddr-1_8v; 180483b4da2SGregory CLEMENT mmc-hs400-1_8v; 181483b4da2SGregory CLEMENT marvell,pad-type = "fixed-1-8v"; 182483b4da2SGregory CLEMENT status = "okay"; 183483b4da2SGregory CLEMENT}; 184483b4da2SGregory CLEMENT 1851208d2f0SKonstantin Porotchkin/* SD slot module on CON14(V2.0)/CON15(V1.4) */ 1861208d2f0SKonstantin Porotchkin&sdhci1 { 1871208d2f0SKonstantin Porotchkin wp-inverted; 1881208d2f0SKonstantin Porotchkin cd-gpios = <&gpiosb 2 GPIO_ACTIVE_LOW>; 1891208d2f0SKonstantin Porotchkin bus-width = <4>; 1901208d2f0SKonstantin Porotchkin marvell,pad-type = "sd"; 19107d065abSGregory CLEMENT vqmmc-supply = <&vcc_sd_reg1>; 192c13604d9SGregory CLEMENT vmmc-supply = <&vcc_sd_reg2>; 1931208d2f0SKonstantin Porotchkin status = "okay"; 1941208d2f0SKonstantin Porotchkin}; 1951208d2f0SKonstantin Porotchkin 196bc357393SRomain Perier&spi0 { 197bc357393SRomain Perier status = "okay"; 1986a680783SGregory CLEMENT pinctrl-names = "default"; 1996a680783SGregory CLEMENT pinctrl-0 = <&spi_quad_pins>; 200bc357393SRomain Perier 201bc357393SRomain Perier m25p80@0 { 202bc357393SRomain Perier compatible = "jedec,spi-nor"; 203bc357393SRomain Perier reg = <0>; 204bc357393SRomain Perier spi-max-frequency = <108000000>; 205bc357393SRomain Perier spi-rx-bus-width = <4>; 206bc357393SRomain Perier spi-tx-bus-width = <4>; 207bc357393SRomain Perier 208bc357393SRomain Perier partitions { 209bc357393SRomain Perier compatible = "fixed-partitions"; 210bc357393SRomain Perier #address-cells = <1>; 211bc357393SRomain Perier #size-cells = <1>; 212bc357393SRomain Perier partition@0 { 213bc357393SRomain Perier label = "bootloader"; 214bc357393SRomain Perier reg = <0x0 0x200000>; 215bc357393SRomain Perier }; 216bc357393SRomain Perier partition@200000 { 217bc357393SRomain Perier label = "U-boot Env"; 218bc357393SRomain Perier reg = <0x200000 0x10000>; 219bc357393SRomain Perier }; 220bc357393SRomain Perier partition@210000 { 221bc357393SRomain Perier label = "Linux"; 222bc357393SRomain Perier reg = <0x210000 0xDF0000>; 223bc357393SRomain Perier }; 224bc357393SRomain Perier }; 225bc357393SRomain Perier }; 226bc357393SRomain Perier}; 227bc357393SRomain Perier 228718e4639SGregory CLEMENT/* 229718e4639SGregory CLEMENT * Exported on the micro USB connector CON30(V2.0)/CON32(V1.4) through 23071e278ceSMiquel Raynal * an FTDI (also on CON24(V2.0)/CON26(V1.4)). 231718e4639SGregory CLEMENT */ 2327b01cff5SAndreas Färber&uart0 { 2336a680783SGregory CLEMENT pinctrl-names = "default"; 2346a680783SGregory CLEMENT pinctrl-0 = <&uart1_pins>; 235adbc3695SGregory CLEMENT status = "okay"; 236adbc3695SGregory CLEMENT}; 237adbc3695SGregory CLEMENT 23871e278ceSMiquel Raynal/* CON26(V2.0)/CON28(V1.4) */ 23971e278ceSMiquel Raynal&uart1 { 24071e278ceSMiquel Raynal pinctrl-names = "default"; 24171e278ceSMiquel Raynal pinctrl-0 = <&uart2_pins>; 24271e278ceSMiquel Raynal status = "okay"; 24371e278ceSMiquel Raynal}; 24471e278ceSMiquel Raynal 245718e4639SGregory CLEMENT/* CON27(V2.0)/CON29(V1.4) */ 246483b4da2SGregory CLEMENT&usb2 { 24753e74778SGregory CLEMENT status = "okay"; 24853e74778SGregory CLEMENT}; 24953e74778SGregory CLEMENT 250718e4639SGregory CLEMENT/* CON29(V2.0)/CON31(V1.4) */ 2517b01cff5SAndreas Färber&usb3 { 252adbc3695SGregory CLEMENT status = "okay"; 253a12af1c2SGregory CLEMENT usb-phy = <&usb3_phy>; 254adbc3695SGregory CLEMENT}; 255