1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Device Tree file for Globalscale Marvell ESPRESSOBin Board 4 * Copyright (C) 2016 Marvell 5 * 6 * Romain Perier <romain.perier@free-electrons.com> 7 * 8 */ 9/* 10 * Schematic available at http://espressobin.net/wp-content/uploads/2017/08/ESPRESSObin_V5_Schematics.pdf 11 */ 12 13/dts-v1/; 14 15#include <dt-bindings/gpio/gpio.h> 16#include "armada-372x.dtsi" 17 18/ { 19 model = "Globalscale Marvell ESPRESSOBin Board"; 20 compatible = "globalscale,espressobin", "marvell,armada3720", "marvell,armada3710"; 21 22 chosen { 23 stdout-path = "serial0:115200n8"; 24 }; 25 26 memory@0 { 27 device_type = "memory"; 28 reg = <0x00000000 0x00000000 0x00000000 0x20000000>; 29 }; 30 31 vcc_sd_reg1: regulator { 32 compatible = "regulator-gpio"; 33 regulator-name = "vcc_sd1"; 34 regulator-min-microvolt = <1800000>; 35 regulator-max-microvolt = <3300000>; 36 regulator-boot-on; 37 38 gpios = <&gpionb 4 GPIO_ACTIVE_HIGH>; 39 gpios-states = <0>; 40 states = <1800000 0x1 41 3300000 0x0>; 42 enable-active-high; 43 }; 44}; 45 46/* J9 */ 47&pcie0 { 48 status = "okay"; 49 pinctrl-names = "default"; 50 pinctrl-0 = <&pcie_reset_pins &pcie_clkreq_pins>; 51}; 52 53/* J6 */ 54&sata { 55 status = "okay"; 56}; 57 58/* J1 */ 59&sdhci1 { 60 wp-inverted; 61 bus-width = <4>; 62 cd-gpios = <&gpionb 3 GPIO_ACTIVE_LOW>; 63 marvell,pad-type = "sd"; 64 vqmmc-supply = <&vcc_sd_reg1>; 65 66 pinctrl-names = "default"; 67 pinctrl-0 = <&sdio_pins>; 68 status = "okay"; 69}; 70 71/* U11 */ 72&sdhci0 { 73 non-removable; 74 bus-width = <8>; 75 mmc-ddr-1_8v; 76 mmc-hs400-1_8v; 77 marvell,xenon-emmc; 78 marvell,xenon-tun-count = <9>; 79 marvell,pad-type = "fixed-1-8v"; 80 81 pinctrl-names = "default"; 82 pinctrl-0 = <&mmc_pins>; 83/* 84 * This eMMC is not populated on all boards, so disable it by 85 * default and let the bootloader enable it, if it is present 86 */ 87 status = "disabled"; 88}; 89 90&spi0 { 91 status = "okay"; 92 93 flash@0 { 94 reg = <0>; 95 compatible = "winbond,w25q32dw", "jedec,spi-flash"; 96 spi-max-frequency = <104000000>; 97 m25p,fast-read; 98 99 partitions { 100 compatible = "fixed-partitions"; 101 #address-cells = <1>; 102 #size-cells = <1>; 103 104 partition@0 { 105 label = "uboot"; 106 reg = <0 0x180000>; 107 }; 108 109 partition@180000 { 110 label = "ubootenv"; 111 reg = <0x180000 0x10000>; 112 }; 113 }; 114 }; 115}; 116 117/* Exported on the micro USB connector J5 through an FTDI */ 118&uart0 { 119 pinctrl-names = "default"; 120 pinctrl-0 = <&uart1_pins>; 121 status = "okay"; 122}; 123 124/* 125 * Connector J17 and J18 expose a number of different features. Some pins are 126 * multiplexed. This is the case for instance for the following features: 127 * - UART1 (pin 24 = RX, pin 26 = TX). See armada-3720-db.dts for an example of 128 * how to enable it. Beware that the signals are 1.8V TTL. 129 * - I2C 130 * - SPI 131 * - MMC 132 */ 133 134/* J7 */ 135&usb3 { 136 status = "okay"; 137}; 138 139/* J8 */ 140&usb2 { 141 status = "okay"; 142}; 143 144&mdio { 145 switch0: switch0@1 { 146 compatible = "marvell,mv88e6085"; 147 #address-cells = <1>; 148 #size-cells = <0>; 149 reg = <1>; 150 151 dsa,member = <0 0>; 152 153 ports { 154 #address-cells = <1>; 155 #size-cells = <0>; 156 157 port@0 { 158 reg = <0>; 159 label = "cpu"; 160 ethernet = <ð0>; 161 phy-mode = "rgmii-id"; 162 fixed-link { 163 speed = <1000>; 164 full-duplex; 165 }; 166 }; 167 168 port@1 { 169 reg = <1>; 170 label = "wan"; 171 phy-handle = <&switch0phy0>; 172 }; 173 174 port@2 { 175 reg = <2>; 176 label = "lan0"; 177 phy-handle = <&switch0phy1>; 178 }; 179 180 port@3 { 181 reg = <3>; 182 label = "lan1"; 183 phy-handle = <&switch0phy2>; 184 }; 185 186 }; 187 188 mdio { 189 #address-cells = <1>; 190 #size-cells = <0>; 191 192 switch0phy0: switch0phy0@11 { 193 reg = <0x11>; 194 }; 195 switch0phy1: switch0phy1@12 { 196 reg = <0x12>; 197 }; 198 switch0phy2: switch0phy2@13 { 199 reg = <0x13>; 200 }; 201 }; 202 }; 203}; 204 205ð0 { 206 pinctrl-names = "default"; 207 pinctrl-0 = <&rgmii_pins>, <&smi_pins>; 208 phy-mode = "rgmii-id"; 209 status = "okay"; 210 211 fixed-link { 212 speed = <1000>; 213 full-duplex; 214 }; 215}; 216