blob: 6037f12f0e9ffc621b80636f5c99a2b366a1ad2b [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 {
Stefan Roeseb15d61d2017-04-24 18:45:27 +0300125 phy-type = <PHY_TYPE_SGMII1>;
Stefan Roesef6f117b2017-03-09 14:35:28 +0100126 phy-speed = <PHY_SPEED_1_25G>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200127 };
128
129 phy1 {
130 phy-type = <PHY_TYPE_USB3_HOST0>;
131 phy-speed = <PHY_SPEED_5G>;
132 };
133
134 phy2 {
Stefan Roese201aa042017-04-06 15:39:07 +0200135 phy-type = <PHY_TYPE_SFI>;
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200136 };
137
138 phy3 {
139 phy-type = <PHY_TYPE_SATA1>;
140 phy-speed = <PHY_SPEED_5G>;
141 };
142
143 phy4 {
144 phy-type = <PHY_TYPE_USB3_HOST1>;
145 phy-speed = <PHY_SPEED_5G>;
146 };
147
148 phy5 {
149 phy-type = <PHY_TYPE_PEX2>;
150 phy-speed = <PHY_SPEED_5G>;
151 };
152};
153
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200154&cp0_utmi0 {
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200155 status = "okay";
156};
157
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200158&cp0_utmi1 {
Stefan Roesec0d8f4e2016-05-25 09:06:29 +0200159 status = "okay";
160};
Stefan Roese9b5b2a42016-12-09 15:42:15 +0100161
162&ap_sdhci0 {
163 status = "okay";
164 bus-width = <4>;
165 no-1-8-v;
166 non-removable;
167};
168
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200169&cp0_sdhci0 {
Stefan Roese9b5b2a42016-12-09 15:42:15 +0100170 status = "okay";
171 bus-width = <4>;
172 no-1-8-v;
173 non-removable;
174};
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100175
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200176&cp0_mdio {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100177 phy0: ethernet-phy@0 {
178 reg = <0>;
179 };
180 phy1: ethernet-phy@1 {
181 reg = <1>;
182 };
183};
184
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200185&cp0_ethernet {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100186 status = "okay";
187};
188
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200189&cp0_eth0 {
Stefan Roese201aa042017-04-06 15:39:07 +0200190 status = "okay";
191 phy-mode = "sfi"; /* lane-2 */
192};
193
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200194&cp0_eth1 {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100195 status = "okay";
196 phy = <&phy0>;
197 phy-mode = "sgmii";
198};
199
Konstantin Porotchkin7134b352021-01-17 17:19:49 +0200200&cp0_eth2 {
Thomas Petazzoni24d55a62017-02-20 12:27:25 +0100201 status = "okay";
202 phy = <&phy1>;
203 phy-mode = "rgmii-id";
204};