From afd00b4e046c86e5432abce5e67895dc1566e72c Mon Sep 17 00:00:00 2001
From: ejka <ejka@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Wed, 10 Oct 2007 06:23:39 +0000
Subject: [PATCH] switch ar7 to 2.6.23

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@9235 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 target/linux/ar7/Makefile                     |   2 +-
 target/linux/ar7/config-2.6.22                | 187 ------------------
 .../patches-2.6.22/100-board_support.patch    |  90 ---------
 .../linux/ar7/patches-2.6.22/110-flash.patch  |  40 ----
 .../ar7/patches-2.6.22/120-gpio_chrdev.patch  |  30 ---
 .../linux/ar7/patches-2.6.22/130-leds.patch   |  27 ---
 .../linux/ar7/patches-2.6.22/130-vlynq.patch  |  20 --
 .../ar7/patches-2.6.22/140-watchdog.patch     |  27 ---
 .../patches-2.6.22/200-ethernet_driver.patch  |  30 ---
 .../ar7/patches-2.6.22/210-phy_fixed.patch    |  93 ---------
 .../patches-2.6.22/500-serial_kludge.patch    |  54 -----
 .../patches-2.6.23/200-ethernet_driver.patch  |  14 +-
 12 files changed, 8 insertions(+), 606 deletions(-)
 delete mode 100644 target/linux/ar7/config-2.6.22
 delete mode 100644 target/linux/ar7/patches-2.6.22/100-board_support.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/110-flash.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/120-gpio_chrdev.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/130-leds.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/130-vlynq.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/140-watchdog.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/200-ethernet_driver.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/210-phy_fixed.patch
 delete mode 100644 target/linux/ar7/patches-2.6.22/500-serial_kludge.patch

diff --git a/target/linux/ar7/Makefile b/target/linux/ar7/Makefile
index a355356dd..02daa379e 100644
--- a/target/linux/ar7/Makefile
+++ b/target/linux/ar7/Makefile
@@ -11,7 +11,7 @@ BOARD:=ar7
 BOARDNAME:=TI AR7
 FEATURES:=squashfs jffs2 atm
 
-LINUX_VERSION:=2.6.22.4
+LINUX_VERSION:=2.6.23
 
 include $(INCLUDE_DIR)/target.mk
 
diff --git a/target/linux/ar7/config-2.6.22 b/target/linux/ar7/config-2.6.22
deleted file mode 100644
index 07c6afbe7..000000000
--- a/target/linux/ar7/config-2.6.22
+++ /dev/null
@@ -1,187 +0,0 @@
-CONFIG_32BIT=y
-# CONFIG_64BIT is not set
-# CONFIG_64BIT_PHYS_ADDR is not set
-CONFIG_AR7=y
-CONFIG_AR7_GPIO=y
-CONFIG_AR7_WDT=y
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
-# CONFIG_ARCH_SUPPORTS_MSI is not set
-CONFIG_ATM_DRIVERS=y
-CONFIG_BASE_SMALL=0
-CONFIG_BITREVERSE=y
-# CONFIG_BLK_DEV_INITRD is not set
-CONFIG_BOOT_ELF32=y
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_BT is not set
-CONFIG_CMDLINE="init=/etc/preinit rootfstype=squashfs,jffs2,"
-CONFIG_CPMAC=y
-# CONFIG_CPU_BIG_ENDIAN is not set
-CONFIG_CPU_HAS_LLSC=y
-CONFIG_CPU_HAS_PREFETCH=y
-CONFIG_CPU_HAS_SYNC=y
-CONFIG_CPU_LITTLE_ENDIAN=y
-CONFIG_CPU_MIPS32=y
-CONFIG_CPU_MIPS32_R1=y
-# CONFIG_CPU_MIPS32_R2 is not set
-# CONFIG_CPU_MIPS64_R1 is not set
-# CONFIG_CPU_MIPS64_R2 is not set
-CONFIG_CPU_MIPSR1=y
-# CONFIG_CPU_NEVADA is not set
-# CONFIG_CPU_R10000 is not set
-# CONFIG_CPU_R3000 is not set
-# CONFIG_CPU_R4300 is not set
-# CONFIG_CPU_R4X00 is not set
-# CONFIG_CPU_R5000 is not set
-# CONFIG_CPU_R5432 is not set
-# CONFIG_CPU_R6000 is not set
-# CONFIG_CPU_R8000 is not set
-# CONFIG_CPU_RM7000 is not set
-# CONFIG_CPU_RM9000 is not set
-# CONFIG_CPU_SB1 is not set
-CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
-CONFIG_CPU_SUPPORTS_HIGHMEM=y
-# CONFIG_CPU_TX39XX is not set
-# CONFIG_CPU_TX49XX is not set
-# CONFIG_CPU_VR41XX is not set
-# CONFIG_DDB5477 is not set
-# CONFIG_DM9000 is not set
-CONFIG_DMA_NEED_PCI_MAP_STATE=y
-CONFIG_DMA_NONCOHERENT=y
-CONFIG_EARLY_PRINTK=y
-CONFIG_FIXED_MII_100_FDX=y
-# CONFIG_FIXED_MII_10_FDX is not set
-CONFIG_FIXED_PHY=y
-CONFIG_FS_POSIX_ACL=y
-CONFIG_GENERIC_FIND_NEXT_BIT=y
-CONFIG_GENERIC_GPIO=y
-CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-# CONFIG_GEN_RTC is not set
-CONFIG_HAS_DMA=y
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
-CONFIG_HW_RANDOM=y
-# CONFIG_I2C is not set
-# CONFIG_IDE is not set
-CONFIG_IRQ_CPU=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
-CONFIG_LEDS_AR7=y
-# CONFIG_MACH_ALCHEMY is not set
-# CONFIG_MACH_DECSTATION is not set
-# CONFIG_MACH_JAZZ is not set
-# CONFIG_MACH_VR41XX is not set
-CONFIG_MIPS=y
-# CONFIG_MIPS_ATLAS is not set
-# CONFIG_MIPS_COBALT is not set
-# CONFIG_MIPS_EV64120 is not set
-CONFIG_MIPS_L1_CACHE_SHIFT=5
-# CONFIG_MIPS_MALTA is not set
-CONFIG_MIPS_MT_DISABLED=y
-# CONFIG_MIPS_MT_SMP is not set
-# CONFIG_MIPS_MT_SMTC is not set
-# CONFIG_MIPS_SEAD is not set
-# CONFIG_MIPS_SIM is not set
-# CONFIG_MIPS_VPE_LOADER is not set
-# CONFIG_MOMENCO_OCELOT is not set
-# CONFIG_MOMENCO_OCELOT_3 is not set
-# CONFIG_MOMENCO_OCELOT_C is not set
-CONFIG_MTD=y
-# CONFIG_MTD_ABSENT is not set
-CONFIG_MTD_AR7_PARTS=y
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_MTD_BLOCK2MTD is not set
-CONFIG_MTD_CFI=y
-# CONFIG_MTD_CFI_ADV_OPTIONS is not set
-CONFIG_MTD_CFI_AMDSTD=y
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-CONFIG_MTD_CFI_INTELEXT=y
-CONFIG_MTD_CFI_STAA=y
-CONFIG_MTD_CFI_UTIL=y
-CONFIG_MTD_CHAR=y
-# CONFIG_MTD_CMDLINE_PARTS is not set
-CONFIG_MTD_COMPLEX_MAPPINGS=y
-# CONFIG_MTD_CONCAT is not set
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-CONFIG_MTD_GEN_PROBE=y
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_ONENAND is not set
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_PHRAM is not set
-CONFIG_MTD_PHYSMAP=y
-CONFIG_MTD_PHYSMAP_BANKWIDTH=2
-CONFIG_MTD_PHYSMAP_LEN=0
-CONFIG_MTD_PHYSMAP_START=0x10000000
-# CONFIG_MTD_PLATRAM is not set
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_NETDEV_1000 is not set
-CONFIG_NET_SCH_FIFO=y
-CONFIG_NF_CT_PROTO_GRE=m
-CONFIG_NF_NAT_PROTO_GRE=m
-# CONFIG_PAGE_SIZE_16KB is not set
-CONFIG_PAGE_SIZE_4KB=y
-# CONFIG_PAGE_SIZE_64KB is not set
-# CONFIG_PAGE_SIZE_8KB is not set
-CONFIG_PHYLIB=y
-# CONFIG_PMC_YOSEMITE is not set
-# CONFIG_PNPACPI is not set
-# CONFIG_PNX8550_JBS is not set
-# CONFIG_PNX8550_STB810 is not set
-# CONFIG_QSEMI_PHY is not set
-# CONFIG_RTC is not set
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-CONFIG_SCHED_NO_NO_OMIT_FRAME_POINTER=y
-CONFIG_SCSI_WAIT_SCAN=m
-# CONFIG_SERIAL_8250_EXTENDED is not set
-# CONFIG_SGI_IP22 is not set
-# CONFIG_SGI_IP27 is not set
-# CONFIG_SGI_IP32 is not set
-# CONFIG_SIBYTE_BIGSUR is not set
-# CONFIG_SIBYTE_CARMEL is not set
-# CONFIG_SIBYTE_CRHINE is not set
-# CONFIG_SIBYTE_CRHONE is not set
-# CONFIG_SIBYTE_LITTLESUR is not set
-# CONFIG_SIBYTE_PTSWARM is not set
-# CONFIG_SIBYTE_RHONE is not set
-# CONFIG_SIBYTE_SENTOSA is not set
-# CONFIG_SIBYTE_SWARM is not set
-# CONFIG_SMSC_PHY is not set
-# CONFIG_SOFT_WATCHDOG is not set
-# CONFIG_SPARSEMEM_STATIC is not set
-CONFIG_SWAP_IO_SPACE=y
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_SYS_HAS_CPU_MIPS32_R1=y
-CONFIG_SYS_HAS_EARLY_PRINTK=y
-CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
-CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
-CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
-CONFIG_SYS_SUPPORTS_KGDB=y
-CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
-# CONFIG_TOSHIBA_JMR3927 is not set
-# CONFIG_TOSHIBA_RBTX4927 is not set
-# CONFIG_TOSHIBA_RBTX4938 is not set
-CONFIG_TRAD_SIGNALS=y
-# CONFIG_UNUSED_SYMBOLS is not set
-# CONFIG_USB_ARCH_HAS_EHCI is not set
-# CONFIG_USB_ARCH_HAS_HCD is not set
-# CONFIG_USB_ARCH_HAS_OHCI is not set
-# CONFIG_VGASTATE is not set
-CONFIG_VLYNQ=y
-CONFIG_ZONE_DMA_FLAG=0
diff --git a/target/linux/ar7/patches-2.6.22/100-board_support.patch b/target/linux/ar7/patches-2.6.22/100-board_support.patch
deleted file mode 100644
index 59fafa55a..000000000
--- a/target/linux/ar7/patches-2.6.22/100-board_support.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-diff -urN linux-2.6.22/arch/mips/Kconfig linux-2.6.22.new/arch/mips/Kconfig
---- linux-2.6.22/arch/mips/Kconfig	2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22.new/arch/mips/Kconfig	2007-07-11 02:34:51.000000000 +0200
-@@ -15,6 +15,21 @@
- 	prompt "System type"
- 	default SGI_IP22
- 
-+config AR7
-+	bool "Texas Instruments AR7"
-+	select BOOT_ELF32
-+	select DMA_NONCOHERENT
-+	select IRQ_CPU
-+	select SWAP_IO_SPACE
-+	select SYS_HAS_CPU_MIPS32_R1
-+	select SYS_HAS_EARLY_PRINTK
-+	select SYS_SUPPORTS_32BIT_KERNEL
-+	select SYS_SUPPORTS_KGDB
-+	select SYS_SUPPORTS_LITTLE_ENDIAN
-+	select SYS_SUPPORTS_BIG_ENDIAN
-+	select GENERIC_GPIO
-+	select GENERIC_HARDIRQS_NO__DO_IRQ
-+
- config MACH_ALCHEMY
- 	bool "Alchemy processor based machines"
- 
-diff -urN linux-2.6.22/arch/mips/kernel/traps.c linux-2.6.22.new/arch/mips/kernel/traps.c
---- linux-2.6.22/arch/mips/kernel/traps.c	2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22.new/arch/mips/kernel/traps.c	2007-07-11 02:32:39.000000000 +0200
-@@ -1074,11 +1074,23 @@ void *set_except_vector(int n, void *addr)
- 	unsigned long old_handler = exception_handlers[n];
- 
- 	exception_handlers[n] = handler;
--	if (n == 0 && cpu_has_divec) {
--		*(volatile u32 *)(ebase + 0x200) = 0x08000000 |
--		                                 (0x03ffffff & (handler >> 2));
--		flush_icache_range(ebase + 0x200, ebase + 0x204);
--	}
-+	if (n == 0 && cpu_has_divec)
-+		if ((handler ^ (ebase + 4)) & 0xfc000000) {
-+			/* lui k0, 0x0000 */
-+			*(u32 *)(ebase + 0x200) = 0x3c1a0000 | (handler >> 16);
-+			/* ori k0, 0x0000 */
-+			*(u32 *)(ebase + 0x204) =
-+					0x375a0000 | (handler & 0xffff);
-+			/* jr k0 */
-+			*(u32 *)(ebase + 0x208) = 0x03400008;
-+			/* nop */
-+			*(u32 *)(ebase + 0x20C) = 0x00000000;
-+			flush_icache_range(ebase + 0x200, ebase + 0x210);
-+		} else {
-+			*(volatile u32 *)(ebase + 0x200) =
-+				0x08000000 | (0x03ffffff & (handler >> 2));
-+			flush_icache_range(ebase + 0x200, ebase + 0x204);
-+		}
- 	return (void *)old_handler;
- }
- 
-diff -urN linux-2.6.22/arch/mips/Makefile linux-2.6.22.new/arch/mips/Makefile
---- linux-2.6.22/arch/mips/Makefile	2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22.new/arch/mips/Makefile	2007-07-11 02:32:39.000000000 +0200
-@@ -158,6 +158,13 @@
- #
- 
- #
-+# Texas Instruments AR7
-+#
-+core-$(CONFIG_AR7)		+= arch/mips/ar7/
-+cflags-$(CONFIG_AR7)		+= -Iinclude/asm-mips/ar7
-+load-$(CONFIG_AR7)		+= 0xffffffff94100000
-+
-+#
- # Acer PICA 61, Mips Magnum 4000 and Olivetti M700.
- #
- core-$(CONFIG_MACH_JAZZ)	+= arch/mips/jazz/
-diff -urN linux-2.6.22.4/include/asm-mips/page.h linux-2.6.22.4.new/include/asm-mips/page.h
---- linux-2.6.22.4/include/asm-mips/page.h	2007-08-21 12:33:06.000000000 +0800
-+++ linux-2.6.22.4.new/include/asm-mips/page.h	2007-09-13 15:13:00.000000000 +0800
-@@ -187,8 +187,10 @@
- #define VM_DATA_DEFAULT_FLAGS	(VM_READ | VM_WRITE | VM_EXEC | \
- 				 VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
- 
--#define UNCAC_ADDR(addr)	((addr) - PAGE_OFFSET + UNCAC_BASE)
--#define CAC_ADDR(addr)		((addr) - UNCAC_BASE + PAGE_OFFSET)
-+#define UNCAC_ADDR(addr)	((addr) - PAGE_OFFSET + UNCAC_BASE +	\
-+				 PHYS_OFFSET)
-+#define CAC_ADDR(addr)		((addr) - UNCAC_BASE + PAGE_OFFSET -	\
-+				 PHYS_OFFSET)
- 
- #include <asm-generic/memory_model.h>
- #include <asm-generic/page.h>
diff --git a/target/linux/ar7/patches-2.6.22/110-flash.patch b/target/linux/ar7/patches-2.6.22/110-flash.patch
deleted file mode 100644
index 6edc353e9..000000000
--- a/target/linux/ar7/patches-2.6.22/110-flash.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff -Nru linux-2.6.19.2/drivers/mtd/Kconfig linux-ar7/drivers/mtd/Kconfig
---- linux-2.6.19.2/drivers/mtd/Kconfig	2006-12-12 02:32:53.000000000 +0700
-+++ linux-ar7/drivers/mtd/Kconfig	2007-02-03 22:47:10.000000000 +0700
-@@ -152,6 +152,12 @@
- 	  for your particular device. It won't happen automatically. The
- 	  'armflash' map driver (CONFIG_MTD_ARMFLASH) does this, for example.
- 
-+config MTD_AR7_PARTS
-+	tristate "TI AR7 partitioning support"
-+	depends on MTD_PARTITIONS
-+	---help---
-+	  TI AR7 partitioning support
-+
- comment "User Modules And Translation Layers"
- 	depends on MTD
- 
-diff -Nru linux-2.6.19.2/drivers/mtd/Makefile linux-ar7/drivers/mtd/Makefile
---- linux-2.6.19.2/drivers/mtd/Makefile	2006-12-12 02:32:53.000000000 +0700
-+++ linux-ar7/drivers/mtd/Makefile	2007-02-03 22:02:27.000000000 +0700
-@@ -12,6 +12,7 @@
- obj-$(CONFIG_MTD_REDBOOT_PARTS) += redboot.o
- obj-$(CONFIG_MTD_CMDLINE_PARTS) += cmdlinepart.o
- obj-$(CONFIG_MTD_AFS_PARTS)	+= afs.o
-+obj-$(CONFIG_MTD_AR7_PARTS)	+= ar7part.o
- 
- # 'Users' - code which presents functionality to userspace.
- obj-$(CONFIG_MTD_CHAR)		+= mtdchar.o
-diff -Nru linux-2.6.19.2/drivers/mtd/maps/physmap.c linux-ar7/drivers/mtd/maps/physmap.c
---- linux-2.6.19.2/drivers/mtd/maps/physmap.c	2006-12-12 02:32:53.000000000 +0700
-+++ linux-ar7/drivers/mtd/maps/physmap.c	2007-02-03 21:57:11.000000000 +0700
-@@ -74,7 +74,8 @@
- 
- static const char *rom_probe_types[] = { "cfi_probe", "jedec_probe", "map_rom", NULL };
- #ifdef CONFIG_MTD_PARTITIONS
--static const char *part_probe_types[] = { "cmdlinepart", "RedBoot", NULL };
-+static const char *part_probe_types[] = {"cmdlinepart", "RedBoot",
-+					"ar7part", NULL };
- #endif
- 
- static int physmap_flash_probe(struct platform_device *dev)
diff --git a/target/linux/ar7/patches-2.6.22/120-gpio_chrdev.patch b/target/linux/ar7/patches-2.6.22/120-gpio_chrdev.patch
deleted file mode 100644
index 41a8b8e02..000000000
--- a/target/linux/ar7/patches-2.6.22/120-gpio_chrdev.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -ruN linux-2.6.19.2-orig/drivers/char/Kconfig linux-2.6.19.2-ar7/drivers/char/Kconfig
---- linux-2.6.19.2-orig/drivers/char/Kconfig	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2-ar7/drivers/char/Kconfig	2007-02-19 01:22:23.000000000 +0100
-@@ -920,6 +920,15 @@
- 	  To compile this driver as a module, choose M here: the
- 	  module will be called mwave.
- 
-+config AR7_GPIO
-+	tristate "TI AR7 GPIO Support"
-+	depends on AR7
-+	help
-+	  Give userspace access to the GPIO pins on the Texas Instruments AR7 
-+	  processors.
-+
-+	  If compiled as a module, it will be called ar7_gpio.
-+
- config SCx200_GPIO
- 	tristate "NatSemi SCx200 GPIO Support"
- 	depends on SCx200
-diff -ruN linux-2.6.19.2-orig/drivers/char/Makefile linux-2.6.19.2-ar7/drivers/char/Makefile
---- linux-2.6.19.2-orig/drivers/char/Makefile	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2-ar7/drivers/char/Makefile	2007-02-19 01:22:23.000000000 +0100
-@@ -83,6 +83,7 @@
- obj-$(CONFIG_PPDEV)		+= ppdev.o
- obj-$(CONFIG_NWBUTTON)		+= nwbutton.o
- obj-$(CONFIG_NWFLASH)		+= nwflash.o
-+obj-$(CONFIG_AR7_GPIO)		+= ar7_gpio.o
- obj-$(CONFIG_SCx200_GPIO)	+= scx200_gpio.o
- obj-$(CONFIG_PC8736x_GPIO)	+= pc8736x_gpio.o
- obj-$(CONFIG_NSC_GPIO)		+= nsc_gpio.o
diff --git a/target/linux/ar7/patches-2.6.22/130-leds.patch b/target/linux/ar7/patches-2.6.22/130-leds.patch
deleted file mode 100644
index 261b71219..000000000
--- a/target/linux/ar7/patches-2.6.22/130-leds.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -ruN linux-2.6.19.2-orig/drivers/leds/Kconfig linux-2.6.19.2-ar7/drivers/leds/Kconfig
---- linux-2.6.19.2-orig/drivers/leds/Kconfig	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2-ar7/drivers/leds/Kconfig	2007-02-24 02:30:48.000000000 +0100
-@@ -19,6 +19,12 @@
- 
- comment "LED drivers"
- 
-+config LEDS_AR7
-+	tristate "LED Support for the TI AR7"
-+	depends LEDS_CLASS && AR7
-+	help
-+	  This option enables support for the LEDs on TI AR7.
-+
- config LEDS_CORGI
- 	tristate "LED Support for the Sharp SL-C7x0 series"
- 	depends LEDS_CLASS && PXA_SHARP_C7xx
-diff -ruN linux-2.6.19.2-orig/drivers/leds/Makefile linux-2.6.19.2-ar7/drivers/leds/Makefile
---- linux-2.6.19.2-orig/drivers/leds/Makefile	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2-ar7/drivers/leds/Makefile	2007-02-24 02:29:44.000000000 +0100
-@@ -5,6 +5,7 @@
- obj-$(CONFIG_LEDS_TRIGGERS)		+= led-triggers.o
- 
- # LED Platform Drivers
-+obj-$(CONFIG_LEDS_AR7)			+= leds-ar7.o
- obj-$(CONFIG_LEDS_CORGI)		+= leds-corgi.o
- obj-$(CONFIG_LEDS_LOCOMO)		+= leds-locomo.o
- obj-$(CONFIG_LEDS_SPITZ)		+= leds-spitz.o
diff --git a/target/linux/ar7/patches-2.6.22/130-vlynq.patch b/target/linux/ar7/patches-2.6.22/130-vlynq.patch
deleted file mode 100644
index 2e8dea3ed..000000000
--- a/target/linux/ar7/patches-2.6.22/130-vlynq.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: linux-2.6.22.4/drivers/Kconfig
-===================================================================
---- linux-2.6.22.4.orig/drivers/Kconfig	2007-10-06 01:09:43.000000000 +0800
-+++ linux-2.6.22.4/drivers/Kconfig	2007-10-06 01:12:19.000000000 +0800
-@@ -84,4 +84,6 @@
- 
- source "drivers/kvm/Kconfig"
- 
-+source "drivers/vlynq/Kconfig"
-+
- endmenu
-Index: linux-2.6.22.4/drivers/Makefile
-===================================================================
---- linux-2.6.22.4.orig/drivers/Makefile	2007-10-06 01:09:43.000000000 +0800
-+++ linux-2.6.22.4/drivers/Makefile	2007-10-06 01:12:37.000000000 +0800
-@@ -81,3 +81,4 @@
- obj-$(CONFIG_DMA_ENGINE)	+= dma/
- obj-$(CONFIG_HID)		+= hid/
- obj-$(CONFIG_PPC_PS3)		+= ps3/
-+obj-$(CONFIG_VLYNQ)		+= vlynq/
diff --git a/target/linux/ar7/patches-2.6.22/140-watchdog.patch b/target/linux/ar7/patches-2.6.22/140-watchdog.patch
deleted file mode 100644
index 163df40ba..000000000
--- a/target/linux/ar7/patches-2.6.22/140-watchdog.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-diff -ruN linux-2.6.19.2-orig/drivers/char/watchdog/Kconfig linux-2.6.19.2-ar7/drivers/char/watchdog/Kconfig
---- linux-2.6.19.2-orig/drivers/char/watchdog/Kconfig	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2-ar7/drivers/char/watchdog/Kconfig	2007-02-26 12:49:29.000000000 +0100
-@@ -544,6 +544,12 @@
- 
- # MIPS Architecture
- 
-+config AR7_WDT
-+	tristate "TI AR7 Watchdog Timer"
-+	depends on WATCHDOG && AR7
-+	help
-+	  Hardware driver for the TI AR7 Watchdog Timer.
-+
- config INDYDOG
- 	tristate "Indy/I2 Hardware Watchdog"
- 	depends on WATCHDOG && SGI_IP22
-diff -ruN linux-2.6.19.2-orig/drivers/char/watchdog/Makefile linux-2.6.19.2-ar7/drivers/char/watchdog/Makefile
---- linux-2.6.19.2-orig/drivers/char/watchdog/Makefile	2007-01-10 20:10:37.000000000 +0100
-+++ linux-2.6.19.2-ar7/drivers/char/watchdog/Makefile	2007-02-26 12:46:36.000000000 +0100
-@@ -71,6 +71,7 @@
- obj-$(CONFIG_WATCHDOG_RTAS) += wdrtas.o
- 
- # MIPS Architecture
-+obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
- obj-$(CONFIG_INDYDOG) += indydog.o
- 
- # S390 Architecture
diff --git a/target/linux/ar7/patches-2.6.22/200-ethernet_driver.patch b/target/linux/ar7/patches-2.6.22/200-ethernet_driver.patch
deleted file mode 100644
index 5a07d35bc..000000000
--- a/target/linux/ar7/patches-2.6.22/200-ethernet_driver.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Nru linux-2.6.19.2/drivers/net/Kconfig linux-ar7/drivers/net/Kconfig
---- linux-2.6.19.2/drivers/net/Kconfig	2006-12-12 02:32:53.000000000 +0700
-+++ linux-ar7/drivers/net/Kconfig	2007-01-29 21:52:22.000000000 +0700
-@@ -1777,6 +1777,15 @@
- 	  workstations.
- 	  See <http://www.semiconductors.philips.com/pip/SAA9730_flyer_1>.
- 
-+config CPMAC
-+	tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
-+	depends on EXPERIMENTAL && AR7
-+	select PHYLIB
-+	select FIXED_PHY
-+	select FIXED_MII_100_FDX
-+	help
-+	  TI AR7 CPMAC Ethernet support
-+
- config NET_POCKET
- 	bool "Pocket and portable adapters"
- 	depends on NET_ETHERNET && PARPORT
-diff -Nru linux-2.6.19.2/drivers/net/Makefile linux-ar7/drivers/net/Makefile
---- linux-2.6.19.2/drivers/net/Makefile	2006-12-12 02:32:53.000000000 +0700
-+++ linux-ar7/drivers/net/Makefile	2007-01-29 21:52:22.000000000 +0700
-@@ -148,6 +148,7 @@
- obj-$(CONFIG_8139TOO) += 8139too.o
- obj-$(CONFIG_ZNET) += znet.o
- obj-$(CONFIG_LAN_SAA9730) += saa9730.o
-+obj-$(CONFIG_CPMAC) += cpmac.o
- obj-$(CONFIG_DEPCA) += depca.o
- obj-$(CONFIG_EWRK3) += ewrk3.o
- obj-$(CONFIG_ATP) += atp.o
diff --git a/target/linux/ar7/patches-2.6.22/210-phy_fixed.patch b/target/linux/ar7/patches-2.6.22/210-phy_fixed.patch
deleted file mode 100644
index c8eceebb5..000000000
--- a/target/linux/ar7/patches-2.6.22/210-phy_fixed.patch
+++ /dev/null
@@ -1,93 +0,0 @@
-Index: linux-2.6.21.4/drivers/net/phy/fixed.c
-===================================================================
---- linux-2.6.21.4.orig/drivers/net/phy/fixed.c	2007-06-11 16:30:06.418483448 +0200
-+++ linux-2.6.21.4/drivers/net/phy/fixed.c	2007-06-11 16:30:11.156763120 +0200
-@@ -187,6 +187,19 @@
- 	.driver 	= { .owner = THIS_MODULE,},
- };
- 
-+static void fixed_mdio_release (struct device * dev)
-+{
-+	struct phy_device *phydev = container_of(dev, struct phy_device, dev);
-+	struct mii_bus *bus = phydev->bus;
-+	struct fixed_info *fixed = bus->priv;
-+
-+	kfree(phydev);
-+	kfree(bus->dev);
-+	kfree(bus);
-+	kfree(fixed->regs);
-+	kfree(fixed);
-+}
-+
- /*-----------------------------------------------------------------------------
-  *  This func is used to create all the necessary stuff, bind
-  * the fixed phy driver and register all it on the mdio_bus_type.
-@@ -221,6 +234,12 @@
- 	}
- 
- 	fixed->regs = kzalloc(MII_REGS_NUM*sizeof(int), GFP_KERNEL);
-+	if (NULL == fixed->regs) {
-+		kfree(dev);
-+		kfree(new_bus);
-+		kfree(fixed);
-+		return -ENOMEM;
-+	}
- 	fixed->regs_num = MII_REGS_NUM;
- 	fixed->phy_status.speed = speed;
- 	fixed->phy_status.duplex = duplex;
-@@ -249,8 +268,11 @@
- 	fixed->phydev = phydev;
- 
- 	if(NULL == phydev) {
--		err = -ENOMEM;
--		goto device_create_fail;
-+		kfree(dev);
-+		kfree(new_bus);
-+		kfree(fixed->regs);
-+		kfree(fixed);
-+		return -ENOMEM;
- 	}
- 
- 	phydev->irq = PHY_IGNORE_INTERRUPT;
-@@ -262,8 +283,33 @@
- 	else
- 		snprintf(phydev->dev.bus_id, BUS_ID_SIZE,
- 				"fixed@%d:%d", speed, duplex);
-+
- 	phydev->bus = new_bus;
- 
-+#if 1
-+	phydev->dev.driver = &fixed_mdio_driver.driver;
-+	phydev->dev.release = fixed_mdio_release;
-+
-+	err = phydev->dev.driver->probe(&phydev->dev);
-+	if(err < 0) {
-+		printk(KERN_ERR "Phy %s: problems with fixed driver\n",
-+			phydev->dev.bus_id);
-+		kfree(phydev);
-+		kfree(dev);
-+		kfree(new_bus);
-+		kfree(fixed->regs);
-+		kfree(fixed);
-+		return err;
-+	}
-+
-+	err = device_register(&phydev->dev);
-+	if(err) {
-+		printk(KERN_ERR "Phy %s failed to register\n",
-+				phydev->dev.bus_id);
-+	}
-+
-+	return 0;
-+#else
- 	err = device_register(&phydev->dev);
- 	if(err) {
- 		printk(KERN_ERR "Phy %s failed to register\n",
-@@ -306,6 +354,7 @@
- 	kfree(fixed);
- 
- 	return err;
-+#endif
- }
- 
- 
diff --git a/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch b/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch
deleted file mode 100644
index c8f06a144..000000000
--- a/target/linux/ar7/patches-2.6.22/500-serial_kludge.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-diff -urN linux-2.6.22.orig/drivers/serial/8250.c linux-2.6.22/drivers/serial/8250.c
---- linux-2.6.22.orig/drivers/serial/8250.c	2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/drivers/serial/8250.c	2007-07-11 03:08:57.000000000 +0200
-@@ -258,6 +258,13 @@
- 		.fcr		= UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_10,
- 		.flags		= UART_CAP_FIFO,
- 	},
-+	[PORT_AR7] = {
-+		.name		= "TI-AR7",
-+		.fifo_size	= 16,
-+		.tx_loadsz	= 16,
-+		.fcr		= UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_00,
-+		.flags		= UART_CAP_FIFO | UART_CAP_AFE,
-+	},
- };
- 
- #if defined (CONFIG_SERIAL_8250_AU1X00)
-@@ -2453,7 +2453,11 @@
- {
- 	struct uart_8250_port *up = (struct uart_8250_port *)port;
- 
-+#ifdef CONFIG_AR7
-+	wait_for_xmitr(up, BOTH_EMPTY);
-+#else
- 	wait_for_xmitr(up, UART_LSR_THRE);
-+#endif
- 	serial_out(up, UART_TX, ch);
- }
- 
-diff -urN linux-2.6.22.orig/include/linux/serial_core.h linux-2.6.22/include/linux/serial_core.h
---- linux-2.6.22.orig/include/linux/serial_core.h	2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/include/linux/serial_core.h	2007-07-11 03:09:49.000000000 +0200
-@@ -40,6 +40,7 @@
- #define PORT_NS16550A	14
- #define PORT_XSCALE	15
- #define PORT_RM9000	16	/* PMC-Sierra RM9xxx internal UART */
-+#define PORT_AR7	16
- #define PORT_MAX_8250	16	/* max port ID */
- 
- /*
-diff -urN linux-2.6.22.orig/include/linux/serialP.h linux-2.6.22/include/linux/serialP.h
---- linux-2.6.22.orig/include/linux/serialP.h	2007-07-09 01:32:17.000000000 +0200
-+++ linux-2.6.22/include/linux/serialP.h	2007-07-11 03:08:57.000000000 +0200
-@@ -135,6 +135,10 @@
-  * the interrupt line _up_ instead of down, so if we register the IRQ
-  * while the UART is in that state, we die in an IRQ storm. */
- #define ALPHA_KLUDGE_MCR (UART_MCR_OUT2)
-+#elif defined(CONFIG_AR7)
-+/* This is how it is set up by bootloader... */
-+#define ALPHA_KLUDGE_MCR (UART_MCR_OUT2 | UART_MCR_OUT1 \
-+			| UART_MCR_RTS | UART_MCR_DTR)
- #else
- #define ALPHA_KLUDGE_MCR 0
- #endif
diff --git a/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch b/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch
index 79fcf4535..08f26576b 100644
--- a/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch
+++ b/target/linux/ar7/patches-2.6.23/200-ethernet_driver.patch
@@ -1,7 +1,7 @@
-Index: linux-2.6.23-rc6/drivers/net/Kconfig
+Index: linux-2.6.23/drivers/net/Kconfig
 ===================================================================
---- linux-2.6.23-rc6.orig/drivers/net/Kconfig	2007-09-21 16:24:02.000000000 +0800
-+++ linux-2.6.23-rc6/drivers/net/Kconfig	2007-09-21 16:24:13.000000000 +0800
+--- linux-2.6.23.orig/drivers/net/Kconfig	2007-10-10 13:52:54.000000000 +0800
++++ linux-2.6.23/drivers/net/Kconfig	2007-10-10 13:53:54.000000000 +0800
 @@ -1965,6 +1965,15 @@
  	  To compile this driver as a module, choose M here: the module
  	  will be called sc92031.  This is recommended.
@@ -18,11 +18,11 @@ Index: linux-2.6.23-rc6/drivers/net/Kconfig
  config NET_POCKET
  	bool "Pocket and portable adapters"
  	depends on PARPORT
-Index: linux-2.6.23-rc6/drivers/net/Makefile
+Index: linux-2.6.23/drivers/net/Makefile
 ===================================================================
---- linux-2.6.23-rc6.orig/drivers/net/Makefile	2007-09-21 16:24:02.000000000 +0800
-+++ linux-2.6.23-rc6/drivers/net/Makefile	2007-09-21 16:24:13.000000000 +0800
-@@ -155,6 +155,7 @@
+--- linux-2.6.23.orig/drivers/net/Makefile	2007-10-10 13:52:54.000000000 +0800
++++ linux-2.6.23/drivers/net/Makefile	2007-10-10 13:53:54.000000000 +0800
+@@ -156,6 +156,7 @@
  obj-$(CONFIG_8139TOO) += 8139too.o
  obj-$(CONFIG_ZNET) += znet.o
  obj-$(CONFIG_LAN_SAA9730) += saa9730.o
-- 
2.20.1