• 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	mbus {
32		pcie-controller {
33			status = "okay";
34
35			pcie@1,0 {
36				status = "okay";
37			};
38		};
39	};
40
41	ocp@f1000000 {
42		pinctrl: pin-controller@10000 {
43			pmx_button_power: pmx-button-power {
44				marvell,pins = "mpp47";
45				marvell,function = "gpio";
46			};
47
48			pmx_button_backup: pmx-button-backup {
49				marvell,pins = "mpp45";
50				marvell,function = "gpio";
51			};
52
53			pmx_button_reset: pmx-button-reset {
54				marvell,pins = "mpp13";
55				marvell,function = "gpio";
56			};
57
58			pmx_led_blue_power: pmx-led-blue-power {
59				marvell,pins = "mpp31";
60				marvell,function = "gpio";
61			};
62
63			pmx_led_blue_activity: pmx-led-blue-activity {
64				marvell,pins = "mpp38";
65				marvell,function = "gpio";
66			};
67
68			pmx_led_blue_disk1: pmx-led-blue-disk1 {
69				marvell,pins = "mpp23";
70				marvell,function = "gpio";
71			};
72
73			pmx_led_blue_disk2: pmx-led-blue-disk2 {
74				marvell,pins = "mpp22";
75				marvell,function = "gpio";
76			};
77
78			pmx_led_blue_backup: pmx-led-blue-backup {
79				marvell,pins = "mpp29";
80				marvell,function = "gpio";
81			};
82
83			pmx_poweroff: pmx-poweroff {
84				marvell,pins = "mpp30";
85				marvell,function = "gpio";
86			};
87		};
88
89		clocks {
90		       g762_clk: g762-oscillator {
91				 compatible = "fixed-clock";
92				 #clock-cells = <0>;
93				 clock-frequency = <8192>;
94		       };
95		};
96
97		i2c@11000 {
98			status = "okay";
99
100			rs5c372a: rs5c372a@32 {
101				compatible = "ricoh,rs5c372a";
102				reg = <0x32>;
103			};
104
105			g762: g762@3e {
106				compatible = "gmt,g762";
107				reg = <0x3e>;
108				clocks = <&g762_clk>; /* input clock */
109				fan_gear_mode = <0>;
110				fan_startv = <1>;
111				pwm_polarity = <0>;
112			};
113		};
114
115		serial@12000 {
116			status = "okay";
117		};
118
119		sata@80000 {
120			status = "okay";
121			nr-ports = <2>;
122		};
123	};
124
125	gpio-leds {
126		compatible = "gpio-leds";
127		pinctrl-0 = < &pmx_led_blue_power &pmx_led_blue_activity
128			      &pmx_led_blue_disk1 &pmx_led_blue_disk2
129			      &pmx_led_blue_backup >;
130		pinctrl-names = "default";
131
132		power_led {
133			label = "status:blue:power_led";
134			gpios = <&gpio0 31 GPIO_ACTIVE_LOW>;
135			default-state = "keep";
136		};
137
138		activity_led {
139			label = "status:blue:activity_led";
140			gpios = <&gpio1 6 GPIO_ACTIVE_LOW>;
141		};
142
143		disk1_led {
144			label = "status:blue:disk1_led";
145			gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
146		};
147
148		disk2_led {
149			label = "status:blue:disk2_led";
150			gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
151		};
152
153		backup_led {
154			label = "status:blue:backup_led";
155			gpios = <&gpio0 29 GPIO_ACTIVE_LOW>;
156		};
157	};
158
159	gpio-keys {
160		compatible = "gpio-keys";
161		pinctrl-0 = <&pmx_button_power &pmx_button_backup
162			     &pmx_button_reset>;
163		pinctrl-names = "default";
164
165		power-button {
166			label = "Power Button";
167			linux,code = <KEY_POWER>;
168			gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
169		};
170
171		reset-button {
172			label = "Reset Button";
173			linux,code = <KEY_RESTART>;
174			gpios = <&gpio0 13 GPIO_ACTIVE_LOW>;
175		};
176
177		backup-button {
178			label = "Backup Button";
179			linux,code = <KEY_COPY>;
180			gpios = <&gpio1 13 GPIO_ACTIVE_LOW>;
181		};
182	};
183
184	gpio-poweroff {
185		compatible = "gpio-poweroff";
186		pinctrl-0 = <&pmx_poweroff>;
187		pinctrl-names = "default";
188		gpios = <&gpio0 30 GPIO_ACTIVE_LOW>;
189	};
190
191	regulators {
192		compatible = "simple-bus";
193		#address-cells = <1>;
194		#size-cells = <0>;
195
196		usb3_regulator: usb3-regulator {
197			compatible = "regulator-fixed";
198			reg = <1>;
199			regulator-name = "USB 3.0 Power";
200			regulator-min-microvolt = <5000000>;
201			regulator-max-microvolt = <5000000>;
202			enable-active-high;
203			regulator-always-on;
204			regulator-boot-on;
205			gpio = <&gpio1 14 GPIO_ACTIVE_HIGH>;
206		};
207	};
208};
209
210&nand {
211	status = "okay";
212
213	partition@0 {
214		label = "u-boot";
215		reg = <0x0000000 0x180000>;
216		read-only;
217	};
218
219	partition@180000 {
220		label = "u-boot-env";
221		reg = <0x180000 0x20000>;
222	};
223
224	partition@200000 {
225		label = "uImage";
226		reg = <0x0200000 0x600000>;
227	};
228
229	partition@800000 {
230		label = "minirootfs";
231		reg = <0x0800000 0x1000000>;
232	};
233
234	partition@1800000 {
235		label = "jffs2";
236		reg = <0x1800000 0x6800000>;
237	};
238};
239
240&mdio {
241	status = "okay";
242
243	ethphy0: ethernet-phy@0 { /* Marvell 88E1318 */
244		reg = <0>;
245	};
246};
247
248&eth0 {
249	status = "okay";
250	ethernet0-port@0 {
251		phy-handle = <&ethphy0>;
252	};
253};
254