From b8f7592a924f42666f8a1ec2fb1d4ab97ca2c062 Mon Sep 17 00:00:00 2001
From: Florian Fainelli <florian@openwrt.org>
Date: Fri, 2 Mar 2012 13:18:56 +0000
Subject: [PATCH] refresh patches

SVN-Revision: 30779
---
 ...-cfi_show_amd_extended_table_version.patch |  2 +-
 .../020-mips_multi_machine_support.patch      |  2 +-
 .../040-arm-update-mach-types.patch           |  2 +-
 .../patches-2.6.36/065-rootfs_split.patch     |  8 +-
 .../patches-2.6.36/066-block2mtd_probe.patch  |  5 +-
 .../089-mtd-samsung-flash.patch               |  2 +-
 .../100-netfilter_layer7_2.22.patch           |  2 +-
 .../110-netfilter_match_speedup.patch         |  8 +-
 .../202-mips_mem_functions_performance.patch  |  2 +-
 .../patches-2.6.36/203-slab_maxsize.patch     |  2 +-
 .../210-mini_fo_2.6.25_fixes.patch            |  4 +-
 .../212-mini_fo_2.6.26_fixes.patch            |  2 +-
 .../223-kobject-add-broadcast_uevent.patch    |  2 +-
 .../patches-2.6.36/400-ledtrig_morse.patch    |  2 +-
 .../patches-2.6.36/402-ledtrig_netdev.patch   |  2 +-
 .../511-yaffs-cvs-2009-04-24.patch            | 76 +++++++++----------
 .../511-yaffs-git-2010-10-20.patch            |  6 +-
 .../patches-2.6.36/660-phy_mvswitch.patch     |  6 +-
 .../patches-2.6.36/670-phy_ip175c.patch       |  2 +-
 .../patches-2.6.36/680-phy_ar8216.patch       |  2 +-
 .../patches-2.6.36/690-phy_rtl8306.patch      |  2 +-
 .../patches-2.6.36/691-phy_rtl8366.patch      |  2 +-
 .../patches-2.6.36/903-hostap_txpower.patch   |  2 +-
 .../patches-2.6.36/941-ssb_update.patch       |  6 +-
 ...990-arm_export_dma_set_coherent_mask.patch |  2 +-
 .../998-openwrt_lzma_options.patch            |  2 +-
 26 files changed, 78 insertions(+), 77 deletions(-)

diff --git a/target/linux/generic/patches-2.6.36/014-cfi_show_amd_extended_table_version.patch b/target/linux/generic/patches-2.6.36/014-cfi_show_amd_extended_table_version.patch
index 2015aa0c3b..5e16d96486 100644
--- a/target/linux/generic/patches-2.6.36/014-cfi_show_amd_extended_table_version.patch
+++ b/target/linux/generic/patches-2.6.36/014-cfi_show_amd_extended_table_version.patch
@@ -1,6 +1,6 @@
 --- a/drivers/mtd/chips/cfi_cmdset_0002.c
 +++ b/drivers/mtd/chips/cfi_cmdset_0002.c
-@@ -418,9 +418,9 @@ struct mtd_info *cfi_cmdset_0002(struct 
+@@ -418,9 +418,9 @@ struct mtd_info *cfi_cmdset_0002(struct
  
  			/*
  			 * Valid primary extension versions are: 1.0, 1.1, 1.2, 1.3, 1.4
diff --git a/target/linux/generic/patches-2.6.36/020-mips_multi_machine_support.patch b/target/linux/generic/patches-2.6.36/020-mips_multi_machine_support.patch
index 64b9781976..a77913d281 100644
--- a/target/linux/generic/patches-2.6.36/020-mips_multi_machine_support.patch
+++ b/target/linux/generic/patches-2.6.36/020-mips_multi_machine_support.patch
@@ -176,7 +176,7 @@
  
  unsigned int vced_count, vcei_count;
  
-@@ -31,8 +32,12 @@ static int show_cpuinfo(struct seq_file 
+@@ -31,8 +32,12 @@ static int show_cpuinfo(struct seq_file
  	/*
  	 * For the first processor also print the system type
  	 */
diff --git a/target/linux/generic/patches-2.6.36/040-arm-update-mach-types.patch b/target/linux/generic/patches-2.6.36/040-arm-update-mach-types.patch
index 9c90fc7d88..faea9a4fbf 100644
--- a/target/linux/generic/patches-2.6.36/040-arm-update-mach-types.patch
+++ b/target/linux/generic/patches-2.6.36/040-arm-update-mach-types.patch
@@ -81,7 +81,7 @@
  htc_excalibur_s620	MACH_HTC_EXCALIBUR_S620	HTC_EXCALIBUR_S620	2391
  htc_opal		MACH_HTC_OPAL		HTC_OPAL		2392
  touchbook		MACH_TOUCHBOOK		TOUCHBOOK		2393
-@@ -2446,7 +2446,7 @@ siogentoo1		MACH_SIOGENTOO1		SIOGENTOO1	
+@@ -2446,7 +2446,7 @@ siogentoo1		MACH_SIOGENTOO1		SIOGENTOO1
  siogentoo2		MACH_SIOGENTOO2		SIOGENTOO2		2459
  sm3k			MACH_SM3K		SM3K			2460
  acer_tempo_f900		MACH_ACER_TEMPO_F900	ACER_TEMPO_F900		2461
diff --git a/target/linux/generic/patches-2.6.36/065-rootfs_split.patch b/target/linux/generic/patches-2.6.36/065-rootfs_split.patch
index 7e1fab106d..b97f55c611 100644
--- a/target/linux/generic/patches-2.6.36/065-rootfs_split.patch
+++ b/target/linux/generic/patches-2.6.36/065-rootfs_split.patch
@@ -190,7 +190,7 @@
  /*
   * This function, given a master MTD object and a partition table, creates
   * and registers slave MTD objects which are bound to the master according to
-@@ -539,7 +685,7 @@ int add_mtd_partitions(struct mtd_info *
+@@ -539,7 +687,7 @@ int add_mtd_partitions(struct mtd_info *
  {
  	struct mtd_part *slave;
  	uint64_t cur_offset = 0;
@@ -199,7 +199,7 @@
  
  	printk(KERN_NOTICE "Creating %d MTD partitions on \"%s\":\n", nbparts, master->name);
  
-@@ -547,6 +693,21 @@ int add_mtd_partitions(struct mtd_info *
+@@ -547,6 +695,21 @@ int add_mtd_partitions(struct mtd_info *
  		slave = add_one_partition(master, parts + i, i, cur_offset);
  		if (!slave)
  			return -ENOMEM;
@@ -221,7 +221,7 @@
  		cur_offset = slave->offset + slave->mtd.size;
  	}
  
-@@ -554,6 +715,32 @@ int add_mtd_partitions(struct mtd_info *
+@@ -554,6 +717,32 @@ int add_mtd_partitions(struct mtd_info *
  }
  EXPORT_SYMBOL(add_mtd_partitions);
  
@@ -556,7 +556,7 @@
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/map.h>
-@@ -854,6 +855,13 @@ static int mtd_ioctl(struct file *file, 
+@@ -854,6 +855,13 @@ static int mtd_ioctl(struct file *file,
  		file->f_pos = 0;
  		break;
  	}
diff --git a/target/linux/generic/patches-2.6.36/066-block2mtd_probe.patch b/target/linux/generic/patches-2.6.36/066-block2mtd_probe.patch
index b9130a446c..6716c4130a 100644
--- a/target/linux/generic/patches-2.6.36/066-block2mtd_probe.patch
+++ b/target/linux/generic/patches-2.6.36/066-block2mtd_probe.patch
@@ -1,6 +1,6 @@
 --- a/drivers/mtd/devices/block2mtd.c
 +++ b/drivers/mtd/devices/block2mtd.c
-@@ -264,10 +264,12 @@ static int _open_bdev(struct block2mtd_d
+@@ -265,11 +265,13 @@ static int _open_bdev(struct block2mtd_d
  	bdev = open_bdev_exclusive(dev->devname, FMODE_READ|FMODE_WRITE, NULL);
  #ifndef MODULE
  	if (IS_ERR(bdev)) {
@@ -9,8 +9,9 @@
  		/* We might not have rootfs mounted at this point. Try
  		   to resolve the device name by other means. */
  
-+		wait_for_device_probe();
 -		dev_t devt = name_to_dev_t(dev->devname);
++		wait_for_device_probe();
 +		devt = name_to_dev_t(dev->devname);
  		if (devt) {
  			bdev = open_by_devnum(devt, FMODE_WRITE | FMODE_READ);
+ 		}
diff --git a/target/linux/generic/patches-2.6.36/089-mtd-samsung-flash.patch b/target/linux/generic/patches-2.6.36/089-mtd-samsung-flash.patch
index 876e2dc10f..bdbb325b86 100644
--- a/target/linux/generic/patches-2.6.36/089-mtd-samsung-flash.patch
+++ b/target/linux/generic/patches-2.6.36/089-mtd-samsung-flash.patch
@@ -1,6 +1,6 @@
 --- a/drivers/mtd/chips/cfi_cmdset_0002.c
 +++ b/drivers/mtd/chips/cfi_cmdset_0002.c
-@@ -371,9 +371,34 @@ static struct cfi_fixup fixup_table[] = 
+@@ -371,9 +371,34 @@ static struct cfi_fixup fixup_table[] =
  static void cfi_fixup_major_minor(struct cfi_private *cfi,
  				  struct cfi_pri_amdstd *extp)
  {
diff --git a/target/linux/generic/patches-2.6.36/100-netfilter_layer7_2.22.patch b/target/linux/generic/patches-2.6.36/100-netfilter_layer7_2.22.patch
index 606ff07815..4d969e290b 100644
--- a/target/linux/generic/patches-2.6.36/100-netfilter_layer7_2.22.patch
+++ b/target/linux/generic/patches-2.6.36/100-netfilter_layer7_2.22.patch
@@ -30,7 +30,7 @@
  	depends on NETFILTER_ADVANCED
 --- a/net/netfilter/Makefile
 +++ b/net/netfilter/Makefile
-@@ -95,6 +95,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT) 
+@@ -95,6 +95,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT)
  obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o
  obj-$(CONFIG_NETFILTER_XT_MATCH_SOCKET) += xt_socket.o
  obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o
diff --git a/target/linux/generic/patches-2.6.36/110-netfilter_match_speedup.patch b/target/linux/generic/patches-2.6.36/110-netfilter_match_speedup.patch
index a99eb084c3..b146502f01 100644
--- a/target/linux/generic/patches-2.6.36/110-netfilter_match_speedup.patch
+++ b/target/linux/generic/patches-2.6.36/110-netfilter_match_speedup.patch
@@ -132,10 +132,11 @@
  
  		e = (struct ipt_entry *)(loc_cpu_entry + off);
  		if (copy_to_user(userptr + off
-@@ -984,6 +1025,14 @@ copy_entries_to_user(unsigned int total_
+@@ -983,6 +1024,14 @@ copy_entries_to_user(unsigned int total_
+ 			ret = -EFAULT;
  			goto free_counters;
  		}
- 
++
 +		flags = e->ip.flags & ~IPT_F_NO_DEF_MATCH;
 +		if (copy_to_user(userptr + off
 +				 + offsetof(struct ipt_entry, ip.flags),
@@ -143,7 +144,6 @@
 +			ret = -EFAULT;
 +			goto free_counters;
 +		}
-+
+ 
  		for (i = sizeof(struct ipt_entry);
  		     i < e->target_offset;
- 		     i += m->u.match_size) {
diff --git a/target/linux/generic/patches-2.6.36/202-mips_mem_functions_performance.patch b/target/linux/generic/patches-2.6.36/202-mips_mem_functions_performance.patch
index 6ea9ba51ee..e4324717b4 100644
--- a/target/linux/generic/patches-2.6.36/202-mips_mem_functions_performance.patch
+++ b/target/linux/generic/patches-2.6.36/202-mips_mem_functions_performance.patch
@@ -1,6 +1,6 @@
 --- a/arch/mips/include/asm/string.h
 +++ b/arch/mips/include/asm/string.h
-@@ -133,11 +133,44 @@ strncmp(__const__ char *__cs, __const__ 
+@@ -133,11 +133,44 @@ strncmp(__const__ char *__cs, __const__
  
  #define __HAVE_ARCH_MEMSET
  extern void *memset(void *__s, int __c, size_t __count);
diff --git a/target/linux/generic/patches-2.6.36/203-slab_maxsize.patch b/target/linux/generic/patches-2.6.36/203-slab_maxsize.patch
index 83fd6c3099..fe8cecfc77 100644
--- a/target/linux/generic/patches-2.6.36/203-slab_maxsize.patch
+++ b/target/linux/generic/patches-2.6.36/203-slab_maxsize.patch
@@ -1,6 +1,6 @@
 --- a/include/linux/slab.h
 +++ b/include/linux/slab.h
-@@ -130,8 +130,8 @@ int kmem_ptr_validate(struct kmem_cache 
+@@ -130,8 +130,8 @@ int kmem_ptr_validate(struct kmem_cache
   * to do various tricks to work around compiler limitations in order to
   * ensure proper constant folding.
   */
diff --git a/target/linux/generic/patches-2.6.36/210-mini_fo_2.6.25_fixes.patch b/target/linux/generic/patches-2.6.36/210-mini_fo_2.6.25_fixes.patch
index 826eb44dff..d021ec1b30 100644
--- a/target/linux/generic/patches-2.6.36/210-mini_fo_2.6.25_fixes.patch
+++ b/target/linux/generic/patches-2.6.36/210-mini_fo_2.6.25_fixes.patch
@@ -61,7 +61,7 @@
  #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
  extern int mini_fo_create(inode_t *dir, dentry_t *dentry, int mode, struct nameidata *nd);
  
-@@ -501,6 +505,29 @@ static inline void double_unlock(struct 
+@@ -501,6 +505,29 @@ static inline void double_unlock(struct
  #endif  /* if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0) */
  #endif /* __KERNEL__ */
  
@@ -127,7 +127,7 @@
  #endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
 --- a/fs/mini_fo/aux.c
 +++ b/fs/mini_fo/aux.c
-@@ -164,11 +164,11 @@ dentry_t *bpath_walk(super_block_t *sb, 
+@@ -164,11 +164,11 @@ dentry_t *bpath_walk(super_block_t *sb,
  	err = vfs_path_lookup(mnt->mnt_root, mnt, bpath+1, 0, &nd);
  
  	/* validate */
diff --git a/target/linux/generic/patches-2.6.36/212-mini_fo_2.6.26_fixes.patch b/target/linux/generic/patches-2.6.36/212-mini_fo_2.6.26_fixes.patch
index 37503710c8..d2a843c82e 100644
--- a/target/linux/generic/patches-2.6.36/212-mini_fo_2.6.26_fixes.patch
+++ b/target/linux/generic/patches-2.6.36/212-mini_fo_2.6.26_fixes.patch
@@ -1,6 +1,6 @@
 --- a/fs/mini_fo/super.c
 +++ b/fs/mini_fo/super.c
-@@ -84,6 +84,7 @@ mini_fo_write_inode(inode_t *inode, int 
+@@ -84,6 +84,7 @@ mini_fo_write_inode(inode_t *inode, int
  #endif /* defined(FIST_DEBUG) || defined(FIST_FILTER_SCA) */
  
  
diff --git a/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch b/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
index 7f50a199d4..cfe96f194e 100644
--- a/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
+++ b/target/linux/generic/patches-2.6.36/223-kobject-add-broadcast_uevent.patch
@@ -20,7 +20,7 @@
  #else
  static inline int kobject_uevent(struct kobject *kobj,
  				 enum kobject_action action)
-@@ -229,6 +235,16 @@ static inline int add_uevent_var(struct 
+@@ -229,6 +235,16 @@ static inline int add_uevent_var(struct
  static inline int kobject_action_type(const char *buf, size_t count,
  				      enum kobject_action *type)
  { return -EINVAL; }
diff --git a/target/linux/generic/patches-2.6.36/400-ledtrig_morse.patch b/target/linux/generic/patches-2.6.36/400-ledtrig_morse.patch
index e3398a0270..f3f342f866 100644
--- a/target/linux/generic/patches-2.6.36/400-ledtrig_morse.patch
+++ b/target/linux/generic/patches-2.6.36/400-ledtrig_morse.patch
@@ -11,7 +11,7 @@
  endif # NEW_LEDS
 --- a/drivers/leds/Makefile
 +++ b/drivers/leds/Makefile
-@@ -49,3 +49,4 @@ obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)	+= 
+@@ -49,3 +49,4 @@ obj-$(CONFIG_LEDS_TRIGGER_HEARTBEAT)	+=
  obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT)	+= ledtrig-backlight.o
  obj-$(CONFIG_LEDS_TRIGGER_GPIO)		+= ledtrig-gpio.o
  obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON)	+= ledtrig-default-on.o
diff --git a/target/linux/generic/patches-2.6.36/402-ledtrig_netdev.patch b/target/linux/generic/patches-2.6.36/402-ledtrig_netdev.patch
index d229a2e420..4eb139b9ba 100644
--- a/target/linux/generic/patches-2.6.36/402-ledtrig_netdev.patch
+++ b/target/linux/generic/patches-2.6.36/402-ledtrig_netdev.patch
@@ -14,7 +14,7 @@
  endif # NEW_LEDS
 --- a/drivers/leds/Makefile
 +++ b/drivers/leds/Makefile
-@@ -50,3 +50,4 @@ obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT)	+= 
+@@ -50,3 +50,4 @@ obj-$(CONFIG_LEDS_TRIGGER_BACKLIGHT)	+=
  obj-$(CONFIG_LEDS_TRIGGER_GPIO)		+= ledtrig-gpio.o
  obj-$(CONFIG_LEDS_TRIGGER_DEFAULT_ON)	+= ledtrig-default-on.o
  obj-$(CONFIG_LEDS_TRIGGER_MORSE)	+= ledtrig-morse.o
diff --git a/target/linux/generic/patches-2.6.36/511-yaffs-cvs-2009-04-24.patch b/target/linux/generic/patches-2.6.36/511-yaffs-cvs-2009-04-24.patch
index 5c70e79a05..c334b17d08 100644
--- a/target/linux/generic/patches-2.6.36/511-yaffs-cvs-2009-04-24.patch
+++ b/target/linux/generic/patches-2.6.36/511-yaffs-cvs-2009-04-24.patch
@@ -601,7 +601,7 @@
  			dev->checkpointBlockList[i] = -1;
  	}
  
-@@ -191,18 +185,17 @@ int yaffs_GetCheckpointSum(yaffs_Device 
+@@ -191,18 +185,17 @@ int yaffs_GetCheckpointSum(yaffs_Device
  
  static int yaffs_CheckpointFlushBuffer(yaffs_Device *dev)
  {
@@ -926,7 +926,7 @@
  {
  	unsigned char cDelta;	/* column parity delta */
  	unsigned lDelta;	/* line parity delta */
-@@ -294,8 +292,7 @@ int yaffs_ECCCorrectOther(unsigned char 
+@@ -294,8 +292,7 @@ int yaffs_ECCCorrectOther(unsigned char
  		return 0; /* no error */
  
  	if (lDelta == ~lDeltaPrime &&
@@ -936,7 +936,7 @@
  		/* Single bit (recoverable) error in data */
  
  		bit = 0;
-@@ -307,7 +304,7 @@ int yaffs_ECCCorrectOther(unsigned char 
+@@ -307,7 +304,7 @@ int yaffs_ECCCorrectOther(unsigned char
  		if (cDelta & 0x02)
  			bit |= 0x01;
  
@@ -945,7 +945,7 @@
  			return -1;
  
  		data[lDelta] ^= (1 << bit);
-@@ -316,7 +313,7 @@ int yaffs_ECCCorrectOther(unsigned char 
+@@ -316,7 +313,7 @@ int yaffs_ECCCorrectOther(unsigned char
  	}
  
  	if ((yaffs_CountBits32(lDelta) + yaffs_CountBits32(lDeltaPrime) +
@@ -954,7 +954,7 @@
  		/* Reccoverable error in ecc */
  
  		*read_ecc = *test_ecc;
-@@ -326,6 +323,4 @@ int yaffs_ECCCorrectOther(unsigned char 
+@@ -326,6 +323,4 @@ int yaffs_ECCCorrectOther(unsigned char
  	/* Unrecoverable error */
  
  	return -1;
@@ -1398,7 +1398,7 @@
  {
  	unsigned char *alias;
  	int ret;
-@@ -329,7 +395,7 @@ static int yaffs_readlink(struct dentry 
+@@ -329,7 +395,7 @@ static int yaffs_readlink(struct dentry
  	return ret;
  }
  
@@ -1560,7 +1560,7 @@
  static int yaffs_file_flush(struct file *file, fl_owner_t id)
  #else
  static int yaffs_file_flush(struct file *file)
-@@ -513,8 +579,8 @@ static int yaffs_file_flush(struct file 
+@@ -513,8 +579,8 @@ static int yaffs_file_flush(struct file
  	yaffs_Device *dev = obj->myDev;
  
  	T(YAFFS_TRACE_OS,
@@ -1571,7 +1571,7 @@
  
  	yaffs_GrossLock(dev);
  
-@@ -535,15 +601,15 @@ static int yaffs_readpage_nolock(struct 
+@@ -535,15 +601,15 @@ static int yaffs_readpage_nolock(struct
  
  	yaffs_Device *dev;
  
@@ -1591,7 +1591,7 @@
  	BUG_ON(!PageLocked(pg));
  #else
  	if (!PageLocked(pg))
-@@ -555,9 +621,9 @@ static int yaffs_readpage_nolock(struct 
+@@ -555,9 +621,9 @@ static int yaffs_readpage_nolock(struct
  
  	yaffs_GrossLock(dev);
  
@@ -1604,7 +1604,7 @@
  
  	yaffs_GrossUnlock(dev);
  
-@@ -575,7 +641,7 @@ static int yaffs_readpage_nolock(struct 
+@@ -575,7 +641,7 @@ static int yaffs_readpage_nolock(struct
  	flush_dcache_page(pg);
  	kunmap(pg);
  
@@ -3193,7 +3193,7 @@
  		if (n < step) {
  			n++;
  			continue;
-@@ -2119,7 +2356,7 @@ static int yaffs_proc_write(struct file 
+@@ -2119,7 +2356,7 @@ static int yaffs_proc_write(struct file
  	char *end;
  	char *mask_name;
  	const char *x;
@@ -3202,7 +3202,7 @@
  	int i;
  	int done = 0;
  	int add, len = 0;
-@@ -2129,9 +2366,8 @@ static int yaffs_proc_write(struct file 
+@@ -2129,9 +2366,8 @@ static int yaffs_proc_write(struct file
  
  	while (!done && (pos < count)) {
  		done = 1;
@@ -3213,7 +3213,7 @@
  
  		switch (buf[pos]) {
  		case '+':
-@@ -2148,20 +2384,21 @@ static int yaffs_proc_write(struct file 
+@@ -2148,20 +2384,21 @@ static int yaffs_proc_write(struct file
  		mask_name = NULL;
  
  		mask_bitfield = simple_strtoul(buf + pos, &end, 0);
@@ -3240,7 +3240,7 @@
  					mask_name = mask_flags[i].mask_name;
  					mask_bitfield = mask_flags[i].mask_bitfield;
  					done = 0;
-@@ -2172,7 +2409,7 @@ static int yaffs_proc_write(struct file 
+@@ -2172,7 +2409,7 @@ static int yaffs_proc_write(struct file
  
  		if (mask_name != NULL) {
  			done = 0;
@@ -3249,7 +3249,7 @@
  			case '-':
  				rg &= ~mask_bitfield;
  				break;
-@@ -2191,13 +2428,13 @@ static int yaffs_proc_write(struct file 
+@@ -2191,13 +2428,13 @@ static int yaffs_proc_write(struct file
  
  	yaffs_traceMask = rg | YAFFS_TRACE_ALWAYS;
  
@@ -5691,7 +5691,7 @@
  {
  	/* Get the real object in case we were fed a hard link as an equivalent object */
  	equivalentObject = yaffs_GetEquivalentObject(equivalentObject);
-@@ -2363,33 +2396,31 @@ yaffs_Object *yaffs_Link(yaffs_Object * 
+@@ -2363,33 +2396,31 @@ yaffs_Object *yaffs_Link(yaffs_Object *
  
  }
  
@@ -7622,7 +7622,7 @@
  	int nToCopy;
  	int n = nBytes;
  	int nDone = 0;
-@@ -4600,27 +4665,26 @@ int yaffs_ReadDataFromFile(yaffs_Object 
+@@ -4600,27 +4665,26 @@ int yaffs_ReadDataFromFile(yaffs_Object
  	dev = in->myDev;
  
  	while (n > 0) {
@@ -7657,7 +7657,7 @@
  			if (dev->nShortOpCaches > 0) {
  
  				/* If we can't find the data in the cache, then load it up. */
-@@ -4641,14 +4705,9 @@ int yaffs_ReadDataFromFile(yaffs_Object 
+@@ -4641,14 +4705,9 @@ int yaffs_ReadDataFromFile(yaffs_Object
  
  				cache->locked = 1;
  
@@ -7673,7 +7673,7 @@
  				cache->locked = 0;
  			} else {
  				/* Read into the local buffer then copy..*/
-@@ -4657,41 +4716,19 @@ int yaffs_ReadDataFromFile(yaffs_Object 
+@@ -4657,41 +4716,19 @@ int yaffs_ReadDataFromFile(yaffs_Object
  				    yaffs_GetTempBuffer(dev, __LINE__);
  				yaffs_ReadChunkDataFromObject(in, chunk,
  							      localBuffer);
@@ -7718,7 +7718,7 @@
  		}
  
  		n -= nToCopy;
-@@ -4704,28 +4741,37 @@ int yaffs_ReadDataFromFile(yaffs_Object 
+@@ -4704,28 +4741,37 @@ int yaffs_ReadDataFromFile(yaffs_Object
  	return nDone;
  }
  
@@ -7923,7 +7923,7 @@
  	int newFullChunks;
  
  	yaffs_Device *dev = in->myDev;
-@@ -4955,13 +4981,11 @@ int yaffs_ResizeFile(yaffs_Object * in, 
+@@ -4955,13 +4981,11 @@ int yaffs_ResizeFile(yaffs_Object * in,
  
  	yaffs_CheckGarbageCollection(dev);
  
@@ -7941,7 +7941,7 @@
  
  	if (newSize < oldFileSize) {
  
-@@ -4994,21 +5018,20 @@ int yaffs_ResizeFile(yaffs_Object * in, 
+@@ -4994,21 +5018,20 @@ int yaffs_ResizeFile(yaffs_Object * in,
  	}
  
  
@@ -7968,7 +7968,7 @@
  {
  	obj = yaffs_GetEquivalentObject(obj);
  
-@@ -5024,7 +5047,7 @@ loff_t yaffs_GetFileSize(yaffs_Object * 
+@@ -5024,7 +5047,7 @@ loff_t yaffs_GetFileSize(yaffs_Object *
  
  
  
@@ -9789,7 +9789,7 @@
  {
  	int init_failed = 0;
  	unsigned x;
-@@ -7040,6 +7126,8 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7040,6 +7126,8 @@ int yaffs_GutsInitialise(yaffs_Device *
  	dev->chunkOffset = 0;
  	dev->nFreeChunks = 0;
  
@@ -9798,7 +9798,7 @@
  	if (dev->startBlock == 0) {
  		dev->internalStartBlock = dev->startBlock + 1;
  		dev->internalEndBlock = dev->endBlock + 1;
-@@ -7049,18 +7137,18 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7049,18 +7137,18 @@ int yaffs_GutsInitialise(yaffs_Device *
  
  	/* Check geometry parameters. */
  
@@ -9823,7 +9823,7 @@
  		return YAFFS_FAIL;
  	}
  
-@@ -7070,6 +7158,12 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7070,6 +7158,12 @@ int yaffs_GutsInitialise(yaffs_Device *
  		return YAFFS_FAIL;
  	}
  
@@ -9836,7 +9836,7 @@
  	/* Got the right mix of functions? */
  	if (!yaffs_CheckDevFunctions(dev)) {
  		/* Function missing */
-@@ -7097,31 +7191,18 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7097,31 +7191,18 @@ int yaffs_GutsInitialise(yaffs_Device *
  
  	dev->isMounted = 1;
  
@@ -9875,7 +9875,7 @@
  
  	/*
  	 * Calculate chunkGroupBits.
-@@ -7133,16 +7214,15 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7133,16 +7214,15 @@ int yaffs_GutsInitialise(yaffs_Device *
  	bits = ShiftsGE(x);
  
  	/* Set up tnode width if wide tnodes are enabled. */
@@ -9896,7 +9896,7 @@
  		dev->tnodeWidth = 16;
  
  	dev->tnodeMask = (1<<dev->tnodeWidth)-1;
-@@ -7193,7 +7273,7 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7193,7 +7273,7 @@ int yaffs_GutsInitialise(yaffs_Device *
  	dev->hasPendingPrioritisedGCs = 1; /* Assume the worst for now, will get fixed on first GC */
  
  	/* Initialise temporary buffers and caches. */
@@ -9905,7 +9905,7 @@
  		init_failed = 1;
  
  	dev->srCache = NULL;
-@@ -7203,25 +7283,26 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7203,25 +7283,26 @@ int yaffs_GutsInitialise(yaffs_Device *
  	if (!init_failed &&
  	    dev->nShortOpCaches > 0) {
  		int i;
@@ -9940,7 +9940,7 @@
  			init_failed = 1;
  
  		dev->srLastUse = 0;
-@@ -7229,29 +7310,30 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7229,29 +7310,30 @@ int yaffs_GutsInitialise(yaffs_Device *
  
  	dev->cacheHits = 0;
  
@@ -9979,7 +9979,7 @@
  				T(YAFFS_TRACE_ALWAYS,
  				  (TSTR("yaffs: restored from checkpoint" TENDSTR)));
  			} else {
-@@ -7273,24 +7355,25 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7273,24 +7355,25 @@ int yaffs_GutsInitialise(yaffs_Device *
  				dev->nBackgroundDeletions = 0;
  				dev->oldestDirtySequence = 0;
  
@@ -10011,7 +10011,7 @@
  		/* Clean up the mess */
  		T(YAFFS_TRACE_TRACING,
  		  (TSTR("yaffs: yaffs_GutsInitialise() aborted.\n" TENDSTR)));
-@@ -7318,7 +7401,7 @@ int yaffs_GutsInitialise(yaffs_Device * 
+@@ -7318,7 +7401,7 @@ int yaffs_GutsInitialise(yaffs_Device *
  
  }
  
@@ -10710,7 +10710,7 @@
  {
  	if (etags) {
  		memset(etags, 0, sizeof(*etags));
-@@ -169,9 +169,9 @@ static int rettags(yaffs_ExtendedTags * 
+@@ -169,9 +169,9 @@ static int rettags(yaffs_ExtendedTags *
   * Returns YAFFS_OK or YAFFS_FAIL.
   */
  int nandmtd1_ReadChunkWithTagsFromNAND(yaffs_Device *dev,
@@ -11038,14 +11038,14 @@
 +			yaffs_UnpackTags2(tags, &pt);
 +		}
 +	}
- 
--	if(tags && retval == -EBADMSG && tags->eccResult == YAFFS_ECC_RESULT_NO_ERROR)
--		tags->eccResult = YAFFS_ECC_RESULT_UNFIXED;
++
 +	if (localData)
 +		yaffs_ReleaseTempBuffer(dev, data, __LINE__);
  
+-	if(tags && retval == -EBADMSG && tags->eccResult == YAFFS_ECC_RESULT_NO_ERROR)
 +	if (tags && retval == -EBADMSG && tags->eccResult == YAFFS_ECC_RESULT_NO_ERROR)
-+		tags->eccResult = YAFFS_ECC_RESULT_UNFIXED;
+ 		tags->eccResult = YAFFS_ECC_RESULT_UNFIXED;
+-
  	if (retval == 0)
  		return YAFFS_OK;
  	else
diff --git a/target/linux/generic/patches-2.6.36/511-yaffs-git-2010-10-20.patch b/target/linux/generic/patches-2.6.36/511-yaffs-git-2010-10-20.patch
index a0c532a959..db889badcd 100644
--- a/target/linux/generic/patches-2.6.36/511-yaffs-git-2010-10-20.patch
+++ b/target/linux/generic/patches-2.6.36/511-yaffs-git-2010-10-20.patch
@@ -316,7 +316,7 @@
  chunk/page state.  This byte is zeroed when the page is discarded.
  Choose this option if you have existing on-NAND data in this format
  that you need to continue to support.  New data written also uses the
-@@ -57,7 +78,7 @@ adjusted to use the older-style format. 
+@@ -57,7 +78,7 @@ adjusted to use the older-style format.
  MTD versions in yaffs_mtdif1.c.
  */
  /* Default: Not selected */
@@ -1614,7 +1614,7 @@
  			yaffs_ECCOther *read_ecc,
  			const yaffs_ECCOther *test_ecc)
  {
-@@ -304,7 +301,7 @@ int yaffs_ECCCorrectOther(unsigned char 
+@@ -304,7 +301,7 @@ int yaffs_ECCCorrectOther(unsigned char
  		if (cDelta & 0x02)
  			bit |= 0x01;
  
@@ -1623,7 +1623,7 @@
  			return -1;
  
  		data[lDelta] ^= (1 << bit);
-@@ -312,8 +309,8 @@ int yaffs_ECCCorrectOther(unsigned char 
+@@ -312,8 +309,8 @@ int yaffs_ECCCorrectOther(unsigned char
  		return 1; /* corrected */
  	}
  
diff --git a/target/linux/generic/patches-2.6.36/660-phy_mvswitch.patch b/target/linux/generic/patches-2.6.36/660-phy_mvswitch.patch
index f5ff558b0f..eecba4c6dd 100644
--- a/target/linux/generic/patches-2.6.36/660-phy_mvswitch.patch
+++ b/target/linux/generic/patches-2.6.36/660-phy_mvswitch.patch
@@ -1,8 +1,8 @@
 --- a/drivers/net/phy/Kconfig
 +++ b/drivers/net/phy/Kconfig
-@@ -104,6 +104,9 @@ config ADM6996_PHY
- 	---help---
- 	  Currently supports the ADM6996F switch
+@@ -106,6 +106,9 @@ config ADM6996_PHY
+ 	  Currently supports the ADM6996FC and ADM6996M switches.
+ 	  Support for FC is very limited.
  
 +config MVSWITCH_PHY
 +	tristate "Driver for Marvell 88E6060 switches"
diff --git a/target/linux/generic/patches-2.6.36/670-phy_ip175c.patch b/target/linux/generic/patches-2.6.36/670-phy_ip175c.patch
index 22a56ed4dc..0da9ab3837 100644
--- a/target/linux/generic/patches-2.6.36/670-phy_ip175c.patch
+++ b/target/linux/generic/patches-2.6.36/670-phy_ip175c.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/phy/Kconfig
 +++ b/drivers/net/phy/Kconfig
-@@ -107,6 +107,10 @@ config ADM6996_PHY
+@@ -109,6 +109,10 @@ config ADM6996_PHY
  config MVSWITCH_PHY
  	tristate "Driver for Marvell 88E6060 switches"
  
diff --git a/target/linux/generic/patches-2.6.36/680-phy_ar8216.patch b/target/linux/generic/patches-2.6.36/680-phy_ar8216.patch
index c375a97292..08820040f1 100644
--- a/target/linux/generic/patches-2.6.36/680-phy_ar8216.patch
+++ b/target/linux/generic/patches-2.6.36/680-phy_ar8216.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/phy/Kconfig
 +++ b/drivers/net/phy/Kconfig
-@@ -111,6 +111,10 @@ config IP17XX_PHY
+@@ -113,6 +113,10 @@ config IP17XX_PHY
  	tristate "Driver for IC+ IP17xx switches"
  	select SWCONFIG
  
diff --git a/target/linux/generic/patches-2.6.36/690-phy_rtl8306.patch b/target/linux/generic/patches-2.6.36/690-phy_rtl8306.patch
index e97b84d48c..4e286c9bca 100644
--- a/target/linux/generic/patches-2.6.36/690-phy_rtl8306.patch
+++ b/target/linux/generic/patches-2.6.36/690-phy_rtl8306.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/phy/Kconfig
 +++ b/drivers/net/phy/Kconfig
-@@ -115,6 +115,10 @@ config AR8216_PHY
+@@ -117,6 +117,10 @@ config AR8216_PHY
  	tristate "Driver for Atheros AR8216 switches"
  	select SWCONFIG
  
diff --git a/target/linux/generic/patches-2.6.36/691-phy_rtl8366.patch b/target/linux/generic/patches-2.6.36/691-phy_rtl8366.patch
index 34ac10ed39..19c7e0d8e9 100644
--- a/target/linux/generic/patches-2.6.36/691-phy_rtl8366.patch
+++ b/target/linux/generic/patches-2.6.36/691-phy_rtl8366.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/phy/Kconfig
 +++ b/drivers/net/phy/Kconfig
-@@ -157,4 +157,29 @@ config MDIO_OCTEON
+@@ -159,4 +159,29 @@ config MDIO_OCTEON
  
  	  If in doubt, say Y.
  
diff --git a/target/linux/generic/patches-2.6.36/903-hostap_txpower.patch b/target/linux/generic/patches-2.6.36/903-hostap_txpower.patch
index ad44715411..e40053170c 100644
--- a/target/linux/generic/patches-2.6.36/903-hostap_txpower.patch
+++ b/target/linux/generic/patches-2.6.36/903-hostap_txpower.patch
@@ -1,6 +1,6 @@
 --- a/drivers/net/wireless/hostap/hostap_ap.c
 +++ b/drivers/net/wireless/hostap/hostap_ap.c
-@@ -2335,13 +2335,13 @@ int prism2_ap_get_sta_qual(local_info_t 
+@@ -2335,13 +2335,13 @@ int prism2_ap_get_sta_qual(local_info_t
  		addr[count].sa_family = ARPHRD_ETHER;
  		memcpy(addr[count].sa_data, sta->addr, ETH_ALEN);
  		if (sta->last_rx_silence == 0)
diff --git a/target/linux/generic/patches-2.6.36/941-ssb_update.patch b/target/linux/generic/patches-2.6.36/941-ssb_update.patch
index 80abe65979..9f8dfb8782 100644
--- a/target/linux/generic/patches-2.6.36/941-ssb_update.patch
+++ b/target/linux/generic/patches-2.6.36/941-ssb_update.patch
@@ -504,7 +504,7 @@
  	/* TODO - get remaining rev 8 stuff needed */
  }
  
-@@ -573,37 +682,34 @@ static int sprom_extract(struct ssb_bus 
+@@ -573,37 +682,34 @@ static int sprom_extract(struct ssb_bus
  	ssb_dprintk(KERN_DEBUG PFX "SPROM revision %d detected.\n", out->revision);
  	memset(out->et0mac, 0xFF, 6);		/* preset et0 and et1 mac */
  	memset(out->et1mac, 0xFF, 6);
@@ -563,7 +563,7 @@
  	}
  
  	if (out->boardflags_lo == 0xFFFF)
-@@ -617,15 +723,14 @@ static int sprom_extract(struct ssb_bus 
+@@ -617,15 +723,14 @@ static int sprom_extract(struct ssb_bus
  static int ssb_pci_sprom_get(struct ssb_bus *bus,
  			     struct ssb_sprom *sprom)
  {
@@ -861,7 +861,7 @@
  
  /* Suspend a SSB bus.
   * Call this from the parent bus suspend routine. */
-@@ -514,6 +538,7 @@ extern int ssb_bus_may_powerdown(struct 
+@@ -514,6 +538,7 @@ extern int ssb_bus_may_powerdown(struct
   * Otherwise static always-on powercontrol will be used. */
  extern int ssb_bus_powerup(struct ssb_bus *bus, bool dynamic_pctl);
  
diff --git a/target/linux/generic/patches-2.6.36/990-arm_export_dma_set_coherent_mask.patch b/target/linux/generic/patches-2.6.36/990-arm_export_dma_set_coherent_mask.patch
index 86da2f0adb..e1fcf448c1 100644
--- a/target/linux/generic/patches-2.6.36/990-arm_export_dma_set_coherent_mask.patch
+++ b/target/linux/generic/patches-2.6.36/990-arm_export_dma_set_coherent_mask.patch
@@ -23,7 +23,7 @@ Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
 +EXPORT_SYMBOL(dma_set_coherent_mask);
 --- a/arch/arm/mach-ixp4xx/common-pci.c
 +++ b/arch/arm/mach-ixp4xx/common-pci.c
-@@ -513,4 +513,4 @@ int dma_set_coherent_mask(struct device 
+@@ -513,4 +513,4 @@ int dma_set_coherent_mask(struct device
  
  EXPORT_SYMBOL(ixp4xx_pci_read);
  EXPORT_SYMBOL(ixp4xx_pci_write);
diff --git a/target/linux/generic/patches-2.6.36/998-openwrt_lzma_options.patch b/target/linux/generic/patches-2.6.36/998-openwrt_lzma_options.patch
index e63d733be9..77161f684d 100644
--- a/target/linux/generic/patches-2.6.36/998-openwrt_lzma_options.patch
+++ b/target/linux/generic/patches-2.6.36/998-openwrt_lzma_options.patch
@@ -1,6 +1,6 @@
 --- a/scripts/Makefile.lib
 +++ b/scripts/Makefile.lib
-@@ -238,7 +238,7 @@ cmd_bzip2 = (cat $(filter-out FORCE,$^) 
+@@ -238,7 +238,7 @@ cmd_bzip2 = (cat $(filter-out FORCE,$^)
  
  quiet_cmd_lzma = LZMA    $@
  cmd_lzma = (cat $(filter-out FORCE,$^) | \
-- 
2.30.2