All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mike Rapoport <mike@compulab.co.il>
To: dwmw2@infradead.org, eric.y.miao@gmail.com
Cc: Yeasah Pell <yeasah@comrex.com>, linux-mtd@lists.infradead.org
Subject: Re: [PATCH] [MTD] [NAND] pxa3xx_nand: add single-bit error corrections reporting
Date: Mon, 13 Jul 2009 12:15:35 +0300	[thread overview]
Message-ID: <4A5AFB37.2070804@compulab.co.il> (raw)
In-Reply-To: <1246461095-13590-1-git-send-email-mike@compulab.co.il>

David, Eric
Any update on this?

Mike Rapoport wrote:
> From: Yeasah Pell <yeasah@comrex.com>
> 
> Signed-off-by: Yeasah Pell <yeasah@comrex.com>
> Signed-off-by: Mike Rapoport <mike@compulab.co.il>
> ---
>  drivers/mtd/nand/pxa3xx_nand.c |   17 ++++++++++++-----
>  1 files changed, 12 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
> index 30a8ce6..6ea520a 100644
> --- a/drivers/mtd/nand/pxa3xx_nand.c
> +++ b/drivers/mtd/nand/pxa3xx_nand.c
> @@ -102,6 +102,7 @@ enum {
>  	ERR_SENDCMD	= -2,
>  	ERR_DBERR	= -3,
>  	ERR_BBERR	= -4,
> +	ERR_SBERR	= -5,
>  };
>  
>  enum {
> @@ -564,11 +565,13 @@ static irqreturn_t pxa3xx_nand_irq(int irq, void *devid)
>  
>  	status = nand_readl(info, NDSR);
>  
> -	if (status & (NDSR_RDDREQ | NDSR_DBERR)) {
> +	if (status & (NDSR_RDDREQ | NDSR_DBERR | NDSR_SBERR)) {
>  		if (status & NDSR_DBERR)
>  			info->retcode = ERR_DBERR;
> +		else if (status & NDSR_SBERR)
> +			info->retcode = ERR_SBERR;
>  
> -		disable_int(info, NDSR_RDDREQ | NDSR_DBERR);
> +		disable_int(info, NDSR_RDDREQ | NDSR_DBERR | NDSR_SBERR);
>  
>  		if (info->use_dma) {
>  			info->state = STATE_DMA_READING;
> @@ -670,7 +673,7 @@ static void pxa3xx_nand_cmdfunc(struct mtd_info *mtd, unsigned command,
>  		if (prepare_read_prog_cmd(info, cmdset->read1, column, page_addr))
>  			break;
>  
> -		pxa3xx_nand_do_cmd(info, NDSR_RDDREQ | NDSR_DBERR);
> +		pxa3xx_nand_do_cmd(info, NDSR_RDDREQ | NDSR_DBERR | NDSR_SBERR);
>  
>  		/* We only are OOB, so if the data has error, does not matter */
>  		if (info->retcode == ERR_DBERR)
> @@ -687,7 +690,7 @@ static void pxa3xx_nand_cmdfunc(struct mtd_info *mtd, unsigned command,
>  		if (prepare_read_prog_cmd(info, cmdset->read1, column, page_addr))
>  			break;
>  
> -		pxa3xx_nand_do_cmd(info, NDSR_RDDREQ | NDSR_DBERR);
> +		pxa3xx_nand_do_cmd(info, NDSR_RDDREQ | NDSR_DBERR | NDSR_SBERR);
>  
>  		if (info->retcode == ERR_DBERR) {
>  			/* for blank page (all 0xff), HW will calculate its ECC as
> @@ -861,8 +864,12 @@ static int pxa3xx_nand_ecc_correct(struct mtd_info *mtd,
>  	 * consider it as a ecc error which will tell the caller the
>  	 * read fail We have distinguish all the errors, but the
>  	 * nand_read_ecc only check this function return value
> +	 *
> +	 * Corrected (single-bit) errors must also be noted.
>  	 */
> -	if (info->retcode != ERR_NONE)
> +	if (info->retcode == ERR_SBERR)
> +		return 1;
> +	else if (info->retcode != ERR_NONE)
>  		return -1;
>  
>  	return 0;

-- 
Sincerely yours,
Mike.

  reply	other threads:[~2009-07-13 10:04 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-01 15:11 [PATCH] [MTD] [NAND] pxa3xx_nand: add single-bit error corrections reporting Mike Rapoport
2009-07-13  9:15 ` Mike Rapoport [this message]
2009-07-13  9:48   ` Eric Miao

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A5AFB37.2070804@compulab.co.il \
    --to=mike@compulab.co.il \
    --cc=dwmw2@infradead.org \
    --cc=eric.y.miao@gmail.com \
    --cc=linux-mtd@lists.infradead.org \
    --cc=yeasah@comrex.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.