mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-03 15:56:40 +07:00
mtd: nandsim: remove autoincrement code
The NAND layer always has NAND_NO_AUTOINCR set, so we will never utilize the AUTOINCR code in nandsim. We will be removing the NAND_NO_AUTOINCR option soon, and so kill this code as well. Signed-off-by: Brian Norris <computersforpeace@gmail.com> Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
This commit is contained in:
parent
edbc4540e0
commit
831d316b8b
@ -268,7 +268,6 @@ MODULE_PARM_DESC(bch, "Enable BCH ecc and set how many bits should "
|
||||
#define OPT_PAGE512 0x00000002 /* 512-byte page chips */
|
||||
#define OPT_PAGE2048 0x00000008 /* 2048-byte page chips */
|
||||
#define OPT_SMARTMEDIA 0x00000010 /* SmartMedia technology chips */
|
||||
#define OPT_AUTOINCR 0x00000020 /* page number auto incrementation is possible */
|
||||
#define OPT_PAGE512_8BIT 0x00000040 /* 512-byte page chips with 8-bit bus width */
|
||||
#define OPT_PAGE4096 0x00000080 /* 4096-byte page chips */
|
||||
#define OPT_LARGEPAGE (OPT_PAGE2048 | OPT_PAGE4096) /* 2048 & 4096-byte page chips */
|
||||
@ -594,7 +593,7 @@ static int init_nandsim(struct mtd_info *mtd)
|
||||
ns->options |= OPT_PAGE256;
|
||||
}
|
||||
else if (ns->geom.pgsz == 512) {
|
||||
ns->options |= (OPT_PAGE512 | OPT_AUTOINCR);
|
||||
ns->options |= OPT_PAGE512;
|
||||
if (ns->busw == 8)
|
||||
ns->options |= OPT_PAGE512_8BIT;
|
||||
} else if (ns->geom.pgsz == 2048) {
|
||||
@ -663,8 +662,6 @@ static int init_nandsim(struct mtd_info *mtd)
|
||||
for (i = 0; nand_flash_ids[i].name != NULL; i++) {
|
||||
if (second_id_byte != nand_flash_ids[i].id)
|
||||
continue;
|
||||
if (!(nand_flash_ids[i].options & NAND_NO_AUTOINCR))
|
||||
ns->options |= OPT_AUTOINCR;
|
||||
}
|
||||
|
||||
if (ns->busw == 16)
|
||||
@ -1936,20 +1933,8 @@ static u_char ns_nand_read_byte(struct mtd_info *mtd)
|
||||
if (ns->regs.count == ns->regs.num) {
|
||||
NS_DBG("read_byte: all bytes were read\n");
|
||||
|
||||
/*
|
||||
* The OPT_AUTOINCR allows to read next consecutive pages without
|
||||
* new read operation cycle.
|
||||
*/
|
||||
if ((ns->options & OPT_AUTOINCR) && NS_STATE(ns->state) == STATE_DATAOUT) {
|
||||
ns->regs.count = 0;
|
||||
if (ns->regs.row + 1 < ns->geom.pgnum)
|
||||
ns->regs.row += 1;
|
||||
NS_DBG("read_byte: switch to the next page (%#x)\n", ns->regs.row);
|
||||
do_state_action(ns, ACTION_CPY);
|
||||
}
|
||||
else if (NS_STATE(ns->nxstate) == STATE_READY)
|
||||
if (NS_STATE(ns->nxstate) == STATE_READY)
|
||||
switch_state(ns);
|
||||
|
||||
}
|
||||
|
||||
return outb;
|
||||
@ -2203,14 +2188,7 @@ static void ns_nand_read_buf(struct mtd_info *mtd, u_char *buf, int len)
|
||||
ns->regs.count += len;
|
||||
|
||||
if (ns->regs.count == ns->regs.num) {
|
||||
if ((ns->options & OPT_AUTOINCR) && NS_STATE(ns->state) == STATE_DATAOUT) {
|
||||
ns->regs.count = 0;
|
||||
if (ns->regs.row + 1 < ns->geom.pgnum)
|
||||
ns->regs.row += 1;
|
||||
NS_DBG("read_buf: switch to the next page (%#x)\n", ns->regs.row);
|
||||
do_state_action(ns, ACTION_CPY);
|
||||
}
|
||||
else if (NS_STATE(ns->nxstate) == STATE_READY)
|
||||
if (NS_STATE(ns->nxstate) == STATE_READY)
|
||||
switch_state(ns);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user