Merge tag 'exynos-dt-2' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux...
[sfrench/cifs-2.6.git] / arch / arm / boot / dts / kirkwood-nsa310.dts
1 /dts-v1/;
2
3 /include/ "kirkwood.dtsi"
4 /include/ "kirkwood-6281.dtsi"
5
6 / {
7         model = "ZyXEL NSA310";
8         compatible = "zyxel,nsa310", "marvell,kirkwood-88f6281", "marvell,kirkwood";
9
10         memory {
11                 device_type = "memory";
12                 reg = <0x00000000 0x10000000>;
13         };
14
15         chosen {
16                 bootargs = "console=ttyS0,115200";
17         };
18
19         ocp@f1000000 {
20                 pinctrl: pinctrl@10000 {
21                         pinctrl-0 = <&pmx_unknown>;
22                         pinctrl-names = "default";
23
24                         pmx_led_esata_green: pmx-led-esata-green {
25                                 marvell,pins = "mpp12";
26                                 marvell,function = "gpio";
27                         };
28
29                         pmx_led_esata_red: pmx-led-esata-red {
30                                 marvell,pins = "mpp13";
31                                 marvell,function = "gpio";
32                         };
33
34                         pmx_led_usb_green: pmx-led-usb-green {
35                                 marvell,pins = "mpp15";
36                                 marvell,function = "gpio";
37                         };
38
39                         pmx_led_usb_red: pmx-led-usb-red {
40                                 marvell,pins = "mpp16";
41                                 marvell,function = "gpio";
42                         };
43
44                         pmx_usb_power_off: pmx-usb-power-off {
45                                 marvell,pins = "mpp21";
46                                 marvell,function = "gpio";
47                         };
48
49                         pmx_led_sys_green: pmx-led-sys-green {
50                                 marvell,pins = "mpp28";
51                                 marvell,function = "gpio";
52                         };
53
54                         pmx_led_sys_red: pmx-led-sys-red {
55                                 marvell,pins = "mpp29";
56                                 marvell,function = "gpio";
57                         };
58
59                         pmx_btn_reset: pmx-btn-reset {
60                                 marvell,pins = "mpp36";
61                                 marvell,function = "gpio";
62                         };
63
64                         pmx_btn_copy: pmx-btn-copy {
65                                 marvell,pins = "mpp37";
66                                 marvell,function = "gpio";
67                         };
68
69                         pmx_led_copy_green: pmx-led-copy-green {
70                                 marvell,pins = "mpp39";
71                                 marvell,function = "gpio";
72                         };
73
74                         pmx_led_copy_red: pmx-led-copy-red {
75                                 marvell,pins = "mpp40";
76                                 marvell,function = "gpio";
77                         };
78
79                         pmx_led_hdd_green: pmx-led-hdd-green {
80                                 marvell,pins = "mpp41";
81                                 marvell,function = "gpio";
82                         };
83
84                         pmx_led_hdd_red: pmx-led-hdd-red {
85                                 marvell,pins = "mpp42";
86                                 marvell,function = "gpio";
87                         };
88
89                         pmx_unknown: pmx-unknown {
90                                 marvell,pins = "mpp44";
91                                 marvell,function = "gpio";
92                         };
93
94                         pmx_btn_power: pmx-btn-power {
95                                 marvell,pins = "mpp46";
96                                 marvell,function = "gpio";
97                         };
98
99                         pmx_pwr_off: pmx-pwr-off {
100                                 marvell,pins = "mpp48";
101                                 marvell,function = "gpio";
102                         };
103                 };
104
105                 serial@12000 {
106                         status = "ok";
107                 };
108
109                 sata@80000 {
110                         status = "okay";
111                         nr-ports = <2>;
112                 };
113
114                 i2c@11000 {
115                         status = "okay";
116
117                         adt7476: adt7476a@2e {
118                                 compatible = "adt7476";
119                                 reg = <0x2e>;
120                         };
121                 };
122
123                 nand@3000000 {
124                         status = "okay";
125                         chip-delay = <35>;
126
127                         partition@0 {
128                                 label = "uboot";
129                                 reg = <0x0000000 0x0100000>;
130                                 read-only;
131                         };
132                         partition@100000 {
133                                 label = "uboot_env";
134                                 reg = <0x0100000 0x0080000>;
135                         };
136                         partition@180000 {
137                                 label = "key_store";
138                                 reg = <0x0180000 0x0080000>;
139                         };
140                         partition@200000 {
141                                 label = "info";
142                                 reg = <0x0200000 0x0080000>;
143                         };
144                         partition@280000 {
145                                 label = "etc";
146                                 reg = <0x0280000 0x0a00000>;
147                         };
148                         partition@c80000 {
149                                 label = "kernel_1";
150                                 reg = <0x0c80000 0x0a00000>;
151                         };
152                         partition@1680000 {
153                                 label = "rootfs1";
154                                 reg = <0x1680000 0x2fc0000>;
155                         };
156                         partition@4640000 {
157                                 label = "kernel_2";
158                                 reg = <0x4640000 0x0a00000>;
159                         };
160                         partition@5040000 {
161                                 label = "rootfs2";
162                                 reg = <0x5040000 0x2fc0000>;
163                         };
164                 };
165         };
166
167         gpio_keys {
168                 compatible = "gpio-keys";
169                 #address-cells = <1>;
170                 #size-cells = <0>;
171                 pinctrl-0 = <&pmx_btn_reset &pmx_btn_copy &pmx_btn_power>;
172                 pinctrl-names = "default";
173
174                 button@1 {
175                         label = "Power Button";
176                         linux,code = <116>;
177                         gpios = <&gpio1 14 0>;
178                 };
179                 button@2 {
180                         label = "Copy Button";
181                         linux,code = <133>;
182                         gpios = <&gpio1 5 1>;
183                 };
184                 button@3 {
185                         label = "Reset Button";
186                         linux,code = <0x198>;
187                         gpios = <&gpio1 4 1>;
188                 };
189         };
190
191         gpio-leds {
192                 compatible = "gpio-leds";
193                 pinctrl-0 = <&pmx_led_esata_green &pmx_led_esata_red
194                              &pmx_led_usb_green &pmx_led_usb_red
195                              &pmx_led_sys_green &pmx_led_sys_red
196                              &pmx_led_copy_green &pmx_led_copy_red
197                              &pmx_led_hdd_green &pmx_led_hdd_red>;
198                 pinctrl-names = "default";
199
200                 green-sys {
201                         label = "nsa310:green:sys";
202                         gpios = <&gpio0 28 0>;
203                 };
204                 red-sys {
205                         label = "nsa310:red:sys";
206                         gpios = <&gpio0 29 0>;
207                 };
208                 green-hdd {
209                         label = "nsa310:green:hdd";
210                         gpios = <&gpio1 9 0>;
211                 };
212                 red-hdd {
213                         label = "nsa310:red:hdd";
214                         gpios = <&gpio1 10 0>;
215                 };
216                 green-esata {
217                         label = "nsa310:green:esata";
218                         gpios = <&gpio0 12 0>;
219                 };
220                 red-esata {
221                         label = "nsa310:red:esata";
222                         gpios = <&gpio0 13 0>;
223                 };
224                 green-usb {
225                         label = "nsa310:green:usb";
226                         gpios = <&gpio0 15 0>;
227                 };
228                 red-usb {
229                         label = "nsa310:red:usb";
230                         gpios = <&gpio0 16 0>;
231                 };
232                 green-copy {
233                         label = "nsa310:green:copy";
234                         gpios = <&gpio1 7 0>;
235                 };
236                 red-copy {
237                         label = "nsa310:red:copy";
238                         gpios = <&gpio1 8 0>;
239                 };
240         };
241
242         gpio_poweroff {
243                 compatible = "gpio-poweroff";
244                 pinctrl-0 = <&pmx_pwr_off>;
245                 pinctrl-names = "default";
246                 gpios = <&gpio1 16 0>;
247         };
248
249         regulators {
250                 compatible = "simple-bus";
251                 #address-cells = <1>;
252                 #size-cells = <0>;
253                 pinctrl-0 = <&pmx_usb_power_off>;
254                 pinctrl-names = "default";
255
256                 usb0_power_off: regulator@1 {
257                         compatible = "regulator-fixed";
258                         reg = <1>;
259                         regulator-name = "USB Power Off";
260                         regulator-min-microvolt = <5000000>;
261                         regulator-max-microvolt = <5000000>;
262                         regulator-always-on;
263                         regulator-boot-on;
264                         gpio = <&gpio0 21 0>;
265                 };
266         };
267 };