summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-kirkwood/board-mplcec4.c
diff options
context:
space:
mode:
authorOlof Johansson <olof@lixom.net>2012-11-26 01:04:39 -0800
committerOlof Johansson <olof@lixom.net>2012-11-26 01:04:39 -0800
commit0d5c2e21d3151f13812bc562544f5eda9c9c9abc (patch)
treef0db9a6df5a29a7daaa25cf3bd942a496cf637e6 /arch/arm/mach-kirkwood/board-mplcec4.c
parent48b71e3ac138469e83d044db22020424aaa44753 (diff)
parentf17073a3aec601cb9aba6d8c1c6dbc8c6a919c07 (diff)
downloadblackbird-op-linux-0d5c2e21d3151f13812bc562544f5eda9c9c9abc.tar.gz
blackbird-op-linux-0d5c2e21d3151f13812bc562544f5eda9c9c9abc.zip
Merge tag 'orion_boards_for_3.8' of git://git.infradead.org/users/jcooper/linux into next/boards
From Jason Cooper: orion boards for v3.8 - mach-orion5x/ joins the dark side! (devicetree) - Lacie Network Space family - Lacie Ethernet Disk mini v2 - USI TopKick - ZyXEL NSA310 - MPL CEC4 - Plat'Home OpenBlocks A6 (kirkwood, AX3-4 is armada xp) * tag 'orion_boards_for_3.8' of git://git.infradead.org/users/jcooper/linux: ARM: kirkwood: Add Plat'Home OpenBlocks A6 support ARM: Dove: update defconfig ARM: Kirkwood: update defconfig for new boards arm: orion5x: add DT related options in defconfig arm: orion5x: convert 'LaCie Ethernet Disk mini v2' to Device Tree arm: orion5x: basic Device Tree support arm: orion5x: mechanical defconfig update ARM: kirkwood: Add support for the MPL CEC4 arm: kirkwood: add support for ZyXEL NSA310 ARM: Kirkwood: new board USI Topkick ARM: kirkwood: use gpio-fan DT binding on lsxl ARM: Kirkwood: add Netspace boards to defconfig ARM: kirkwood: DT board setup for Network Space Mini v2 ARM: kirkwood: DT board setup for Network Space Lite v2 ARM: kirkwood: DT board setup for Network Space v2 and parents leds: leds-ns2: add device tree binding ARM: Kirkwood: Enable the second I2C bus
Diffstat (limited to 'arch/arm/mach-kirkwood/board-mplcec4.c')
-rw-r--r--arch/arm/mach-kirkwood/board-mplcec4.c80
1 files changed, 80 insertions, 0 deletions
diff --git a/arch/arm/mach-kirkwood/board-mplcec4.c b/arch/arm/mach-kirkwood/board-mplcec4.c
new file mode 100644
index 000000000000..e78a227468e6
--- /dev/null
+++ b/arch/arm/mach-kirkwood/board-mplcec4.c
@@ -0,0 +1,80 @@
+/*
+ * 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 <linux/platform_data/mmc-mvsdio.h>
+#include "common.h"
+#include "mpp.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),
+};
+
+static unsigned int mplcec4_mpp_config[] __initdata = {
+ MPP0_NF_IO2,
+ MPP1_NF_IO3,
+ MPP2_NF_IO4,
+ MPP3_NF_IO5,
+ MPP4_NF_IO6,
+ MPP5_NF_IO7,
+ MPP6_SYSRST_OUTn,
+ MPP7_GPO, /* Status LED Green High Active */
+ MPP10_UART0_TXD,
+ MPP11_UART0_RXD,
+ MPP12_SD_CLK,
+ MPP13_SD_CMD, /* Alt UART1_TXD */
+ MPP14_SD_D0, /* Alt UART1_RXD */
+ MPP15_SD_D1,
+ MPP16_SD_D2,
+ MPP17_SD_D3,
+ MPP18_NF_IO0,
+ MPP19_NF_IO1,
+ MPP28_GPIO, /* Input SYS_POR_DET (active High) */
+ MPP29_GPIO, /* Input SYS_RTC_INT (active High) */
+ MPP34_SATA1_ACTn,
+ MPP35_SATA0_ACTn,
+ MPP40_GPIO, /* LED User1 orange */
+ MPP41_GPIO, /* LED User1 green */
+ MPP44_GPIO, /* LED User0 orange */
+ MPP45_GPIO, /* LED User0 green */
+ MPP46_GPIO, /* Status LED Yellow High Active */
+ MPP47_GPIO, /* SD_CD# (in/IRQ)*/
+ 0
+};
+
+
+static struct mvsdio_platform_data mplcec4_mvsdio_data = {
+ .gpio_card_detect = 47, /* MPP47 used as SD card detect */
+};
+
+
+
+void __init mplcec4_init(void)
+{
+ /*
+ * Basic setup. Needs to be called early.
+ */
+ kirkwood_mpp_conf(mplcec4_mpp_config);
+ kirkwood_ehci_init();
+ kirkwood_ge00_init(&mplcec4_ge00_data);
+ kirkwood_ge01_init(&mplcec4_ge01_data);
+ kirkwood_sdio_init(&mplcec4_mvsdio_data);
+ kirkwood_pcie_init(KW_PCIE0);
+}
+
+
+
OpenPOWER on IntegriCloud