1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Device Tree file for Marvell Armada 385 Access Point Development board 4*f126890aSEmmanuel Vadot * (DB-88F6820-AP) 5*f126890aSEmmanuel Vadot * 6*f126890aSEmmanuel Vadot * Copyright (C) 2014 Marvell 7*f126890aSEmmanuel Vadot * 8*f126890aSEmmanuel Vadot * Nadav Haklai <nadavh@marvell.com> 9*f126890aSEmmanuel Vadot */ 10*f126890aSEmmanuel Vadot 11*f126890aSEmmanuel Vadot/dts-v1/; 12*f126890aSEmmanuel Vadot#include "armada-385.dtsi" 13*f126890aSEmmanuel Vadot 14*f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 15*f126890aSEmmanuel Vadot 16*f126890aSEmmanuel Vadot/ { 17*f126890aSEmmanuel Vadot model = "Marvell Armada 385 Access Point Development Board"; 18*f126890aSEmmanuel Vadot compatible = "marvell,a385-db-ap", "marvell,armada385", "marvell,armada380"; 19*f126890aSEmmanuel Vadot 20*f126890aSEmmanuel Vadot chosen { 21*f126890aSEmmanuel Vadot stdout-path = "serial1:115200n8"; 22*f126890aSEmmanuel Vadot }; 23*f126890aSEmmanuel Vadot 24*f126890aSEmmanuel Vadot memory { 25*f126890aSEmmanuel Vadot device_type = "memory"; 26*f126890aSEmmanuel Vadot reg = <0x00000000 0x80000000>; /* 2GB */ 27*f126890aSEmmanuel Vadot }; 28*f126890aSEmmanuel Vadot 29*f126890aSEmmanuel Vadot soc { 30*f126890aSEmmanuel Vadot ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 31*f126890aSEmmanuel Vadot MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000 32*f126890aSEmmanuel Vadot MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000 33*f126890aSEmmanuel Vadot MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000 34*f126890aSEmmanuel Vadot MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>; 35*f126890aSEmmanuel Vadot 36*f126890aSEmmanuel Vadot internal-regs { 37*f126890aSEmmanuel Vadot i2c0: i2c@11000 { 38*f126890aSEmmanuel Vadot pinctrl-names = "default"; 39*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 40*f126890aSEmmanuel Vadot status = "okay"; 41*f126890aSEmmanuel Vadot 42*f126890aSEmmanuel Vadot /* 43*f126890aSEmmanuel Vadot * This bus is wired to two EEPROM 44*f126890aSEmmanuel Vadot * sockets, one of which holding the 45*f126890aSEmmanuel Vadot * board ID used by the bootloader. 46*f126890aSEmmanuel Vadot * Erasing this EEPROM's content will 47*f126890aSEmmanuel Vadot * brick the board. 48*f126890aSEmmanuel Vadot * Use this bus with caution. 49*f126890aSEmmanuel Vadot */ 50*f126890aSEmmanuel Vadot }; 51*f126890aSEmmanuel Vadot 52*f126890aSEmmanuel Vadot mdio@72004 { 53*f126890aSEmmanuel Vadot pinctrl-names = "default"; 54*f126890aSEmmanuel Vadot pinctrl-0 = <&mdio_pins>; 55*f126890aSEmmanuel Vadot 56*f126890aSEmmanuel Vadot phy0: ethernet-phy@1 { 57*f126890aSEmmanuel Vadot reg = <1>; 58*f126890aSEmmanuel Vadot }; 59*f126890aSEmmanuel Vadot 60*f126890aSEmmanuel Vadot phy1: ethernet-phy@4 { 61*f126890aSEmmanuel Vadot reg = <4>; 62*f126890aSEmmanuel Vadot }; 63*f126890aSEmmanuel Vadot 64*f126890aSEmmanuel Vadot phy2: ethernet-phy@6 { 65*f126890aSEmmanuel Vadot reg = <6>; 66*f126890aSEmmanuel Vadot }; 67*f126890aSEmmanuel Vadot }; 68*f126890aSEmmanuel Vadot 69*f126890aSEmmanuel Vadot /* UART0 is exposed through the JP8 connector */ 70*f126890aSEmmanuel Vadot uart0: serial@12000 { 71*f126890aSEmmanuel Vadot pinctrl-names = "default"; 72*f126890aSEmmanuel Vadot pinctrl-0 = <&uart0_pins>; 73*f126890aSEmmanuel Vadot status = "okay"; 74*f126890aSEmmanuel Vadot }; 75*f126890aSEmmanuel Vadot 76*f126890aSEmmanuel Vadot /* 77*f126890aSEmmanuel Vadot * UART1 is exposed through a FTDI chip 78*f126890aSEmmanuel Vadot * wired to the mini-USB connector 79*f126890aSEmmanuel Vadot */ 80*f126890aSEmmanuel Vadot uart1: serial@12100 { 81*f126890aSEmmanuel Vadot pinctrl-names = "default"; 82*f126890aSEmmanuel Vadot pinctrl-0 = <&uart1_pins>; 83*f126890aSEmmanuel Vadot status = "okay"; 84*f126890aSEmmanuel Vadot }; 85*f126890aSEmmanuel Vadot 86*f126890aSEmmanuel Vadot pinctrl@18000 { 87*f126890aSEmmanuel Vadot xhci0_vbus_pins: xhci0-vbus-pins { 88*f126890aSEmmanuel Vadot marvell,pins = "mpp44"; 89*f126890aSEmmanuel Vadot marvell,function = "gpio"; 90*f126890aSEmmanuel Vadot }; 91*f126890aSEmmanuel Vadot }; 92*f126890aSEmmanuel Vadot 93*f126890aSEmmanuel Vadot /* CON3 */ 94*f126890aSEmmanuel Vadot ethernet@30000 { 95*f126890aSEmmanuel Vadot status = "okay"; 96*f126890aSEmmanuel Vadot phy = <&phy2>; 97*f126890aSEmmanuel Vadot phy-mode = "sgmii"; 98*f126890aSEmmanuel Vadot buffer-manager = <&bm>; 99*f126890aSEmmanuel Vadot bm,pool-long = <1>; 100*f126890aSEmmanuel Vadot bm,pool-short = <3>; 101*f126890aSEmmanuel Vadot }; 102*f126890aSEmmanuel Vadot 103*f126890aSEmmanuel Vadot /* CON2 */ 104*f126890aSEmmanuel Vadot ethernet@34000 { 105*f126890aSEmmanuel Vadot status = "okay"; 106*f126890aSEmmanuel Vadot phy = <&phy1>; 107*f126890aSEmmanuel Vadot phy-mode = "sgmii"; 108*f126890aSEmmanuel Vadot buffer-manager = <&bm>; 109*f126890aSEmmanuel Vadot bm,pool-long = <2>; 110*f126890aSEmmanuel Vadot bm,pool-short = <3>; 111*f126890aSEmmanuel Vadot }; 112*f126890aSEmmanuel Vadot 113*f126890aSEmmanuel Vadot usb@58000 { 114*f126890aSEmmanuel Vadot status = "okay"; 115*f126890aSEmmanuel Vadot }; 116*f126890aSEmmanuel Vadot 117*f126890aSEmmanuel Vadot /* CON4 */ 118*f126890aSEmmanuel Vadot ethernet@70000 { 119*f126890aSEmmanuel Vadot pinctrl-names = "default"; 120*f126890aSEmmanuel Vadot 121*f126890aSEmmanuel Vadot /* 122*f126890aSEmmanuel Vadot * The Reference Clock 0 is used to 123*f126890aSEmmanuel Vadot * provide a clock to the PHY 124*f126890aSEmmanuel Vadot */ 125*f126890aSEmmanuel Vadot pinctrl-0 = <&ge0_rgmii_pins>, <&ref_clk0_pins>; 126*f126890aSEmmanuel Vadot status = "okay"; 127*f126890aSEmmanuel Vadot phy = <&phy0>; 128*f126890aSEmmanuel Vadot phy-mode = "rgmii-id"; 129*f126890aSEmmanuel Vadot buffer-manager = <&bm>; 130*f126890aSEmmanuel Vadot bm,pool-long = <0>; 131*f126890aSEmmanuel Vadot bm,pool-short = <3>; 132*f126890aSEmmanuel Vadot }; 133*f126890aSEmmanuel Vadot 134*f126890aSEmmanuel Vadot bm@c8000 { 135*f126890aSEmmanuel Vadot status = "okay"; 136*f126890aSEmmanuel Vadot }; 137*f126890aSEmmanuel Vadot 138*f126890aSEmmanuel Vadot usb3@f0000 { 139*f126890aSEmmanuel Vadot status = "okay"; 140*f126890aSEmmanuel Vadot usb-phy = <&usb3_phy>; 141*f126890aSEmmanuel Vadot }; 142*f126890aSEmmanuel Vadot }; 143*f126890aSEmmanuel Vadot 144*f126890aSEmmanuel Vadot bm-bppi { 145*f126890aSEmmanuel Vadot status = "okay"; 146*f126890aSEmmanuel Vadot }; 147*f126890aSEmmanuel Vadot 148*f126890aSEmmanuel Vadot pcie { 149*f126890aSEmmanuel Vadot status = "okay"; 150*f126890aSEmmanuel Vadot 151*f126890aSEmmanuel Vadot /* 152*f126890aSEmmanuel Vadot * The three PCIe units are accessible through 153*f126890aSEmmanuel Vadot * standard mini-PCIe slots on the board. 154*f126890aSEmmanuel Vadot */ 155*f126890aSEmmanuel Vadot pcie@1,0 { 156*f126890aSEmmanuel Vadot /* Port 0, Lane 0 */ 157*f126890aSEmmanuel Vadot status = "okay"; 158*f126890aSEmmanuel Vadot }; 159*f126890aSEmmanuel Vadot 160*f126890aSEmmanuel Vadot pcie@2,0 { 161*f126890aSEmmanuel Vadot /* Port 1, Lane 0 */ 162*f126890aSEmmanuel Vadot status = "okay"; 163*f126890aSEmmanuel Vadot }; 164*f126890aSEmmanuel Vadot 165*f126890aSEmmanuel Vadot pcie@3,0 { 166*f126890aSEmmanuel Vadot /* Port 2, Lane 0 */ 167*f126890aSEmmanuel Vadot status = "okay"; 168*f126890aSEmmanuel Vadot }; 169*f126890aSEmmanuel Vadot }; 170*f126890aSEmmanuel Vadot }; 171*f126890aSEmmanuel Vadot 172*f126890aSEmmanuel Vadot usb3_phy: usb3_phy { 173*f126890aSEmmanuel Vadot compatible = "usb-nop-xceiv"; 174*f126890aSEmmanuel Vadot vcc-supply = <®_xhci0_vbus>; 175*f126890aSEmmanuel Vadot #phy-cells = <0>; 176*f126890aSEmmanuel Vadot }; 177*f126890aSEmmanuel Vadot 178*f126890aSEmmanuel Vadot reg_xhci0_vbus: xhci0-vbus { 179*f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 180*f126890aSEmmanuel Vadot pinctrl-names = "default"; 181*f126890aSEmmanuel Vadot pinctrl-0 = <&xhci0_vbus_pins>; 182*f126890aSEmmanuel Vadot regulator-name = "xhci0-vbus"; 183*f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 184*f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 185*f126890aSEmmanuel Vadot enable-active-high; 186*f126890aSEmmanuel Vadot gpio = <&gpio1 12 GPIO_ACTIVE_HIGH>; 187*f126890aSEmmanuel Vadot }; 188*f126890aSEmmanuel Vadot}; 189*f126890aSEmmanuel Vadot 190*f126890aSEmmanuel Vadot&spi1 { 191*f126890aSEmmanuel Vadot pinctrl-names = "default"; 192*f126890aSEmmanuel Vadot pinctrl-0 = <&spi1_pins>; 193*f126890aSEmmanuel Vadot status = "okay"; 194*f126890aSEmmanuel Vadot 195*f126890aSEmmanuel Vadot flash@0 { 196*f126890aSEmmanuel Vadot #address-cells = <1>; 197*f126890aSEmmanuel Vadot #size-cells = <1>; 198*f126890aSEmmanuel Vadot compatible = "st,m25p128", "jedec,spi-nor"; 199*f126890aSEmmanuel Vadot reg = <0>; /* Chip select 0 */ 200*f126890aSEmmanuel Vadot spi-max-frequency = <54000000>; 201*f126890aSEmmanuel Vadot }; 202*f126890aSEmmanuel Vadot}; 203*f126890aSEmmanuel Vadot 204*f126890aSEmmanuel Vadot&nand_controller { 205*f126890aSEmmanuel Vadot status = "okay"; 206*f126890aSEmmanuel Vadot 207*f126890aSEmmanuel Vadot nand@0 { 208*f126890aSEmmanuel Vadot reg = <0>; 209*f126890aSEmmanuel Vadot label = "pxa3xx_nand-0"; 210*f126890aSEmmanuel Vadot nand-rb = <0>; 211*f126890aSEmmanuel Vadot nand-on-flash-bbt; 212*f126890aSEmmanuel Vadot nand-ecc-strength = <4>; 213*f126890aSEmmanuel Vadot nand-ecc-step-size = <512>; 214*f126890aSEmmanuel Vadot 215*f126890aSEmmanuel Vadot partitions { 216*f126890aSEmmanuel Vadot compatible = "fixed-partitions"; 217*f126890aSEmmanuel Vadot #address-cells = <1>; 218*f126890aSEmmanuel Vadot #size-cells = <1>; 219*f126890aSEmmanuel Vadot 220*f126890aSEmmanuel Vadot partition@0 { 221*f126890aSEmmanuel Vadot label = "U-Boot"; 222*f126890aSEmmanuel Vadot reg = <0x00000000 0x00800000>; 223*f126890aSEmmanuel Vadot read-only; 224*f126890aSEmmanuel Vadot }; 225*f126890aSEmmanuel Vadot 226*f126890aSEmmanuel Vadot partition@800000 { 227*f126890aSEmmanuel Vadot label = "uImage"; 228*f126890aSEmmanuel Vadot reg = <0x00800000 0x00400000>; 229*f126890aSEmmanuel Vadot read-only; 230*f126890aSEmmanuel Vadot }; 231*f126890aSEmmanuel Vadot 232*f126890aSEmmanuel Vadot partition@c00000 { 233*f126890aSEmmanuel Vadot label = "Root"; 234*f126890aSEmmanuel Vadot reg = <0x00c00000 0x3f400000>; 235*f126890aSEmmanuel Vadot }; 236*f126890aSEmmanuel Vadot }; 237*f126890aSEmmanuel Vadot }; 238*f126890aSEmmanuel Vadot}; 239