1ec7e5a56SThomas Petazzoni/* 2ec7e5a56SThomas Petazzoni * Copyright (C) 2016 Marvell Technology Group Ltd. 3ec7e5a56SThomas Petazzoni * 4ec7e5a56SThomas Petazzoni * This file is dual-licensed: you can use it either under the terms 5ec7e5a56SThomas Petazzoni * of the GPLv2 or the X11 license, at your option. Note that this dual 6ec7e5a56SThomas Petazzoni * licensing only applies to this file, and not this project as a 7ec7e5a56SThomas Petazzoni * whole. 8ec7e5a56SThomas Petazzoni * 9ec7e5a56SThomas Petazzoni * a) This library is free software; you can redistribute it and/or 10ec7e5a56SThomas Petazzoni * modify it under the terms of the GNU General Public License as 11ec7e5a56SThomas Petazzoni * published by the Free Software Foundation; either version 2 of the 12ec7e5a56SThomas Petazzoni * License, or (at your option) any later version. 13ec7e5a56SThomas Petazzoni * 14ec7e5a56SThomas Petazzoni * This library is distributed in the hope that it will be useful, 15ec7e5a56SThomas Petazzoni * but WITHOUT ANY WARRANTY; without even the implied warranty of 16ec7e5a56SThomas Petazzoni * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17ec7e5a56SThomas Petazzoni * GNU General Public License for more details. 18ec7e5a56SThomas Petazzoni * 19ec7e5a56SThomas Petazzoni * Or, alternatively, 20ec7e5a56SThomas Petazzoni * 21ec7e5a56SThomas Petazzoni * b) Permission is hereby granted, free of charge, to any person 22ec7e5a56SThomas Petazzoni * obtaining a copy of this software and associated documentation 23ec7e5a56SThomas Petazzoni * files (the "Software"), to deal in the Software without 24ec7e5a56SThomas Petazzoni * restriction, including without limitation the rights to use, 25ec7e5a56SThomas Petazzoni * copy, modify, merge, publish, distribute, sublicense, and/or 26ec7e5a56SThomas Petazzoni * sell copies of the Software, and to permit persons to whom the 27ec7e5a56SThomas Petazzoni * Software is furnished to do so, subject to the following 28ec7e5a56SThomas Petazzoni * conditions: 29ec7e5a56SThomas Petazzoni * 30ec7e5a56SThomas Petazzoni * The above copyright notice and this permission notice shall be 31ec7e5a56SThomas Petazzoni * included in all copies or substantial portions of the Software. 32ec7e5a56SThomas Petazzoni * 33ec7e5a56SThomas Petazzoni * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 34ec7e5a56SThomas Petazzoni * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 35ec7e5a56SThomas Petazzoni * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 36ec7e5a56SThomas Petazzoni * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 37ec7e5a56SThomas Petazzoni * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 38ec7e5a56SThomas Petazzoni * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 39ec7e5a56SThomas Petazzoni * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 40ec7e5a56SThomas Petazzoni * OTHER DEALINGS IN THE SOFTWARE. 41ec7e5a56SThomas Petazzoni */ 42ec7e5a56SThomas Petazzoni 43ec7e5a56SThomas Petazzoni/* 44ec7e5a56SThomas Petazzoni * Device Tree file for Marvell Armada 7040 Development board platform 45ec7e5a56SThomas Petazzoni */ 46ec7e5a56SThomas Petazzoni 47915c71daSHanna Hawa#include <dt-bindings/gpio/gpio.h> 48ec7e5a56SThomas Petazzoni#include "armada-7040.dtsi" 49ec7e5a56SThomas Petazzoni 50ec7e5a56SThomas Petazzoni/ { 51ec7e5a56SThomas Petazzoni model = "Marvell Armada 7040 DB board"; 52ec7e5a56SThomas Petazzoni compatible = "marvell,armada7040-db", "marvell,armada7040", 53ec7e5a56SThomas Petazzoni "marvell,armada-ap806-quad", "marvell,armada-ap806"; 54ec7e5a56SThomas Petazzoni 55bf151162SThomas Petazzoni chosen { 56bf151162SThomas Petazzoni stdout-path = "serial0:115200n8"; 57bf151162SThomas Petazzoni }; 58bf151162SThomas Petazzoni 59ec7e5a56SThomas Petazzoni memory@00000000 { 60ec7e5a56SThomas Petazzoni device_type = "memory"; 61ec7e5a56SThomas Petazzoni reg = <0x0 0x0 0x0 0x80000000>; 62ec7e5a56SThomas Petazzoni }; 63915c71daSHanna Hawa 64915c71daSHanna Hawa cpm_reg_usb3_0_vbus: cpm-usb3-0-vbus { 65915c71daSHanna Hawa compatible = "regulator-fixed"; 66915c71daSHanna Hawa regulator-name = "usb3h0-vbus"; 67915c71daSHanna Hawa regulator-min-microvolt = <5000000>; 68915c71daSHanna Hawa regulator-max-microvolt = <5000000>; 69915c71daSHanna Hawa enable-active-high; 70915c71daSHanna Hawa gpio = <&expander0 0 GPIO_ACTIVE_HIGH>; 71915c71daSHanna Hawa }; 72915c71daSHanna Hawa 73915c71daSHanna Hawa cpm_reg_usb3_1_vbus: cpm-usb3-1-vbus { 74915c71daSHanna Hawa compatible = "regulator-fixed"; 75915c71daSHanna Hawa regulator-name = "usb3h1-vbus"; 76915c71daSHanna Hawa regulator-min-microvolt = <5000000>; 77915c71daSHanna Hawa regulator-max-microvolt = <5000000>; 78915c71daSHanna Hawa enable-active-high; 79915c71daSHanna Hawa gpio = <&expander0 1 GPIO_ACTIVE_HIGH>; 80915c71daSHanna Hawa }; 81915c71daSHanna Hawa 82915c71daSHanna Hawa cpm_usb3_0_phy: cpm-usb3-0-phy { 83915c71daSHanna Hawa compatible = "usb-nop-xceiv"; 84915c71daSHanna Hawa vcc-supply = <&cpm_reg_usb3_0_vbus>; 85915c71daSHanna Hawa }; 86915c71daSHanna Hawa 87915c71daSHanna Hawa cpm_usb3_1_phy: cpm-usb3-1-phy { 88915c71daSHanna Hawa compatible = "usb-nop-xceiv"; 89915c71daSHanna Hawa vcc-supply = <&cpm_reg_usb3_1_vbus>; 90915c71daSHanna Hawa }; 91037ad463SAndreas Färber}; 92ec7e5a56SThomas Petazzoni 93037ad463SAndreas Färber&i2c0 { 94037ad463SAndreas Färber status = "okay"; 95037ad463SAndreas Färber clock-frequency = <100000>; 96037ad463SAndreas Färber}; 97037ad463SAndreas Färber 98037ad463SAndreas Färber&spi0 { 99ec7e5a56SThomas Petazzoni status = "okay"; 100ec7e5a56SThomas Petazzoni 101ec7e5a56SThomas Petazzoni spi-flash@0 { 102ec7e5a56SThomas Petazzoni #address-cells = <1>; 103ec7e5a56SThomas Petazzoni #size-cells = <1>; 104fe85e20eSThomas Petazzoni compatible = "jedec,spi-nor"; 105fe85e20eSThomas Petazzoni reg = <0>; 106ec7e5a56SThomas Petazzoni spi-max-frequency = <10000000>; 107ec7e5a56SThomas Petazzoni 108fe85e20eSThomas Petazzoni partitions { 109fe85e20eSThomas Petazzoni compatible = "fixed-partitions"; 110fe85e20eSThomas Petazzoni #address-cells = <1>; 111fe85e20eSThomas Petazzoni #size-cells = <1>; 112fe85e20eSThomas Petazzoni 113ec7e5a56SThomas Petazzoni partition@0 { 114ec7e5a56SThomas Petazzoni label = "U-Boot"; 115ec7e5a56SThomas Petazzoni reg = <0 0x200000>; 116ec7e5a56SThomas Petazzoni }; 117ec7e5a56SThomas Petazzoni partition@400000 { 118ec7e5a56SThomas Petazzoni label = "Filesystem"; 119ec7e5a56SThomas Petazzoni reg = <0x200000 0xce0000>; 120ec7e5a56SThomas Petazzoni }; 121ec7e5a56SThomas Petazzoni }; 122ec7e5a56SThomas Petazzoni }; 123fe85e20eSThomas Petazzoni}; 124ec7e5a56SThomas Petazzoni 125037ad463SAndreas Färber&uart0 { 126ec7e5a56SThomas Petazzoni status = "okay"; 1279e83bbdbSThomas Petazzoni pinctrl-0 = <&uart0_pins>; 1289e83bbdbSThomas Petazzoni pinctrl-names = "default"; 129ec7e5a56SThomas Petazzoni}; 130fea14498SThomas Petazzoni 131fea14498SThomas Petazzoni 132fea14498SThomas Petazzoni&cpm_pcie2 { 133fea14498SThomas Petazzoni status = "okay"; 134fea14498SThomas Petazzoni}; 135fea14498SThomas Petazzoni 136fea14498SThomas Petazzoni&cpm_i2c0 { 137fea14498SThomas Petazzoni status = "okay"; 138fea14498SThomas Petazzoni clock-frequency = <100000>; 139915c71daSHanna Hawa 140915c71daSHanna Hawa expander0: pca9555@21 { 141915c71daSHanna Hawa compatible = "nxp,pca9555"; 142915c71daSHanna Hawa pinctrl-names = "default"; 143915c71daSHanna Hawa gpio-controller; 144915c71daSHanna Hawa #gpio-cells = <2>; 145915c71daSHanna Hawa reg = <0x21>; 146915c71daSHanna Hawa }; 147fea14498SThomas Petazzoni}; 148fea14498SThomas Petazzoni 149fea14498SThomas Petazzoni&cpm_spi1 { 150fea14498SThomas Petazzoni status = "okay"; 151fea14498SThomas Petazzoni 152fea14498SThomas Petazzoni spi-flash@0 { 153fea14498SThomas Petazzoni #address-cells = <0x1>; 154fea14498SThomas Petazzoni #size-cells = <0x1>; 155fea14498SThomas Petazzoni compatible = "jedec,spi-nor"; 156fea14498SThomas Petazzoni reg = <0x0>; 157fea14498SThomas Petazzoni spi-max-frequency = <20000000>; 158fea14498SThomas Petazzoni 159fea14498SThomas Petazzoni partitions { 160fea14498SThomas Petazzoni compatible = "fixed-partitions"; 161fea14498SThomas Petazzoni #address-cells = <1>; 162fea14498SThomas Petazzoni #size-cells = <1>; 163fea14498SThomas Petazzoni 164fea14498SThomas Petazzoni partition@0 { 165fea14498SThomas Petazzoni label = "U-Boot"; 166fea14498SThomas Petazzoni reg = <0x0 0x200000>; 167fea14498SThomas Petazzoni }; 168fea14498SThomas Petazzoni 169fea14498SThomas Petazzoni partition@400000 { 170fea14498SThomas Petazzoni label = "Filesystem"; 171fea14498SThomas Petazzoni reg = <0x200000 0xe00000>; 172fea14498SThomas Petazzoni }; 173fea14498SThomas Petazzoni }; 174fea14498SThomas Petazzoni }; 175fea14498SThomas Petazzoni}; 176fea14498SThomas Petazzoni 177fea14498SThomas Petazzoni&cpm_sata0 { 178fea14498SThomas Petazzoni status = "okay"; 179fea14498SThomas Petazzoni}; 180fea14498SThomas Petazzoni 181fea14498SThomas Petazzoni&cpm_usb3_0 { 182915c71daSHanna Hawa usb-phy = <&cpm_usb3_0_phy>; 183fea14498SThomas Petazzoni status = "okay"; 184fea14498SThomas Petazzoni}; 185fea14498SThomas Petazzoni 186fea14498SThomas Petazzoni&cpm_usb3_1 { 187915c71daSHanna Hawa usb-phy = <&cpm_usb3_1_phy>; 188fea14498SThomas Petazzoni status = "okay"; 189fea14498SThomas Petazzoni}; 19060894719SThomas Petazzoni 191910b4c5cSGregory CLEMENT&ap_sdhci0 { 192910b4c5cSGregory CLEMENT status = "okay"; 193910b4c5cSGregory CLEMENT bus-width = <4>; 194910b4c5cSGregory CLEMENT no-1-8-v; 195910b4c5cSGregory CLEMENT non-removable; 196910b4c5cSGregory CLEMENT}; 197910b4c5cSGregory CLEMENT 198910b4c5cSGregory CLEMENT&cpm_sdhci0 { 199910b4c5cSGregory CLEMENT status = "okay"; 200910b4c5cSGregory CLEMENT bus-width = <4>; 201910b4c5cSGregory CLEMENT no-1-8-v; 202910b4c5cSGregory CLEMENT non-removable; 203910b4c5cSGregory CLEMENT}; 204910b4c5cSGregory CLEMENT 20560894719SThomas Petazzoni&cpm_mdio { 2063c6912cdSAntoine Tenart status = "okay"; 2073c6912cdSAntoine Tenart 20860894719SThomas Petazzoni phy0: ethernet-phy@0 { 20960894719SThomas Petazzoni reg = <0>; 21060894719SThomas Petazzoni }; 21160894719SThomas Petazzoni phy1: ethernet-phy@1 { 21260894719SThomas Petazzoni reg = <1>; 21360894719SThomas Petazzoni }; 21460894719SThomas Petazzoni}; 21560894719SThomas Petazzoni 21660894719SThomas Petazzoni&cpm_ethernet { 21760894719SThomas Petazzoni status = "okay"; 21860894719SThomas Petazzoni}; 21960894719SThomas Petazzoni 22060894719SThomas Petazzoni&cpm_eth1 { 22160894719SThomas Petazzoni status = "okay"; 222723abeedSAntoine Tenart /* Network PHY */ 22360894719SThomas Petazzoni phy = <&phy0>; 22460894719SThomas Petazzoni phy-mode = "sgmii"; 225723abeedSAntoine Tenart /* Generic PHY, providing serdes lanes */ 226723abeedSAntoine Tenart phys = <&cpm_comphy0 1>; 22760894719SThomas Petazzoni}; 22860894719SThomas Petazzoni 22960894719SThomas Petazzoni&cpm_eth2 { 23060894719SThomas Petazzoni status = "okay"; 23160894719SThomas Petazzoni phy = <&phy1>; 23260894719SThomas Petazzoni phy-mode = "rgmii-id"; 23360894719SThomas Petazzoni}; 234