diff options
author | David Woodhouse <dwmw2@infradead.org> | 2006-10-21 12:09:53 -0400 |
---|---|---|
committer | David Woodhouse <dwmw2@infradead.org> | 2006-10-21 12:48:58 -0400 |
commit | 7dcdcbef5d2b60d1db68fd2c07351f7afd8ad376 (patch) | |
tree | 8a3817d93520bf28aaea42534a953909f9bb10e3 /include/linux/mtd | |
parent | 513b046c96cc2fbce730a3474f6f7ff0c4fdd05c (diff) |
[MTD] NAND: Combined oob buffer so it's contiguous with data
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>
Diffstat (limited to 'include/linux/mtd')
-rw-r--r-- | include/linux/mtd/nand.h | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h index 70420bbae82b..6fc3e07497e0 100644 --- a/include/linux/mtd/nand.h +++ b/include/linux/mtd/nand.h | |||
@@ -286,9 +286,7 @@ struct nand_ecc_ctrl { | |||
286 | * struct nand_buffers - buffer structure for read/write | 286 | * struct nand_buffers - buffer structure for read/write |
287 | * @ecccalc: buffer for calculated ecc | 287 | * @ecccalc: buffer for calculated ecc |
288 | * @ecccode: buffer for ecc read from flash | 288 | * @ecccode: buffer for ecc read from flash |
289 | * @oobwbuf: buffer for write oob data | ||
290 | * @databuf: buffer for data - dynamically sized | 289 | * @databuf: buffer for data - dynamically sized |
291 | * @oobrbuf: buffer to read oob data | ||
292 | * | 290 | * |
293 | * Do not change the order of buffers. databuf and oobrbuf must be in | 291 | * Do not change the order of buffers. databuf and oobrbuf must be in |
294 | * consecutive order. | 292 | * consecutive order. |
@@ -296,9 +294,7 @@ struct nand_ecc_ctrl { | |||
296 | struct nand_buffers { | 294 | struct nand_buffers { |
297 | uint8_t ecccalc[NAND_MAX_OOBSIZE]; | 295 | uint8_t ecccalc[NAND_MAX_OOBSIZE]; |
298 | uint8_t ecccode[NAND_MAX_OOBSIZE]; | 296 | uint8_t ecccode[NAND_MAX_OOBSIZE]; |
299 | uint8_t oobwbuf[NAND_MAX_OOBSIZE]; | 297 | uint8_t databuf[NAND_MAX_PAGESIZE + NAND_MAX_OOBSIZE]; |
300 | uint8_t databuf[NAND_MAX_PAGESIZE]; | ||
301 | uint8_t oobrbuf[NAND_MAX_OOBSIZE]; | ||
302 | }; | 298 | }; |
303 | 299 | ||
304 | /** | 300 | /** |