summaryrefslogtreecommitdiff
path: root/arch/arm/mach-kirkwood/board-guruplug.c
diff options
context:
space:
mode:
authorWilly Tarreau <w@1wt.eu>2012-12-09 18:40:04 (GMT)
committerArnd Bergmann <arnd@arndb.de>2013-02-28 17:57:07 (GMT)
commit9b47a4fb7760fabfbbc33b7d7703454684f36782 (patch)
tree2528c2cf86ab1bfe904dd36c641a328c671d56c9 /arch/arm/mach-kirkwood/board-guruplug.c
parent491221451b9998cf182770f2b5f8b3a8b141dd81 (diff)
downloadlinux-9b47a4fb7760fabfbbc33b7d7703454684f36782.tar.xz
ARM: kirkwood: convert Guruplug Server Plus to use the device tree
Add a device tree entry for the Guruplug Server Plus board. This port was based both on the work done on the dreamplug and the dockstar. It builds, boots and works on my Guruplug Server Plus. Signed-off-by: Willy Tarreau <w@1wt.eu> Signed-off-by: Jason Cooper <jason@lakedaemon.net>
Diffstat (limited to 'arch/arm/mach-kirkwood/board-guruplug.c')
-rw-r--r--arch/arm/mach-kirkwood/board-guruplug.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/arch/arm/mach-kirkwood/board-guruplug.c b/arch/arm/mach-kirkwood/board-guruplug.c
new file mode 100644
index 0000000..0a0df45
--- /dev/null
+++ b/arch/arm/mach-kirkwood/board-guruplug.c
@@ -0,0 +1,39 @@
+/*
+ * 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 <linux/platform_data/mmc-mvsdio.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),
+};
+
+static struct mvsdio_platform_data guruplug_mvsdio_data = {
+ /* unfortunately the CD signal has not been connected */
+};
+
+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);
+ kirkwood_sdio_init(&guruplug_mvsdio_data);
+}