From: kaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Sun, 18 Jun 2006 14:32:57 +0000 (+0000)
Subject: upgrade to 2.6.17, probably break some stuff temporary
X-Git-Url: https://git.rohieb.name/openwrt.git/commitdiff_plain/d1d400f1ad0e8d557290e16b9871839f202624c4

upgrade to 2.6.17, probably break some stuff temporary

git-svn-id: svn://svn.openwrt.org/openwrt/branches/buildroot-ng/openwrt@3987 3c298f89-4303-0410-b956-a3cf2f4a3e73
---

diff --git a/target/linux/aruba-2.6/Makefile b/target/linux/aruba-2.6/Makefile
index 5926e6ebc..1f6861425 100644
--- a/target/linux/aruba-2.6/Makefile
+++ b/target/linux/aruba-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.7
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=9682b2bd6e02f3087982d7c3f5ba824e
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config
diff --git a/target/linux/aruba-2.6/patches/000-aruba.patch b/target/linux/aruba-2.6/patches/000-aruba.patch
index 4263f8e3e..52fb3bab0 100644
--- a/target/linux/aruba-2.6/patches/000-aruba.patch
+++ b/target/linux/aruba-2.6/patches/000-aruba.patch
@@ -1,6 +1,6 @@
-diff -Nur linux-2.6.16/arch/mips/aruba/Makefile linux-2.6.16-owrt/arch/mips/aruba/Makefile
---- linux-2.6.16/arch/mips/aruba/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/Makefile	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/Makefile linux-2.6.17-owrt/arch/mips/aruba/Makefile
+--- linux-2.6.17/arch/mips/aruba/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/Makefile	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,49 @@
 +###############################################################################
 +#
@@ -51,9 +51,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/Makefile linux-2.6.16-owrt/arch/mips/arub
 +subdir-y         += nvram
 +obj-y            += nvram/built-in.o
 +
-diff -Nur linux-2.6.16/arch/mips/aruba/nvram/Makefile linux-2.6.16-owrt/arch/mips/aruba/nvram/Makefile
---- linux-2.6.16/arch/mips/aruba/nvram/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/nvram/Makefile	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/nvram/Makefile linux-2.6.17-owrt/arch/mips/aruba/nvram/Makefile
+--- linux-2.6.17/arch/mips/aruba/nvram/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/nvram/Makefile	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,46 @@
 +###############################################################################
 +#
@@ -101,9 +101,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/nvram/Makefile linux-2.6.16-owrt/arch/mip
 +
 +
 +
-diff -Nur linux-2.6.16/arch/mips/aruba/nvram/nvram434.c linux-2.6.16-owrt/arch/mips/aruba/nvram/nvram434.c
---- linux-2.6.16/arch/mips/aruba/nvram/nvram434.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/nvram/nvram434.c	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/nvram/nvram434.c linux-2.6.17-owrt/arch/mips/aruba/nvram/nvram434.c
+--- linux-2.6.17/arch/mips/aruba/nvram/nvram434.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/nvram/nvram434.c	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,392 @@
 +/**************************************************************************
 + *
@@ -497,9 +497,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/nvram/nvram434.c linux-2.6.16-owrt/arch/m
 +{
 +  nvram_mapenv(func);
 +}
-diff -Nur linux-2.6.16/arch/mips/aruba/nvram/nvram434.h linux-2.6.16-owrt/arch/mips/aruba/nvram/nvram434.h
---- linux-2.6.16/arch/mips/aruba/nvram/nvram434.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/nvram/nvram434.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/nvram/nvram434.h linux-2.6.17-owrt/arch/mips/aruba/nvram/nvram434.h
+--- linux-2.6.17/arch/mips/aruba/nvram/nvram434.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/nvram/nvram434.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,66 @@
 +/**************************************************************************
 + *
@@ -567,9 +567,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/nvram/nvram434.h linux-2.6.16-owrt/arch/m
 +#endif /* _NVRAM_ */
 +
 +
-diff -Nur linux-2.6.16/arch/mips/aruba/prom.c linux-2.6.16-owrt/arch/mips/aruba/prom.c
---- linux-2.6.16/arch/mips/aruba/prom.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/prom.c	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/prom.c linux-2.6.17-owrt/arch/mips/aruba/prom.c
+--- linux-2.6.17/arch/mips/aruba/prom.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/prom.c	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,111 @@
 +/**************************************************************************
 + *
@@ -682,9 +682,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/prom.c linux-2.6.16-owrt/arch/mips/aruba/
 +{
 +	printk("stubbed prom_free_prom_memory()\n");
 +}
-diff -Nur linux-2.6.16/arch/mips/aruba/serial.c linux-2.6.16-owrt/arch/mips/aruba/serial.c
---- linux-2.6.16/arch/mips/aruba/serial.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/serial.c	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/serial.c linux-2.6.17-owrt/arch/mips/aruba/serial.c
+--- linux-2.6.17/arch/mips/aruba/serial.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/serial.c	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,94 @@
 +/**************************************************************************
 + *
@@ -780,9 +780,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/serial.c linux-2.6.16-owrt/arch/mips/arub
 +	
 +	return(0);
 +}
-diff -Nur linux-2.6.16/arch/mips/aruba/setup.c linux-2.6.16-owrt/arch/mips/aruba/setup.c
---- linux-2.6.16/arch/mips/aruba/setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/setup.c	2006-03-20 14:30:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/setup.c linux-2.6.17-owrt/arch/mips/aruba/setup.c
+--- linux-2.6.17/arch/mips/aruba/setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/setup.c	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,134 @@
 +/**************************************************************************
 + *
@@ -918,9 +918,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/setup.c linux-2.6.16-owrt/arch/mips/aruba
 +}
 +
 +EXPORT_SYMBOL(get_system_type);
-diff -Nur linux-2.6.16/arch/mips/aruba/time.c linux-2.6.16-owrt/arch/mips/aruba/time.c
---- linux-2.6.16/arch/mips/aruba/time.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/aruba/time.c	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/aruba/time.c linux-2.6.17-owrt/arch/mips/aruba/time.c
+--- linux-2.6.17/arch/mips/aruba/time.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/aruba/time.c	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,108 @@
 +/**************************************************************************
 + *
@@ -1030,9 +1030,9 @@ diff -Nur linux-2.6.16/arch/mips/aruba/time.c linux-2.6.16-owrt/arch/mips/aruba/
 +	timer_interrupt(irq, NULL, regs);
 +	irq_exit();
 +}
-diff -Nur linux-2.6.16/arch/mips/Kconfig linux-2.6.16-owrt/arch/mips/Kconfig
---- linux-2.6.16/arch/mips/Kconfig	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/Kconfig	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/Kconfig linux-2.6.17-owrt/arch/mips/Kconfig
+--- linux-2.6.17/arch/mips/Kconfig	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/Kconfig	2006-06-18 12:44:28.000000000 +0200
 @@ -227,6 +227,17 @@
  	  either a NEC Vr5432 or QED RM5231. Say Y here if you wish to build
  	  a kernel for this platform.
@@ -1049,12 +1049,12 @@ diff -Nur linux-2.6.16/arch/mips/Kconfig linux-2.6.16-owrt/arch/mips/Kconfig
 +
 +
  config MACH_JAZZ
- 	bool "Support for the Jazz family of machines"
+ 	bool "Jazz family of machines"
  	select ARC
-diff -Nur linux-2.6.16/arch/mips/Makefile linux-2.6.16-owrt/arch/mips/Makefile
---- linux-2.6.16/arch/mips/Makefile	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/Makefile	2006-03-20 14:25:10.000000000 +0100
-@@ -279,6 +279,14 @@
+diff -Nur linux-2.6.17/arch/mips/Makefile linux-2.6.17-owrt/arch/mips/Makefile
+--- linux-2.6.17/arch/mips/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/Makefile	2006-06-18 12:44:28.000000000 +0200
+@@ -145,6 +145,14 @@
  #
  
  #
@@ -1069,18 +1069,18 @@ diff -Nur linux-2.6.16/arch/mips/Makefile linux-2.6.16-owrt/arch/mips/Makefile
  # Acer PICA 61, Mips Magnum 4000 and Olivetti M700.
  #
  core-$(CONFIG_MACH_JAZZ)	+= arch/mips/jazz/
-diff -Nur linux-2.6.16/arch/mips/mm/tlbex.c linux-2.6.16-owrt/arch/mips/mm/tlbex.c
---- linux-2.6.16/arch/mips/mm/tlbex.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/mm/tlbex.c	2006-03-20 14:25:10.000000000 +0100
-@@ -852,7 +852,6 @@
- 
+diff -Nur linux-2.6.17/arch/mips/mm/tlbex.c linux-2.6.17-owrt/arch/mips/mm/tlbex.c
+--- linux-2.6.17/arch/mips/mm/tlbex.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/mm/tlbex.c	2006-06-18 12:48:27.000000000 +0200
+@@ -876,7 +876,6 @@
  	case CPU_R10000:
  	case CPU_R12000:
+ 	case CPU_R14000:
 -	case CPU_4KC:
  	case CPU_SB1:
  	case CPU_SB1A:
  	case CPU_4KSC:
-@@ -880,6 +879,7 @@
+@@ -904,6 +903,7 @@
  		tlbw(p);
  		break;
  
@@ -1088,9 +1088,9 @@ diff -Nur linux-2.6.16/arch/mips/mm/tlbex.c linux-2.6.16-owrt/arch/mips/mm/tlbex
  	case CPU_4KEC:
  	case CPU_24K:
  	case CPU_34K:
-diff -Nur linux-2.6.16/drivers/net/Kconfig linux-2.6.16-owrt/drivers/net/Kconfig
---- linux-2.6.16/drivers/net/Kconfig	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/drivers/net/Kconfig	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/drivers/net/Kconfig linux-2.6.17-owrt/drivers/net/Kconfig
+--- linux-2.6.17/drivers/net/Kconfig	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/net/Kconfig	2006-06-18 12:44:28.000000000 +0200
 @@ -187,6 +187,13 @@
  
  source "drivers/net/arm/Kconfig"
@@ -1105,9 +1105,9 @@ diff -Nur linux-2.6.16/drivers/net/Kconfig linux-2.6.16-owrt/drivers/net/Kconfig
  config MACE
  	tristate "MACE (Power Mac ethernet) support"
  	depends on NET_ETHERNET && PPC_PMAC && PPC32
-diff -Nur linux-2.6.16/drivers/net/Makefile linux-2.6.16-owrt/drivers/net/Makefile
---- linux-2.6.16/drivers/net/Makefile	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/drivers/net/Makefile	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/drivers/net/Makefile linux-2.6.17-owrt/drivers/net/Makefile
+--- linux-2.6.17/drivers/net/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/net/Makefile	2006-06-18 12:44:28.000000000 +0200
 @@ -38,6 +38,7 @@
  
  obj-$(CONFIG_OAKNET) += oaknet.o 8390.o
@@ -1116,9 +1116,9 @@ diff -Nur linux-2.6.16/drivers/net/Makefile linux-2.6.16-owrt/drivers/net/Makefi
  obj-$(CONFIG_DGRS) += dgrs.o
  obj-$(CONFIG_VORTEX) += 3c59x.o
  obj-$(CONFIG_TYPHOON) += typhoon.o
-diff -Nur linux-2.6.16/drivers/net/natsemi.c linux-2.6.16-owrt/drivers/net/natsemi.c
---- linux-2.6.16/drivers/net/natsemi.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/drivers/net/natsemi.c	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/drivers/net/natsemi.c linux-2.6.17-owrt/drivers/net/natsemi.c
+--- linux-2.6.17/drivers/net/natsemi.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/net/natsemi.c	2006-06-18 12:44:28.000000000 +0200
 @@ -771,6 +771,49 @@
  static int netdev_get_eeprom(struct net_device *dev, u8 *buf);
  static struct ethtool_ops ethtool_ops;
@@ -1169,7 +1169,7 @@ diff -Nur linux-2.6.16/drivers/net/natsemi.c linux-2.6.16-owrt/drivers/net/natse
  static inline void __iomem *ns_ioaddr(struct net_device *dev)
  {
  	return (void __iomem *) dev->base_addr;
-@@ -859,6 +902,7 @@
+@@ -871,6 +914,7 @@
  		goto err_ioremap;
  	}
  
@@ -1177,7 +1177,7 @@ diff -Nur linux-2.6.16/drivers/net/natsemi.c linux-2.6.16-owrt/drivers/net/natse
  	/* Work around the dropped serial bit. */
  	prev_eedata = eeprom_read(ioaddr, 6);
  	for (i = 0; i < 3; i++) {
-@@ -867,6 +911,19 @@
+@@ -879,6 +923,19 @@
  		dev->dev_addr[i*2+1] = eedata >> 7;
  		prev_eedata = eedata;
  	}
@@ -1197,9 +1197,9 @@ diff -Nur linux-2.6.16/drivers/net/natsemi.c linux-2.6.16-owrt/drivers/net/natse
  
  	dev->base_addr = (unsigned long __force) ioaddr;
  	dev->irq = irq;
-diff -Nur linux-2.6.16/drivers/net/rc32434_eth.c linux-2.6.16-owrt/drivers/net/rc32434_eth.c
---- linux-2.6.16/drivers/net/rc32434_eth.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/drivers/net/rc32434_eth.c	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/drivers/net/rc32434_eth.c linux-2.6.17-owrt/drivers/net/rc32434_eth.c
+--- linux-2.6.17/drivers/net/rc32434_eth.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/drivers/net/rc32434_eth.c	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,1268 @@
 +/**************************************************************************
 + *
@@ -2469,9 +2469,9 @@ diff -Nur linux-2.6.16/drivers/net/rc32434_eth.c linux-2.6.16-owrt/drivers/net/r
 +
 +
 +
-diff -Nur linux-2.6.16/drivers/net/rc32434_eth.h linux-2.6.16-owrt/drivers/net/rc32434_eth.h
---- linux-2.6.16/drivers/net/rc32434_eth.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/drivers/net/rc32434_eth.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/drivers/net/rc32434_eth.h linux-2.6.17-owrt/drivers/net/rc32434_eth.h
+--- linux-2.6.17/drivers/net/rc32434_eth.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/drivers/net/rc32434_eth.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,187 @@
 +/**************************************************************************
 + *
@@ -2660,9 +2660,9 @@ diff -Nur linux-2.6.16/drivers/net/rc32434_eth.h linux-2.6.16-owrt/drivers/net/r
 +	rc32434_writel(0, &ch->dmadptr); 
 +	rc32434_writel(0, &ch->dmandptr); 
 +}
-diff -Nur linux-2.6.16/include/asm-mips/bootinfo.h linux-2.6.16-owrt/include/asm-mips/bootinfo.h
---- linux-2.6.16/include/asm-mips/bootinfo.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/bootinfo.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/bootinfo.h linux-2.6.17-owrt/include/asm-mips/bootinfo.h
+--- linux-2.6.17/include/asm-mips/bootinfo.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/bootinfo.h	2006-06-18 12:44:28.000000000 +0200
 @@ -218,6 +218,17 @@
  #define MACH_GROUP_TITAN       22	/* PMC-Sierra Titan		*/
  #define  MACH_TITAN_YOSEMITE	1	/* PMC-Sierra Yosemite		*/
@@ -2681,11 +2681,11 @@ diff -Nur linux-2.6.16/include/asm-mips/bootinfo.h linux-2.6.16-owrt/include/asm
  #define CL_SIZE			COMMAND_LINE_SIZE
  
  const char *get_system_type(void);
-diff -Nur linux-2.6.16/include/asm-mips/cpu.h linux-2.6.16-owrt/include/asm-mips/cpu.h
---- linux-2.6.16/include/asm-mips/cpu.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/cpu.h	2006-03-20 14:25:10.000000000 +0100
-@@ -53,6 +53,9 @@
- #define PRID_IMP_R12000		0x0e00
+diff -Nur linux-2.6.17/include/asm-mips/cpu.h linux-2.6.17-owrt/include/asm-mips/cpu.h
+--- linux-2.6.17/include/asm-mips/cpu.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/cpu.h	2006-06-18 12:45:56.000000000 +0200
+@@ -54,6 +54,9 @@
+ #define PRID_IMP_R14000		0x0f00
  #define PRID_IMP_R8000		0x1000
  #define PRID_IMP_PR4450		0x1200
 +#define PRID_IMP_RC32334	0x1800
@@ -2694,19 +2694,19 @@ diff -Nur linux-2.6.16/include/asm-mips/cpu.h linux-2.6.16-owrt/include/asm-mips
  #define PRID_IMP_R4600		0x2000
  #define PRID_IMP_R4700		0x2100
  #define PRID_IMP_TX39		0x2200
-@@ -196,7 +199,8 @@
- #define CPU_34K			60
- #define CPU_PR4450		61
+@@ -200,7 +203,8 @@
  #define CPU_SB1A		62
--#define CPU_LAST		62
-+#define CPU_RC32300		63
-+#define CPU_LAST		63
+ #define CPU_74K			63
+ #define CPU_R14000		64
+-#define CPU_LAST		64
++#define CPU_RC32300		65
++#define CPU_LAST		65
  
  /*
   * ISA Level encodings
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32300.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32300.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32300.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32300.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32300.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32300.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32300.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32300.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,142 @@
 +/**************************************************************************
 + *
@@ -2850,9 +2850,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32300.h linux-2.6.1
 +}
 +
 +#endif  // __IDT_RC32300_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32334.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32334.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32334.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32334.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32334.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32334.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32334.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32334.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,207 @@
 +/**************************************************************************
 + *
@@ -3061,9 +3061,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32334.h linux-2.6.1
 +#define RAM_SIZE	(32*1024*1024)
 +
 +#endif // __IDT_RC32334_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355_dma.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32355_dma.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355_dma.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32355_dma.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32355_dma.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32355_dma.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32355_dma.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32355_dma.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,206 @@
 +/**************************************************************************
 + *
@@ -3271,9 +3271,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355_dma.h linux-2
 +  ((count) & DMADESC_COUNT_MASK)
 +
 +#endif /* RC32355_DMA_H */
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355_eth.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32355_eth.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355_eth.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32355_eth.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32355_eth.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32355_eth.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32355_eth.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32355_eth.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,442 @@
 +/**************************************************************************
 + *
@@ -3717,9 +3717,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355_eth.h linux-2
 +
 +#endif /* RC32355_ETHER_H */
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32355.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32355.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32355.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32355.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32355.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32355.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,177 @@
 +/**************************************************************************
 + *
@@ -3898,9 +3898,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32355.h linux-2.6.1
 +#define NVRAM_ENVSTART_OFF 32
 +
 +#endif /* _RC32355_H_ */
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_dma.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_dma.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_dma.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_dma.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,226 @@
 +/**************************************************************************
 + *
@@ -4128,9 +4128,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_dma.h linux-2
 +#endif	// aws - Compatibility.
 +
 +#endif	// __IDT_RC32365_DMA_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,86 @@
 +/**************************************************************************
 + *
@@ -4218,9 +4218,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_dma_v.h linux
 +	local_writel(dma_addr, &ch->dmandptr);
 +}
 +#endif //__IDT_RC32365_DMA_V_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_eth.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_eth.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_eth.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_eth.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,344 @@
 +/**************************************************************************
 + *
@@ -4566,9 +4566,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_eth.h linux-2
 +	u32 ipabmctx		;
 +}volatile *IPABM_ETH_t;
 +#endif //__IDT_RC32365_ETH_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,72 @@
 +/**************************************************************************
 + *
@@ -4642,9 +4642,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_eth_v.h linux
 +#define RCVPKT_LENGTH(X)     (((X) & ETHRX_length_m) >> ETHRX_length_b)   /* Length of the received packet */
 +
 +#endif //__IDT_RC32365_ETH_V_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,181 @@
 +/**************************************************************************
 + *
@@ -4827,9 +4827,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_gpio.h linux-
 +} GPIO_DEFS_t;
 +
 +#endif //__IDT_RC32365_GPIO_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,91 @@
 +/**************************************************************************
 + *
@@ -4922,9 +4922,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_gpio_v.h linu
 +
 +#endif //__IDT_RC32365_GPIO_V_H__
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,160 @@
 +/**************************************************************************
 + *
@@ -5086,9 +5086,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365.h linux-2.6.1
 +#define RAM_SIZE	   (32 * 1024 * 1024)
 +
 +#endif //__IDT_RC32365_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_pci.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_pci.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_pci.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_pci.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,515 @@
 +/**************************************************************************
 + *
@@ -5605,9 +5605,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_pci.h linux-2
 +
 +
 +#endif	// __IDT_RC32365_PCI_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,217 @@
 +/**************************************************************************
 + *
@@ -5826,9 +5826,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32300/rc32365_pci_v.h linux
 +#define PCITC_RTIMER_VAL	0x10
 +
 +#endif //__IDT_RC32365_PCI_V_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_dma.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_dma.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_dma.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_dma.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,205 @@
 +/**************************************************************************
 + *
@@ -6035,9 +6035,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_dma.h linux-2
 +
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,89 @@
 +/**************************************************************************
 + *
@@ -6128,9 +6128,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_dma_v.h linux
 +
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_eth.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_eth.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_eth.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_eth.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,333 @@
 +/**************************************************************************
 + *
@@ -6465,9 +6465,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_eth.h linux-2
 +
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,77 @@
 +/**************************************************************************
 + *
@@ -6546,9 +6546,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_eth_v.h linux
 +
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,167 @@
 +/**************************************************************************
 + *
@@ -6717,9 +6717,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_gpio.h linux-
 +
 +#endif	// __IDT_GPIO_H__
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,199 @@
 + /**************************************************************************
 + *
@@ -6920,9 +6920,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434.h linux-2.6.1
 +
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_integ.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_integ.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_integ.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_integ.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_integ.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_integ.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_integ.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_integ.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,90 @@
 +/**************************************************************************
 + *
@@ -7014,9 +7014,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_integ.h linux
 +} ;
 +
 +#endif	// __IDT_INTEG_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_int.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_int.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_int.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_int.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_int.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_int.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_int.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_int.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,174 @@
 +/**************************************************************************
 + *
@@ -7192,9 +7192,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_int.h linux-2
 +#endif	// __IDT_INT_H__
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,111 @@
 +/**************************************************************************
 + *
@@ -7307,9 +7307,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_iparb.h linux
 +};
 +
 +#endif	// __IDT_IPARB_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_pci.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_pci.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_pci.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_pci.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_pci.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_pci.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_pci.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_pci.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,695 @@
 +/**************************************************************************
 + *
@@ -8006,9 +8006,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_pci.h linux-2
 +
 +
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_rst.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_rst.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_rst.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_rst.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_rst.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_rst.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_rst.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_rst.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,119 @@
 +/**************************************************************************
 + *
@@ -8129,9 +8129,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_rst.h linux-2
 +	BCV_res15_m		= 0x00008000,
 +} ;
 +#endif	// __IDT_RST_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_spi.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_spi.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_spi.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_spi.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_spi.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_spi.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_spi.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_spi.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,120 @@
 +/**************************************************************************
 + *
@@ -8253,9 +8253,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_spi.h linux-2
 +	SIOD_pci_m	 = 0x00000008,
 +} ;
 +#endif	// __IDT_SPI_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_timer.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_timer.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_timer.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_timer.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_timer.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_timer.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_timer.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_timer.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,91 @@
 +/**************************************************************************
 + *
@@ -8348,9 +8348,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_timer.h linux
 +} ;
 +#endif	// __IDT_TIM_H__
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_uart.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_uart.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_uart.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32434/rc32434_uart.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_uart.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_uart.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32434/rc32434_uart.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32434/rc32434_uart.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,189 @@
 +/**************************************************************************
 + *
@@ -8541,9 +8541,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32434/rc32434_uart.h linux-
 +} ;
 +
 +#endif	// __IDT_UART_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_dma.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_dma.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_dma.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_dma.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,231 @@
 +/**************************************************************************
 + *
@@ -8776,9 +8776,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_dma.h linux-2
 +#endif	// aws - Compatibility.
 +
 +#endif //__IDT_RC32438_DMA_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,82 @@
 +/**************************************************************************
 + *
@@ -8862,9 +8862,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_dma_v.h linux
 +	rc32438_writel(dma_addr, &ch->dmandptr);
 +}
 +#endif //__IDT_RC32438_DMA_V_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_eth.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_eth.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_eth.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_eth.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,328 @@
 +/**************************************************************************
 + *
@@ -9194,9 +9194,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_eth.h linux-2
 +	ETHTX_cc_m		= 0x001E0000,
 +} ;
 +#endif //__IDT_RC32438_ETH_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,72 @@
 +/**************************************************************************
 + *
@@ -9270,9 +9270,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_eth_v.h linux
 +#define RCVPKT_LENGTH(X)     (((X) & ETHRX_length_m) >> ETHRX_length_b)   /* Length of the received packet */
 +
 +#endif //__IDT_RC32438_ETH_V_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,257 @@
 +/**************************************************************************
 + *
@@ -9531,9 +9531,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_gpio.h linux-
 +} GPIO_DEFS_t;
 +
 +#endif //__IDT_RC32438_GPIO_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,152 @@
 +/**************************************************************************
 + *
@@ -9687,9 +9687,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438.h linux-2.6.1
 +	return ret;
 +}
 +#endif //__IDT_RC32438_H__
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_pci.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_pci.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_pci.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_pci.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,510 @@
 +/**************************************************************************
 + *
@@ -10201,9 +10201,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_pci.h linux-2
 +	PCIM_db_m	= 0x00000004,	// inbound or outbound doorbell
 +};
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,190 @@
 +/**************************************************************************
 + *
@@ -10395,9 +10395,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_pci_v.h linux
 +#define	PCITC_DTIMER_VAL	8
 +#define PCITC_RTIMER_VAL	0x10
 +
-diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_timer.h linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_timer.h
---- linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_timer.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/idt-boards/rc32438/rc32438_timer.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_timer.h linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_timer.h
+--- linux-2.6.17/include/asm-mips/idt-boards/rc32438/rc32438_timer.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/idt-boards/rc32438/rc32438_timer.h	2006-06-18 12:44:28.000000000 +0200
 @@ -0,0 +1,91 @@
 +/**************************************************************************
 + *
@@ -10490,9 +10490,9 @@ diff -Nur linux-2.6.16/include/asm-mips/idt-boards/rc32438/rc32438_timer.h linux
 +} ;
 +#endif	//__IDT_RC32438_TIM_H__
 +
-diff -Nur linux-2.6.16/include/asm-mips/mach-generic/irq.h linux-2.6.16-owrt/include/asm-mips/mach-generic/irq.h
---- linux-2.6.16/include/asm-mips/mach-generic/irq.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/mach-generic/irq.h	2006-03-20 14:25:10.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/mach-generic/irq.h linux-2.6.17-owrt/include/asm-mips/mach-generic/irq.h
+--- linux-2.6.17/include/asm-mips/mach-generic/irq.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/mach-generic/irq.h	2006-06-18 12:44:28.000000000 +0200
 @@ -8,6 +8,6 @@
  #ifndef __ASM_MACH_GENERIC_IRQ_H
  #define __ASM_MACH_GENERIC_IRQ_H
@@ -10501,10 +10501,10 @@ diff -Nur linux-2.6.16/include/asm-mips/mach-generic/irq.h linux-2.6.16-owrt/inc
 +#define NR_IRQS	256
  
  #endif /* __ASM_MACH_GENERIC_IRQ_H */
-diff -Nur linux-2.6.16/include/linux/kernel.h linux-2.6.16-owrt/include/linux/kernel.h
---- linux-2.6.16/include/linux/kernel.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/linux/kernel.h	2006-03-20 14:25:10.000000000 +0100
-@@ -324,6 +324,7 @@
+diff -Nur linux-2.6.17/include/linux/kernel.h linux-2.6.17-owrt/include/linux/kernel.h
+--- linux-2.6.17/include/linux/kernel.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/linux/kernel.h	2006-06-18 12:44:28.000000000 +0200
+@@ -329,6 +329,7 @@
  };
  
  /* Force a compilation error if condition is true */
diff --git a/target/linux/au1000-2.6/Makefile b/target/linux/au1000-2.6/Makefile
index 34d4ddaf9..39d8d4c8b 100644
--- a/target/linux/au1000-2.6/Makefile
+++ b/target/linux/au1000-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.7
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=9682b2bd6e02f3087982d7c3f5ba824e
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config
diff --git a/target/linux/brcm-2.6/Makefile b/target/linux/brcm-2.6/Makefile
index 5926e6ebc..1f6861425 100644
--- a/target/linux/brcm-2.6/Makefile
+++ b/target/linux/brcm-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.7
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=9682b2bd6e02f3087982d7c3f5ba824e
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config
diff --git a/target/linux/brcm-2.6/patches/001-bcm947xx.patch b/target/linux/brcm-2.6/patches/001-bcm947xx.patch
index a0820d0cd..be3ac9429 100644
--- a/target/linux/brcm-2.6/patches/001-bcm947xx.patch
+++ b/target/linux/brcm-2.6/patches/001-bcm947xx.patch
@@ -1,6 +1,6 @@
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/bcmsrom.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/bcmsrom.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/bcmsrom.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/bcmsrom.c	2006-03-21 09:30:59.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/bcmsrom.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/bcmsrom.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/bcmsrom.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/bcmsrom.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,481 @@
 +/*
 + *  Misc useful routines to access NIC SROM/OTP .
@@ -483,9 +483,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/bcmsrom.c linux-2.6.16-owrt/a
 +	return err;
 +}
 +
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/bcmutils.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/bcmutils.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/bcmutils.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/bcmutils.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/bcmutils.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/bcmutils.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/bcmutils.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/bcmutils.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,356 @@
 +/*
 + * Misc useful OS-independent routines.
@@ -843,9 +843,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/bcmutils.c linux-2.6.16-owrt/
 +#define CNBUFS		5
 +
 +#endif
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/cfe_env.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/cfe_env.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/cfe_env.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/cfe_env.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/cfe_env.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/cfe_env.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/cfe_env.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/cfe_env.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,234 @@
 +/*
 + * NVRAM variable manipulation (Linux kernel half)
@@ -1081,9 +1081,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/cfe_env.c linux-2.6.16-owrt/a
 +
 +}
 +
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/linux_osl.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/linux_osl.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/linux_osl.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/linux_osl.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/linux_osl.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/linux_osl.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/linux_osl.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/linux_osl.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,102 @@
 +/*
 + * Linux OS Independent Layer
@@ -1187,9 +1187,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/linux_osl.c linux-2.6.16-owrt
 +	}
 +}
 +
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/Makefile linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/Makefile
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/Makefile	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/Makefile linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/Makefile
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/Makefile	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,6 @@
 +#
 +# Makefile for the BCM47xx specific kernel interface routines
@@ -1197,9 +1197,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/Makefile linux-2.6.16-owrt/ar
 +#
 + 
 +obj-y	:= sbutils.o linux_osl.o bcmsrom.o bcmutils.o sbmips.o sbpci.o sflash.o nvram.o cfe_env.o
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/nvram.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/nvram.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/nvram.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/nvram.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/nvram.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/nvram.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/nvram.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/nvram.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,192 @@
 +/*
 + * NVRAM variable manipulation (Linux kernel half)
@@ -1393,9 +1393,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/nvram.c linux-2.6.16-owrt/arc
 +}
 +
 +EXPORT_SYMBOL(nvram_get);
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sbmips.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sbmips.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/sbmips.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sbmips.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/sbmips.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sbmips.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/sbmips.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sbmips.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,1055 @@
 +/*
 + * BCM47XX Sonics SiliconBackplane MIPS core routines
@@ -2452,9 +2452,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sbmips.c linux-2.6.16-owrt/ar
 +	return ret;
 +}
 +
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sbpci.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sbpci.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/sbpci.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sbpci.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/sbpci.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sbpci.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/sbpci.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sbpci.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,534 @@
 +/*
 + * Low-Level PCI and SB support for BCM47xx
@@ -2990,9 +2990,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sbpci.c linux-2.6.16-owrt/arc
 +	return 0;
 +}
 +
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sbutils.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sbutils.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/sbutils.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sbutils.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/sbutils.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sbutils.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/sbutils.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sbutils.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,2370 @@
 +/*
 + * Misc utility routines for accessing chip-specific features
@@ -5364,9 +5364,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sbutils.c linux-2.6.16-owrt/a
 +EXPORT_SYMBOL(sb_gpiosetcore);
 +EXPORT_SYMBOL(sb_gpiotimerval);
 +EXPORT_SYMBOL(sb_watchdog);
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sflash.c linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sflash.c
---- linux-2.6.16/arch/mips/bcm947xx/broadcom/sflash.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/broadcom/sflash.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/broadcom/sflash.c linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sflash.c
+--- linux-2.6.17/arch/mips/bcm947xx/broadcom/sflash.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/broadcom/sflash.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,418 @@
 +/*
 + * Broadcom SiliconBackplane chipcommon serial flash interface
@@ -5786,9 +5786,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/broadcom/sflash.c linux-2.6.16-owrt/ar
 +	return ret;
 +}
 +
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmdevs.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmdevs.h
---- linux-2.6.16/arch/mips/bcm947xx/include/bcmdevs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmdevs.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/bcmdevs.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmdevs.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/bcmdevs.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmdevs.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,391 @@
 +/*
 + * Broadcom device-specific manifest constants.
@@ -6181,9 +6181,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmdevs.h linux-2.6.16-owrt/ar
 +#define GPIO_NUMPINS		16
 +
 +#endif /* _BCMDEVS_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmendian.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmendian.h
---- linux-2.6.16/arch/mips/bcm947xx/include/bcmendian.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmendian.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/bcmendian.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmendian.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/bcmendian.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmendian.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,152 @@
 +/*
 + * local version of endian.h - byte order defines
@@ -6337,9 +6337,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmendian.h linux-2.6.16-owrt/
 +)
 +
 +#endif /* _BCMENDIAN_H_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmnvram.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmnvram.h
---- linux-2.6.16/arch/mips/bcm947xx/include/bcmnvram.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmnvram.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/bcmnvram.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmnvram.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/bcmnvram.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmnvram.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,95 @@
 +/*
 + * NVRAM variable manipulation
@@ -6436,9 +6436,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmnvram.h linux-2.6.16-owrt/a
 +#define NVRAM_MAX_PARAM_LEN 64
 +
 +#endif /* _bcmnvram_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmsrom.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmsrom.h
---- linux-2.6.16/arch/mips/bcm947xx/include/bcmsrom.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmsrom.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/bcmsrom.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmsrom.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/bcmsrom.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmsrom.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,23 @@
 +/*
 + * Misc useful routines to access NIC local SROM/OTP .
@@ -6463,9 +6463,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmsrom.h linux-2.6.16-owrt/ar
 +extern int srom_write(uint bus, void *curmap, osl_t *osh, uint byteoff, uint nbytes, uint16 *buf);
 +
 +#endif	/* _bcmsrom_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmutils.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmutils.h
---- linux-2.6.16/arch/mips/bcm947xx/include/bcmutils.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/bcmutils.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/bcmutils.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmutils.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/bcmutils.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/bcmutils.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,308 @@
 +/*
 + * Misc useful os-independent macros and functions.
@@ -6775,9 +6775,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bcmutils.h linux-2.6.16-owrt/a
 +extern uint bcm_mkiovar(char *name, char *data, uint datalen, char *buf, uint len);
 +
 +#endif	/* _bcmutils_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bitfuncs.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/bitfuncs.h
---- linux-2.6.16/arch/mips/bcm947xx/include/bitfuncs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/bitfuncs.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/bitfuncs.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/bitfuncs.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/bitfuncs.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/bitfuncs.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,85 @@
 +/*
 + * bit manipulation utility functions
@@ -6864,9 +6864,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/bitfuncs.h linux-2.6.16-owrt/a
 +#endif
 +
 +#endif /* _BITFUNCS_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/flash.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/flash.h
---- linux-2.6.16/arch/mips/bcm947xx/include/flash.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/flash.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/flash.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/flash.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/flash.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/flash.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,188 @@
 +/*
 + * flash.h: Common definitions for flash access.
@@ -7056,9 +7056,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/flash.h linux-2.6.16-owrt/arch
 +extern flash_desc_t flashes[];
 +
 +#endif
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/flashutl.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/flashutl.h
---- linux-2.6.16/arch/mips/bcm947xx/include/flashutl.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/flashutl.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/flashutl.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/flashutl.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/flashutl.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/flashutl.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,27 @@
 +/*
 + * BCM47XX FLASH driver interface
@@ -7087,9 +7087,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/flashutl.h linux-2.6.16-owrt/a
 +#endif	/* _LANGUAGE_ASSEMBLY */
 +
 +#endif /* _flashutl_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/hndmips.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/hndmips.h
---- linux-2.6.16/arch/mips/bcm947xx/include/hndmips.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/hndmips.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/hndmips.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/hndmips.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/hndmips.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/hndmips.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,16 @@
 +/*
 + * Alternate include file for HND sbmips.h since CFE also ships with
@@ -7107,9 +7107,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/hndmips.h linux-2.6.16-owrt/ar
 + */
 +
 +#include "sbmips.h"
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/linux_osl.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/linux_osl.h
---- linux-2.6.16/arch/mips/bcm947xx/include/linux_osl.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/linux_osl.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/linux_osl.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/linux_osl.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/linux_osl.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/linux_osl.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,331 @@
 +/*
 + * Linux OS Independent Layer
@@ -7442,9 +7442,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/linux_osl.h linux-2.6.16-owrt/
 +#define	PKTBUFSZ	2048
 +
 +#endif	/* _linux_osl_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/linuxver.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/linuxver.h
---- linux-2.6.16/arch/mips/bcm947xx/include/linuxver.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/linuxver.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/linuxver.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/linuxver.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/linuxver.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/linuxver.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,389 @@
 +/*
 + * Linux-specific abstractions to gain some independence from linux kernel versions.
@@ -7835,9 +7835,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/linuxver.h linux-2.6.16-owrt/a
 +#endif
 +
 +#endif /* _linuxver_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/mipsinc.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/mipsinc.h
---- linux-2.6.16/arch/mips/bcm947xx/include/mipsinc.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/mipsinc.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/mipsinc.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/mipsinc.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/mipsinc.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/mipsinc.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,552 @@
 +/*
 + * HND Run Time Environment for standalone MIPS programs.
@@ -8391,9 +8391,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/mipsinc.h linux-2.6.16-owrt/ar
 +#endif /* !_LANGUAGE_ASSEMBLY */
 +
 +#endif	/* _MISPINC_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/osl.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/osl.h
---- linux-2.6.16/arch/mips/bcm947xx/include/osl.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/osl.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/osl.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/osl.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/osl.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/osl.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,42 @@
 +/*
 + * OS Abstraction Layer
@@ -8437,9 +8437,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/osl.h linux-2.6.16-owrt/arch/m
 +#define	MAXPRIO		7	/* 0-7 */
 +
 +#endif	/* _osl_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/pcicfg.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/pcicfg.h
---- linux-2.6.16/arch/mips/bcm947xx/include/pcicfg.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/pcicfg.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/pcicfg.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/pcicfg.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/pcicfg.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/pcicfg.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,398 @@
 +/*
 + * pcicfg.h: PCI configuration  constants and structures.
@@ -8839,9 +8839,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/pcicfg.h linux-2.6.16-owrt/arc
 +#define PCI_CFG_CMD_STAT_TA	0x08000000	/* target abort status */
 +
 +#endif
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/proto/ethernet.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/proto/ethernet.h
---- linux-2.6.16/arch/mips/bcm947xx/include/proto/ethernet.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/proto/ethernet.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/proto/ethernet.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/proto/ethernet.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/proto/ethernet.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/proto/ethernet.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,145 @@
 +/*******************************************************************************
 + * $Id$
@@ -8988,9 +8988,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/proto/ethernet.h linux-2.6.16-
 +#undef PACKED
 +
 +#endif /* _NET_ETHERNET_H_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/s5.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/s5.h
---- linux-2.6.16/arch/mips/bcm947xx/include/s5.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/s5.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/s5.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/s5.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/s5.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/s5.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,103 @@
 +#ifndef _S5_H_
 +#define _S5_H_
@@ -9095,9 +9095,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/s5.h linux-2.6.16-owrt/arch/mi
 +
 +
 +#endif /*!_S5_H_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbchipc.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbchipc.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbchipc.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbchipc.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbchipc.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbchipc.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbchipc.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbchipc.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,440 @@
 +/*
 + * SiliconBackplane Chipcommon core hardware definitions.
@@ -9539,9 +9539,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbchipc.h linux-2.6.16-owrt/ar
 +#define	OTP_MAGIC	0x4e56
 +
 +#endif	/* _SBCHIPC_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbconfig.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbconfig.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbconfig.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbconfig.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbconfig.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbconfig.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbconfig.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbconfig.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,342 @@
 +/*
 + * Broadcom SiliconBackplane hardware register definitions.
@@ -9885,9 +9885,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbconfig.h linux-2.6.16-owrt/a
 +#define BISZ_SIZE		7		/* descriptor size in 32-bit intergers */
 +
 +#endif	/* _SBCONFIG_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbextif.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbextif.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbextif.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbextif.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbextif.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbextif.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbextif.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbextif.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,242 @@
 +/*
 + * Hardware-specific External Interface I/O core definitions
@@ -10131,9 +10131,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbextif.h linux-2.6.16-owrt/ar
 +#define	CC_CLOCK_BASE	24000000	/* Half the clock freq. in the 4710 */
 +
 +#endif	/* _SBEXTIF_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbmemc.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbmemc.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbmemc.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbmemc.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbmemc.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbmemc.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbmemc.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbmemc.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,148 @@
 +/*
 + * BCM47XX Sonics SiliconBackplane DDR/SDRAM controller core hardware definitions.
@@ -10283,9 +10283,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbmemc.h linux-2.6.16-owrt/arc
 +#define MEMC_CONFIG_DDR		0x00000001
 +
 +#endif	/* _SBMEMC_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbmips.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbmips.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbmips.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbmips.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbmips.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbmips.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbmips.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbmips.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,62 @@
 +/*
 + * Broadcom SiliconBackplane MIPS definitions
@@ -10349,9 +10349,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbmips.h linux-2.6.16-owrt/arc
 +#endif /* _LANGUAGE_ASSEMBLY */
 +
 +#endif	/* _SBMIPS_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbpci.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbpci.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbpci.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbpci.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbpci.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbpci.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbpci.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbpci.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,122 @@
 +/*
 + * BCM47XX Sonics SiliconBackplane PCI core hardware definitions.
@@ -10475,9 +10475,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbpci.h linux-2.6.16-owrt/arch
 +#endif /* !_LANGUAGE_ASSEMBLY */
 +
 +#endif	/* _SBPCI_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbsdram.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbsdram.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbsdram.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbsdram.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbsdram.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbsdram.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbsdram.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbsdram.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,75 @@
 +/*
 + * BCM47XX Sonics SiliconBackplane SDRAM controller core hardware definitions.
@@ -10554,9 +10554,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbsdram.h linux-2.6.16-owrt/ar
 +#define MEM8MX16X2	0xc29	/* 32 MB */
 +
 +#endif	/* _SBSDRAM_H */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbutils.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbutils.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sbutils.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sbutils.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sbutils.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbutils.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sbutils.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sbutils.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,136 @@
 +/*
 + * Misc utility routines for accessing chip-specific features
@@ -10694,9 +10694,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sbutils.h linux-2.6.16-owrt/ar
 +#define SB_DEVPATH_BUFSZ	16	/* min buffer size in bytes */
 +
 +#endif	/* _sbutils_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sflash.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/sflash.h
---- linux-2.6.16/arch/mips/bcm947xx/include/sflash.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/sflash.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/sflash.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/sflash.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/sflash.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/sflash.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,36 @@
 +/*
 + * Broadcom SiliconBackplane chipcommon serial flash interface
@@ -10734,9 +10734,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/sflash.h linux-2.6.16-owrt/arc
 +extern struct sflash * sflash_init(chipcregs_t *cc);
 +
 +#endif /* _sflash_h_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/trxhdr.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/trxhdr.h
---- linux-2.6.16/arch/mips/bcm947xx/include/trxhdr.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/trxhdr.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/trxhdr.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/trxhdr.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/trxhdr.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/trxhdr.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,33 @@
 +/*
 + * TRX image file header format.
@@ -10771,9 +10771,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/trxhdr.h linux-2.6.16-owrt/arc
 +
 +/* Compatibility */
 +typedef struct trx_header TRXHDR, *PTRXHDR;
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/typedefs.h linux-2.6.16-owrt/arch/mips/bcm947xx/include/typedefs.h
---- linux-2.6.16/arch/mips/bcm947xx/include/typedefs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/include/typedefs.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/include/typedefs.h linux-2.6.17-owrt/arch/mips/bcm947xx/include/typedefs.h
+--- linux-2.6.17/arch/mips/bcm947xx/include/typedefs.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/include/typedefs.h	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,326 @@
 +/*
 + * Copyright 2005, Broadcom Corporation      
@@ -11101,62 +11101,10 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/include/typedefs.h linux-2.6.16-owrt/a
 +#endif /* USE_TYPEDEF_DEFAULTS */
 +
 +#endif /* _TYPEDEFS_H_ */
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/int-handler.S linux-2.6.16-owrt/arch/mips/bcm947xx/int-handler.S
---- linux-2.6.16/arch/mips/bcm947xx/int-handler.S	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/int-handler.S	2006-03-21 09:31:00.000000000 +0100
-@@ -0,0 +1,48 @@
-+/*
-+ *  Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
-+ *
-+ *  This program is free software; you can redistribute  it and/or modify it
-+ *  under  the terms of  the GNU General  Public License as published by the
-+ *  Free Software Foundation;  either version 2 of the  License, or (at your
-+ *  option) any later version.
-+ *
-+ *  THIS  SOFTWARE  IS PROVIDED   ``AS  IS'' AND   ANY  EXPRESS OR IMPLIED
-+ *  WARRANTIES,   INCLUDING, BUT NOT  LIMITED  TO, THE IMPLIED WARRANTIES OF
-+ *  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN
-+ *  NO  EVENT  SHALL   THE AUTHOR  BE    LIABLE FOR ANY   DIRECT, INDIRECT,
-+ *  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-+ *  NOT LIMITED   TO, PROCUREMENT OF  SUBSTITUTE GOODS  OR SERVICES; LOSS OF
-+ *  USE, DATA,  OR PROFITS; OR  BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
-+ *  ANY THEORY OF LIABILITY, WHETHER IN  CONTRACT, STRICT LIABILITY, OR TORT
-+ *  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-+ *  THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-+ *
-+ *  You should have received a copy of the  GNU General Public License along
-+ *  with this program; if not, write  to the Free Software Foundation, Inc.,
-+ *  675 Mass Ave, Cambridge, MA 02139, USA.
-+ */
-+
-+#include <asm/asm.h>
-+#include <asm/mipsregs.h>
-+#include <asm/regdef.h>
-+#include <asm/stackframe.h>
-+
-+	.text
-+	.set	noreorder
-+	.set	noat
-+	.align	5
-+
-+	NESTED(bcm47xx_irq_handler, PT_SIZE, sp)
-+	SAVE_ALL
-+	CLI
-+
-+	.set	at
-+	.set    noreorder
-+
-+	jal	bcm47xx_irq_dispatch
-+	move	a0, sp
-+
-+	j	ret_from_irq
-+	nop
-+		
-+	END(bcm47xx_irq_handler)
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/irq.c linux-2.6.16-owrt/arch/mips/bcm947xx/irq.c
---- linux-2.6.16/arch/mips/bcm947xx/irq.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/irq.c	2006-03-21 09:31:00.000000000 +0100
-@@ -0,0 +1,67 @@
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/irq.c linux-2.6.17-owrt/arch/mips/bcm947xx/irq.c
+--- linux-2.6.17/arch/mips/bcm947xx/irq.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/irq.c	2006-06-18 15:32:25.000000000 +0200
+@@ -0,0 +1,64 @@
 +/*
 + *  Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
 + *
@@ -11195,9 +11143,7 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/irq.c linux-2.6.16-owrt/arch/mips/bcm9
 +#include <asm/irq.h>
 +#include <asm/irq_cpu.h>
 +
-+extern asmlinkage void bcm47xx_irq_handler(void);
-+
-+void bcm47xx_irq_dispatch(struct pt_regs *regs)
++void plat_irq_dispatch(struct pt_regs *regs)
 +{
 +	u32 cause;
 +
@@ -11221,22 +11167,21 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/irq.c linux-2.6.16-owrt/arch/mips/bcm9
 +
 +void __init arch_init_irq(void)
 +{
-+	set_except_vector(0, bcm47xx_irq_handler);
 +	mips_cpu_irq_init(0);
 +}
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/Makefile linux-2.6.16-owrt/arch/mips/bcm947xx/Makefile
---- linux-2.6.16/arch/mips/bcm947xx/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/Makefile	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/Makefile linux-2.6.17-owrt/arch/mips/bcm947xx/Makefile
+--- linux-2.6.17/arch/mips/bcm947xx/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/Makefile	2006-06-18 15:33:03.000000000 +0200
 @@ -0,0 +1,6 @@
 +#
 +# Makefile for the BCM47xx specific kernel interface routines
 +# under Linux.
 +#
 +
-+obj-y := irq.o int-handler.o prom.o setup.o time.o pci.o
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/pci.c linux-2.6.16-owrt/arch/mips/bcm947xx/pci.c
---- linux-2.6.16/arch/mips/bcm947xx/pci.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/pci.c	2006-03-21 09:31:00.000000000 +0100
++obj-y := irq.o prom.o setup.o time.o pci.o
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/pci.c linux-2.6.17-owrt/arch/mips/bcm947xx/pci.c
+--- linux-2.6.17/arch/mips/bcm947xx/pci.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/pci.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,215 @@
 +#include <linux/kernel.h>
 +#include <linux/init.h>
@@ -11453,9 +11398,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/pci.c linux-2.6.16-owrt/arch/mips/bcm9
 +}
 +
 +DECLARE_PCI_FIXUP_EARLY(PCI_ANY_ID, PCI_ANY_ID, bcm47xx_fixup_bridge);
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/prom.c linux-2.6.16-owrt/arch/mips/bcm947xx/prom.c
---- linux-2.6.16/arch/mips/bcm947xx/prom.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/prom.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/prom.c linux-2.6.17-owrt/arch/mips/bcm947xx/prom.c
+--- linux-2.6.17/arch/mips/bcm947xx/prom.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/prom.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,59 @@
 +/*
 + *  Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
@@ -11516,9 +11461,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/prom.c linux-2.6.16-owrt/arch/mips/bcm
 +{
 +	return 0;
 +}
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/setup.c linux-2.6.16-owrt/arch/mips/bcm947xx/setup.c
---- linux-2.6.16/arch/mips/bcm947xx/setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/setup.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/setup.c linux-2.6.17-owrt/arch/mips/bcm947xx/setup.c
+--- linux-2.6.17/arch/mips/bcm947xx/setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/setup.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,158 @@
 +/*
 + *  Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
@@ -11678,9 +11623,9 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/setup.c linux-2.6.16-owrt/arch/mips/bc
 +EXPORT_SYMBOL(sbh);
 +EXPORT_SYMBOL(sbh_lock);
 +EXPORT_SYMBOL(boardflags);
-diff -Nur linux-2.6.16/arch/mips/bcm947xx/time.c linux-2.6.16-owrt/arch/mips/bcm947xx/time.c
---- linux-2.6.16/arch/mips/bcm947xx/time.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/bcm947xx/time.c	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/bcm947xx/time.c linux-2.6.17-owrt/arch/mips/bcm947xx/time.c
+--- linux-2.6.17/arch/mips/bcm947xx/time.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/bcm947xx/time.c	2006-06-18 15:29:23.000000000 +0200
 @@ -0,0 +1,59 @@
 +/*
 + *  Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
@@ -11741,10 +11686,10 @@ diff -Nur linux-2.6.16/arch/mips/bcm947xx/time.c linux-2.6.16-owrt/arch/mips/bcm
 +	/* Enable the timer interrupt */
 +	setup_irq(7, irq);
 +}
-diff -Nur linux-2.6.16/arch/mips/Kconfig linux-2.6.16-owrt/arch/mips/Kconfig
---- linux-2.6.16/arch/mips/Kconfig	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/Kconfig	2006-03-21 09:31:00.000000000 +0100
-@@ -244,6 +244,17 @@
+diff -Nur linux-2.6.17/arch/mips/Kconfig linux-2.6.17-owrt/arch/mips/Kconfig
+--- linux-2.6.17/arch/mips/Kconfig	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/Kconfig	2006-06-18 15:29:23.000000000 +0200
+@@ -245,6 +245,17 @@
  	 Members include the Acer PICA, MIPS Magnum 4000, MIPS Millenium and
  	 Olivetti M700-10 workstations.
  
@@ -11760,12 +11705,12 @@ diff -Nur linux-2.6.16/arch/mips/Kconfig linux-2.6.16-owrt/arch/mips/Kconfig
 +	 Support for BCM947xx based boards
 +
  config LASAT
- 	bool "Support for LASAT Networks platforms"
+ 	bool "LASAT Networks platforms"
  	select DMA_NONCOHERENT
-diff -Nur linux-2.6.16/arch/mips/kernel/cpu-probe.c linux-2.6.16-owrt/arch/mips/kernel/cpu-probe.c
---- linux-2.6.16/arch/mips/kernel/cpu-probe.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/kernel/cpu-probe.c	2006-03-21 09:32:48.000000000 +0100
-@@ -678,6 +678,28 @@
+diff -Nur linux-2.6.17/arch/mips/kernel/cpu-probe.c linux-2.6.17-owrt/arch/mips/kernel/cpu-probe.c
+--- linux-2.6.17/arch/mips/kernel/cpu-probe.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/kernel/cpu-probe.c	2006-06-18 15:29:23.000000000 +0200
+@@ -691,6 +691,28 @@
  }
  
  
@@ -11794,7 +11739,7 @@ diff -Nur linux-2.6.16/arch/mips/kernel/cpu-probe.c linux-2.6.16-owrt/arch/mips/
  __init void cpu_probe(void)
  {
  	struct cpuinfo_mips *c = &current_cpu_data;
-@@ -700,6 +722,9 @@
+@@ -713,6 +735,9 @@
  	case PRID_COMP_SIBYTE:
  		cpu_probe_sibyte(c);
  		break;
@@ -11804,12 +11749,12 @@ diff -Nur linux-2.6.16/arch/mips/kernel/cpu-probe.c linux-2.6.16-owrt/arch/mips/
  	case PRID_COMP_SANDCRAFT:
  		cpu_probe_sandcraft(c);
  		break;
-diff -Nur linux-2.6.16/arch/mips/kernel/head.S linux-2.6.16-owrt/arch/mips/kernel/head.S
---- linux-2.6.16/arch/mips/kernel/head.S	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/kernel/head.S	2006-03-21 09:31:00.000000000 +0100
-@@ -107,6 +107,11 @@
- #endif
- 	.endm
+diff -Nur linux-2.6.17/arch/mips/kernel/head.S linux-2.6.17-owrt/arch/mips/kernel/head.S
+--- linux-2.6.17/arch/mips/kernel/head.S	2006-06-18 12:54:51.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/kernel/head.S	2006-06-18 15:29:23.000000000 +0200
+@@ -133,6 +133,11 @@
+ 	j kernel_entry
+ 	nop
  
 +#ifdef CONFIG_BCM4710
 +#undef eret
@@ -11819,10 +11764,10 @@ diff -Nur linux-2.6.16/arch/mips/kernel/head.S linux-2.6.16-owrt/arch/mips/kerne
  	/*
  	 * Reserved space for exception handlers.
  	 * Necessary for machines which link their kernels at KSEG0.
-diff -Nur linux-2.6.16/arch/mips/kernel/proc.c linux-2.6.16-owrt/arch/mips/kernel/proc.c
---- linux-2.6.16/arch/mips/kernel/proc.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/kernel/proc.c	2006-03-21 09:31:00.000000000 +0100
-@@ -82,6 +82,8 @@
+diff -Nur linux-2.6.17/arch/mips/kernel/proc.c linux-2.6.17-owrt/arch/mips/kernel/proc.c
+--- linux-2.6.17/arch/mips/kernel/proc.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/kernel/proc.c	2006-06-18 15:29:23.000000000 +0200
+@@ -84,6 +84,8 @@
  	[CPU_VR4181]	= "NEC VR4181",
  	[CPU_VR4181A]	= "NEC VR4181A",
  	[CPU_SR71000]	= "Sandcraft SR71000",
@@ -11831,10 +11776,10 @@ diff -Nur linux-2.6.16/arch/mips/kernel/proc.c linux-2.6.16-owrt/arch/mips/kerne
  	[CPU_PR4450]	= "Philips PR4450",
  };
  
-diff -Nur linux-2.6.16/arch/mips/Makefile linux-2.6.16-owrt/arch/mips/Makefile
---- linux-2.6.16/arch/mips/Makefile	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/Makefile	2006-03-21 09:31:00.000000000 +0100
-@@ -710,6 +710,13 @@
+diff -Nur linux-2.6.17/arch/mips/Makefile linux-2.6.17-owrt/arch/mips/Makefile
+--- linux-2.6.17/arch/mips/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/Makefile	2006-06-18 15:29:23.000000000 +0200
+@@ -565,6 +565,13 @@
  load-$(CONFIG_SIBYTE_BIGSUR)	:= 0xffffffff80100000
  
  #
@@ -11848,10 +11793,10 @@ diff -Nur linux-2.6.16/arch/mips/Makefile linux-2.6.16-owrt/arch/mips/Makefile
  # SNI RM200 PCI
  #
  core-$(CONFIG_SNI_RM200_PCI)	+= arch/mips/sni/
-diff -Nur linux-2.6.16/arch/mips/mm/tlbex.c linux-2.6.16-owrt/arch/mips/mm/tlbex.c
---- linux-2.6.16/arch/mips/mm/tlbex.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/arch/mips/mm/tlbex.c	2006-03-21 09:31:00.000000000 +0100
-@@ -858,6 +858,8 @@
+diff -Nur linux-2.6.17/arch/mips/mm/tlbex.c linux-2.6.17-owrt/arch/mips/mm/tlbex.c
+--- linux-2.6.17/arch/mips/mm/tlbex.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/mm/tlbex.c	2006-06-18 15:29:23.000000000 +0200
+@@ -882,6 +882,8 @@
  	case CPU_4KSC:
  	case CPU_20KC:
  	case CPU_25KF:
@@ -11860,9 +11805,9 @@ diff -Nur linux-2.6.16/arch/mips/mm/tlbex.c linux-2.6.16-owrt/arch/mips/mm/tlbex
  		tlbw(p);
  		break;
  
-diff -Nur linux-2.6.16/include/asm-mips/bootinfo.h linux-2.6.16-owrt/include/asm-mips/bootinfo.h
---- linux-2.6.16/include/asm-mips/bootinfo.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/bootinfo.h	2006-03-21 09:31:00.000000000 +0100
+diff -Nur linux-2.6.17/include/asm-mips/bootinfo.h linux-2.6.17-owrt/include/asm-mips/bootinfo.h
+--- linux-2.6.17/include/asm-mips/bootinfo.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/bootinfo.h	2006-06-18 15:29:23.000000000 +0200
 @@ -218,6 +218,12 @@
  #define MACH_GROUP_TITAN       22	/* PMC-Sierra Titan		*/
  #define  MACH_TITAN_YOSEMITE	1	/* PMC-Sierra Yosemite		*/
@@ -11876,10 +11821,10 @@ diff -Nur linux-2.6.16/include/asm-mips/bootinfo.h linux-2.6.16-owrt/include/asm
  #define CL_SIZE			COMMAND_LINE_SIZE
  
  const char *get_system_type(void);
-diff -Nur linux-2.6.16/include/asm-mips/cpu.h linux-2.6.16-owrt/include/asm-mips/cpu.h
---- linux-2.6.16/include/asm-mips/cpu.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/asm-mips/cpu.h	2006-03-21 09:31:00.000000000 +0100
-@@ -102,6 +102,13 @@
+diff -Nur linux-2.6.17/include/asm-mips/cpu.h linux-2.6.17-owrt/include/asm-mips/cpu.h
+--- linux-2.6.17/include/asm-mips/cpu.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/cpu.h	2006-06-18 15:30:53.000000000 +0200
+@@ -104,6 +104,13 @@
  #define PRID_IMP_SR71000        0x0400
  
  /*
@@ -11893,21 +11838,21 @@ diff -Nur linux-2.6.16/include/asm-mips/cpu.h linux-2.6.16-owrt/include/asm-mips
   * Definitions for 7:0 on legacy processors
   */
  
-@@ -196,7 +203,9 @@
- #define CPU_34K			60
- #define CPU_PR4450		61
+@@ -200,7 +207,9 @@
  #define CPU_SB1A		62
--#define CPU_LAST		62
-+#define CPU_BCM3302		63
-+#define CPU_BCM4710		64
-+#define CPU_LAST		64
+ #define CPU_74K			63
+ #define CPU_R14000		64
+-#define CPU_LAST		64
++#define CPU_BCM3302		65
++#define CPU_BCM4710		66
++#define CPU_LAST		66
  
  /*
   * ISA Level encodings
-diff -Nur linux-2.6.16/include/linux/pci_ids.h linux-2.6.16-owrt/include/linux/pci_ids.h
---- linux-2.6.16/include/linux/pci_ids.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/linux/pci_ids.h	2006-03-21 09:31:00.000000000 +0100
-@@ -1885,6 +1885,7 @@
+diff -Nur linux-2.6.17/include/linux/pci_ids.h linux-2.6.17-owrt/include/linux/pci_ids.h
+--- linux-2.6.17/include/linux/pci_ids.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/linux/pci_ids.h	2006-06-18 15:29:23.000000000 +0200
+@@ -1906,6 +1906,7 @@
  #define PCI_DEVICE_ID_TIGON3_5901_2	0x170e
  #define PCI_DEVICE_ID_BCM4401		0x4401
  #define PCI_DEVICE_ID_BCM4401B0		0x4402
diff --git a/target/linux/brcm-2.6/patches/003-bcm4710_cache_fixes.patch b/target/linux/brcm-2.6/patches/003-bcm4710_cache_fixes.patch
index eaa523126..c8a08eb92 100644
--- a/target/linux/brcm-2.6/patches/003-bcm4710_cache_fixes.patch
+++ b/target/linux/brcm-2.6/patches/003-bcm4710_cache_fixes.patch
@@ -1,7 +1,7 @@
-diff -urN linux.old/arch/mips/kernel/genex.S linux.dev/arch/mips/kernel/genex.S
---- linux.old/arch/mips/kernel/genex.S	2006-03-20 06:53:29.000000000 +0100
-+++ linux.dev/arch/mips/kernel/genex.S	2006-03-21 12:19:26.000000000 +0100
-@@ -72,6 +72,10 @@
+diff -Nur linux-2.6.17/arch/mips/kernel/genex.S linux-2.6.17-owrt/arch/mips/kernel/genex.S
+--- linux-2.6.17/arch/mips/kernel/genex.S	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/kernel/genex.S	2006-06-18 15:36:58.000000000 +0200
+@@ -73,6 +73,10 @@
  	.set	push
  	.set	mips3
  	.set	noat
@@ -12,9 +12,9 @@ diff -urN linux.old/arch/mips/kernel/genex.S linux.dev/arch/mips/kernel/genex.S
  	mfc0	k1, CP0_CAUSE
  	li	k0, 31<<2
  	andi	k1, k1, 0x7c
-diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
---- linux.old/arch/mips/mm/c-r4k.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux.dev/arch/mips/mm/c-r4k.c	2006-03-21 12:19:26.000000000 +0100
+diff -Nur linux-2.6.17/arch/mips/mm/c-r4k.c linux-2.6.17-owrt/arch/mips/mm/c-r4k.c
+--- linux-2.6.17/arch/mips/mm/c-r4k.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/mm/c-r4k.c	2006-06-18 15:36:58.000000000 +0200
 @@ -14,6 +14,12 @@
  #include <linux/mm.h>
  #include <linux/bitops.h>
@@ -28,17 +28,17 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  #include <asm/bcache.h>
  #include <asm/bootinfo.h>
  #include <asm/cache.h>
-@@ -29,6 +35,9 @@
- #include <asm/war.h>
+@@ -30,6 +36,9 @@
  #include <asm/cacheflush.h> /* for run_uncached() */
  
+ 
 +/* For enabling BCM4710 cache workarounds */
 +int bcm4710 = 0;
 +
  /*
-  * Must die.
-  */
-@@ -73,7 +82,9 @@
+  * Special Variant of smp_call_function for use by cache functions:
+  *
+@@ -94,7 +103,9 @@
  {
  	unsigned long  dc_lsize = cpu_dcache_line_size();
  
@@ -49,7 +49,7 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  		r4k_blast_dcache_page = blast_dcache16_page;
  	else if (dc_lsize == 32)
  		r4k_blast_dcache_page = r4k_blast_dcache_page_dc32;
-@@ -85,7 +96,9 @@
+@@ -106,7 +117,9 @@
  {
  	unsigned long dc_lsize = cpu_dcache_line_size();
  
@@ -60,7 +60,7 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  		r4k_blast_dcache_page_indexed = blast_dcache16_page_indexed;
  	else if (dc_lsize == 32)
  		r4k_blast_dcache_page_indexed = blast_dcache32_page_indexed;
-@@ -97,7 +110,9 @@
+@@ -118,7 +131,9 @@
  {
  	unsigned long dc_lsize = cpu_dcache_line_size();
  
@@ -71,7 +71,7 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  		r4k_blast_dcache = blast_dcache16;
  	else if (dc_lsize == 32)
  		r4k_blast_dcache = blast_dcache32;
-@@ -660,6 +675,8 @@
+@@ -683,6 +698,8 @@
  	unsigned long addr = (unsigned long) arg;
  
  	R4600_HIT_CACHEOP_WAR_IMPL;
@@ -80,7 +80,7 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  	protected_writeback_dcache_line(addr & ~(dc_lsize - 1));
  	if (!cpu_icache_snoops_remote_store && scache_size)
  		protected_writeback_scache_line(addr & ~(sc_lsize - 1));
-@@ -1136,6 +1153,16 @@
+@@ -1189,6 +1206,16 @@
  static inline void coherency_setup(void)
  {
  	change_c0_config(CONF_CM_CMASK, CONF_CM_DEFAULT);
@@ -97,7 +97,7 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  
  	/*
  	 * c0_status.cu=0 specifies that updates by the sc instruction use
-@@ -1165,6 +1192,15 @@
+@@ -1227,6 +1254,15 @@
  
  	/* Default cache error handler for R4000 and R5000 family */
  	set_uncached_handler (0x100, &except_vec2_generic, 0x80);
@@ -113,10 +113,10 @@ diff -urN linux.old/arch/mips/mm/c-r4k.c linux.dev/arch/mips/mm/c-r4k.c
  
  	probe_pcache();
  	setup_scache();
-diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
---- linux.old/arch/mips/mm/tlbex.c	2006-03-21 12:12:38.000000000 +0100
-+++ linux.dev/arch/mips/mm/tlbex.c	2006-03-21 12:19:26.000000000 +0100
-@@ -28,6 +28,10 @@
+diff -Nur linux-2.6.17/arch/mips/mm/tlbex.c linux-2.6.17-owrt/arch/mips/mm/tlbex.c
+--- linux-2.6.17/arch/mips/mm/tlbex.c	2006-06-18 15:34:19.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/mm/tlbex.c	2006-06-18 15:36:58.000000000 +0200
+@@ -38,6 +38,10 @@
  
  /* #define DEBUG_TLB */
  
@@ -127,7 +127,7 @@ diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
  static __init int __attribute__((unused)) r45k_bvahwbug(void)
  {
  	/* XXX: We should probe for the presence of this bug, but we don't. */
-@@ -1152,6 +1156,12 @@
+@@ -1184,6 +1188,12 @@
  	memset(relocs, 0, sizeof(relocs));
  	memset(final_handler, 0, sizeof(final_handler));
  
@@ -140,12 +140,12 @@ diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
  	/*
  	 * create the plain linear handler
  	 */
-diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kcache.h
---- linux.old/include/asm-mips/r4kcache.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux.dev/include/asm-mips/r4kcache.h	2006-03-21 18:40:32.000000000 +0100
-@@ -16,6 +16,18 @@
- #include <asm/cacheops.h>
+diff -Nur linux-2.6.17/include/asm-mips/r4kcache.h linux-2.6.17-owrt/include/asm-mips/r4kcache.h
+--- linux-2.6.17/include/asm-mips/r4kcache.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/r4kcache.h	2006-06-18 15:56:57.000000000 +0200
+@@ -17,6 +17,18 @@
  #include <asm/cpu-features.h>
+ #include <asm/mipsmtregs.h>
  
 +#ifdef CONFIG_BCM4710
 +#define BCM4710_DUMMY_RREG() (((sbconfig_t *)(KSEG1ADDR(SB_ENUM_BASE + SBCONFIGOFF)))->sbimstate)
@@ -162,29 +162,31 @@ diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kca
  /*
   * This macro return a properly sign-extended address suitable as base address
   * for indexed cache operations.  Two issues here:
-@@ -46,6 +58,7 @@
- 
+@@ -150,6 +162,7 @@
  static inline void flush_dcache_line_indexed(unsigned long addr)
  {
+ 	__dflush_prologue
 +	BCM4710_DUMMY_RREG();
  	cache_op(Index_Writeback_Inv_D, addr);
+ 	__dflush_epilogue
  }
- 
-@@ -61,11 +74,13 @@
- 
+@@ -169,6 +182,7 @@
  static inline void flush_dcache_line(unsigned long addr)
  {
+ 	__dflush_prologue
 +	BCM4710_DUMMY_RREG();
  	cache_op(Hit_Writeback_Inv_D, addr);
+ 	__dflush_epilogue
  }
- 
+@@ -176,6 +190,7 @@
  static inline void invalidate_dcache_line(unsigned long addr)
  {
+ 	__dflush_prologue
 +	BCM4710_DUMMY_RREG();
  	cache_op(Hit_Invalidate_D, addr);
+ 	__dflush_epilogue
  }
- 
-@@ -97,6 +112,7 @@
+@@ -208,6 +223,7 @@
   */
  static inline void protected_flush_icache_line(unsigned long addr)
  {
@@ -192,7 +194,7 @@ diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kca
  	protected_cache_op(Hit_Invalidate_I, addr);
  }
  
-@@ -108,6 +124,7 @@
+@@ -219,6 +235,7 @@
   */
  static inline void protected_writeback_dcache_line(unsigned long addr)
  {
@@ -200,7 +202,7 @@ diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kca
  	protected_cache_op(Hit_Writeback_Inv_D, addr);
  }
  
-@@ -228,8 +245,52 @@
+@@ -339,8 +356,52 @@
  		: "r" (base),						\
  		  "i" (op));
  
@@ -254,30 +256,33 @@ diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kca
  static inline void blast_##pfx##cache##lsize(void)			\
  {									\
  	unsigned long start = INDEX_BASE;				\
-@@ -239,6 +300,7 @@
- 	                       current_cpu_data.desc.waybit;		\
- 	unsigned long ws, addr;						\
+@@ -352,6 +413,7 @@
+ 									\
+ 	__##pfx##flush_prologue						\
  									\
 +	war								\
  	for (ws = 0; ws < ws_end; ws += ws_inc)				\
  		for (addr = start; addr < end; addr += lsize * 32)	\
  			cache##lsize##_unroll32(addr|ws,indexop);	\
-@@ -249,6 +311,7 @@
- 	unsigned long start = page;					\
- 	unsigned long end = page + PAGE_SIZE;				\
+@@ -366,6 +428,7 @@
+ 									\
+ 	__##pfx##flush_prologue						\
  									\
 +	war								\
  	do {								\
  		cache##lsize##_unroll32(start,hitop);			\
  		start += lsize * 32;					\
-@@ -265,29 +328,31 @@
+@@ -384,6 +447,8 @@
  	                       current_cpu_data.desc.waybit;		\
  	unsigned long ws, addr;						\
  									\
 +	war								\
++									\
+ 	__##pfx##flush_prologue						\
+ 									\
  	for (ws = 0; ws < ws_end; ws += ws_inc)				\
- 		for (addr = start; addr < end; addr += lsize * 32)	\
- 			cache##lsize##_unroll32(addr|ws,indexop);	\
+@@ -393,24 +458,25 @@
+ 	__##pfx##flush_epilogue						\
  }
  
 -__BUILD_BLAST_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 16)
@@ -309,11 +314,11 @@ diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kca
  	unsigned long addr = start & ~(lsize - 1);			\
  	unsigned long aend = (end - 1) & ~(lsize - 1);			\
 +	war								\
- 	while (1) {							\
- 		prot##cache_op(hitop, addr);				\
- 		if (addr == aend)					\
-@@ -296,12 +361,12 @@
- 	}								\
+ 									\
+ 	__##pfx##flush_prologue						\
+ 									\
+@@ -424,13 +490,13 @@
+ 	__##pfx##flush_epilogue						\
  }
  
 -__BUILD_BLAST_CACHE_RANGE(d, dcache, Hit_Writeback_Inv_D, protected_)
@@ -328,13 +333,15 @@ diff -urN linux.old/include/asm-mips/r4kcache.h linux.dev/include/asm-mips/r4kca
 +__BUILD_BLAST_CACHE_RANGE(s, scache, Hit_Writeback_Inv_SD, , )
  /* blast_inv_dcache_range */
 -__BUILD_BLAST_CACHE_RANGE(inv_d, dcache, Hit_Invalidate_D, )
+-__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD, )
 +__BUILD_BLAST_CACHE_RANGE(inv_d, dcache, Hit_Invalidate_D, , )
++__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD, , )
  
  #endif /* _ASM_R4KCACHE_H */
-diff -urN linux.old/include/asm-mips/stackframe.h linux.dev/include/asm-mips/stackframe.h
---- linux.old/include/asm-mips/stackframe.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux.dev/include/asm-mips/stackframe.h	2006-03-21 12:19:26.000000000 +0100
-@@ -285,6 +285,10 @@
+diff -Nur linux-2.6.17/include/asm-mips/stackframe.h linux-2.6.17-owrt/include/asm-mips/stackframe.h
+--- linux-2.6.17/include/asm-mips/stackframe.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/stackframe.h	2006-06-18 15:36:58.000000000 +0200
+@@ -361,6 +361,10 @@
  		.macro	RESTORE_SP_AND_RET
  		LONG_L	sp, PT_R29(sp)
  		.set	mips3
diff --git a/target/linux/brcm-2.6/patches/004-b44_bcm47xx_support.patch b/target/linux/brcm-2.6/patches/004-b44_bcm47xx_support.patch
index b24480763..15e4297a8 100644
--- a/target/linux/brcm-2.6/patches/004-b44_bcm47xx_support.patch
+++ b/target/linux/brcm-2.6/patches/004-b44_bcm47xx_support.patch
@@ -1,6 +1,6 @@
-diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
---- linux.old/drivers/net/b44.c	2006-01-16 20:35:09.203794500 +0100
-+++ linux.dev/drivers/net/b44.c	2006-01-16 22:20:45.631180500 +0100
+diff -Nur linux-2.6.17/drivers/net/b44.c linux-2.6.17-owrt/drivers/net/b44.c
+--- linux-2.6.17/drivers/net/b44.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/net/b44.c	2006-06-18 16:24:14.000000000 +0200
 @@ -1,7 +1,9 @@
 -/* b44.c: Broadcom 4400 device driver.
 +/* b44.c: Broadcom 4400/47xx device driver.
@@ -10,12 +10,12 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
 + * Copyright (C) 2004 Pekka Pietikainen (pp@ee.oulu.fi)
 + * Copyright (C) 2004 Florian Schirmer (jolt@tuxbox.org)
 + * Copyright (C) 2006 Felix Fietkau (nbd@openwrt.org)
+  * Copyright (C) 2006 Broadcom Corporation.
   *
   * Distribute under GPL.
-  */
-@@ -31,6 +33,28 @@
- #define DRV_MODULE_VERSION	"0.97"
- #define DRV_MODULE_RELDATE	"Nov 30, 2005"
+@@ -32,6 +34,28 @@
+ #define DRV_MODULE_VERSION	"1.00"
+ #define DRV_MODULE_RELDATE	"Apr 7, 2006"
  
 +#ifdef CONFIG_BCM947XX
 +extern char *nvram_get(char *name);
@@ -42,7 +42,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  #define B44_DEF_MSG_ENABLE	  \
  	(NETIF_MSG_DRV		| \
  	 NETIF_MSG_PROBE	| \
-@@ -77,8 +101,8 @@
+@@ -78,8 +102,8 @@
  static char version[] __devinitdata =
  	DRV_MODULE_NAME ".c:v" DRV_MODULE_VERSION " (" DRV_MODULE_RELDATE ")\n";
  
@@ -53,7 +53,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  MODULE_LICENSE("GPL");
  MODULE_VERSION(DRV_MODULE_VERSION);
  
-@@ -93,6 +117,10 @@
+@@ -94,6 +118,10 @@
  	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
  	{ PCI_VENDOR_ID_BROADCOM, PCI_DEVICE_ID_BCM4401B1,
  	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0UL },
@@ -64,7 +64,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	{ }	/* terminate list with empty entry */
  };
  
-@@ -131,17 +159,6 @@
+@@ -132,17 +160,6 @@
  	                              dma_desc_sync_size, dir);
  }
  
@@ -73,7 +73,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
 -	return readl(bp->regs + reg);
 -}
 -
--static inline void bw32(const struct b44 *bp, 
+-static inline void bw32(const struct b44 *bp,
 -			unsigned long reg, unsigned long val)
 -{
 -	writel(val, bp->regs + reg);
@@ -82,7 +82,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  static int b44_wait_bit(struct b44 *bp, unsigned long reg,
  			u32 bit, unsigned long timeout, const int clear)
  {
-@@ -268,6 +285,10 @@
+@@ -269,6 +286,10 @@
  		break;
  	};
  #endif
@@ -93,7 +93,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	return 0;
  }
  
-@@ -277,6 +298,30 @@
+@@ -278,6 +299,30 @@
  		== SBTMSLOW_CLOCK);
  }
  
@@ -124,7 +124,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  static void __b44_cam_write(struct b44 *bp, unsigned char *data, int index)
  {
  	u32 val;
-@@ -313,14 +358,14 @@
+@@ -314,14 +359,14 @@
  	bw32(bp, B44_IMASK, bp->imask);
  }
  
@@ -141,7 +141,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  			     (reg << MDIO_DATA_RA_SHIFT) |
  			     (MDIO_TA_VALID << MDIO_DATA_TA_SHIFT)));
  	err = b44_wait_bit(bp, B44_EMAC_ISTAT, EMAC_INT_MII, 100, 0);
-@@ -329,18 +374,34 @@
+@@ -330,18 +375,34 @@
  	return err;
  }
  
@@ -178,7 +178,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  /* miilib interface */
  /* FIXME FIXME: phy_id is ignored, bp->phy_addr use is unconditional
   * due to code existing before miilib use was added to this driver.
-@@ -369,6 +430,8 @@
+@@ -370,6 +431,8 @@
  	u32 val;
  	int err;
  
@@ -187,7 +187,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	err = b44_writephy(bp, MII_BMCR, BMCR_RESET);
  	if (err)
  		return err;
-@@ -439,6 +502,22 @@
+@@ -433,6 +496,22 @@
  	u32 val;
  	int err;
  
@@ -210,7 +210,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	if ((err = b44_readphy(bp, B44_MII_ALEDCTRL, &val)) != 0)
  		goto out;
  	if ((err = b44_writephy(bp, B44_MII_ALEDCTRL,
-@@ -534,6 +613,19 @@
+@@ -528,6 +607,19 @@
  {
  	u32 bmsr, aux;
  
@@ -230,7 +230,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	if (!b44_readphy(bp, MII_BMSR, &bmsr) &&
  	    !b44_readphy(bp, B44_MII_AUXCTRL, &aux) &&
  	    (bmsr != 0xffff)) {
-@@ -1281,9 +1373,10 @@
+@@ -1282,9 +1374,10 @@
  		bw32(bp, B44_DMARX_CTRL, 0);
  		bp->rx_prod = bp->rx_cons = 0;
  	} else {
@@ -244,7 +244,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	}
  
  	ssb_core_reset(bp);
-@@ -1291,8 +1384,14 @@
+@@ -1292,8 +1385,14 @@
  	b44_clear_stats(bp);
  
  	/* Make PHY accessible. */
@@ -260,7 +260,7 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	br32(bp, B44_MDIO_CTRL);
  
  	if (!(br32(bp, B44_DEVCTRL) & DEVCTRL_IPP)) {
-@@ -1834,18 +1933,297 @@
+@@ -1837,18 +1936,297 @@
  	.get_perm_addr		= ethtool_op_get_perm_addr,
  };
  
@@ -562,32 +562,18 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  out:
  	return err;
  }
-@@ -1865,22 +2243,55 @@
+@@ -1868,27 +2246,60 @@
  static int __devinit b44_get_invariants(struct b44 *bp)
  {
  	u8 eeprom[128];
 -	int err;
--
--	err = b44_read_eeprom(bp, &eeprom[0]);
--	if (err)
--		goto out;
--
--	bp->dev->dev_addr[0] = eeprom[79];
--	bp->dev->dev_addr[1] = eeprom[78];
--	bp->dev->dev_addr[2] = eeprom[81];
--	bp->dev->dev_addr[3] = eeprom[80];
--	bp->dev->dev_addr[4] = eeprom[83];
--	bp->dev->dev_addr[5] = eeprom[82];
--	memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len);
--
--	bp->phy_addr = eeprom[90] & 0x1f;
 +	u8 buf[32];
 +	int err = 0;
 +	unsigned long flags;
 +
 +#ifdef CONFIG_BCM947XX
 +	if (bp->pdev->device == PCI_DEVICE_ID_BCM4713) {
-+		/* 
++		/*
 +		 * BCM47xx boards don't have a EEPROM. The MAC is stored in
 +		 * a NVRAM area somewhere in the flash memory.
 +		 */
@@ -605,7 +591,10 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
 +			spin_unlock_irqrestore(&bp->lock, flags);
 +		}
  
-+		/* 
+-	err = b44_read_eeprom(bp, &eeprom[0]);
+-	if (err)
+-		goto out;
++		/*
 +		 * BCM47xx boards don't have a PHY. Usually there is a switch
 +		 * chip with multiple PHYs connected to the PHY port.
 +		 */
@@ -617,37 +606,50 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
 +		err = b44_read_eeprom(bp, &eeprom[0]);
 +		if (err)
 +			goto out;
-+	
+ 
+-	bp->dev->dev_addr[0] = eeprom[79];
+-	bp->dev->dev_addr[1] = eeprom[78];
+-	bp->dev->dev_addr[2] = eeprom[81];
+-	bp->dev->dev_addr[3] = eeprom[80];
+-	bp->dev->dev_addr[4] = eeprom[83];
+-	bp->dev->dev_addr[5] = eeprom[82];
 +		bp->dev->dev_addr[0] = eeprom[79];
 +		bp->dev->dev_addr[1] = eeprom[78];
 +		bp->dev->dev_addr[2] = eeprom[81];
 +		bp->dev->dev_addr[3] = eeprom[80];
 +		bp->dev->dev_addr[4] = eeprom[83];
 +		bp->dev->dev_addr[5] = eeprom[82];
+ 
+-	if (!is_valid_ether_addr(&bp->dev->dev_addr[0])){
+-		printk(KERN_ERR PFX "Invalid MAC address found in EEPROM\n");
+-		return -EINVAL;
+-	}
++		if (!is_valid_ether_addr(&bp->dev->dev_addr[0])){
++			printk(KERN_ERR PFX "Invalid MAC address found in EEPROM\n");
++			return -EINVAL;
++		}
+ 
+-	memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len);
 +		memcpy(bp->dev->perm_addr, bp->dev->dev_addr, bp->dev->addr_len);
-+	
+ 
+-	bp->phy_addr = eeprom[90] & 0x1f;
 +		bp->phy_addr = eeprom[90] & 0x1f;
 +		bp->dma_offset = SB_PCI_DMA;
 +	}
-+	
+ 
  	/* With this, plus the rx_header prepended to the data by the
  	 * hardware, we'll land the ethernet header on a 2-byte boundary.
- 	 */
-@@ -1889,11 +2300,7 @@
+@@ -1898,7 +2309,6 @@
  	bp->imask = IMASK_DEF;
  
  	bp->core_unit = ssb_core_unit(bp);
 -	bp->dma_offset = SB_PCI_DMA;
  
--	/* XXX - really required? 
--	   bp->flags |= B44_FLAG_BUGGY_TXPTR;
--         */
- out:
- 	return err;
- }
-@@ -2032,11 +2439,17 @@
- 
- 	pci_save_state(bp->pdev);
+ 	/* XXX - really required?
+ 	   bp->flags |= B44_FLAG_BUGGY_TXPTR;
+@@ -2048,11 +2458,17 @@
+ 	 */
+ 	b44_chip_reset(bp);
  
 -	printk(KERN_INFO "%s: Broadcom 4400 10/100BaseT Ethernet ", dev->name);
 +	printk(KERN_INFO "%s: Broadcom %s 10/100BaseT Ethernet ", dev->name,
@@ -664,9 +666,9 @@ diff -urN linux.old/drivers/net/b44.c linux.dev/drivers/net/b44.c
  	return 0;
  
  err_out_iounmap:
-diff -urN linux.old/drivers/net/b44.h linux.dev/drivers/net/b44.h
---- linux.old/drivers/net/b44.h	2006-01-16 20:35:09.255797750 +0100
-+++ linux.dev/drivers/net/b44.h	2006-01-16 20:30:30.566380750 +0100
+diff -Nur linux-2.6.17/drivers/net/b44.h linux-2.6.17-owrt/drivers/net/b44.h
+--- linux-2.6.17/drivers/net/b44.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/net/b44.h	2006-06-18 16:01:10.000000000 +0200
 @@ -292,6 +292,10 @@
  #define SSB_PCI_MASK1		0xfc000000
  #define SSB_PCI_MASK2		0xc0000000
diff --git a/target/linux/generic-2.6/patches/100-netfilter_layer7_2.1nbd.patch b/target/linux/generic-2.6/patches/100-netfilter_layer7_2.1nbd.patch
index ed8009cc6..ec3929bf1 100644
--- a/target/linux/generic-2.6/patches/100-netfilter_layer7_2.1nbd.patch
+++ b/target/linux/generic-2.6/patches/100-netfilter_layer7_2.1nbd.patch
@@ -1,7 +1,7 @@
-diff -Nur linux-2.6.16/include/linux/netfilter_ipv4/ip_conntrack.h linux-2.6.16-owrt/include/linux/netfilter_ipv4/ip_conntrack.h
---- linux-2.6.16/include/linux/netfilter_ipv4/ip_conntrack.h	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/include/linux/netfilter_ipv4/ip_conntrack.h	2006-03-20 13:48:06.000000000 +0100
-@@ -122,6 +122,15 @@
+diff -Nur linux-2.6.17/include/linux/netfilter_ipv4/ip_conntrack.h linux-2.6.17-owrt/include/linux/netfilter_ipv4/ip_conntrack.h
+--- linux-2.6.17/include/linux/netfilter_ipv4/ip_conntrack.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/linux/netfilter_ipv4/ip_conntrack.h	2006-06-18 12:29:04.000000000 +0200
+@@ -124,6 +124,15 @@
  	/* Traversed often, so hopefully in different cacheline to top */
  	/* These are my tuples; original and reply */
  	struct ip_conntrack_tuple_hash tuplehash[IP_CT_DIR_MAX];
@@ -17,9 +17,9 @@ diff -Nur linux-2.6.16/include/linux/netfilter_ipv4/ip_conntrack.h linux-2.6.16-
  };
  
  struct ip_conntrack_expect
-diff -Nur linux-2.6.16/include/linux/netfilter_ipv4/ipt_layer7.h linux-2.6.16-owrt/include/linux/netfilter_ipv4/ipt_layer7.h
---- linux-2.6.16/include/linux/netfilter_ipv4/ipt_layer7.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/include/linux/netfilter_ipv4/ipt_layer7.h	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/include/linux/netfilter_ipv4/ipt_layer7.h linux-2.6.17-owrt/include/linux/netfilter_ipv4/ipt_layer7.h
+--- linux-2.6.17/include/linux/netfilter_ipv4/ipt_layer7.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/linux/netfilter_ipv4/ipt_layer7.h	2006-06-18 12:29:04.000000000 +0200
 @@ -0,0 +1,27 @@
 +/* 
 +  By Matthew Strait <quadong@users.sf.net>, Dec 2003.
@@ -48,9 +48,9 @@ diff -Nur linux-2.6.16/include/linux/netfilter_ipv4/ipt_layer7.h linux-2.6.16-ow
 +};
 +
 +#endif /* _IPT_LAYER7_H */
-diff -Nur linux-2.6.16/net/ipv4/netfilter/ip_conntrack_core.c linux-2.6.16-owrt/net/ipv4/netfilter/ip_conntrack_core.c
---- linux-2.6.16/net/ipv4/netfilter/ip_conntrack_core.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/ip_conntrack_core.c	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/ip_conntrack_core.c linux-2.6.17-owrt/net/ipv4/netfilter/ip_conntrack_core.c
+--- linux-2.6.17/net/ipv4/netfilter/ip_conntrack_core.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/net/ipv4/netfilter/ip_conntrack_core.c	2006-06-18 12:29:04.000000000 +0200
 @@ -339,6 +339,13 @@
  	 * too. */
  	ip_ct_remove_expectations(ct);
@@ -65,9 +65,9 @@ diff -Nur linux-2.6.16/net/ipv4/netfilter/ip_conntrack_core.c linux-2.6.16-owrt/
  	/* We overload first tuple to link into unconfirmed list. */
  	if (!is_confirmed(ct)) {
  		BUG_ON(list_empty(&ct->tuplehash[IP_CT_DIR_ORIGINAL].list));
-diff -Nur linux-2.6.16/net/ipv4/netfilter/ip_conntrack_standalone.c linux-2.6.16-owrt/net/ipv4/netfilter/ip_conntrack_standalone.c
---- linux-2.6.16/net/ipv4/netfilter/ip_conntrack_standalone.c	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/ip_conntrack_standalone.c	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/ip_conntrack_standalone.c linux-2.6.17-owrt/net/ipv4/netfilter/ip_conntrack_standalone.c
+--- linux-2.6.17/net/ipv4/netfilter/ip_conntrack_standalone.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/net/ipv4/netfilter/ip_conntrack_standalone.c	2006-06-18 12:29:04.000000000 +0200
 @@ -189,6 +189,12 @@
  		return -ENOSPC;
  #endif
@@ -81,9 +81,9 @@ diff -Nur linux-2.6.16/net/ipv4/netfilter/ip_conntrack_standalone.c linux-2.6.16
  	if (seq_printf(s, "use=%u\n", atomic_read(&conntrack->ct_general.use)))
  		return -ENOSPC;
  
-diff -Nur linux-2.6.16/net/ipv4/netfilter/ipt_layer7.c linux-2.6.16-owrt/net/ipv4/netfilter/ipt_layer7.c
---- linux-2.6.16/net/ipv4/netfilter/ipt_layer7.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/ipt_layer7.c	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/ipt_layer7.c linux-2.6.17-owrt/net/ipv4/netfilter/ipt_layer7.c
+--- linux-2.6.17/net/ipv4/netfilter/ipt_layer7.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/net/ipv4/netfilter/ipt_layer7.c	2006-06-18 12:29:04.000000000 +0200
 @@ -0,0 +1,592 @@
 +/* 
 +  Kernel module to match application layer (OSI layer 7) 
@@ -677,12 +677,12 @@ diff -Nur linux-2.6.16/net/ipv4/netfilter/ipt_layer7.c linux-2.6.16-owrt/net/ipv
 +
 +module_init(init);
 +module_exit(fini);
-diff -Nur linux-2.6.16/net/ipv4/netfilter/Kconfig linux-2.6.16-owrt/net/ipv4/netfilter/Kconfig
---- linux-2.6.16/net/ipv4/netfilter/Kconfig	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/Kconfig	2006-03-20 13:48:39.000000000 +0100
-@@ -201,6 +201,24 @@
- 
- 	  To compile it as a module, choose M here.  If unsure, say N.
+diff -Nur linux-2.6.17/net/ipv4/netfilter/Kconfig linux-2.6.17-owrt/net/ipv4/netfilter/Kconfig
+--- linux-2.6.17/net/ipv4/netfilter/Kconfig	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/net/ipv4/netfilter/Kconfig	2006-06-18 12:32:58.000000000 +0200
+@@ -314,6 +314,24 @@
+ 	  destination IP' or `500pps from any given source IP'  with a single
+ 	  IPtables rule.
  
 +config IP_NF_MATCH_LAYER7
 +	tristate "Layer 7 match support (EXPERIMENTAL)"
@@ -702,24 +702,24 @@ diff -Nur linux-2.6.16/net/ipv4/netfilter/Kconfig linux-2.6.16-owrt/net/ipv4/net
 +	help
 +	  Say Y to get lots of debugging output.
 +
- config IP_NF_MATCH_MULTIPORT
- 	tristate "Multiple port match support"
- 	depends on IP_NF_IPTABLES
-diff -Nur linux-2.6.16/net/ipv4/netfilter/Makefile linux-2.6.16-owrt/net/ipv4/netfilter/Makefile
---- linux-2.6.16/net/ipv4/netfilter/Makefile	2006-03-20 06:53:29.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/Makefile	2006-03-20 13:48:06.000000000 +0100
-@@ -59,6 +59,8 @@
+ # `filter', generic and specific targets
+ config IP_NF_FILTER
+ 	tristate "Packet filtering"
+diff -Nur linux-2.6.17/net/ipv4/netfilter/Makefile linux-2.6.17-owrt/net/ipv4/netfilter/Makefile
+--- linux-2.6.17/net/ipv4/netfilter/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/net/ipv4/netfilter/Makefile	2006-06-18 12:29:04.000000000 +0200
+@@ -62,6 +62,8 @@
+ obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
  obj-$(CONFIG_IP_NF_MATCH_ADDRTYPE) += ipt_addrtype.o
- obj-$(CONFIG_IP_NF_MATCH_POLICY) += ipt_policy.o
  
 +obj-$(CONFIG_IP_NF_MATCH_LAYER7) += ipt_layer7.o
 +
  # targets
  obj-$(CONFIG_IP_NF_TARGET_REJECT) += ipt_REJECT.o
  obj-$(CONFIG_IP_NF_TARGET_TOS) += ipt_TOS.o
-diff -Nur linux-2.6.16/net/ipv4/netfilter/regexp/regexp.c linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regexp.c
---- linux-2.6.16/net/ipv4/netfilter/regexp/regexp.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regexp.c	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/regexp/regexp.c linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regexp.c
+--- linux-2.6.17/net/ipv4/netfilter/regexp/regexp.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regexp.c	2006-06-18 12:29:04.000000000 +0200
 @@ -0,0 +1,1195 @@
 +/*
 + * regcomp and regexec -- regsub and regerror are elsewhere
@@ -1916,9 +1916,9 @@ diff -Nur linux-2.6.16/net/ipv4/netfilter/regexp/regexp.c linux-2.6.16-owrt/net/
 +#endif
 +
 +
-diff -Nur linux-2.6.16/net/ipv4/netfilter/regexp/regexp.h linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regexp.h
---- linux-2.6.16/net/ipv4/netfilter/regexp/regexp.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regexp.h	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/regexp/regexp.h linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regexp.h
+--- linux-2.6.17/net/ipv4/netfilter/regexp/regexp.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regexp.h	2006-06-18 12:29:04.000000000 +0200
 @@ -0,0 +1,41 @@
 +/*
 + * Definitions etc. for regexp(3) routines.
@@ -1961,18 +1961,18 @@ diff -Nur linux-2.6.16/net/ipv4/netfilter/regexp/regexp.h linux-2.6.16-owrt/net/
 +void regerror(char *s);
 +
 +#endif
-diff -Nur linux-2.6.16/net/ipv4/netfilter/regexp/regmagic.h linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regmagic.h
---- linux-2.6.16/net/ipv4/netfilter/regexp/regmagic.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regmagic.h	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/regexp/regmagic.h linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regmagic.h
+--- linux-2.6.17/net/ipv4/netfilter/regexp/regmagic.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regmagic.h	2006-06-18 12:29:04.000000000 +0200
 @@ -0,0 +1,5 @@
 +/*
 + * The first byte of the regexp internal "program" is actually this magic
 + * number; the start node begins in the second byte.
 + */
 +#define	MAGIC	0234
-diff -Nur linux-2.6.16/net/ipv4/netfilter/regexp/regsub.c linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regsub.c
---- linux-2.6.16/net/ipv4/netfilter/regexp/regsub.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.16-owrt/net/ipv4/netfilter/regexp/regsub.c	2006-03-20 13:48:06.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/regexp/regsub.c linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regsub.c
+--- linux-2.6.17/net/ipv4/netfilter/regexp/regsub.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/net/ipv4/netfilter/regexp/regsub.c	2006-06-18 12:29:04.000000000 +0200
 @@ -0,0 +1,95 @@
 +/*
 + * regsub
diff --git a/target/linux/generic-2.6/patches/101-ipp2p_0.8.1rc1.patch b/target/linux/generic-2.6/patches/101-ipp2p_0.8.1rc1.patch
index d6fa59379..9841db99e 100644
--- a/target/linux/generic-2.6/patches/101-ipp2p_0.8.1rc1.patch
+++ b/target/linux/generic-2.6/patches/101-ipp2p_0.8.1rc1.patch
@@ -1,6 +1,6 @@
-diff -urN linux.old/include/linux/netfilter_ipv4/ipt_ipp2p.h linux.dev/include/linux/netfilter_ipv4/ipt_ipp2p.h
---- linux.old/include/linux/netfilter_ipv4/ipt_ipp2p.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/linux/netfilter_ipv4/ipt_ipp2p.h	2006-03-23 15:24:47.000000000 +0100
+diff -Nur linux-2.6.17/include/linux/netfilter_ipv4/ipt_ipp2p.h linux-2.6.17-owrt/include/linux/netfilter_ipv4/ipt_ipp2p.h
+--- linux-2.6.17/include/linux/netfilter_ipv4/ipt_ipp2p.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/linux/netfilter_ipv4/ipt_ipp2p.h	2006-06-18 12:37:14.000000000 +0200
 @@ -0,0 +1,31 @@
 +#ifndef __IPT_IPP2P_H
 +#define __IPT_IPP2P_H
@@ -33,36 +33,9 @@ diff -urN linux.old/include/linux/netfilter_ipv4/ipt_ipp2p.h linux.dev/include/l
 +#define IPP2P_MUTE		(1 << 14)
 +#define IPP2P_WASTE		(1 << 15)
 +#define IPP2P_XDCC		(1 << 16)
-diff -urN linux.old/net/ipv4/netfilter/Kconfig linux.dev/net/ipv4/netfilter/Kconfig
---- linux.old/net/ipv4/netfilter/Kconfig	2006-03-23 15:21:19.000000000 +0100
-+++ linux.dev/net/ipv4/netfilter/Kconfig	2006-03-23 15:26:29.000000000 +0100
-@@ -229,6 +229,12 @@
- 
- 	  To compile it as a module, choose M here.  If unsure, say N.
- 
-+config IP_NF_MATCH_IPP2P
-+	tristate "IPP2P"
-+	depends on IP_NF_IPTABLES
-+	help
-+	  Module for matching traffic of various Peer-to-Peer applications
-+
- config IP_NF_MATCH_TOS
- 	tristate "TOS match support"
- 	depends on IP_NF_IPTABLES
-diff -urN linux.old/net/ipv4/netfilter/Makefile linux.dev/net/ipv4/netfilter/Makefile
---- linux.old/net/ipv4/netfilter/Makefile	2006-03-23 15:21:19.000000000 +0100
-+++ linux.dev/net/ipv4/netfilter/Makefile	2006-03-23 15:27:00.000000000 +0100
-@@ -49,6 +49,7 @@
- obj-$(CONFIG_IP_NF_MATCH_HASHLIMIT) += ipt_hashlimit.o
- obj-$(CONFIG_IP_NF_MATCH_SET) += ipt_set.o
- obj-$(CONFIG_IP_NF_MATCH_IPRANGE) += ipt_iprange.o
-+obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_ipp2p.o
- obj-$(CONFIG_IP_NF_MATCH_MULTIPORT) += ipt_multiport.o
- obj-$(CONFIG_IP_NF_MATCH_OWNER) += ipt_owner.o
- obj-$(CONFIG_IP_NF_MATCH_TOS) += ipt_tos.o
-diff -urN linux.old/net/ipv4/netfilter/ipt_ipp2p.c linux.dev/net/ipv4/netfilter/ipt_ipp2p.c
---- linux.old/net/ipv4/netfilter/ipt_ipp2p.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/net/ipv4/netfilter/ipt_ipp2p.c	2006-03-23 15:24:47.000000000 +0100
+diff -Nur linux-2.6.17/net/ipv4/netfilter/ipt_ipp2p.c linux-2.6.17-owrt/net/ipv4/netfilter/ipt_ipp2p.c
+--- linux-2.6.17/net/ipv4/netfilter/ipt_ipp2p.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/net/ipv4/netfilter/ipt_ipp2p.c	2006-06-18 12:37:14.000000000 +0200
 @@ -0,0 +1,868 @@
 +#if defined(MODVERSIONS)
 +#include <linux/modversions.h>
@@ -932,3 +905,31 @@ diff -urN linux.old/net/ipv4/netfilter/ipt_ipp2p.c linux.dev/net/ipv4/netfilter/
 +module_exit(fini);
 +
 +
+diff -Nur linux-2.6.17/net/ipv4/netfilter/Kconfig linux-2.6.17-owrt/net/ipv4/netfilter/Kconfig
+--- linux-2.6.17/net/ipv4/netfilter/Kconfig	2006-06-18 12:36:55.000000000 +0200
++++ linux-2.6.17-owrt/net/ipv4/netfilter/Kconfig	2006-06-18 12:37:14.000000000 +0200
+@@ -222,6 +222,12 @@
+ 
+ 	  To compile it as a module, choose M here.  If unsure, say N.
+ 
++config IP_NF_MATCH_IPP2P
++	tristate "IPP2P"
++	depends on IP_NF_IPTABLES
++	help
++	  Module for matching traffic of various Peer-to-Peer applications
++
+ config IP_NF_MATCH_TOS
+ 	tristate "TOS match support"
+ 	depends on IP_NF_IPTABLES
+diff -Nur linux-2.6.17/net/ipv4/netfilter/Makefile linux-2.6.17-owrt/net/ipv4/netfilter/Makefile
+--- linux-2.6.17/net/ipv4/netfilter/Makefile	2006-06-18 12:36:55.000000000 +0200
++++ linux-2.6.17-owrt/net/ipv4/netfilter/Makefile	2006-06-18 12:38:11.000000000 +0200
+@@ -61,7 +61,7 @@
+ obj-$(CONFIG_IP_NF_MATCH_AH) += ipt_ah.o
+ obj-$(CONFIG_IP_NF_MATCH_TTL) += ipt_ttl.o
+ obj-$(CONFIG_IP_NF_MATCH_ADDRTYPE) += ipt_addrtype.o
+-
++obj-$(CONFIG_IP_NF_MATCH_IPP2P) += ipt_ipp2p.o
+ obj-$(CONFIG_IP_NF_MATCH_LAYER7) += ipt_layer7.o
+ 
+ # targets
diff --git a/target/linux/rb532-2.6/Makefile b/target/linux/rb532-2.6/Makefile
index 23ecfe32b..9bb7bba71 100644
--- a/target/linux/rb532-2.6/Makefile
+++ b/target/linux/rb532-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.19
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=b1e3c65992b0049fdbee825eb2a856af
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config
diff --git a/target/linux/rb532-2.6/patches/100-rb5xx_support.patch b/target/linux/rb532-2.6/patches/100-rb5xx_support.patch
index 5886a75e3..9c4ead2ce 100644
--- a/target/linux/rb532-2.6/patches/100-rb5xx_support.patch
+++ b/target/linux/rb532-2.6/patches/100-rb5xx_support.patch
@@ -1,7 +1,7 @@
-diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
---- linux.old/arch/mips/Kconfig	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/arch/mips/Kconfig	2006-06-15 16:26:53.000000000 +0200
-@@ -739,6 +739,19 @@
+diff -Nur linux-2.6.17/arch/mips/Kconfig linux-2.6.17-owrt/arch/mips/Kconfig
+--- linux-2.6.17/arch/mips/Kconfig	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/Kconfig	2006-06-18 15:24:39.000000000 +0200
+@@ -742,6 +742,19 @@
  	select SYS_SUPPORTS_BIG_ENDIAN
  	select TOSHIBA_BOARDS
  
@@ -19,9 +19,9 @@ diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
 +	  such as the RB532.
 +
  config TOSHIBA_RBTX4927
- 	bool "Support for Toshiba TBTX49[23]7 board"
+ 	bool "Toshiba TBTX49[23]7 board"
  	select DMA_NONCOHERENT
-@@ -1012,7 +1025,7 @@
+@@ -1028,7 +1041,7 @@
  
  config MIPS_L1_CACHE_SHIFT
  	int
@@ -30,10 +30,10 @@ diff -urN linux.old/arch/mips/Kconfig linux.dev/arch/mips/Kconfig
  	default "7" if SGI_IP27
  	default "5"
  
-diff -urN linux.old/arch/mips/Makefile linux.dev/arch/mips/Makefile
---- linux.old/arch/mips/Makefile	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/arch/mips/Makefile	2006-06-15 16:26:53.000000000 +0200
-@@ -725,6 +725,13 @@
+diff -Nur linux-2.6.17/arch/mips/Makefile linux-2.6.17-owrt/arch/mips/Makefile
+--- linux-2.6.17/arch/mips/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/Makefile	2006-06-18 15:24:39.000000000 +0200
+@@ -580,6 +580,13 @@
  load-$(CONFIG_TOSHIBA_JMR3927)	+= 0xffffffff80050000
  
  #
@@ -47,18 +47,18 @@ diff -urN linux.old/arch/mips/Makefile linux.dev/arch/mips/Makefile
  # Toshiba RBTX4927 board or
  # Toshiba RBTX4937 board
  #
-diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
---- linux.old/arch/mips/mm/tlbex.c	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/arch/mips/mm/tlbex.c	2006-06-15 16:26:53.000000000 +0200
-@@ -852,7 +852,6 @@
- 
+diff -Nur linux-2.6.17/arch/mips/mm/tlbex.c linux-2.6.17-owrt/arch/mips/mm/tlbex.c
+--- linux-2.6.17/arch/mips/mm/tlbex.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/mm/tlbex.c	2006-06-18 15:26:55.000000000 +0200
+@@ -876,7 +876,6 @@
  	case CPU_R10000:
  	case CPU_R12000:
+ 	case CPU_R14000:
 -	case CPU_4KC:
  	case CPU_SB1:
  	case CPU_SB1A:
  	case CPU_4KSC:
-@@ -880,6 +879,7 @@
+@@ -904,6 +903,7 @@
  		tlbw(p);
  		break;
  
@@ -66,9 +66,9 @@ diff -urN linux.old/arch/mips/mm/tlbex.c linux.dev/arch/mips/mm/tlbex.c
  	case CPU_4KEC:
  	case CPU_24K:
  	case CPU_34K:
-diff -urN linux.old/arch/mips/pci/fixup-rb500.c linux.dev/arch/mips/pci/fixup-rb500.c
---- linux.old/arch/mips/pci/fixup-rb500.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/pci/fixup-rb500.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/pci/fixup-rb500.c linux-2.6.17-owrt/arch/mips/pci/fixup-rb500.c
+--- linux-2.6.17/arch/mips/pci/fixup-rb500.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/pci/fixup-rb500.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,49 @@
 +/*
 + * Copyright 2001 MontaVista Software Inc.
@@ -119,17 +119,17 @@ diff -urN linux.old/arch/mips/pci/fixup-rb500.c linux.dev/arch/mips/pci/fixup-rb
 +	return irq + GROUP4_IRQ_BASE + 4;
 +}
 +
-diff -urN linux.old/arch/mips/pci/Makefile linux.dev/arch/mips/pci/Makefile
---- linux.old/arch/mips/pci/Makefile	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/arch/mips/pci/Makefile	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/pci/Makefile linux-2.6.17-owrt/arch/mips/pci/Makefile
+--- linux-2.6.17/arch/mips/pci/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/arch/mips/pci/Makefile	2006-06-18 15:24:39.000000000 +0200
 @@ -57,3 +57,4 @@
  obj-$(CONFIG_TOSHIBA_RBTX4938)	+= fixup-tx4938.o ops-tx4938.o
  obj-$(CONFIG_VICTOR_MPC30X)	+= fixup-mpc30x.o
  obj-$(CONFIG_ZAO_CAPCELLA)	+= fixup-capcella.o
 +obj-$(CONFIG_MIKROTIK_RB500)	+= pci-rc32434.o ops-rc32434.o fixup-rb500.o
-diff -urN linux.old/arch/mips/pci/ops-rc32434.c linux.dev/arch/mips/pci/ops-rc32434.c
---- linux.old/arch/mips/pci/ops-rc32434.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/pci/ops-rc32434.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/pci/ops-rc32434.c linux-2.6.17-owrt/arch/mips/pci/ops-rc32434.c
+--- linux-2.6.17/arch/mips/pci/ops-rc32434.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/pci/ops-rc32434.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,195 @@
 +/**************************************************************************
 + *
@@ -326,9 +326,9 @@ diff -urN linux.old/arch/mips/pci/ops-rc32434.c linux.dev/arch/mips/pci/ops-rc32
 +	.read =  pci_config_read,
 +	.write = pci_config_write,
 +};
-diff -urN linux.old/arch/mips/pci/pci-rc32434.c linux.dev/arch/mips/pci/pci-rc32434.c
---- linux.old/arch/mips/pci/pci-rc32434.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/pci/pci-rc32434.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/pci/pci-rc32434.c linux-2.6.17-owrt/arch/mips/pci/pci-rc32434.c
+--- linux-2.6.17/arch/mips/pci/pci-rc32434.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/pci/pci-rc32434.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,234 @@
 +/**************************************************************************
 + *
@@ -564,9 +564,9 @@ diff -urN linux.old/arch/mips/pci/pci-rc32434.c linux.dev/arch/mips/pci/pci-rc32
 +
 +arch_initcall(rc32434_pci_init);
 +
-diff -urN linux.old/arch/mips/rb500/devices.c linux.dev/arch/mips/rb500/devices.c
---- linux.old/arch/mips/rb500/devices.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/devices.c	2006-06-15 16:27:14.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/devices.c linux-2.6.17-owrt/arch/mips/rb500/devices.c
+--- linux-2.6.17/arch/mips/rb500/devices.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/devices.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,211 @@
 +#include <linux/kernel.h>
 +#include <linux/init.h>
@@ -779,9 +779,9 @@ diff -urN linux.old/arch/mips/rb500/devices.c linux.dev/arch/mips/rb500/devices.
 +
 +late_initcall(setup_mtd);
 +#endif
-diff -urN linux.old/arch/mips/rb500/early_serial.c linux.dev/arch/mips/rb500/early_serial.c
---- linux.old/arch/mips/rb500/early_serial.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/early_serial.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/early_serial.c linux-2.6.17-owrt/arch/mips/rb500/early_serial.c
+--- linux-2.6.17/arch/mips/rb500/early_serial.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/early_serial.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,199 @@
 +/**************************************************************************
 + *
@@ -982,9 +982,9 @@ diff -urN linux.old/arch/mips/rb500/early_serial.c linux.dev/arch/mips/rb500/ear
 +  /* the modem controls don't leave the chip on this port, so leave them alone */
 +  *(port + (UART_MCR << s)) = 0;
 +}
-diff -urN linux.old/arch/mips/rb500/irq.c linux.dev/arch/mips/rb500/irq.c
---- linux.old/arch/mips/rb500/irq.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/irq.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/irq.c linux-2.6.17-owrt/arch/mips/rb500/irq.c
+--- linux-2.6.17/arch/mips/rb500/irq.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/irq.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,266 @@
 +/*
 + * BRIEF MODULE DESCRIPTION
@@ -1252,18 +1252,18 @@ diff -urN linux.old/arch/mips/rb500/irq.c linux.dev/arch/mips/rb500/irq.c
 +}
 +
 +
-diff -urN linux.old/arch/mips/rb500/Makefile linux.dev/arch/mips/rb500/Makefile
---- linux.old/arch/mips/rb500/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/Makefile	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/Makefile linux-2.6.17-owrt/arch/mips/rb500/Makefile
+--- linux-2.6.17/arch/mips/rb500/Makefile	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/Makefile	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,5 @@
 +#
 +# Makefile for the RB500 board specific parts of the kernel
 +#
 +
 +obj-y	 += irq.o time.o setup.o serial.o early_serial.o prom.o misc.o devices.o rbIRQ.o
-diff -urN linux.old/arch/mips/rb500/misc.c linux.dev/arch/mips/rb500/misc.c
---- linux.old/arch/mips/rb500/misc.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/misc.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/misc.c linux-2.6.17-owrt/arch/mips/rb500/misc.c
+--- linux-2.6.17/arch/mips/rb500/misc.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/misc.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,54 @@
 +#include <linux/module.h>
 +#include <linux/kernel.h>   /* printk() */
@@ -1319,9 +1319,9 @@ diff -urN linux.old/arch/mips/rb500/misc.c linux.dev/arch/mips/rb500/misc.c
 +EXPORT_SYMBOL(gpio_get);
 +EXPORT_SYMBOL(set434Reg);
 +EXPORT_SYMBOL(changeLatchU5);
-diff -urN linux.old/arch/mips/rb500/prom.c linux.dev/arch/mips/rb500/prom.c
---- linux.old/arch/mips/rb500/prom.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/prom.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/prom.c linux-2.6.17-owrt/arch/mips/rb500/prom.c
+--- linux-2.6.17/arch/mips/rb500/prom.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/prom.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,181 @@
 +/*
 +* prom.c 
@@ -1504,9 +1504,9 @@ diff -urN linux.old/arch/mips/rb500/prom.c linux.dev/arch/mips/rb500/prom.c
 +	strcpy(arcs_cmdline,cmd_line);
 +}
 +
-diff -urN linux.old/arch/mips/rb500/rbIRQ.S linux.dev/arch/mips/rb500/rbIRQ.S
---- linux.old/arch/mips/rb500/rbIRQ.S	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/rbIRQ.S	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/rbIRQ.S linux-2.6.17-owrt/arch/mips/rb500/rbIRQ.S
+--- linux-2.6.17/arch/mips/rb500/rbIRQ.S	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/rbIRQ.S	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,62 @@
 +/*
 + * Copyright 2001 MontaVista Software Inc.
@@ -1570,9 +1570,9 @@ diff -urN linux.old/arch/mips/rb500/rbIRQ.S linux.dev/arch/mips/rb500/rbIRQ.S
 +	END(rbIRQ)
 +
 +
-diff -urN linux.old/arch/mips/rb500/serial.c linux.dev/arch/mips/rb500/serial.c
---- linux.old/arch/mips/rb500/serial.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/serial.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/serial.c linux-2.6.17-owrt/arch/mips/rb500/serial.c
+--- linux-2.6.17/arch/mips/rb500/serial.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/serial.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,79 @@
 +/**************************************************************************
 + *
@@ -1653,9 +1653,9 @@ diff -urN linux.old/arch/mips/rb500/serial.c linux.dev/arch/mips/rb500/serial.c
 +	
 +	return(0);
 +}
-diff -urN linux.old/arch/mips/rb500/setup.c linux.dev/arch/mips/rb500/setup.c
---- linux.old/arch/mips/rb500/setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/setup.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/setup.c linux-2.6.17-owrt/arch/mips/rb500/setup.c
+--- linux-2.6.17/arch/mips/rb500/setup.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/setup.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,84 @@
 +/*
 + * setup.c - boot time setup code
@@ -1741,9 +1741,9 @@ diff -urN linux.old/arch/mips/rb500/setup.c linux.dev/arch/mips/rb500/setup.c
 +{
 +	return "MIPS RB500";
 +}
-diff -urN linux.old/arch/mips/rb500/time.c linux.dev/arch/mips/rb500/time.c
---- linux.old/arch/mips/rb500/time.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/arch/mips/rb500/time.c	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/arch/mips/rb500/time.c linux-2.6.17-owrt/arch/mips/rb500/time.c
+--- linux-2.6.17/arch/mips/rb500/time.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/arch/mips/rb500/time.c	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,94 @@
 +/*
 +****************************************************************************
@@ -1839,10 +1839,10 @@ diff -urN linux.old/arch/mips/rb500/time.c linux.dev/arch/mips/rb500/time.c
 +	write_c0_compare(r4k_cur);
 +}
 +
-diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/devices/block2mtd.c
---- linux.old/drivers/mtd/devices/block2mtd.c	2006-05-31 02:31:44.000000000 +0200
-+++ linux.dev/drivers/mtd/devices/block2mtd.c	2006-06-15 18:46:28.000000000 +0200
-@@ -25,7 +25,6 @@
+diff -Nur linux-2.6.17/drivers/mtd/devices/block2mtd.c linux-2.6.17-owrt/drivers/mtd/devices/block2mtd.c
+--- linux-2.6.17/drivers/mtd/devices/block2mtd.c	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/mtd/devices/block2mtd.c	2006-06-18 15:24:39.000000000 +0200
+@@ -26,7 +26,6 @@
  #define ERROR(fmt, args...) printk(KERN_ERR "block2mtd: " fmt "\n" , ## args)
  #define INFO(fmt, args...) printk(KERN_INFO "block2mtd: " fmt "\n" , ## args)
  
@@ -1850,7 +1850,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  /* Info for the block device */
  struct block2mtd_dev {
  	struct list_head list;
-@@ -61,10 +60,8 @@
+@@ -62,10 +61,8 @@
  	read_lock_irq(&mapping->tree_lock);
  	for (i = 0; i < PAGE_READAHEAD; i++) {
  		pagei = index + i;
@@ -1862,7 +1862,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  		page = radix_tree_lookup(&mapping->page_tree, pagei);
  		if (page && (!i))
  			break;
-@@ -105,7 +102,7 @@
+@@ -106,7 +103,7 @@
  
  	while (pages) {
  		page = page_readahead(mapping, index);
@@ -1871,7 +1871,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  			return -ENOMEM;
  		if (IS_ERR(page))
  			return PTR_ERR(page);
-@@ -284,7 +281,7 @@
+@@ -285,7 +282,7 @@
  
  
  /* FIXME: ensure that mtd->size % erase_size == 0 */
@@ -1880,7 +1880,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  {
  	struct block_device *bdev;
  	struct block2mtd_dev *dev;
-@@ -314,14 +311,15 @@
+@@ -315,14 +312,15 @@
  
  	/* Setup the MTD structure */
  	/* make the name contain the block device in */
@@ -1898,7 +1898,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  	dev->mtd.erasesize = erase_size;
  	dev->mtd.type = MTD_RAM;
  	dev->mtd.flags = MTD_CAP_RAM;
-@@ -340,7 +338,7 @@
+@@ -341,7 +339,7 @@
  	}
  	list_add(&dev->list, &blkmtd_device_list);
  	INFO("mtd%d: [%s] erase_size = %dKiB [%d]", dev->mtd.index,
@@ -1907,7 +1907,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  			dev->mtd.erasesize >> 10, dev->mtd.erasesize);
  	return dev;
  
-@@ -415,7 +413,7 @@
+@@ -416,7 +414,7 @@
  	return 0;				\
  } while (0)
  
@@ -1916,7 +1916,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  {
  	char buf[80+12], *str=buf; /* 80 for device, 12 for erase size */
  	char *token[2];
-@@ -429,7 +427,7 @@
+@@ -430,7 +428,7 @@
  	strcpy(str, val);
  	kill_final_newline(str);
  
@@ -1925,7 +1925,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  		token[i] = strsep(&str, ",");
  
  	if (str)
-@@ -452,7 +450,7 @@
+@@ -453,7 +451,7 @@
  			parse_err("illegal erase size");
  	}
  
@@ -1934,7 +1934,7 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  
  	return 0;
  }
-@@ -460,6 +458,7 @@
+@@ -461,6 +459,7 @@
  
  module_param_call(block2mtd, block2mtd_setup, NULL, NULL, 0200);
  MODULE_PARM_DESC(block2mtd, "Device to use. \"block2mtd=<dev>[,<erasesize>]\"");
@@ -1942,9 +1942,9 @@ diff -urN linux.old/drivers/mtd/devices/block2mtd.c linux.dev/drivers/mtd/device
  
  static int __init block2mtd_init(void)
  {
-diff -urN linux.old/drivers/pci/Makefile linux.dev/drivers/pci/Makefile
---- linux.old/drivers/pci/Makefile	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/drivers/pci/Makefile	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/drivers/pci/Makefile linux-2.6.17-owrt/drivers/pci/Makefile
+--- linux-2.6.17/drivers/pci/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/pci/Makefile	2006-06-18 15:24:39.000000000 +0200
 @@ -27,6 +27,7 @@
  obj-$(CONFIG_MIPS) += setup-bus.o setup-irq.o
  obj-$(CONFIG_X86_VISWS) += setup-irq.o
@@ -1953,9 +1953,9 @@ diff -urN linux.old/drivers/pci/Makefile linux.dev/drivers/pci/Makefile
  
  #
  # ACPI Related PCI FW Functions
-diff -urN linux.old/include/asm-mips/bootinfo.h linux.dev/include/asm-mips/bootinfo.h
---- linux.old/include/asm-mips/bootinfo.h	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/include/asm-mips/bootinfo.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/bootinfo.h linux-2.6.17-owrt/include/asm-mips/bootinfo.h
+--- linux-2.6.17/include/asm-mips/bootinfo.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/bootinfo.h	2006-06-18 15:24:39.000000000 +0200
 @@ -218,6 +218,8 @@
  #define MACH_GROUP_TITAN       22	/* PMC-Sierra Titan		*/
  #define  MACH_TITAN_YOSEMITE	1	/* PMC-Sierra Yosemite		*/
@@ -1965,22 +1965,22 @@ diff -urN linux.old/include/asm-mips/bootinfo.h linux.dev/include/asm-mips/booti
  #define CL_SIZE			COMMAND_LINE_SIZE
  
  const char *get_system_type(void);
-diff -urN linux.old/include/asm-mips/cpu.h linux.dev/include/asm-mips/cpu.h
---- linux.old/include/asm-mips/cpu.h	2006-06-08 20:21:20.000000000 +0200
-+++ linux.dev/include/asm-mips/cpu.h	2006-06-15 16:26:53.000000000 +0200
-@@ -196,7 +196,8 @@
- #define CPU_34K			60
- #define CPU_PR4450		61
+diff -Nur linux-2.6.17/include/asm-mips/cpu.h linux-2.6.17-owrt/include/asm-mips/cpu.h
+--- linux-2.6.17/include/asm-mips/cpu.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/asm-mips/cpu.h	2006-06-18 15:25:55.000000000 +0200
+@@ -200,7 +200,8 @@
  #define CPU_SB1A		62
--#define CPU_LAST		62
-+#define CPU_RC32300		63
-+#define CPU_LAST		63
+ #define CPU_74K			63
+ #define CPU_R14000		64
+-#define CPU_LAST		64
++#define CPU_RC32300		65
++#define CPU_LAST		65
  
  /*
   * ISA Level encodings
-diff -urN linux.old/include/asm-mips/rc32434/crom.h linux.dev/include/asm-mips/rc32434/crom.h
---- linux.old/include/asm-mips/rc32434/crom.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/crom.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/crom.h linux-2.6.17-owrt/include/asm-mips/rc32434/crom.h
+--- linux-2.6.17/include/asm-mips/rc32434/crom.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/crom.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,98 @@
 +#ifndef __IDT_CROM_H__
 +#define __IDT_CROM_H__
@@ -2080,9 +2080,9 @@ diff -urN linux.old/include/asm-mips/rc32434/crom.h linux.dev/include/asm-mips/r
 +} ;
 +
 +#endif	// __IDT_CROM_H__
-diff -urN linux.old/include/asm-mips/rc32434/ddr.h linux.dev/include/asm-mips/rc32434/ddr.h
---- linux.old/include/asm-mips/rc32434/ddr.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/ddr.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/ddr.h linux-2.6.17-owrt/include/asm-mips/rc32434/ddr.h
+--- linux-2.6.17/include/asm-mips/rc32434/ddr.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/ddr.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,175 @@
 +#ifndef __IDT_DDR_H__
 +#define __IDT_DDR_H__
@@ -2259,9 +2259,9 @@ diff -urN linux.old/include/asm-mips/rc32434/ddr.h linux.dev/include/asm-mips/rc
 +} ;
 +
 +#endif	// __IDT_DDR_H__
-diff -urN linux.old/include/asm-mips/rc32434/dev.h linux.dev/include/asm-mips/rc32434/dev.h
---- linux.old/include/asm-mips/rc32434/dev.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/dev.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/dev.h linux-2.6.17-owrt/include/asm-mips/rc32434/dev.h
+--- linux-2.6.17/include/asm-mips/rc32434/dev.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/dev.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,134 @@
 +#ifndef __IDT_DEV_H__
 +#define __IDT_DEV_H__
@@ -2397,9 +2397,9 @@ diff -urN linux.old/include/asm-mips/rc32434/dev.h linux.dev/include/asm-mips/rc
 +
 +#endif	//__IDT_DEV_H__
 +
-diff -urN linux.old/include/asm-mips/rc32434/dma.h linux.dev/include/asm-mips/rc32434/dma.h
---- linux.old/include/asm-mips/rc32434/dma.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/dma.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/dma.h linux-2.6.17-owrt/include/asm-mips/rc32434/dma.h
+--- linux-2.6.17/include/asm-mips/rc32434/dma.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/dma.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,202 @@
 +#ifndef __IDT_DMA_H__
 +#define __IDT_DMA_H__
@@ -2603,9 +2603,9 @@ diff -urN linux.old/include/asm-mips/rc32434/dma.h linux.dev/include/asm-mips/rc
 +
 +#endif	// __IDT_DMA_H__
 +
-diff -urN linux.old/include/asm-mips/rc32434/dma_v.h linux.dev/include/asm-mips/rc32434/dma_v.h
---- linux.old/include/asm-mips/rc32434/dma_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/dma_v.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/dma_v.h linux-2.6.17-owrt/include/asm-mips/rc32434/dma_v.h
+--- linux-2.6.17/include/asm-mips/rc32434/dma_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/dma_v.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,73 @@
 +#ifndef __IDT_DMA_V_H__
 +#define __IDT_DMA_V_H__
@@ -2680,9 +2680,9 @@ diff -urN linux.old/include/asm-mips/rc32434/dma_v.h linux.dev/include/asm-mips/
 +
 +
 +
-diff -urN linux.old/include/asm-mips/rc32434/eth.h linux.dev/include/asm-mips/rc32434/eth.h
---- linux.old/include/asm-mips/rc32434/eth.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/eth.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/eth.h linux-2.6.17-owrt/include/asm-mips/rc32434/eth.h
+--- linux-2.6.17/include/asm-mips/rc32434/eth.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/eth.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,322 @@
 +#ifndef	__IDT_ETH_H__
 +#define	__IDT_ETH_H__
@@ -3006,9 +3006,9 @@ diff -urN linux.old/include/asm-mips/rc32434/eth.h linux.dev/include/asm-mips/rc
 +
 +
 +
-diff -urN linux.old/include/asm-mips/rc32434/eth_v.h linux.dev/include/asm-mips/rc32434/eth_v.h
---- linux.old/include/asm-mips/rc32434/eth_v.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/eth_v.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/eth_v.h linux-2.6.17-owrt/include/asm-mips/rc32434/eth_v.h
+--- linux-2.6.17/include/asm-mips/rc32434/eth_v.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/eth_v.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,64 @@
 +#ifndef	__IDT_ETH_V_H__
 +#define	__IDT_ETH_V_H__
@@ -3074,9 +3074,9 @@ diff -urN linux.old/include/asm-mips/rc32434/eth_v.h linux.dev/include/asm-mips/
 +
 +
 +
-diff -urN linux.old/include/asm-mips/rc32434/gpio.h linux.dev/include/asm-mips/rc32434/gpio.h
---- linux.old/include/asm-mips/rc32434/gpio.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/gpio.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/gpio.h linux-2.6.17-owrt/include/asm-mips/rc32434/gpio.h
+--- linux-2.6.17/include/asm-mips/rc32434/gpio.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/gpio.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,182 @@
 +#ifndef __IDT_GPIO_H__
 +#define __IDT_GPIO_H__
@@ -3260,9 +3260,9 @@ diff -urN linux.old/include/asm-mips/rc32434/gpio.h linux.dev/include/asm-mips/r
 +
 +#endif	// __IDT_GPIO_H__
 +
-diff -urN linux.old/include/asm-mips/rc32434/i2c.h linux.dev/include/asm-mips/rc32434/i2c.h
---- linux.old/include/asm-mips/rc32434/i2c.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/i2c.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/i2c.h linux-2.6.17-owrt/include/asm-mips/rc32434/i2c.h
+--- linux-2.6.17/include/asm-mips/rc32434/i2c.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/i2c.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,147 @@
 +#ifndef __IDT_I2C_H__
 +#define __IDT_I2C_H__
@@ -3411,9 +3411,9 @@ diff -urN linux.old/include/asm-mips/rc32434/i2c.h linux.dev/include/asm-mips/rc
 +
 +} ;
 +#endif	// __IDT_I2C_H__
-diff -urN linux.old/include/asm-mips/rc32434/integ.h linux.dev/include/asm-mips/rc32434/integ.h
---- linux.old/include/asm-mips/rc32434/integ.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/integ.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/integ.h linux-2.6.17-owrt/include/asm-mips/rc32434/integ.h
+--- linux-2.6.17/include/asm-mips/rc32434/integ.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/integ.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,78 @@
 +#ifndef __IDT_INTEG_H__
 +#define __IDT_INTEG_H__
@@ -3493,9 +3493,9 @@ diff -urN linux.old/include/asm-mips/rc32434/integ.h linux.dev/include/asm-mips/
 +} ;
 +
 +#endif	// __IDT_INTEG_H__
-diff -urN linux.old/include/asm-mips/rc32434/int.h linux.dev/include/asm-mips/rc32434/int.h
---- linux.old/include/asm-mips/rc32434/int.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/int.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/int.h linux-2.6.17-owrt/include/asm-mips/rc32434/int.h
+--- linux-2.6.17/include/asm-mips/rc32434/int.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/int.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,167 @@
 +#ifndef __IDT_INT_H__
 +#define __IDT_INT_H__
@@ -3664,9 +3664,9 @@ diff -urN linux.old/include/asm-mips/rc32434/int.h linux.dev/include/asm-mips/rc
 +#endif	// __IDT_INT_H__
 +
 +
-diff -urN linux.old/include/asm-mips/rc32434/iparb.h linux.dev/include/asm-mips/rc32434/iparb.h
---- linux.old/include/asm-mips/rc32434/iparb.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/iparb.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/iparb.h linux-2.6.17-owrt/include/asm-mips/rc32434/iparb.h
+--- linux-2.6.17/include/asm-mips/rc32434/iparb.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/iparb.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,95 @@
 +#ifndef __IDT_IPARB_H__
 +#define __IDT_IPARB_H__
@@ -3763,9 +3763,9 @@ diff -urN linux.old/include/asm-mips/rc32434/iparb.h linux.dev/include/asm-mips/
 +};
 +
 +#endif	// __IDT_IPARB_H__
-diff -urN linux.old/include/asm-mips/rc32434/irm.h linux.dev/include/asm-mips/rc32434/irm.h
---- linux.old/include/asm-mips/rc32434/irm.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/irm.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/irm.h linux-2.6.17-owrt/include/asm-mips/rc32434/irm.h
+--- linux-2.6.17/include/asm-mips/rc32434/irm.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/irm.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,55 @@
 +#ifndef __IDT_IRM_H__
 +#define __IDT_IRM_H__
@@ -3822,9 +3822,9 @@ diff -urN linux.old/include/asm-mips/rc32434/irm.h linux.dev/include/asm-mips/rc
 +} IRM_Offset_t ;
 + 
 +#endif	// __IDT_IRM_H__
-diff -urN linux.old/include/asm-mips/rc32434/irq.h linux.dev/include/asm-mips/rc32434/irq.h
---- linux.old/include/asm-mips/rc32434/irq.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/irq.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/irq.h linux-2.6.17-owrt/include/asm-mips/rc32434/irq.h
+--- linux-2.6.17/include/asm-mips/rc32434/irq.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/irq.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,8 @@
 +#ifndef __ASM_MACH_MIPS_IRQ_H
 +#define __ASM_MACH_MIPS_IRQ_H
@@ -3834,9 +3834,9 @@ diff -urN linux.old/include/asm-mips/rc32434/irq.h linux.dev/include/asm-mips/rc
 +#define NR_IRQS	256
 +
 +#endif /* __ASM_MACH_MIPS_IRQ_H */
-diff -urN linux.old/include/asm-mips/rc32434/nvram.h linux.dev/include/asm-mips/rc32434/nvram.h
---- linux.old/include/asm-mips/rc32434/nvram.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/nvram.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/nvram.h linux-2.6.17-owrt/include/asm-mips/rc32434/nvram.h
+--- linux-2.6.17/include/asm-mips/rc32434/nvram.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/nvram.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,97 @@
 +#ifndef __IDT_NVRAM_H
 +#define __IDT_NVRAM_H
@@ -3935,9 +3935,9 @@ diff -urN linux.old/include/asm-mips/rc32434/nvram.h linux.dev/include/asm-mips/
 +
 +#endif  // __IDT_NVRAM_H__
 +
-diff -urN linux.old/include/asm-mips/rc32434/pci.h linux.dev/include/asm-mips/rc32434/pci.h
---- linux.old/include/asm-mips/rc32434/pci.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/pci.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/pci.h linux-2.6.17-owrt/include/asm-mips/rc32434/pci.h
+--- linux-2.6.17/include/asm-mips/rc32434/pci.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/pci.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,695 @@
 +/**************************************************************************
 + *
@@ -4634,9 +4634,9 @@ diff -urN linux.old/include/asm-mips/rc32434/pci.h linux.dev/include/asm-mips/rc
 +
 +
 +
-diff -urN linux.old/include/asm-mips/rc32434/pcikorina.h linux.dev/include/asm-mips/rc32434/pcikorina.h
---- linux.old/include/asm-mips/rc32434/pcikorina.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/pcikorina.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/pcikorina.h linux-2.6.17-owrt/include/asm-mips/rc32434/pcikorina.h
+--- linux-2.6.17/include/asm-mips/rc32434/pcikorina.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/pcikorina.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,209 @@
 +/* $Id: pciacacia.h,v 1.5 2001/05/01 10:09:17 carstenl Exp $
 + *
@@ -4847,9 +4847,9 @@ diff -urN linux.old/include/asm-mips/rc32434/pcikorina.h linux.dev/include/asm-m
 +
 +
 +
-diff -urN linux.old/include/asm-mips/rc32434/pci_regs.h linux.dev/include/asm-mips/rc32434/pci_regs.h
---- linux.old/include/asm-mips/rc32434/pci_regs.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/pci_regs.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/pci_regs.h linux-2.6.17-owrt/include/asm-mips/rc32434/pci_regs.h
+--- linux-2.6.17/include/asm-mips/rc32434/pci_regs.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/pci_regs.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,8 @@
 +/* Override the default address space for this arch
 +*/
@@ -4859,9 +4859,9 @@ diff -urN linux.old/include/asm-mips/rc32434/pci_regs.h linux.dev/include/asm-mi
 +//#undef PCI_BASE_ADDRESS_SPACE
 +//#define PCI_BASE_ADDRESS_SPACE PCI_BASE_ADDRESS_SPACE_MEMORY
 +
-diff -urN linux.old/include/asm-mips/rc32434/rb.h linux.dev/include/asm-mips/rc32434/rb.h
---- linux.old/include/asm-mips/rc32434/rb.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/rb.h	2006-06-15 16:27:36.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/rb.h linux-2.6.17-owrt/include/asm-mips/rc32434/rb.h
+--- linux-2.6.17/include/asm-mips/rc32434/rb.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/rb.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,69 @@
 +#ifndef __MIPS_RB_H__
 +#define __MIPS_RB_H__
@@ -4932,9 +4932,9 @@ diff -urN linux.old/include/asm-mips/rc32434/rb.h linux.dev/include/asm-mips/rc3
 +};
 +
 +#endif
-diff -urN linux.old/include/asm-mips/rc32434/rc32434.h linux.dev/include/asm-mips/rc32434/rc32434.h
---- linux.old/include/asm-mips/rc32434/rc32434.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/rc32434.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/rc32434.h linux-2.6.17-owrt/include/asm-mips/rc32434/rc32434.h
+--- linux-2.6.17/include/asm-mips/rc32434/rc32434.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/rc32434.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,126 @@
 +/*
 + ***************************************************************************
@@ -5062,9 +5062,9 @@ diff -urN linux.old/include/asm-mips/rc32434/rc32434.h linux.dev/include/asm-mip
 +extern void cons_puts(char *s);
 +
 +#endif /* _RC32434_H_ */
-diff -urN linux.old/include/asm-mips/rc32434/rst.h linux.dev/include/asm-mips/rc32434/rst.h
---- linux.old/include/asm-mips/rc32434/rst.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/rst.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/rst.h linux-2.6.17-owrt/include/asm-mips/rc32434/rst.h
+--- linux-2.6.17/include/asm-mips/rc32434/rst.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/rst.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,105 @@
 +#ifndef __IDT_RST_H__
 +#define __IDT_RST_H__
@@ -5171,9 +5171,9 @@ diff -urN linux.old/include/asm-mips/rc32434/rst.h linux.dev/include/asm-mips/rc
 +	BCV_delayByPass_m	= 0x00008000,
 +} ;
 +#endif	// __IDT_RST_H__
-diff -urN linux.old/include/asm-mips/rc32434/spi.h linux.dev/include/asm-mips/rc32434/spi.h
---- linux.old/include/asm-mips/rc32434/spi.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/spi.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/spi.h linux-2.6.17-owrt/include/asm-mips/rc32434/spi.h
+--- linux-2.6.17/include/asm-mips/rc32434/spi.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/spi.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,100 @@
 +#ifndef __IDT_SPI_H__
 +#define __IDT_SPI_H__
@@ -5275,9 +5275,9 @@ diff -urN linux.old/include/asm-mips/rc32434/spi.h linux.dev/include/asm-mips/rc
 +	SIOD_sck_m	 = 0x00000004,
 +} ;
 +#endif	// __IDT_SPI_H__
-diff -urN linux.old/include/asm-mips/rc32434/timer.h linux.dev/include/asm-mips/rc32434/timer.h
---- linux.old/include/asm-mips/rc32434/timer.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/timer.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/timer.h linux-2.6.17-owrt/include/asm-mips/rc32434/timer.h
+--- linux-2.6.17/include/asm-mips/rc32434/timer.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/timer.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,91 @@
 +/**************************************************************************
 + *
@@ -5370,9 +5370,9 @@ diff -urN linux.old/include/asm-mips/rc32434/timer.h linux.dev/include/asm-mips/
 +} ;
 +#endif	// __IDT_TIM_H__
 +
-diff -urN linux.old/include/asm-mips/rc32434/tim.h linux.dev/include/asm-mips/rc32434/tim.h
---- linux.old/include/asm-mips/rc32434/tim.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/tim.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/tim.h linux-2.6.17-owrt/include/asm-mips/rc32434/tim.h
+--- linux-2.6.17/include/asm-mips/rc32434/tim.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/tim.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,78 @@
 +#ifndef __IDT_TIM_H__
 +#define __IDT_TIM_H__
@@ -5452,9 +5452,9 @@ diff -urN linux.old/include/asm-mips/rc32434/tim.h linux.dev/include/asm-mips/rc
 +} ;
 +#endif	// __IDT_TIM_H__
 +
-diff -urN linux.old/include/asm-mips/rc32434/types.h linux.dev/include/asm-mips/rc32434/types.h
---- linux.old/include/asm-mips/rc32434/types.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/types.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/types.h linux-2.6.17-owrt/include/asm-mips/rc32434/types.h
+--- linux-2.6.17/include/asm-mips/rc32434/types.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/types.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,39 @@
 +#ifndef __IDT_TYPES_H__
 +#define __IDT_TYPES_H__
@@ -5495,9 +5495,9 @@ diff -urN linux.old/include/asm-mips/rc32434/types.h linux.dev/include/asm-mips/
 +#endif	// __cplusplus
 +
 +#endif	// __IDT_TYPES_H__
-diff -urN linux.old/include/asm-mips/rc32434/uart.h linux.dev/include/asm-mips/rc32434/uart.h
---- linux.old/include/asm-mips/rc32434/uart.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux.dev/include/asm-mips/rc32434/uart.h	2006-06-15 16:26:53.000000000 +0200
+diff -Nur linux-2.6.17/include/asm-mips/rc32434/uart.h linux-2.6.17-owrt/include/asm-mips/rc32434/uart.h
+--- linux-2.6.17/include/asm-mips/rc32434/uart.h	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/include/asm-mips/rc32434/uart.h	2006-06-18 15:24:39.000000000 +0200
 @@ -0,0 +1,178 @@
 +#ifndef __IDT_UART_H__
 +#define __IDT_UART_H__
diff --git a/target/linux/sibyte-2.6/Makefile b/target/linux/sibyte-2.6/Makefile
index 3309a84e5..210c195ad 100644
--- a/target/linux/sibyte-2.6/Makefile
+++ b/target/linux/sibyte-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.7
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=9682b2bd6e02f3087982d7c3f5ba824e
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config
diff --git a/target/linux/sibyte-2.6/patches/000-DUART.patch b/target/linux/sibyte-2.6/patches/000-DUART.patch
index 480287ffa..fe899f145 100644
--- a/target/linux/sibyte-2.6/patches/000-DUART.patch
+++ b/target/linux/sibyte-2.6/patches/000-DUART.patch
@@ -1,5 +1,6 @@
---- linux-2.6.16.7/drivers/char/Kconfig	2006-04-21 14:38:30.000000000 -0700
-+++ linux-2.6.16.7/drivers/char/Kconfig	2006-04-21 14:39:29.000000000 -0700
+diff -Nur linux-2.6.17/drivers/char/Kconfig linux-2.6.17-owrt/drivers/char/Kconfig
+--- linux-2.6.17/drivers/char/Kconfig	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/char/Kconfig	2006-06-18 12:41:36.000000000 +0200
 @@ -340,6 +340,14 @@
  	  To compile this driver as a module, choose M here: the
  	  module will be called istallion.
@@ -15,20 +16,20 @@
  config AU1000_UART
  	bool "Enable Au1000 UART Support"
  	depends on SERIAL_NONSTANDARD && MIPS
-diff -Nurb linux-2.6.16.7/drivers/char/Makefile linux-2.6.16.7/drivers/char/Makefile
---- linux-2.6.16.7/drivers/char/Makefile	2006-04-17 14:53:25.000000000 -0700
-+++ linux-2.6.16.7/drivers/char/Makefile	2006-04-28 12:14:24.000000000 -0700
+diff -Nur linux-2.6.17/drivers/char/Makefile linux-2.6.17-owrt/drivers/char/Makefile
+--- linux-2.6.17/drivers/char/Makefile	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/drivers/char/Makefile	2006-06-18 12:42:57.000000000 +0200
 @@ -31,6 +31,7 @@
  obj-$(CONFIG_A2232)		+= ser_a2232.o generic_serial.o
  obj-$(CONFIG_ATARI_DSP56K)	+= dsp56k.o
  obj-$(CONFIG_MOXA_SMARTIO)	+= mxser.o
 +obj-$(CONFIG_SIBYTE_SB1250_DUART) += sb1250_duart.o
- obj-$(CONFIG_COMPUTONE)		+= ip2.o ip2main.o
+ obj-$(CONFIG_COMPUTONE)		+= ip2/
  obj-$(CONFIG_RISCOM8)		+= riscom8.o
  obj-$(CONFIG_ISI)		+= isicom.o
-diff -Nurb linux-2.6.16.7/drivers/char/sb1250_duart.c linux-2.6.16.7/drivers/char/sb1250_duart.c
---- linux-2.6.16.7/drivers/char/sb1250_duart.c	1969-12-31 16:00:00.000000000 -0800
-+++ linux-2.6.16.7/drivers/char/sb1250_duart.c	2006-04-28 12:13:49.000000000 -0700
+diff -Nur linux-2.6.17/drivers/char/sb1250_duart.c linux-2.6.17-owrt/drivers/char/sb1250_duart.c
+--- linux-2.6.17/drivers/char/sb1250_duart.c	1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.17-owrt/drivers/char/sb1250_duart.c	2006-06-18 12:41:36.000000000 +0200
 @@ -0,0 +1,911 @@
 +/*
 + * Copyright (C) 2000,2001,2002,2003,2004 Broadcom Corporation
@@ -941,9 +942,9 @@ diff -Nurb linux-2.6.16.7/drivers/char/sb1250_duart.c linux-2.6.16.7/drivers/cha
 +console_initcall(sb1250_serial_console_init);
 +
 +#endif /* CONFIG_SIBYTE_SB1250_DUART_CONSOLE */
-diff -Nurb linux-2.6.16.7/include/linux/serial.h linux-2.6.16.7/include/linux/serial.h
---- linux-2.6.16.7/include/linux/serial.h	2006-04-17 14:53:25.000000000 -0700
-+++ linux-2.6.16.7/include/linux/serial.h	2006-04-28 12:25:19.000000000 -0700
+diff -Nur linux-2.6.17/include/linux/serial.h linux-2.6.17-owrt/include/linux/serial.h
+--- linux-2.6.17/include/linux/serial.h	2006-06-18 03:49:35.000000000 +0200
++++ linux-2.6.17-owrt/include/linux/serial.h	2006-06-18 12:41:36.000000000 +0200
 @@ -76,7 +76,8 @@
  #define PORT_16654	11
  #define PORT_16850	12
diff --git a/target/linux/x86-2.6/Makefile b/target/linux/x86-2.6/Makefile
index 2a9ab2c97..7b2f1b068 100644
--- a/target/linux/x86-2.6/Makefile
+++ b/target/linux/x86-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.7
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=9682b2bd6e02f3087982d7c3f5ba824e
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config
diff --git a/target/linux/xscale-2.6/Makefile b/target/linux/xscale-2.6/Makefile
index 4f6a5db83..608a49408 100644
--- a/target/linux/xscale-2.6/Makefile
+++ b/target/linux/xscale-2.6/Makefile
@@ -1,8 +1,8 @@
 include $(TOPDIR)/rules.mk
 
-LINUX_VERSION:=2.6.16.7
+LINUX_VERSION:=2.6.17
 LINUX_RELEASE:=1
-LINUX_KERNEL_MD5SUM:=9682b2bd6e02f3087982d7c3f5ba824e
+LINUX_KERNEL_MD5SUM:=37ddefe96625502161f075b9d907f21e
 
 include ../rules.mk
 include ./config