187ebfa3eSGregory CLEMENT// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2adbc3695SGregory CLEMENT/* 3adbc3695SGregory CLEMENT * Device Tree file for Marvell Armada 3720 development board 4adbc3695SGregory CLEMENT * (DB-88F3720-DDR3) 5adbc3695SGregory CLEMENT * Copyright (C) 2016 Marvell 6adbc3695SGregory CLEMENT * 7adbc3695SGregory CLEMENT * Gregory CLEMENT <gregory.clement@free-electrons.com> 8adbc3695SGregory CLEMENT * 9718e4639SGregory CLEMENT * This file is compatible with the version 1.4 and the version 2.0 of 10718e4639SGregory CLEMENT * the board, however the CON numbers are different between the 2 11718e4639SGregory CLEMENT * version 12adbc3695SGregory CLEMENT */ 13adbc3695SGregory CLEMENT 14adbc3695SGregory CLEMENT/dts-v1/; 15adbc3695SGregory CLEMENT 16a12af1c2SGregory CLEMENT#include <dt-bindings/gpio/gpio.h> 17adbc3695SGregory CLEMENT#include "armada-372x.dtsi" 18adbc3695SGregory CLEMENT 19adbc3695SGregory CLEMENT/ { 20adbc3695SGregory CLEMENT model = "Marvell Armada 3720 Development Board DB-88F3720-DDR3"; 21*5a736382SPali Rohár compatible = "marvell,armada-3720-db", "marvell,armada3720", "marvell,armada3700"; 22adbc3695SGregory CLEMENT 23adbc3695SGregory CLEMENT chosen { 24adbc3695SGregory CLEMENT stdout-path = "serial0:115200n8"; 25adbc3695SGregory CLEMENT }; 26adbc3695SGregory CLEMENT 2736845345SGregory CLEMENT memory@0 { 28adbc3695SGregory CLEMENT device_type = "memory"; 29adbc3695SGregory CLEMENT reg = <0x00000000 0x00000000 0x00000000 0x20000000>; 30adbc3695SGregory CLEMENT }; 31a12af1c2SGregory CLEMENT 32a12af1c2SGregory CLEMENT exp_usb3_vbus: usb3-vbus { 33a12af1c2SGregory CLEMENT compatible = "regulator-fixed"; 34a12af1c2SGregory CLEMENT regulator-name = "usb3-vbus"; 35a12af1c2SGregory CLEMENT regulator-min-microvolt = <5000000>; 36a12af1c2SGregory CLEMENT regulator-max-microvolt = <5000000>; 37a12af1c2SGregory CLEMENT enable-active-high; 38a12af1c2SGregory CLEMENT regulator-always-on; 39a12af1c2SGregory CLEMENT gpio = <&gpio_exp 1 GPIO_ACTIVE_HIGH>; 40a12af1c2SGregory CLEMENT }; 41a12af1c2SGregory CLEMENT 42a12af1c2SGregory CLEMENT usb3_phy: usb3-phy { 43a12af1c2SGregory CLEMENT compatible = "usb-nop-xceiv"; 44a12af1c2SGregory CLEMENT vcc-supply = <&exp_usb3_vbus>; 45a12af1c2SGregory CLEMENT }; 4607d065abSGregory CLEMENT 4707d065abSGregory CLEMENT vcc_sd_reg1: regulator { 4807d065abSGregory CLEMENT compatible = "regulator-gpio"; 4907d065abSGregory CLEMENT regulator-name = "vcc_sd1"; 5007d065abSGregory CLEMENT regulator-min-microvolt = <1800000>; 5107d065abSGregory CLEMENT regulator-max-microvolt = <3300000>; 5207d065abSGregory CLEMENT regulator-boot-on; 5307d065abSGregory CLEMENT 5407d065abSGregory CLEMENT gpios = <&gpiosb 23 GPIO_ACTIVE_HIGH>; 5507d065abSGregory CLEMENT gpios-states = <0>; 5607d065abSGregory CLEMENT states = <1800000 0x1 5707d065abSGregory CLEMENT 3300000 0x0>; 5807d065abSGregory CLEMENT enable-active-high; 5907d065abSGregory CLEMENT }; 60c13604d9SGregory CLEMENT 61c13604d9SGregory CLEMENT vcc_sd_reg2: regulator-vmcc { 62c13604d9SGregory CLEMENT compatible = "regulator-fixed"; 63c13604d9SGregory CLEMENT regulator-name = "vcc_sd2"; 64c13604d9SGregory CLEMENT regulator-min-microvolt = <3300000>; 65c13604d9SGregory CLEMENT regulator-max-microvolt = <3300000>; 66c13604d9SGregory CLEMENT regulator-boot-on; 67c13604d9SGregory CLEMENT enable-active-high; 68c13604d9SGregory CLEMENT gpio = <&gpio_exp 4 GPIO_ACTIVE_HIGH>; 69c13604d9SGregory CLEMENT }; 707b01cff5SAndreas Färber}; 71adbc3695SGregory CLEMENT 72718e4639SGregory CLEMENT/* Gigabit module on CON19(V2.0)/CON21(V1.4) */ 73483b4da2SGregory CLEMENTð0 { 74483b4da2SGregory CLEMENT pinctrl-names = "default"; 75483b4da2SGregory CLEMENT pinctrl-0 = <&rgmii_pins>; 76483b4da2SGregory CLEMENT phy-mode = "rgmii-id"; 77483b4da2SGregory CLEMENT phy = <&phy0>; 78483b4da2SGregory CLEMENT status = "okay"; 79483b4da2SGregory CLEMENT}; 80483b4da2SGregory CLEMENT 81718e4639SGregory CLEMENT/* Gigabit module on CON18(V2.0)/CON20(V1.4) */ 82483b4da2SGregory CLEMENTð1 { 83483b4da2SGregory CLEMENT phy-mode = "sgmii"; 84483b4da2SGregory CLEMENT phy = <&phy1>; 85483b4da2SGregory CLEMENT status = "okay"; 86483b4da2SGregory CLEMENT}; 87483b4da2SGregory CLEMENT 88c7d7ea67SRomain Perier&i2c0 { 896a680783SGregory CLEMENT pinctrl-names = "default"; 906a680783SGregory CLEMENT pinctrl-0 = <&i2c1_pins>; 91c7d7ea67SRomain Perier status = "okay"; 92a844a652SGregory CLEMENT 93a844a652SGregory CLEMENT gpio_exp: pca9555@22 { 94a844a652SGregory CLEMENT compatible = "nxp,pca9555"; 95a844a652SGregory CLEMENT gpio-controller; 96a844a652SGregory CLEMENT #gpio-cells = <2>; 97a844a652SGregory CLEMENT 98a844a652SGregory CLEMENT reg = <0x22>; 99a844a652SGregory CLEMENT /* 100a844a652SGregory CLEMENT * IO0_0: PWR_EN_USB2 IO1_0: PWR_EN_VTT 101a844a652SGregory CLEMENT * IO0_1: PWR_EN_USB23 IO1_1: MPCIE_WDISABLE 102a844a652SGregory CLEMENT * IO0_2: PWR_EN_SATA IO1_2: RGMII_DEV_RSTN 103a844a652SGregory CLEMENT * IO0_3: PWR_EN_PCIE IO1_3: SGMII_DEV_RSTN 104a844a652SGregory CLEMENT * IO0_4: PWR_EN_SD 105a844a652SGregory CLEMENT * IO0_5: PWR_EN_EMMC 106a844a652SGregory CLEMENT * IO0_6: PWR_EN_RGMII IO1_6: SATA_USB3.0_SEL 107a844a652SGregory CLEMENT * IO0_7: PWR_EN_SGMII IO1_7: PWR_MCI_PS 108a844a652SGregory CLEMENT */ 109a844a652SGregory CLEMENT }; 11085bee2afSGregory CLEMENT 11185bee2afSGregory CLEMENT rtc@68 { 11285bee2afSGregory CLEMENT /* PT7C4337A from pericom fully compatible with the ds1337 */ 11385bee2afSGregory CLEMENT compatible = "dallas,ds1337"; 11485bee2afSGregory CLEMENT reg = <0x68>; 11585bee2afSGregory CLEMENT }; 116c7d7ea67SRomain Perier}; 117c7d7ea67SRomain Perier 118483b4da2SGregory CLEMENT&mdio { 119483b4da2SGregory CLEMENT status = "okay"; 120483b4da2SGregory CLEMENT phy0: ethernet-phy@0 { 121483b4da2SGregory CLEMENT reg = <0>; 122483b4da2SGregory CLEMENT }; 123483b4da2SGregory CLEMENT 124483b4da2SGregory CLEMENT phy1: ethernet-phy@1 { 125483b4da2SGregory CLEMENT reg = <1>; 126483b4da2SGregory CLEMENT }; 127483b4da2SGregory CLEMENT}; 128483b4da2SGregory CLEMENT 129718e4639SGregory CLEMENT/* CON15(V2.0)/CON17(V1.4) : PCIe / CON15(V2.0)/CON12(V1.4) :mini-PCIe */ 130483b4da2SGregory CLEMENT&pcie0 { 13171587801SMarek Behún pinctrl-names = "default"; 13271587801SMarek Behún pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>; 13371587801SMarek Behún reset-gpios = <&gpiosb 3 GPIO_ACTIVE_LOW>; 134483b4da2SGregory CLEMENT status = "okay"; 135483b4da2SGregory CLEMENT}; 136483b4da2SGregory CLEMENT 1377b01cff5SAndreas Färber/* CON3 */ 1387b01cff5SAndreas Färber&sata { 1397b01cff5SAndreas Färber status = "okay"; 1407b01cff5SAndreas Färber}; 1417b01cff5SAndreas Färber 142483b4da2SGregory CLEMENT&sdhci0 { 143483b4da2SGregory CLEMENT non-removable; 144483b4da2SGregory CLEMENT bus-width = <8>; 145483b4da2SGregory CLEMENT mmc-ddr-1_8v; 146483b4da2SGregory CLEMENT mmc-hs400-1_8v; 147483b4da2SGregory CLEMENT marvell,pad-type = "fixed-1-8v"; 148483b4da2SGregory CLEMENT status = "okay"; 149483b4da2SGregory CLEMENT}; 150483b4da2SGregory CLEMENT 1511208d2f0SKonstantin Porotchkin/* SD slot module on CON14(V2.0)/CON15(V1.4) */ 1521208d2f0SKonstantin Porotchkin&sdhci1 { 1531208d2f0SKonstantin Porotchkin wp-inverted; 1541208d2f0SKonstantin Porotchkin cd-gpios = <&gpiosb 2 GPIO_ACTIVE_LOW>; 1551208d2f0SKonstantin Porotchkin bus-width = <4>; 1561208d2f0SKonstantin Porotchkin marvell,pad-type = "sd"; 15707d065abSGregory CLEMENT vqmmc-supply = <&vcc_sd_reg1>; 158c13604d9SGregory CLEMENT vmmc-supply = <&vcc_sd_reg2>; 1591208d2f0SKonstantin Porotchkin status = "okay"; 1601208d2f0SKonstantin Porotchkin}; 1611208d2f0SKonstantin Porotchkin 162bc357393SRomain Perier&spi0 { 163bc357393SRomain Perier status = "okay"; 1646a680783SGregory CLEMENT pinctrl-names = "default"; 1656a680783SGregory CLEMENT pinctrl-0 = <&spi_quad_pins>; 166bc357393SRomain Perier 1672f00bb4aSKrzysztof Kozlowski flash@0 { 168bc357393SRomain Perier compatible = "jedec,spi-nor"; 169bc357393SRomain Perier reg = <0>; 170bc357393SRomain Perier spi-max-frequency = <108000000>; 171bc357393SRomain Perier spi-rx-bus-width = <4>; 172bc357393SRomain Perier spi-tx-bus-width = <4>; 173bc357393SRomain Perier 174bc357393SRomain Perier partitions { 175bc357393SRomain Perier compatible = "fixed-partitions"; 176bc357393SRomain Perier #address-cells = <1>; 177bc357393SRomain Perier #size-cells = <1>; 178bc357393SRomain Perier partition@0 { 179bc357393SRomain Perier label = "bootloader"; 180bc357393SRomain Perier reg = <0x0 0x200000>; 181bc357393SRomain Perier }; 182bc357393SRomain Perier partition@200000 { 183bc357393SRomain Perier label = "U-boot Env"; 184bc357393SRomain Perier reg = <0x200000 0x10000>; 185bc357393SRomain Perier }; 186bc357393SRomain Perier partition@210000 { 187bc357393SRomain Perier label = "Linux"; 188bc357393SRomain Perier reg = <0x210000 0xDF0000>; 189bc357393SRomain Perier }; 190bc357393SRomain Perier }; 191bc357393SRomain Perier }; 192bc357393SRomain Perier}; 193bc357393SRomain Perier 194718e4639SGregory CLEMENT/* 195718e4639SGregory CLEMENT * Exported on the micro USB connector CON30(V2.0)/CON32(V1.4) through 19671e278ceSMiquel Raynal * an FTDI (also on CON24(V2.0)/CON26(V1.4)). 197718e4639SGregory CLEMENT */ 1987b01cff5SAndreas Färber&uart0 { 1996a680783SGregory CLEMENT pinctrl-names = "default"; 2006a680783SGregory CLEMENT pinctrl-0 = <&uart1_pins>; 201adbc3695SGregory CLEMENT status = "okay"; 202adbc3695SGregory CLEMENT}; 203adbc3695SGregory CLEMENT 20471e278ceSMiquel Raynal/* CON26(V2.0)/CON28(V1.4) */ 20571e278ceSMiquel Raynal&uart1 { 20671e278ceSMiquel Raynal pinctrl-names = "default"; 20771e278ceSMiquel Raynal pinctrl-0 = <&uart2_pins>; 20871e278ceSMiquel Raynal status = "okay"; 20971e278ceSMiquel Raynal}; 21071e278ceSMiquel Raynal 211718e4639SGregory CLEMENT/* CON27(V2.0)/CON29(V1.4) */ 212483b4da2SGregory CLEMENT&usb2 { 21353e74778SGregory CLEMENT status = "okay"; 21453e74778SGregory CLEMENT}; 21553e74778SGregory CLEMENT 216718e4639SGregory CLEMENT/* CON29(V2.0)/CON31(V1.4) */ 2177b01cff5SAndreas Färber&usb3 { 218adbc3695SGregory CLEMENT status = "okay"; 219a12af1c2SGregory CLEMENT usb-phy = <&usb3_phy>; 220adbc3695SGregory CLEMENT}; 221