---- a/drivers/mtd/devices/m25p80.c
-+++ b/drivers/mtd/devices/m25p80.c
-@@ -630,6 +630,11 @@ static struct flash_info __devinitdata m
- { "en25p32", 0x1c2016, 0, 64 * 1024, 64, },
- { "en25p64", 0x1c2017, 0, 64 * 1024, 128, },
-
-+ /* Numonyx -- xxxs33b */
-+ { "160s33b", 0x898911, 0, 64 * 1024, 64, },
-+ { "320s33b", 0x898912, 0, 64 * 1024, 128, },
-+ { "640s33b", 0x898913, 0, 64 * 1024, 256, },
-+
- /* PMC -- pm25x "blocks" are 32K, sectors are 4K */
- { "pm25lv512", 0, 32 * 1024, 2, SECT_4K },
- { "pm25lv010", 0, 32 * 1024, 4, SECT_4K },
-@@ -784,11 +789,12 @@ static int __devinit m25p_probe(struct s
- dev_set_drvdata(&spi->dev, flash);
-
- /*
-- * Atmel serial flash tend to power up
-+ * Atmel and Intel/Numonyx serial flash tend to power up
- * with the software protection bits set
- */
-
-- if (info->jedec_id >> 16 == 0x1f) {
-+ if (info->jedec_id >> 16 == 0x1f ||
-+ info->jedec_id >> 16 == 0x89) {
- write_enable(flash);
- write_sr(flash, 0);
- }