blob: d8fca9db46d084efcc4e9e2506f4c93ab2c166bb [file] [log] [blame]
Ezequiel Garcia0ab61292013-07-26 10:18:02 -03001#include "kirkwood.dtsi"
2#include "kirkwood-6281.dtsi"
Jamie Lentin5b60c142012-07-19 21:30:59 +01003
4/ {
5 model = "D-Link DNS NASes (kirkwood-based)";
Andrew Lunnf39c1102012-07-18 19:22:54 +02006 compatible = "dlink,dns-kirkwood", "marvell,kirkwood-88f6281", "marvell,kirkwood";
Jamie Lentin5b60c142012-07-19 21:30:59 +01007
Jamie Lentinbb53d822012-07-19 21:31:00 +01008 gpio_keys {
9 compatible = "gpio-keys";
10 #address-cells = <1>;
11 #size-cells = <0>;
Thomas Petazzoni01369fe2013-05-24 11:44:39 +020012 pinctrl-0 = <&pmx_button_power &pmx_button_unmount
13 &pmx_button_reset>;
14 pinctrl-names = "default";
15
Andrew Lunn395c7552016-04-03 04:03:43 +020016 power {
Jamie Lentinbb53d822012-07-19 21:31:00 +010017 label = "Power button";
Andrew Lunn23301192013-12-04 16:51:38 +010018 linux,code = <KEY_POWER>;
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010019 gpios = <&gpio1 2 GPIO_ACTIVE_LOW>;
Jamie Lentinbb53d822012-07-19 21:31:00 +010020 };
Andrew Lunn395c7552016-04-03 04:03:43 +020021 eject {
Jamie Lentinbb53d822012-07-19 21:31:00 +010022 label = "USB unmount button";
Andrew Lunn23301192013-12-04 16:51:38 +010023 linux,code = <KEY_EJECTCD>;
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010024 gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
Jamie Lentinbb53d822012-07-19 21:31:00 +010025 };
Andrew Lunn395c7552016-04-03 04:03:43 +020026 reset {
Jamie Lentinbb53d822012-07-19 21:31:00 +010027 label = "Reset button";
Andrew Lunn23301192013-12-04 16:51:38 +010028 linux,code = <KEY_RESTART>;
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010029 gpios = <&gpio1 16 GPIO_ACTIVE_LOW>;
Jamie Lentinbb53d822012-07-19 21:31:00 +010030 };
31 };
32
Jamie Lentin1b90e062012-09-10 14:51:52 +010033 gpio_fan {
34 /* Fan: ADDA AD045HB-G73 40mm 6000rpm@5v */
35 compatible = "gpio-fan";
Thomas Petazzoni01369fe2013-05-24 11:44:39 +020036 pinctrl-0 = <&pmx_fan_high_speed &pmx_fan_low_speed>;
37 pinctrl-names = "default";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010038 gpios = <&gpio1 14 GPIO_ACTIVE_LOW
39 &gpio1 13 GPIO_ACTIVE_LOW>;
Jamie Lentin1b90e062012-09-10 14:51:52 +010040 gpio-fan,speed-map = <0 0
41 3000 1
42 6000 2>;
43 };
44
Andrew Lunn2c0e7ee2012-11-17 09:51:05 +010045 gpio_poweroff {
46 compatible = "gpio-poweroff";
Thomas Petazzoni01369fe2013-05-24 11:44:39 +020047 pinctrl-0 = <&pmx_power_off>;
48 pinctrl-names = "default";
Andrew Lunn3a31f2d72013-12-04 16:51:39 +010049 gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>;
Andrew Lunn2c0e7ee2012-11-17 09:51:05 +010050 };
51
Jamie Lentin5b60c142012-07-19 21:30:59 +010052 ocp@f1000000 {
Sebastian Hesselbartha9483962014-04-30 14:56:32 +020053 pinctrl: pin-controller@10000 {
Andrew Lunnf83065f2012-11-17 17:00:48 +010054
Thomas Petazzoni01369fe2013-05-24 11:44:39 +020055 pinctrl-0 = <&pmx_power_back_on &pmx_present_sata0
56 &pmx_present_sata1 &pmx_fan_tacho
57 &pmx_temp_alarm>;
Andrew Lunnf83065f2012-11-17 17:00:48 +010058 pinctrl-names = "default";
59
60 pmx_sata0: pmx-sata0 {
61 marvell,pins = "mpp20";
62 marvell,function = "sata1";
63 };
64 pmx_sata1: pmx-sata1 {
65 marvell,pins = "mpp21";
66 marvell,function = "sata0";
67 };
68 pmx_led_power: pmx-led-power {
69 marvell,pins = "mpp26";
70 marvell,function = "gpio";
71 };
72 pmx_led_red_right_hdd: pmx-led-red-right-hdd {
73 marvell,pins = "mpp27";
74 marvell,function = "gpio";
75 };
76 pmx_led_red_left_hdd: pmx-led-red-left-hdd {
77 marvell,pins = "mpp28";
78 marvell,function = "gpio";
79 };
80 pmx_led_red_usb_325: pmx-led-red-usb-325 {
81 marvell,pins = "mpp29";
82 marvell,function = "gpio";
83 };
84 pmx_button_power: pmx-button-power {
85 marvell,pins = "mpp34";
86 marvell,function = "gpio";
87 };
88 pmx_led_red_usb_320: pmx-led-red-usb-320 {
89 marvell,pins = "mpp35";
90 marvell,function = "gpio";
91 };
92 pmx_power_off: pmx-power-off {
93 marvell,pins = "mpp36";
94 marvell,function = "gpio";
95 };
96 pmx_power_back_on: pmx-power-back-on {
97 marvell,pins = "mpp37";
98 marvell,function = "gpio";
99 };
100 pmx_power_sata0: pmx-power-sata0 {
101 marvell,pins = "mpp39";
102 marvell,function = "gpio";
103 };
104 pmx_power_sata1: pmx-power-sata1 {
105 marvell,pins = "mpp40";
106 marvell,function = "gpio";
107 };
108 pmx_present_sata0: pmx-present-sata0 {
109 marvell,pins = "mpp41";
110 marvell,function = "gpio";
111 };
112 pmx_present_sata1: pmx-present-sata1 {
113 marvell,pins = "mpp42";
114 marvell,function = "gpio";
115 };
116 pmx_led_white_usb: pmx-led-white-usb {
117 marvell,pins = "mpp43";
118 marvell,function = "gpio";
119 };
120 pmx_fan_tacho: pmx-fan-tacho {
121 marvell,pins = "mpp44";
122 marvell,function = "gpio";
123 };
124 pmx_fan_high_speed: pmx-fan-high-speed {
125 marvell,pins = "mpp45";
126 marvell,function = "gpio";
127 };
128 pmx_fan_low_speed: pmx-fan-low-speed {
129 marvell,pins = "mpp46";
130 marvell,function = "gpio";
131 };
132 pmx_button_unmount: pmx-button-unmount {
133 marvell,pins = "mpp47";
134 marvell,function = "gpio";
135 };
136 pmx_button_reset: pmx-button-reset {
137 marvell,pins = "mpp48";
138 marvell,function = "gpio";
139 };
140 pmx_temp_alarm: pmx-temp-alarm {
141 marvell,pins = "mpp49";
142 marvell,function = "gpio";
143 };
144 };
Jamie Lentin5b60c142012-07-19 21:30:59 +0100145 sata@80000 {
Thomas Petazzoni01369fe2013-05-24 11:44:39 +0200146 pinctrl-0 = <&pmx_sata0 &pmx_sata1>;
147 pinctrl-names = "default";
Jamie Lentin5b60c142012-07-19 21:30:59 +0100148 status = "okay";
149 nr-ports = <2>;
150 };
Jamie Lentin5b60c142012-07-19 21:30:59 +0100151 };
Andrew Lunn5c2734a2012-11-17 15:46:11 +0100152
153 regulators {
154 compatible = "simple-bus";
155 #address-cells = <1>;
156 #size-cells = <0>;
Thomas Petazzoni01369fe2013-05-24 11:44:39 +0200157 pinctrl-0 = <&pmx_power_sata0 &pmx_power_sata1>;
158 pinctrl-names = "default";
Andrew Lunn5c2734a2012-11-17 15:46:11 +0100159
160 sata0_power: regulator@1 {
161 compatible = "regulator-fixed";
162 reg = <1>;
163 regulator-name = "SATA0 Power";
164 regulator-min-microvolt = <5000000>;
165 regulator-max-microvolt = <5000000>;
166 enable-active-high;
167 regulator-always-on;
168 regulator-boot-on;
169 gpio = <&gpio1 7 0>;
170 };
171 sata1_power: regulator@2 {
172 compatible = "regulator-fixed";
173 reg = <2>;
174 regulator-name = "SATA1 Power";
175 regulator-min-microvolt = <5000000>;
176 regulator-max-microvolt = <5000000>;
177 enable-active-high;
178 regulator-always-on;
179 regulator-boot-on;
180 gpio = <&gpio1 8 0>;
181 };
182 };
Jamie Lentin5b60c142012-07-19 21:30:59 +0100183};
Sebastian Hesselbarth876e2332013-07-07 22:34:56 +0200184
Jason Gunthorpe7045ff52013-09-17 12:44:33 -0600185&nand {
Jason Gunthorpe7045ff52013-09-17 12:44:33 -0600186 status = "okay";
187 chip-delay = <35>;
188
189 partition@0 {
190 label = "u-boot";
191 reg = <0x0000000 0x100000>;
192 read-only;
193 };
194
195 partition@100000 {
196 label = "uImage";
197 reg = <0x0100000 0x500000>;
198 };
199
200 partition@600000 {
201 label = "ramdisk";
202 reg = <0x0600000 0x500000>;
203 };
204
205 partition@b00000 {
206 label = "image";
207 reg = <0x0b00000 0x6600000>;
208 };
209
210 partition@7100000 {
211 label = "mini firmware";
212 reg = <0x7100000 0xa00000>;
213 };
214
215 partition@7b00000 {
216 label = "config";
217 reg = <0x7b00000 0x500000>;
218 };
219};
220
Sebastian Hesselbarth876e2332013-07-07 22:34:56 +0200221&mdio {
222 status = "okay";
223
224 ethphy0: ethernet-phy@8 {
Sebastian Hesselbarth876e2332013-07-07 22:34:56 +0200225 reg = <8>;
226 };
227};
228
229&eth0 {
230 status = "okay";
231 ethernet0-port@0 {
232 phy-handle = <&ethphy0>;
233 };
234};