• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Device Tree file for NETGEAR ReadyNAS Duo v2
3 *
4 * Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org>
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version
9 * 2 of the License, or (at your option) any later version.
10 */
11
12/dts-v1/;
13
14#include "kirkwood.dtsi"
15#include "kirkwood-6282.dtsi"
16
17/ {
18	model = "NETGEAR ReadyNAS Duo v2";
19	compatible = "netgear,readynas-duo-v2", "netgear,readynas", "marvell,kirkwood-88f6282", "marvell,kirkwood";
20
21	memory { /* 256 MB */
22		device_type = "memory";
23		reg = <0x00000000 0x10000000>;
24	};
25
26	chosen {
27		bootargs = "console=ttyS0,115200n8 earlyprintk";
28		stdout-path = &uart0;
29	};
30
31	ocp@f1000000 {
32		pinctrl: pin-controller@10000 {
33			pmx_button_power: pmx-button-power {
34				marvell,pins = "mpp47";
35				marvell,function = "gpio";
36			};
37
38			pmx_button_backup: pmx-button-backup {
39				marvell,pins = "mpp45";
40				marvell,function = "gpio";
41			};
42
43			pmx_button_reset: pmx-button-reset {
44				marvell,pins = "mpp13";
45				marvell,function = "gpio";
46			};
47
48			pmx_led_blue_power: pmx-led-blue-power {
49				marvell,pins = "mpp31";
50				marvell,function = "gpio";
51			};
52
53			pmx_led_blue_activity: pmx-led-blue-activity {
54				marvell,pins = "mpp38";
55				marvell,function = "gpio";
56			};
57
58			pmx_led_blue_disk1: pmx-led-blue-disk1 {
59				marvell,pins = "mpp23";
60				marvell,function = "gpio";
61			};
62
63			pmx_led_blue_disk2: pmx-led-blue-disk2 {
64				marvell,pins = "mpp22";
65				marvell,function = "gpio";
66			};
67
68			pmx_led_blue_backup: pmx-led-blue-backup {
69				marvell,pins = "mpp29";
70				marvell,function = "gpio";
71			};
72
73			pmx_poweroff: pmx-poweroff {
74				marvell,pins = "mpp30";
75				marvell,function = "gpio";
76			};
77		};
78
79		clocks {
80		       g762_clk: g762-oscillator {
81				 compatible = "fixed-clock";
82				 #clock-cells = <0>;
83				 clock-frequency = <8192>;
84		       };
85		};
86
87		i2c@11000 {
88			status = "okay";
89
90			rs5c372a: rs5c372a@32 {
91				compatible = "ricoh,rs5c372a";
92				reg = <0x32>;
93			};
94
95			g762: g762@3e {
96				compatible = "gmt,g762";
97				reg = <0x3e>;
98				clocks = <&g762_clk>; /* input clock */
99				fan_gear_mode = <0>;
100				fan_startv = <1>;
101				pwm_polarity = <0>;
102			};
103		};
104
105		serial@12000 {
106			status = "okay";
107		};
108
109		sata@80000 {
110			status = "okay";
111			nr-ports = <2>;
112		};
113	};
114
115	gpio-leds {
116		compatible = "gpio-leds";
117		pinctrl-0 = < &pmx_led_blue_power &pmx_led_blue_activity
118			      &pmx_led_blue_disk1 &pmx_led_blue_disk2
119			      &pmx_led_blue_backup >;
120		pinctrl-names = "default";
121
122		power_led {
123			label = "status:blue:power_led";
124			gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
125			default-state = "keep";
126		};
127
128		activity_led {
129			label = "status:blue:activity_led";
130			gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
131		};
132
133		disk1_led {
134			label = "status:blue:disk1_led";
135			gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
136		};
137
138		disk2_led {
139			label = "status:blue:disk2_led";
140			gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
141		};
142
143		backup_led {
144			label = "status:blue:backup_led";
145			gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
146		};
147	};
148
149	gpio-keys {
150		compatible = "gpio-keys";
151		pinctrl-0 = <&pmx_button_power &pmx_button_backup
152			     &pmx_button_reset>;
153		pinctrl-names = "default";
154
155		power-button {
156			label = "Power Button";
157			linux,code = <KEY_POWER>;
158			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
159		};
160
161		reset-button {
162			label = "Reset Button";
163			linux,code = <KEY_RESTART>;
164			gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
165		};
166
167		backup-button {
168			label = "Backup Button";
169			linux,code = <KEY_COPY>;
170			gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
171		};
172	};
173
174	gpio-poweroff {
175		compatible = "gpio-poweroff";
176		pinctrl-0 = <&pmx_poweroff>;
177		pinctrl-names = "default";
178		gpios = <&gpio0 30 GPIO_ACTIVE_LOW>;
179	};
180
181	regulators {
182		compatible = "simple-bus";
183		#address-cells = <1>;
184		#size-cells = <0>;
185
186		usb3_regulator: usb3-regulator@1 {
187			compatible = "regulator-fixed";
188			reg = <1>;
189			regulator-name = "USB 3.0 Power";
190			regulator-min-microvolt = <5000000>;
191			regulator-max-microvolt = <5000000>;
192			enable-active-high;
193			regulator-always-on;
194			regulator-boot-on;
195			gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>;
196		};
197	};
198};
199
200&nand {
201	status = "okay";
202
203	partition@0 {
204		label = "u-boot";
205		reg = <0x0000000 0x180000>;
206		read-only;
207	};
208
209	partition@180000 {
210		label = "u-boot-env";
211		reg = <0x180000 0x20000>;
212	};
213
214	partition@200000 {
215		label = "uImage";
216		reg = <0x0200000 0x600000>;
217	};
218
219	partition@800000 {
220		label = "minirootfs";
221		reg = <0x0800000 0x1000000>;
222	};
223
224	partition@1800000 {
225		label = "jffs2";
226		reg = <0x1800000 0x6800000>;
227	};
228};
229
230&mdio {
231	status = "okay";
232
233	ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */
234		reg = <0>;
235	};
236};
237
238&eth0 {
239	status = "okay";
240	ethernet0-port@0 {
241		phy-handle = <&ethphy0>;
242	};
243};
244
245&pciec {
246        status = "okay";
247};
248
249&pcie0 {
250	status = "okay";
251};
252