ar71xx: ar934x_nfc: fix RNDOUT operation
authorjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 17 Sep 2012 20:30:51 +0000 (20:30 +0000)
committerjuhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 17 Sep 2012 20:30:51 +0000 (20:30 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@33451 3c298f89-4303-0410-b956-a3cf2f4a3e73

target/linux/ar71xx/files/drivers/mtd/nand/ar934x_nfc.c

index 86899fd..d889c70 100644 (file)
@@ -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: