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