1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (C) 2016 Marvell International Ltd.
4 * Copyright (C) 2020 Sartura Ltd.
7 #include "armada-8040.dtsi" /* include SoC device tree */
10 model = "iEi-Puzzle-M801";
11 compatible = "marvell,armada8040-puzzle-m801",
15 stdout-path = "serial0:115200n8";
27 gpio3 = &sfpplus_gpio;
31 device_type = "memory";
32 reg = <0x0 0x0 0x0 0x80000000>;
36 compatible = "simple-bus";
40 reg_usb3h0_vbus: usb3-vbus0 {
41 compatible = "regulator-fixed";
42 pinctrl-names = "default";
43 pinctrl-0 = <&cp0_xhci_vbus_pins>;
44 regulator-name = "reg-usb3h0-vbus";
45 regulator-min-microvolt = <5000000>;
46 regulator-max-microvolt = <5000000>;
47 startup-delay-us = <500000>;
51 gpio = <&cp0_gpio1 15 GPIO_ACTIVE_HIGH>; /* GPIO[47] */
58 clock-frequency = <100000>;
61 compatible = "epson,rx8010";
76 * AP UART 1 RX/TX [7-8]
81 /* 0 1 2 3 4 5 6 7 8 9 */
82 pin-func = < 3 3 3 3 3 3 3 3 3 0
83 0 3 0 0 0 0 0 0 0 3 >;
89 * [0-31] = 0xff: Keep default CP0_shared_pins:
90 * [11] CLKOUT_MPP_11 (out)
91 * [23] LINK_RD_IN_CP2CP (in)
92 * [25] CLKOUT_MPP_25 (out)
93 * [29] AVS_FB_IN_CP2CP (in)
96 * [35-38] CP0 I2C1 and I2C0
98 * [40,41] CP0 UART1 TX/RX
99 * [42,43] XSMI (controls two 10G phys)
102 * [49] 10G port 1 interrupt
103 * [50] 10G port 0 interrupt
104 * [51] 2.5G SFP TX fault
105 * [52] PCIe reset out
108 * [55] Micro SD card detect
110 * [62] CP1 SFI SFP FAULT
112 /* 0 1 2 3 4 5 6 7 8 9 */
113 pin-func = < 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
114 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
115 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
116 0xff 0 7 0xa 7 2 2 2 2 0xa
118 0 0 0 0 0 0 0xe 0xe 0xe 0xe
121 cp0_xhci_vbus_pins: cpm-xhci-vbus-pins {
122 marvell,pins = < 47 >;
123 marvell,function = <0>;
126 cp0_pcie_reset_pins: cpm-pcie-reset-pins {
127 marvell,pins = < 52 >;
128 marvell,function = <0>;
133 pinctrl-names = "default";
134 pinctrl-0 = <&cp0_sdhci_pins>;
141 pinctrl-names = "default";
142 pinctrl-0 = <&cp0_pcie_reset_pins>;
143 marvell,reset-gpio = <&cp0_gpio1 20 GPIO_ACTIVE_LOW>; /* GPIO[52] */
148 pinctrl-names = "default";
149 pinctrl-0 = <&cp0_i2c0_pins>;
151 clock-frequency = <100000>;
153 sfpplus_gpio: gpio@21 {
154 compatible = "nxp,pca9555";
162 pinctrl-names = "default";
163 pinctrl-0 = <&cp0_i2c1_pins>;
165 clock-frequency = <100000>;
167 i2c_switch: i2c-switch@70 {
168 compatible = "nxp,pca9544";
169 #address-cells = <1>;
180 pinctrl-names = "default";
186 cp0_ge_phy0: ethernet-phy@1 {
190 cp0_ge_phy1: ethernet-phy@2 {
203 phy = <&cp0_ge_phy0>;
209 phy = <&cp0_ge_phy1>;
214 * CP0 Serdes Configuration:
223 phy-type = <COMPHY_TYPE_PEX0>;
226 phy-type = <COMPHY_TYPE_SGMII2>;
227 phy-speed = <COMPHY_SPEED_1_25G>;
230 phy-type = <COMPHY_TYPE_SATA0>;
233 phy-type = <COMPHY_TYPE_SGMII1>;
234 phy-speed = <COMPHY_SPEED_1_25G>;
237 phy-type = <COMPHY_TYPE_SFI0>;
240 phy-type = <COMPHY_TYPE_SATA1>;
246 pinctrl-names = "default";
247 pinctrl-0 = <&cp1_smi_pins>;
249 cp1_ge_phy0: ethernet-phy@3 {
253 cp1_ge_phy1: ethernet-phy@4 {
260 pinctrl-names = "default";
265 vbus-supply = <®_usb3h0_vbus>;
284 phy = <&cp1_ge_phy0>;
290 phy = <&cp1_ge_phy1>;
299 * [29-30] CP1 MSS I2C
301 * [32-62] = 0xff: Keep default CP1_shared_pins:
303 /* 0 1 2 3 4 5 6 7 8 9 */
304 pin-func = < 0x4 0x4 0x4 0x4 0x4 0x4 0x0 0x0 0x0 0x0
305 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0
306 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x8 0x8 0x8
307 0x8 0x0 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
308 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
309 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff 0xff
312 cp1_smi_pins: cp1-smi-pins {
313 marvell,pins = < 27 28 >;
314 marvell,function = <8>;
322 #address-cells = <1>;
324 compatible = "jedec,spi-nor";
326 spi-max-frequency = <10000000>;
329 compatible = "fixed-partitions";
330 #address-cells = <1>;
334 reg = <0x00000000 0x001f0000>;
337 partition@u-boot-env {
338 reg = <0x001f0000 0x00010000>;
339 label = "u-boot-env";
342 reg = <0x00200000 0x03f00000>;
346 reg = <0x04100000 0x03f00000>;
355 * CP1 Serdes Configuration:
364 phy-type = <COMPHY_TYPE_PEX0>;
367 phy-type = <COMPHY_TYPE_PEX0>;
370 phy-type = <COMPHY_TYPE_USB3_HOST0>;
373 phy-type = <COMPHY_TYPE_SGMII1>;
374 phy-speed = <COMPHY_SPEED_1_25G>;
377 phy-type = <COMPHY_TYPE_SFI0>;
380 phy-type = <COMPHY_TYPE_SGMII2>;
381 phy-speed = <COMPHY_SPEED_1_25G>;