blob: 9104042359fcb01bbc0654107093f86237707538 [file] [log] [blame]
Konstantin Porotchkin7134b352021-01-17 17:19:49 +02001// SPDX-License-Identifier: GPL-2.0+
Stefan Roese288ba072016-05-25 08:23:31 +02002/*
Konstantin Porotchkin7134b352021-01-17 17:19:49 +02003 * Copyright (C) 2016- 2021 Marvell International Ltd.
Stefan Roese288ba072016-05-25 08:23:31 +02004 */
5
6/*
7 * Device Tree file for Marvell Armada 7040 Development board platform
Konstantin Porotchkin546a5462017-04-05 18:22:32 +03008 * Boot device: SPI NOR, 0x32 (SW3)
Stefan Roese288ba072016-05-25 08:23:31 +02009 */
10
11#include "armada-7040.dtsi"
12
13/ {
14 model = "Marvell Armada 7040 DB board";
15 compatible = "marvell,armada7040-db", "marvell,armada7040",
16 "marvell,armada-ap806-quad", "marvell,armada-ap806";
17
18 chosen {
19 stdout-path = "serial0:115200n8";
20 };
21
Stefan Roese30eec0c2016-08-31 14:47:36 +020022 aliases {
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020023 i2c0 = &cp0_i2c0;
24 spi0 = &cp0_spi1;
Stefan Roese30eec0c2016-08-31 14:47:36 +020025 };
26
Stefan Roese288ba072016-05-25 08:23:31 +020027 memory@00000000 {
28 device_type = "memory";
29 reg = <0x0 0x0 0x0 0x80000000>;
30 };
31};
32
Konstantin Porotchkinff80bd72016-12-08 12:22:30 +020033&ap_pinctl {
34 /* MPP Bus:
35 * SDIO [0-5]
36 * UART0 [11,19]
37 */
38 /* 0 1 2 3 4 5 6 7 8 9 */
39 pin-func = < 1 1 1 1 1 1 0 0 0 0
40 0 3 0 0 0 0 0 0 0 3 >;
41};
42
Stefan Roese288ba072016-05-25 08:23:31 +020043&uart0 {
44 status = "okay";
45};
46
47
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020048&cp0_pcie2 {
Stefan Roese288ba072016-05-25 08:23:31 +020049 status = "okay";
50};
51
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020052&cp0_i2c0 {
Konstantin Porotchkinff80bd72016-12-08 12:22:30 +020053 pinctrl-names = "default";
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020054 pinctrl-0 = <&cp0_i2c0_pins>;
Stefan Roese288ba072016-05-25 08:23:31 +020055 status = "okay";
56 clock-frequency = <100000>;
57};
58
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020059&cp0_pinctl {
Konstantin Porotchkinff80bd72016-12-08 12:22:30 +020060 /* MPP Bus:
61 * TDM [0-11]
62 * SPI [13-16]
63 * SATA1 [28]
64 * UART0 [29-30]
65 * SMI [32,34]
66 * XSMI [35-36]
67 * I2C [37-38]
68 * RGMII1[44-55]
69 * SD [56-62]
70 */
71 /* 0 1 2 3 4 5 6 7 8 9 */
72 pin-func = < 4 4 4 4 4 4 4 4 4 4
73 4 4 0 3 3 3 3 0 0 0
74 0 0 0 0 0 0 0 0 9 0xA
75 0xA 0 7 0 7 7 7 2 2 0
76 0 0 0 0 1 1 1 1 1 1
77 1 1 1 1 1 1 0xE 0xE 0xE 0xE
78 0xE 0xE 0xE >;
79};
80
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020081&cp0_spi1 {
Konstantin Porotchkinff80bd72016-12-08 12:22:30 +020082 pinctrl-names = "default";
Konstantin Porotchkin7134b352021-01-17 17:19:49 +020083 pinctrl-0 = <&cp0_spi0_pins>;
Stefan Roese288ba072016-05-25 08:23:31 +020084 status = "okay";
85
86 spi-flash@0 {
87 #address-cells = <0x1>;
88 #size-cells = <0x1>;
89 compatible = "jedec,spi-nor";
90 reg = <0x0>;
91 spi-max-frequency = <20000000>;
92
93 partitions {
94 compatible = "fixed-partitions";
95 #address-cells = <1>;
96 #size-cells = <1>;
97
98 partition@0 {
99 label = "U-Boot";
100 reg = <0x0 0x200000>;
101 };
102
103 partition@400000 {
104 label = "Filesystem";
105 reg = <0x200000 0xe00000>;
106 };
107 };
108 };
109};
110
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200111&cp0_sata0 {
Stefan Roese288ba072016-05-25 08:23:31 +0200112 status = "okay";
113};
114
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200115&cp0_usb3_0 {
Stefan Roese288ba072016-05-25 08:23:31 +0200116 status = "okay";
117};
118
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200119&cp0_usb3_1 {
Stefan Roese288ba072016-05-25 08:23:31 +0200120 status = "okay";
121};
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200122
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200123&cp0_comphy {
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200124 phy0 {
Igal Libermanffd5d2f2017-04-26 15:40:00 +0300125 phy-type = <COMPHY_TYPE_SGMII1>;
126 phy-speed = <COMPHY_SPEED_1_25G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200127 };
128
129 phy1 {
Igal Libermanffd5d2f2017-04-26 15:40:00 +0300130 phy-type = <COMPHY_TYPE_USB3_HOST0>;
131 phy-speed = <COMPHY_SPEED_5G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200132 };
133
134 phy2 {
Igal Libermand7297e32018-05-14 11:20:54 +0300135 phy-type = <COMPHY_TYPE_SFI0>;
136 phy-speed = <COMPHY_SPEED_10_3125G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200137 };
138
139 phy3 {
Igal Libermanffd5d2f2017-04-26 15:40:00 +0300140 phy-type = <COMPHY_TYPE_SATA1>;
141 phy-speed = <COMPHY_SPEED_5G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200142 };
143
144 phy4 {
Igal Libermanffd5d2f2017-04-26 15:40:00 +0300145 phy-type = <COMPHY_TYPE_USB3_HOST1>;
146 phy-speed = <COMPHY_SPEED_5G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200147 };
148
149 phy5 {
Igal Libermanffd5d2f2017-04-26 15:40:00 +0300150 phy-type = <COMPHY_TYPE_PEX2>;
151 phy-speed = <COMPHY_SPEED_5G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200152 };
153};
154
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200155&cp0_utmi0 {
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200156 status = "okay";
157};
158
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200159&cp0_utmi1 {
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200160 status = "okay";
161};
Stefan Roese9b5b2a42016-12-09 15:42:15 +0100162
163&ap_sdhci0 {
164 status = "okay";
165 bus-width = <4>;
166 no-1-8-v;
167 non-removable;
168};
169
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200170&cp0_sdhci0 {
Stefan Roese9b5b2a42016-12-09 15:42:15 +0100171 status = "okay";
172 bus-width = <4>;
173 no-1-8-v;
174 non-removable;
175};
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100176
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200177&cp0_mdio {
Sven Auhagenf0268cb2021-08-24 10:14:25 +0200178 status = "okay";
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100179 phy0: ethernet-phy@0 {
180 reg = <0>;
181 };
182 phy1: ethernet-phy@1 {
183 reg = <1>;
184 };
185};
186
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200187&cp0_ethernet {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100188 status = "okay";
189};
190
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200191&cp0_eth0 {
Stefan Roese201aa042017-04-06 15:39:07 +0200192 status = "okay";
193 phy-mode = "sfi"; /* lane-2 */
194};
195
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200196&cp0_eth1 {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100197 status = "okay";
198 phy = <&phy0>;
199 phy-mode = "sgmii";
200};
201
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200202&cp0_eth2 {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100203 status = "okay";
204 phy = <&phy1>;
205 phy-mode = "rgmii-id";
206};