diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-09-17 20:30:50 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-09-17 20:30:50 +0000 |
commit | 5cf642fa6f42566135daea4b983e513b1cc53413 (patch) | |
tree | d7c01db2520fcf65ffeeb56d954cd8115a5e00fb /target/linux/ar71xx | |
parent | 31020840371efe76c18fd33ed43d55c6afc6f102 (diff) |
ar71xx: ar934x_nfc: fix READ{0,1} operation on large page devices
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33450 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/ar71xx')
-rw-r--r-- | target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c | 15 |
1 files changed, 9 insertions, 6 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 65d9186d47..86899fd720 100644 --- a/target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c +++ b/target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c @@ -613,15 +613,18 @@ ar934x_nfc_cmdfunc(struct mtd_info *mtd, unsigned int command, int column, case NAND_CMD_READ0: case NAND_CMD_READ1: - if (nfc->small_page) + if (nfc->small_page) { ar934x_nfc_send_read(nfc, command, column, page_addr, mtd->writesize + mtd->oobsize, false); - else - ar934x_nfc_send_read(nfc, command, column, page_addr, - mtd->writesize, false); - nfc->rndout_page_addr = page_addr; - nfc->rndout_read_cmd = command; + } else { + ar934x_nfc_send_read(nfc, command, 0, page_addr, + mtd->writesize + mtd->oobsize, + false); + nfc->buf_index = column; + nfc->rndout_page_addr = page_addr; + nfc->rndout_read_cmd = command; + } break; case NAND_CMD_READOOB: |