summaryrefslogtreecommitdiff
path: root/drivers/mtd/nand
Commit message (Collapse)AuthorAge
* [MTD] Tidy bitrev usage in rtc_from4.cAndrew Morton2006-11-29
| | | | | Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD] [NAND] fix ifdef option in nand_ecc.cTimo Lindhorst2006-11-29
| | | | | | | Fix up the config option in the #ifdef statements in nand_ecc.c Signed-off-by: Timo Lindhorst <lindhors@linux.vnet.ibm.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD] [NAND] Update CAFÉ driver interrupt handler prototypeDavid Woodhouse2006-11-29
| | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD] replace kmalloc+memset with kzallocBurman Yan2006-11-28
| | | | | Signed-off-by: Yan Burman <yan_952@hotmail.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* Merge git://git.infradead.org/~dwmw2/cafe-2.6David Woodhouse2006-11-28
|\
| * [MTD] NAND: Fix ECC settings in CAFÉ controller driver.David Woodhouse2006-11-01
| | | | | | | | | | | | | | | | We were resetting cafe->ctl2 to zero after an erase (and also during a write, but it was correctly reset after that). This meant that ECC reads after an erase were failing. Doh. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Add register debugging spew option to CAFÉ driverDavid Woodhouse2006-10-31
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Use register #defines throughout CAFÉ driver, not numbersDavid Woodhouse2006-10-31
| | | | | | | | | | | | | | Also use cafe_readl() and cafe_writel() abstraction to make code slightly cleaner -- especially if we want to use it in PIO mode. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Fix timing calculation in CAFÉ debugging messageDavid Woodhouse2006-10-28
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Remove empty block ECC workaroundDavid Woodhouse2006-10-27
| | | | | | | | | | | | | | They fixed the hardware so that ECC doesn't fail on reading an empty block. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Add ECC debugging for CAFÉDavid Woodhouse2006-10-27
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] CAFÉ NAND: Add 'slowtiming' parameter, default usedma and checkecc onDavid Woodhouse2006-10-27
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Reset Café controller before initialising.David Woodhouse2006-10-27
| | | | | | | | | | | | Fixes http://dev.laptop.org/ticket/237 Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Café ECC -- remove spurious BUG_ON() in err_pos()David Woodhouse2006-10-27
| | | | | | | | | | | | | | | | Being a value which isn't in the table is a case we explicitly check for in the caller. Don't BUG_ON() because it does actually happen in practice. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Disable ECC checking on CAFÉ since it's broken for nowDavid Woodhouse2006-10-23
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: CAFÉ NAND driver cleanup, fix ECC on reading empty flashDavid Woodhouse2006-10-22
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * [MTD] NAND: Add hardware ECC correction support to CAFÉ NAND driverDavid Woodhouse2006-10-22
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| * Merge git://git.infradead.org/~dwmw2/cafe-2.6David Woodhouse2006-10-22
| |\ | | | | | | | | | | | | | | | Conflicts: drivers/mtd/nand/Kconfig
| | * [MTD NAND] OLPC CAFÉ driver updateDavid Woodhouse2006-10-20
| | | | | | | | | | | | | | | | | | | | | | | | - Fix OOB handling, bad block table marker placement - Some cleanups, enable runtime-optional debugging - Allow BBT stuff to be skipped Signed-off-by: David Woodhouse <dwmw2@infradead.org>
| | * [MTD NAND] Initial import of CAFÉ NAND driver.David Woodhouse2006-10-06
| | | | | | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] [NAND] remove len/ooblen confusion.Vitaly Wool2006-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As was discussed between Ricard Wanderlöf, David Woodhouse, Artem Bityutskiy and me, the current API for reading/writing OOB is confusing. The thing that introduces confusion is the need to specify ops.len together with ops.ooblen for reads/writes that concern only OOB not data area. So, ops.len is overloaded: when ops.datbuf != NULL it serves to specify the length of the data read, and when ops.datbuf == NULL, it serves to specify the full OOB read length. The patch inlined below is the slightly updated version of the previous patch serving the same purpose, but with the new Artem's comments taken into account. Artem, BTW, thanks a lot for your valuable input! Signed-off-by: Vitaly Wool <vwool@ru.mvista.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] [NAND] Fix endianess bug in ndfc.cStefan Roese2006-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The writel() call accidentally clears all bits in the NDFC_CCR register (endianess problem). Now __raw_writel() is used instead. Tested on Bamboo with NAND on chip select 0 and chip select 1. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] [NAND] rtc_from4.c: use lib/bitrev.cAdrian Bunk2006-11-28
| | | | | | | | | | | | | | | | | | | | | | | | This patch converts drivers/mtd/nand/rtc_from4.c to use the new lib/bitrev.c Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] NAND: Fix nand_default_mark_blockbad() when flash-based BBT disabledRicard Wanderlöf2006-10-26
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a flash-based BBT is not used, nand_default_mark_blockbad() is supposed to mark the block bad in the oob. However, it sets the wrong length variable so that no bad block marker is in fact written. This patch attempts to rectify that. (As note, it seems to be that logically, it shouldn't be necessary to set both length variables, as one appears to be for the main buffer, and one for the oob buffer, but this is how it is done in several places, including the code for the mtd character device MEMWRITEOOB and MEMREADOOB ioctls. I'm not sure if this is a temporary solution during some rework of the mtd infrastructure, or whether there is a deeper thought here.) Signed-off-by: Ricard Wanderlöf <ricardw@axis.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | [MTD] NAND: Correct setting of chip->oob_poi OOB bufferDavid Woodhouse2006-10-22
| | | | | | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | [MTD] NAND: Combined oob buffer so it's contiguous with dataDavid Woodhouse2006-10-21
| | | | | | | | | | | | | | | | | | | | Ditch the separate oobrbuf and oobwbuf fields from the chip buffers, and use only a single buffer immediately after the data. This accommodates NAND controllers such as the OLPC CAFÉ chip, which can't do scatter/gather DMA so needs the OOB buffer to be contiguous with the data, for both read and write. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | Merge branch 'master' of ↵David Woodhouse2006-10-21
|\ \ | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
| * | [PATCH] mtd: remove several bogus casts to void * in iounmap() argumentAl Viro2006-10-10
| | | | | | | | | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | | [MTD] NAND: nandsim: support subpage writeArtem Bityutskiy2006-10-21
| | | | | | | | | | | | | | | | | | | | | | | | As flash cannot do 0->1 bit transitions when programming, do not do this in the simulator too. This makes nandsim able to accept subpage writes. Signed-off-by: Artem Bityutskiy <dedekind@infradead.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] core: trivial comments fixArtem Bityutskiy2006-10-21
| | | | | | | | | | | | | | | Signed-off-by: Artem Bityutskiy <dedekind@infradead.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] NAND: nandsim coding style fixVijay Kumar2006-10-21
| | | | | | | | | | | | | | | | | | | | | | | | Removes line break after return type in function definitions, to be consistent with the Linux coding style. Signed-off-by: Vijay Kumar <vijaykumar@bravegnu.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] NAND: nandsim page-wise allocation (2/2)Vijay Kumar2006-10-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For page wise allocation, an array of flash page pointers is allocated during initialization. The flash pages are themselves allocated when a write occurs to the page. The flash pages are deallocated when they are erased. Signed-off-by: Vijay Kumar <vijaykumar@bravegnu.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] NAND: nandsim page-wise allocation (1/2)Vijay Kumar2006-10-21
| | | | | | | | | | | | | | | | | | | | | | | | This patch removes code that does chip mapping. The chip mapping code is no longer used. Signed-off-by: Vijay Kumar <vijaykumar@bravegnu.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | | [MTD] NAND: AT91 NAND driverAndrew Victor2006-10-21
|/ / | | | | | | | | | | | | | | | | | | This version only differs from version posted by Savin Zlobec (20 Jun 2006) in that the AT91RM9200-specific chip-select / bus setup code has been moved from the at91_nand.c driver into the processor-specific file. From: Savin Zlobec <savin@epico.si> Signed-off-by: Andrew Victor <andrew@sanpeople.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | Fix several typos in drivers/Matt LaPlante2006-10-03
| | | | | | | | Signed-off-by: Adrian Bunk <bunk@stusta.de>
* | [MTD] Cleanup of 'ioremap balanced with iounmap for drivers/mtd subsystem'Amol Lad2006-10-02
|/ | | | | | | | | | 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: Amol Lad <amol@verismonetworks.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD NAND] Allow override of page read and write functions.David Woodhouse2006-09-25
| | | | | | | | - 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: David Woodhouse <dwmw2@infradead.org>
* [MTD NAND] Allocate chip->buffers separately to allow it to be overriddenDavid Woodhouse2006-09-25
| | | | | | In particular, the board driver might need it to be DMAable. Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD NAND] Split nand_scan() into two parts; allow board driver to interveneDavid Woodhouse2006-09-25
| | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD NAND] Export nand_wait_ready() for use by board driversDavid Woodhouse2006-09-25
| | | | Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD NAND] Fix in typo ndfc.c causing wrong ECC layoutFrank Haverkamp2006-09-22
| | | | | | | Due to this typo, a wrong ECC layout table is chosen. Signed-off-by: Frank Haverkamp <haver@vnet.ibm.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* ioremap balanced with iounmap for drivers/mtd subsystemAmol Lad2006-09-22
| | | | | | | | | | | | | 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: Amol Lad <amol@verismonetworks.com> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* [MTD NAND] Remove old code in au1550nd.cMichal Piotrowski2006-09-22
| | | | | | Signed-off-by: Michal Piotrowski <michal.k.k.piotrowski@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* Merge branch 'master' of ↵David Woodhouse2006-08-30
|\ | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
| * [PATCH] MTD NAND: Fix ams-delta after core conversionJonathan McDowell2006-08-27
| | | | | | | | | | | | | | | | | | | | | | 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: Jonathan McDowell <noodles@earth.li> Acked-by: David Woodhouse <dwmw2@infradead.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| * [PATCH] mtd corruption fixRichard Purdie2006-08-27
| | | | | | | | | | | | | | | | | | | | | | | | 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: Richard Purdie <rpurdie@rpsys.net> Cc: David Woodhouse <dwmw2@infradead.org> Acked-by: Josh Boyer <jwboyer@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
* | [MTD NAND] Fix lookup error in nand_get_flash_type()David Woodhouse2006-07-15
| | | | | | | | | | Spotted by liyu <liyu@ccoss.com.cn> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | MTD: [NAND] Fix the sharpsl driver after breakage from a core conversionRichard Purdie2006-07-15
| | | | | | | | | | | | | | | | The CNE bits are inverted on the device and writeb function is missing a NOT operation. Signed-off-by: Richard Purdie <rpurdie@rpsys.net> Signed-off-by: David Woodhouse <dwmw2@infradead.org>
* | [MTD] NAND: OOB buffer offset fixupsVitaly Wool2006-07-11
| | | | | | | | | | | | | | | | | | | | | | 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: Thomas Gleixner <tglx@linutronix.de>
* | [PATCH] [MTD] NAND: fix dead URL in KconfigArtem B. Bityutskiy2006-07-05
|/ | | | Signed-off-by: Artem B. Bityutskiy <dedekind@infradead.org>