c0844e3901fbc4364a8b1b6d8f9070c263608388
[openwrt/openwrt.git] / target / linux / kirkwood / patches-3.10 / 0027-ARM-kirkwood-remove-redundant-DT-board-files.patch
1 From 3973689b8f58652143ffa433bec6096d22904ee0 Mon Sep 17 00:00:00 2001
2 From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
3 Date: Wed, 3 Jul 2013 18:57:51 +0200
4 Subject: [PATCH 27/29] ARM: kirkwood: remove redundant DT board files
5
6 With DT support for mv643xx_eth board specific init for some boards now
7 is unneccessary. Remove those board files, Kconfig entries, and
8 corresponding entries in kirkwood_defconfig.
9
10 Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
11 Signed-off-by: Jason Cooper <jason@lakedaemon.net>
12 ---
13 arch/arm/configs/kirkwood_defconfig | 21 ----
14 arch/arm/mach-kirkwood/Kconfig | 162 --------------------------
15 arch/arm/mach-kirkwood/Makefile | 21 ----
16 arch/arm/mach-kirkwood/board-db88f628x-bp.c | 24 ----
17 arch/arm/mach-kirkwood/board-dnskw.c | 7 --
18 arch/arm/mach-kirkwood/board-dockstar.c | 32 -----
19 arch/arm/mach-kirkwood/board-dreamplug.c | 35 ------
20 arch/arm/mach-kirkwood/board-dt.c | 82 +------------
21 arch/arm/mach-kirkwood/board-goflexnet.c | 34 ------
22 arch/arm/mach-kirkwood/board-guruplug.c | 33 ------
23 arch/arm/mach-kirkwood/board-ib62x0.c | 29 -----
24 arch/arm/mach-kirkwood/board-iconnect.c | 24 ----
25 arch/arm/mach-kirkwood/board-iomega_ix2_200.c | 34 ------
26 arch/arm/mach-kirkwood/board-km_kirkwood.c | 44 -------
27 arch/arm/mach-kirkwood/board-lsxl.c | 52 ---------
28 arch/arm/mach-kirkwood/board-mplcec4.c | 35 ------
29 arch/arm/mach-kirkwood/board-ns2.c | 35 ------
30 arch/arm/mach-kirkwood/board-openblocks_a6.c | 26 -----
31 arch/arm/mach-kirkwood/board-readynas.c | 28 -----
32 arch/arm/mach-kirkwood/board-ts219.c | 43 -------
33 arch/arm/mach-kirkwood/board-usi_topkick.c | 29 -----
34 arch/arm/mach-kirkwood/common.h | 104 -----------------
35 22 files changed, 2 insertions(+), 932 deletions(-)
36 delete mode 100644 arch/arm/mach-kirkwood/board-db88f628x-bp.c
37 delete mode 100644 arch/arm/mach-kirkwood/board-dockstar.c
38 delete mode 100644 arch/arm/mach-kirkwood/board-dreamplug.c
39 delete mode 100644 arch/arm/mach-kirkwood/board-goflexnet.c
40 delete mode 100644 arch/arm/mach-kirkwood/board-guruplug.c
41 delete mode 100644 arch/arm/mach-kirkwood/board-ib62x0.c
42 delete mode 100644 arch/arm/mach-kirkwood/board-iconnect.c
43 delete mode 100644 arch/arm/mach-kirkwood/board-iomega_ix2_200.c
44 delete mode 100644 arch/arm/mach-kirkwood/board-km_kirkwood.c
45 delete mode 100644 arch/arm/mach-kirkwood/board-lsxl.c
46 delete mode 100644 arch/arm/mach-kirkwood/board-mplcec4.c
47 delete mode 100644 arch/arm/mach-kirkwood/board-ns2.c
48 delete mode 100644 arch/arm/mach-kirkwood/board-openblocks_a6.c
49 delete mode 100644 arch/arm/mach-kirkwood/board-readynas.c
50 delete mode 100644 arch/arm/mach-kirkwood/board-ts219.c
51 delete mode 100644 arch/arm/mach-kirkwood/board-usi_topkick.c
52
53 --- a/arch/arm/configs/kirkwood_defconfig
54 +++ b/arch/arm/configs/kirkwood_defconfig
55 @@ -30,28 +30,7 @@ CONFIG_MACH_SHEEVAPLUG=y
56 CONFIG_MACH_T5325=y
57 CONFIG_MACH_TS219=y
58 CONFIG_MACH_TS41X=y
59 -CONFIG_MACH_CLOUDBOX_DT=y
60 CONFIG_MACH_DLINK_KIRKWOOD_DT=y
61 -CONFIG_MACH_DOCKSTAR_DT=y
62 -CONFIG_MACH_DREAMPLUG_DT=y
63 -CONFIG_MACH_GOFLEXNET_DT=y
64 -CONFIG_MACH_GURUPLUG_DT=y
65 -CONFIG_MACH_IB62X0_DT=y
66 -CONFIG_MACH_ICONNECT_DT=y
67 -CONFIG_MACH_INETSPACE_V2_DT=y
68 -CONFIG_MACH_IOMEGA_IX2_200_DT=y
69 -CONFIG_MACH_KM_KIRKWOOD_DT=y
70 -CONFIG_MACH_LSXL_DT=y
71 -CONFIG_MACH_MPLCEC4_DT=y
72 -CONFIG_MACH_NETSPACE_LITE_V2_DT=y
73 -CONFIG_MACH_NETSPACE_MAX_V2_DT=y
74 -CONFIG_MACH_NETSPACE_MINI_V2_DT=y
75 -CONFIG_MACH_NETSPACE_V2_DT=y
76 -CONFIG_MACH_NSA310_DT=y
77 -CONFIG_MACH_OPENBLOCKS_A6_DT=y
78 -CONFIG_MACH_READYNAS_DT=y
79 -CONFIG_MACH_TOPKICK_DT=y
80 -CONFIG_MACH_TS219_DT=y
81 # CONFIG_CPU_FEROCEON_OLD_ID is not set
82 CONFIG_PREEMPT=y
83 CONFIG_AEABI=y
84 --- a/arch/arm/mach-kirkwood/Kconfig
85 +++ b/arch/arm/mach-kirkwood/Kconfig
86 @@ -140,20 +140,6 @@ config ARCH_KIRKWOOD_DT
87 Say 'Y' here if you want your kernel to support the
88 Marvell Kirkwood using flattened device tree.
89
90 -config MACH_CLOUDBOX_DT
91 - bool "LaCie CloudBox NAS (Flattened Device Tree)"
92 - select ARCH_KIRKWOOD_DT
93 - help
94 - Say 'Y' here if you want your kernel to support the LaCie
95 - CloudBox NAS, using Flattened Device Tree.
96 -
97 -config MACH_DB88F628X_BP_DT
98 - bool "Marvell DB-88F628x-BP Development Board (Flattened Device Tree)"
99 - help
100 - Say 'Y' here if you want your kernel to support the Marvell
101 - DB-88F6281-BP and DB-88F6282-BP Development Board (Flattened
102 - Device Tree).
103 -
104 config MACH_DLINK_KIRKWOOD_DT
105 bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
106 select ARCH_KIRKWOOD_DT
107 @@ -162,154 +148,6 @@ config MACH_DLINK_KIRKWOOD_DT
108 Kirkwood-based D-Link NASes such as DNS-320 & DNS-325,
109 using Flattened Device Tree.
110
111 -config MACH_DOCKSTAR_DT
112 - bool "Seagate FreeAgent Dockstar (Flattened Device Tree)"
113 - select ARCH_KIRKWOOD_DT
114 - help
115 - Say 'Y' here if you want your kernel to support the
116 - Seagate FreeAgent Dockstar (Flattened Device Tree).
117 -
118 -config MACH_DREAMPLUG_DT
119 - bool "Marvell DreamPlug (Flattened Device Tree)"
120 - select ARCH_KIRKWOOD_DT
121 - help
122 - Say 'Y' here if you want your kernel to support the
123 - Marvell DreamPlug (Flattened Device Tree).
124 -
125 -config MACH_GOFLEXNET_DT
126 - bool "Seagate GoFlex Net (Flattened Device Tree)"
127 - select ARCH_KIRKWOOD_DT
128 - help
129 - Say 'Y' here if you want your kernel to support the
130 - Seagate GoFlex Net (Flattened Device Tree).
131 -
132 -config MACH_GURUPLUG_DT
133 - bool "Marvell GuruPlug Reference Board (Flattened Device Tree)"
134 - select ARCH_KIRKWOOD_DT
135 - help
136 - Say 'Y' here if you want your kernel to support the
137 - Marvell GuruPlug Reference Board (Flattened Device Tree).
138 -
139 -config MACH_IB62X0_DT
140 - bool "RaidSonic IB-NAS6210, IB-NAS6220 (Flattened Device Tree)"
141 - select ARCH_KIRKWOOD_DT
142 - help
143 - Say 'Y' here if you want your kernel to support the
144 - RaidSonic IB-NAS6210 & IB-NAS6220 devices, using
145 - Flattened Device Tree.
146 -
147 -config MACH_ICONNECT_DT
148 - bool "Iomega Iconnect (Flattened Device Tree)"
149 - select ARCH_KIRKWOOD_DT
150 - help
151 - Say 'Y' here to enable Iomega Iconnect support.
152 -
153 -config MACH_INETSPACE_V2_DT
154 - bool "LaCie Internet Space v2 NAS (Flattened Device Tree)"
155 - select ARCH_KIRKWOOD_DT
156 - help
157 - Say 'Y' here if you want your kernel to support the LaCie
158 - Internet Space v2 NAS, using Flattened Device Tree.
159 -
160 -config MACH_IOMEGA_IX2_200_DT
161 - bool "Iomega StorCenter ix2-200 (Flattened Device Tree)"
162 - select ARCH_KIRKWOOD_DT
163 - help
164 - Say 'Y' here if you want your kernel to support the
165 - Iomega StorCenter ix2-200 (Flattened Device Tree).
166 -
167 -config MACH_KM_KIRKWOOD_DT
168 - bool "Keymile Kirkwood Reference Design (Flattened Device Tree)"
169 - select ARCH_KIRKWOOD_DT
170 - help
171 - Say 'Y' here if you want your kernel to support the
172 - Keymile Kirkwood Reference Desgin, using Flattened Device Tree.
173 -
174 -config MACH_LSXL_DT
175 - bool "Buffalo Linkstation LS-XHL, LS-CHLv2 (Flattened Device Tree)"
176 - select ARCH_KIRKWOOD_DT
177 - help
178 - Say 'Y' here if you want your kernel to support the
179 - Buffalo Linkstation LS-XHL & LS-CHLv2 devices, using
180 - Flattened Device Tree.
181 -
182 -config MACH_MPLCEC4_DT
183 - bool "MPL CEC4 (Flattened Device Tree)"
184 - select ARCH_KIRKWOOD_DT
185 - help
186 - Say 'Y' here if you want your kernel to support the
187 - MPL CEC4 (Flattened Device Tree).
188 -
189 -config MACH_NETSPACE_LITE_V2_DT
190 - bool "LaCie Network Space Lite v2 NAS (Flattened Device Tree)"
191 - select ARCH_KIRKWOOD_DT
192 - help
193 - Say 'Y' here if you want your kernel to support the LaCie
194 - Network Space Lite v2 NAS, using Flattened Device Tree.
195 -
196 -config MACH_NETSPACE_MAX_V2_DT
197 - bool "LaCie Network Space Max v2 NAS (Flattened Device Tree)"
198 - select ARCH_KIRKWOOD_DT
199 - help
200 - Say 'Y' here if you want your kernel to support the LaCie
201 - Network Space Max v2 NAS, using Flattened Device Tree.
202 -
203 -config MACH_NETSPACE_MINI_V2_DT
204 - bool "LaCie Network Space Mini v2 NAS (Flattened Device Tree)"
205 - select ARCH_KIRKWOOD_DT
206 - help
207 - Say 'Y' here if you want your kernel to support the LaCie
208 - Network Space Mini v2 NAS using Flattened Device Tree.
209 -
210 - This board is embedded in a product named CloudBox, which
211 - provides automatic backup on a 100GB cloud storage. This
212 - should not confused with a more recent LaCie NAS also named
213 - CloudBox. For this last, the disk capacity is 1TB or above.
214 -
215 -config MACH_NETSPACE_V2_DT
216 - bool "LaCie Network Space v2 NAS (Flattened Device Tree)"
217 - select ARCH_KIRKWOOD_DT
218 - help
219 - Say 'Y' here if you want your kernel to support the LaCie
220 - Network Space v2 NAS, using Flattened Device Tree.
221 -
222 -config MACH_OPENBLOCKS_A6_DT
223 - bool "Plat'Home OpenBlocks A6 (Flattened Device Tree)"
224 - select ARCH_KIRKWOOD_DT
225 - help
226 - Say 'Y' here if you want your kernel to support the
227 - Plat'Home OpenBlocks A6 (Flattened Device Tree).
228 -
229 -config MACH_READYNAS_DT
230 - bool "NETGEAR ReadyNAS Duo v2 (Flattened Device Tree)"
231 - select ARCH_KIRKWOOD_DT
232 - select ARM_APPENDED_DTB
233 - select ARM_ATAG_DTB_COMPAT
234 - help
235 - Say 'Y' here if you want your kernel to support the
236 - NETGEAR ReadyNAS Duo v2 using Fattened Device Tree.
237 -
238 -config MACH_TOPKICK_DT
239 - bool "USI Topkick (Flattened Device Tree)"
240 - select ARCH_KIRKWOOD_DT
241 - help
242 - Say 'Y' here if you want your kernel to support the
243 - USI Topkick, using Flattened Device Tree
244 -
245 -config MACH_TS219_DT
246 - bool "Device Tree for QNAP TS-11X, TS-21X NAS"
247 - select ARCH_KIRKWOOD_DT
248 - select ARM_APPENDED_DTB
249 - select ARM_ATAG_DTB_COMPAT
250 - help
251 - Say 'Y' here if you want your kernel to support the QNAP
252 - TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
253 - TS-219P+ Turbo NAS devices using Fattened Device Tree.
254 - There are two different Device Tree descriptions, depending
255 - on if the device is based on an if the board uses the MV6281
256 - or MV6282. If you have the wrong one, the buttons will not
257 - work.
258 -
259 endmenu
260
261 endif
262 --- a/arch/arm/mach-kirkwood/Makefile
263 +++ b/arch/arm/mach-kirkwood/Makefile
264 @@ -19,25 +19,4 @@ obj-$(CONFIG_MACH_TS219) += ts219-setup
265 obj-$(CONFIG_MACH_TS41X) += ts41x-setup.o tsx1x-common.o
266
267 obj-$(CONFIG_ARCH_KIRKWOOD_DT) += board-dt.o
268 -obj-$(CONFIG_MACH_CLOUDBOX_DT) += board-ns2.o
269 -obj-$(CONFIG_MACH_DB88F628X_BP_DT) += board-db88f628x-bp.o
270 obj-$(CONFIG_MACH_DLINK_KIRKWOOD_DT) += board-dnskw.o
271 -obj-$(CONFIG_MACH_DOCKSTAR_DT) += board-dockstar.o
272 -obj-$(CONFIG_MACH_DREAMPLUG_DT) += board-dreamplug.o
273 -obj-$(CONFIG_MACH_GOFLEXNET_DT) += board-goflexnet.o
274 -obj-$(CONFIG_MACH_GURUPLUG_DT) += board-guruplug.o
275 -obj-$(CONFIG_MACH_IB62X0_DT) += board-ib62x0.o
276 -obj-$(CONFIG_MACH_ICONNECT_DT) += board-iconnect.o
277 -obj-$(CONFIG_MACH_INETSPACE_V2_DT) += board-ns2.o
278 -obj-$(CONFIG_MACH_IOMEGA_IX2_200_DT) += board-iomega_ix2_200.o
279 -obj-$(CONFIG_MACH_KM_KIRKWOOD_DT) += board-km_kirkwood.o
280 -obj-$(CONFIG_MACH_LSXL_DT) += board-lsxl.o
281 -obj-$(CONFIG_MACH_MPLCEC4_DT) += board-mplcec4.o
282 -obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT) += board-ns2.o
283 -obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT) += board-ns2.o
284 -obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT) += board-ns2.o
285 -obj-$(CONFIG_MACH_NETSPACE_V2_DT) += board-ns2.o
286 -obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT) += board-openblocks_a6.o
287 -obj-$(CONFIG_MACH_READYNAS_DT) += board-readynas.o
288 -obj-$(CONFIG_MACH_TOPKICK_DT) += board-usi_topkick.o
289 -obj-$(CONFIG_MACH_TS219_DT) += board-ts219.o tsx1x-common.o
290 --- a/arch/arm/mach-kirkwood/board-db88f628x-bp.c
291 +++ /dev/null
292 @@ -1,24 +0,0 @@
293 -/*
294 - * Saeed Bishara <saeed@marvell.com>
295 - *
296 - * Marvell DB-88F628{1,2}-BP Development Board Setup
297 - *
298 - * This file is licensed under the terms of the GNU General Public
299 - * License version 2. This program is licensed "as is" without any
300 - * warranty of any kind, whether express or implied.
301 - */
302 -
303 -#include <linux/kernel.h>
304 -#include <linux/init.h>
305 -#include <linux/of.h>
306 -#include <linux/mv643xx_eth.h>
307 -#include "common.h"
308 -
309 -static struct mv643xx_eth_platform_data db88f628x_ge00_data = {
310 - .phy_addr = MV643XX_ETH_PHY_ADDR(8),
311 -};
312 -
313 -void __init db88f628x_init(void)
314 -{
315 - kirkwood_ge00_init(&db88f628x_ge00_data);
316 -}
317 --- a/arch/arm/mach-kirkwood/board-dnskw.c
318 +++ b/arch/arm/mach-kirkwood/board-dnskw.c
319 @@ -14,14 +14,9 @@
320 #include <linux/kernel.h>
321 #include <linux/init.h>
322 #include <linux/platform_device.h>
323 -#include <linux/mv643xx_eth.h>
324 #include <linux/gpio.h>
325 #include "common.h"
326
327 -static struct mv643xx_eth_platform_data dnskw_ge00_data = {
328 - .phy_addr = MV643XX_ETH_PHY_ADDR(8),
329 -};
330 -
331 /* Register any GPIO for output and set the value */
332 static void __init dnskw_gpio_register(unsigned gpio, char *name, int def)
333 {
334 @@ -36,8 +31,6 @@ static void __init dnskw_gpio_register(u
335
336 void __init dnskw_init(void)
337 {
338 - kirkwood_ge00_init(&dnskw_ge00_data);
339 -
340 /* Set NAS to turn back on after a power failure */
341 dnskw_gpio_register(37, "dnskw:power:recover", 1);
342 }
343 --- a/arch/arm/mach-kirkwood/board-dockstar.c
344 +++ /dev/null
345 @@ -1,32 +0,0 @@
346 -/*
347 - * arch/arm/mach-kirkwood/board-dockstar.c
348 - *
349 - * Seagate FreeAgent Dockstar Board Init for drivers not converted to
350 - * flattened device tree yet.
351 - *
352 - * This file is licensed under the terms of the GNU General Public
353 - * License version 2. This program is licensed "as is" without any
354 - * warranty of any kind, whether express or implied.
355 - *
356 - * Copied and modified for Seagate GoFlex Net support by
357 - * Joshua Coombs <josh.coombs@gmail.com> based on ArchLinux ARM's
358 - * GoFlex kernel patches.
359 - *
360 - */
361 -
362 -#include <linux/kernel.h>
363 -#include <linux/init.h>
364 -#include <linux/mv643xx_eth.h>
365 -#include "common.h"
366 -
367 -static struct mv643xx_eth_platform_data dockstar_ge00_data = {
368 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
369 -};
370 -
371 -void __init dockstar_dt_init(void)
372 -{
373 - /*
374 - * Basic setup. Needs to be called early.
375 - */
376 - kirkwood_ge00_init(&dockstar_ge00_data);
377 -}
378 --- a/arch/arm/mach-kirkwood/board-dreamplug.c
379 +++ /dev/null
380 @@ -1,35 +0,0 @@
381 -/*
382 - * Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net>
383 - *
384 - * arch/arm/mach-kirkwood/board-dreamplug.c
385 - *
386 - * Marvell DreamPlug Reference Board Init for drivers not converted to
387 - * flattened device tree yet.
388 - *
389 - * This file is licensed under the terms of the GNU General Public
390 - * License version 2. This program is licensed "as is" without any
391 - * warranty of any kind, whether express or implied.
392 - */
393 -
394 -#include <linux/kernel.h>
395 -#include <linux/init.h>
396 -#include <linux/mv643xx_eth.h>
397 -#include <linux/gpio.h>
398 -#include "common.h"
399 -
400 -static struct mv643xx_eth_platform_data dreamplug_ge00_data = {
401 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
402 -};
403 -
404 -static struct mv643xx_eth_platform_data dreamplug_ge01_data = {
405 - .phy_addr = MV643XX_ETH_PHY_ADDR(1),
406 -};
407 -
408 -void __init dreamplug_init(void)
409 -{
410 - /*
411 - * Basic setup. Needs to be called early.
412 - */
413 - kirkwood_ge00_init(&dreamplug_ge00_data);
414 - kirkwood_ge01_init(&dreamplug_ge01_data);
415 -}
416 --- a/arch/arm/mach-kirkwood/board-dt.c
417 +++ b/arch/arm/mach-kirkwood/board-dt.c
418 @@ -106,92 +106,14 @@ static void __init kirkwood_dt_init(void
419 kexec_reinit = kirkwood_enable_pcie;
420 #endif
421
422 - if (of_machine_is_compatible("globalscale,dreamplug"))
423 - dreamplug_init();
424 -
425 - if (of_machine_is_compatible("globalscale,guruplug"))
426 - guruplug_dt_init();
427 -
428 if (of_machine_is_compatible("dlink,dns-kirkwood"))
429 dnskw_init();
430
431 - if (of_machine_is_compatible("iom,iconnect"))
432 - iconnect_init();
433 -
434 - if (of_machine_is_compatible("raidsonic,ib-nas62x0"))
435 - ib62x0_init();
436 -
437 - if (of_machine_is_compatible("qnap,ts219"))
438 - qnap_dt_ts219_init();
439 -
440 - if (of_machine_is_compatible("seagate,dockstar"))
441 - dockstar_dt_init();
442 -
443 - if (of_machine_is_compatible("seagate,goflexnet"))
444 - goflexnet_init();
445 -
446 - if (of_machine_is_compatible("buffalo,lsxl"))
447 - lsxl_init();
448 -
449 - if (of_machine_is_compatible("iom,ix2-200"))
450 - iomega_ix2_200_init();
451 -
452 - if (of_machine_is_compatible("keymile,km_kirkwood"))
453 - km_kirkwood_init();
454 -
455 - if (of_machine_is_compatible("lacie,cloudbox") ||
456 - of_machine_is_compatible("lacie,inetspace_v2") ||
457 - of_machine_is_compatible("lacie,netspace_lite_v2") ||
458 - of_machine_is_compatible("lacie,netspace_max_v2") ||
459 - of_machine_is_compatible("lacie,netspace_mini_v2") ||
460 - of_machine_is_compatible("lacie,netspace_v2"))
461 - ns2_init();
462 -
463 - if (of_machine_is_compatible("marvell,db-88f6281-bp") ||
464 - of_machine_is_compatible("marvell,db-88f6282-bp"))
465 - db88f628x_init();
466 -
467 - if (of_machine_is_compatible("mpl,cec4"))
468 - mplcec4_init();
469 -
470 - if (of_machine_is_compatible("netgear,readynas-duo-v2"))
471 - netgear_readynas_init();
472 -
473 - if (of_machine_is_compatible("plathome,openblocks-a6"))
474 - openblocks_a6_init();
475 -
476 - if (of_machine_is_compatible("usi,topkick"))
477 - usi_topkick_init();
478 -
479 - of_platform_populate(NULL, kirkwood_dt_match_table, NULL, NULL);
480 + of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
481 }
482
483 static const char * const kirkwood_dt_board_compat[] = {
484 - "globalscale,dreamplug",
485 - "globalscale,guruplug",
486 - "dlink,dns-320",
487 - "dlink,dns-325",
488 - "iom,iconnect",
489 - "raidsonic,ib-nas62x0",
490 - "qnap,ts219",
491 - "seagate,dockstar",
492 - "seagate,goflexnet",
493 - "buffalo,lsxl",
494 - "iom,ix2-200",
495 - "keymile,km_kirkwood",
496 - "lacie,cloudbox",
497 - "lacie,inetspace_v2",
498 - "lacie,netspace_lite_v2",
499 - "lacie,netspace_max_v2",
500 - "lacie,netspace_mini_v2",
501 - "lacie,netspace_v2",
502 - "marvell,db-88f6281-bp",
503 - "marvell,db-88f6282-bp",
504 - "mpl,cec4",
505 - "netgear,readynas-duo-v2",
506 - "plathome,openblocks-a6",
507 - "usi,topkick",
508 - "zyxel,nsa310",
509 + "marvell,kirkwood",
510 NULL
511 };
512
513 --- a/arch/arm/mach-kirkwood/board-goflexnet.c
514 +++ /dev/null
515 @@ -1,34 +0,0 @@
516 -/*
517 - * Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net>
518 - *
519 - * arch/arm/mach-kirkwood/board-goflexnet.c
520 - *
521 - * Seagate GoFlext Net Board Init for drivers not converted to
522 - * flattened device tree yet.
523 - *
524 - * This file is licensed under the terms of the GNU General Public
525 - * License version 2. This program is licensed "as is" without any
526 - * warranty of any kind, whether express or implied.
527 - *
528 - * Copied and modified for Seagate GoFlex Net support by
529 - * Joshua Coombs <josh.coombs@gmail.com> based on ArchLinux ARM's
530 - * GoFlex kernel patches.
531 - *
532 - */
533 -
534 -#include <linux/kernel.h>
535 -#include <linux/init.h>
536 -#include <linux/mv643xx_eth.h>
537 -#include "common.h"
538 -
539 -static struct mv643xx_eth_platform_data goflexnet_ge00_data = {
540 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
541 -};
542 -
543 -void __init goflexnet_init(void)
544 -{
545 - /*
546 - * Basic setup. Needs to be called early.
547 - */
548 - kirkwood_ge00_init(&goflexnet_ge00_data);
549 -}
550 --- a/arch/arm/mach-kirkwood/board-guruplug.c
551 +++ /dev/null
552 @@ -1,33 +0,0 @@
553 -/*
554 - * arch/arm/mach-kirkwood/board-guruplug.c
555 - *
556 - * Marvell Guruplug Reference Board Init for drivers not converted to
557 - * flattened device tree yet.
558 - *
559 - * This file is licensed under the terms of the GNU General Public
560 - * License version 2. This program is licensed "as is" without any
561 - * warranty of any kind, whether express or implied.
562 - */
563 -
564 -#include <linux/kernel.h>
565 -#include <linux/init.h>
566 -#include <linux/mv643xx_eth.h>
567 -#include <linux/gpio.h>
568 -#include "common.h"
569 -
570 -static struct mv643xx_eth_platform_data guruplug_ge00_data = {
571 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
572 -};
573 -
574 -static struct mv643xx_eth_platform_data guruplug_ge01_data = {
575 - .phy_addr = MV643XX_ETH_PHY_ADDR(1),
576 -};
577 -
578 -void __init guruplug_dt_init(void)
579 -{
580 - /*
581 - * Basic setup. Needs to be called early.
582 - */
583 - kirkwood_ge00_init(&guruplug_ge00_data);
584 - kirkwood_ge01_init(&guruplug_ge01_data);
585 -}
586 --- a/arch/arm/mach-kirkwood/board-ib62x0.c
587 +++ /dev/null
588 @@ -1,29 +0,0 @@
589 -/*
590 - * Copyright 2012 (C), Simon Baatz <gmbnomis@gmail.com>
591 - *
592 - * arch/arm/mach-kirkwood/board-ib62x0.c
593 - *
594 - * RaidSonic ICY BOX IB-NAS6210 & IB-NAS6220 init for drivers not
595 - * converted to flattened device tree yet.
596 - *
597 - * This file is licensed under the terms of the GNU General Public
598 - * License version 2. This program is licensed "as is" without any
599 - * warranty of any kind, whether express or implied.
600 - */
601 -
602 -#include <linux/kernel.h>
603 -#include <linux/init.h>
604 -#include <linux/mv643xx_eth.h>
605 -#include "common.h"
606 -
607 -static struct mv643xx_eth_platform_data ib62x0_ge00_data = {
608 - .phy_addr = MV643XX_ETH_PHY_ADDR(8),
609 -};
610 -
611 -void __init ib62x0_init(void)
612 -{
613 - /*
614 - * Basic setup. Needs to be called early.
615 - */
616 - kirkwood_ge00_init(&ib62x0_ge00_data);
617 -}
618 --- a/arch/arm/mach-kirkwood/board-iconnect.c
619 +++ /dev/null
620 @@ -1,24 +0,0 @@
621 -/*
622 - * arch/arm/mach-kirkwood/board-iconnect.c
623 - *
624 - * Iomega i-connect Board Setup
625 - *
626 - * This file is licensed under the terms of the GNU General Public
627 - * License version 2. This program is licensed "as is" without any
628 - * warranty of any kind, whether express or implied.
629 - */
630 -
631 -#include <linux/kernel.h>
632 -#include <linux/init.h>
633 -#include <linux/of.h>
634 -#include <linux/mv643xx_eth.h>
635 -#include "common.h"
636 -
637 -static struct mv643xx_eth_platform_data iconnect_ge00_data = {
638 - .phy_addr = MV643XX_ETH_PHY_ADDR(11),
639 -};
640 -
641 -void __init iconnect_init(void)
642 -{
643 - kirkwood_ge00_init(&iconnect_ge00_data);
644 -}
645 --- a/arch/arm/mach-kirkwood/board-iomega_ix2_200.c
646 +++ /dev/null
647 @@ -1,34 +0,0 @@
648 -/*
649 - * arch/arm/mach-kirkwood/board-iomega_ix2_200.c
650 - *
651 - * Iomega StorCenter ix2-200
652 - *
653 - * This file is licensed under the terms of the GNU General Public
654 - * License version 2. This program is licensed "as is" without any
655 - * warranty of any kind, whether express or implied.
656 - */
657 -
658 -#include <linux/kernel.h>
659 -#include <linux/init.h>
660 -#include <linux/mv643xx_eth.h>
661 -#include <linux/ethtool.h>
662 -#include "common.h"
663 -
664 -static struct mv643xx_eth_platform_data iomega_ix2_200_ge00_data = {
665 - .phy_addr = MV643XX_ETH_PHY_NONE,
666 - .speed = SPEED_1000,
667 - .duplex = DUPLEX_FULL,
668 -};
669 -
670 -static struct mv643xx_eth_platform_data iomega_ix2_200_ge01_data = {
671 - .phy_addr = MV643XX_ETH_PHY_ADDR(11),
672 -};
673 -
674 -void __init iomega_ix2_200_init(void)
675 -{
676 - /*
677 - * Basic setup. Needs to be called early.
678 - */
679 - kirkwood_ge00_init(&iomega_ix2_200_ge00_data);
680 - kirkwood_ge01_init(&iomega_ix2_200_ge01_data);
681 -}
682 --- a/arch/arm/mach-kirkwood/board-km_kirkwood.c
683 +++ /dev/null
684 @@ -1,44 +0,0 @@
685 -/*
686 - * Copyright 2012 2012 KEYMILE AG, CH-3097 Bern
687 - * Valentin Longchamp <valentin.longchamp@keymile.com>
688 - *
689 - * arch/arm/mach-kirkwood/board-km_kirkwood.c
690 - *
691 - * Keymile km_kirkwood Reference Desing Init for drivers not converted to
692 - * flattened device tree yet.
693 - *
694 - * This file is licensed under the terms of the GNU General Public
695 - * License version 2. This program is licensed "as is" without any
696 - * warranty of any kind, whether express or implied.
697 - */
698 -
699 -#include <linux/kernel.h>
700 -#include <linux/init.h>
701 -#include <linux/mv643xx_eth.h>
702 -#include <linux/clk.h>
703 -#include <linux/clk-private.h>
704 -#include "common.h"
705 -
706 -static struct mv643xx_eth_platform_data km_kirkwood_ge00_data = {
707 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
708 -};
709 -
710 -void __init km_kirkwood_init(void)
711 -{
712 - struct clk *sata_clk;
713 - /*
714 - * Our variant of kirkwood (integrated in the Bobcat) hangs on accessing
715 - * SATA bits (14-15) of the Clock Gating Control Register. Since these
716 - * devices are also not present in this variant, their clocks get
717 - * disabled because unused when clk_disable_unused() gets called.
718 - * That's why we change the flags to these clocks to CLK_IGNORE_UNUSED
719 - */
720 - sata_clk = clk_get_sys("sata_mv.0", "0");
721 - if (!IS_ERR(sata_clk))
722 - sata_clk->flags |= CLK_IGNORE_UNUSED;
723 - sata_clk = clk_get_sys("sata_mv.0", "1");
724 - if (!IS_ERR(sata_clk))
725 - sata_clk->flags |= CLK_IGNORE_UNUSED;
726 -
727 - kirkwood_ge00_init(&km_kirkwood_ge00_data);
728 -}
729 --- a/arch/arm/mach-kirkwood/board-lsxl.c
730 +++ /dev/null
731 @@ -1,52 +0,0 @@
732 -/*
733 - * Copyright 2012 (C), Michael Walle <michael@walle.cc>
734 - *
735 - * arch/arm/mach-kirkwood/board-lsxl.c
736 - *
737 - * Buffalo Linkstation LS-XHL and LS-CHLv2 init for drivers not
738 - * converted to flattened device tree yet.
739 - *
740 - * This file is licensed under the terms of the GNU General Public
741 - * License version 2. This program is licensed "as is" without any
742 - * warranty of any kind, whether express or implied.
743 - */
744 -
745 -#include <linux/kernel.h>
746 -#include <linux/init.h>
747 -#include <linux/platform_device.h>
748 -#include <linux/mv643xx_eth.h>
749 -#include "common.h"
750 -
751 -static struct mv643xx_eth_platform_data lsxl_ge00_data = {
752 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
753 -};
754 -
755 -static struct mv643xx_eth_platform_data lsxl_ge01_data = {
756 - .phy_addr = MV643XX_ETH_PHY_ADDR(8),
757 -};
758 -
759 -/*
760 - * On the LS-XHL/LS-CHLv2, the shutdown process is following:
761 - * - Userland monitors key events until the power switch goes to off position
762 - * - The board reboots
763 - * - U-boot starts and goes into an idle mode waiting for the user
764 - * to move the switch to ON position
765 - *
766 - */
767 -static void lsxl_power_off(void)
768 -{
769 - kirkwood_restart('h', NULL);
770 -}
771 -
772 -void __init lsxl_init(void)
773 -{
774 - /*
775 - * Basic setup. Needs to be called early.
776 - */
777 -
778 - kirkwood_ge00_init(&lsxl_ge00_data);
779 - kirkwood_ge01_init(&lsxl_ge01_data);
780 -
781 - /* register power-off method */
782 - pm_power_off = lsxl_power_off;
783 -}
784 --- a/arch/arm/mach-kirkwood/board-mplcec4.c
785 +++ /dev/null
786 @@ -1,35 +0,0 @@
787 -/*
788 - * Copyright (C) 2012 MPL AG, Switzerland
789 - * Stefan Peter <s.peter@mpl.ch>
790 - *
791 - * arch/arm/mach-kirkwood/board-mplcec4.c
792 - *
793 - * This file is licensed under the terms of the GNU General Public
794 - * License version 2. This program is licensed "as is" without any
795 - * warranty of any kind, whether express or implied.
796 - */
797 -
798 -#include <linux/kernel.h>
799 -#include <linux/init.h>
800 -#include <linux/mv643xx_eth.h>
801 -#include "common.h"
802 -
803 -static struct mv643xx_eth_platform_data mplcec4_ge00_data = {
804 - .phy_addr = MV643XX_ETH_PHY_ADDR(1),
805 -};
806 -
807 -static struct mv643xx_eth_platform_data mplcec4_ge01_data = {
808 - .phy_addr = MV643XX_ETH_PHY_ADDR(2),
809 -};
810 -
811 -void __init mplcec4_init(void)
812 -{
813 - /*
814 - * Basic setup. Needs to be called early.
815 - */
816 - kirkwood_ge00_init(&mplcec4_ge00_data);
817 - kirkwood_ge01_init(&mplcec4_ge01_data);
818 -}
819 -
820 -
821 -
822 --- a/arch/arm/mach-kirkwood/board-ns2.c
823 +++ /dev/null
824 @@ -1,35 +0,0 @@
825 -/*
826 - * Copyright 2012 (C), Simon Guinot <simon.guinot@sequanux.org>
827 - *
828 - * arch/arm/mach-kirkwood/board-ns2.c
829 - *
830 - * LaCie Network Space v2 board (and parents) initialization for drivers
831 - * not converted to flattened device tree yet.
832 - *
833 - * This file is licensed under the terms of the GNU General Public
834 - * License version 2. This program is licensed "as is" without any
835 - * warranty of any kind, whether express or implied.
836 - */
837 -
838 -#include <linux/kernel.h>
839 -#include <linux/init.h>
840 -#include <linux/platform_device.h>
841 -#include <linux/mv643xx_eth.h>
842 -#include <linux/of.h>
843 -#include "common.h"
844 -
845 -static struct mv643xx_eth_platform_data ns2_ge00_data = {
846 - .phy_addr = MV643XX_ETH_PHY_ADDR(8),
847 -};
848 -
849 -void __init ns2_init(void)
850 -{
851 - /*
852 - * Basic setup. Needs to be called early.
853 - */
854 - if (of_machine_is_compatible("lacie,cloudbox") ||
855 - of_machine_is_compatible("lacie,netspace_lite_v2") ||
856 - of_machine_is_compatible("lacie,netspace_mini_v2"))
857 - ns2_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
858 - kirkwood_ge00_init(&ns2_ge00_data);
859 -}
860 --- a/arch/arm/mach-kirkwood/board-openblocks_a6.c
861 +++ /dev/null
862 @@ -1,26 +0,0 @@
863 -/*
864 - * Copyright 2012 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
865 - *
866 - * arch/arm/mach-kirkwood/board-openblocks_a6.c
867 - *
868 - * This file is licensed under the terms of the GNU General Public
869 - * License version 2. This program is licensed "as is" without any
870 - * warranty of any kind, whether express or implied.
871 - */
872 -
873 -#include <linux/kernel.h>
874 -#include <linux/init.h>
875 -#include <linux/mv643xx_eth.h>
876 -#include "common.h"
877 -
878 -static struct mv643xx_eth_platform_data openblocks_ge00_data = {
879 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
880 -};
881 -
882 -void __init openblocks_a6_init(void)
883 -{
884 - /*
885 - * Basic setup. Needs to be called early.
886 - */
887 - kirkwood_ge00_init(&openblocks_ge00_data);
888 -}
889 --- a/arch/arm/mach-kirkwood/board-readynas.c
890 +++ /dev/null
891 @@ -1,28 +0,0 @@
892 -/*
893 - * NETGEAR ReadyNAS Duo v2 Board setup for drivers not already
894 - * converted to DT.
895 - *
896 - * Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org>
897 - *
898 - * This program is free software; you can redistribute it and/or
899 - * modify it under the terms of the GNU General Public License
900 - * as published by the Free Software Foundation; either version
901 - * 2 of the License, or (at your option) any later version.
902 - */
903 -
904 -#include <linux/kernel.h>
905 -#include <linux/init.h>
906 -#include <linux/platform_device.h>
907 -#include <linux/mv643xx_eth.h>
908 -#include <mach/kirkwood.h>
909 -#include "common.h"
910 -
911 -static struct mv643xx_eth_platform_data netgear_readynas_ge00_data = {
912 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
913 -};
914 -
915 -void __init netgear_readynas_init(void)
916 -{
917 - kirkwood_ge00_init(&netgear_readynas_ge00_data);
918 - kirkwood_pcie_init(KW_PCIE0);
919 -}
920 --- a/arch/arm/mach-kirkwood/board-ts219.c
921 +++ /dev/null
922 @@ -1,43 +0,0 @@
923 -/*
924 - *
925 - * QNAP TS-11x/TS-21x Turbo NAS Board Setup via DT
926 - *
927 - * Copyright (C) 2012 Andrew Lunn <andrew@lunn.ch>
928 - *
929 - * Based on the board file ts219-setup.c:
930 - *
931 - * Copyright (C) 2009 Martin Michlmayr <tbm@cyrius.com>
932 - * Copyright (C) 2008 Byron Bradley <byron.bbradley@gmail.com>
933 - *
934 - * This program is free software; you can redistribute it and/or
935 - * modify it under the terms of the GNU General Public License
936 - * as published by the Free Software Foundation; either version
937 - * 2 of the License, or (at your option) any later version.
938 - */
939 -
940 -#include <linux/kernel.h>
941 -#include <linux/init.h>
942 -#include <linux/platform_device.h>
943 -#include <linux/mv643xx_eth.h>
944 -#include <asm/mach-types.h>
945 -#include <asm/mach/arch.h>
946 -#include <mach/kirkwood.h>
947 -#include "common.h"
948 -#include "tsx1x-common.h"
949 -
950 -static struct mv643xx_eth_platform_data qnap_ts219_ge00_data = {
951 - .phy_addr = MV643XX_ETH_PHY_ADDR(8),
952 -};
953 -
954 -void __init qnap_dt_ts219_init(void)
955 -{
956 - u32 dev, rev;
957 -
958 - kirkwood_pcie_id(&dev, &rev);
959 - if (dev == MV88F6282_DEV_ID)
960 - qnap_ts219_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
961 -
962 - kirkwood_ge00_init(&qnap_ts219_ge00_data);
963 -
964 - pm_power_off = qnap_tsx1x_power_off;
965 -}
966 --- a/arch/arm/mach-kirkwood/board-usi_topkick.c
967 +++ /dev/null
968 @@ -1,29 +0,0 @@
969 -/*
970 - * Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net>
971 - *
972 - * arch/arm/mach-kirkwood/board-usi_topkick.c
973 - *
974 - * USI Topkick Init for drivers not converted to flattened device tree yet.
975 - *
976 - * This file is licensed under the terms of the GNU General Public
977 - * License version 2. This program is licensed "as is" without any
978 - * warranty of any kind, whether express or implied.
979 - */
980 -
981 -#include <linux/kernel.h>
982 -#include <linux/init.h>
983 -#include <linux/mv643xx_eth.h>
984 -#include <linux/gpio.h>
985 -#include "common.h"
986 -
987 -static struct mv643xx_eth_platform_data topkick_ge00_data = {
988 - .phy_addr = MV643XX_ETH_PHY_ADDR(0),
989 -};
990 -
991 -void __init usi_topkick_init(void)
992 -{
993 - /*
994 - * Basic setup. Needs to be called early.
995 - */
996 - kirkwood_ge00_init(&topkick_ge00_data);
997 -}
998 --- a/arch/arm/mach-kirkwood/common.h
999 +++ b/arch/arm/mach-kirkwood/common.h
1000 @@ -55,116 +55,12 @@ void kirkwood_restart(char, const char *
1001 void kirkwood_clk_init(void);
1002
1003 /* board init functions for boards not fully converted to fdt */
1004 -#ifdef CONFIG_MACH_DREAMPLUG_DT
1005 -void dreamplug_init(void);
1006 -#else
1007 -static inline void dreamplug_init(void) {};
1008 -#endif
1009 -#ifdef CONFIG_MACH_GURUPLUG_DT
1010 -void guruplug_dt_init(void);
1011 -#else
1012 -static inline void guruplug_dt_init(void) {};
1013 -#endif
1014 -#ifdef CONFIG_MACH_TS219_DT
1015 -void qnap_dt_ts219_init(void);
1016 -#else
1017 -static inline void qnap_dt_ts219_init(void) {};
1018 -#endif
1019 -
1020 #ifdef CONFIG_MACH_DLINK_KIRKWOOD_DT
1021 void dnskw_init(void);
1022 #else
1023 static inline void dnskw_init(void) {};
1024 #endif
1025
1026 -#ifdef CONFIG_MACH_ICONNECT_DT
1027 -void iconnect_init(void);
1028 -#else
1029 -static inline void iconnect_init(void) {};
1030 -#endif
1031 -
1032 -#ifdef CONFIG_MACH_IB62X0_DT
1033 -void ib62x0_init(void);
1034 -#else
1035 -static inline void ib62x0_init(void) {};
1036 -#endif
1037 -
1038 -#ifdef CONFIG_MACH_DOCKSTAR_DT
1039 -void dockstar_dt_init(void);
1040 -#else
1041 -static inline void dockstar_dt_init(void) {};
1042 -#endif
1043 -
1044 -#ifdef CONFIG_MACH_GOFLEXNET_DT
1045 -void goflexnet_init(void);
1046 -#else
1047 -static inline void goflexnet_init(void) {};
1048 -#endif
1049 -
1050 -#ifdef CONFIG_MACH_LSXL_DT
1051 -void lsxl_init(void);
1052 -#else
1053 -static inline void lsxl_init(void) {};
1054 -#endif
1055 -
1056 -#ifdef CONFIG_MACH_IOMEGA_IX2_200_DT
1057 -void iomega_ix2_200_init(void);
1058 -#else
1059 -static inline void iomega_ix2_200_init(void) {};
1060 -#endif
1061 -
1062 -#ifdef CONFIG_MACH_KM_KIRKWOOD_DT
1063 -void km_kirkwood_init(void);
1064 -#else
1065 -static inline void km_kirkwood_init(void) {};
1066 -#endif
1067 -
1068 -#ifdef CONFIG_MACH_DB88F628X_BP_DT
1069 -void db88f628x_init(void);
1070 -#else
1071 -static inline void db88f628x_init(void) {};
1072 -#endif
1073 -
1074 -#ifdef CONFIG_MACH_MPLCEC4_DT
1075 -void mplcec4_init(void);
1076 -#else
1077 -static inline void mplcec4_init(void) {};
1078 -#endif
1079 -
1080 -#if defined(CONFIG_MACH_INETSPACE_V2_DT) || \
1081 - defined(CONFIG_MACH_NETSPACE_V2_DT) || \
1082 - defined(CONFIG_MACH_NETSPACE_MAX_V2_DT) || \
1083 - defined(CONFIG_MACH_NETSPACE_LITE_V2_DT) || \
1084 - defined(CONFIG_MACH_NETSPACE_MINI_V2_DT)
1085 -void ns2_init(void);
1086 -#else
1087 -static inline void ns2_init(void) {};
1088 -#endif
1089 -
1090 -#ifdef CONFIG_MACH_OPENBLOCKS_A6_DT
1091 -void openblocks_a6_init(void);
1092 -#else
1093 -static inline void openblocks_a6_init(void) {};
1094 -#endif
1095 -
1096 -#ifdef CONFIG_MACH_READYNAS_DT
1097 -void netgear_readynas_init(void);
1098 -#else
1099 -static inline void netgear_readynas_init(void) {};
1100 -#endif
1101 -
1102 -#ifdef CONFIG_MACH_TOPKICK_DT
1103 -void usi_topkick_init(void);
1104 -#else
1105 -static inline void usi_topkick_init(void) {};
1106 -#endif
1107 -
1108 -#ifdef CONFIG_MACH_CLOUDBOX_DT
1109 -void cloudbox_init(void);
1110 -#else
1111 -static inline void cloudbox_init(void) {};
1112 -#endif
1113 -
1114 /* early init functions not converted to fdt yet */
1115 char *kirkwood_id(void);
1116 void kirkwood_l2_init(void);