1724ba675SRob Herring// SPDX-License-Identifier: (GPL-2.0 OR MIT) 2724ba675SRob Herring/* 3724ba675SRob Herring * Device Tree include file for Armada 385 based Linksys boards 4724ba675SRob Herring * 5724ba675SRob Herring * Copyright (C) 2015 Imre Kaloz <kaloz@openwrt.org> 6724ba675SRob Herring */ 7724ba675SRob Herring 8724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 9724ba675SRob Herring#include <dt-bindings/input/input.h> 10724ba675SRob Herring#include "armada-385.dtsi" 11724ba675SRob Herring 12724ba675SRob Herring/ { 13724ba675SRob Herring model = "Linksys boards based on Armada 385"; 14724ba675SRob Herring compatible = "linksys,armada385", "marvell,armada385", 15724ba675SRob Herring "marvell,armada380"; 16724ba675SRob Herring 17724ba675SRob Herring chosen { 18724ba675SRob Herring stdout-path = "serial0:115200n8"; 19724ba675SRob Herring }; 20724ba675SRob Herring 21724ba675SRob Herring memory { 22724ba675SRob Herring device_type = "memory"; 23724ba675SRob Herring reg = <0x00000000 0x20000000>; /* 512 MiB */ 24724ba675SRob Herring }; 25724ba675SRob Herring 26724ba675SRob Herring soc { 27724ba675SRob Herring ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 28724ba675SRob Herring MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000 29724ba675SRob Herring MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000 30724ba675SRob Herring MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000 31724ba675SRob Herring MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>; 32724ba675SRob Herring }; 33724ba675SRob Herring 34724ba675SRob Herring usb3_1_phy: usb3_1-phy { 35724ba675SRob Herring compatible = "usb-nop-xceiv"; 36724ba675SRob Herring vcc-supply = <&usb3_1_vbus>; 37724ba675SRob Herring #phy-cells = <0>; 38724ba675SRob Herring }; 39724ba675SRob Herring 40724ba675SRob Herring usb3_1_vbus: usb3_1-vbus { 41724ba675SRob Herring compatible = "regulator-fixed"; 42724ba675SRob Herring pinctrl-names = "default"; 43724ba675SRob Herring pinctrl-0 = <&usb3_1_vbus_pins>; 44724ba675SRob Herring regulator-name = "usb3_1-vbus"; 45724ba675SRob Herring regulator-min-microvolt = <5000000>; 46724ba675SRob Herring regulator-max-microvolt = <5000000>; 47724ba675SRob Herring enable-active-high; 48724ba675SRob Herring gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>; 49724ba675SRob Herring }; 50724ba675SRob Herring 51724ba675SRob Herring gpio_keys: gpio-keys { 52724ba675SRob Herring compatible = "gpio-keys"; 53724ba675SRob Herring pinctrl-0 = <&gpio_keys_pins>; 54724ba675SRob Herring pinctrl-names = "default"; 55724ba675SRob Herring 56724ba675SRob Herring button-wps { 57724ba675SRob Herring label = "WPS"; 58724ba675SRob Herring linux,code = <KEY_WPS_BUTTON>; 59724ba675SRob Herring gpios = <&gpio0 24 GPIO_ACTIVE_LOW>; 60724ba675SRob Herring }; 61724ba675SRob Herring 62724ba675SRob Herring button-reset { 63724ba675SRob Herring label = "Factory Reset Button"; 64724ba675SRob Herring linux,code = <KEY_RESTART>; 65724ba675SRob Herring gpios = <&gpio0 29 GPIO_ACTIVE_LOW>; 66724ba675SRob Herring }; 67724ba675SRob Herring }; 68724ba675SRob Herring 69724ba675SRob Herring gpio_leds: gpio-leds { 70724ba675SRob Herring compatible = "gpio-leds"; 71724ba675SRob Herring pinctrl-0 = <&gpio_leds_pins>; 72724ba675SRob Herring pinctrl-names = "default"; 73724ba675SRob Herring 74724ba675SRob Herring led-power { 75724ba675SRob Herring gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>; 76724ba675SRob Herring default-state = "on"; 77724ba675SRob Herring }; 78724ba675SRob Herring 79724ba675SRob Herring led-sata { 80724ba675SRob Herring gpios = <&gpio1 22 GPIO_ACTIVE_LOW>; 81724ba675SRob Herring default-state = "off"; 82724ba675SRob Herring linux,default-trigger = "disk-activity"; 83724ba675SRob Herring }; 84724ba675SRob Herring }; 85724ba675SRob Herring}; 86724ba675SRob Herring 87724ba675SRob Herring&ahci0 { 88724ba675SRob Herring status = "okay"; 89724ba675SRob Herring}; 90724ba675SRob Herring 91724ba675SRob Herring&bm { 92724ba675SRob Herring status = "okay"; 93724ba675SRob Herring}; 94724ba675SRob Herring 95724ba675SRob Herring&bm_bppi { 96724ba675SRob Herring status = "okay"; 97724ba675SRob Herring}; 98724ba675SRob Herring 99724ba675SRob Herringð0 { 100724ba675SRob Herring status = "okay"; 101724ba675SRob Herring phy-mode = "rgmii-id"; 102724ba675SRob Herring buffer-manager = <&bm>; 103724ba675SRob Herring bm,pool-long = <0>; 104724ba675SRob Herring bm,pool-short = <1>; 105724ba675SRob Herring fixed-link { 106724ba675SRob Herring speed = <1000>; 107724ba675SRob Herring full-duplex; 108724ba675SRob Herring }; 109724ba675SRob Herring}; 110724ba675SRob Herring 111724ba675SRob Herringð2 { 112724ba675SRob Herring status = "okay"; 113724ba675SRob Herring phy-mode = "sgmii"; 114724ba675SRob Herring buffer-manager = <&bm>; 115724ba675SRob Herring bm,pool-long = <2>; 116724ba675SRob Herring bm,pool-short = <3>; 117724ba675SRob Herring fixed-link { 118724ba675SRob Herring speed = <1000>; 119724ba675SRob Herring full-duplex; 120724ba675SRob Herring }; 121724ba675SRob Herring}; 122724ba675SRob Herring 123724ba675SRob Herring&i2c0 { 124724ba675SRob Herring pinctrl-names = "default"; 125724ba675SRob Herring pinctrl-0 = <&i2c0_pins>; 126724ba675SRob Herring status = "okay"; 127724ba675SRob Herring 128724ba675SRob Herring tmp421@4c { 129724ba675SRob Herring compatible = "ti,tmp421"; 130724ba675SRob Herring reg = <0x4c>; 131724ba675SRob Herring }; 132724ba675SRob Herring 133724ba675SRob Herring expander0: pca9635@68 { 134724ba675SRob Herring #address-cells = <1>; 135724ba675SRob Herring #size-cells = <0>; 136724ba675SRob Herring compatible = "nxp,pca9635"; 137724ba675SRob Herring reg = <0x68>; 138724ba675SRob Herring }; 139724ba675SRob Herring}; 140724ba675SRob Herring 141724ba675SRob Herring&nand_controller { 142724ba675SRob Herring /* 128MiB or 256MiB */ 143724ba675SRob Herring status = "okay"; 144724ba675SRob Herring #address-cells = <1>; 145724ba675SRob Herring #size-cells = <0>; 146724ba675SRob Herring 147724ba675SRob Herring nand: nand@0 { 148724ba675SRob Herring reg = <0>; 149724ba675SRob Herring label = "pxa3xx_nand-0"; 150724ba675SRob Herring nand-rb = <0>; 151724ba675SRob Herring nand-ecc-strength = <4>; 152724ba675SRob Herring nand-ecc-step-size = <512>; 153724ba675SRob Herring marvell,nand-keep-config; 154724ba675SRob Herring nand-on-flash-bbt; 155724ba675SRob Herring }; 156724ba675SRob Herring}; 157724ba675SRob Herring 158724ba675SRob Herring&mdio { 159724ba675SRob Herring status = "okay"; 160724ba675SRob Herring 161*6e75ac5aSLinus Walleij ethernet-switch@0 { 162724ba675SRob Herring compatible = "marvell,mv88e6085"; 163724ba675SRob Herring reg = <0>; 164724ba675SRob Herring 165*6e75ac5aSLinus Walleij ethernet-ports { 166724ba675SRob Herring #address-cells = <1>; 167724ba675SRob Herring #size-cells = <0>; 168724ba675SRob Herring 169*6e75ac5aSLinus Walleij ethernet-port@0 { 170724ba675SRob Herring reg = <0>; 171724ba675SRob Herring label = "lan4"; 172724ba675SRob Herring }; 173724ba675SRob Herring 174*6e75ac5aSLinus Walleij ethernet-port@1 { 175724ba675SRob Herring reg = <1>; 176724ba675SRob Herring label = "lan3"; 177724ba675SRob Herring }; 178724ba675SRob Herring 179*6e75ac5aSLinus Walleij ethernet-port@2 { 180724ba675SRob Herring reg = <2>; 181724ba675SRob Herring label = "lan2"; 182724ba675SRob Herring }; 183724ba675SRob Herring 184*6e75ac5aSLinus Walleij ethernet-port@3 { 185724ba675SRob Herring reg = <3>; 186724ba675SRob Herring label = "lan1"; 187724ba675SRob Herring }; 188724ba675SRob Herring 189*6e75ac5aSLinus Walleij ethernet-port@4 { 190724ba675SRob Herring reg = <4>; 191724ba675SRob Herring label = "wan"; 192724ba675SRob Herring }; 193724ba675SRob Herring 194*6e75ac5aSLinus Walleij ethernet-port@5 { 195724ba675SRob Herring reg = <5>; 196724ba675SRob Herring phy-mode = "sgmii"; 197724ba675SRob Herring ethernet = <ð2>; 198724ba675SRob Herring 199724ba675SRob Herring fixed-link { 200724ba675SRob Herring speed = <1000>; 201724ba675SRob Herring full-duplex; 202724ba675SRob Herring }; 203724ba675SRob Herring }; 204724ba675SRob Herring }; 205724ba675SRob Herring }; 206724ba675SRob Herring}; 207724ba675SRob Herring 208724ba675SRob Herring&pciec { 209724ba675SRob Herring status = "okay"; 210724ba675SRob Herring}; 211724ba675SRob Herring 212724ba675SRob Herring&pcie1 { 213724ba675SRob Herring /* Marvell 88W8864, 5GHz-only */ 214724ba675SRob Herring status = "okay"; 215724ba675SRob Herring}; 216724ba675SRob Herring 217724ba675SRob Herring&pcie2 { 218724ba675SRob Herring /* Marvell 88W8864, 2GHz-only */ 219724ba675SRob Herring status = "okay"; 220724ba675SRob Herring}; 221724ba675SRob Herring 222724ba675SRob Herring&pinctrl { 223724ba675SRob Herring gpio_keys_pins: gpio-keys-pins { 224724ba675SRob Herring /* mpp24: wps, mpp29: reset */ 225724ba675SRob Herring marvell,pins = "mpp24", "mpp29"; 226724ba675SRob Herring marvell,function = "gpio"; 227724ba675SRob Herring }; 228724ba675SRob Herring 229724ba675SRob Herring gpio_leds_pins: gpio-leds-pins { 230724ba675SRob Herring /* mpp54: sata, mpp55: power */ 231724ba675SRob Herring marvell,pins = "mpp54", "mpp55"; 232724ba675SRob Herring marvell,function = "gpio"; 233724ba675SRob Herring }; 234724ba675SRob Herring 235724ba675SRob Herring usb3_1_vbus_pins: usb3_1-vbus-pins { 236724ba675SRob Herring marvell,pins = "mpp50"; 237724ba675SRob Herring marvell,function = "gpio"; 238724ba675SRob Herring }; 239724ba675SRob Herring}; 240724ba675SRob Herring 241724ba675SRob Herring&spi0 { 242724ba675SRob Herring status = "disabled"; 243724ba675SRob Herring}; 244724ba675SRob Herring 245724ba675SRob Herring&uart0 { 246724ba675SRob Herring /* J10: VCC, NC, RX, NC, TX, GND */ 247724ba675SRob Herring status = "okay"; 248724ba675SRob Herring}; 249724ba675SRob Herring 250724ba675SRob Herring&usb0 { 251724ba675SRob Herring /* USB part of the eSATA/USB 2.0 port */ 252724ba675SRob Herring status = "okay"; 253724ba675SRob Herring}; 254724ba675SRob Herring 255724ba675SRob Herring&usb3_1 { 256724ba675SRob Herring status = "okay"; 257724ba675SRob Herring usb-phy = <&usb3_1_phy>; 258724ba675SRob Herring}; 259724ba675SRob Herring 260724ba675SRob Herring&rtc { 261724ba675SRob Herring /* No crystal connected to the internal RTC */ 262724ba675SRob Herring status = "disabled"; 263724ba675SRob Herring}; 264