1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0 2724ba675SRob Herring/* 3724ba675SRob Herring * Device Tree common file for the Seagate NAS 2 and 4-bay (Armada 370 SoC). 4724ba675SRob Herring * 5724ba675SRob Herring * Copyright (C) 2015 Seagate 6724ba675SRob Herring * 7724ba675SRob Herring * Author: Vincent Donnefort <vdonnefort@gmail.com> 8724ba675SRob Herring */ 9724ba675SRob Herring 10724ba675SRob Herring/* 11724ba675SRob Herring * TODO: add support for the white SATA LEDs associated with HDD 0 and 1. 12724ba675SRob Herring */ 13724ba675SRob Herring 14724ba675SRob Herring#include "armada-370.dtsi" 15724ba675SRob Herring#include <dt-bindings/gpio/gpio.h> 16724ba675SRob Herring#include <dt-bindings/input/input.h> 17724ba675SRob Herring 18724ba675SRob Herring/ { 19724ba675SRob Herring chosen { 20724ba675SRob Herring stdout-path = "serial0:115200n8"; 21724ba675SRob Herring }; 22724ba675SRob Herring 23724ba675SRob Herring memory@0 { 24724ba675SRob Herring device_type = "memory"; 25724ba675SRob Herring reg = <0x00000000 0x20000000>; /* 512 MB */ 26724ba675SRob Herring }; 27724ba675SRob Herring 28724ba675SRob Herring soc { 29724ba675SRob Herring ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 30724ba675SRob Herring MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>; 31724ba675SRob Herring 32724ba675SRob Herring internal-regs { 33724ba675SRob Herring serial@12000 { 34724ba675SRob Herring status = "okay"; 35724ba675SRob Herring }; 36724ba675SRob Herring 37724ba675SRob Herring sata@a0000 { 38724ba675SRob Herring nr-ports = <2>; 39724ba675SRob Herring status = "okay"; 40724ba675SRob Herring }; 41724ba675SRob Herring 42724ba675SRob Herring ethernet@70000 { 43724ba675SRob Herring status = "okay"; 44724ba675SRob Herring pinctrl-0 = <&ge0_rgmii_pins>; 45724ba675SRob Herring pinctrl-names = "default"; 46724ba675SRob Herring phy = <&phy0>; 47724ba675SRob Herring phy-mode = "rgmii-id"; 48724ba675SRob Herring }; 49724ba675SRob Herring 50724ba675SRob Herring i2c@11000 { 51724ba675SRob Herring status = "okay"; 52724ba675SRob Herring pinctrl-0 = <&i2c0_pins>; 53724ba675SRob Herring pinctrl-names = "default"; 54724ba675SRob Herring clock-frequency = <100000>; 55724ba675SRob Herring 56724ba675SRob Herring /* RTC - NXP 8563T (second source) */ 57724ba675SRob Herring rtc@51 { 58724ba675SRob Herring compatible = "nxp,pcf8563"; 59724ba675SRob Herring reg = <0x51>; 60724ba675SRob Herring interrupts = <110>; 61724ba675SRob Herring }; 62724ba675SRob Herring /* RTC - MCP7940NT */ 63724ba675SRob Herring rtc@6f { 64724ba675SRob Herring compatible = "microchip,mcp7941x"; 65724ba675SRob Herring reg = <0x6f>; 66724ba675SRob Herring interrupts = <110>; 67724ba675SRob Herring }; 68724ba675SRob Herring }; 69724ba675SRob Herring }; 70724ba675SRob Herring 71724ba675SRob Herring }; 72724ba675SRob Herring 73*afa6b4f3SKrzysztof Kozlowski regulator-1 { 74724ba675SRob Herring compatible = "regulator-fixed"; 75724ba675SRob Herring regulator-name = "SATA0 power"; 76724ba675SRob Herring regulator-min-microvolt = <5000000>; 77724ba675SRob Herring regulator-max-microvolt = <5000000>; 78724ba675SRob Herring enable-active-high; 79724ba675SRob Herring regulator-always-on; 80724ba675SRob Herring regulator-boot-on; 81724ba675SRob Herring gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>; 82724ba675SRob Herring }; 83*afa6b4f3SKrzysztof Kozlowski 84*afa6b4f3SKrzysztof Kozlowski regulator-2 { 85724ba675SRob Herring compatible = "regulator-fixed"; 86724ba675SRob Herring regulator-name = "SATA1 power"; 87724ba675SRob Herring regulator-min-microvolt = <5000000>; 88724ba675SRob Herring regulator-max-microvolt = <5000000>; 89724ba675SRob Herring enable-active-high; 90724ba675SRob Herring regulator-always-on; 91724ba675SRob Herring regulator-boot-on; 92724ba675SRob Herring gpio = <&gpio1 22 GPIO_ACTIVE_HIGH>; 93724ba675SRob Herring }; 94724ba675SRob Herring 95724ba675SRob Herring gpio-fan { 96724ba675SRob Herring compatible = "gpio-fan"; 97724ba675SRob Herring gpios = <&gpio2 0 GPIO_ACTIVE_HIGH 98724ba675SRob Herring &gpio2 1 GPIO_ACTIVE_HIGH>; 99724ba675SRob Herring }; 100724ba675SRob Herring 101724ba675SRob Herring gpio-keys { 102724ba675SRob Herring compatible = "gpio-keys"; 103724ba675SRob Herring 104724ba675SRob Herring button-power { 105724ba675SRob Herring label = "Power button"; 106724ba675SRob Herring linux,code = <KEY_POWER>; 107724ba675SRob Herring gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; 108724ba675SRob Herring debounce-interval = <100>; 109724ba675SRob Herring }; 110724ba675SRob Herring button-backup { 111724ba675SRob Herring label = "Backup button"; 112724ba675SRob Herring linux,code = <KEY_OPTION>; 113724ba675SRob Herring gpios = <&gpio0 31 GPIO_ACTIVE_LOW>; 114724ba675SRob Herring debounce-interval = <100>; 115724ba675SRob Herring }; 116724ba675SRob Herring button-reset { 117724ba675SRob Herring label = "Reset Button"; 118724ba675SRob Herring linux,code = <KEY_RESTART>; 119724ba675SRob Herring gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; 120724ba675SRob Herring debounce-interval = <100>; 121724ba675SRob Herring }; 122724ba675SRob Herring }; 123724ba675SRob Herring 124724ba675SRob Herring gpio-leds { 125724ba675SRob Herring compatible = "gpio-leds"; 126724ba675SRob Herring 127724ba675SRob Herring led-white-power { 128724ba675SRob Herring label = "dart:white:power"; 129724ba675SRob Herring gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; 130724ba675SRob Herring linux,default-trigger = "timer"; 131724ba675SRob Herring 132724ba675SRob Herring }; 133724ba675SRob Herring led-red-power { 134724ba675SRob Herring label = "dart:red:power"; 135724ba675SRob Herring gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>; 136724ba675SRob Herring }; 137724ba675SRob Herring led-red-sata0 { 138724ba675SRob Herring label = "dart:red:sata0"; 139724ba675SRob Herring gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 140724ba675SRob Herring }; 141724ba675SRob Herring led-red-sata1 { 142724ba675SRob Herring label = "dart:red:sata1"; 143724ba675SRob Herring gpios = <&gpio1 21 GPIO_ACTIVE_LOW>; 144724ba675SRob Herring }; 145724ba675SRob Herring }; 146724ba675SRob Herring 147724ba675SRob Herring gpio_poweroff { 148724ba675SRob Herring compatible = "gpio-poweroff"; 149724ba675SRob Herring gpios = <&gpio1 30 GPIO_ACTIVE_LOW>; 150724ba675SRob Herring }; 151724ba675SRob Herring}; 152724ba675SRob Herring 153724ba675SRob Herring&pciec { 154724ba675SRob Herring status = "okay"; 155724ba675SRob Herring 156724ba675SRob Herring /* USB 3.0 bridge ASM1042A */ 157724ba675SRob Herring pcie@2,0 { 158724ba675SRob Herring status = "okay"; 159724ba675SRob Herring }; 160724ba675SRob Herring}; 161724ba675SRob Herring 162724ba675SRob Herring 163724ba675SRob Herring&mdio { 164724ba675SRob Herring pinctrl-0 = <&mdio_pins>; 165724ba675SRob Herring pinctrl-names = "default"; 166724ba675SRob Herring 167724ba675SRob Herring phy0: ethernet-phy@0 { 168724ba675SRob Herring reg = <0>; 169724ba675SRob Herring }; 170724ba675SRob Herring}; 171724ba675SRob Herring 172724ba675SRob Herring&pinctrl { 173724ba675SRob Herring pinctrl-0 = <&hdd0_led_sata_pin>, <&hdd1_led_sata_pin>; 174724ba675SRob Herring pinctrl-names = "default"; 175724ba675SRob Herring 176724ba675SRob Herring hdd0_led_sata_pin: hdd0-led-sata-pin { 177724ba675SRob Herring marvell,pins = "mpp48"; 178724ba675SRob Herring marvell,function = "sata1"; 179724ba675SRob Herring }; 180724ba675SRob Herring hdd0_led_gpio_pin: hdd0-led-gpio-pin { 181724ba675SRob Herring marvell,pins = "mpp48"; 182724ba675SRob Herring marvell,function = "gpio"; 183724ba675SRob Herring }; 184724ba675SRob Herring hdd1_led_sata_pin: hdd1-led-sata-pin { 185724ba675SRob Herring marvell,pins = "mpp57"; 186724ba675SRob Herring marvell,function = "sata0"; 187724ba675SRob Herring }; 188724ba675SRob Herring hdd1_led_gpio_pin: hdd1-led-gpio-pin { 189724ba675SRob Herring marvell,pins = "mpp57"; 190724ba675SRob Herring marvell,function = "gpio"; 191724ba675SRob Herring }; 192724ba675SRob Herring}; 193724ba675SRob Herring 194724ba675SRob Herring&nand_controller { 195724ba675SRob Herring status = "okay"; 196724ba675SRob Herring 197724ba675SRob Herring nand@0 { 198724ba675SRob Herring reg = <0>; 199724ba675SRob Herring label = "pxa3xx_nand-0"; 200724ba675SRob Herring nand-rb = <0>; 201724ba675SRob Herring marvell,nand-keep-config; 202724ba675SRob Herring nand-on-flash-bbt; 203724ba675SRob Herring nand-ecc-strength = <4>; 204724ba675SRob Herring nand-ecc-step-size = <512>; 205724ba675SRob Herring 206724ba675SRob Herring partitions { 207724ba675SRob Herring compatible = "fixed-partitions"; 208724ba675SRob Herring #address-cells = <1>; 209724ba675SRob Herring #size-cells = <1>; 210724ba675SRob Herring 211724ba675SRob Herring partition@0 { 212724ba675SRob Herring label = "u-boot"; 213724ba675SRob Herring reg = <0x0 0x300000>; 214724ba675SRob Herring }; 215724ba675SRob Herring partition@300000 { 216724ba675SRob Herring label = "device-tree"; 217724ba675SRob Herring reg = <0x300000 0x20000>; 218724ba675SRob Herring }; 219724ba675SRob Herring partition@320000 { 220724ba675SRob Herring label = "linux"; 221724ba675SRob Herring reg = <0x320000 0x2000000>; 222724ba675SRob Herring }; 223724ba675SRob Herring partition@2320000 { 224724ba675SRob Herring label = "rootfs"; 225724ba675SRob Herring reg = <0x2320000 0xdce0000>; 226724ba675SRob Herring }; 227724ba675SRob Herring }; 228724ba675SRob Herring }; 229724ba675SRob Herring}; 230