Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0 OR MIT)
0002 /*
0003  * Device Tree include file for Armada 385 based Linksys boards
0004  *
0005  * Copyright (C) 2015 Imre Kaloz <kaloz@openwrt.org>
0006  */
0007 
0008 #include <dt-bindings/gpio/gpio.h>
0009 #include <dt-bindings/input/input.h>
0010 #include "armada-385.dtsi"
0011 
0012 / {
0013         model = "Linksys boards based on Armada 385";
0014         compatible = "linksys,armada385", "marvell,armada385",
0015                      "marvell,armada380";
0016 
0017         chosen {
0018                 stdout-path = "serial0:115200n8";
0019         };
0020 
0021         memory {
0022                 device_type = "memory";
0023                 reg = <0x00000000 0x20000000>; /* 512 MiB */
0024         };
0025 
0026         soc {
0027                 ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000
0028                           MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000
0029                           MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000
0030                           MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000
0031                           MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>;
0032         };
0033 
0034         usb3_1_phy: usb3_1-phy {
0035                 compatible = "usb-nop-xceiv";
0036                 vcc-supply = <&usb3_1_vbus>;
0037                 #phy-cells = <0>;
0038         };
0039 
0040         usb3_1_vbus: usb3_1-vbus {
0041                 compatible = "regulator-fixed";
0042                 pinctrl-names = "default";
0043                 pinctrl-0 = <&usb3_1_vbus_pins>;
0044                 regulator-name = "usb3_1-vbus";
0045                 regulator-min-microvolt = <5000000>;
0046                 regulator-max-microvolt = <5000000>;
0047                 enable-active-high;
0048                 gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>;
0049         };
0050 
0051         gpio_keys: gpio-keys {
0052                 compatible = "gpio-keys";
0053                 pinctrl-0 = <&gpio_keys_pins>;
0054                 pinctrl-names = "default";
0055 
0056                 button-wps {
0057                         label = "WPS";
0058                         linux,code = <KEY_WPS_BUTTON>;
0059                         gpios = <&gpio0 24 GPIO_ACTIVE_LOW>;
0060                 };
0061 
0062                 button-reset {
0063                         label = "Factory Reset Button";
0064                         linux,code = <KEY_RESTART>;
0065                         gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
0066                 };
0067         };
0068 
0069         gpio_leds: gpio-leds {
0070                 compatible = "gpio-leds";
0071                 pinctrl-0 = <&gpio_leds_pins>;
0072                 pinctrl-names = "default";
0073 
0074                 power {
0075                         gpios = <&gpio1 23 GPIO_ACTIVE_HIGH>;
0076                         default-state = "on";
0077                 };
0078 
0079                 sata {
0080                         gpios = <&gpio1 22 GPIO_ACTIVE_LOW>;
0081                         default-state = "off";
0082                         linux,default-trigger = "disk-activity";
0083                 };
0084         };
0085 };
0086 
0087 &ahci0 {
0088         status = "okay";
0089 };
0090 
0091 &bm {
0092         status = "okay";
0093 };
0094 
0095 &bm_bppi {
0096         status = "okay";
0097 };
0098 
0099 &eth0 {
0100         status = "okay";
0101         phy-mode = "rgmii-id";
0102         buffer-manager = <&bm>;
0103         bm,pool-long = <0>;
0104         bm,pool-short = <1>;
0105         fixed-link {
0106                 speed = <1000>;
0107                 full-duplex;
0108         };
0109 };
0110 
0111 &eth2 {
0112         status = "okay";
0113         phy-mode = "sgmii";
0114         buffer-manager = <&bm>;
0115         bm,pool-long = <2>;
0116         bm,pool-short = <3>;
0117         fixed-link {
0118                 speed = <1000>;
0119                 full-duplex;
0120         };
0121 };
0122 
0123 &i2c0 {
0124         pinctrl-names = "default";
0125         pinctrl-0 = <&i2c0_pins>;
0126         status = "okay";
0127 
0128         tmp421@4c {
0129                 compatible = "ti,tmp421";
0130                 reg = <0x4c>;
0131         };
0132 
0133         expander0: pca9635@68 {
0134                 #address-cells = <1>;
0135                 #size-cells = <0>;
0136                 compatible = "nxp,pca9635";
0137                 reg = <0x68>;
0138         };
0139 };
0140 
0141 &nand_controller {
0142         /* 128MiB or 256MiB */
0143         status = "okay";
0144         #address-cells = <1>;
0145         #size-cells = <0>;
0146 
0147         nand: nand@0 {
0148                 reg = <0>;
0149                 label = "pxa3xx_nand-0";
0150                 nand-rb = <0>;
0151                 nand-ecc-strength = <4>;
0152                 nand-ecc-step-size = <512>;
0153                 marvell,nand-keep-config;
0154                 nand-on-flash-bbt;
0155         };
0156 };
0157 
0158 &mdio {
0159         status = "okay";
0160 
0161         switch@0 {
0162                 compatible = "marvell,mv88e6085";
0163                 #address-cells = <1>;
0164                 #size-cells = <0>;
0165                 reg = <0>;
0166 
0167                 ports {
0168                         #address-cells = <1>;
0169                         #size-cells = <0>;
0170 
0171                         port@0 {
0172                                 reg = <0>;
0173                                 label = "lan4";
0174                         };
0175 
0176                         port@1 {
0177                                 reg = <1>;
0178                                 label = "lan3";
0179                         };
0180 
0181                         port@2 {
0182                                 reg = <2>;
0183                                 label = "lan2";
0184                         };
0185 
0186                         port@3 {
0187                                 reg = <3>;
0188                                 label = "lan1";
0189                         };
0190 
0191                         port@4 {
0192                                 reg = <4>;
0193                                 label = "wan";
0194                         };
0195 
0196                         port@5 {
0197                                 reg = <5>;
0198                                 label = "cpu";
0199                                 ethernet = <&eth2>;
0200 
0201                                 fixed-link {
0202                                         speed = <1000>;
0203                                         full-duplex;
0204                                 };
0205                         };
0206                 };
0207         };
0208 };
0209 
0210 &pciec {
0211         status = "okay";
0212 };
0213 
0214 &pcie1 {
0215         /* Marvell 88W8864, 5GHz-only */
0216         status = "okay";
0217 };
0218 
0219 &pcie2 {
0220         /* Marvell 88W8864, 2GHz-only */
0221         status = "okay";
0222 };
0223 
0224 &pinctrl {
0225         gpio_keys_pins: gpio-keys-pins {
0226                 /* mpp24: wps, mpp29: reset */
0227                 marvell,pins = "mpp24", "mpp29";
0228                 marvell,function = "gpio";
0229         };
0230 
0231         gpio_leds_pins: gpio-leds-pins {
0232                 /* mpp54: sata, mpp55: power */
0233                 marvell,pins = "mpp54", "mpp55";
0234                 marvell,function = "gpio";
0235         };
0236 
0237         usb3_1_vbus_pins: usb3_1-vbus-pins {
0238                 marvell,pins = "mpp50";
0239                 marvell,function = "gpio";
0240         };
0241 };
0242 
0243 &spi0 {
0244         status = "disabled";
0245 };
0246 
0247 &uart0 {
0248         /* J10: VCC, NC, RX, NC, TX, GND  */
0249         status = "okay";
0250 };
0251 
0252 &usb0 {
0253         /* USB part of the eSATA/USB 2.0 port */
0254         status = "okay";
0255 };
0256 
0257 &usb3_1 {
0258         status = "okay";
0259         usb-phy = <&usb3_1_phy>;
0260 };
0261 
0262 &rtc {
0263         /* No crystal connected to the internal RTC */
0264         status = "disabled";
0265 };