1*f126890aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2*f126890aSEmmanuel Vadot/* 3*f126890aSEmmanuel Vadot * Device Tree file for Marvell Armada 370 evaluation board 4*f126890aSEmmanuel Vadot * (DB-88F6710-BP-DDR3) 5*f126890aSEmmanuel Vadot * 6*f126890aSEmmanuel Vadot * Copyright (C) 2012 Marvell 7*f126890aSEmmanuel Vadot * 8*f126890aSEmmanuel Vadot * Lior Amsalem <alior@marvell.com> 9*f126890aSEmmanuel Vadot * Gregory CLEMENT <gregory.clement@free-electrons.com> 10*f126890aSEmmanuel Vadot * Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 11*f126890aSEmmanuel Vadot * 12*f126890aSEmmanuel Vadot * Note: this Device Tree assumes that the bootloader has remapped the 13*f126890aSEmmanuel Vadot * internal registers to 0xf1000000 (instead of the default 14*f126890aSEmmanuel Vadot * 0xd0000000). The 0xf1000000 is the default used by the recent, 15*f126890aSEmmanuel Vadot * DT-capable, U-Boot bootloaders provided by Marvell. Some earlier 16*f126890aSEmmanuel Vadot * boards were delivered with an older version of the bootloader that 17*f126890aSEmmanuel Vadot * left internal registers mapped at 0xd0000000. If you are in this 18*f126890aSEmmanuel Vadot * situation, you should either update your bootloader (preferred 19*f126890aSEmmanuel Vadot * solution) or the below Device Tree should be adjusted. 20*f126890aSEmmanuel Vadot */ 21*f126890aSEmmanuel Vadot 22*f126890aSEmmanuel Vadot/dts-v1/; 23*f126890aSEmmanuel Vadot#include "armada-370.dtsi" 24*f126890aSEmmanuel Vadot 25*f126890aSEmmanuel Vadot/ { 26*f126890aSEmmanuel Vadot model = "Marvell Armada 370 Evaluation Board"; 27*f126890aSEmmanuel Vadot compatible = "marvell,a370-db", "marvell,armada370", "marvell,armada-370-xp"; 28*f126890aSEmmanuel Vadot 29*f126890aSEmmanuel Vadot chosen { 30*f126890aSEmmanuel Vadot stdout-path = "serial0:115200n8"; 31*f126890aSEmmanuel Vadot }; 32*f126890aSEmmanuel Vadot 33*f126890aSEmmanuel Vadot memory@0 { 34*f126890aSEmmanuel Vadot device_type = "memory"; 35*f126890aSEmmanuel Vadot reg = <0x00000000 0x40000000>; /* 1 GB */ 36*f126890aSEmmanuel Vadot }; 37*f126890aSEmmanuel Vadot 38*f126890aSEmmanuel Vadot soc { 39*f126890aSEmmanuel Vadot ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 40*f126890aSEmmanuel Vadot MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000 41*f126890aSEmmanuel Vadot MBUS_ID(0x09, 0x01) 0 0xf1100000 0x10000>; 42*f126890aSEmmanuel Vadot 43*f126890aSEmmanuel Vadot internal-regs { 44*f126890aSEmmanuel Vadot serial@12000 { 45*f126890aSEmmanuel Vadot status = "okay"; 46*f126890aSEmmanuel Vadot }; 47*f126890aSEmmanuel Vadot sata@a0000 { 48*f126890aSEmmanuel Vadot nr-ports = <2>; 49*f126890aSEmmanuel Vadot status = "okay"; 50*f126890aSEmmanuel Vadot }; 51*f126890aSEmmanuel Vadot 52*f126890aSEmmanuel Vadot ethernet@70000 { 53*f126890aSEmmanuel Vadot pinctrl-0 = <&ge0_rgmii_pins>; 54*f126890aSEmmanuel Vadot pinctrl-names = "default"; 55*f126890aSEmmanuel Vadot status = "okay"; 56*f126890aSEmmanuel Vadot phy = <&phy0>; 57*f126890aSEmmanuel Vadot phy-mode = "rgmii-id"; 58*f126890aSEmmanuel Vadot }; 59*f126890aSEmmanuel Vadot ethernet@74000 { 60*f126890aSEmmanuel Vadot pinctrl-0 = <&ge1_rgmii_pins>; 61*f126890aSEmmanuel Vadot pinctrl-names = "default"; 62*f126890aSEmmanuel Vadot status = "okay"; 63*f126890aSEmmanuel Vadot phy = <&phy1>; 64*f126890aSEmmanuel Vadot phy-mode = "rgmii-id"; 65*f126890aSEmmanuel Vadot }; 66*f126890aSEmmanuel Vadot 67*f126890aSEmmanuel Vadot i2c@11000 { 68*f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 69*f126890aSEmmanuel Vadot pinctrl-names = "default"; 70*f126890aSEmmanuel Vadot clock-frequency = <100000>; 71*f126890aSEmmanuel Vadot status = "okay"; 72*f126890aSEmmanuel Vadot audio_codec: audio-codec@4a { 73*f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 74*f126890aSEmmanuel Vadot compatible = "cirrus,cs42l51"; 75*f126890aSEmmanuel Vadot reg = <0x4a>; 76*f126890aSEmmanuel Vadot }; 77*f126890aSEmmanuel Vadot }; 78*f126890aSEmmanuel Vadot 79*f126890aSEmmanuel Vadot audio-controller@30000 { 80*f126890aSEmmanuel Vadot pinctrl-0 = <&i2s_pins2>; 81*f126890aSEmmanuel Vadot pinctrl-names = "default"; 82*f126890aSEmmanuel Vadot status = "okay"; 83*f126890aSEmmanuel Vadot }; 84*f126890aSEmmanuel Vadot 85*f126890aSEmmanuel Vadot mvsdio@d4000 { 86*f126890aSEmmanuel Vadot pinctrl-0 = <&sdio_pins1>; 87*f126890aSEmmanuel Vadot pinctrl-names = "default"; 88*f126890aSEmmanuel Vadot /* 89*f126890aSEmmanuel Vadot * This device is disabled by default, because 90*f126890aSEmmanuel Vadot * using the SD card connector requires 91*f126890aSEmmanuel Vadot * changing the default CON40 connector 92*f126890aSEmmanuel Vadot * "DB-88F6710_MPP_2xRGMII_DEVICE_Jumper" to a 93*f126890aSEmmanuel Vadot * different connector 94*f126890aSEmmanuel Vadot * "DB-88F6710_MPP_RGMII_SD_Jumper". 95*f126890aSEmmanuel Vadot */ 96*f126890aSEmmanuel Vadot status = "disabled"; 97*f126890aSEmmanuel Vadot /* No CD or WP GPIOs */ 98*f126890aSEmmanuel Vadot broken-cd; 99*f126890aSEmmanuel Vadot }; 100*f126890aSEmmanuel Vadot 101*f126890aSEmmanuel Vadot usb@50000 { 102*f126890aSEmmanuel Vadot status = "okay"; 103*f126890aSEmmanuel Vadot }; 104*f126890aSEmmanuel Vadot 105*f126890aSEmmanuel Vadot usb@51000 { 106*f126890aSEmmanuel Vadot status = "okay"; 107*f126890aSEmmanuel Vadot }; 108*f126890aSEmmanuel Vadot }; 109*f126890aSEmmanuel Vadot }; 110*f126890aSEmmanuel Vadot 111*f126890aSEmmanuel Vadot sound { 112*f126890aSEmmanuel Vadot compatible = "simple-audio-card"; 113*f126890aSEmmanuel Vadot simple-audio-card,name = "Armada 370 DB Audio"; 114*f126890aSEmmanuel Vadot simple-audio-card,mclk-fs = <256>; 115*f126890aSEmmanuel Vadot simple-audio-card,widgets = 116*f126890aSEmmanuel Vadot "Headphone", "Out Jack", 117*f126890aSEmmanuel Vadot "Line", "In Jack"; 118*f126890aSEmmanuel Vadot simple-audio-card,routing = 119*f126890aSEmmanuel Vadot "Out Jack", "HPL", 120*f126890aSEmmanuel Vadot "Out Jack", "HPR", 121*f126890aSEmmanuel Vadot "AIN1L", "In Jack", 122*f126890aSEmmanuel Vadot "AIN1L", "In Jack"; 123*f126890aSEmmanuel Vadot status = "okay"; 124*f126890aSEmmanuel Vadot 125*f126890aSEmmanuel Vadot simple-audio-card,dai-link@0 { 126*f126890aSEmmanuel Vadot format = "i2s"; 127*f126890aSEmmanuel Vadot cpu { 128*f126890aSEmmanuel Vadot sound-dai = <&audio_controller 0>; 129*f126890aSEmmanuel Vadot }; 130*f126890aSEmmanuel Vadot 131*f126890aSEmmanuel Vadot codec { 132*f126890aSEmmanuel Vadot sound-dai = <&audio_codec>; 133*f126890aSEmmanuel Vadot }; 134*f126890aSEmmanuel Vadot }; 135*f126890aSEmmanuel Vadot 136*f126890aSEmmanuel Vadot simple-audio-card,dai-link@1 { 137*f126890aSEmmanuel Vadot format = "i2s"; 138*f126890aSEmmanuel Vadot cpu { 139*f126890aSEmmanuel Vadot sound-dai = <&audio_controller 1>; 140*f126890aSEmmanuel Vadot }; 141*f126890aSEmmanuel Vadot 142*f126890aSEmmanuel Vadot codec { 143*f126890aSEmmanuel Vadot sound-dai = <&spdif_out>; 144*f126890aSEmmanuel Vadot }; 145*f126890aSEmmanuel Vadot }; 146*f126890aSEmmanuel Vadot 147*f126890aSEmmanuel Vadot simple-audio-card,dai-link@2 { 148*f126890aSEmmanuel Vadot format = "i2s"; 149*f126890aSEmmanuel Vadot cpu { 150*f126890aSEmmanuel Vadot sound-dai = <&audio_controller 1>; 151*f126890aSEmmanuel Vadot }; 152*f126890aSEmmanuel Vadot 153*f126890aSEmmanuel Vadot codec { 154*f126890aSEmmanuel Vadot sound-dai = <&spdif_in>; 155*f126890aSEmmanuel Vadot }; 156*f126890aSEmmanuel Vadot }; 157*f126890aSEmmanuel Vadot }; 158*f126890aSEmmanuel Vadot 159*f126890aSEmmanuel Vadot spdif_out: spdif-out { 160*f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 161*f126890aSEmmanuel Vadot compatible = "linux,spdif-dit"; 162*f126890aSEmmanuel Vadot }; 163*f126890aSEmmanuel Vadot 164*f126890aSEmmanuel Vadot spdif_in: spdif-in { 165*f126890aSEmmanuel Vadot #sound-dai-cells = <0>; 166*f126890aSEmmanuel Vadot compatible = "linux,spdif-dir"; 167*f126890aSEmmanuel Vadot }; 168*f126890aSEmmanuel Vadot}; 169*f126890aSEmmanuel Vadot 170*f126890aSEmmanuel Vadot&pciec { 171*f126890aSEmmanuel Vadot status = "okay"; 172*f126890aSEmmanuel Vadot /* 173*f126890aSEmmanuel Vadot * The two PCIe units are accessible through 174*f126890aSEmmanuel Vadot * both standard PCIe slots and mini-PCIe 175*f126890aSEmmanuel Vadot * slots on the board. 176*f126890aSEmmanuel Vadot */ 177*f126890aSEmmanuel Vadot pcie@1,0 { 178*f126890aSEmmanuel Vadot /* Port 0, Lane 0 */ 179*f126890aSEmmanuel Vadot status = "okay"; 180*f126890aSEmmanuel Vadot }; 181*f126890aSEmmanuel Vadot 182*f126890aSEmmanuel Vadot pcie@2,0 { 183*f126890aSEmmanuel Vadot /* Port 1, Lane 0 */ 184*f126890aSEmmanuel Vadot status = "okay"; 185*f126890aSEmmanuel Vadot }; 186*f126890aSEmmanuel Vadot}; 187*f126890aSEmmanuel Vadot 188*f126890aSEmmanuel Vadot&mdio { 189*f126890aSEmmanuel Vadot pinctrl-0 = <&mdio_pins>; 190*f126890aSEmmanuel Vadot pinctrl-names = "default"; 191*f126890aSEmmanuel Vadot phy0: ethernet-phy@0 { 192*f126890aSEmmanuel Vadot reg = <0>; 193*f126890aSEmmanuel Vadot }; 194*f126890aSEmmanuel Vadot 195*f126890aSEmmanuel Vadot phy1: ethernet-phy@1 { 196*f126890aSEmmanuel Vadot reg = <1>; 197*f126890aSEmmanuel Vadot }; 198*f126890aSEmmanuel Vadot}; 199*f126890aSEmmanuel Vadot 200*f126890aSEmmanuel Vadot 201*f126890aSEmmanuel Vadot&spi0 { 202*f126890aSEmmanuel Vadot pinctrl-0 = <&spi0_pins2>; 203*f126890aSEmmanuel Vadot pinctrl-names = "default"; 204*f126890aSEmmanuel Vadot status = "okay"; 205*f126890aSEmmanuel Vadot 206*f126890aSEmmanuel Vadot flash@0 { 207*f126890aSEmmanuel Vadot #address-cells = <1>; 208*f126890aSEmmanuel Vadot #size-cells = <1>; 209*f126890aSEmmanuel Vadot compatible = "mx25l25635e", "jedec,spi-nor"; 210*f126890aSEmmanuel Vadot reg = <0>; /* Chip select 0 */ 211*f126890aSEmmanuel Vadot spi-max-frequency = <50000000>; 212*f126890aSEmmanuel Vadot }; 213*f126890aSEmmanuel Vadot}; 214*f126890aSEmmanuel Vadot 215*f126890aSEmmanuel Vadot&nand_controller { 216*f126890aSEmmanuel Vadot status = "okay"; 217*f126890aSEmmanuel Vadot 218*f126890aSEmmanuel Vadot nand@0 { 219*f126890aSEmmanuel Vadot reg = <0>; 220*f126890aSEmmanuel Vadot label = "pxa3xx_nand-0"; 221*f126890aSEmmanuel Vadot nand-rb = <0>; 222*f126890aSEmmanuel Vadot marvell,nand-keep-config; 223*f126890aSEmmanuel Vadot nand-on-flash-bbt; 224*f126890aSEmmanuel Vadot 225*f126890aSEmmanuel Vadot partitions { 226*f126890aSEmmanuel Vadot compatible = "fixed-partitions"; 227*f126890aSEmmanuel Vadot #address-cells = <1>; 228*f126890aSEmmanuel Vadot #size-cells = <1>; 229*f126890aSEmmanuel Vadot 230*f126890aSEmmanuel Vadot partition@0 { 231*f126890aSEmmanuel Vadot label = "U-Boot"; 232*f126890aSEmmanuel Vadot reg = <0 0x800000>; 233*f126890aSEmmanuel Vadot }; 234*f126890aSEmmanuel Vadot partition@800000 { 235*f126890aSEmmanuel Vadot label = "Linux"; 236*f126890aSEmmanuel Vadot reg = <0x800000 0x800000>; 237*f126890aSEmmanuel Vadot }; 238*f126890aSEmmanuel Vadot partition@1000000 { 239*f126890aSEmmanuel Vadot label = "Filesystem"; 240*f126890aSEmmanuel Vadot reg = <0x1000000 0x3f000000>; 241*f126890aSEmmanuel Vadot }; 242*f126890aSEmmanuel Vadot }; 243*f126890aSEmmanuel Vadot }; 244*f126890aSEmmanuel Vadot}; 245