summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-09-17 20:30:51 +0000
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>2012-09-17 20:30:51 +0000
commit56caae5b72e0f3c99cdddacf3425a1c0216110b2 (patch)
tree8b0d3cec63287f3ed3f24041f23dd781b0872052
parent5cf642fa6f42566135daea4b983e513b1cc53413 (diff)
ar71xx: ar934x_nfc: fix RNDOUT operation
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33451 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c b/target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c
index 86899fd720..d889c70b02 100644
--- a/target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c
+++ b/target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c
@@ -643,10 +643,14 @@ ar934x_nfc_cmdfunc(struct mtd_info *mtd, unsigned int command, int column,
break;
case NAND_CMD_RNDOUT:
+ if (WARN_ON(nfc->small_page))
+ break;
+
/* emulate subpage read */
- ar934x_nfc_send_read(nfc, nfc->rndout_read_cmd, column,
+ ar934x_nfc_send_read(nfc, nfc->rndout_read_cmd, 0,
nfc->rndout_page_addr,
- mtd->writesize, false);
+ mtd->writesize + mtd->oobsize, false);
+ nfc->buf_index = column;
break;
case NAND_CMD_ERASE1: