blob: cef5f976bc0f2afea9a85db88827c6e5529a87c4 [file] [log] [blame]
Gregory CLEMENTadbc3692016-02-02 18:14:06 +01001/*
2 * Device Tree file for Marvell Armada 3720 development board
3 * (DB-88F3720-DDR3)
4 * Copyright (C) 2016 Marvell
5 *
6 * Gregory CLEMENT <gregory.clement@free-electrons.com>
7 *
8 * This file is dual-licensed: you can use it either under the terms
9 * of the GPL or the X11 license, at your option. Note that this dual
10 * licensing only applies to this file, and not this project as a
11 * whole.
12 *
13 * a) This file is free software; you can redistribute it and/or
14 * modify it under the terms of the GNU General Public License as
15 * published by the Free Software Foundation; either version 2 of the
16 * License, or (at your option) any later version.
17 *
Alexandre Belloni58a748f2016-12-27 22:36:50 +010018 * This file is distributed in the hope that it will be useful,
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010019 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
22 *
Alexandre Belloni58a748f2016-12-27 22:36:50 +010023 * Or, alternatively,
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010024 *
25 * b) Permission is hereby granted, free of charge, to any person
26 * obtaining a copy of this software and associated documentation
27 * files (the "Software"), to deal in the Software without
Alexandre Belloni58a748f2016-12-27 22:36:50 +010028 * restriction, including without limitation the rights to use,
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010029 * copy, modify, merge, publish, distribute, sublicense, and/or
30 * sell copies of the Software, and to permit persons to whom the
31 * Software is furnished to do so, subject to the following
32 * conditions:
33 *
34 * The above copyright notice and this permission notice shall be
35 * included in all copies or substantial portions of the Software.
36 *
Alexandre Belloni58a748f2016-12-27 22:36:50 +010037 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010038 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
39 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
40 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
Alexandre Belloni58a748f2016-12-27 22:36:50 +010041 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010042 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
43 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
44 * OTHER DEALINGS IN THE SOFTWARE.
45 */
46
47/dts-v1/;
48
Gregory CLEMENTa12af1c2017-03-08 18:33:15 +010049#include <dt-bindings/gpio/gpio.h>
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010050#include "armada-372x.dtsi"
51
52/ {
53 model = "Marvell Armada 3720 Development Board DB-88F3720-DDR3";
54 compatible = "marvell,armada-3720-db", "marvell,armada3720", "marvell,armada3710";
55
56 chosen {
57 stdout-path = "serial0:115200n8";
58 };
59
Gregory CLEMENT36845342016-11-07 15:03:51 +010060 memory@0 {
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010061 device_type = "memory";
62 reg = <0x00000000 0x00000000 0x00000000 0x20000000>;
63 };
Gregory CLEMENTa12af1c2017-03-08 18:33:15 +010064
65 exp_usb3_vbus: usb3-vbus {
66 compatible = "regulator-fixed";
67 regulator-name = "usb3-vbus";
68 regulator-min-microvolt = <5000000>;
69 regulator-max-microvolt = <5000000>;
70 enable-active-high;
71 regulator-always-on;
72 gpio = <&gpio_exp 1 GPIO_ACTIVE_HIGH>;
73 };
74
75 usb3_phy: usb3-phy {
76 compatible = "usb-nop-xceiv";
77 vcc-supply = <&exp_usb3_vbus>;
78 };
Gregory CLEMENTadbc3692016-02-02 18:14:06 +010079};
80
Romain Perierc7d7ea62016-12-01 12:04:39 +010081&i2c0 {
82 status = "okay";
Gregory CLEMENTa844a652017-02-22 18:31:45 +010083
84 gpio_exp: pca9555@22 {
85 compatible = "nxp,pca9555";
86 gpio-controller;
87 #gpio-cells = <2>;
88
89 reg = <0x22>;
90 /*
91 * IO0_0: PWR_EN_USB2 IO1_0: PWR_EN_VTT
92 * IO0_1: PWR_EN_USB23 IO1_1: MPCIE_WDISABLE
93 * IO0_2: PWR_EN_SATA IO1_2: RGMII_DEV_RSTN
94 * IO0_3: PWR_EN_PCIE IO1_3: SGMII_DEV_RSTN
95 * IO0_4: PWR_EN_SD
96 * IO0_5: PWR_EN_EMMC
97 * IO0_6: PWR_EN_RGMII IO1_6: SATA_USB3.0_SEL
98 * IO0_7: PWR_EN_SGMII IO1_7: PWR_MCI_PS
99 */
100 };
Gregory CLEMENT85bee2a2017-03-08 18:35:19 +0100101
102 rtc@68 {
103 /* PT7C4337A from pericom fully compatible with the ds1337 */
104 compatible = "dallas,ds1337";
105 reg = <0x68>;
106 };
Romain Perierc7d7ea62016-12-01 12:04:39 +0100107};
108
Andreas Färber7b01cff2016-03-23 23:24:18 +0100109/* CON3 */
110&sata {
111 status = "okay";
112};
113
Romain Perierbc357392016-12-08 15:58:47 +0100114&spi0 {
115 status = "okay";
116
117 m25p80@0 {
118 compatible = "jedec,spi-nor";
119 reg = <0>;
120 spi-max-frequency = <108000000>;
121 spi-rx-bus-width = <4>;
122 spi-tx-bus-width = <4>;
123
124 partitions {
125 compatible = "fixed-partitions";
126 #address-cells = <1>;
127 #size-cells = <1>;
128 partition@0 {
129 label = "bootloader";
130 reg = <0x0 0x200000>;
131 };
132 partition@200000 {
133 label = "U-boot Env";
134 reg = <0x200000 0x10000>;
135 };
136 partition@210000 {
137 label = "Linux";
138 reg = <0x210000 0xDF0000>;
139 };
140 };
141 };
142};
143
Andreas Färber7b01cff2016-03-23 23:24:18 +0100144/* Exported on the micro USB connector CON32 through an FTDI */
145&uart0 {
146 status = "okay";
147};
148
Gregory CLEMENT53e74772017-03-30 17:23:03 +0200149&sdhci0 {
150 non-removable;
151 bus-width = <8>;
152 mmc-ddr-1_8v;
153 mmc-hs400-1_8v;
154 marvell,pad-type = "fixed-1-8v";
155 status = "okay";
156};
157
Andreas Färber7b01cff2016-03-23 23:24:18 +0100158/* CON31 */
159&usb3 {
160 status = "okay";
Gregory CLEMENTa12af1c2017-03-08 18:33:15 +0100161 usb-phy = <&usb3_phy>;
Andreas Färber7b01cff2016-03-23 23:24:18 +0100162};
Thomas Petazzoni76f63862016-06-30 11:32:32 +0200163
164/* CON17 (PCIe) / CON12 (mini-PCIe) */
165&pcie0 {
166 status = "okay";
167};
Gregory CLEMENTea7ae882016-12-01 18:03:10 +0100168
Gregory CLEMENT4fc056e2017-03-09 18:52:58 +0100169/* CON27 */
170&usb2 {
171 status = "okay";
172};
173
174
Gregory CLEMENTea7ae882016-12-01 18:03:10 +0100175&mdio {
176 status = "okay";
177 phy0: ethernet-phy@0 {
178 reg = <0>;
179 };
180
181 phy1: ethernet-phy@1 {
182 reg = <1>;
183 };
184};
185
186&eth0 {
187 phy-mode = "rgmii-id";
188 phy = <&phy0>;
189 status = "okay";
190};
191
192&eth1 {
193 phy-mode = "sgmii";
194 phy = <&phy1>;
195 status = "okay";
196};