From d1eed108bb500343f8c018e6e56ca2f294bd3a69 Mon Sep 17 00:00:00 2001
From: Gabor Juhos <juhosg@openwrt.org>
Date: Wed, 9 May 2012 11:38:39 +0000
Subject: [PATCH] kirkwood: nuke 2.6.37 support

SVN-Revision: 31666
---
 target/linux/kirkwood/config-default          | 153 ------------
 .../patches/001-openwrt_partition_map.patch   |  11 -
 .../kirkwood/patches/002-mvsdio_delay.patch   |  32 ---
 .../linux/kirkwood/patches/200-iconnect.patch | 226 ------------------
 4 files changed, 422 deletions(-)
 delete mode 100644 target/linux/kirkwood/config-default
 delete mode 100644 target/linux/kirkwood/patches/001-openwrt_partition_map.patch
 delete mode 100644 target/linux/kirkwood/patches/002-mvsdio_delay.patch
 delete mode 100644 target/linux/kirkwood/patches/200-iconnect.patch

diff --git a/target/linux/kirkwood/config-default b/target/linux/kirkwood/config-default
deleted file mode 100644
index d37d8abf88..0000000000
--- a/target/linux/kirkwood/config-default
+++ /dev/null
@@ -1,153 +0,0 @@
-CONFIG_ALIGNMENT_TRAP=y
-CONFIG_ARCH_KIRKWOOD=y
-# CONFIG_ARCH_NUC93X is not set
-CONFIG_ARCH_REQUIRE_GPIOLIB=y
-# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
-# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
-# CONFIG_ARCH_SUPPORTS_MSI is not set
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-# CONFIG_ARCH_USES_GETTIMEOFFSET is not set
-CONFIG_ARM=y
-CONFIG_ARM_L1_CACHE_SHIFT=5
-# CONFIG_ARM_THUMB is not set
-# CONFIG_ARPD is not set
-CONFIG_BITREVERSE=y
-CONFIG_BLK_DEV_SD=y
-CONFIG_CACHE_FEROCEON_L2=y
-# CONFIG_CACHE_FEROCEON_L2_WRITETHROUGH is not set
-CONFIG_CMDLINE="rootdelay=1 root=/dev/mmcblk0p1 noinitrd console=ttyS0,115200"
-CONFIG_CPU_32v5=y
-CONFIG_CPU_ABRT_EV5T=y
-CONFIG_CPU_CACHE_VIVT=y
-CONFIG_CPU_COPY_FEROCEON=y
-CONFIG_CPU_CP15=y
-CONFIG_CPU_CP15_MMU=y
-CONFIG_CPU_FEROCEON=y
-# CONFIG_CPU_FEROCEON_OLD_ID is not set
-# CONFIG_CPU_ICACHE_DISABLE is not set
-CONFIG_CPU_IDLE=y
-CONFIG_CPU_IDLE_GOV_LADDER=y
-CONFIG_CPU_PABRT_LEGACY=y
-CONFIG_CPU_TLB_FEROCEON=y
-CONFIG_DEBUG_KERNEL=y
-# CONFIG_DEBUG_USER is not set
-CONFIG_DECOMPRESS_LZMA=y
-CONFIG_DEVPORT=y
-# CONFIG_DLCI is not set
-# CONFIG_DM9000 is not set
-CONFIG_DNOTIFY=y
-CONFIG_EXT4_FS=y
-# CONFIG_FPE_FASTFPE is not set
-# CONFIG_FPE_NWFPE is not set
-CONFIG_FRAME_POINTER=y
-CONFIG_GENERIC_ATOMIC64=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
-CONFIG_GENERIC_FIND_LAST_BIT=y
-CONFIG_GENERIC_GPIO=y
-CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-CONFIG_GPIOLIB=y
-# CONFIG_HAMRADIO is not set
-CONFIG_HARDIRQS_SW_RESEND=y
-CONFIG_HAS_DMA=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
-CONFIG_HAVE_AOUT=y
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_HAVE_IDE=y
-CONFIG_HAVE_KERNEL_GZIP=y
-CONFIG_HAVE_KERNEL_LZMA=y
-CONFIG_HAVE_KERNEL_LZO=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_HAVE_LATENCYTOP_SUPPORT=y
-CONFIG_HAVE_OPROFILE=y
-CONFIG_HAVE_PERF_EVENTS=y
-CONFIG_HAVE_PROC_CPU=y
-CONFIG_HW_RANDOM=y
-# CONFIG_I2C_MV64XXX is not set
-CONFIG_INET_LRO=y
-CONFIG_INITRAMFS_SOURCE=""
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_PIMSM_V1=y
-CONFIG_IP_PIMSM_V2=y
-CONFIG_JBD=y
-CONFIG_LEDS_GPIO=y
-CONFIG_LEGACY_PTYS=y
-CONFIG_LEGACY_PTY_COUNT=256
-# CONFIG_MACH_D2NET_V2 is not set
-# CONFIG_MACH_DB88F6281_BP is not set
-CONFIG_MACH_DOCKSTAR=y
-# CONFIG_MACH_ESATA_SHEEVAPLUG is not set
-# CONFIG_MACH_GURUPLUG is not set
-CONFIG_MACH_ICONNECT=y
-# CONFIG_MACH_INETSPACE_V2 is not set
-# CONFIG_MACH_MV88F6281GTW_GE is not set
-# CONFIG_MACH_NET2BIG_V2 is not set
-# CONFIG_MACH_NET5BIG_V2 is not set
-# CONFIG_MACH_NETSPACE_MAX_V2 is not set
-# CONFIG_MACH_NETSPACE_V2 is not set
-CONFIG_MACH_OPENRD_BASE=y
-CONFIG_MACH_OPENRD_CLIENT=y
-# CONFIG_MACH_OPENRD_ULTIMATE is not set
-# CONFIG_MACH_RD88F6192_NAS is not set
-# CONFIG_MACH_RD88F6281 is not set
-CONFIG_MACH_SHEEVAPLUG=y
-# CONFIG_MACH_T5325 is not set
-# CONFIG_MACH_TS219 is not set
-# CONFIG_MACH_TS41X is not set
-CONFIG_MMC=y
-CONFIG_MMC_BLOCK=y
-CONFIG_MMC_MVSDIO=y
-# CONFIG_MMC_TIFM_SD is not set
-# CONFIG_MTD_CFI is not set
-CONFIG_MTD_CMDLINE_PARTS=y
-CONFIG_MTD_NAND=y
-CONFIG_MTD_NAND_ECC=y
-CONFIG_MTD_NAND_ORION=y
-# CONFIG_MTD_ROOTFS_ROOT_DEV is not set
-# CONFIG_MTD_ROOTFS_SPLIT is not set
-# CONFIG_MTD_SM_COMMON is not set
-CONFIG_MV643XX_ETH=y
-CONFIG_NEED_DMA_MAP_STATE=y
-CONFIG_NET_DSA=y
-# CONFIG_NET_DSA_MV88E6060 is not set
-# CONFIG_NET_DSA_MV88E6123_61_65 is not set
-CONFIG_NET_DSA_MV88E6131=y
-CONFIG_NET_DSA_MV88E6XXX=y
-CONFIG_NET_DSA_MV88E6XXX_NEED_PPU=y
-CONFIG_NET_DSA_TAG_DSA=y
-# CONFIG_NET_DSA_TAG_EDSA is not set
-# CONFIG_NET_DSA_TAG_TRAILER is not set
-CONFIG_NLS=y
-CONFIG_OUTER_CACHE=y
-CONFIG_PAGEFLAGS_EXTENDED=y
-CONFIG_PAGE_OFFSET=0xC0000000
-CONFIG_PCI=y
-CONFIG_PERF_USE_VMALLOC=y
-CONFIG_PHYLIB=y
-CONFIG_PLAT_ORION=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_DRV_MV=y
-CONFIG_SCSI=y
-CONFIG_SCSI_MOD=y
-# CONFIG_SCSI_MULTI_LUN is not set
-# CONFIG_SDIO_UART is not set
-# CONFIG_SERIAL_8250_EXTENDED is not set
-CONFIG_SPLIT_PTLOCK_CPUS=999999
-CONFIG_SYS_SUPPORTS_APM_EMULATION=y
-CONFIG_UID16=y
-CONFIG_USB=y
-CONFIG_USB_EHCI_HCD=y
-CONFIG_USB_STORAGE=y
-CONFIG_USB_SUPPORT=y
-# CONFIG_USB_UHCI_HCD is not set
-CONFIG_VECTORS_BASE=0xffff0000
-# CONFIG_VFP is not set
-CONFIG_VM_EVENT_COUNTERS=y
-CONFIG_WAN=y
-CONFIG_ZBOOT_ROM_BSS=0x0
-CONFIG_ZBOOT_ROM_TEXT=0x0
-CONFIG_ZONE_DMA_FLAG=0
diff --git a/target/linux/kirkwood/patches/001-openwrt_partition_map.patch b/target/linux/kirkwood/patches/001-openwrt_partition_map.patch
deleted file mode 100644
index 0f94adc343..0000000000
--- a/target/linux/kirkwood/patches/001-openwrt_partition_map.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/arch/arm/mach-kirkwood/sheevaplug-setup.c
-+++ b/arch/arm/mach-kirkwood/sheevaplug-setup.c
-@@ -33,7 +33,7 @@ static struct mtd_partition sheevaplug_n
- 		.offset = MTDPART_OFS_NXTBLK,
- 		.size = SZ_4M
- 	}, {
--		.name = "root",
-+		.name = "rootfs",
- 		.offset = MTDPART_OFS_NXTBLK,
- 		.size = MTDPART_SIZ_FULL
- 	},
diff --git a/target/linux/kirkwood/patches/002-mvsdio_delay.patch b/target/linux/kirkwood/patches/002-mvsdio_delay.patch
deleted file mode 100644
index ba28853604..0000000000
--- a/target/linux/kirkwood/patches/002-mvsdio_delay.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- a/drivers/mmc/core/sd.c
-+++ b/drivers/mmc/core/sd.c
-@@ -332,6 +332,15 @@ int mmc_sd_switch_hs(struct mmc_card *ca
- 		return -ENOMEM;
- 	}
- 
-+	/*
-+	 * Some SDHC cards, notably those with a Sandisk SD controller
-+	 * (also found in Kingston products) need a bit of slack
-+	 * before successfully handling the SWITCH command.  So far,
-+	 * cards identifying themselves as "SD04G" and "SD08G" are
-+	 * affected
-+	 */
-+	udelay(1000);
-+
- 	err = mmc_sd_switch(card, 1, 0, 1, status);
- 	if (err)
- 		goto out;
---- a/drivers/mmc/core/core.c
-+++ b/drivers/mmc/core/core.c
-@@ -303,9 +303,9 @@ void mmc_set_data_timeout(struct mmc_dat
- 			 * The limit is really 250 ms, but that is
- 			 * insufficient for some crappy cards.
- 			 */
--			limit_us = 300000;
-+			limit_us = 500000;
- 		else
--			limit_us = 100000;
-+			limit_us = 200000;
- 
- 		/*
- 		 * SDHC cards always use these fixed values.
diff --git a/target/linux/kirkwood/patches/200-iconnect.patch b/target/linux/kirkwood/patches/200-iconnect.patch
deleted file mode 100644
index f8baae64a2..0000000000
--- a/target/linux/kirkwood/patches/200-iconnect.patch
+++ /dev/null
@@ -1,226 +0,0 @@
---- a/arch/arm/mach-kirkwood/Makefile
-+++ b/arch/arm/mach-kirkwood/Makefile
-@@ -8,6 +8,7 @@ obj-$(CONFIG_MACH_SHEEVAPLUG)		+= sheeva
- obj-$(CONFIG_MACH_ESATA_SHEEVAPLUG)	+= sheevaplug-setup.o
- obj-$(CONFIG_MACH_GURUPLUG)		+= guruplug-setup.o
- obj-$(CONFIG_MACH_DOCKSTAR)		+= dockstar-setup.o
-+obj-$(CONFIG_MACH_ICONNECT)		+= iconnect-setup.o
- obj-$(CONFIG_MACH_TS219)		+= ts219-setup.o tsx1x-common.o
- obj-$(CONFIG_MACH_TS41X)		+= ts41x-setup.o tsx1x-common.o
- obj-$(CONFIG_MACH_OPENRD)		+= openrd-setup.o
---- a/arch/arm/mach-kirkwood/Kconfig
-+++ b/arch/arm/mach-kirkwood/Kconfig
-@@ -130,6 +130,12 @@ config MACH_T5325
- 	  Say 'Y' here if you want your kernel to support the
- 	  HP t5325 Thin Client.
- 
-+config MACH_ICONNECT
-+	bool "Iomega iConnect Wireless"
-+	help
-+	  Say 'Y' here if you want your kernel to support the
-+	  Iomega iConnect Wireless.
-+
- endmenu
- 
- endif
---- a/arch/arm/mach-kirkwood/mpp.h
-+++ b/arch/arm/mach-kirkwood/mpp.h
-@@ -108,6 +108,7 @@
- #define MPP11_SATA0_ACTn	MPP( 11, 0x5, 0, 1, 0,   1,   1,   1,   1 )
- 
- #define MPP12_GPO		MPP( 12, 0x0, 0, 1, 1,   1,   1,   1,   1 )
-+#define MPP12_GPIO		MPP( 12, 0x0, 1, 1, 1,   1,   1,   1,   1 )
- #define MPP12_SD_CLK		MPP( 12, 0x1, 0, 1, 1,   1,   1,   1,   1 )
- #define MPP12_AU_SPDIF0		MPP( 12, 0xa, 0, 1, 0,   0,   0,   0,   1 )
- #define MPP12_SPI_MOSI		MPP( 12, 0xb, 0, 1, 0,   0,   0,   0,   1 )
---- /dev/null
-+++ b/arch/arm/mach-kirkwood/iconnect-setup.c
-@@ -0,0 +1,188 @@
-+/*
-+ * arch/arm/mach-kirkwood/iconnect-setup.c
-+ *
-+ * Iomega iConnect Wireless
-+ *
-+ * 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/irq.h>
-+#include <linux/mtd/partitions.h>
-+#include <linux/mv643xx_eth.h>
-+#include <linux/ethtool.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"
-+
-+static struct mtd_partition iconnect_nand_parts[] = {
-+	{
-+		.name = "u-boot",
-+		.offset = 0,
-+		.size = SZ_1M
-+	}, {
-+		.name = "uImage",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = SZ_1M + SZ_2M
-+	}, {
-+		.name = "rootfs",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = SZ_32M,
-+	}, {
-+		.name = "data",
-+		.offset = MTDPART_OFS_NXTBLK,
-+		.size = MTDPART_SIZ_FULL
-+	},
-+};
-+
-+static struct mv643xx_eth_platform_data iconnect_ge00_data = {
-+	.phy_addr	= MV643XX_ETH_PHY_ADDR(11),
-+};
-+
-+static struct gpio_led iconnect_led_pins[] = {
-+	{
-+		.name			= "iconnect:blue:power",
-+		.default_trigger	= "default-on",
-+		.gpio			= 42,
-+	},
-+	{
-+		.name			= "iconnect:red:power",
-+		.gpio			= 43,
-+	},
-+	{
-+		.name			= "iconnect:blue:usb1",
-+		.gpio			= 44,
-+	},
-+	{
-+		.name			= "iconnect:blue:usb2",
-+		.gpio			= 45,
-+	},
-+	{
-+		.name			= "iconnect:blue:usb3",
-+		.gpio			= 46,
-+	},
-+	{
-+		.name			= "iconnect:blue:usb4",
-+		.gpio			= 47,
-+	},
-+	{
-+		.name			= "iconnect:blue:otb",
-+		.gpio			= 48,
-+	},
-+};
-+
-+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,
-+	}
-+};
-+
-+#define ICONNECT_GPIO_KEY_RESET		12
-+#define ICONNECT_GPIO_KEY_OTB		35
-+
-+#define ICONNECT_SW_RESET		0x00
-+#define ICONNECT_SW_OTB			0x01
-+
-+static struct gpio_keys_button iconnect_buttons[] = {
-+		{
-+		.type		= EV_SW,
-+		.code		= ICONNECT_SW_RESET,
-+		.gpio		= ICONNECT_GPIO_KEY_RESET,
-+		.desc		= "Reset Button",
-+		.active_low	= 1,
-+		.debounce_interval = 100,
-+		}, 
-+		{
-+		.type		= EV_SW,
-+		.code		= ICONNECT_SW_OTB,
-+		.gpio		= ICONNECT_GPIO_KEY_OTB,
-+		.desc		= "OTB Button",
-+		.active_low	= 1,
-+		.debounce_interval = 100,
-+		},
-+};
-+
-+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 = {
-+	MPP12_GPIO, /*Input for reset button*/
-+	MPP35_GPIO, /*Input for OTB button*/
-+	MPP42_GPIO,
-+	MPP43_GPIO,
-+	MPP44_GPIO,
-+	MPP45_GPIO,
-+	MPP46_GPIO,
-+	MPP47_GPIO,
-+	MPP48_GPIO,
-+	0
-+};
-+
-+static void __init iconnect_init(void)
-+{
-+	u32 dev, rev;
-+
-+	/*
-+	 * 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_pcie_id(&dev, &rev);
-+
-+	kirkwood_uart0_init();
-+	kirkwood_i2c_init();
-+
-+	platform_device_register(&iconnect_leds);
-+	platform_device_register(&iconnect_button_device);
-+}
-+
-+static int __init iconnect_pci_init(void)
-+{
-+	if (machine_is_iconnect())
-+		kirkwood_pcie_init(KW_PCIE0);
-+
-+	return 0;
-+}
-+subsys_initcall(iconnect_pci_init);
-+
-+
-+MACHINE_START(ICONNECT, "Iomega iConnect Wireless")
-+	.boot_params	= 0x00000100,
-+	.init_machine	= iconnect_init,
-+	.map_io		= kirkwood_map_io,
-+	.init_irq	= kirkwood_init_irq,
-+	.timer		= &kirkwood_timer,
-+MACHINE_END
-- 
2.30.2