diff --git a/target/linux/etrax/patches-2.6.32/200-samsung_flash.patch b/target/linux/generic-2.6/patches-2.6.32/089-mtd-samsung-flash.patch
similarity index 100%
rename from target/linux/etrax/patches-2.6.32/200-samsung_flash.patch
rename to target/linux/generic-2.6/patches-2.6.32/089-mtd-samsung-flash.patch
diff --git a/target/linux/generic-2.6/patches-2.6.33/089-mtd-samsung-flash.patch b/target/linux/generic-2.6/patches-2.6.33/089-mtd-samsung-flash.patch
new file mode 100644
index 00000000000..eab03db50d0
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.33/089-mtd-samsung-flash.patch
@@ -0,0 +1,11 @@
+--- a/drivers/mtd/chips/cfi_cmdset_0002.c
++++ b/drivers/mtd/chips/cfi_cmdset_0002.c
+@@ -374,7 +374,7 @@ struct mtd_info *cfi_cmdset_0002(struct 
+ 
+ 		cfi_fixup_major_minor(cfi, extp);
+ 
+-		if (extp->MajorVersion != '1' ||
++		if (extp->MajorVersion < '0' || extp->MajorVersion > '3' ||
+ 		    (extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
+ 		        if (cfi->mfr == MANUFACTURER_SAMSUNG &&
+ 			    (extp->MajorVersion == '3' && extp->MinorVersion == '3')) {
diff --git a/target/linux/generic-2.6/patches-2.6.34/089-mtd-samsung-flash.patch b/target/linux/generic-2.6/patches-2.6.34/089-mtd-samsung-flash.patch
new file mode 100644
index 00000000000..eab03db50d0
--- /dev/null
+++ b/target/linux/generic-2.6/patches-2.6.34/089-mtd-samsung-flash.patch
@@ -0,0 +1,11 @@
+--- a/drivers/mtd/chips/cfi_cmdset_0002.c
++++ b/drivers/mtd/chips/cfi_cmdset_0002.c
+@@ -374,7 +374,7 @@ struct mtd_info *cfi_cmdset_0002(struct 
+ 
+ 		cfi_fixup_major_minor(cfi, extp);
+ 
+-		if (extp->MajorVersion != '1' ||
++		if (extp->MajorVersion < '0' || extp->MajorVersion > '3' ||
+ 		    (extp->MinorVersion < '0' || extp->MinorVersion > '4')) {
+ 		        if (cfi->mfr == MANUFACTURER_SAMSUNG &&
+ 			    (extp->MajorVersion == '3' && extp->MinorVersion == '3')) {