aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd
diff options
context:
space:
mode:
authorNicolas Ferre <nicolas.ferre@atmel.com>2011-04-01 10:40:44 -0400
committerArtem Bityutskiy <Artem.Bityutskiy@nokia.com>2011-04-01 09:44:32 -0400
commit9d51567e47a0d84f6b6e7751a4ea4f710cdcbbdf (patch)
tree08cfcbd8004fb25929486e7127635a78c924113c /drivers/mtd
parentcb457a4ddd4eeac9c81792a1e6a5d59b1b44abe1 (diff)
mtd: atmel_nand: modify test case for using DMA operations
We have better performances not using DMA for oob operations. Modify size test so that it is using DMA for size greater than oobsize. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com>
Diffstat (limited to 'drivers/mtd')
-rw-r--r--drivers/mtd/nand/atmel_nand.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/mtd/nand/atmel_nand.c b/drivers/mtd/nand/atmel_nand.c
index f254fa636afc..e9fdbe46b247 100644
--- a/drivers/mtd/nand/atmel_nand.c
+++ b/drivers/mtd/nand/atmel_nand.c
@@ -280,7 +280,8 @@ static void atmel_read_buf(struct mtd_info *mtd, u8 *buf, int len)
280 struct nand_chip *chip = mtd->priv; 280 struct nand_chip *chip = mtd->priv;
281 struct atmel_nand_host *host = chip->priv; 281 struct atmel_nand_host *host = chip->priv;
282 282
283 if (use_dma && len >= mtd->oobsize) 283 if (use_dma && len > mtd->oobsize)
284 /* only use DMA for bigger than oob size: better performances */
284 if (atmel_nand_dma_op(mtd, buf, len, 1) == 0) 285 if (atmel_nand_dma_op(mtd, buf, len, 1) == 0)
285 return; 286 return;
286 287
@@ -295,7 +296,8 @@ static void atmel_write_buf(struct mtd_info *mtd, const u8 *buf, int len)
295 struct nand_chip *chip = mtd->priv; 296 struct nand_chip *chip = mtd->priv;
296 struct atmel_nand_host *host = chip->priv; 297 struct atmel_nand_host *host = chip->priv;
297 298
298 if (use_dma && len >= mtd->oobsize) 299 if (use_dma && len > mtd->oobsize)
300 /* only use DMA for bigger than oob size: better performances */
299 if (atmel_nand_dma_op(mtd, (void *)buf, len, 0) == 0) 301 if (atmel_nand_dma_op(mtd, (void *)buf, len, 0) == 0)
300 return; 302 return;
301 303