diff mbox

[3/3] mtd: nand: Drop the ->errstat() hook

Message ID 1494886663-20700-4-git-send-email-boris.brezillon@free-electrons.com
State Accepted
Commit 7d135bcced20be2b50128432c5426a7278ec4f6d
Delegated to: Boris Brezillon
Headers show

Commit Message

Boris Brezillon May 15, 2017, 10:17 p.m. UTC
TODO: add a real commit message

Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
---
 drivers/mtd/nand/nand_base.c | 16 ----------------
 include/linux/mtd/nand.h     |  5 -----
 2 files changed, 21 deletions(-)

Comments

Boris Brezillon May 17, 2017, 8:49 a.m. UTC | #1
On Tue, 16 May 2017 00:17:43 +0200
Boris Brezillon <boris.brezillon@free-electrons.com> wrote:

> TODO: add a real commit message

Duh. Forgot to add a real commit message here :-).

> 
> Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
> ---
>  drivers/mtd/nand/nand_base.c | 16 ----------------
>  include/linux/mtd/nand.h     |  5 -----
>  2 files changed, 21 deletions(-)
> 
> diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
> index 6eba5ba51c90..8dafd2a54e11 100644
> --- a/drivers/mtd/nand/nand_base.c
> +++ b/drivers/mtd/nand/nand_base.c
> @@ -2577,14 +2577,6 @@ static int nand_write_page(struct mtd_info *mtd, struct nand_chip *chip,
>  	if (nand_standard_page_accessors(&chip->ecc))
>  		chip->cmdfunc(mtd, NAND_CMD_PAGEPROG, -1, -1);
>  	status = chip->waitfunc(mtd, chip);
> -	/*
> -	 * See if operation failed and additional status checks are
> -	 * available.
> -	 */
> -	if ((status & NAND_STATUS_FAIL) && (chip->errstat))
> -		status = chip->errstat(mtd, chip, FL_WRITING, status,
> -				       page);
> -
>  	if (status & NAND_STATUS_FAIL)
>  		return -EIO;
>  
> @@ -3044,14 +3036,6 @@ int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
>  
>  		status = chip->erase(mtd, page & chip->pagemask);
>  
> -		/*
> -		 * See if operation failed and additional status checks are
> -		 * available
> -		 */
> -		if ((status & NAND_STATUS_FAIL) && (chip->errstat))
> -			status = chip->errstat(mtd, chip, FL_ERASING,
> -					       status, page);
> -
>  		/* See if block erase succeeded */
>  		if (status & NAND_STATUS_FAIL) {
>  			pr_debug("%s: failed erase, page 0x%08x\n",
> diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
> index 9ca3ad20faea..2dcdd07e7810 100644
> --- a/include/linux/mtd/nand.h
> +++ b/include/linux/mtd/nand.h
> @@ -819,9 +819,6 @@ struct nand_manufacturer_ops {
>   *			structure which is shared among multiple independent
>   *			devices.
>   * @priv:		[OPTIONAL] pointer to private chip data
> - * @errstat:		[OPTIONAL] hardware specific function to perform
> - *			additional error status checks (determine if errors are
> - *			correctable).
>   * @manufacturer:	[INTERN] Contains manufacturer information
>   */
>  
> @@ -845,8 +842,6 @@ struct nand_chip {
>  	int(*waitfunc)(struct mtd_info *mtd, struct nand_chip *this);
>  	int (*erase)(struct mtd_info *mtd, int page);
>  	int (*scan_bbt)(struct mtd_info *mtd);
> -	int (*errstat)(struct mtd_info *mtd, struct nand_chip *this, int state,
> -			int status, int page);
>  	int (*onfi_set_features)(struct mtd_info *mtd, struct nand_chip *chip,
>  			int feature_addr, uint8_t *subfeature_para);
>  	int (*onfi_get_features)(struct mtd_info *mtd, struct nand_chip *chip,
diff mbox

Patch

diff --git a/drivers/mtd/nand/nand_base.c b/drivers/mtd/nand/nand_base.c
index 6eba5ba51c90..8dafd2a54e11 100644
--- a/drivers/mtd/nand/nand_base.c
+++ b/drivers/mtd/nand/nand_base.c
@@ -2577,14 +2577,6 @@  static int nand_write_page(struct mtd_info *mtd, struct nand_chip *chip,
 	if (nand_standard_page_accessors(&chip->ecc))
 		chip->cmdfunc(mtd, NAND_CMD_PAGEPROG, -1, -1);
 	status = chip->waitfunc(mtd, chip);
-	/*
-	 * See if operation failed and additional status checks are
-	 * available.
-	 */
-	if ((status & NAND_STATUS_FAIL) && (chip->errstat))
-		status = chip->errstat(mtd, chip, FL_WRITING, status,
-				       page);
-
 	if (status & NAND_STATUS_FAIL)
 		return -EIO;
 
@@ -3044,14 +3036,6 @@  int nand_erase_nand(struct mtd_info *mtd, struct erase_info *instr,
 
 		status = chip->erase(mtd, page & chip->pagemask);
 
-		/*
-		 * See if operation failed and additional status checks are
-		 * available
-		 */
-		if ((status & NAND_STATUS_FAIL) && (chip->errstat))
-			status = chip->errstat(mtd, chip, FL_ERASING,
-					       status, page);
-
 		/* See if block erase succeeded */
 		if (status & NAND_STATUS_FAIL) {
 			pr_debug("%s: failed erase, page 0x%08x\n",
diff --git a/include/linux/mtd/nand.h b/include/linux/mtd/nand.h
index 9ca3ad20faea..2dcdd07e7810 100644
--- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h
@@ -819,9 +819,6 @@  struct nand_manufacturer_ops {
  *			structure which is shared among multiple independent
  *			devices.
  * @priv:		[OPTIONAL] pointer to private chip data
- * @errstat:		[OPTIONAL] hardware specific function to perform
- *			additional error status checks (determine if errors are
- *			correctable).
  * @manufacturer:	[INTERN] Contains manufacturer information
  */
 
@@ -845,8 +842,6 @@  struct nand_chip {
 	int(*waitfunc)(struct mtd_info *mtd, struct nand_chip *this);
 	int (*erase)(struct mtd_info *mtd, int page);
 	int (*scan_bbt)(struct mtd_info *mtd);
-	int (*errstat)(struct mtd_info *mtd, struct nand_chip *this, int state,
-			int status, int page);
 	int (*onfi_set_features)(struct mtd_info *mtd, struct nand_chip *chip,
 			int feature_addr, uint8_t *subfeature_para);
 	int (*onfi_get_features)(struct mtd_info *mtd, struct nand_chip *chip,