1/* 2 * Copyright (C) 2016 Marvell Technology Group Ltd. 3 * 4 * This file is dual-licensed: you can use it either under the terms 5 * of the GPLv2 or the X11 license, at your option. Note that this dual 6 * licensing only applies to this file, and not this project as a 7 * whole. 8 * 9 * a) This library is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation; either version 2 of the 12 * License, or (at your option) any later version. 13 * 14 * This library is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * Or, alternatively, 20 * 21 * b) Permission is hereby granted, free of charge, to any person 22 * obtaining a copy of this software and associated documentation 23 * files (the "Software"), to deal in the Software without 24 * restriction, including without limitation the rights to use, 25 * copy, modify, merge, publish, distribute, sublicense, and/or 26 * sell copies of the Software, and to permit persons to whom the 27 * Software is furnished to do so, subject to the following 28 * conditions: 29 * 30 * The above copyright notice and this permission notice shall be 31 * included in all copies or substantial portions of the Software. 32 * 33 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40 * OTHER DEALINGS IN THE SOFTWARE. 41 */ 42 43/* 44 * Device Tree file for Marvell Armada 8040 Development board platform 45 */ 46 47#include "armada-8040.dtsi" 48 49/ { 50 model = "Marvell Armada 8040 DB board"; 51 compatible = "marvell,armada8040-db", "marvell,armada8040", 52 "marvell,armada-ap806-quad", "marvell,armada-ap806"; 53 54 chosen { 55 stdout-path = "serial0:115200n8"; 56 }; 57 58 aliases { 59 i2c0 = &cpm_i2c0; 60 spi0 = &spi0; 61 }; 62 63 memory@00000000 { 64 device_type = "memory"; 65 reg = <0x0 0x0 0x0 0x80000000>; 66 }; 67}; 68 69&i2c0 { 70 status = "okay"; 71 clock-frequency = <100000>; 72}; 73 74&spi0 { 75 status = "okay"; 76 77 spi-flash@0 { 78 #address-cells = <1>; 79 #size-cells = <1>; 80 compatible = "jedec,spi-nor"; 81 reg = <0>; 82 spi-max-frequency = <10000000>; 83 84 partitions { 85 compatible = "fixed-partitions"; 86 #address-cells = <1>; 87 #size-cells = <1>; 88 89 partition@0 { 90 label = "U-Boot"; 91 reg = <0 0x200000>; 92 }; 93 partition@400000 { 94 label = "Filesystem"; 95 reg = <0x200000 0xce0000>; 96 }; 97 }; 98 }; 99}; 100 101/* Accessible over the mini-USB CON9 connector on the main board */ 102&uart0 { 103 status = "okay"; 104}; 105 106 107/* CON5 on CP0 expansion */ 108&cpm_pcie2 { 109 status = "okay"; 110}; 111 112&cpm_i2c0 { 113 status = "okay"; 114 clock-frequency = <100000>; 115}; 116 117/* CON4 on CP0 expansion */ 118&cpm_sata0 { 119 status = "okay"; 120}; 121 122/* CON9 on CP0 expansion */ 123&cpm_usb3_0 { 124 status = "okay"; 125}; 126 127/* CON10 on CP0 expansion */ 128&cpm_usb3_1 { 129 status = "okay"; 130}; 131 132/* CON5 on CP1 expansion */ 133&cps_pcie2 { 134 status = "okay"; 135}; 136 137&cps_i2c0 { 138 status = "okay"; 139 clock-frequency = <100000>; 140}; 141 142/* CON4 on CP1 expansion */ 143&cps_sata0 { 144 status = "okay"; 145}; 146 147/* CON9 on CP1 expansion */ 148&cps_usb3_0 { 149 status = "okay"; 150}; 151 152/* CON10 on CP1 expansion */ 153&cps_usb3_1 { 154 status = "okay"; 155}; 156 157&cpm_comphy { 158 /* 159 * Serdes Configuration: 160 * Lane 0: SGMII2 161 * Lane 1: USB3_HOST0 162 * Lane 2: KR (10G) 163 * Lane 3: SATA1 164 * Lane 4: USB3_HOST1 165 * Lane 5: PEX2x1 166 */ 167 phy0 { 168 phy-type = <PHY_TYPE_SGMII2>; 169 phy-speed = <PHY_SPEED_3_125G>; 170 }; 171 172 phy1 { 173 phy-type = <PHY_TYPE_USB3_HOST0>; 174 }; 175 176 phy2 { 177 phy-type = <PHY_TYPE_KR>; 178 }; 179 180 phy3 { 181 phy-type = <PHY_TYPE_SATA1>; 182 }; 183 184 phy4 { 185 phy-type = <PHY_TYPE_USB3_HOST1>; 186 }; 187 188 phy5 { 189 phy-type = <PHY_TYPE_PEX2>; 190 }; 191}; 192 193&cps_comphy { 194 /* 195 * Serdes Configuration: 196 * Lane 0: SGMII2 197 * Lane 1: USB3_HOST0 198 * Lane 2: KR (10G) 199 * Lane 3: SATA1 200 * Lane 4: Unconnected 201 * Lane 5: PEX2x1 202 */ 203 phy0 { 204 phy-type = <PHY_TYPE_SGMII2>; 205 phy-speed = <PHY_SPEED_3_125G>; 206 }; 207 208 phy1 { 209 phy-type = <PHY_TYPE_USB3_HOST0>; 210 }; 211 212 phy2 { 213 phy-type = <PHY_TYPE_KR>; 214 }; 215 216 phy3 { 217 phy-type = <PHY_TYPE_SATA1>; 218 }; 219 220 phy4 { 221 phy-type = <PHY_TYPE_UNCONNECTED>; 222 }; 223 224 phy5 { 225 phy-type = <PHY_TYPE_PEX2>; 226 }; 227}; 228 229&cpm_utmi0 { 230 status = "okay"; 231}; 232 233&cpm_utmi1 { 234 status = "okay"; 235}; 236 237&cps_utmi0 { 238 status = "okay"; 239}; 240