X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/0550b7935a23d859aa63938567f03c916c481989..0a50cc95bfc954ad2f1674a84971f146e335327f:/target/linux/storm/patches/1020-mtd.patch diff --git a/target/linux/storm/patches/1020-mtd.patch b/target/linux/storm/patches/1020-mtd.patch index 2c102d602..ce73e7c13 100644 --- a/target/linux/storm/patches/1020-mtd.patch +++ b/target/linux/storm/patches/1020-mtd.patch @@ -1,8 +1,8 @@ -Index: linux-2.6.23.16/drivers/mtd/chips/Kconfig +Index: linux-2.6.23.17/drivers/mtd/chips/Kconfig =================================================================== ---- linux-2.6.23.16.orig/drivers/mtd/chips/Kconfig 2008-03-15 17:03:14.374622039 +0200 -+++ linux-2.6.23.16/drivers/mtd/chips/Kconfig 2008-03-15 17:03:17.874821522 +0200 -@@ -220,6 +220,13 @@ +--- linux-2.6.23.17.orig/drivers/mtd/chips/Kconfig ++++ linux-2.6.23.17/drivers/mtd/chips/Kconfig +@@ -220,6 +220,13 @@ config MTD_ROM This option enables basic support for ROM chips accessed through a bus mapping driver. @@ -16,10 +16,10 @@ Index: linux-2.6.23.16/drivers/mtd/chips/Kconfig config MTD_ABSENT tristate "Support for absent chips in bus mapping" help -Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c +Index: linux-2.6.23.17/drivers/mtd/chips/cfi_cmdset_0002.c =================================================================== ---- linux-2.6.23.16.orig/drivers/mtd/chips/cfi_cmdset_0002.c 2008-03-15 17:03:14.374622039 +0200 -+++ linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c 2008-03-15 17:03:17.874821522 +0200 +--- linux-2.6.23.17.orig/drivers/mtd/chips/cfi_cmdset_0002.c ++++ linux-2.6.23.17/drivers/mtd/chips/cfi_cmdset_0002.c @@ -39,10 +39,15 @@ #include #include @@ -39,7 +39,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c #define MANUFACTURER_AMD 0x0001 #define MANUFACTURER_ATMEL 0x001F -@@ -322,6 +327,13 @@ +@@ -322,6 +327,13 @@ struct mtd_info *cfi_cmdset_0002(struct #endif bootloc = extp->TopBottom; @@ -53,7 +53,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c if ((bootloc != 2) && (bootloc != 3)) { printk(KERN_WARNING "%s: CFI does not contain boot " "bank location. Assuming top.\n", map->name); -@@ -340,6 +352,9 @@ +@@ -340,6 +352,9 @@ struct mtd_info *cfi_cmdset_0002(struct cfi->cfiq->EraseRegionInfo[j] = swap; } } @@ -63,7 +63,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c /* Set the default CFI lock/unlock addresses */ cfi->addr_unlock1 = 0x555; cfi->addr_unlock2 = 0x2aa; -@@ -461,6 +476,7 @@ +@@ -461,6 +476,7 @@ static int __xipram chip_ready(struct ma map_word d, t; d = map_read(map, addr); @@ -71,7 +71,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c t = map_read(map, addr); return map_word_equal(map, d, t); -@@ -626,7 +642,9 @@ +@@ -626,7 +642,9 @@ static void put_chip(struct map_info *ma default: printk(KERN_ERR "MTD: put_chip() called with oldstate %d!!\n", chip->oldstate); } @@ -81,7 +81,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c } #ifdef CONFIG_MTD_XIP -@@ -940,7 +958,9 @@ +@@ -940,7 +958,9 @@ static inline int do_read_secsi_onechip( cfi_send_gen_cmd(0x90, cfi->addr_unlock1, chip->start, map, cfi, cfi->device_type, NULL); cfi_send_gen_cmd(0x00, cfi->addr_unlock1, chip->start, map, cfi, cfi->device_type, NULL); @@ -91,7 +91,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c spin_unlock(chip->mutex); return 0; -@@ -1005,7 +1025,10 @@ +@@ -1005,7 +1025,10 @@ static int __xipram do_write_oneword(str */ unsigned long uWriteTimeout = ( HZ / 1000 ) + 1; int ret = 0; @@ -103,7 +103,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c int retry_cnt = 0; adr += chip->start; -@@ -1037,9 +1060,15 @@ +@@ -1037,9 +1060,15 @@ static int __xipram do_write_oneword(str ENABLE_VPP(map); xip_disable(map, chip, adr); retry: @@ -119,7 +119,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c map_write(map, datum, adr); chip->state = FL_WRITING; -@@ -1072,7 +1101,13 @@ +@@ -1072,7 +1101,13 @@ static int __xipram do_write_oneword(str } if (chip_ready(map, adr)) @@ -134,7 +134,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c /* Latency issues. Drop the lock, wait a while and retry */ UDELAY(map, chip, adr, 1); -@@ -1084,8 +1119,17 @@ +@@ -1084,8 +1119,17 @@ static int __xipram do_write_oneword(str /* FIXME - should have reset delay before continuing */ if (++retry_cnt <= MAX_WORD_RETRIES) @@ -153,7 +153,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c ret = -EIO; } xip_enable(map, chip, adr); -@@ -1171,7 +1215,14 @@ +@@ -1171,7 +1215,14 @@ static int cfi_amdstd_write_words(struct return 0; } } @@ -169,7 +169,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c /* We are now aligned, write as much as possible */ while(len >= map_bankwidth(map)) { map_word datum; -@@ -1181,7 +1232,15 @@ +@@ -1181,7 +1232,15 @@ static int cfi_amdstd_write_words(struct ret = do_write_oneword(map, &cfi->chips[chipnum], ofs, datum); if (ret) @@ -185,7 +185,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c ofs += map_bankwidth(map); buf += map_bankwidth(map); -@@ -1189,19 +1248,38 @@ +@@ -1189,19 +1248,38 @@ static int cfi_amdstd_write_words(struct len -= map_bankwidth(map); if (ofs >> cfi->chipshift) { @@ -224,7 +224,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c spin_lock(cfi->chips[chipnum].mutex); if (cfi->chips[chipnum].state != FL_READY) { -@@ -1221,7 +1299,11 @@ +@@ -1221,7 +1299,11 @@ static int cfi_amdstd_write_words(struct #endif goto retry1; } @@ -237,7 +237,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c tmp_buf = map_read(map, ofs + chipstart); spin_unlock(cfi->chips[chipnum].mutex); -@@ -1231,11 +1313,23 @@ +@@ -1231,11 +1313,23 @@ static int cfi_amdstd_write_words(struct ret = do_write_oneword(map, &cfi->chips[chipnum], ofs, tmp_buf); if (ret) @@ -262,7 +262,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c return 0; } -@@ -1275,6 +1369,7 @@ +@@ -1275,6 +1369,7 @@ static int __xipram do_write_buffer(stru ENABLE_VPP(map); xip_disable(map, chip, cmd_adr); @@ -270,7 +270,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c cfi_send_gen_cmd(0xAA, cfi->addr_unlock1, chip->start, map, cfi, cfi->device_type, NULL); cfi_send_gen_cmd(0x55, cfi->addr_unlock2, chip->start, map, cfi, cfi->device_type, NULL); //cfi_send_gen_cmd(0xA0, cfi->addr_unlock1, chip->start, map, cfi, cfi->device_type, NULL); -@@ -1535,6 +1630,9 @@ +@@ -1535,6 +1630,9 @@ static int __xipram do_erase_oneblock(st DECLARE_WAITQUEUE(wait, current); int ret = 0; @@ -280,7 +280,7 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c adr += chip->start; spin_lock(chip->mutex); -@@ -1613,6 +1711,9 @@ +@@ -1613,6 +1711,9 @@ static int __xipram do_erase_oneblock(st chip->state = FL_READY; put_chip(map, chip, adr); spin_unlock(chip->mutex); @@ -290,10 +290,10 @@ Index: linux-2.6.23.16/drivers/mtd/chips/cfi_cmdset_0002.c return ret; } -Index: linux-2.6.23.16/drivers/mtd/chips/map_serial.c +Index: linux-2.6.23.17/drivers/mtd/chips/map_serial.c =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/chips/map_serial.c 2008-03-15 17:03:17.874821522 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/chips/map_serial.c @@ -0,0 +1,188 @@ +/* + * Common code to handle map devices which are simple ROM @@ -483,11 +483,11 @@ Index: linux-2.6.23.16/drivers/mtd/chips/map_serial.c +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("David Woodhouse "); +MODULE_DESCRIPTION("MTD chip driver for ROM chips"); -Index: linux-2.6.23.16/drivers/mtd/maps/Kconfig +Index: linux-2.6.23.17/drivers/mtd/maps/Kconfig =================================================================== ---- linux-2.6.23.16.orig/drivers/mtd/maps/Kconfig 2008-03-15 17:03:14.374622039 +0200 -+++ linux-2.6.23.16/drivers/mtd/maps/Kconfig 2008-03-15 17:03:17.874821522 +0200 -@@ -614,5 +614,30 @@ +--- linux-2.6.23.17.orig/drivers/mtd/maps/Kconfig ++++ linux-2.6.23.17/drivers/mtd/maps/Kconfig +@@ -614,5 +614,30 @@ config MTD_PLATRAM This selection automatically selects the map_ram driver. @@ -518,10 +518,10 @@ Index: linux-2.6.23.16/drivers/mtd/maps/Kconfig + endmenu -Index: linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-atmel.c +Index: linux-2.6.23.17/drivers/mtd/maps/sl2312-flash-atmel.c =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-atmel.c 2008-03-15 17:04:02.877385981 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/maps/sl2312-flash-atmel.c @@ -0,0 +1,554 @@ +/* + * $Id: sl2312-flash-atmel.c,v 1.2 2006/06/05 02:35:57 middle Exp $ @@ -1077,10 +1077,10 @@ Index: linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-atmel.c +MODULE_AUTHOR("Plus Chen "); +MODULE_DESCRIPTION("MTD map driver for Storlink Sword boards"); + -Index: linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-cfi.c +Index: linux-2.6.23.17/drivers/mtd/maps/sl2312-flash-cfi.c =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-cfi.c 2008-03-15 17:04:09.377756409 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/maps/sl2312-flash-cfi.c @@ -0,0 +1,370 @@ +/*====================================================================== + @@ -1452,10 +1452,10 @@ Index: linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-cfi.c +MODULE_AUTHOR("Storlink Ltd"); +MODULE_DESCRIPTION("CFI map driver"); +MODULE_LICENSE("GPL"); -Index: linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-m25p80.c +Index: linux-2.6.23.17/drivers/mtd/maps/sl2312-flash-m25p80.c =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-m25p80.c 2008-03-15 17:04:15.378098557 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/maps/sl2312-flash-m25p80.c @@ -0,0 +1,498 @@ +/* + * $Id: sl2312-flash-m25p80.c,v 1.2 2006/06/02 08:46:02 middle Exp $ @@ -1955,10 +1955,10 @@ Index: linux-2.6.23.16/drivers/mtd/maps/sl2312-flash-m25p80.c +MODULE_AUTHOR("Plus Chen "); +MODULE_DESCRIPTION("MTD map driver for Storlink Sword boards"); + -Index: linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h +Index: linux-2.6.23.17/drivers/mtd/maps/sl2312_flashmap.h =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h 2008-03-15 17:03:17.874821522 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/maps/sl2312_flashmap.h @@ -0,0 +1,21 @@ +/* + * Please note that the name are used in mkflash script. Therefore @@ -1981,10 +1981,10 @@ Index: linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h + { name: "cfg", offset: 0x007D0000, size: 0x00020000, }, + { name: "FIS directory", offset: 0x007F0000, size: 0x00010000, } +}; -Index: linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h.16MB +Index: linux-2.6.23.17/drivers/mtd/maps/sl2312_flashmap.h.16MB =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h.16MB 2008-03-15 17:03:17.874821522 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/maps/sl2312_flashmap.h.16MB @@ -0,0 +1,21 @@ +/* + * Please note that the name are used in mkflash script. Therefore @@ -2007,10 +2007,10 @@ Index: linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h.16MB + { name: "CurConf", offset: 0x00F40000, size: 0x000A0000, }, + { name: "FIS directory", offset: 0x00FE0000, size: 0x00020000, } +}; -Index: linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h.8MB +Index: linux-2.6.23.17/drivers/mtd/maps/sl2312_flashmap.h.8MB =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h.8MB 2008-03-15 17:03:17.874821522 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/maps/sl2312_flashmap.h.8MB @@ -0,0 +1,21 @@ +/* + * Please note that the name are used in mkflash script. Therefore @@ -2033,11 +2033,11 @@ Index: linux-2.6.23.16/drivers/mtd/maps/sl2312_flashmap.h.8MB + { name: "CurConf", offset: 0x007C0000, size: 0x00020000, }, + { name: "FIS directory", offset: 0x007E0000, size: 0x00020000, } +}; -Index: linux-2.6.23.16/drivers/mtd/mtdchar.c +Index: linux-2.6.23.17/drivers/mtd/mtdchar.c =================================================================== ---- linux-2.6.23.16.orig/drivers/mtd/mtdchar.c 2008-03-15 17:03:14.374622039 +0200 -+++ linux-2.6.23.16/drivers/mtd/mtdchar.c 2008-03-15 17:03:17.874821522 +0200 -@@ -59,6 +59,77 @@ +--- linux-2.6.23.17.orig/drivers/mtd/mtdchar.c ++++ linux-2.6.23.17/drivers/mtd/mtdchar.c +@@ -59,6 +59,77 @@ struct mtd_file_info { enum mtd_file_modes mode; }; @@ -2115,7 +2115,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c static loff_t mtd_lseek (struct file *file, loff_t offset, int orig) { struct mtd_file_info *mfi = file->private_data; -@@ -162,13 +233,21 @@ +@@ -162,13 +233,21 @@ static ssize_t mtd_read(struct file *fil int len; char *kbuf; @@ -2138,7 +2138,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c /* FIXME: Use kiovec in 2.5 to lock down the user's buffers and pass them directly to the MTD functions */ -@@ -178,8 +257,12 @@ +@@ -178,8 +257,12 @@ static ssize_t mtd_read(struct file *fil else kbuf=kmalloc(count, GFP_KERNEL); @@ -2152,7 +2152,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c while (count) { -@@ -224,6 +307,9 @@ +@@ -224,6 +307,9 @@ static ssize_t mtd_read(struct file *fil *ppos += retlen; if (copy_to_user(buf, kbuf, retlen)) { kfree(kbuf); @@ -2162,7 +2162,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c return -EFAULT; } else -@@ -235,13 +321,19 @@ +@@ -235,13 +321,19 @@ static ssize_t mtd_read(struct file *fil count = 0; } else { @@ -2183,7 +2183,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c return total_retlen; } /* mtd_read */ -@@ -255,24 +347,40 @@ +@@ -255,24 +347,40 @@ static ssize_t mtd_write(struct file *fi int ret=0; int len; @@ -2227,7 +2227,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c while (count) { -@@ -283,6 +391,9 @@ +@@ -283,6 +391,9 @@ static ssize_t mtd_write(struct file *fi if (copy_from_user(kbuf, buf, len)) { kfree(kbuf); @@ -2237,7 +2237,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c return -EFAULT; } -@@ -323,11 +434,17 @@ +@@ -323,11 +434,17 @@ static ssize_t mtd_write(struct file *fi } else { kfree(kbuf); @@ -2255,7 +2255,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c return total_retlen; } /* mtd_write */ -@@ -381,36 +498,67 @@ +@@ -381,36 +498,67 @@ static int mtd_ioctl(struct inode *inode u_long size; struct mtd_info_user info; @@ -2326,7 +2326,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c break; } -@@ -433,7 +581,12 @@ +@@ -433,7 +581,12 @@ static int mtd_ioctl(struct inode *inode struct erase_info *erase; if(!(file->f_mode & 2)) @@ -2339,7 +2339,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c erase=kzalloc(sizeof(struct erase_info),GFP_KERNEL); if (!erase) -@@ -447,6 +600,9 @@ +@@ -447,6 +600,9 @@ static int mtd_ioctl(struct inode *inode if (copy_from_user(&erase->addr, argp, sizeof(struct erase_info_user))) { kfree(erase); @@ -2349,7 +2349,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c return -EFAULT; } erase->mtd = mtd; -@@ -484,14 +640,26 @@ +@@ -484,14 +640,26 @@ static int mtd_ioctl(struct inode *inode struct mtd_oob_buf buf; struct mtd_oob_ops ops; @@ -2379,7 +2379,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c if (!mtd->write_oob) ret = -EOPNOTSUPP; -@@ -499,8 +667,12 @@ +@@ -499,8 +667,12 @@ static int mtd_ioctl(struct inode *inode ret = access_ok(VERIFY_READ, buf.ptr, buf.length) ? 0 : EFAULT; @@ -2393,7 +2393,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c ops.ooblen = buf.length; ops.ooboffs = buf.start & (mtd->oobsize - 1); -@@ -536,19 +708,35 @@ +@@ -536,19 +708,35 @@ static int mtd_ioctl(struct inode *inode struct mtd_oob_buf buf; struct mtd_oob_ops ops; @@ -2433,7 +2433,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c ops.ooblen = buf.length; ops.ooboffs = buf.start & (mtd->oobsize - 1); -@@ -580,7 +768,12 @@ +@@ -580,7 +768,12 @@ static int mtd_ioctl(struct inode *inode struct erase_info_user info; if (copy_from_user(&info, argp, sizeof(info))) @@ -2446,7 +2446,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c if (!mtd->lock) ret = -EOPNOTSUPP; -@@ -594,7 +787,12 @@ +@@ -594,7 +787,12 @@ static int mtd_ioctl(struct inode *inode struct erase_info_user info; if (copy_from_user(&info, argp, sizeof(info))) @@ -2459,7 +2459,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c if (!mtd->unlock) ret = -EOPNOTSUPP; -@@ -629,11 +827,21 @@ +@@ -629,11 +827,21 @@ static int mtd_ioctl(struct inode *inode loff_t offs; if (copy_from_user(&offs, argp, sizeof(loff_t))) @@ -2481,7 +2481,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c break; } -@@ -642,11 +850,21 @@ +@@ -642,11 +850,21 @@ static int mtd_ioctl(struct inode *inode loff_t offs; if (copy_from_user(&offs, argp, sizeof(loff_t))) @@ -2503,7 +2503,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c break; } -@@ -654,8 +872,12 @@ +@@ -654,8 +872,12 @@ static int mtd_ioctl(struct inode *inode case OTPSELECT: { int mode; @@ -2517,7 +2517,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c mfi->mode = MTD_MODE_NORMAL; -@@ -670,7 +892,12 @@ +@@ -670,7 +892,12 @@ static int mtd_ioctl(struct inode *inode { struct otp_info *buf = kmalloc(4096, GFP_KERNEL); if (!buf) @@ -2530,7 +2530,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c ret = -EOPNOTSUPP; switch (mfi->mode) { case MTD_MODE_OTP_FACTORY: -@@ -701,12 +928,24 @@ +@@ -701,12 +928,24 @@ static int mtd_ioctl(struct inode *inode { struct otp_info info; @@ -2558,7 +2558,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c ret = mtd->lock_user_prot_reg(mtd, info.start, info.length); break; } -@@ -742,8 +981,12 @@ +@@ -742,8 +981,12 @@ static int mtd_ioctl(struct inode *inode break; case MTD_MODE_RAW: @@ -2572,7 +2572,7 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c mfi->mode = arg; case MTD_MODE_NORMAL: -@@ -766,6 +1009,10 @@ +@@ -766,6 +1009,10 @@ static int mtd_ioctl(struct inode *inode ret = -ENOTTY; } @@ -2583,11 +2583,11 @@ Index: linux-2.6.23.16/drivers/mtd/mtdchar.c return ret; } /* memory_ioctl */ -Index: linux-2.6.23.16/drivers/mtd/nand/Kconfig +Index: linux-2.6.23.17/drivers/mtd/nand/Kconfig =================================================================== ---- linux-2.6.23.16.orig/drivers/mtd/nand/Kconfig 2008-03-15 17:03:14.374622039 +0200 -+++ linux-2.6.23.16/drivers/mtd/nand/Kconfig 2008-03-15 17:03:17.874821522 +0200 -@@ -44,6 +44,13 @@ +--- linux-2.6.23.17.orig/drivers/mtd/nand/Kconfig ++++ linux-2.6.23.17/drivers/mtd/nand/Kconfig +@@ -44,6 +44,13 @@ config MTD_NAND_AUTCPU12 This enables the driver for the autronix autcpu12 board to access the SmartMediaCard. @@ -2601,10 +2601,10 @@ Index: linux-2.6.23.16/drivers/mtd/nand/Kconfig config MTD_NAND_EDB7312 tristate "Support for Cirrus Logic EBD7312 evaluation board" depends on ARCH_EDB7312 -Index: linux-2.6.23.16/drivers/mtd/nand/sl2312-flash-nand.c +Index: linux-2.6.23.17/drivers/mtd/nand/sl2312-flash-nand.c =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/nand/sl2312-flash-nand.c 2008-03-15 17:03:17.874821522 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/nand/sl2312-flash-nand.c @@ -0,0 +1,2287 @@ +/* + * drivers/mtd/sl2312.c @@ -4893,10 +4893,10 @@ Index: linux-2.6.23.16/drivers/mtd/nand/sl2312-flash-nand.c +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Alice Hennessy "); +MODULE_DESCRIPTION("Glue layer for SmartMediaCard on Toshiba RBsl2312"); -Index: linux-2.6.23.16/drivers/mtd/nand/sl2312-flash-nand.h +Index: linux-2.6.23.17/drivers/mtd/nand/sl2312-flash-nand.h =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/drivers/mtd/nand/sl2312-flash-nand.h 2008-03-15 17:04:25.878696749 +0200 +--- /dev/null ++++ linux-2.6.23.17/drivers/mtd/nand/sl2312-flash-nand.h @@ -0,0 +1,24 @@ +#ifndef SL2312_FLASH_NAND_H +#define SL2312_FLASH_NAND_H @@ -4922,10 +4922,10 @@ Index: linux-2.6.23.16/drivers/mtd/nand/sl2312-flash-nand.h + + +#endif /* SL2312_FLASH_NAND_H */ -Index: linux-2.6.23.16/include/linux/mtd/kvctl.h +Index: linux-2.6.23.17/include/linux/mtd/kvctl.h =================================================================== ---- /dev/null 1970-01-01 00:00:00.000000000 +0000 -+++ linux-2.6.23.16/include/linux/mtd/kvctl.h 2008-03-15 17:03:17.874821522 +0200 +--- /dev/null ++++ linux-2.6.23.17/include/linux/mtd/kvctl.h @@ -0,0 +1,40 @@ +#ifndef KVCTL_H +#define KVCTL_H @@ -4967,11 +4967,11 @@ Index: linux-2.6.23.16/include/linux/mtd/kvctl.h +#define VCT_VLAN 8 + +#endif -Index: linux-2.6.23.16/drivers/mtd/maps/Makefile +Index: linux-2.6.23.17/drivers/mtd/maps/Makefile =================================================================== ---- linux-2.6.23.16.orig/drivers/mtd/maps/Makefile 2008-03-15 17:03:14.374622039 +0200 -+++ linux-2.6.23.16/drivers/mtd/maps/Makefile 2008-03-15 17:03:17.874821522 +0200 -@@ -71,3 +71,7 @@ +--- linux-2.6.23.17.orig/drivers/mtd/maps/Makefile ++++ linux-2.6.23.17/drivers/mtd/maps/Makefile +@@ -71,3 +71,7 @@ obj-$(CONFIG_MTD_PLATRAM) += plat-ram.o obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o obj-$(CONFIG_MTD_MTX1) += mtx-1_flash.o obj-$(CONFIG_MTD_TQM834x) += tqm834x.o