Merge git://git.kvack.org/~bcrl/aio-next
[firefly-linux-kernel-4.4.55.git] / arch / arm / boot / dts / armada-xp-openblocks-ax3-4.dts
1 /*
2  * Device Tree file for OpenBlocks AX3-4 board
3  *
4  * Copyright (C) 2012 Marvell
5  *
6  * Thomas Petazzoni <thomas.petazzoni@free-electrons.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 /dts-v1/;
14 #include <dt-bindings/gpio/gpio.h>
15 #include <dt-bindings/input/input.h>
16 #include "armada-xp-mv78260.dtsi"
17
18 / {
19         model = "PlatHome OpenBlocks AX3-4 board";
20         compatible = "plathome,openblocks-ax3-4", "marvell,armadaxp-mv78260", "marvell,armadaxp", "marvell,armada-370-xp";
21
22         chosen {
23                 bootargs = "console=ttyS0,115200 earlyprintk";
24         };
25
26         memory {
27                 device_type = "memory";
28                 reg = <0 0x00000000 0 0x40000000>; /* 1 GB soldered on */
29         };
30
31         soc {
32                 ranges = <MBUS_ID(0xf0, 0x01) 0 0 0xd0000000 0x100000
33                           MBUS_ID(0x01, 0x1d) 0 0 0xfff00000 0x100000
34                           MBUS_ID(0x01, 0x2f) 0 0 0xf0000000 0x8000000>;
35
36                 devbus-bootcs {
37                         status = "okay";
38
39                         /* Device Bus parameters are required */
40
41                         /* Read parameters */
42                         devbus,bus-width    = <16>;
43                         devbus,turn-off-ps  = <60000>;
44                         devbus,badr-skew-ps = <0>;
45                         devbus,acc-first-ps = <124000>;
46                         devbus,acc-next-ps  = <248000>;
47                         devbus,rd-setup-ps  = <0>;
48                         devbus,rd-hold-ps   = <0>;
49
50                         /* Write parameters */
51                         devbus,sync-enable = <0>;
52                         devbus,wr-high-ps  = <60000>;
53                         devbus,wr-low-ps   = <60000>;
54                         devbus,ale-wr-ps   = <60000>;
55
56                         /* NOR 128 MiB */
57                         nor@0 {
58                                 compatible = "cfi-flash";
59                                 reg = <0 0x8000000>;
60                                 bank-width = <2>;
61                         };
62                 };
63
64                 pcie-controller {
65                         status = "okay";
66                         /* Internal mini-PCIe connector */
67                         pcie@1,0 {
68                                 /* Port 0, Lane 0 */
69                                 status = "okay";
70                         };
71                 };
72
73                 internal-regs {
74                         serial@12000 {
75                                 status = "okay";
76                         };
77                         serial@12100 {
78                                 status = "okay";
79                         };
80                         pinctrl {
81                                 led_pins: led-pins-0 {
82                                         marvell,pins = "mpp49", "mpp51", "mpp53";
83                                         marvell,function = "gpio";
84                                 };
85                         };
86                         leds {
87                                 compatible = "gpio-leds";
88                                 pinctrl-names = "default";
89                                 pinctrl-0 = <&led_pins>;
90
91                                 red_led {
92                                         label = "red_led";
93                                         gpios = <&gpio1 17 GPIO_ACTIVE_LOW>;
94                                         default-state = "off";
95                                 };
96
97                                 yellow_led {
98                                         label = "yellow_led";
99                                         gpios = <&gpio1 19 GPIO_ACTIVE_LOW>;
100                                         default-state = "off";
101                                 };
102
103                                 green_led {
104                                         label = "green_led";
105                                         gpios = <&gpio1 21 GPIO_ACTIVE_LOW>;
106                                         default-state = "keep";
107                                 };
108                         };
109
110                         gpio_keys {
111                                 compatible = "gpio-keys";
112                                 #address-cells = <1>;
113                                 #size-cells = <0>;
114
115                                 button@1 {
116                                         label = "Init Button";
117                                         linux,code = <KEY_POWER>;
118                                         gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>;
119                                 };
120                         };
121
122                         mdio {
123                                 phy0: ethernet-phy@0 {
124                                         reg = <0>;
125                                 };
126
127                                 phy1: ethernet-phy@1 {
128                                         reg = <1>;
129                                 };
130
131                                 phy2: ethernet-phy@2 {
132                                         reg = <2>;
133                                 };
134
135                                 phy3: ethernet-phy@3 {
136                                         reg = <3>;
137                                 };
138                         };
139
140                         ethernet@70000 {
141                                 status = "okay";
142                                 phy = <&phy0>;
143                                 phy-mode = "sgmii";
144                         };
145                         ethernet@74000 {
146                                 status = "okay";
147                                 phy = <&phy1>;
148                                 phy-mode = "sgmii";
149                         };
150                         ethernet@30000 {
151                                 status = "okay";
152                                 phy = <&phy2>;
153                                 phy-mode = "sgmii";
154                         };
155                         ethernet@34000 {
156                                 status = "okay";
157                                 phy = <&phy3>;
158                                 phy-mode = "sgmii";
159                         };
160                         i2c@11000 {
161                                 status = "okay";
162                                 clock-frequency = <400000>;
163                         };
164                         i2c@11100 {
165                                 status = "okay";
166                                 clock-frequency = <400000>;
167
168                                 s35390a: s35390a@30 {
169                                         compatible = "s35390a";
170                                         reg = <0x30>;
171                                 };
172                         };
173                         sata@a0000 {
174                                 nr-ports = <2>;
175                                 status = "okay";
176                         };
177
178                         /* Front side USB 0 */
179                         usb@50000 {
180                                 status = "okay";
181                         };
182
183                         /* Front side USB 1 */
184                         usb@51000 {
185                                 status = "okay";
186                         };
187                 };
188         };
189 };