1/* 2 * Device Tree file for Globalscale Mirabox 3 * 4 * Gregory CLEMENT <gregory.clement@free-electrons.com> 5 * 6 * This file is dual-licensed: you can use it either under the terms 7 * of the GPL or the X11 license, at your option. Note that this dual 8 * licensing only applies to this file, and not this project as a 9 * whole. 10 * 11 * a) This file is free software; you can redistribute it and/or 12 * modify it under the terms of the GNU General Public License as 13 * published by the Free Software Foundation; either version 2 of the 14 * License, or (at your option) any later version. 15 * 16 * This file is distributed in the hope that it will be useful, 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 19 * GNU General Public License for more details. 20 * 21 * Or, alternatively, 22 * 23 * b) Permission is hereby granted, free of charge, to any person 24 * obtaining a copy of this software and associated documentation 25 * files (the "Software"), to deal in the Software without 26 * restriction, including without limitation the rights to use, 27 * copy, modify, merge, publish, distribute, sublicense, and/or 28 * sell copies of the Software, and to permit persons to whom the 29 * Software is furnished to do so, subject to the following 30 * conditions: 31 * 32 * The above copyright notice and this permission notice shall be 33 * included in all copies or substantial portions of the Software. 34 * 35 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 36 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 37 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 38 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 39 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 40 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 41 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 42 * OTHER DEALINGS IN THE SOFTWARE. 43 */ 44 45/dts-v1/; 46#include <dt-bindings/gpio/gpio.h> 47#include "armada-370.dtsi" 48 49/ { 50 model = "Globalscale Mirabox"; 51 compatible = "globalscale,mirabox", "marvell,armada370", "marvell,armada-370-xp"; 52 53 chosen { 54 stdout-path = "serial0:115200n8"; 55 }; 56 57 memory@0 { 58 device_type = "memory"; 59 reg = <0x00000000 0x20000000>; /* 512 MB */ 60 }; 61 62 soc { 63 ranges = <MBUS_ID(0xf0, 0x01) 0 0xd0000000 0x100000 64 MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000 65 MBUS_ID(0x09, 0x01) 0 0xf1100000 0x10000>; 66 67 internal-regs { 68 serial@12000 { 69 status = "okay"; 70 }; 71 timer@20300 { 72 clock-frequency = <600000000>; 73 status = "okay"; 74 }; 75 76 gpio_leds { 77 compatible = "gpio-leds"; 78 pinctrl-names = "default"; 79 pinctrl-0 = <&pwr_led_pin &stat_led_pins>; 80 81 green_pwr_led { 82 label = "mirabox:green:pwr"; 83 gpios = <&gpio1 31 GPIO_ACTIVE_LOW>; 84 default-state = "keep"; 85 }; 86 87 blue_stat_led { 88 label = "mirabox:blue:stat"; 89 gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; 90 default-state = "off"; 91 }; 92 93 green_stat_led { 94 label = "mirabox:green:stat"; 95 gpios = <&gpio2 1 GPIO_ACTIVE_LOW>; 96 default-state = "off"; 97 }; 98 }; 99 100 ethernet@70000 { 101 pinctrl-0 = <&ge0_rgmii_pins>; 102 pinctrl-names = "default"; 103 status = "okay"; 104 phy = <&phy0>; 105 phy-mode = "rgmii-id"; 106 }; 107 ethernet@74000 { 108 pinctrl-0 = <&ge1_rgmii_pins>; 109 pinctrl-names = "default"; 110 status = "okay"; 111 phy = <&phy1>; 112 phy-mode = "rgmii-id"; 113 }; 114 115 crypto@90000 { 116 status = "okay"; 117 }; 118 119 mvsdio@d4000 { 120 pinctrl-0 = <&sdio_pins3>; 121 pinctrl-names = "default"; 122 status = "okay"; 123 /* 124 * No CD or WP GPIOs: SDIO interface used for 125 * Wifi/Bluetooth chip 126 */ 127 broken-cd; 128 }; 129 130 usb@50000 { 131 status = "okay"; 132 }; 133 134 usb@51000 { 135 status = "okay"; 136 }; 137 138 i2c@11000 { 139 status = "okay"; 140 clock-frequency = <100000>; 141 pca9505: pca9505@25 { 142 compatible = "nxp,pca9505"; 143 gpio-controller; 144 #gpio-cells = <2>; 145 reg = <0x25>; 146 }; 147 }; 148 149 nand@d0000 { 150 status = "okay"; 151 num-cs = <1>; 152 marvell,nand-keep-config; 153 marvell,nand-enable-arbiter; 154 nand-on-flash-bbt; 155 156 partition@0 { 157 label = "U-Boot"; 158 reg = <0 0x400000>; 159 }; 160 partition@400000 { 161 label = "Linux"; 162 reg = <0x400000 0x400000>; 163 }; 164 partition@800000 { 165 label = "Filesystem"; 166 reg = <0x800000 0x3f800000>; 167 }; 168 }; 169 }; 170 }; 171}; 172 173&pciec { 174 status = "okay"; 175 176 /* Internal mini-PCIe connector */ 177 pcie@1,0 { 178 /* Port 0, Lane 0 */ 179 status = "okay"; 180 }; 181 182 /* Connected on the PCB to a USB 3.0 XHCI controller */ 183 pcie@2,0 { 184 /* Port 1, Lane 0 */ 185 status = "okay"; 186 }; 187}; 188 189&mdio { 190 pinctrl-0 = <&mdio_pins>; 191 pinctrl-names = "default"; 192 phy0: ethernet-phy@0 { 193 reg = <0>; 194 }; 195 196 phy1: ethernet-phy@1 { 197 reg = <1>; 198 }; 199}; 200 201&pinctrl { 202 pwr_led_pin: pwr-led-pin { 203 marvell,pins = "mpp63"; 204 marvell,function = "gpio"; 205 }; 206 207 stat_led_pins: stat-led-pins { 208 marvell,pins = "mpp64", "mpp65"; 209 marvell,function = "gpio"; 210 }; 211}; 212 213