diff options
author | Olof Johansson <olof@lixom.net> | 2013-08-29 13:01:40 -0400 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-08-29 13:01:40 -0400 |
commit | 6cbe0e1feaf8f8516ee863e5c37144bafb84c17d (patch) | |
tree | 2330961e07164d13745b530520b9179b56a32070 | |
parent | d519049cb17b63604149431496460ff9cf00845d (diff) | |
parent | 5d3b883071763e6448386b875f04fcb201b6e12d (diff) |
Merge tag 'dt-3.12' of git://git.infradead.org/linux-mvebu into next/soc
From Jason Cooper:
mvebu dt changes for v3.12
- kirkwood
- add ZyXEL NSA310 board, fan for ReadyNAS Duo v2
- mvebu
- add ReadyNAS 102 board
- misc dts updates and changes.
v2:
- dropped mv64xxx-i2c change
* tag 'dt-3.12' of git://git.infradead.org/linux-mvebu:
ARM: mvebu: Fix the Armada 370/XP timer compatible strings
ARM: mvebu: use dts pre-processor for readynas 102
ARM: kirkwood: use dts pre-processor for nsa310 boards
ARM: mvebu: use correct #interrupt-cells instead of #interrupts-cells
ARM: Kirkwood: Add support for another ZyXEL NSA310 variant
ARM: mvebu: Add Netgear ReadyNAS 102 board
arm: kirkwood: readynas duo v2: Add GMT G762 Fan Controller
Signed-off-by: Olof Johansson <olof@lixom.net>
Conflicts:
arch/arm/boot/dts/kirkwood-nsa310.dts
-rw-r--r-- | arch/arm/boot/dts/Makefile | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-370-netgear-rn102.dts | 179 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-370-xp.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-370.dtsi | 11 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-xp-mv78230.dtsi | 4 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-xp-mv78260.dtsi | 6 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-xp-mv78460.dtsi | 6 | ||||
-rw-r--r-- | arch/arm/boot/dts/armada-xp.dtsi | 2 | ||||
-rw-r--r-- | arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts | 20 | ||||
-rw-r--r-- | arch/arm/boot/dts/kirkwood-nsa310-common.dtsi | 107 | ||||
-rw-r--r-- | arch/arm/boot/dts/kirkwood-nsa310.dts | 92 | ||||
-rw-r--r-- | arch/arm/boot/dts/kirkwood-nsa310a.dts | 165 |
12 files changed, 491 insertions, 105 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 0537a23b9dcf..80b9d903cba9 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -89,6 +89,7 @@ dtb-$(CONFIG_ARCH_KIRKWOOD) += kirkwood-cloudbox.dtb \ | |||
89 | kirkwood-ns2max.dtb \ | 89 | kirkwood-ns2max.dtb \ |
90 | kirkwood-ns2mini.dtb \ | 90 | kirkwood-ns2mini.dtb \ |
91 | kirkwood-nsa310.dtb \ | 91 | kirkwood-nsa310.dtb \ |
92 | kirkwood-nsa310a.dtb \ | ||
92 | kirkwood-sheevaplug.dtb \ | 93 | kirkwood-sheevaplug.dtb \ |
93 | kirkwood-sheevaplug-esata.dtb \ | 94 | kirkwood-sheevaplug-esata.dtb \ |
94 | kirkwood-topkick.dtb \ | 95 | kirkwood-topkick.dtb \ |
@@ -100,6 +101,7 @@ dtb-$(CONFIG_ARCH_MSM) += msm8660-surf.dtb \ | |||
100 | msm8960-cdp.dtb | 101 | msm8960-cdp.dtb |
101 | dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \ | 102 | dtb-$(CONFIG_ARCH_MVEBU) += armada-370-db.dtb \ |
102 | armada-370-mirabox.dtb \ | 103 | armada-370-mirabox.dtb \ |
104 | armada-370-netgear-rn102.dtb \ | ||
103 | armada-370-rd.dtb \ | 105 | armada-370-rd.dtb \ |
104 | armada-xp-axpwifiap.dtb \ | 106 | armada-xp-axpwifiap.dtb \ |
105 | armada-xp-db.dtb \ | 107 | armada-xp-db.dtb \ |
diff --git a/arch/arm/boot/dts/armada-370-netgear-rn102.dts b/arch/arm/boot/dts/armada-370-netgear-rn102.dts new file mode 100644 index 000000000000..05e4485a8225 --- /dev/null +++ b/arch/arm/boot/dts/armada-370-netgear-rn102.dts | |||
@@ -0,0 +1,179 @@ | |||
1 | /* | ||
2 | * Device Tree file for NETGEAR ReadyNAS 102 | ||
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 "armada-370.dtsi" | ||
15 | |||
16 | / { | ||
17 | model = "NETGEAR ReadyNAS 102"; | ||
18 | compatible = "netgear,readynas-102", "marvell,armada370", "marvell,armada-370-xp"; | ||
19 | |||
20 | chosen { | ||
21 | bootargs = "console=ttyS0,115200 earlyprintk"; | ||
22 | }; | ||
23 | |||
24 | memory { | ||
25 | device_type = "memory"; | ||
26 | reg = <0x00000000 0x20000000>; /* 512 MB */ | ||
27 | }; | ||
28 | |||
29 | soc { | ||
30 | internal-regs { | ||
31 | serial@12000 { | ||
32 | clock-frequency = <200000000>; | ||
33 | status = "okay"; | ||
34 | }; | ||
35 | |||
36 | sata@a0000 { | ||
37 | nr-ports = <2>; | ||
38 | status = "okay"; | ||
39 | }; | ||
40 | |||
41 | pinctrl { | ||
42 | power_led_pin: power-led-pin { | ||
43 | marvell,pins = "mpp57"; | ||
44 | marvell,function = "gpio"; | ||
45 | }; | ||
46 | sata1_led_pin: sata1-led-pin { | ||
47 | marvell,pins = "mpp15"; | ||
48 | marvell,function = "gpio"; | ||
49 | }; | ||
50 | |||
51 | sata2_led_pin: sata2-led-pin { | ||
52 | marvell,pins = "mpp14"; | ||
53 | marvell,function = "gpio"; | ||
54 | }; | ||
55 | |||
56 | backup_led_pin: backup-led-pin { | ||
57 | marvell,pins = "mpp56"; | ||
58 | marvell,function = "gpio"; | ||
59 | }; | ||
60 | }; | ||
61 | |||
62 | mdio { | ||
63 | phy0: ethernet-phy@0 { | ||
64 | reg = <0>; | ||
65 | }; | ||
66 | }; | ||
67 | |||
68 | ethernet@74000 { | ||
69 | status = "okay"; | ||
70 | phy = <&phy0>; | ||
71 | phy-mode = "rgmii-id"; | ||
72 | }; | ||
73 | |||
74 | usb@50000 { | ||
75 | status = "okay"; | ||
76 | }; | ||
77 | |||
78 | i2c@11000 { | ||
79 | compatible = "marvell,mv64xxx-i2c"; | ||
80 | clock-frequency = <100000>; | ||
81 | status = "okay"; | ||
82 | |||
83 | g762: g762@3e { | ||
84 | compatible = "gmt,g762"; | ||
85 | reg = <0x3e>; | ||
86 | clocks = <&g762_clk>; /* input clock */ | ||
87 | fan_gear_mode = <0>; | ||
88 | fan_startv = <1>; | ||
89 | pwm_polarity = <0>; | ||
90 | }; | ||
91 | }; | ||
92 | |||
93 | pcie-controller { | ||
94 | status = "okay"; | ||
95 | |||
96 | /* Connected to Marvell SATA controller */ | ||
97 | pcie@1,0 { | ||
98 | /* Port 0, Lane 0 */ | ||
99 | status = "okay"; | ||
100 | }; | ||
101 | |||
102 | /* Connected to FL1009 USB 3.0 controller */ | ||
103 | pcie@2,0 { | ||
104 | /* Port 1, Lane 0 */ | ||
105 | status = "okay"; | ||
106 | }; | ||
107 | }; | ||
108 | }; | ||
109 | }; | ||
110 | |||
111 | clocks { | ||
112 | #address-cells = <1>; | ||
113 | #size-cells = <0>; | ||
114 | |||
115 | g762_clk: fixedclk { | ||
116 | compatible = "fixed-clock"; | ||
117 | #clock-cells = <0>; | ||
118 | clock-frequency = <8192>; | ||
119 | }; | ||
120 | }; | ||
121 | |||
122 | gpio_leds { | ||
123 | compatible = "gpio-leds"; | ||
124 | pinctrl-0 = < &power_led_pin | ||
125 | &sata1_led_pin | ||
126 | &sata2_led_pin | ||
127 | &backup_led_pin >; | ||
128 | pinctrl-names = "default"; | ||
129 | |||
130 | blue_power_led { | ||
131 | label = "rn102:blue:pwr"; | ||
132 | gpios = <&gpio1 25 1>; /* GPIO 57 Active Low */ | ||
133 | linux,default-trigger = "heartbeat"; | ||
134 | }; | ||
135 | |||
136 | green_sata1_led { | ||
137 | label = "rn102:green:sata1"; | ||
138 | gpios = <&gpio0 15 1>; /* GPIO 15 Active Low */ | ||
139 | default-state = "on"; | ||
140 | }; | ||
141 | |||
142 | green_sata2_led { | ||
143 | label = "rn102:green:sata2"; | ||
144 | gpios = <&gpio0 14 1>; /* GPIO 14 Active Low */ | ||
145 | default-state = "on"; | ||
146 | }; | ||
147 | |||
148 | green_backup_led { | ||
149 | label = "rn102:green:backup"; | ||
150 | gpios = <&gpio1 24 1>; /* GPIO 56 Active Low */ | ||
151 | default-state = "on"; | ||
152 | }; | ||
153 | }; | ||
154 | |||
155 | gpio_keys { | ||
156 | compatible = "gpio-keys"; | ||
157 | #address-cells = <1>; | ||
158 | #size-cells = <0>; | ||
159 | |||
160 | button@1 { | ||
161 | label = "Power Button"; | ||
162 | linux,code = <116>; /* KEY_POWER */ | ||
163 | gpios = <&gpio1 30 1>; | ||
164 | }; | ||
165 | |||
166 | button@2 { | ||
167 | label = "Reset Button"; | ||
168 | linux,code = <0x198>; /* KEY_RESTART */ | ||
169 | gpios = <&gpio0 6 1>; | ||
170 | }; | ||
171 | |||
172 | button@3 { | ||
173 | label = "Backup Button"; | ||
174 | linux,code = <133>; /* KEY_COPY */ | ||
175 | gpios = <&gpio1 26 1>; | ||
176 | }; | ||
177 | }; | ||
178 | |||
179 | }; | ||
diff --git a/arch/arm/boot/dts/armada-370-xp.dtsi b/arch/arm/boot/dts/armada-370-xp.dtsi index e984ce6bb33f..1de2dae0fdae 100644 --- a/arch/arm/boot/dts/armada-370-xp.dtsi +++ b/arch/arm/boot/dts/armada-370-xp.dtsi | |||
@@ -138,10 +138,8 @@ | |||
138 | }; | 138 | }; |
139 | 139 | ||
140 | timer@20300 { | 140 | timer@20300 { |
141 | compatible = "marvell,armada-370-xp-timer"; | ||
142 | reg = <0x20300 0x30>, <0x21040 0x30>; | 141 | reg = <0x20300 0x30>, <0x21040 0x30>; |
143 | interrupts = <37>, <38>, <39>, <40>, <5>, <6>; | 142 | interrupts = <37>, <38>, <39>, <40>, <5>, <6>; |
144 | clocks = <&coreclk 2>; | ||
145 | }; | 143 | }; |
146 | 144 | ||
147 | sata@a0000 { | 145 | sata@a0000 { |
diff --git a/arch/arm/boot/dts/armada-370.dtsi b/arch/arm/boot/dts/armada-370.dtsi index 648e5303446e..e134d7a90c9a 100644 --- a/arch/arm/boot/dts/armada-370.dtsi +++ b/arch/arm/boot/dts/armada-370.dtsi | |||
@@ -136,7 +136,7 @@ | |||
136 | gpio-controller; | 136 | gpio-controller; |
137 | #gpio-cells = <2>; | 137 | #gpio-cells = <2>; |
138 | interrupt-controller; | 138 | interrupt-controller; |
139 | #interrupts-cells = <2>; | 139 | #interrupt-cells = <2>; |
140 | interrupts = <82>, <83>, <84>, <85>; | 140 | interrupts = <82>, <83>, <84>, <85>; |
141 | }; | 141 | }; |
142 | 142 | ||
@@ -147,7 +147,7 @@ | |||
147 | gpio-controller; | 147 | gpio-controller; |
148 | #gpio-cells = <2>; | 148 | #gpio-cells = <2>; |
149 | interrupt-controller; | 149 | interrupt-controller; |
150 | #interrupts-cells = <2>; | 150 | #interrupt-cells = <2>; |
151 | interrupts = <87>, <88>, <89>, <90>; | 151 | interrupts = <87>, <88>, <89>, <90>; |
152 | }; | 152 | }; |
153 | 153 | ||
@@ -158,10 +158,15 @@ | |||
158 | gpio-controller; | 158 | gpio-controller; |
159 | #gpio-cells = <2>; | 159 | #gpio-cells = <2>; |
160 | interrupt-controller; | 160 | interrupt-controller; |
161 | #interrupts-cells = <2>; | 161 | #interrupt-cells = <2>; |
162 | interrupts = <91>; | 162 | interrupts = <91>; |
163 | }; | 163 | }; |
164 | 164 | ||
165 | timer@20300 { | ||
166 | compatible = "marvell,armada-370-timer"; | ||
167 | clocks = <&coreclk 2>; | ||
168 | }; | ||
169 | |||
165 | coreclk: mvebu-sar@18230 { | 170 | coreclk: mvebu-sar@18230 { |
166 | compatible = "marvell,armada-370-core-clock"; | 171 | compatible = "marvell,armada-370-core-clock"; |
167 | reg = <0x18230 0x08>; | 172 | reg = <0x18230 0x08>; |
diff --git a/arch/arm/boot/dts/armada-xp-mv78230.dtsi b/arch/arm/boot/dts/armada-xp-mv78230.dtsi index e45e363cc9b9..0358a33cba48 100644 --- a/arch/arm/boot/dts/armada-xp-mv78230.dtsi +++ b/arch/arm/boot/dts/armada-xp-mv78230.dtsi | |||
@@ -181,7 +181,7 @@ | |||
181 | gpio-controller; | 181 | gpio-controller; |
182 | #gpio-cells = <2>; | 182 | #gpio-cells = <2>; |
183 | interrupt-controller; | 183 | interrupt-controller; |
184 | #interrupts-cells = <2>; | 184 | #interrupt-cells = <2>; |
185 | interrupts = <82>, <83>, <84>, <85>; | 185 | interrupts = <82>, <83>, <84>, <85>; |
186 | }; | 186 | }; |
187 | 187 | ||
@@ -192,7 +192,7 @@ | |||
192 | gpio-controller; | 192 | gpio-controller; |
193 | #gpio-cells = <2>; | 193 | #gpio-cells = <2>; |
194 | interrupt-controller; | 194 | interrupt-controller; |
195 | #interrupts-cells = <2>; | 195 | #interrupt-cells = <2>; |
196 | interrupts = <87>, <88>, <89>; | 196 | interrupts = <87>, <88>, <89>; |
197 | }; | 197 | }; |
198 | }; | 198 | }; |
diff --git a/arch/arm/boot/dts/armada-xp-mv78260.dtsi b/arch/arm/boot/dts/armada-xp-mv78260.dtsi index 6dc3921df9b3..0e82c5062243 100644 --- a/arch/arm/boot/dts/armada-xp-mv78260.dtsi +++ b/arch/arm/boot/dts/armada-xp-mv78260.dtsi | |||
@@ -203,7 +203,7 @@ | |||
203 | gpio-controller; | 203 | gpio-controller; |
204 | #gpio-cells = <2>; | 204 | #gpio-cells = <2>; |
205 | interrupt-controller; | 205 | interrupt-controller; |
206 | #interrupts-cells = <2>; | 206 | #interrupt-cells = <2>; |
207 | interrupts = <82>, <83>, <84>, <85>; | 207 | interrupts = <82>, <83>, <84>, <85>; |
208 | }; | 208 | }; |
209 | 209 | ||
@@ -214,7 +214,7 @@ | |||
214 | gpio-controller; | 214 | gpio-controller; |
215 | #gpio-cells = <2>; | 215 | #gpio-cells = <2>; |
216 | interrupt-controller; | 216 | interrupt-controller; |
217 | #interrupts-cells = <2>; | 217 | #interrupt-cells = <2>; |
218 | interrupts = <87>, <88>, <89>, <90>; | 218 | interrupts = <87>, <88>, <89>, <90>; |
219 | }; | 219 | }; |
220 | 220 | ||
@@ -225,7 +225,7 @@ | |||
225 | gpio-controller; | 225 | gpio-controller; |
226 | #gpio-cells = <2>; | 226 | #gpio-cells = <2>; |
227 | interrupt-controller; | 227 | interrupt-controller; |
228 | #interrupts-cells = <2>; | 228 | #interrupt-cells = <2>; |
229 | interrupts = <91>; | 229 | interrupts = <91>; |
230 | }; | 230 | }; |
231 | 231 | ||
diff --git a/arch/arm/boot/dts/armada-xp-mv78460.dtsi b/arch/arm/boot/dts/armada-xp-mv78460.dtsi index a6661e3aea23..e82c1b80af17 100644 --- a/arch/arm/boot/dts/armada-xp-mv78460.dtsi +++ b/arch/arm/boot/dts/armada-xp-mv78460.dtsi | |||
@@ -301,7 +301,7 @@ | |||
301 | gpio-controller; | 301 | gpio-controller; |
302 | #gpio-cells = <2>; | 302 | #gpio-cells = <2>; |
303 | interrupt-controller; | 303 | interrupt-controller; |
304 | #interrupts-cells = <2>; | 304 | #interrupt-cells = <2>; |
305 | interrupts = <82>, <83>, <84>, <85>; | 305 | interrupts = <82>, <83>, <84>, <85>; |
306 | }; | 306 | }; |
307 | 307 | ||
@@ -312,7 +312,7 @@ | |||
312 | gpio-controller; | 312 | gpio-controller; |
313 | #gpio-cells = <2>; | 313 | #gpio-cells = <2>; |
314 | interrupt-controller; | 314 | interrupt-controller; |
315 | #interrupts-cells = <2>; | 315 | #interrupt-cells = <2>; |
316 | interrupts = <87>, <88>, <89>, <90>; | 316 | interrupts = <87>, <88>, <89>, <90>; |
317 | }; | 317 | }; |
318 | 318 | ||
@@ -323,7 +323,7 @@ | |||
323 | gpio-controller; | 323 | gpio-controller; |
324 | #gpio-cells = <2>; | 324 | #gpio-cells = <2>; |
325 | interrupt-controller; | 325 | interrupt-controller; |
326 | #interrupts-cells = <2>; | 326 | #interrupt-cells = <2>; |
327 | interrupts = <91>; | 327 | interrupts = <91>; |
328 | }; | 328 | }; |
329 | 329 | ||
diff --git a/arch/arm/boot/dts/armada-xp.dtsi b/arch/arm/boot/dts/armada-xp.dtsi index 7ba99ce107bb..def125c0eeaa 100644 --- a/arch/arm/boot/dts/armada-xp.dtsi +++ b/arch/arm/boot/dts/armada-xp.dtsi | |||
@@ -69,7 +69,7 @@ | |||
69 | }; | 69 | }; |
70 | 70 | ||
71 | timer@20300 { | 71 | timer@20300 { |
72 | marvell,timer-25Mhz; | 72 | compatible = "marvell,armada-xp-timer"; |
73 | }; | 73 | }; |
74 | 74 | ||
75 | coreclk: mvebu-sar@18230 { | 75 | coreclk: mvebu-sar@18230 { |
diff --git a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts index 84ff31cfbcdc..cc40f19ae3fc 100644 --- a/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts +++ b/arch/arm/boot/dts/kirkwood-netgear_readynas_duo_v2.dts | |||
@@ -63,6 +63,17 @@ | |||
63 | }; | 63 | }; |
64 | }; | 64 | }; |
65 | 65 | ||
66 | clocks { | ||
67 | #address-cells = <1>; | ||
68 | #size-cells = <0>; | ||
69 | |||
70 | g762_clk: fixedclk { | ||
71 | compatible = "fixed-clock"; | ||
72 | #clock-cells = <0>; | ||
73 | clock-frequency = <8192>; | ||
74 | }; | ||
75 | }; | ||
76 | |||
66 | i2c@11000 { | 77 | i2c@11000 { |
67 | status = "okay"; | 78 | status = "okay"; |
68 | 79 | ||
@@ -70,6 +81,15 @@ | |||
70 | compatible = "ricoh,rs5c372a"; | 81 | compatible = "ricoh,rs5c372a"; |
71 | reg = <0x32>; | 82 | reg = <0x32>; |
72 | }; | 83 | }; |
84 | |||
85 | g762: g762@3e { | ||
86 | compatible = "gmt,g762"; | ||
87 | reg = <0x3e>; | ||
88 | clocks = <&g762_clk>; /* input clock */ | ||
89 | fan_gear_mode = <0>; | ||
90 | fan_startv = <1>; | ||
91 | pwm_polarity = <0>; | ||
92 | }; | ||
73 | }; | 93 | }; |
74 | 94 | ||
75 | serial@12000 { | 95 | serial@12000 { |
diff --git a/arch/arm/boot/dts/kirkwood-nsa310-common.dtsi b/arch/arm/boot/dts/kirkwood-nsa310-common.dtsi new file mode 100644 index 000000000000..06267a91de38 --- /dev/null +++ b/arch/arm/boot/dts/kirkwood-nsa310-common.dtsi | |||
@@ -0,0 +1,107 @@ | |||
1 | #include "kirkwood.dtsi" | ||
2 | #include "kirkwood-6281.dtsi" | ||
3 | |||
4 | / { | ||
5 | model = "ZyXEL NSA310"; | ||
6 | |||
7 | ocp@f1000000 { | ||
8 | pinctrl: pinctrl@10000 { | ||
9 | |||
10 | pmx_usb_power_off: pmx-usb-power-off { | ||
11 | marvell,pins = "mpp21"; | ||
12 | marvell,function = "gpio"; | ||
13 | }; | ||
14 | pmx_pwr_off: pmx-pwr-off { | ||
15 | marvell,pins = "mpp48"; | ||
16 | marvell,function = "gpio"; | ||
17 | }; | ||
18 | |||
19 | }; | ||
20 | |||
21 | serial@12000 { | ||
22 | status = "ok"; | ||
23 | }; | ||
24 | |||
25 | sata@80000 { | ||
26 | status = "okay"; | ||
27 | nr-ports = <2>; | ||
28 | }; | ||
29 | |||
30 | nand@3000000 { | ||
31 | status = "okay"; | ||
32 | chip-delay = <35>; | ||
33 | |||
34 | partition@0 { | ||
35 | label = "uboot"; | ||
36 | reg = <0x0000000 0x0100000>; | ||
37 | read-only; | ||
38 | }; | ||
39 | partition@100000 { | ||
40 | label = "uboot_env"; | ||
41 | reg = <0x0100000 0x0080000>; | ||
42 | }; | ||
43 | partition@180000 { | ||
44 | label = "key_store"; | ||
45 | reg = <0x0180000 0x0080000>; | ||
46 | }; | ||
47 | partition@200000 { | ||
48 | label = "info"; | ||
49 | reg = <0x0200000 0x0080000>; | ||
50 | }; | ||
51 | partition@280000 { | ||
52 | label = "etc"; | ||
53 | reg = <0x0280000 0x0a00000>; | ||
54 | }; | ||
55 | partition@c80000 { | ||
56 | label = "kernel_1"; | ||
57 | reg = <0x0c80000 0x0a00000>; | ||
58 | }; | ||
59 | partition@1680000 { | ||
60 | label = "rootfs1"; | ||
61 | reg = <0x1680000 0x2fc0000>; | ||
62 | }; | ||
63 | partition@4640000 { | ||
64 | label = "kernel_2"; | ||
65 | reg = <0x4640000 0x0a00000>; | ||
66 | }; | ||
67 | partition@5040000 { | ||
68 | label = "rootfs2"; | ||
69 | reg = <0x5040000 0x2fc0000>; | ||
70 | }; | ||
71 | }; | ||
72 | |||
73 | pcie-controller { | ||
74 | status = "okay"; | ||
75 | |||
76 | pcie@1,0 { | ||
77 | status = "okay"; | ||
78 | }; | ||
79 | }; | ||
80 | }; | ||
81 | |||
82 | gpio_poweroff { | ||
83 | compatible = "gpio-poweroff"; | ||
84 | pinctrl-0 = <&pmx_pwr_off>; | ||
85 | pinctrl-names = "default"; | ||
86 | gpios = <&gpio1 16 0>; | ||
87 | }; | ||
88 | |||
89 | regulators { | ||
90 | compatible = "simple-bus"; | ||
91 | #address-cells = <1>; | ||
92 | #size-cells = <0>; | ||
93 | pinctrl-0 = <&pmx_usb_power_off>; | ||
94 | pinctrl-names = "default"; | ||
95 | |||
96 | usb0_power_off: regulator@1 { | ||
97 | compatible = "regulator-fixed"; | ||
98 | reg = <1>; | ||
99 | regulator-name = "USB Power Off"; | ||
100 | regulator-min-microvolt = <5000000>; | ||
101 | regulator-max-microvolt = <5000000>; | ||
102 | regulator-always-on; | ||
103 | regulator-boot-on; | ||
104 | gpio = <&gpio0 21 0>; | ||
105 | }; | ||
106 | }; | ||
107 | }; | ||
diff --git a/arch/arm/boot/dts/kirkwood-nsa310.dts b/arch/arm/boot/dts/kirkwood-nsa310.dts index bd7f05f6aa96..7aeae0c2c1f4 100644 --- a/arch/arm/boot/dts/kirkwood-nsa310.dts +++ b/arch/arm/boot/dts/kirkwood-nsa310.dts | |||
@@ -1,10 +1,8 @@ | |||
1 | /dts-v1/; | 1 | /dts-v1/; |
2 | 2 | ||
3 | #include "kirkwood.dtsi" | 3 | #include "kirkwood-nsa310-common.dtsi" |
4 | #include "kirkwood-6281.dtsi" | ||
5 | 4 | ||
6 | / { | 5 | / { |
7 | model = "ZyXEL NSA310"; | ||
8 | compatible = "zyxel,nsa310", "marvell,kirkwood-88f6281", "marvell,kirkwood"; | 6 | compatible = "zyxel,nsa310", "marvell,kirkwood-88f6281", "marvell,kirkwood"; |
9 | 7 | ||
10 | memory { | 8 | memory { |
@@ -52,11 +50,6 @@ | |||
52 | marvell,function = "gpio"; | 50 | marvell,function = "gpio"; |
53 | }; | 51 | }; |
54 | 52 | ||
55 | pmx_usb_power_off: pmx-usb-power-off { | ||
56 | marvell,pins = "mpp21"; | ||
57 | marvell,function = "gpio"; | ||
58 | }; | ||
59 | |||
60 | pmx_led_sys_green: pmx-led-sys-green { | 53 | pmx_led_sys_green: pmx-led-sys-green { |
61 | marvell,pins = "mpp28"; | 54 | marvell,pins = "mpp28"; |
62 | marvell,function = "gpio"; | 55 | marvell,function = "gpio"; |
@@ -106,20 +99,6 @@ | |||
106 | marvell,pins = "mpp46"; | 99 | marvell,pins = "mpp46"; |
107 | marvell,function = "gpio"; | 100 | marvell,function = "gpio"; |
108 | }; | 101 | }; |
109 | |||
110 | pmx_pwr_off: pmx-pwr-off { | ||
111 | marvell,pins = "mpp48"; | ||
112 | marvell,function = "gpio"; | ||
113 | }; | ||
114 | }; | ||
115 | |||
116 | serial@12000 { | ||
117 | status = "ok"; | ||
118 | }; | ||
119 | |||
120 | sata@80000 { | ||
121 | status = "okay"; | ||
122 | nr-ports = <2>; | ||
123 | }; | 102 | }; |
124 | 103 | ||
125 | i2c@11000 { | 104 | i2c@11000 { |
@@ -130,49 +109,6 @@ | |||
130 | reg = <0x2e>; | 109 | reg = <0x2e>; |
131 | }; | 110 | }; |
132 | }; | 111 | }; |
133 | |||
134 | nand@3000000 { | ||
135 | status = "okay"; | ||
136 | chip-delay = <35>; | ||
137 | |||
138 | partition@0 { | ||
139 | label = "uboot"; | ||
140 | reg = <0x0000000 0x0100000>; | ||
141 | read-only; | ||
142 | }; | ||
143 | partition@100000 { | ||
144 | label = "uboot_env"; | ||
145 | reg = <0x0100000 0x0080000>; | ||
146 | }; | ||
147 | partition@180000 { | ||
148 | label = "key_store"; | ||
149 | reg = <0x0180000 0x0080000>; | ||
150 | }; | ||
151 | partition@200000 { | ||
152 | label = "info"; | ||
153 | reg = <0x0200000 0x0080000>; | ||
154 | }; | ||
155 | partition@280000 { | ||
156 | label = "etc"; | ||
157 | reg = <0x0280000 0x0a00000>; | ||
158 | }; | ||
159 | partition@c80000 { | ||
160 | label = "kernel_1"; | ||
161 | reg = <0x0c80000 0x0a00000>; | ||
162 | }; | ||
163 | partition@1680000 { | ||
164 | label = "rootfs1"; | ||
165 | reg = <0x1680000 0x2fc0000>; | ||
166 | }; | ||
167 | partition@4640000 { | ||
168 | label = "kernel_2"; | ||
169 | reg = <0x4640000 0x0a00000>; | ||
170 | }; | ||
171 | partition@5040000 { | ||
172 | label = "rootfs2"; | ||
173 | reg = <0x5040000 0x2fc0000>; | ||
174 | }; | ||
175 | }; | ||
176 | }; | 112 | }; |
177 | 113 | ||
178 | gpio_keys { | 114 | gpio_keys { |
@@ -249,30 +185,4 @@ | |||
249 | gpios = <&gpio1 8 0>; | 185 | gpios = <&gpio1 8 0>; |
250 | }; | 186 | }; |
251 | }; | 187 | }; |
252 | |||
253 | gpio_poweroff { | ||
254 | compatible = "gpio-poweroff"; | ||
255 | pinctrl-0 = <&pmx_pwr_off>; | ||
256 | pinctrl-names = "default"; | ||
257 | gpios = <&gpio1 16 0>; | ||
258 | }; | ||
259 | |||
260 | regulators { | ||
261 | compatible = "simple-bus"; | ||
262 | #address-cells = <1>; | ||
263 | #size-cells = <0>; | ||
264 | pinctrl-0 = <&pmx_usb_power_off>; | ||
265 | pinctrl-names = "default"; | ||
266 | |||
267 | usb0_power_off: regulator@1 { | ||
268 | compatible = "regulator-fixed"; | ||
269 | reg = <1>; | ||
270 | regulator-name = "USB Power Off"; | ||
271 | regulator-min-microvolt = <5000000>; | ||
272 | regulator-max-microvolt = <5000000>; | ||
273 | regulator-always-on; | ||
274 | regulator-boot-on; | ||
275 | gpio = <&gpio0 21 0>; | ||
276 | }; | ||
277 | }; | ||
278 | }; | 188 | }; |
diff --git a/arch/arm/boot/dts/kirkwood-nsa310a.dts b/arch/arm/boot/dts/kirkwood-nsa310a.dts new file mode 100644 index 000000000000..ab0212b0e6f5 --- /dev/null +++ b/arch/arm/boot/dts/kirkwood-nsa310a.dts | |||
@@ -0,0 +1,165 @@ | |||
1 | /dts-v1/; | ||
2 | |||
3 | #include "kirkwood-nsa310-common.dtsi" | ||
4 | |||
5 | /* | ||
6 | * There are at least two different NSA310 designs. This variant does | ||
7 | * not have the red USB Led. | ||
8 | */ | ||
9 | |||
10 | / { | ||
11 | compatible = "zyxel,nsa310a", "zyxel,nsa310", "marvell,kirkwood-88f6281", "marvell,kirkwood"; | ||
12 | |||
13 | memory { | ||
14 | device_type = "memory"; | ||
15 | reg = <0x00000000 0x10000000>; | ||
16 | }; | ||
17 | |||
18 | chosen { | ||
19 | bootargs = "console=ttyS0,115200"; | ||
20 | }; | ||
21 | |||
22 | ocp@f1000000 { | ||
23 | pinctrl: pinctrl@10000 { | ||
24 | pinctrl-names = "default"; | ||
25 | |||
26 | pmx_led_esata_green: pmx-led-esata-green { | ||
27 | marvell,pins = "mpp12"; | ||
28 | marvell,function = "gpio"; | ||
29 | }; | ||
30 | |||
31 | pmx_led_esata_red: pmx-led-esata-red { | ||
32 | marvell,pins = "mpp13"; | ||
33 | marvell,function = "gpio"; | ||
34 | }; | ||
35 | |||
36 | pmx_led_usb_green: pmx-led-usb-green { | ||
37 | marvell,pins = "mpp15"; | ||
38 | marvell,function = "gpio"; | ||
39 | }; | ||
40 | |||
41 | pmx_usb_power_off: pmx-usb-power-off { | ||
42 | marvell,pins = "mpp21"; | ||
43 | marvell,function = "gpio"; | ||
44 | }; | ||
45 | |||
46 | pmx_led_sys_green: pmx-led-sys-green { | ||
47 | marvell,pins = "mpp28"; | ||
48 | marvell,function = "gpio"; | ||
49 | }; | ||
50 | |||
51 | pmx_led_sys_red: pmx-led-sys-red { | ||
52 | marvell,pins = "mpp29"; | ||
53 | marvell,function = "gpio"; | ||
54 | }; | ||
55 | |||
56 | pmx_btn_reset: pmx-btn-reset { | ||
57 | marvell,pins = "mpp36"; | ||
58 | marvell,function = "gpio"; | ||
59 | }; | ||
60 | |||
61 | pmx_btn_copy: pmx-btn-copy { | ||
62 | marvell,pins = "mpp37"; | ||
63 | marvell,function = "gpio"; | ||
64 | }; | ||
65 | |||
66 | pmx_led_copy_green: pmx-led-copy-green { | ||
67 | marvell,pins = "mpp39"; | ||
68 | marvell,function = "gpio"; | ||
69 | }; | ||
70 | |||
71 | pmx_led_copy_red: pmx-led-copy-red { | ||
72 | marvell,pins = "mpp40"; | ||
73 | marvell,function = "gpio"; | ||
74 | }; | ||
75 | |||
76 | pmx_led_hdd_green: pmx-led-hdd-green { | ||
77 | marvell,pins = "mpp41"; | ||
78 | marvell,function = "gpio"; | ||
79 | }; | ||
80 | |||
81 | pmx_led_hdd_red: pmx-led-hdd-red { | ||
82 | marvell,pins = "mpp42"; | ||
83 | marvell,function = "gpio"; | ||
84 | }; | ||
85 | |||
86 | pmx_btn_power: pmx-btn-power { | ||
87 | marvell,pins = "mpp46"; | ||
88 | marvell,function = "gpio"; | ||
89 | }; | ||
90 | |||
91 | }; | ||
92 | |||
93 | i2c@11000 { | ||
94 | status = "okay"; | ||
95 | |||
96 | lm85: lm85@2e { | ||
97 | compatible = "lm85"; | ||
98 | reg = <0x2e>; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | |||
103 | gpio_keys { | ||
104 | compatible = "gpio-keys"; | ||
105 | #address-cells = <1>; | ||
106 | #size-cells = <0>; | ||
107 | |||
108 | button@1 { | ||
109 | label = "Power Button"; | ||
110 | linux,code = <116>; | ||
111 | gpios = <&gpio1 14 0>; | ||
112 | }; | ||
113 | button@2 { | ||
114 | label = "Copy Button"; | ||
115 | linux,code = <133>; | ||
116 | gpios = <&gpio1 5 1>; | ||
117 | }; | ||
118 | button@3 { | ||
119 | label = "Reset Button"; | ||
120 | linux,code = <0x198>; | ||
121 | gpios = <&gpio1 4 1>; | ||
122 | }; | ||
123 | }; | ||
124 | |||
125 | gpio-leds { | ||
126 | compatible = "gpio-leds"; | ||
127 | |||
128 | green-sys { | ||
129 | label = "nsa310:green:sys"; | ||
130 | gpios = <&gpio0 28 0>; | ||
131 | }; | ||
132 | red-sys { | ||
133 | label = "nsa310:red:sys"; | ||
134 | gpios = <&gpio0 29 0>; | ||
135 | }; | ||
136 | green-hdd { | ||
137 | label = "nsa310:green:hdd"; | ||
138 | gpios = <&gpio1 9 0>; | ||
139 | }; | ||
140 | red-hdd { | ||
141 | label = "nsa310:red:hdd"; | ||
142 | gpios = <&gpio1 10 0>; | ||
143 | }; | ||
144 | green-esata { | ||
145 | label = "nsa310:green:esata"; | ||
146 | gpios = <&gpio0 12 0>; | ||
147 | }; | ||
148 | red-esata { | ||
149 | label = "nsa310:red:esata"; | ||
150 | gpios = <&gpio0 13 0>; | ||
151 | }; | ||
152 | green-usb { | ||
153 | label = "nsa310:green:usb"; | ||
154 | gpios = <&gpio0 15 0>; | ||
155 | }; | ||
156 | green-copy { | ||
157 | label = "nsa310:green:copy"; | ||
158 | gpios = <&gpio1 7 0>; | ||
159 | }; | ||
160 | red-copy { | ||
161 | label = "nsa310:red:copy"; | ||
162 | gpios = <&gpio1 8 0>; | ||
163 | }; | ||
164 | }; | ||
165 | }; | ||