Commit | Line | Data |
---|---|---|
94b0bd36 TP |
1 | /* |
2 | * Copyright (C) 2014 Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | |
3 | * Copyright (C) 2009 Simon Guinot <sguinot@lacie.com> | |
4 | * | |
5 | * This file is licensed under the terms of the GNU General Public | |
6 | * License version 2. This program is licensed "as is" without any | |
7 | * warranty of any kind, whether express or implied. | |
8 | */ | |
9 | ||
10 | /dts-v1/; | |
11 | ||
12 | #include <dt-bindings/gpio/gpio.h> | |
13 | #include <dt-bindings/input/input.h> | |
14 | #include <dt-bindings/interrupt-controller/irq.h> | |
15 | #include "orion5x-mv88f5182.dtsi" | |
16 | ||
17 | / { | |
18 | model = "LaCie d2 Network"; | |
19 | compatible = "lacie,d2-network", "marvell,orion5x-88f5182", "marvell,orion5x"; | |
20 | ||
21 | memory { | |
22 | reg = <0x00000000 0x4000000>; /* 64 MB */ | |
23 | }; | |
24 | ||
25 | chosen { | |
26 | bootargs = "console=ttyS0,115200n8 earlyprintk"; | |
27 | linux,stdout-path = &uart0; | |
28 | }; | |
29 | ||
30 | soc { | |
31 | ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000>, | |
32 | <MBUS_ID(0x09, 0x00) 0 0xf2200000 0x800>, | |
33 | <MBUS_ID(0x01, 0x0f) 0 0xfff80000 0x80000>; | |
34 | }; | |
35 | ||
36 | gpio-keys { | |
37 | compatible = "gpio-keys"; | |
38 | pinctrl-0 = <&pmx_buttons>; | |
39 | pinctrl-names = "default"; | |
40 | #address-cells = <1>; | |
41 | #size-cells = <0>; | |
42 | front_button { | |
43 | label = "Front Push Button"; | |
44 | linux,code = <KEY_POWER>; | |
45 | gpios = <&gpio0 18 GPIO_ACTIVE_HIGH>; | |
46 | }; | |
47 | ||
48 | power_rocker_sw_on { | |
49 | label = "Power rocker switch (on|auto)"; | |
50 | linux,input-type = <5>; /* EV_SW */ | |
51 | linux,code = <1>; /* D2NET_SWITCH_POWER_ON */ | |
52 | gpios = <&gpio0 8 GPIO_ACTIVE_HIGH>; | |
53 | }; | |
54 | ||
55 | power_rocker_sw_off { | |
56 | label = "Power rocker switch (auto|off)"; | |
57 | linux,input-type = <5>; /* EV_SW */ | |
58 | linux,code = <2>; /* D2NET_SWITCH_POWER_OFF */ | |
59 | gpios = <&gpio0 9 GPIO_ACTIVE_HIGH>; | |
60 | }; | |
61 | }; | |
62 | ||
63 | regulators { | |
64 | compatible = "simple-bus"; | |
65 | #address-cells = <1>; | |
66 | #size-cells = <0>; | |
67 | pinctrl-0 = <&pmx_sata0_power &pmx_sata1_power>; | |
68 | pinctrl-names = "default"; | |
69 | ||
70 | sata0_power: regulator@0 { | |
71 | compatible = "regulator-fixed"; | |
72 | reg = <0>; | |
73 | regulator-name = "SATA0 Power"; | |
74 | regulator-min-microvolt = <5000000>; | |
75 | regulator-max-microvolt = <5000000>; | |
76 | enable-active-high; | |
77 | regulator-always-on; | |
78 | regulator-boot-on; | |
79 | gpio = <&gpio0 3 GPIO_ACTIVE_HIGH>; | |
80 | }; | |
81 | ||
82 | sata1_power: regulator@1 { | |
83 | compatible = "regulator-fixed"; | |
84 | reg = <1>; | |
85 | regulator-name = "SATA1 Power"; | |
86 | regulator-min-microvolt = <5000000>; | |
87 | regulator-max-microvolt = <5000000>; | |
88 | enable-active-high; | |
89 | regulator-always-on; | |
90 | regulator-boot-on; | |
91 | gpio = <&gpio0 12 GPIO_ACTIVE_HIGH>; | |
92 | }; | |
93 | }; | |
94 | }; | |
95 | ||
96 | &devbus_bootcs { | |
97 | status = "okay"; | |
98 | ||
99 | devbus,keep-config; | |
100 | ||
101 | /* | |
102 | * Currently the MTD code does not recognize the MX29LV400CBCT | |
103 | * as a bottom-type device. This could cause risks of | |
104 | * accidentally erasing critical flash sectors. We thus define | |
105 | * a single, write-protected partition covering the whole | |
106 | * flash. TODO: once the flash part TOP/BOTTOM detection | |
107 | * issue is sorted out in the MTD code, break this into at | |
108 | * least three partitions: 'u-boot code', 'u-boot environment' | |
109 | * and 'whatever is left'. | |
110 | */ | |
111 | flash@0 { | |
112 | compatible = "cfi-flash"; | |
113 | reg = <0 0x80000>; | |
114 | bank-width = <1>; | |
115 | #address-cells = <1>; | |
116 | #size-cells = <1>; | |
117 | ||
118 | partition@0 { | |
119 | label = "Full512Kb"; | |
120 | reg = <0 0x80000>; | |
121 | read-only; | |
122 | }; | |
123 | }; | |
124 | }; | |
125 | ||
126 | &mdio { | |
127 | status = "okay"; | |
128 | ||
129 | ethphy: ethernet-phy { | |
130 | reg = <8>; | |
131 | }; | |
132 | }; | |
133 | ||
134 | &ehci0 { | |
135 | status = "okay"; | |
136 | }; | |
137 | ||
138 | ð { | |
139 | status = "okay"; | |
140 | ||
141 | ethernet-port@0 { | |
142 | phy-handle = <ðphy>; | |
143 | }; | |
144 | }; | |
145 | ||
146 | &i2c { | |
147 | status = "okay"; | |
148 | clock-frequency = <100000>; | |
149 | #address-cells = <1>; | |
150 | ||
151 | rtc@32 { | |
152 | compatible = "ricoh,rs5c372b"; | |
153 | reg = <0x32>; | |
154 | }; | |
155 | ||
156 | fan@3e { | |
157 | compatible = "gmt,g762"; | |
158 | reg = <0x3e>; | |
159 | ||
160 | /* Not enough HW info */ | |
161 | status = "disabled"; | |
162 | }; | |
163 | ||
164 | eeprom@50 { | |
165 | compatible = "atmel,24c08"; | |
166 | reg = <0x50>; | |
167 | }; | |
168 | }; | |
169 | ||
170 | &pinctrl { | |
171 | pinctrl-0 = <&pmx_leds &pmx_board_id &pmx_fan_fail>; | |
172 | pinctrl-names = "default"; | |
173 | ||
174 | pmx_board_id: pmx-board-id { | |
175 | marvell,pins = "mpp0", "mpp1", "mpp2"; | |
176 | marvell,function = "gpio"; | |
177 | }; | |
178 | ||
179 | pmx_buttons: pmx-buttons { | |
180 | marvell,pins = "mpp8", "mpp9", "mpp18"; | |
181 | marvell,function = "gpio"; | |
182 | }; | |
183 | ||
184 | pmx_fan_fail: pmx-fan-fail { | |
185 | marvell,pins = "mpp5"; | |
186 | marvell,function = "gpio"; | |
187 | }; | |
188 | ||
189 | /* | |
190 | * MPP6: Red front LED | |
191 | * MPP16: Blue front LED blink control | |
192 | */ | |
193 | pmx_leds: pmx-leds { | |
194 | marvell,pins = "mpp6", "mpp16"; | |
195 | marvell,function = "gpio"; | |
196 | }; | |
197 | ||
198 | pmx_sata0_led_active: pmx-sata0-led-active { | |
199 | marvell,pins = "mpp14"; | |
200 | marvell,function = "sata0"; | |
201 | }; | |
202 | ||
203 | pmx_sata0_power: pmx-sata0-power { | |
204 | marvell,pins = "mpp3"; | |
205 | marvell,function = "gpio"; | |
206 | }; | |
207 | ||
208 | pmx_sata1_led_active: pmx-sata1-led-active { | |
209 | marvell,pins = "mpp15"; | |
210 | marvell,function = "sata1"; | |
211 | }; | |
212 | ||
213 | pmx_sata1_power: pmx-sata1-power { | |
214 | marvell,pins = "mpp12"; | |
215 | marvell,function = "gpio"; | |
216 | }; | |
217 | ||
218 | /* | |
219 | * Non MPP GPIOs: | |
220 | * GPIO 22: USB port 1 fuse (0 = Fail, 1 = Ok) | |
221 | * GPIO 23: Blue front LED off | |
222 | * GPIO 24: Inhibit board power off (0 = Disabled, 1 = Enabled) | |
223 | */ | |
224 | }; | |
225 | ||
226 | &sata { | |
227 | pinctrl-0 = <&pmx_sata0_led_active | |
228 | &pmx_sata1_led_active>; | |
229 | pinctrl-names = "default"; | |
230 | status = "okay"; | |
231 | nr-ports = <2>; | |
232 | }; | |
233 | ||
234 | &uart0 { | |
235 | status = "okay"; | |
236 | }; |