GNU Linux-libre 4.14.251-gnu1
[releases.git] / arch / arm / boot / dts / armada-370-seagate-nas-4bay.dts
1 /*
2  * Device Tree file for Seagate NAS 4-Bay (Armada 370 SoC).
3  *
4  * Copyright (C) 2015 Seagate
5  *
6  * Author: Vincent Donnefort <vdonnefort@gmail.com>
7  *
8  * This file is licensed under the terms of the GNU General Public
9  * License version 2.  This program is licensed "as is" without any
10  * warranty of any kind, whether express or implied.
11  */
12
13 /*
14  * Here are some information allowing to identify the device:
15  *
16  * Product name                 : Seagate NAS 4-Bay
17  * Code name (board/PCB)        : Dart 4-Bay
18  * Model name (case sticker)    : SRPD40
19  * Material desc (product spec) : STCUxxxxxxx
20  */
21
22 /dts-v1/;
23 #include "armada-370-seagate-nas-xbay.dtsi"
24 #include <dt-bindings/leds/leds-ns2.h>
25
26 / {
27         model = "Seagate NAS 4-Bay (Dart, SRPD40)";
28         compatible = "seagate,dart-4", "marvell,armada370", "marvell,armada-370-xp";
29
30         soc {
31                 internal-regs {
32                         ethernet@74000 {
33                                 status = "okay";
34                                 pinctrl-0 = <&ge1_rgmii_pins>;
35                                 pinctrl-names = "default";
36                                 phy = <&phy1>;
37                                 phy-mode = "rgmii-id";
38                         };
39
40                         i2c@11000 {
41                                 /* I2C GPIO expander (PCA9554A) */
42                                 pca9554: pca9554@21 {
43                                         compatible = "nxp,pca9554";
44                                         reg = <0x21>;
45                                         #gpio-cells = <2>;
46                                         gpio-controller;
47                                 };
48                         };
49                 };
50         };
51
52         regulators {
53                 regulator@3 {
54                         compatible = "regulator-fixed";
55                         reg = <3>;
56                         regulator-name = "SATA2 power";
57                         regulator-min-microvolt = <5000000>;
58                         regulator-max-microvolt = <5000000>;
59                         enable-active-high;
60                         regulator-always-on;
61                         regulator-boot-on;
62                         gpio = <&pca9554 6 GPIO_ACTIVE_HIGH>;
63                 };
64                 regulator@4 {
65                         compatible = "regulator-fixed";
66                         reg = <4>;
67                         regulator-name = "SATA3 power";
68                         regulator-min-microvolt = <5000000>;
69                         regulator-max-microvolt = <5000000>;
70                         enable-active-high;
71                         regulator-always-on;
72                         regulator-boot-on;
73                         gpio = <&pca9554 7 GPIO_ACTIVE_HIGH>;
74                 };
75         };
76
77         gpio-leds {
78                 red-sata2 {
79                         label = "dart:red:sata2";
80                         gpios = <&pca9554 0 GPIO_ACTIVE_LOW>;
81                 };
82                 red-sata3 {
83                         label = "dart:red:sata3";
84                         gpios = <&pca9554 3 GPIO_ACTIVE_LOW>;
85                 };
86         };
87
88         leds-ns2 {
89                 compatible = "lacie,ns2-leds";
90
91                 white-sata2 {
92                         label = "dart:white:sata2";
93                         cmd-gpio = <&pca9554 1 GPIO_ACTIVE_HIGH>;
94                         slow-gpio = <&pca9554 2 GPIO_ACTIVE_HIGH>;
95                         num-modes = <4>;
96                         modes-map = <NS_V2_LED_SATA 0 0
97                                      NS_V2_LED_OFF  0 1
98                                      NS_V2_LED_ON   1 0
99                                      NS_V2_LED_ON   1 1>;
100                 };
101                 white-sata3 {
102                         label = "dart:white:sata3";
103                         cmd-gpio = <&pca9554 4 GPIO_ACTIVE_HIGH>;
104                         slow-gpio = <&pca9554 5 GPIO_ACTIVE_HIGH>;
105                         num-modes = <4>;
106                         modes-map = <NS_V2_LED_SATA 0 0
107                                      NS_V2_LED_OFF  0 1
108                                      NS_V2_LED_ON   1 0
109                                      NS_V2_LED_ON   1 1>;
110                 };
111         };
112
113         gpio-fan {
114                 gpio-fan,speed-map =
115                         <   0 3
116                           800 2
117                           1050 1
118                           1300 0>;
119         };
120 };
121
122 &pciec {
123         /* SATA AHCI controller 88SE9170 */
124         pcie@1,0 {
125                 status = "okay";
126         };
127 };
128
129 &mdio {
130         phy1: ethernet-phy@1 {
131                 reg = <1>;
132         };
133 };
134