1f126890aSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0 2f126890aSEmmanuel Vadot/* 3f126890aSEmmanuel Vadot * Device Tree common file for the Seagate NAS 2 and 4-bay (Armada 370 SoC). 4f126890aSEmmanuel Vadot * 5f126890aSEmmanuel Vadot * Copyright (C) 2015 Seagate 6f126890aSEmmanuel Vadot * 7f126890aSEmmanuel Vadot * Author: Vincent Donnefort <vdonnefort@gmail.com> 8f126890aSEmmanuel Vadot */ 9f126890aSEmmanuel Vadot 10f126890aSEmmanuel Vadot/* 11f126890aSEmmanuel Vadot * TODO: add support for the white SATA LEDs associated with HDD 0 and 1. 12f126890aSEmmanuel Vadot */ 13f126890aSEmmanuel Vadot 14f126890aSEmmanuel Vadot#include "armada-370.dtsi" 15f126890aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h> 16f126890aSEmmanuel Vadot#include <dt-bindings/input/input.h> 17f126890aSEmmanuel Vadot 18f126890aSEmmanuel Vadot/ { 19f126890aSEmmanuel Vadot chosen { 20f126890aSEmmanuel Vadot stdout-path = "serial0:115200n8"; 21f126890aSEmmanuel Vadot }; 22f126890aSEmmanuel Vadot 23f126890aSEmmanuel Vadot memory@0 { 24f126890aSEmmanuel Vadot device_type = "memory"; 25f126890aSEmmanuel Vadot reg = <0x00000000 0x20000000>; /* 512 MB */ 26f126890aSEmmanuel Vadot }; 27f126890aSEmmanuel Vadot 28f126890aSEmmanuel Vadot soc { 29f126890aSEmmanuel Vadot ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 30f126890aSEmmanuel Vadot MBUS_ID(0x01, 0xe0) 0 0xfff00000 0x100000>; 31f126890aSEmmanuel Vadot 32f126890aSEmmanuel Vadot internal-regs { 33f126890aSEmmanuel Vadot serial@12000 { 34f126890aSEmmanuel Vadot status = "okay"; 35f126890aSEmmanuel Vadot }; 36f126890aSEmmanuel Vadot 37f126890aSEmmanuel Vadot sata@a0000 { 38f126890aSEmmanuel Vadot nr-ports = <2>; 39f126890aSEmmanuel Vadot status = "okay"; 40f126890aSEmmanuel Vadot }; 41f126890aSEmmanuel Vadot 42f126890aSEmmanuel Vadot ethernet@70000 { 43f126890aSEmmanuel Vadot status = "okay"; 44f126890aSEmmanuel Vadot pinctrl-0 = <&ge0_rgmii_pins>; 45f126890aSEmmanuel Vadot pinctrl-names = "default"; 46f126890aSEmmanuel Vadot phy = <&phy0>; 47f126890aSEmmanuel Vadot phy-mode = "rgmii-id"; 48f126890aSEmmanuel Vadot }; 49f126890aSEmmanuel Vadot 50f126890aSEmmanuel Vadot i2c@11000 { 51f126890aSEmmanuel Vadot status = "okay"; 52f126890aSEmmanuel Vadot pinctrl-0 = <&i2c0_pins>; 53f126890aSEmmanuel Vadot pinctrl-names = "default"; 54f126890aSEmmanuel Vadot clock-frequency = <100000>; 55f126890aSEmmanuel Vadot 56f126890aSEmmanuel Vadot /* RTC - NXP 8563T (second source) */ 57f126890aSEmmanuel Vadot rtc@51 { 58f126890aSEmmanuel Vadot compatible = "nxp,pcf8563"; 59f126890aSEmmanuel Vadot reg = <0x51>; 60f126890aSEmmanuel Vadot interrupts = <110>; 61f126890aSEmmanuel Vadot }; 62f126890aSEmmanuel Vadot /* RTC - MCP7940NT */ 63f126890aSEmmanuel Vadot rtc@6f { 64f126890aSEmmanuel Vadot compatible = "microchip,mcp7941x"; 65f126890aSEmmanuel Vadot reg = <0x6f>; 66f126890aSEmmanuel Vadot interrupts = <110>; 67f126890aSEmmanuel Vadot }; 68f126890aSEmmanuel Vadot }; 69f126890aSEmmanuel Vadot }; 70f126890aSEmmanuel Vadot 71f126890aSEmmanuel Vadot }; 72f126890aSEmmanuel Vadot 73*aa1a8ff2SEmmanuel Vadot regulator-1 { 74f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 75f126890aSEmmanuel Vadot regulator-name = "SATA0 power"; 76f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 77f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 78f126890aSEmmanuel Vadot enable-active-high; 79f126890aSEmmanuel Vadot regulator-always-on; 80f126890aSEmmanuel Vadot regulator-boot-on; 81f126890aSEmmanuel Vadot gpio = <&gpio1 18 GPIO_ACTIVE_HIGH>; 82f126890aSEmmanuel Vadot }; 83*aa1a8ff2SEmmanuel Vadot 84*aa1a8ff2SEmmanuel Vadot regulator-2 { 85f126890aSEmmanuel Vadot compatible = "regulator-fixed"; 86f126890aSEmmanuel Vadot regulator-name = "SATA1 power"; 87f126890aSEmmanuel Vadot regulator-min-microvolt = <5000000>; 88f126890aSEmmanuel Vadot regulator-max-microvolt = <5000000>; 89f126890aSEmmanuel Vadot enable-active-high; 90f126890aSEmmanuel Vadot regulator-always-on; 91f126890aSEmmanuel Vadot regulator-boot-on; 92f126890aSEmmanuel Vadot gpio = <&gpio1 22 GPIO_ACTIVE_HIGH>; 93f126890aSEmmanuel Vadot }; 94f126890aSEmmanuel Vadot 95f126890aSEmmanuel Vadot gpio-fan { 96f126890aSEmmanuel Vadot compatible = "gpio-fan"; 97f126890aSEmmanuel Vadot gpios = <&gpio2 0 GPIO_ACTIVE_HIGH 98f126890aSEmmanuel Vadot &gpio2 1 GPIO_ACTIVE_HIGH>; 99f126890aSEmmanuel Vadot }; 100f126890aSEmmanuel Vadot 101f126890aSEmmanuel Vadot gpio-keys { 102f126890aSEmmanuel Vadot compatible = "gpio-keys"; 103f126890aSEmmanuel Vadot 104f126890aSEmmanuel Vadot button-power { 105f126890aSEmmanuel Vadot label = "Power button"; 106f126890aSEmmanuel Vadot linux,code = <KEY_POWER>; 107f126890aSEmmanuel Vadot gpios = <&gpio1 19 GPIO_ACTIVE_LOW>; 108f126890aSEmmanuel Vadot debounce-interval = <100>; 109f126890aSEmmanuel Vadot }; 110f126890aSEmmanuel Vadot button-backup { 111f126890aSEmmanuel Vadot label = "Backup button"; 112f126890aSEmmanuel Vadot linux,code = <KEY_OPTION>; 113f126890aSEmmanuel Vadot gpios = <&gpio0 31 GPIO_ACTIVE_LOW>; 114f126890aSEmmanuel Vadot debounce-interval = <100>; 115f126890aSEmmanuel Vadot }; 116f126890aSEmmanuel Vadot button-reset { 117f126890aSEmmanuel Vadot label = "Reset Button"; 118f126890aSEmmanuel Vadot linux,code = <KEY_RESTART>; 119f126890aSEmmanuel Vadot gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; 120f126890aSEmmanuel Vadot debounce-interval = <100>; 121f126890aSEmmanuel Vadot }; 122f126890aSEmmanuel Vadot }; 123f126890aSEmmanuel Vadot 124f126890aSEmmanuel Vadot gpio-leds { 125f126890aSEmmanuel Vadot compatible = "gpio-leds"; 126f126890aSEmmanuel Vadot 127f126890aSEmmanuel Vadot led-white-power { 128f126890aSEmmanuel Vadot label = "dart:white:power"; 129f126890aSEmmanuel Vadot gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; 130f126890aSEmmanuel Vadot linux,default-trigger = "timer"; 131f126890aSEmmanuel Vadot 132f126890aSEmmanuel Vadot }; 133f126890aSEmmanuel Vadot led-red-power { 134f126890aSEmmanuel Vadot label = "dart:red:power"; 135f126890aSEmmanuel Vadot gpios = <&gpio1 31 GPIO_ACTIVE_HIGH>; 136f126890aSEmmanuel Vadot }; 137f126890aSEmmanuel Vadot led-red-sata0 { 138f126890aSEmmanuel Vadot label = "dart:red:sata0"; 139f126890aSEmmanuel Vadot gpios = <&gpio1 15 GPIO_ACTIVE_LOW>; 140f126890aSEmmanuel Vadot }; 141f126890aSEmmanuel Vadot led-red-sata1 { 142f126890aSEmmanuel Vadot label = "dart:red:sata1"; 143f126890aSEmmanuel Vadot gpios = <&gpio1 21 GPIO_ACTIVE_LOW>; 144f126890aSEmmanuel Vadot }; 145f126890aSEmmanuel Vadot }; 146f126890aSEmmanuel Vadot 147f126890aSEmmanuel Vadot gpio_poweroff { 148f126890aSEmmanuel Vadot compatible = "gpio-poweroff"; 149f126890aSEmmanuel Vadot gpios = <&gpio1 30 GPIO_ACTIVE_LOW>; 150f126890aSEmmanuel Vadot }; 151f126890aSEmmanuel Vadot}; 152f126890aSEmmanuel Vadot 153f126890aSEmmanuel Vadot&pciec { 154f126890aSEmmanuel Vadot status = "okay"; 155f126890aSEmmanuel Vadot 156f126890aSEmmanuel Vadot /* USB 3.0 bridge ASM1042A */ 157f126890aSEmmanuel Vadot pcie@2,0 { 158f126890aSEmmanuel Vadot status = "okay"; 159f126890aSEmmanuel Vadot }; 160f126890aSEmmanuel Vadot}; 161f126890aSEmmanuel Vadot 162f126890aSEmmanuel Vadot 163f126890aSEmmanuel Vadot&mdio { 164f126890aSEmmanuel Vadot pinctrl-0 = <&mdio_pins>; 165f126890aSEmmanuel Vadot pinctrl-names = "default"; 166f126890aSEmmanuel Vadot 167f126890aSEmmanuel Vadot phy0: ethernet-phy@0 { 168f126890aSEmmanuel Vadot reg = <0>; 169f126890aSEmmanuel Vadot }; 170f126890aSEmmanuel Vadot}; 171f126890aSEmmanuel Vadot 172f126890aSEmmanuel Vadot&pinctrl { 173f126890aSEmmanuel Vadot pinctrl-0 = <&hdd0_led_sata_pin>, <&hdd1_led_sata_pin>; 174f126890aSEmmanuel Vadot pinctrl-names = "default"; 175f126890aSEmmanuel Vadot 176f126890aSEmmanuel Vadot hdd0_led_sata_pin: hdd0-led-sata-pin { 177f126890aSEmmanuel Vadot marvell,pins = "mpp48"; 178f126890aSEmmanuel Vadot marvell,function = "sata1"; 179f126890aSEmmanuel Vadot }; 180f126890aSEmmanuel Vadot hdd0_led_gpio_pin: hdd0-led-gpio-pin { 181f126890aSEmmanuel Vadot marvell,pins = "mpp48"; 182f126890aSEmmanuel Vadot marvell,function = "gpio"; 183f126890aSEmmanuel Vadot }; 184f126890aSEmmanuel Vadot hdd1_led_sata_pin: hdd1-led-sata-pin { 185f126890aSEmmanuel Vadot marvell,pins = "mpp57"; 186f126890aSEmmanuel Vadot marvell,function = "sata0"; 187f126890aSEmmanuel Vadot }; 188f126890aSEmmanuel Vadot hdd1_led_gpio_pin: hdd1-led-gpio-pin { 189f126890aSEmmanuel Vadot marvell,pins = "mpp57"; 190f126890aSEmmanuel Vadot marvell,function = "gpio"; 191f126890aSEmmanuel Vadot }; 192f126890aSEmmanuel Vadot}; 193f126890aSEmmanuel Vadot 194f126890aSEmmanuel Vadot&nand_controller { 195f126890aSEmmanuel Vadot status = "okay"; 196f126890aSEmmanuel Vadot 197f126890aSEmmanuel Vadot nand@0 { 198f126890aSEmmanuel Vadot reg = <0>; 199f126890aSEmmanuel Vadot label = "pxa3xx_nand-0"; 200f126890aSEmmanuel Vadot nand-rb = <0>; 201f126890aSEmmanuel Vadot marvell,nand-keep-config; 202f126890aSEmmanuel Vadot nand-on-flash-bbt; 203f126890aSEmmanuel Vadot nand-ecc-strength = <4>; 204f126890aSEmmanuel Vadot nand-ecc-step-size = <512>; 205f126890aSEmmanuel Vadot 206f126890aSEmmanuel Vadot partitions { 207f126890aSEmmanuel Vadot compatible = "fixed-partitions"; 208f126890aSEmmanuel Vadot #address-cells = <1>; 209f126890aSEmmanuel Vadot #size-cells = <1>; 210f126890aSEmmanuel Vadot 211f126890aSEmmanuel Vadot partition@0 { 212f126890aSEmmanuel Vadot label = "u-boot"; 213f126890aSEmmanuel Vadot reg = <0x0 0x300000>; 214f126890aSEmmanuel Vadot }; 215f126890aSEmmanuel Vadot partition@300000 { 216f126890aSEmmanuel Vadot label = "device-tree"; 217f126890aSEmmanuel Vadot reg = <0x300000 0x20000>; 218f126890aSEmmanuel Vadot }; 219f126890aSEmmanuel Vadot partition@320000 { 220f126890aSEmmanuel Vadot label = "linux"; 221f126890aSEmmanuel Vadot reg = <0x320000 0x2000000>; 222f126890aSEmmanuel Vadot }; 223f126890aSEmmanuel Vadot partition@2320000 { 224f126890aSEmmanuel Vadot label = "rootfs"; 225f126890aSEmmanuel Vadot reg = <0x2320000 0xdce0000>; 226f126890aSEmmanuel Vadot }; 227f126890aSEmmanuel Vadot }; 228f126890aSEmmanuel Vadot }; 229f126890aSEmmanuel Vadot}; 230