public inbox for ipfire-scm@lists.ipfire.org
 help / color / mirror / Atom feed
From: git@ipfire.org
To: ipfire-scm@lists.ipfire.org
Subject: [IPFire-SCM] [git.ipfire.org] IPFire 2.x development tree branch, kernel-update, updated. 430fb015456b4b3802dcd0c6a191d5646816b9bb
Date: Sat, 03 Mar 2012 19:35:20 +0100	[thread overview]
Message-ID: <20120303183534.CB83B20146@argus.ipfire.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 44433 bytes --]

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "IPFire 2.x development tree".

The branch, kernel-update has been updated
       via  430fb015456b4b3802dcd0c6a191d5646816b9bb (commit)
       via  5ca1c0b97cd3035f2e017622692fb3b5d4476bd6 (commit)
       via  eb17d0fd69ae2c21becfee831b32d3441ec6652c (commit)
       via  fa4762fbf8732a1e48015ee07a422f293d7be1f7 (commit)
      from  36480f231881d88be7b4083db78689f1a344c00f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 430fb015456b4b3802dcd0c6a191d5646816b9bb
Merge: 5ca1c0b eb17d0f
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date:   Sat Mar 3 19:34:55 2012 +0100

    Merge commit 'origin/master' into kernel-update

commit 5ca1c0b97cd3035f2e017622692fb3b5d4476bd6
Author: Arne Fitzenreiter <arne_f(a)ipfire.org>
Date:   Sat Mar 3 19:33:40 2012 +0100

    kernel: Add Iomega iConnect setup to kirkwood kernel.

-----------------------------------------------------------------------

Summary of changes:
 .../kernel/kernel.config.armv5tel-ipfire-kirkwood  |   21 +-
 config/rootfiles/core/57/filelists/files           |    1 +
 lfs/linux                                          |    2 +-
 make.sh                                            |    2 +-
 src/initscripts/init.d/networking/any              |   16 +-
 ...h => linux-2.6.32.57-arm_kirkwood_setups.patch} |  299 ++++++++++++++++++--
 6 files changed, 294 insertions(+), 47 deletions(-)
 rename src/patches/{linux-2.6.32.45-arm_kirkwood_setups.patch => linux-2.6.32.57-arm_kirkwood_setups.patch} (59%)

Difference in files:
diff --git a/config/kernel/kernel.config.armv5tel-ipfire-kirkwood b/config/kernel/kernel.config.armv5tel-ipfire-kirkwood
index 2c09a57..dace245 100644
--- a/config/kernel/kernel.config.armv5tel-ipfire-kirkwood
+++ b/config/kernel/kernel.config.armv5tel-ipfire-kirkwood
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.32.45
-# Sat Oct 15 08:52:52 2011
+# Linux kernel version: 2.6.32.57
+# Fri Mar  2 20:47:53 2012
 #
 CONFIG_ARM=y
 CONFIG_SYS_SUPPORTS_APM_EMULATION=y
@@ -199,6 +199,7 @@ CONFIG_MACH_DREAMPLUG=y
 CONFIG_MACH_GURUPLUG=y
 CONFIG_MACH_TS219=y
 CONFIG_MACH_OPENRD_BASE=y
+CONFIG_MACH_ICONNECT=y
 CONFIG_MACH_NAS6210=y
 CONFIG_PLAT_ORION=y
 
@@ -1309,6 +1310,9 @@ CONFIG_PCNET32=m
 CONFIG_AMD8111_ETH=m
 CONFIG_ADAPTEC_STARFIRE=m
 CONFIG_B44=m
+CONFIG_B44_PCI_AUTOSELECT=y
+CONFIG_B44_PCICORE_AUTOSELECT=y
+CONFIG_B44_PCI=y
 CONFIG_FORCEDETH=m
 # CONFIG_FORCEDETH_NAPI is not set
 CONFIG_E100=m
@@ -1809,7 +1813,7 @@ CONFIG_IPWIRELESS=m
 # CONFIG_RAW_DRIVER is not set
 # CONFIG_TCG_TPM is not set
 CONFIG_DEVPORT=y
-CONFIG_I2C=m
+CONFIG_I2C=y
 CONFIG_I2C_BOARDINFO=y
 CONFIG_I2C_COMPAT=y
 CONFIG_I2C_CHARDEV=m
@@ -1843,7 +1847,7 @@ CONFIG_I2C_VIAPRO=m
 # I2C system bus drivers (mostly embedded / system-on-chip)
 #
 CONFIG_I2C_GPIO=m
-CONFIG_I2C_MV64XXX=m
+CONFIG_I2C_MV64XXX=y
 CONFIG_I2C_OCORES=m
 CONFIG_I2C_SIMTEC=m
 
@@ -2068,8 +2072,10 @@ CONFIG_MFD_SM501=m
 CONFIG_HTC_PASIC3=m
 # CONFIG_UCB1400_CORE is not set
 CONFIG_TPS65010=m
+# CONFIG_TWL4030_CORE is not set
 # CONFIG_MFD_TMIO is not set
 # CONFIG_MFD_TC6393XB is not set
+# CONFIG_PMIC_DA903X is not set
 CONFIG_MFD_WM8400=m
 CONFIG_MFD_WM831X=m
 CONFIG_MFD_WM8350=m
@@ -2661,7 +2667,6 @@ CONFIG_USB_ISP116X_HCD=m
 # CONFIG_USB_ISP1760_HCD is not set
 # CONFIG_USB_ISP1362_HCD is not set
 CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_SSB=y
 # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
 # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set
 CONFIG_USB_OHCI_LITTLE_ENDIAN=y
@@ -2672,10 +2677,6 @@ CONFIG_USB_SL811_HCD=m
 CONFIG_USB_R8A66597_HCD=m
 CONFIG_USB_WHCI_HCD=m
 CONFIG_USB_HWA_HCD=m
-
-#
-# Enable Host or Gadget support to see Inventra options
-#
 # CONFIG_USB_MUSB_HDRC is not set
 
 #
@@ -2874,7 +2875,7 @@ CONFIG_LEDS_TRIGGER_TIMER=m
 CONFIG_LEDS_TRIGGER_HEARTBEAT=m
 CONFIG_LEDS_TRIGGER_BACKLIGHT=m
 CONFIG_LEDS_TRIGGER_GPIO=m
-CONFIG_LEDS_TRIGGER_DEFAULT_ON=m
+CONFIG_LEDS_TRIGGER_DEFAULT_ON=y
 
 #
 # iptables trigger is under Netfilter config (LED target)
diff --git a/config/rootfiles/core/57/filelists/files b/config/rootfiles/core/57/filelists/files
index a678ee8..2f80b5f 100644
--- a/config/rootfiles/core/57/filelists/files
+++ b/config/rootfiles/core/57/filelists/files
@@ -2,3 +2,4 @@ etc/system-release
 etc/issue
 etc/rc.d/init.d/networking/red.up/10-static-routes
 etc/rc.d/init.d/networking/red.down/10-static-routes
+etc/rc.d/init.d/networking/any
diff --git a/lfs/linux b/lfs/linux
index 0f47427..f79dc5a 100644
--- a/lfs/linux
+++ b/lfs/linux
@@ -165,7 +165,7 @@ endif
 
 ifeq "$(KCFG)" "-kirkwood"
 	# Add dreamplug,guruplug and icy 62x0  support on ARM-kirkwood
-	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.45-arm_kirkwood_setups.patch
+	cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.57-arm_kirkwood_setups.patch
 endif
 
 ifeq "$(MACHINE_TYPE)" "arm"
diff --git a/make.sh b/make.sh
index f425428..598681d 100755
--- a/make.sh
+++ b/make.sh
@@ -26,7 +26,7 @@ NAME="IPFire"							# Software name
 SNAME="ipfire"							# Short name
 VERSION="2.11"							# Version number
 CORE="57"							# Core Level (Filename)
-PAKFIRE_CORE="56"						# Core Level (PAKFIRE)
+PAKFIRE_CORE="57"						# Core Level (PAKFIRE)
 GIT_BRANCH=`git status | head -n1 | cut -d" " -f4`		# Git Branch
 SLOGAN="www.ipfire.org"						# Software slogan
 CONFIG_ROOT=/var/ipfire						# Configuration rootdir
diff --git a/src/initscripts/init.d/networking/any b/src/initscripts/init.d/networking/any
index b88d21e..5609a9e 100644
--- a/src/initscripts/init.d/networking/any
+++ b/src/initscripts/init.d/networking/any
@@ -80,15 +80,19 @@ case "${1}" in
 		# Create & Enable vnstat data collection
 		/usr/bin/vnstat -u -i ${DEVICE} -r --enable --force > /dev/null 2>&1
 		
-		boot_mesg "Adding IPv4 address ${ADDRESS} to the ${DEVICE} interface..."
-		ip addr add ${args} dev ${DEVICE}
-		evaluate_retval
+		if [ ! "${ADDRESS}" == "1.1.1.1" ]; then
+			boot_mesg "Adding IPv4 address ${ADDRESS} to the ${DEVICE} interface..."
+			ip addr add ${args} dev ${DEVICE}
+			evaluate_retval
+		fi
 		;;
 
 	stop)
-		boot_mesg "Removing IPv4 addresses from the ${DEVICE} interface..."
-		ip addr flush dev ${DEVICE}
-		evaluate_retval
+		if [ ! "${ADDRESS}" == "1.1.1.1" ]; then
+			boot_mesg "Removing IPv4 addresses from the ${DEVICE} interface..."
+			ip addr flush dev ${DEVICE}
+			evaluate_retval
+		fi
 
 		# Disable vnstat collection
 		/usr/bin/vnstat -u -i ${DEVICE}	-r --disable > /dev/null 2>&1
diff --git a/src/patches/linux-2.6.32.45-arm_kirkwood_setups.patch b/src/patches/linux-2.6.32.45-arm_kirkwood_setups.patch
deleted file mode 100644
index 9db9c2e..0000000
--- a/src/patches/linux-2.6.32.45-arm_kirkwood_setups.patch
+++ /dev/null
@@ -1,522 +0,0 @@
-diff -Naur linux-2.6.32.45.org/arch/arm/mach-kirkwood/dreamplug-setup.c linux-2.6.32.45/arch/arm/mach-kirkwood/dreamplug-setup.c
---- linux-2.6.32.45.org/arch/arm/mach-kirkwood/dreamplug-setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.32.45/arch/arm/mach-kirkwood/dreamplug-setup.c	2011-10-11 15:35:37.000000000 +0200
-@@ -0,0 +1,140 @@
-+/*
-+ * arch/arm/mach-kirkwood/dreamplug-setup.c
-+ *
-+ * Marvell DreamPlug Reference 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/platform_device.h>
-+#include <linux/mtd/partitions.h>
-+#include <linux/ata_platform.h>
-+#include <linux/mv643xx_eth.h>
-+#include <linux/gpio.h>
-+#include <linux/leds.h>
-+#include <linux/spi/flash.h>
-+#include <linux/spi/spi.h>
-+#include <linux/spi/orion_spi.h>
-+#include <asm/mach-types.h>
-+#include <asm/mach/arch.h>
-+#include <mach/kirkwood.h>
-+#include <plat/mvsdio.h>
-+#include "common.h"
-+#include "mpp.h"
-+
-+static const struct flash_platform_data dreamplug_spi_slave_data = {
-+	.type		= "mx25l1606e",
-+};
-+
-+static struct spi_board_info __initdata dreamplug_spi_slave_info[] = {
-+	{
-+		.modalias	= "m25p80",
-+		.platform_data	= &dreamplug_spi_slave_data,
-+		.irq		= -1,
-+		.max_speed_hz	= 50000000,
-+		.bus_num	= 0,
-+		.chip_select	= 0,
-+	},
-+};
-+
-+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),
-+};
-+
-+static struct mv_sata_platform_data dreamplug_sata_data = {
-+	.n_ports	= 1,
-+};
-+
-+static struct mvsdio_platform_data dreamplug_mvsdio_data = {
-+	/* unfortunately the CD signal has not been connected */
-+};
-+
-+static struct gpio_led dreamplug_led_pins[] = {
-+	{
-+		.name			= "dreamplug:blue:bluetooth",
-+		.gpio			= 47,
-+		.active_low		= 1,
-+	},
-+	{
-+		.name			= "dreamplug:green:wlan",
-+		.gpio			= 48,
-+		.active_low		= 1,
-+	},
-+	{
-+		.name			= "dreamplug:blue:wlanap",
-+		.gpio			= 49,
-+		.active_low		= 1,
-+	},
-+};
-+
-+static struct gpio_led_platform_data dreamplug_led_data = {
-+	.leds		= dreamplug_led_pins,
-+	.num_leds	= ARRAY_SIZE(dreamplug_led_pins),
-+};
-+
-+static struct platform_device dreamplug_leds = {
-+	.name	= "leds-gpio",
-+	.id	= -1,
-+	.dev	= {
-+		.platform_data	= &dreamplug_led_data,
-+	}
-+};
-+
-+static unsigned int dreamplug_mpp_config[] __initdata = {
-+	MPP0_SPI_SCn,
-+	MPP1_SPI_MOSI,
-+	MPP2_SPI_SCK,
-+	MPP3_SPI_MISO,
-+	MPP4_GPIO,
-+	MPP5_GPO,
-+	MPP7_GPO,
-+	MPP18_GPO,
-+	MPP19_GPO,
-+	MPP47_GPIO,	/* B_BLED */
-+	MPP48_GPIO,	/* W_GLED */
-+	MPP49_GPIO,	/* W_BLED */
-+	0
-+};
-+
-+static void __init dreamplug_init(void)
-+{
-+	/*
-+	 * Basic setup. Needs to be called early.
-+	 */
-+	kirkwood_init();
-+	kirkwood_mpp_conf(dreamplug_mpp_config);
-+
-+	kirkwood_uart0_init();
-+
-+	spi_register_board_info(dreamplug_spi_slave_info,
-+				ARRAY_SIZE(dreamplug_spi_slave_info));
-+
-+	kirkwood_spi_init();
-+	kirkwood_ehci_init();
-+
-+	kirkwood_ge00_init(&dreamplug_ge00_data);
-+	kirkwood_ge01_init(&dreamplug_ge01_data);
-+	kirkwood_sata_init(&dreamplug_sata_data);
-+	kirkwood_sdio_init(&dreamplug_mvsdio_data);
-+
-+	platform_device_register(&dreamplug_leds);
-+}
-+
-+MACHINE_START(DREAMPLUG, "Marvell DreamPlug Reference Board")
-+	/* Maintainer: Siddarth Gore <gores <at> marvell.com> */
-+	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
-+	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
-+	.boot_params	= 0x00000100,
-+	.init_machine	= dreamplug_init,
-+	.map_io		= kirkwood_map_io,
-+	.init_irq	= kirkwood_init_irq,
-+	.timer		= &kirkwood_timer,
-+MACHINE_END
-diff -Naur linux-2.6.32.45.org/arch/arm/mach-kirkwood/guruplug-setup.c linux-2.6.32.45/arch/arm/mach-kirkwood/guruplug-setup.c
---- linux-2.6.32.45.org/arch/arm/mach-kirkwood/guruplug-setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.32.45/arch/arm/mach-kirkwood/guruplug-setup.c	2011-10-11 15:35:37.000000000 +0200
-@@ -0,0 +1,131 @@
-+/*
-+ * arch/arm/mach-kirkwood/guruplug-setup.c
-+ *
-+ * Marvell GuruPlug Reference 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/platform_device.h>
-+#include <linux/mtd/partitions.h>
-+#include <linux/ata_platform.h>
-+#include <linux/mv643xx_eth.h>
-+#include <linux/gpio.h>
-+#include <linux/leds.h>
-+#include <asm/mach-types.h>
-+#include <asm/mach/arch.h>
-+#include <mach/kirkwood.h>
-+#include <plat/mvsdio.h>
-+#include "common.h"
-+#include "mpp.h"
-+
-+static struct mtd_partition guruplug_nand_parts[] = {
-+	{
-+		.name = "u-boot",
-+		.offset = 0,
-+		.size = SZ_1M
-+	}, {
-+		.name = "uImage",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = SZ_4M
-+	}, {
-+		.name = "root",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = MTDPART_SIZ_FULL
-+	},
-+};
-+
-+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 mv_sata_platform_data guruplug_sata_data = {
-+	.n_ports	= 1,
-+};
-+
-+static struct mvsdio_platform_data guruplug_mvsdio_data = {
-+	/* unfortunately the CD signal has not been connected */
-+};
-+
-+static struct gpio_led guruplug_led_pins[] = {
-+	{
-+		.name			= "guruplug:red:health",
-+		.gpio			= 46,
-+		.active_low		= 1,
-+	},
-+	{
-+		.name			= "guruplug:green:health",
-+		.gpio			= 47,
-+		.active_low		= 1,
-+	},
-+	{
-+		.name			= "guruplug:red:wmode",
-+		.gpio			= 48,
-+		.active_low		= 1,
-+	},
-+	{
-+		.name			= "guruplug:green:wmode",
-+		.gpio			= 49,
-+		.active_low		= 1,
-+	},
-+};
-+
-+static struct gpio_led_platform_data guruplug_led_data = {
-+	.leds		= guruplug_led_pins,
-+	.num_leds	= ARRAY_SIZE(guruplug_led_pins),
-+};
-+
-+static struct platform_device guruplug_leds = {
-+	.name	= "leds-gpio",
-+	.id	= -1,
-+	.dev	= {
-+		.platform_data	= &guruplug_led_data,
-+	}
-+};
-+
-+static unsigned int guruplug_mpp_config[] __initdata = {
-+	MPP46_GPIO,	/* M_RLED */
-+	MPP47_GPIO,	/* M_GLED */
-+	MPP48_GPIO,	/* B_RLED */
-+	MPP49_GPIO,	/* B_GLED */
-+	0
-+};
-+
-+static void __init guruplug_init(void)
-+{
-+	/*
-+	 * Basic setup. Needs to be called early.
-+	 */
-+	kirkwood_init();
-+	kirkwood_mpp_conf(guruplug_mpp_config);
-+
-+	kirkwood_uart0_init();
-+	kirkwood_nand_init(ARRAY_AND_SIZE(guruplug_nand_parts), 25);
-+
-+	kirkwood_ehci_init();
-+	kirkwood_ge00_init(&guruplug_ge00_data);
-+	kirkwood_ge01_init(&guruplug_ge01_data);
-+	kirkwood_sata_init(&guruplug_sata_data);
-+	kirkwood_sdio_init(&guruplug_mvsdio_data);
-+
-+	platform_device_register(&guruplug_leds);
-+}
-+
-+MACHINE_START(GURUPLUG, "Marvell GuruPlug Reference Board")
-+	/* Maintainer: Siddarth Gore <gores(a)marvell.com> */
-+	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
-+	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
-+	.boot_params	= 0x00000100,
-+	.init_machine	= guruplug_init,
-+	.map_io		= kirkwood_map_io,
-+	.init_irq	= kirkwood_init_irq,
-+	.timer		= &kirkwood_timer,
-+MACHINE_END
-diff -Naur linux-2.6.32.45.org/arch/arm/mach-kirkwood/Kconfig linux-2.6.32.45/arch/arm/mach-kirkwood/Kconfig
---- linux-2.6.32.45.org/arch/arm/mach-kirkwood/Kconfig	2011-08-16 03:57:37.000000000 +0200
-+++ linux-2.6.32.45/arch/arm/mach-kirkwood/Kconfig	2011-10-15 17:06:55.816070291 +0200
-@@ -32,6 +32,18 @@
- 	  Say 'Y' here if you want your kernel to support the
- 	  Marvell SheevaPlug Reference Board.
- 
-+config MACH_DREAMPLUG
-+	bool "Marvell DreamPlug Reference Board"
-+	help
-+	  Say 'Y' here if you want your kernel to support the
-+	  Marvell DreamPlug Reference Board.
-+
-+config MACH_GURUPLUG
-+	bool "Marvell GuruPlug Reference Board"
-+	help
-+	  Say 'Y' here if you want your kernel to support the
-+	  Marvell GuruPlug Reference Board.
-+
- config MACH_TS219
- 	bool "QNAP TS-119 and TS-219 Turbo NAS"
- 	help
-@@ -44,6 +56,12 @@
- 	  Say 'Y' here if you want your kernel to support the
- 	  Marvell OpenRD Base Board.
- 
-+config MACH_NAS6210
-+	bool "RaidSonic ICY BOX IB-NAS62x0"
-+	help
-+	  Say 'Y' here if you want your kernel to support the
-+	  RaidSonic ICY BOX IB-NAS62x0 device.
-+
- endmenu
- 
- endif
-diff -Naur linux-2.6.32.45.org/arch/arm/mach-kirkwood/Makefile linux-2.6.32.45/arch/arm/mach-kirkwood/Makefile
---- linux-2.6.32.45.org/arch/arm/mach-kirkwood/Makefile	2011-08-16 03:57:37.000000000 +0200
-+++ linux-2.6.32.45/arch/arm/mach-kirkwood/Makefile	2011-10-15 17:07:16.346068829 +0200
-@@ -5,7 +5,10 @@
- obj-$(CONFIG_MACH_RD88F6281)		+= rd88f6281-setup.o
- obj-$(CONFIG_MACH_MV88F6281GTW_GE)	+= mv88f6281gtw_ge-setup.o
- obj-$(CONFIG_MACH_SHEEVAPLUG)		+= sheevaplug-setup.o
-+obj-$(CONFIG_MACH_GURUPLUG)		+= guruplug-setup.o
-+obj-$(CONFIG_MACH_DREAMPLUG)		+= dreamplug-setup.o
- obj-$(CONFIG_MACH_TS219)		+= ts219-setup.o
- obj-$(CONFIG_MACH_OPENRD_BASE)		+= openrd_base-setup.o
-+obj-$(CONFIG_MACH_NAS6210)		+= nas6210-setup.o
- 
- obj-$(CONFIG_CPU_IDLE)			+= cpuidle.o
-diff -Naur linux-2.6.32.45.org/arch/arm/mach-kirkwood/nas6210-setup.c linux-2.6.32.45/arch/arm/mach-kirkwood/nas6210-setup.c
---- linux-2.6.32.45.org/arch/arm/mach-kirkwood/nas6210-setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.32.45/arch/arm/mach-kirkwood/nas6210-setup.c	2011-10-16 09:57:35.268409525 +0200
-@@ -0,0 +1,180 @@
-+/*
-+ * arch/arm/mach-kirkwood/nas6210-setup.c
-+ *
-+ * Raidsonic ICYBOX NAS6210 and 6220 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/platform_device.h>
-+#include <linux/mtd/partitions.h>
-+#include <linux/ata_platform.h>
-+#include <linux/mv643xx_eth.h>
-+#include <linux/gpio.h>
-+#include <linux/gpio_keys.h>
-+#include <linux/input.h>
-+#include <linux/leds.h>
-+#include <asm/mach-types.h>
-+#include <asm/mach/arch.h>
-+#include <mach/kirkwood.h>
-+#include "common.h"
-+#include "mpp.h"
-+
-+#define NAS6210_GPIO_POWER_OFF 24
-+
-+static struct mtd_partition nas6210_nand_parts[] = {
-+	{
-+		.name = "u-boot",
-+		.offset = 0,
-+		.size = SZ_1M
-+	}, {
-+		.name = "uImage",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = (SZ_1M*6)
-+	}, {
-+		.name = "root",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = MTDPART_SIZ_FULL
-+	},
-+};
-+
-+static struct mv643xx_eth_platform_data nas6210_ge00_data = {
-+	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
-+};
-+
-+static struct mv_sata_platform_data nas6210_sata_data = {
-+	.n_ports	= 2,
-+};
-+
-+static struct gpio_led nas6210_led_pins[] = {
-+	{
-+		.name			= "nas6210:green:power",
-+		.default_trigger	= "default-on",
-+		.gpio			= 25,
-+		.active_low		= 0,
-+	},
-+	{
-+		.name			= "nas6210:red:power",
-+		.default_trigger	= "none",
-+		.gpio			= 22,
-+		.active_low		= 0,
-+	},
-+	{
-+		.name			= "nas6210:red:usb_copy",
-+		.default_trigger	= "none",
-+		.gpio			= 27,
-+		.active_low		= 0,
-+	},
-+};
-+
-+static struct gpio_led_platform_data nas6210_led_data = {
-+	.leds		= nas6210_led_pins,
-+	.num_leds	= ARRAY_SIZE(nas6210_led_pins),
-+};
-+
-+static struct platform_device nas6210_leds = {
-+	.name	= "leds-gpio",
-+	.id	= -1,
-+	.dev	= {
-+		.platform_data	= &nas6210_led_data,
-+	}
-+};
-+
-+static struct gpio_keys_button nas6210_buttons[] = {
-+	{
-+		.code		= KEY_COPY,
-+		.gpio		= 29,
-+		.desc		= "USB Copy",
-+		.active_low	= 1,
-+	},
-+	{
-+		.code		= KEY_RESTART,
-+		.gpio		= 28,
-+		.desc		= "Reset",
-+		.active_low	= 1,
-+	},
-+};
-+
-+static struct gpio_keys_platform_data nas6210_button_data = {
-+	.buttons	= nas6210_buttons,
-+	.nbuttons	= ARRAY_SIZE(nas6210_buttons),
-+};
-+
-+static struct platform_device nas6210_button_device = {
-+	.name		= "gpio-keys",
-+	.id		= -1,
-+	.num_resources	= 0,
-+	.dev		= {
-+		.platform_data	= &nas6210_button_data,
-+	}
-+};
-+
-+static unsigned int nas6210_mpp_config[] __initdata = {
-+	MPP0_NF_IO2,
-+	MPP1_NF_IO3,
-+	MPP2_NF_IO4,
-+	MPP3_NF_IO5,
-+	MPP4_NF_IO6,
-+	MPP5_NF_IO7,
-+	MPP18_NF_IO0,
-+	MPP19_NF_IO1,
-+	MPP22_GPIO,	/* Power LED red */
-+	MPP24_GPIO,	/* Power off */
-+	MPP25_GPIO,	/* Power LED green */
-+	MPP27_GPIO,    /* USB transfer LED */
-+	MPP28_GPIO,    /* Reset button */
-+	MPP29_GPIO,    /* USB Copy button */
-+	0
-+};
-+
-+void nas6210_power_off(void)
-+{
-+	gpio_set_value(NAS6210_GPIO_POWER_OFF, 1);
-+	while(1);
-+}
-+
-+static void __init nas6210_init(void)
-+{
-+	/*
-+	 * Basic setup. Needs to be called early.
-+	 */
-+	kirkwood_init();
-+	kirkwood_mpp_conf(nas6210_mpp_config);
-+
-+	kirkwood_nand_init(ARRAY_AND_SIZE(nas6210_nand_parts), 25);
-+	kirkwood_ehci_init();
-+	kirkwood_ge00_init(&nas6210_ge00_data);
-+	kirkwood_sata_init(&nas6210_sata_data);
-+	kirkwood_uart0_init();
-+	platform_device_register(&nas6210_leds);
-+	platform_device_register(&nas6210_button_device);
-+
-+	if (gpio_request(NAS6210_GPIO_POWER_OFF, "power-off") == 0 &&
-+		gpio_direction_output(NAS6210_GPIO_POWER_OFF, 0) == 0)
-+			pm_power_off = nas6210_power_off;
-+
-+	else
-+		pr_err("nas6210: failed to configure power-off gpio pin");
-+}
-+
-+static int __init nas6210_pci_init(void)
-+{
-+	if (machine_is_nas6210()) {
-+		kirkwood_pcie_init();
-+	}
-+	return 0;
-+}
-+subsys_initcall(nas6210_pci_init);
-+
-+MACHINE_START(NAS6210, "RaidSonic ICY BOX IB-NAS62x0")
-+	/* Maintainer: Arne Fitzenreiter <arne_f(a)ipfire.org> */
-+	.boot_params	= 0x00000100,
-+	.init_machine	= nas6210_init,
-+	.map_io		= kirkwood_map_io,
-+	.init_irq	= kirkwood_init_irq,
-+	.timer		= &kirkwood_timer,
-+MACHINE_END
-diff -Naur linux-2.6.32.45.org/arch/arm/tools/mach-types linux-2.6.32.45/arch/arm/tools/mach-types
---- linux-2.6.32.45.org/arch/arm/tools/mach-types	2011-08-16 03:57:37.000000000 +0200
-+++ linux-2.6.32.45/arch/arm/tools/mach-types	2011-10-15 17:05:46.486069811 +0200
-@@ -2536,3 +2536,6 @@
- mxt_td60		MACH_MXT_TD60		MXT_TD60		2550
- esyx			MACH_ESYX		ESYX			2551
- bulldog			MACH_BULLDOG		BULLDOG			2553
-+guruplug		MACH_GURUPLUG		GURUPLUG		2601
-+dreamplug		MACH_DREAMPLUG		DREAMPLUG		2659
-+nas6210			MACH_NAS6210		NAS6210			3104
diff --git a/src/patches/linux-2.6.32.57-arm_kirkwood_setups.patch b/src/patches/linux-2.6.32.57-arm_kirkwood_setups.patch
new file mode 100644
index 0000000..77db60b
--- /dev/null
+++ b/src/patches/linux-2.6.32.57-arm_kirkwood_setups.patch
@@ -0,0 +1,763 @@
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/dreamplug-setup.c linux-2.6.32.57/arch/arm/mach-kirkwood/dreamplug-setup.c
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/dreamplug-setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/dreamplug-setup.c	2012-03-02 09:22:40.107199269 +0100
+@@ -0,0 +1,140 @@
++/*
++ * arch/arm/mach-kirkwood/dreamplug-setup.c
++ *
++ * Marvell DreamPlug Reference 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/platform_device.h>
++#include <linux/mtd/partitions.h>
++#include <linux/ata_platform.h>
++#include <linux/mv643xx_eth.h>
++#include <linux/gpio.h>
++#include <linux/leds.h>
++#include <linux/spi/flash.h>
++#include <linux/spi/spi.h>
++#include <linux/spi/orion_spi.h>
++#include <asm/mach-types.h>
++#include <asm/mach/arch.h>
++#include <mach/kirkwood.h>
++#include <plat/mvsdio.h>
++#include "common.h"
++#include "mpp.h"
++
++static const struct flash_platform_data dreamplug_spi_slave_data = {
++	.type		= "mx25l1606e",
++};
++
++static struct spi_board_info __initdata dreamplug_spi_slave_info[] = {
++	{
++		.modalias	= "m25p80",
++		.platform_data	= &dreamplug_spi_slave_data,
++		.irq		= -1,
++		.max_speed_hz	= 50000000,
++		.bus_num	= 0,
++		.chip_select	= 0,
++	},
++};
++
++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),
++};
++
++static struct mv_sata_platform_data dreamplug_sata_data = {
++	.n_ports	= 1,
++};
++
++static struct mvsdio_platform_data dreamplug_mvsdio_data = {
++	/* unfortunately the CD signal has not been connected */
++};
++
++static struct gpio_led dreamplug_led_pins[] = {
++	{
++		.name			= "dreamplug:blue:bluetooth",
++		.gpio			= 47,
++		.active_low		= 1,
++	},
++	{
++		.name			= "dreamplug:green:wlan",
++		.gpio			= 48,
++		.active_low		= 1,
++	},
++	{
++		.name			= "dreamplug:blue:wlanap",
++		.gpio			= 49,
++		.active_low		= 1,
++	},
++};
++
++static struct gpio_led_platform_data dreamplug_led_data = {
++	.leds		= dreamplug_led_pins,
++	.num_leds	= ARRAY_SIZE(dreamplug_led_pins),
++};
++
++static struct platform_device dreamplug_leds = {
++	.name	= "leds-gpio",
++	.id	= -1,
++	.dev	= {
++		.platform_data	= &dreamplug_led_data,
++	}
++};
++
++static unsigned int dreamplug_mpp_config[] __initdata = {
++	MPP0_SPI_SCn,
++	MPP1_SPI_MOSI,
++	MPP2_SPI_SCK,
++	MPP3_SPI_MISO,
++	MPP4_GPIO,
++	MPP5_GPO,
++	MPP7_GPO,
++	MPP18_GPO,
++	MPP19_GPO,
++	MPP47_GPIO,	/* B_BLED */
++	MPP48_GPIO,	/* W_GLED */
++	MPP49_GPIO,	/* W_BLED */
++	0
++};
++
++static void __init dreamplug_init(void)
++{
++	/*
++	 * Basic setup. Needs to be called early.
++	 */
++	kirkwood_init();
++	kirkwood_mpp_conf(dreamplug_mpp_config);
++
++	kirkwood_uart0_init();
++
++	spi_register_board_info(dreamplug_spi_slave_info,
++				ARRAY_SIZE(dreamplug_spi_slave_info));
++
++	kirkwood_spi_init();
++	kirkwood_ehci_init();
++
++	kirkwood_ge00_init(&dreamplug_ge00_data);
++	kirkwood_ge01_init(&dreamplug_ge01_data);
++	kirkwood_sata_init(&dreamplug_sata_data);
++	kirkwood_sdio_init(&dreamplug_mvsdio_data);
++
++	platform_device_register(&dreamplug_leds);
++}
++
++MACHINE_START(DREAMPLUG, "Marvell DreamPlug Reference Board")
++	/* Maintainer: Siddarth Gore <gores <at> marvell.com> */
++	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
++	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
++	.boot_params	= 0x00000100,
++	.init_machine	= dreamplug_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/guruplug-setup.c linux-2.6.32.57/arch/arm/mach-kirkwood/guruplug-setup.c
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/guruplug-setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/guruplug-setup.c	2012-03-02 23:36:51.627514981 +0100
+@@ -0,0 +1,133 @@
++/*
++ * arch/arm/mach-kirkwood/guruplug-setup.c
++ *
++ * Marvell GuruPlug Reference 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/platform_device.h>
++#include <linux/mtd/mtd.h>
++#include <linux/mtd/partitions.h>
++#include <linux/ata_platform.h>
++#include <linux/mv643xx_eth.h>
++#include <linux/gpio.h>
++#include <linux/leds.h>
++#include <asm/mach-types.h>
++#include <asm/mach/arch.h>
++#include <mach/kirkwood.h>
++#include <plat/mvsdio.h>
++#include "common.h"
++#include "mpp.h"
++
++static struct mtd_partition guruplug_nand_parts[] = {
++	{
++		.name = "u-boot",
++		.offset = 0,
++		.size = SZ_1M,
++		.mask_flags = MTD_WRITEABLE, /* read only */
++	}, {
++		.name = "uImage",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = SZ_4M,
++	}, {
++		.name = "root",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = MTDPART_SIZ_FULL,
++	},
++};
++
++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 mv_sata_platform_data guruplug_sata_data = {
++	.n_ports	= 1,
++};
++
++static struct mvsdio_platform_data guruplug_mvsdio_data = {
++	/* unfortunately the CD signal has not been connected */
++};
++
++static struct gpio_led guruplug_led_pins[] = {
++	{
++		.name			= "guruplug:red:health",
++		.gpio			= 46,
++		.active_low		= 1,
++	},
++	{
++		.name			= "guruplug:green:health",
++		.gpio			= 47,
++		.active_low		= 1,
++	},
++	{
++		.name			= "guruplug:red:wmode",
++		.gpio			= 48,
++		.active_low		= 1,
++	},
++	{
++		.name			= "guruplug:green:wmode",
++		.gpio			= 49,
++		.active_low		= 1,
++	},
++};
++
++static struct gpio_led_platform_data guruplug_led_data = {
++	.leds		= guruplug_led_pins,
++	.num_leds	= ARRAY_SIZE(guruplug_led_pins),
++};
++
++static struct platform_device guruplug_leds = {
++	.name	= "leds-gpio",
++	.id	= -1,
++	.dev	= {
++		.platform_data	= &guruplug_led_data,
++	}
++};
++
++static unsigned int guruplug_mpp_config[] __initdata = {
++	MPP46_GPIO,	/* M_RLED */
++	MPP47_GPIO,	/* M_GLED */
++	MPP48_GPIO,	/* B_RLED */
++	MPP49_GPIO,	/* B_GLED */
++	0
++};
++
++static void __init guruplug_init(void)
++{
++	/*
++	 * Basic setup. Needs to be called early.
++	 */
++	kirkwood_init();
++	kirkwood_mpp_conf(guruplug_mpp_config);
++
++	kirkwood_uart0_init();
++	kirkwood_nand_init(ARRAY_AND_SIZE(guruplug_nand_parts), 25);
++
++	kirkwood_ehci_init();
++	kirkwood_ge00_init(&guruplug_ge00_data);
++	kirkwood_ge01_init(&guruplug_ge01_data);
++	kirkwood_sata_init(&guruplug_sata_data);
++	kirkwood_sdio_init(&guruplug_mvsdio_data);
++
++	platform_device_register(&guruplug_leds);
++}
++
++MACHINE_START(GURUPLUG, "Marvell GuruPlug Reference Board")
++	/* Maintainer: Siddarth Gore <gores(a)marvell.com> */
++	.phys_io	= KIRKWOOD_REGS_PHYS_BASE,
++	.io_pg_offst	= ((KIRKWOOD_REGS_VIRT_BASE) >> 18) & 0xfffc,
++	.boot_params	= 0x00000100,
++	.init_machine	= guruplug_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/iconnect-setup.c linux-2.6.32.57/arch/arm/mach-kirkwood/iconnect-setup.c
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/iconnect-setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/iconnect-setup.c	2012-03-03 00:15:42.757514706 +0100
+@@ -0,0 +1,211 @@
++/*
++ * arch/arm/mach-kirkwood/iconnect-setup.c
++ *
++ * Iomega iConnect Wireless Data Station 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/platform_device.h>
++#include <linux/mtd/mtd.h>
++#include <linux/mtd/partitions.h>
++#include <linux/ata_platform.h>
++#include <linux/mv643xx_eth.h>
++#include <linux/gpio.h>
++#include <linux/gpio_keys.h>
++#include <linux/i2c.h>
++#include <linux/input.h>
++#include <linux/leds.h>
++#include <asm/mach-types.h>
++#include <asm/mach/arch.h>
++#include <mach/kirkwood.h>
++#include "common.h"
++#include "mpp.h"
++
++static struct mtd_partition iconnect_nand_parts[] = {
++	{
++		.name = "u-boot",
++		.offset = 0,
++		.size = SZ_1M,
++		.mask_flags = MTD_WRITEABLE, /* read only */
++	}, {
++		.name = "uImage",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = 0x440000,
++	}, {
++		.name = "uInit",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = 0x440000,
++	}, {
++		.name = "root",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = MTDPART_SIZ_FULL,
++	},
++};
++
++static struct mv643xx_eth_platform_data iconnect_ge00_data = {
++	.phy_addr	= MV643XX_ETH_PHY_ADDR(0xB),
++};
++
++static struct gpio_led iconnect_led_pins[] = {
++	{
++		.name			= "iconnect:led_level",
++		.default_trigger	= "default-on",
++		.gpio			= 41,
++		.active_low		= 0,
++	},
++
++	{
++		.name			= "iconnect:blue:power",
++		.default_trigger	= "default-on",
++		.gpio			= 42,
++		.active_low		= 0,
++	},
++	{
++		.name			= "iconnect:red:power",
++		.default_trigger	= "none",
++		.gpio			= 43,
++		.active_low		= 0,
++	},
++	{
++		.name			= "iconnect:blue:usb_1",
++		.default_trigger	= "none",
++		.gpio			= 44,
++		.active_low		= 0,
++	},
++	{
++		.name			= "iconnect:blue:usb_2",
++		.default_trigger	= "none",
++		.gpio			= 45,
++		.active_low		= 0,
++	},
++	{
++		.name			= "iconnect:blue:usb_3",
++		.default_trigger	= "none",
++		.gpio			= 46,
++		.active_low		= 0,
++	},
++	{
++		.name			= "iconnect:blue:usb_4",
++		.default_trigger	= "none",
++		.gpio			= 47,
++		.active_low		= 0,
++	},
++	{
++		.name			= "iconnect:blue:otb",
++		.default_trigger	= "none",
++		.gpio			= 48,
++		.active_low		= 0,
++	},
++};
++
++static struct gpio_led_platform_data iconnect_led_data = {
++	.leds		= iconnect_led_pins,
++	.num_leds	= ARRAY_SIZE(iconnect_led_pins),
++};
++
++static struct platform_device iconnect_leds = {
++	.name	= "leds-gpio",
++	.id	= -1,
++	.dev	= {
++		.platform_data	= &iconnect_led_data,
++	}
++};
++
++static struct gpio_keys_button iconnect_buttons[] = {
++	{
++		.code		= KEY_COPY,
++		.gpio		= 35,
++		.desc		= "OTB Button",
++		.active_low	= 1,
++	},
++	{
++		.code		= KEY_RESTART,
++		.gpio		= 12,
++		.desc		= "Reset",
++		.active_low	= 1,
++	},
++};
++
++static struct gpio_keys_platform_data iconnect_button_data = {
++	.buttons	= iconnect_buttons,
++	.nbuttons	= ARRAY_SIZE(iconnect_buttons),
++};
++
++static struct platform_device iconnect_button_device = {
++	.name		= "gpio-keys",
++	.id		= -1,
++	.num_resources	= 0,
++	.dev		= {
++		.platform_data	= &iconnect_button_data,
++	}
++};
++
++static unsigned int iconnect_mpp_config[] __initdata = {
++	MPP0_NF_IO2,
++	MPP1_NF_IO3,
++	MPP2_NF_IO4,
++	MPP3_NF_IO5,
++	MPP4_NF_IO6,
++	MPP5_NF_IO7,
++	MPP18_NF_IO0,
++	MPP19_NF_IO1,
++	MPP12_GPIO,	/* Reset Button */
++	MPP35_GPIO,	/* OTB Button */
++
++	MPP41_GPIO,	/* LED Level */
++	MPP42_GPIO,	/* Power LED blue */
++	MPP43_GPIO,	/* Power LED red */
++	MPP44_GPIO,	/* USB LED 1 */
++	MPP45_GPIO,	/* USB LED 2 */
++	MPP46_GPIO,	/* USB LED 3 */
++	MPP47_GPIO,	/* USB LED 4 */
++	MPP48_GPIO,	/* OTB LED */
++	0
++};
++
++static struct i2c_board_info __initdata iconnect_i2c = {
++	I2C_BOARD_INFO("lm63", 0x4c),
++};
++
++static void __init iconnect_init(void)
++{
++	/*
++	 * Basic setup. Needs to be called early.
++	 */
++	kirkwood_init();
++	kirkwood_mpp_conf(iconnect_mpp_config);
++
++	kirkwood_nand_init(ARRAY_AND_SIZE(iconnect_nand_parts), 25);
++	kirkwood_ehci_init();
++	kirkwood_ge00_init(&iconnect_ge00_data);
++
++	kirkwood_uart0_init();
++	platform_device_register(&iconnect_leds);
++	platform_device_register(&iconnect_button_device);
++
++	kirkwood_i2c_init();
++	i2c_register_board_info(0, &iconnect_i2c,1);
++}
++
++static int __init iconnect_pci_init(void)
++{
++	if (machine_is_iconnect()) {
++		kirkwood_pcie_init();
++	}
++	return 0;
++}
++subsys_initcall(iconnect_pci_init);
++
++MACHINE_START(ICONNECT, "Iomega iConnect Wireless Data Station")
++	/* Maintainer: Arne Fitzenreiter <arne_f(a)ipfire.org> */
++	.boot_params	= 0x00000100,
++	.init_machine	= iconnect_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/Kconfig linux-2.6.32.57/arch/arm/mach-kirkwood/Kconfig
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/Kconfig	2012-02-13 20:29:11.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/Kconfig	2012-03-02 09:28:49.387192309 +0100
+@@ -32,6 +32,18 @@
+ 	  Say 'Y' here if you want your kernel to support the
+ 	  Marvell SheevaPlug Reference Board.
+ 
++config MACH_DREAMPLUG
++	bool "Marvell DreamPlug Reference Board"
++	help
++	  Say 'Y' here if you want your kernel to support the
++	  Marvell DreamPlug Reference Board.
++
++config MACH_GURUPLUG
++	bool "Marvell GuruPlug Reference Board"
++	help
++	  Say 'Y' here if you want your kernel to support the
++	  Marvell GuruPlug Reference Board.
++
+ config MACH_TS219
+ 	bool "QNAP TS-119 and TS-219 Turbo NAS"
+ 	help
+@@ -44,6 +56,18 @@
+ 	  Say 'Y' here if you want your kernel to support the
+ 	  Marvell OpenRD Base Board.
+ 
++config MACH_ICONNECT
++	bool "Iomega iConnect Wireless Data Station"
++	help
++	  Say 'Y' here if you want your kernel to support the
++	  Iomega iConnect Wireless Data Station.
++
++config MACH_NAS6210
++	bool "RaidSonic ICY BOX IB-NAS62x0"
++	help
++	  Say 'Y' here if you want your kernel to support the
++	  RaidSonic ICY BOX IB-NAS62x0 device.
++
+ endmenu
+ 
+ endif
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/Makefile linux-2.6.32.57/arch/arm/mach-kirkwood/Makefile
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/Makefile	2012-02-13 20:29:11.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/Makefile	2012-03-02 09:26:39.447195212 +0100
+@@ -5,7 +5,11 @@
+ obj-$(CONFIG_MACH_RD88F6281)		+= rd88f6281-setup.o
+ obj-$(CONFIG_MACH_MV88F6281GTW_GE)	+= mv88f6281gtw_ge-setup.o
+ obj-$(CONFIG_MACH_SHEEVAPLUG)		+= sheevaplug-setup.o
++obj-$(CONFIG_MACH_GURUPLUG)		+= guruplug-setup.o
++obj-$(CONFIG_MACH_DREAMPLUG)		+= dreamplug-setup.o
+ obj-$(CONFIG_MACH_TS219)		+= ts219-setup.o
+ obj-$(CONFIG_MACH_OPENRD_BASE)		+= openrd_base-setup.o
++obj-$(CONFIG_MACH_ICONNECT)		+= iconnect-setup.o
++obj-$(CONFIG_MACH_NAS6210)		+= nas6210-setup.o
+ 
+ obj-$(CONFIG_CPU_IDLE)			+= cpuidle.o
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/mpp.h linux-2.6.32.57/arch/arm/mach-kirkwood/mpp.h
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/mpp.h	2012-02-13 20:29:11.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/mpp.h	2012-03-02 10:26:53.987196429 +0100
+@@ -102,7 +102,9 @@
+ #define MPP11_PTP_CLK		MPP( 11, 0xd, 1, 0, 1,   1,   1,   1    )
+ #define MPP11_SATA0_ACTn	MPP( 11, 0x5, 0, 1, 0,   1,   1,   1    )
+ 
++
+ #define MPP12_GPO		MPP( 12, 0x0, 0, 1, 1,   1,   1,   1    )
++#define MPP12_GPIO		MPP( 12, 0x0, 1, 1, 1,   1,   1,   1    )
+ #define MPP12_SD_CLK		MPP( 12, 0x1, 0, 1, 1,   1,   1,   1    )
+ 
+ #define MPP13_GPIO		MPP( 13, 0x0, 1, 1, 1,   1,   1,   1    )
+diff -Naur linux-2.6.32.57.org/arch/arm/mach-kirkwood/nas6210-setup.c linux-2.6.32.57/arch/arm/mach-kirkwood/nas6210-setup.c
+--- linux-2.6.32.57.org/arch/arm/mach-kirkwood/nas6210-setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.32.57/arch/arm/mach-kirkwood/nas6210-setup.c	2012-03-02 23:37:35.077514152 +0100
+@@ -0,0 +1,183 @@
++/*
++ * arch/arm/mach-kirkwood/nas6210-setup.c
++ *
++ * Raidsonic ICYBOX NAS6210 and 6220 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/platform_device.h>
++#include <linux/mtd/mtd.h>
++#include <linux/mtd/partitions.h>
++#include <linux/ata_platform.h>
++#include <linux/mv643xx_eth.h>
++#include <linux/gpio.h>
++#include <linux/gpio_keys.h>
++#include <linux/i2c.h>
++#include <linux/input.h>
++#include <linux/leds.h>
++#include <asm/mach-types.h>
++#include <asm/mach/arch.h>
++#include <mach/kirkwood.h>
++#include "common.h"
++#include "mpp.h"
++
++#define NAS6210_GPIO_POWER_OFF 24
++
++static struct mtd_partition nas6210_nand_parts[] = {
++	{
++		.name = "u-boot",
++		.offset = 0,
++		.size = SZ_1M,
++		.mask_flags = MTD_WRITEABLE, /* read only */
++	}, {
++		.name = "uImage",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = (SZ_1M*6),
++	}, {
++		.name = "root",
++		.offset = MTDPART_OFS_NXTBLK,
++		.size = MTDPART_SIZ_FULL,
++	},
++};
++
++static struct mv643xx_eth_platform_data nas6210_ge00_data = {
++	.phy_addr	= MV643XX_ETH_PHY_ADDR(8),
++};
++
++static struct mv_sata_platform_data nas6210_sata_data = {
++	.n_ports	= 2,
++};
++
++static struct gpio_led nas6210_led_pins[] = {
++	{
++		.name			= "nas6210:green:power",
++		.default_trigger	= "default-on",
++		.gpio			= 25,
++		.active_low		= 0,
++	},
++	{
++		.name			= "nas6210:red:power",
++		.default_trigger	= "none",
++		.gpio			= 22,
++		.active_low		= 0,
++	},
++	{
++		.name			= "nas6210:red:usb_copy",
++		.default_trigger	= "none",
++		.gpio			= 27,
++		.active_low		= 0,
++	},
++};
++
++static struct gpio_led_platform_data nas6210_led_data = {
++	.leds		= nas6210_led_pins,
++	.num_leds	= ARRAY_SIZE(nas6210_led_pins),
++};
++
++static struct platform_device nas6210_leds = {
++	.name	= "leds-gpio",
++	.id	= -1,
++	.dev	= {
++		.platform_data	= &nas6210_led_data,
++	}
++};
++
++static struct gpio_keys_button nas6210_buttons[] = {
++	{
++		.code		= KEY_COPY,
++		.gpio		= 29,
++		.desc		= "USB Copy",
++		.active_low	= 1,
++	},
++	{
++		.code		= KEY_RESTART,
++		.gpio		= 28,
++		.desc		= "Reset",
++		.active_low	= 1,
++	},
++};
++
++static struct gpio_keys_platform_data nas6210_button_data = {
++	.buttons	= nas6210_buttons,
++	.nbuttons	= ARRAY_SIZE(nas6210_buttons),
++};
++
++static struct platform_device nas6210_button_device = {
++	.name		= "gpio-keys",
++	.id		= -1,
++	.num_resources	= 0,
++	.dev		= {
++		.platform_data	= &nas6210_button_data,
++	}
++};
++
++static unsigned int nas6210_mpp_config[] __initdata = {
++	MPP0_NF_IO2,
++	MPP1_NF_IO3,
++	MPP2_NF_IO4,
++	MPP3_NF_IO5,
++	MPP4_NF_IO6,
++	MPP5_NF_IO7,
++	MPP18_NF_IO0,
++	MPP19_NF_IO1,
++	MPP22_GPIO,	/* Power LED red */
++	MPP24_GPIO,	/* Power off */
++	MPP25_GPIO,	/* Power LED green */
++	MPP27_GPIO,    /* USB transfer LED */
++	MPP28_GPIO,    /* Reset button */
++	MPP29_GPIO,    /* USB Copy button */
++	0
++};
++
++void nas6210_power_off(void)
++{
++	gpio_set_value(NAS6210_GPIO_POWER_OFF, 1);
++	while(1);
++}
++
++static void __init nas6210_init(void)
++{
++	/*
++	 * Basic setup. Needs to be called early.
++	 */
++	kirkwood_init();
++	kirkwood_mpp_conf(nas6210_mpp_config);
++
++	kirkwood_nand_init(ARRAY_AND_SIZE(nas6210_nand_parts), 25);
++	kirkwood_ehci_init();
++	kirkwood_ge00_init(&nas6210_ge00_data);
++	kirkwood_sata_init(&nas6210_sata_data);
++	kirkwood_uart0_init();
++	platform_device_register(&nas6210_leds);
++	platform_device_register(&nas6210_button_device);
++
++	if (gpio_request(NAS6210_GPIO_POWER_OFF, "power-off") == 0 &&
++		gpio_direction_output(NAS6210_GPIO_POWER_OFF, 0) == 0)
++			pm_power_off = nas6210_power_off;
++
++	else
++		pr_err("nas6210: failed to configure power-off gpio pin");
++}
++
++static int __init nas6210_pci_init(void)
++{
++	if (machine_is_nas6210()) {
++		kirkwood_pcie_init();
++	}
++	return 0;
++}
++subsys_initcall(nas6210_pci_init);
++
++MACHINE_START(NAS6210, "RaidSonic ICY BOX IB-NAS62x0")
++	/* Maintainer: Arne Fitzenreiter <arne_f(a)ipfire.org> */
++	.boot_params	= 0x00000100,
++	.init_machine	= nas6210_init,
++	.map_io		= kirkwood_map_io,
++	.init_irq	= kirkwood_init_irq,
++	.timer		= &kirkwood_timer,
++MACHINE_END
+diff -Naur linux-2.6.32.57.org/arch/arm/tools/mach-types linux-2.6.32.57/arch/arm/tools/mach-types
+--- linux-2.6.32.57.org/arch/arm/tools/mach-types	2012-02-13 20:29:11.000000000 +0100
++++ linux-2.6.32.57/arch/arm/tools/mach-types	2012-03-02 09:25:26.787196718 +0100
+@@ -2536,3 +2536,7 @@
+ mxt_td60		MACH_MXT_TD60		MXT_TD60		2550
+ esyx			MACH_ESYX		ESYX			2551
+ bulldog			MACH_BULLDOG		BULLDOG			2553
++guruplug		MACH_GURUPLUG		GURUPLUG		2601
++dreamplug		MACH_DREAMPLUG		DREAMPLUG		2659
++iconnect		MACH_ICONNECT		ICONNECT		2870
++nas6210			MACH_NAS6210		NAS6210			3104


hooks/post-receive
--
IPFire 2.x development tree

                 reply	other threads:[~2012-03-03 18:35 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120303183534.CB83B20146@argus.ipfire.org \
    --to=git@ipfire.org \
    --cc=ipfire-scm@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox