Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1549615 > unrolled thread

Re: [PATCH] mtd: davinci-nand: disable subpage write for davinci-nand

Started byBoris Brezillon <boris.brezillon@free-electrons.com>
First post2017-01-03 10:00 +0100
Last post2017-01-03 14:20 +0100
Articles 3 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH] mtd: davinci-nand: disable subpage write for  davinci-nand Boris Brezillon <boris.brezillon@free-electrons.com> - 2017-01-03 10:00 +0100
    Re: [PATCH] mtd: davinci-nand: disable subpage write for davinci-nand Sekhar Nori <nsekhar@ti.com> - 2017-01-03 12:40 +0100
      Re: [PATCH] mtd: davinci-nand: disable subpage write for  davinci-nand Boris Brezillon <boris.brezillon@free-electrons.com> - 2017-01-03 14:20 +0100

#1549615 — Re: [PATCH] mtd: davinci-nand: disable subpage write for davinci-nand

FromBoris Brezillon <boris.brezillon@free-electrons.com>
Date2017-01-03 10:00 +0100
SubjectRe: [PATCH] mtd: davinci-nand: disable subpage write for davinci-nand
Message-ID<sVt6N-3AE-3@gated-at.bofh.it>
Hi Sushaanth,

Sorry for the late reply, I'm dequeing old NAND related patches and
found this one.

Is this patch still needed?

On Tue, 8 Mar 2016 14:38:15 +0530
Sushaanth Srirangapathi <sushaanth.s@ti.com> wrote:

> Commit 28c015a9daabe4e ("mtd: davinci-nand: disable subpage write for
> keystone-nand") disables subpage write for Keystone SOCs due to hw
> issues.
> 
> But subpage writes doesn't work even for DaVinci SOCs due to hw issues.
> So set NAND_NO_SUBPAGE_WRITE option for all devices compatible to
> this driver.
> 
> I tested this patch using DA850 board.
> 
> Signed-off-by: Sushaanth Srirangapathi <sushaanth.s@ti.com>
> ---
>  drivers/mtd/nand/davinci_nand.c |    6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/drivers/mtd/nand/davinci_nand.c b/drivers/mtd/nand/davinci_nand.c
> index 8cb821b..466439c 100644
> --- a/drivers/mtd/nand/davinci_nand.c
> +++ b/drivers/mtd/nand/davinci_nand.c
> @@ -601,11 +601,7 @@ static struct davinci_nand_pdata
>  		    of_property_read_bool(pdev->dev.of_node,
>  			"ti,davinci-nand-use-bbt"))
>  			pdata->bbt_options = NAND_BBT_USE_FLASH;
> -
> -		if (of_device_is_compatible(pdev->dev.of_node,
> -					    "ti,keystone-nand")) {
> -			pdata->options |= NAND_NO_SUBPAGE_WRITE;
> -		}
> +		pdata->options |= NAND_NO_SUBPAGE_WRITE;
>  	}
>  
>  	return dev_get_platdata(&pdev->dev);

[toc] | [next] | [standalone]


#1549668 — Re: [PATCH] mtd: davinci-nand: disable subpage write for davinci-nand

FromSekhar Nori <nsekhar@ti.com>
Date2017-01-03 12:40 +0100
SubjectRe: [PATCH] mtd: davinci-nand: disable subpage write for davinci-nand
Message-ID<sVvBD-5vT-31@gated-at.bofh.it>
In reply to#1549615
Hi Boris,

On Tuesday 03 January 2017 02:29 PM, Boris Brezillon wrote:
> Hi Sushaanth,

Sushaanth is not with TI anymore. You might have received a bounce.

> 
> Sorry for the late reply, I'm dequeing old NAND related patches and
> found this one.
> 
> Is this patch still needed?

I dont think so. I suspect the real root cause was addressed by Karl in 
commit f6d7c1b5598b ("mtd: nand: davinci: Reinitialize the HW ECC 
engine in 4bit hwctl")

I just ran mtd_subpagetest on my da850 lcdk board and it passed[1]. If 
there are more tests to run to determine if subpage write really works, 
let me know too.

I suspect even the original workaround for keystone boards may not be 
needed after Karl's patch. I will test and send a patch dropping the 
workaround altogether if the tests succeed.

Thanks,
Sekhar

[1]
# modprobe mtd_subpagetest dev=2                                                                                        

=================================================
mtd_subpagetest: MTD device: 2
mtd_subpagetest: MTD device size 536215552, eraseblock size 131072, page size 2048, subpage size 512, count of eraseblocks 4091, pages
 per eraseblock 64, OOB size 64
mtd_test: scanning for bad eraseblocks
mtd_test: block 4087 is bad
mtd_test: block 4088 is bad
mtd_test: block 4089 is bad
mtd_test: block 4090 is bad
mtd_test: scanned 4091 eraseblocks, 4 are bad
mtd_subpagetest: writing whole device
mtd_subpagetest: written up to eraseblock 0
mtd_subpagetest: written up to eraseblock 256
mtd_subpagetest: written up to eraseblock 512
mtd_subpagetest: written up to eraseblock 768
mtd_subpagetest: written up to eraseblock 1024
mtd_subpagetest: written up to eraseblock 1280
mtd_subpagetest: written up to eraseblock 1536
mtd_subpagetest: written up to eraseblock 1792
mtd_subpagetest: written up to eraseblock 2048
mtd_subpagetest: written up to eraseblock 2304
mtd_subpagetest: written up to eraseblock 2560
mtd_subpagetest: written up to eraseblock 2816
mtd_subpagetest: written up to eraseblock 3072
mtd_subpagetest: written up to eraseblock 3328
mtd_subpagetest: written up to eraseblock 3584
mtd_subpagetest: written up to eraseblock 3840
mtd_subpagetest: written 4091 eraseblocks
mtd_subpagetest: verifying all eraseblocks
mtd_subpagetest: verified up to eraseblock 0
mtd_subpagetest: verified up to eraseblock 256
mtd_subpagetest: verified up to eraseblock 512
mtd_subpagetest: verified up to eraseblock 768
mtd_subpagetest: verified up to eraseblock 1024
mtd_subpagetest: verified up to eraseblock 1280
mtd_subpagetest: verified up to eraseblock 1536
mtd_subpagetest: verified up to eraseblock 1792
mtd_subpagetest: verified up to eraseblock 2048
mtd_subpagetest: verified up to eraseblock 2304
mtd_subpagetest: verified up to eraseblock 2560
mtd_subpagetest: verified up to eraseblock 2816
mtd_subpagetest: verified up to eraseblock 3072
mtd_subpagetest: verified up to eraseblock 3328
mtd_subpagetest: verified up to eraseblock 3584
mtd_subpagetest: verified up to eraseblock 3840
mtd_subpagetest: verified 4091 eraseblocks
mtd_subpagetest: verifying all eraseblocks for 0xff
mtd_subpagetest: verified up to eraseblock 0
mtd_subpagetest: verified up to eraseblock 256
mtd_subpagetest: verified up to eraseblock 512
mtd_subpagetest: verified up to eraseblock 768
mtd_subpagetest: verified up to eraseblock 1024
mtd_subpagetest: verified up to eraseblock 1280
mtd_subpagetest: verified up to eraseblock 1536
mtd_subpagetest: verified up to eraseblock 1792
mtd_subpagetest: verified up to eraseblock 2048
mtd_subpagetest: verified up to eraseblock 2304
mtd_subpagetest: verified up to eraseblock 2560
mtd_subpagetest: verified up to eraseblock 2816
mtd_subpagetest: verified up to eraseblock 3072
mtd_subpagetest: verified up to eraseblock 3328
mtd_subpagetest: verified up to eraseblock 3584
mtd_subpagetest: verified up to eraseblock 3840
mtd_subpagetest: verified 4091 eraseblocks
mtd_subpagetest: writing whole device
mtd_subpagetest: written up to eraseblock 0
mtd_subpagetest: written up to eraseblock 256
mtd_subpagetest: written up to eraseblock 512
mtd_subpagetest: written up to eraseblock 768
mtd_subpagetest: written up to eraseblock 1024
mtd_subpagetest: written up to eraseblock 1280
mtd_subpagetest: written up to eraseblock 1536
mtd_subpagetest: written up to eraseblock 1792
mtd_subpagetest: written up to eraseblock 2048
mtd_subpagetest: written up to eraseblock 2304
mtd_subpagetest: written up to eraseblock 2560
mtd_subpagetest: written up to eraseblock 2816
mtd_subpagetest: written up to eraseblock 3072
mtd_subpagetest: written up to eraseblock 3328
mtd_subpagetest: written up to eraseblock 3584
mtd_subpagetest: written up to eraseblock 3840
mtd_subpagetest: written 4091 eraseblocks
mtd_subpagetest: verifying all eraseblocks
mtd_subpagetest: verified up to eraseblock 0
mtd_subpagetest: verified up to eraseblock 256
mtd_subpagetest: verified up to eraseblock 512
mtd_subpagetest: verified up to eraseblock 768
mtd_subpagetest: verified up to eraseblock 1024
mtd_subpagetest: verified up to eraseblock 1280
mtd_subpagetest: verified up to eraseblock 1536
mtd_subpagetest: verified up to eraseblock 1792
mtd_subpagetest: verified up to eraseblock 2048
mtd_subpagetest: verified up to eraseblock 2304
mtd_subpagetest: verified up to eraseblock 2560
mtd_subpagetest: verified up to eraseblock 2816
mtd_subpagetest: verified up to eraseblock 3072
mtd_subpagetest: verified up to eraseblock 3328
mtd_subpagetest: verified up to eraseblock 3584
mtd_subpagetest: verified up to eraseblock 3840
mtd_subpagetest: verified 4091 eraseblocks
mtd_subpagetest: verifying all eraseblocks for 0xff
mtd_subpagetest: verified up to eraseblock 0
mtd_subpagetest: verified up to eraseblock 256
mtd_subpagetest: verified up to eraseblock 512
mtd_subpagetest: verified up to eraseblock 768
mtd_subpagetest: verified up to eraseblock 1024
mtd_subpagetest: verified up to eraseblock 1280
mtd_subpagetest: verified up to eraseblock 1536
mtd_subpagetest: verified up to eraseblock 1792
mtd_subpagetest: verified up to eraseblock 2048
mtd_subpagetest: verified up to eraseblock 2304
mtd_subpagetest: verified up to eraseblock 2560
mtd_subpagetest: verified up to eraseblock 2816
mtd_subpagetest: verified up to eraseblock 3072
mtd_subpagetest: verified up to eraseblock 3328
mtd_subpagetest: verified up to eraseblock 3584
mtd_subpagetest: verified up to eraseblock 3840
mtd_subpagetest: verified 4091 eraseblocks
mtd_subpagetest: finished with 0 errors
=================================================

[toc] | [prev] | [next] | [standalone]


#1549745

FromBoris Brezillon <boris.brezillon@free-electrons.com>
Date2017-01-03 14:20 +0100
Message-ID<sVxap-6Tb-9@gated-at.bofh.it>
In reply to#1549668
Hi Sekhar,

On Tue, 3 Jan 2017 17:07:44 +0530
Sekhar Nori <nsekhar@ti.com> wrote:

> Hi Boris,
> 
> On Tuesday 03 January 2017 02:29 PM, Boris Brezillon wrote:
> > Hi Sushaanth,  
> 
> Sushaanth is not with TI anymore. You might have received a bounce.

Indeed.

> 
> > 
> > Sorry for the late reply, I'm dequeing old NAND related patches and
> > found this one.
> > 
> > Is this patch still needed?  
> 
> I dont think so. I suspect the real root cause was addressed by Karl in 
> commit f6d7c1b5598b ("mtd: nand: davinci: Reinitialize the HW ECC 
> engine in 4bit hwctl")

Okay, cool. I'll just mark the patch as 'Superseeded' in patchwork.

> 
> I just ran mtd_subpagetest on my da850 lcdk board and it passed[1]. If 
> there are more tests to run to determine if subpage write really works, 
> let me know too.

No, that should be good.

> 
> I suspect even the original workaround for keystone boards may not be 
> needed after Karl's patch. I will test and send a patch dropping the 
> workaround altogether if the tests succeed.

Sounds good.

Thanks,

Boris

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web