mtd: nand: refactor erase_cmd() to return chip status
authorBrian Norris <computersforpeace@gmail.com>
Tue, 6 May 2014 23:02:19 +0000 (16:02 -0700)
committerBrian Norris <computersforpeace@gmail.com>
Fri, 9 May 2014 20:19:42 +0000 (13:19 -0700)
commit49c50b97b5522a987b80fbbf9d9869deee8d23b0
treeeb938dffa64256c423dce3dc2e5ff851a0111fbc
parent35fc51956b53eb52f7c4c78aa6157381196cd5ce
mtd: nand: refactor erase_cmd() to return chip status

The nand_chip::erase_cmd callback previously served a dual purpose; for
one, it allowed a per-flash-chip override, so that AG-AND devices could
use a different erase command than other NAND. These AND devices were
dropped in commit 14c6578683367b1e7af0c3c09e872b45a45183a7 (mtd: nand:
remove AG-AND support). On the other hand, some drivers (denali and
doc-g4) need to use this sort of callback to implement
controller-specific erase operations.

To make the latter operation easier for some drivers (e.g., ST's new BCH
NAND driver), it helps if the command dispatch and wait functions can be
lumped together, rather than called separately.

This patch does two things:
 1. Pull the call to chip->waitfunc() into chip->erase_cmd(), and return
    the status from this callback
 2. Rename erase_cmd() to just erase(), since this callback does a
    little more than just send a command

Signed-off-by: Brian Norris <computersforpeace@gmail.com>
Tested-by: Lee Jones <lee.jones@linaro.org>
drivers/mtd/nand/denali.c
drivers/mtd/nand/docg4.c
drivers/mtd/nand/nand_base.c
include/linux/mtd/nand.h