- 04 10月, 2006 1 次提交
-
-
由 Matt LaPlante 提交于
Signed-off-by: NAdrian Bunk <bunk@stusta.de>
-
- 02 10月, 2006 1 次提交
-
-
由 Amol Lad 提交于
Updated version of patch, in response to comments from Francois Romieu <romieu@fr.zoreil.com> Remove gratuitous casts from iounmap and initialisation of variables. Signed-off-by: NAmol Lad <amol@verismonetworks.com> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 26 9月, 2006 4 次提交
-
-
由 David Woodhouse 提交于
- allow high-level nand_write_page() function to be overridden - likewise low-level write_page_raw() and read_page_raw() functions - Clean up the abuse of chip->ecc.{write,read}_page() with MTD_OOB_RAW Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 David Woodhouse 提交于
In particular, the board driver might need it to be DMAable. Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 David Woodhouse 提交于
Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 David Woodhouse 提交于
Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 22 9月, 2006 3 次提交
-
-
由 Frank Haverkamp 提交于
Due to this typo, a wrong ECC layout table is chosen. Signed-off-by: NFrank Haverkamp <haver@vnet.ibm.com> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 Amol Lad 提交于
ioremap must be balanced by an iounmap and failing to do so can result in a memory leak. Tested (compilation only) with: - allmodconfig - Modifying drivers/mtd/maps/Kconfig and drivers/mtd/nand/Kconfig to make sure that the changed file is compiling without warning Signed-off-by: NAmol Lad <amol@verismonetworks.com> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 Michal Piotrowski 提交于
Signed-off-by: NMichal Piotrowski <michal.k.k.piotrowski@gmail.com> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 17 9月, 2006 1 次提交
-
-
由 Vitaly Wool 提交于
In the case of data-pad-ecc-pad-data... layout the oob start position has to be sizeof(data) in nand_write_oob_syndrom(). In nand_fill_oob() we need to copy to buf + buffer offset instead of buf + write offset. Signed-off-by: NVitaly Wool <vwool@ru.mvista.com> Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
-
- 28 8月, 2006 2 次提交
-
-
由 Jonathan McDowell 提交于
The recent hwctrl core conversion for MTD NAND devices broke the Amstrad Delta driver. This fixes it up and uses the existing control line defines rather than unclear magic numbers. Signed-off-by: NJonathan McDowell <noodles@earth.li> Acked-by: NDavid Woodhouse <dwmw2@infradead.org> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
-
由 Richard Purdie 提交于
Read the return value before we release the nand device otherwise the value can become corrupted by another user of chip->ops, ultimately resulting in filesystem corruption. Signed-off-by: NRichard Purdie <rpurdie@rpsys.net> Cc: David Woodhouse <dwmw2@infradead.org> Acked-by: NJosh Boyer <jwboyer@gmail.com> Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
-
- 15 7月, 2006 2 次提交
-
-
由 David Woodhouse 提交于
Spotted by liyu <liyu@ccoss.com.cn> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 Richard Purdie 提交于
The CNE bits are inverted on the device and writeb function is missing a NOT operation. Signed-off-by: NRichard Purdie <rpurdie@rpsys.net> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 11 7月, 2006 1 次提交
-
-
由 Vitaly Wool 提交于
In the case of data-pad-ecc-pad-data... layout the oob start position has to be sizeof(data) in nand_write_oob_syndrom(). In nand_fill_oob() we need to copy to buf + buffer offset instead of buf + write offset. From: Vitaly Wool <vwool@ru.mvista.com> Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 05 7月, 2006 1 次提交
-
-
由 Artem B. Bityutskiy 提交于
Signed-off-by: NArtem B. Bityutskiy <dedekind@infradead.org>
-
- 01 7月, 2006 1 次提交
-
-
由 Jörn Engel 提交于
Signed-off-by: NJörn Engel <joern@wohnheim.fh-wedel.de> Signed-off-by: NAdrian Bunk <bunk@stusta.de>
-
- 30 6月, 2006 1 次提交
-
-
由 Thomas Gleixner 提交于
Remove the not longer supported NO_VIRTBLOCKS flag and remove an unused variable while at it. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 29 6月, 2006 1 次提交
-
-
由 Randy Dunlap 提交于
Fix all kernel-doc warnings in MTD headers and source files: - add some missing struct fields; - correct some function parameter names; - use kernel-doc format for function doc. headers; - nand_ecc.c contains only exported interfaces, no internal ones; Signed-off-by: NRandy Dunlap <rdunlap@xenotime.net> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 28 6月, 2006 2 次提交
-
-
由 Thomas Gleixner 提交于
The other way round works not really well with boards which have a static NAND chipselect. Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 Petr Stetiar 提交于
I was unable to compile ts7250.c after your refactor commit, it's a typo probably. -- ynezz From: Petr Stetiar <ynezz@true.cz> Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 27 6月, 2006 1 次提交
-
-
由 Ben Dooks 提交于
Add support for both the S3C2412 and S3C2412 Samsung SoCs to the increasingly mis-named s3c2410.c driver. This currently only supports SLC ECCs, and a chip on nFCE0. Signed-off-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 22 6月, 2006 2 次提交
-
-
由 Thomas Gleixner 提交于
The rework of the command handling in the nand driver led to wrong address setting in the command control function. Use the correct address again. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Ben Dooks 提交于
Convert the use of printk() to the correct dev_info/dev_err functions Signed-off-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 21 6月, 2006 4 次提交
-
-
由 Savin Zlobec 提交于
The oob fixups broke a return value and missed one patch from the Mailing List. Signed-off-by: NSavin Zlobec <savin@epico.si> Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Thomas Gleixner 提交于
Following problems are addressed: - wrong status caused early break out of nand_wait() - removed the bogus status check in nand_wait() which is a relict of the abandoned support for interrupted erase. - status check moved to the correct place in read_oob - oob support for syndrom based ecc with strange layouts - use given offset in the AUTOOOB based oob operations Partially based on a patch from Vitaly Vool <vwool@ru.mvista.com> Thanks to Savin Zlobec <savin@epico.si> for tracking down the status problem. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Vitaly Wool 提交于
In nand_read_page_syndrome/nand_write_page_syndrome the calculation of the remaining oob length which is not used by the prepad/ecc/postpad areas is wrong. Signed-off-by: NVitaly Wool <vwool@ru.mvista.com> Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Thomas Gleixner 提交于
Remove the remains of a broken merge. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 19 6月, 2006 2 次提交
-
-
由 Ben Dooks 提交于
Fix unused variables and commenting since tglx's new NAND updates Signed-off-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 Ben Dooks 提交于
Signed-off-by: NBen Dooks <ben-linux@fluff.org> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 10 6月, 2006 1 次提交
-
-
由 David Woodhouse 提交于
Fix the control bit handling so it even looks like it might work, too. Bad tglx. No biscuit. Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 30 5月, 2006 2 次提交
-
-
由 Andrew Morton 提交于
drivers/mtd/nand/nand_base.c: In function 'nand_transfer_oob': drivers/mtd/nand/nand_base.c:909: warning: comparison of distinct pointer types lacks a cast drivers/mtd/nand/nand_base.c: In function 'nand_do_read_oob': drivers/mtd/nand/nand_base.c:1097: error: 'len' undeclared (first use in this function) drivers/mtd/nand/nand_base.c:1097: error: (Each undeclared identifier is reported only once drivers/mtd/nand/nand_base.c:1097: error: for each function it appears in.) drivers/mtd/nand/nand_base.c: In function 'nand_fill_oob': drivers/mtd/nand/nand_base.c:1411: warning: comparison of distinct pointer types lacks a cast Signed-off-by: NAndrew Morton <akpm@osdl.org> Signed-off-by: NThomas Gleixner <tglx@linutronix.de> Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
由 Thomas Gleixner 提交于
The raw read/write access to NAND (without ECC) has been changed in the NAND rework. Expose the new way - setting the file mode via ioctl - to userspace. Also allow to read out the ecc statistics information so userspace tools can see that bitflips happened and whether errors where correctable or not. Also expose the number of bad blocks for the partition, so nandwrite can check if the data fits into the parition before writing to it. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
- 29 5月, 2006 6 次提交
-
-
由 Thomas Gleixner 提交于
Return -EUCLEAN on read when a bitflip was detected and corrected, so the clients can react and eventually copy the affected block to a spare one. Make all in kernel users aware of the change. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Thomas Gleixner 提交于
Hopefully the last iteration on this! The handling of out of band data on NAND was accompanied by tons of fruitless discussions and halfarsed patches to make it work for a particular problem. Sufficiently annoyed by I all those "I know it better" mails and the resonable amount of discarded "it solves my problem" patches, I finally decided to go for the big rework. After removing the _ecc variants of mtd read/write functions the solution to satisfy the various requirements was to refactor the read/write _oob functions in mtd. The major change is that read/write_oob now takes a pointer to an operation descriptor structure "struct mtd_oob_ops".instead of having a function with at least seven arguments. read/write_oob which should probably renamed to a more descriptive name, can do the following tasks: - read/write out of band data - read/write data content and out of band data - read/write raw data content and out of band data (ecc disabled) struct mtd_oob_ops has a mode field, which determines the oob handling mode. Aside of the MTD_OOB_RAW mode, which is intended to be especially for diagnostic purposes and some internal functions e.g. bad block table creation, the other two modes are for mtd clients: MTD_OOB_PLACE puts/gets the given oob data exactly to/from the place which is described by the ooboffs and ooblen fields of the mtd_oob_ops strcuture. It's up to the caller to make sure that the byte positions are not used by the ECC placement algorithms. MTD_OOB_AUTO puts/gets the given oob data automaticaly to/from the places in the out of band area which are described by the oobfree tuples in the ecclayout data structre which is associated to the devicee. The decision whether data plus oob or oob only handling is done depends on the setting of the datbuf member of the data structure. When datbuf == NULL then the internal read/write_oob functions are selected, otherwise the read/write data routines are invoked. Tested on a few platforms with all variants. Please be aware of possible regressions for your particular device / application scenario Disclaimer: Any whining will be ignored from those who just contributed "hot air blurb" and never sat down to tackle the underlying problem of the mess in the NAND driver grown over time and the big chunk of work to fix up the existing users. The problem was not the holiness of the existing MTD interfaces. The problems was the lack of time to go for the big overhaul. It's easy to add more mess to the existing one, but it takes alot of effort to go for a real solution. Improvements and bugfixes are welcome! Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Thomas Gleixner 提交于
The nand_oobinfo structure is not fitting the newer error correction demands anymore. Replace it by struct nand_ecclayout and fixup the users all over the place. Keep the nand_oobinfo based ioctl for user space compability reasons. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Thomas Gleixner 提交于
The info structure for out of band data was copied into the mtd structure. Make it a pointer and remove the ability to set it from userspace. The position of ecc bytes is defined by the hardware and should not be changed by software. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 Thomas Gleixner 提交于
The platform structure was lacking an oobinfo field. The NDFC driver had some remains from another tree. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-
由 David Woodhouse 提交于
Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
-
- 27 5月, 2006 1 次提交
-
-
由 Thomas Gleixner 提交于
We have a type pointer. Make use of it instead of the error prone nand_ids[i] reference. The NAND driver used to set default name settings from the chip ID string for the device. The feature got lost during the rework. Add it back. Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
-