summaryrefslogtreecommitdiff
path: root/target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch
diff options
context:
space:
mode:
authorluka <luka@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-10-03 02:50:00 +0000
committerluka <luka@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-10-03 02:50:00 +0000
commitcd36fc6be2d5a4598695f75dcc8142afe115f075 (patch)
tree8d013582ea989c45b94bd78cc7c5d7ab1c058854 /target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch
parent9a129ff72240a88041a68ee2d9dfd009aa04111b (diff)
kirkwood: update patches and configuration (3.10)
Signed-off-by: Luka Perkov <luka@openwrt.org> git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38295 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch')
-rw-r--r--target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch1116
1 files changed, 1116 insertions, 0 deletions
diff --git a/target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch b/target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch
new file mode 100644
index 0000000000..c0844e3901
--- /dev/null
+++ b/target/linux/kirkwood/patches-3.10/0027-ARM-kirkwood-remove-redundant-DT-board-files.patch
@@ -0,0 +1,1116 @@
+From 3973689b8f58652143ffa433bec6096d22904ee0 Mon Sep 17 00:00:00 2001
+From: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
+Date: Wed, 3 Jul 2013 18:57:51 +0200
+Subject: [PATCH 27/29] ARM: kirkwood: remove redundant DT board files
+
+With DT support for mv643xx_eth board specific init for some boards now
+is unneccessary. Remove those board files, Kconfig entries, and
+corresponding entries in kirkwood_defconfig.
+
+Signed-off-by: Sebastian Hesselbarth <sebastian.hesselbarth@gmail.com>
+Signed-off-by: Jason Cooper <jason@lakedaemon.net>
+---
+ arch/arm/configs/kirkwood_defconfig | 21 ----
+ arch/arm/mach-kirkwood/Kconfig | 162 --------------------------
+ arch/arm/mach-kirkwood/Makefile | 21 ----
+ arch/arm/mach-kirkwood/board-db88f628x-bp.c | 24 ----
+ arch/arm/mach-kirkwood/board-dnskw.c | 7 --
+ arch/arm/mach-kirkwood/board-dockstar.c | 32 -----
+ arch/arm/mach-kirkwood/board-dreamplug.c | 35 ------
+ arch/arm/mach-kirkwood/board-dt.c | 82 +------------
+ arch/arm/mach-kirkwood/board-goflexnet.c | 34 ------
+ arch/arm/mach-kirkwood/board-guruplug.c | 33 ------
+ arch/arm/mach-kirkwood/board-ib62x0.c | 29 -----
+ arch/arm/mach-kirkwood/board-iconnect.c | 24 ----
+ arch/arm/mach-kirkwood/board-iomega_ix2_200.c | 34 ------
+ arch/arm/mach-kirkwood/board-km_kirkwood.c | 44 -------
+ arch/arm/mach-kirkwood/board-lsxl.c | 52 ---------
+ arch/arm/mach-kirkwood/board-mplcec4.c | 35 ------
+ arch/arm/mach-kirkwood/board-ns2.c | 35 ------
+ arch/arm/mach-kirkwood/board-openblocks_a6.c | 26 -----
+ arch/arm/mach-kirkwood/board-readynas.c | 28 -----
+ arch/arm/mach-kirkwood/board-ts219.c | 43 -------
+ arch/arm/mach-kirkwood/board-usi_topkick.c | 29 -----
+ arch/arm/mach-kirkwood/common.h | 104 -----------------
+ 22 files changed, 2 insertions(+), 932 deletions(-)
+ delete mode 100644 arch/arm/mach-kirkwood/board-db88f628x-bp.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-dockstar.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-dreamplug.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-goflexnet.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-guruplug.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-ib62x0.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-iconnect.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-iomega_ix2_200.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-km_kirkwood.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-lsxl.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-mplcec4.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-ns2.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-openblocks_a6.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-readynas.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-ts219.c
+ delete mode 100644 arch/arm/mach-kirkwood/board-usi_topkick.c
+
+--- a/arch/arm/configs/kirkwood_defconfig
++++ b/arch/arm/configs/kirkwood_defconfig
+@@ -30,28 +30,7 @@ CONFIG_MACH_SHEEVAPLUG=y
+ CONFIG_MACH_T5325=y
+ CONFIG_MACH_TS219=y
+ CONFIG_MACH_TS41X=y
+-CONFIG_MACH_CLOUDBOX_DT=y
+ CONFIG_MACH_DLINK_KIRKWOOD_DT=y
+-CONFIG_MACH_DOCKSTAR_DT=y
+-CONFIG_MACH_DREAMPLUG_DT=y
+-CONFIG_MACH_GOFLEXNET_DT=y
+-CONFIG_MACH_GURUPLUG_DT=y
+-CONFIG_MACH_IB62X0_DT=y
+-CONFIG_MACH_ICONNECT_DT=y
+-CONFIG_MACH_INETSPACE_V2_DT=y
+-CONFIG_MACH_IOMEGA_IX2_200_DT=y
+-CONFIG_MACH_KM_KIRKWOOD_DT=y
+-CONFIG_MACH_LSXL_DT=y
+-CONFIG_MACH_MPLCEC4_DT=y
+-CONFIG_MACH_NETSPACE_LITE_V2_DT=y
+-CONFIG_MACH_NETSPACE_MAX_V2_DT=y
+-CONFIG_MACH_NETSPACE_MINI_V2_DT=y
+-CONFIG_MACH_NETSPACE_V2_DT=y
+-CONFIG_MACH_NSA310_DT=y
+-CONFIG_MACH_OPENBLOCKS_A6_DT=y
+-CONFIG_MACH_READYNAS_DT=y
+-CONFIG_MACH_TOPKICK_DT=y
+-CONFIG_MACH_TS219_DT=y
+ # CONFIG_CPU_FEROCEON_OLD_ID is not set
+ CONFIG_PREEMPT=y
+ CONFIG_AEABI=y
+--- a/arch/arm/mach-kirkwood/Kconfig
++++ b/arch/arm/mach-kirkwood/Kconfig
+@@ -140,20 +140,6 @@ config ARCH_KIRKWOOD_DT
+ Say 'Y' here if you want your kernel to support the
+ Marvell Kirkwood using flattened device tree.
+
+-config MACH_CLOUDBOX_DT
+- bool "LaCie CloudBox NAS (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the LaCie
+- CloudBox NAS, using Flattened Device Tree.
+-
+-config MACH_DB88F628X_BP_DT
+- bool "Marvell DB-88F628x-BP Development Board (Flattened Device Tree)"
+- help
+- Say 'Y' here if you want your kernel to support the Marvell
+- DB-88F6281-BP and DB-88F6282-BP Development Board (Flattened
+- Device Tree).
+-
+ config MACH_DLINK_KIRKWOOD_DT
+ bool "D-Link Kirkwood-based NAS (Flattened Device Tree)"
+ select ARCH_KIRKWOOD_DT
+@@ -162,154 +148,6 @@ config MACH_DLINK_KIRKWOOD_DT
+ Kirkwood-based D-Link NASes such as DNS-320 & DNS-325,
+ using Flattened Device Tree.
+
+-config MACH_DOCKSTAR_DT
+- bool "Seagate FreeAgent Dockstar (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Seagate FreeAgent Dockstar (Flattened Device Tree).
+-
+-config MACH_DREAMPLUG_DT
+- bool "Marvell DreamPlug (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Marvell DreamPlug (Flattened Device Tree).
+-
+-config MACH_GOFLEXNET_DT
+- bool "Seagate GoFlex Net (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Seagate GoFlex Net (Flattened Device Tree).
+-
+-config MACH_GURUPLUG_DT
+- bool "Marvell GuruPlug Reference Board (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Marvell GuruPlug Reference Board (Flattened Device Tree).
+-
+-config MACH_IB62X0_DT
+- bool "RaidSonic IB-NAS6210, IB-NAS6220 (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- RaidSonic IB-NAS6210 & IB-NAS6220 devices, using
+- Flattened Device Tree.
+-
+-config MACH_ICONNECT_DT
+- bool "Iomega Iconnect (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here to enable Iomega Iconnect support.
+-
+-config MACH_INETSPACE_V2_DT
+- bool "LaCie Internet Space v2 NAS (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the LaCie
+- Internet Space v2 NAS, using Flattened Device Tree.
+-
+-config MACH_IOMEGA_IX2_200_DT
+- bool "Iomega StorCenter ix2-200 (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Iomega StorCenter ix2-200 (Flattened Device Tree).
+-
+-config MACH_KM_KIRKWOOD_DT
+- bool "Keymile Kirkwood Reference Design (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Keymile Kirkwood Reference Desgin, using Flattened Device Tree.
+-
+-config MACH_LSXL_DT
+- bool "Buffalo Linkstation LS-XHL, LS-CHLv2 (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Buffalo Linkstation LS-XHL & LS-CHLv2 devices, using
+- Flattened Device Tree.
+-
+-config MACH_MPLCEC4_DT
+- bool "MPL CEC4 (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- MPL CEC4 (Flattened Device Tree).
+-
+-config MACH_NETSPACE_LITE_V2_DT
+- bool "LaCie Network Space Lite v2 NAS (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the LaCie
+- Network Space Lite v2 NAS, using Flattened Device Tree.
+-
+-config MACH_NETSPACE_MAX_V2_DT
+- bool "LaCie Network Space Max v2 NAS (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the LaCie
+- Network Space Max v2 NAS, using Flattened Device Tree.
+-
+-config MACH_NETSPACE_MINI_V2_DT
+- bool "LaCie Network Space Mini v2 NAS (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the LaCie
+- Network Space Mini v2 NAS using Flattened Device Tree.
+-
+- This board is embedded in a product named CloudBox, which
+- provides automatic backup on a 100GB cloud storage. This
+- should not confused with a more recent LaCie NAS also named
+- CloudBox. For this last, the disk capacity is 1TB or above.
+-
+-config MACH_NETSPACE_V2_DT
+- bool "LaCie Network Space v2 NAS (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the LaCie
+- Network Space v2 NAS, using Flattened Device Tree.
+-
+-config MACH_OPENBLOCKS_A6_DT
+- bool "Plat'Home OpenBlocks A6 (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- Plat'Home OpenBlocks A6 (Flattened Device Tree).
+-
+-config MACH_READYNAS_DT
+- bool "NETGEAR ReadyNAS Duo v2 (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- select ARM_APPENDED_DTB
+- select ARM_ATAG_DTB_COMPAT
+- help
+- Say 'Y' here if you want your kernel to support the
+- NETGEAR ReadyNAS Duo v2 using Fattened Device Tree.
+-
+-config MACH_TOPKICK_DT
+- bool "USI Topkick (Flattened Device Tree)"
+- select ARCH_KIRKWOOD_DT
+- help
+- Say 'Y' here if you want your kernel to support the
+- USI Topkick, using Flattened Device Tree
+-
+-config MACH_TS219_DT
+- bool "Device Tree for QNAP TS-11X, TS-21X NAS"
+- select ARCH_KIRKWOOD_DT
+- select ARM_APPENDED_DTB
+- select ARM_ATAG_DTB_COMPAT
+- help
+- Say 'Y' here if you want your kernel to support the QNAP
+- TS-110, TS-119, TS-119P+, TS-210, TS-219, TS-219P and
+- TS-219P+ Turbo NAS devices using Fattened Device Tree.
+- There are two different Device Tree descriptions, depending
+- on if the device is based on an if the board uses the MV6281
+- or MV6282. If you have the wrong one, the buttons will not
+- work.
+-
+ endmenu
+
+ endif
+--- a/arch/arm/mach-kirkwood/Makefile
++++ b/arch/arm/mach-kirkwood/Makefile
+@@ -19,25 +19,4 @@ obj-$(CONFIG_MACH_TS219) += ts219-setup
+ obj-$(CONFIG_MACH_TS41X) += ts41x-setup.o tsx1x-common.o
+
+ obj-$(CONFIG_ARCH_KIRKWOOD_DT) += board-dt.o
+-obj-$(CONFIG_MACH_CLOUDBOX_DT) += board-ns2.o
+-obj-$(CONFIG_MACH_DB88F628X_BP_DT) += board-db88f628x-bp.o
+ obj-$(CONFIG_MACH_DLINK_KIRKWOOD_DT) += board-dnskw.o
+-obj-$(CONFIG_MACH_DOCKSTAR_DT) += board-dockstar.o
+-obj-$(CONFIG_MACH_DREAMPLUG_DT) += board-dreamplug.o
+-obj-$(CONFIG_MACH_GOFLEXNET_DT) += board-goflexnet.o
+-obj-$(CONFIG_MACH_GURUPLUG_DT) += board-guruplug.o
+-obj-$(CONFIG_MACH_IB62X0_DT) += board-ib62x0.o
+-obj-$(CONFIG_MACH_ICONNECT_DT) += board-iconnect.o
+-obj-$(CONFIG_MACH_INETSPACE_V2_DT) += board-ns2.o
+-obj-$(CONFIG_MACH_IOMEGA_IX2_200_DT) += board-iomega_ix2_200.o
+-obj-$(CONFIG_MACH_KM_KIRKWOOD_DT) += board-km_kirkwood.o
+-obj-$(CONFIG_MACH_LSXL_DT) += board-lsxl.o
+-obj-$(CONFIG_MACH_MPLCEC4_DT) += board-mplcec4.o
+-obj-$(CONFIG_MACH_NETSPACE_LITE_V2_DT) += board-ns2.o
+-obj-$(CONFIG_MACH_NETSPACE_MAX_V2_DT) += board-ns2.o
+-obj-$(CONFIG_MACH_NETSPACE_MINI_V2_DT) += board-ns2.o
+-obj-$(CONFIG_MACH_NETSPACE_V2_DT) += board-ns2.o
+-obj-$(CONFIG_MACH_OPENBLOCKS_A6_DT) += board-openblocks_a6.o
+-obj-$(CONFIG_MACH_READYNAS_DT) += board-readynas.o
+-obj-$(CONFIG_MACH_TOPKICK_DT) += board-usi_topkick.o
+-obj-$(CONFIG_MACH_TS219_DT) += board-ts219.o tsx1x-common.o
+--- a/arch/arm/mach-kirkwood/board-db88f628x-bp.c
++++ /dev/null
+@@ -1,24 +0,0 @@
+-/*
+- * Saeed Bishara <saeed@marvell.com>
+- *
+- * Marvell DB-88F628{1,2}-BP Development Board Setup
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/of.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data db88f628x_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init db88f628x_init(void)
+-{
+- kirkwood_ge00_init(&db88f628x_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-dnskw.c
++++ b/arch/arm/mach-kirkwood/board-dnskw.c
+@@ -14,14 +14,9 @@
+ #include <linux/kernel.h>
+ #include <linux/init.h>
+ #include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+ #include <linux/gpio.h>
+ #include "common.h"
+
+-static struct mv643xx_eth_platform_data dnskw_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+ /* Register any GPIO for output and set the value */
+ static void __init dnskw_gpio_register(unsigned gpio, char *name, int def)
+ {
+@@ -36,8 +31,6 @@ static void __init dnskw_gpio_register(u
+
+ void __init dnskw_init(void)
+ {
+- kirkwood_ge00_init(&dnskw_ge00_data);
+-
+ /* Set NAS to turn back on after a power failure */
+ dnskw_gpio_register(37, "dnskw:power:recover", 1);
+ }
+--- a/arch/arm/mach-kirkwood/board-dockstar.c
++++ /dev/null
+@@ -1,32 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-dockstar.c
+- *
+- * Seagate FreeAgent Dockstar Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- *
+- * Copied and modified for Seagate GoFlex Net support by
+- * Joshua Coombs <josh.coombs@gmail.com> based on ArchLinux ARM's
+- * GoFlex kernel patches.
+- *
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data dockstar_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init dockstar_dt_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&dockstar_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-dreamplug.c
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/*
+- * Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net>
+- *
+- * arch/arm/mach-kirkwood/board-dreamplug.c
+- *
+- * Marvell DreamPlug Reference Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/gpio.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data dreamplug_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-static struct mv643xx_eth_platform_data dreamplug_ge01_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(1),
+-};
+-
+-void __init dreamplug_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&dreamplug_ge00_data);
+- kirkwood_ge01_init(&dreamplug_ge01_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-dt.c
++++ b/arch/arm/mach-kirkwood/board-dt.c
+@@ -106,92 +106,14 @@ static void __init kirkwood_dt_init(void
+ kexec_reinit = kirkwood_enable_pcie;
+ #endif
+
+- if (of_machine_is_compatible("globalscale,dreamplug"))
+- dreamplug_init();
+-
+- if (of_machine_is_compatible("globalscale,guruplug"))
+- guruplug_dt_init();
+-
+ if (of_machine_is_compatible("dlink,dns-kirkwood"))
+ dnskw_init();
+
+- if (of_machine_is_compatible("iom,iconnect"))
+- iconnect_init();
+-
+- if (of_machine_is_compatible("raidsonic,ib-nas62x0"))
+- ib62x0_init();
+-
+- if (of_machine_is_compatible("qnap,ts219"))
+- qnap_dt_ts219_init();
+-
+- if (of_machine_is_compatible("seagate,dockstar"))
+- dockstar_dt_init();
+-
+- if (of_machine_is_compatible("seagate,goflexnet"))
+- goflexnet_init();
+-
+- if (of_machine_is_compatible("buffalo,lsxl"))
+- lsxl_init();
+-
+- if (of_machine_is_compatible("iom,ix2-200"))
+- iomega_ix2_200_init();
+-
+- if (of_machine_is_compatible("keymile,km_kirkwood"))
+- km_kirkwood_init();
+-
+- if (of_machine_is_compatible("lacie,cloudbox") ||
+- of_machine_is_compatible("lacie,inetspace_v2") ||
+- of_machine_is_compatible("lacie,netspace_lite_v2") ||
+- of_machine_is_compatible("lacie,netspace_max_v2") ||
+- of_machine_is_compatible("lacie,netspace_mini_v2") ||
+- of_machine_is_compatible("lacie,netspace_v2"))
+- ns2_init();
+-
+- if (of_machine_is_compatible("marvell,db-88f6281-bp") ||
+- of_machine_is_compatible("marvell,db-88f6282-bp"))
+- db88f628x_init();
+-
+- if (of_machine_is_compatible("mpl,cec4"))
+- mplcec4_init();
+-
+- if (of_machine_is_compatible("netgear,readynas-duo-v2"))
+- netgear_readynas_init();
+-
+- if (of_machine_is_compatible("plathome,openblocks-a6"))
+- openblocks_a6_init();
+-
+- if (of_machine_is_compatible("usi,topkick"))
+- usi_topkick_init();
+-
+- of_platform_populate(NULL, kirkwood_dt_match_table, NULL, NULL);
++ of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL);
+ }
+
+ static const char * const kirkwood_dt_board_compat[] = {
+- "globalscale,dreamplug",
+- "globalscale,guruplug",
+- "dlink,dns-320",
+- "dlink,dns-325",
+- "iom,iconnect",
+- "raidsonic,ib-nas62x0",
+- "qnap,ts219",
+- "seagate,dockstar",
+- "seagate,goflexnet",
+- "buffalo,lsxl",
+- "iom,ix2-200",
+- "keymile,km_kirkwood",
+- "lacie,cloudbox",
+- "lacie,inetspace_v2",
+- "lacie,netspace_lite_v2",
+- "lacie,netspace_max_v2",
+- "lacie,netspace_mini_v2",
+- "lacie,netspace_v2",
+- "marvell,db-88f6281-bp",
+- "marvell,db-88f6282-bp",
+- "mpl,cec4",
+- "netgear,readynas-duo-v2",
+- "plathome,openblocks-a6",
+- "usi,topkick",
+- "zyxel,nsa310",
++ "marvell,kirkwood",
+ NULL
+ };
+
+--- a/arch/arm/mach-kirkwood/board-goflexnet.c
++++ /dev/null
+@@ -1,34 +0,0 @@
+-/*
+- * Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net>
+- *
+- * arch/arm/mach-kirkwood/board-goflexnet.c
+- *
+- * Seagate GoFlext Net Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- *
+- * Copied and modified for Seagate GoFlex Net support by
+- * Joshua Coombs <josh.coombs@gmail.com> based on ArchLinux ARM's
+- * GoFlex kernel patches.
+- *
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data goflexnet_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init goflexnet_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&goflexnet_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-guruplug.c
++++ /dev/null
+@@ -1,33 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-guruplug.c
+- *
+- * Marvell Guruplug Reference Board Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/gpio.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data guruplug_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-static struct mv643xx_eth_platform_data guruplug_ge01_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(1),
+-};
+-
+-void __init guruplug_dt_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&guruplug_ge00_data);
+- kirkwood_ge01_init(&guruplug_ge01_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-ib62x0.c
++++ /dev/null
+@@ -1,29 +0,0 @@
+-/*
+- * Copyright 2012 (C), Simon Baatz <gmbnomis@gmail.com>
+- *
+- * arch/arm/mach-kirkwood/board-ib62x0.c
+- *
+- * RaidSonic ICY BOX IB-NAS6210 & IB-NAS6220 init for drivers not
+- * converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data ib62x0_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init ib62x0_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&ib62x0_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-iconnect.c
++++ /dev/null
+@@ -1,24 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-iconnect.c
+- *
+- * Iomega i-connect Board Setup
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/of.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data iconnect_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(11),
+-};
+-
+-void __init iconnect_init(void)
+-{
+- kirkwood_ge00_init(&iconnect_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-iomega_ix2_200.c
++++ /dev/null
+@@ -1,34 +0,0 @@
+-/*
+- * arch/arm/mach-kirkwood/board-iomega_ix2_200.c
+- *
+- * Iomega StorCenter ix2-200
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/ethtool.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data iomega_ix2_200_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_NONE,
+- .speed = SPEED_1000,
+- .duplex = DUPLEX_FULL,
+-};
+-
+-static struct mv643xx_eth_platform_data iomega_ix2_200_ge01_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(11),
+-};
+-
+-void __init iomega_ix2_200_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&iomega_ix2_200_ge00_data);
+- kirkwood_ge01_init(&iomega_ix2_200_ge01_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-km_kirkwood.c
++++ /dev/null
+@@ -1,44 +0,0 @@
+-/*
+- * Copyright 2012 2012 KEYMILE AG, CH-3097 Bern
+- * Valentin Longchamp <valentin.longchamp@keymile.com>
+- *
+- * arch/arm/mach-kirkwood/board-km_kirkwood.c
+- *
+- * Keymile km_kirkwood Reference Desing Init for drivers not converted to
+- * flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/clk.h>
+-#include <linux/clk-private.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data km_kirkwood_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init km_kirkwood_init(void)
+-{
+- struct clk *sata_clk;
+- /*
+- * Our variant of kirkwood (integrated in the Bobcat) hangs on accessing
+- * SATA bits (14-15) of the Clock Gating Control Register. Since these
+- * devices are also not present in this variant, their clocks get
+- * disabled because unused when clk_disable_unused() gets called.
+- * That's why we change the flags to these clocks to CLK_IGNORE_UNUSED
+- */
+- sata_clk = clk_get_sys("sata_mv.0", "0");
+- if (!IS_ERR(sata_clk))
+- sata_clk->flags |= CLK_IGNORE_UNUSED;
+- sata_clk = clk_get_sys("sata_mv.0", "1");
+- if (!IS_ERR(sata_clk))
+- sata_clk->flags |= CLK_IGNORE_UNUSED;
+-
+- kirkwood_ge00_init(&km_kirkwood_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-lsxl.c
++++ /dev/null
+@@ -1,52 +0,0 @@
+-/*
+- * Copyright 2012 (C), Michael Walle <michael@walle.cc>
+- *
+- * arch/arm/mach-kirkwood/board-lsxl.c
+- *
+- * Buffalo Linkstation LS-XHL and LS-CHLv2 init for drivers not
+- * converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data lsxl_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-static struct mv643xx_eth_platform_data lsxl_ge01_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-/*
+- * On the LS-XHL/LS-CHLv2, the shutdown process is following:
+- * - Userland monitors key events until the power switch goes to off position
+- * - The board reboots
+- * - U-boot starts and goes into an idle mode waiting for the user
+- * to move the switch to ON position
+- *
+- */
+-static void lsxl_power_off(void)
+-{
+- kirkwood_restart('h', NULL);
+-}
+-
+-void __init lsxl_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+-
+- kirkwood_ge00_init(&lsxl_ge00_data);
+- kirkwood_ge01_init(&lsxl_ge01_data);
+-
+- /* register power-off method */
+- pm_power_off = lsxl_power_off;
+-}
+--- a/arch/arm/mach-kirkwood/board-mplcec4.c
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/*
+- * Copyright (C) 2012 MPL AG, Switzerland
+- * Stefan Peter <s.peter@mpl.ch>
+- *
+- * arch/arm/mach-kirkwood/board-mplcec4.c
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data mplcec4_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(1),
+-};
+-
+-static struct mv643xx_eth_platform_data mplcec4_ge01_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(2),
+-};
+-
+-void __init mplcec4_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&mplcec4_ge00_data);
+- kirkwood_ge01_init(&mplcec4_ge01_data);
+-}
+-
+-
+-
+--- a/arch/arm/mach-kirkwood/board-ns2.c
++++ /dev/null
+@@ -1,35 +0,0 @@
+-/*
+- * Copyright 2012 (C), Simon Guinot <simon.guinot@sequanux.org>
+- *
+- * arch/arm/mach-kirkwood/board-ns2.c
+- *
+- * LaCie Network Space v2 board (and parents) initialization for drivers
+- * not converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/of.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data ns2_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init ns2_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- if (of_machine_is_compatible("lacie,cloudbox") ||
+- of_machine_is_compatible("lacie,netspace_lite_v2") ||
+- of_machine_is_compatible("lacie,netspace_mini_v2"))
+- ns2_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
+- kirkwood_ge00_init(&ns2_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-openblocks_a6.c
++++ /dev/null
+@@ -1,26 +0,0 @@
+-/*
+- * Copyright 2012 Nobuhiro Iwamatsu <iwamatsu@nigauri.org>
+- *
+- * arch/arm/mach-kirkwood/board-openblocks_a6.c
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data openblocks_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init openblocks_a6_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&openblocks_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/board-readynas.c
++++ /dev/null
+@@ -1,28 +0,0 @@
+-/*
+- * NETGEAR ReadyNAS Duo v2 Board setup for drivers not already
+- * converted to DT.
+- *
+- * Copyright (C) 2013, Arnaud EBALARD <arno@natisbad.org>
+- *
+- * This program is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU General Public License
+- * as published by the Free Software Foundation; either version
+- * 2 of the License, or (at your option) any later version.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include <mach/kirkwood.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data netgear_readynas_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init netgear_readynas_init(void)
+-{
+- kirkwood_ge00_init(&netgear_readynas_ge00_data);
+- kirkwood_pcie_init(KW_PCIE0);
+-}
+--- a/arch/arm/mach-kirkwood/board-ts219.c
++++ /dev/null
+@@ -1,43 +0,0 @@
+-/*
+- *
+- * QNAP TS-11x/TS-21x Turbo NAS Board Setup via DT
+- *
+- * Copyright (C) 2012 Andrew Lunn <andrew@lunn.ch>
+- *
+- * Based on the board file ts219-setup.c:
+- *
+- * Copyright (C) 2009 Martin Michlmayr <tbm@cyrius.com>
+- * Copyright (C) 2008 Byron Bradley <byron.bbradley@gmail.com>
+- *
+- * This program is free software; you can redistribute it and/or
+- * modify it under the terms of the GNU General Public License
+- * as published by the Free Software Foundation; either version
+- * 2 of the License, or (at your option) any later version.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/platform_device.h>
+-#include <linux/mv643xx_eth.h>
+-#include <asm/mach-types.h>
+-#include <asm/mach/arch.h>
+-#include <mach/kirkwood.h>
+-#include "common.h"
+-#include "tsx1x-common.h"
+-
+-static struct mv643xx_eth_platform_data qnap_ts219_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(8),
+-};
+-
+-void __init qnap_dt_ts219_init(void)
+-{
+- u32 dev, rev;
+-
+- kirkwood_pcie_id(&dev, &rev);
+- if (dev == MV88F6282_DEV_ID)
+- qnap_ts219_ge00_data.phy_addr = MV643XX_ETH_PHY_ADDR(0);
+-
+- kirkwood_ge00_init(&qnap_ts219_ge00_data);
+-
+- pm_power_off = qnap_tsx1x_power_off;
+-}
+--- a/arch/arm/mach-kirkwood/board-usi_topkick.c
++++ /dev/null
+@@ -1,29 +0,0 @@
+-/*
+- * Copyright 2012 (C), Jason Cooper <jason@lakedaemon.net>
+- *
+- * arch/arm/mach-kirkwood/board-usi_topkick.c
+- *
+- * USI Topkick Init for drivers not converted to flattened device tree yet.
+- *
+- * This file is licensed under the terms of the GNU General Public
+- * License version 2. This program is licensed "as is" without any
+- * warranty of any kind, whether express or implied.
+- */
+-
+-#include <linux/kernel.h>
+-#include <linux/init.h>
+-#include <linux/mv643xx_eth.h>
+-#include <linux/gpio.h>
+-#include "common.h"
+-
+-static struct mv643xx_eth_platform_data topkick_ge00_data = {
+- .phy_addr = MV643XX_ETH_PHY_ADDR(0),
+-};
+-
+-void __init usi_topkick_init(void)
+-{
+- /*
+- * Basic setup. Needs to be called early.
+- */
+- kirkwood_ge00_init(&topkick_ge00_data);
+-}
+--- a/arch/arm/mach-kirkwood/common.h
++++ b/arch/arm/mach-kirkwood/common.h
+@@ -55,116 +55,12 @@ void kirkwood_restart(char, const char *
+ void kirkwood_clk_init(void);
+
+ /* board init functions for boards not fully converted to fdt */
+-#ifdef CONFIG_MACH_DREAMPLUG_DT
+-void dreamplug_init(void);
+-#else
+-static inline void dreamplug_init(void) {};
+-#endif
+-#ifdef CONFIG_MACH_GURUPLUG_DT
+-void guruplug_dt_init(void);
+-#else
+-static inline void guruplug_dt_init(void) {};
+-#endif
+-#ifdef CONFIG_MACH_TS219_DT
+-void qnap_dt_ts219_init(void);
+-#else
+-static inline void qnap_dt_ts219_init(void) {};
+-#endif
+-
+ #ifdef CONFIG_MACH_DLINK_KIRKWOOD_DT
+ void dnskw_init(void);
+ #else
+ static inline void dnskw_init(void) {};
+ #endif
+
+-#ifdef CONFIG_MACH_ICONNECT_DT
+-void iconnect_init(void);
+-#else
+-static inline void iconnect_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_IB62X0_DT
+-void ib62x0_init(void);
+-#else
+-static inline void ib62x0_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_DOCKSTAR_DT
+-void dockstar_dt_init(void);
+-#else
+-static inline void dockstar_dt_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_GOFLEXNET_DT
+-void goflexnet_init(void);
+-#else
+-static inline void goflexnet_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_LSXL_DT
+-void lsxl_init(void);
+-#else
+-static inline void lsxl_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_IOMEGA_IX2_200_DT
+-void iomega_ix2_200_init(void);
+-#else
+-static inline void iomega_ix2_200_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_KM_KIRKWOOD_DT
+-void km_kirkwood_init(void);
+-#else
+-static inline void km_kirkwood_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_DB88F628X_BP_DT
+-void db88f628x_init(void);
+-#else
+-static inline void db88f628x_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_MPLCEC4_DT
+-void mplcec4_init(void);
+-#else
+-static inline void mplcec4_init(void) {};
+-#endif
+-
+-#if defined(CONFIG_MACH_INETSPACE_V2_DT) || \
+- defined(CONFIG_MACH_NETSPACE_V2_DT) || \
+- defined(CONFIG_MACH_NETSPACE_MAX_V2_DT) || \
+- defined(CONFIG_MACH_NETSPACE_LITE_V2_DT) || \
+- defined(CONFIG_MACH_NETSPACE_MINI_V2_DT)
+-void ns2_init(void);
+-#else
+-static inline void ns2_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_OPENBLOCKS_A6_DT
+-void openblocks_a6_init(void);
+-#else
+-static inline void openblocks_a6_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_READYNAS_DT
+-void netgear_readynas_init(void);
+-#else
+-static inline void netgear_readynas_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_TOPKICK_DT
+-void usi_topkick_init(void);
+-#else
+-static inline void usi_topkick_init(void) {};
+-#endif
+-
+-#ifdef CONFIG_MACH_CLOUDBOX_DT
+-void cloudbox_init(void);
+-#else
+-static inline void cloudbox_init(void) {};
+-#endif
+-
+ /* early init functions not converted to fdt yet */
+ char *kirkwood_id(void);
+ void kirkwood_l2_init(void);