[U-Boot] [PATCH 07/19] mtd: pxa3xx_nand: Increase the initial chunk size

Stefan Roese sr at denx.de
Wed Sep 19 12:31:00 UTC 2018


On 29.08.2018 10:56, kostap at marvell.com wrote:
> From: Ofer Heifetz <oferh at marvell.com>
> 
> The chunk size represents the size of the data chunks, which
> is used by the controllers that allow to split transferred data.
> 
> However, the initial chunk size is used in a non-split way,
> during device identification. Therefore, it must be large enough
> for all the NAND commands issued during device identification.
> This includes NAND_CMD_PARAM which was recently changed to
> transfer up to 2048 bytes (for the redundant parameter pages).
> 
> Thus, the initial chunk size should be 2048 as well.
> 
> On Armada 370/XP platforms (NFCv2) booted without the keep-config
> devicetree property, this commit fixes a timeout on the NAND_CMD_PARAM
> command:
> 
>    [..]
>    pxa3xx-nand f10d0000.nand: This platform can't do DMA on this device
>    pxa3xx-nand f10d0000.nand: Wait time out!!!
>    nand: device found, Manufacturer ID: 0x2c, Chip ID: 0x38
>    nand: Micron MT29F8G08ABABAWP
>    nand: 1024 MiB, SLC, erase size: 512 KiB, page size: 4096, OOB size: 224
> 
> This commit is taken from Linux:
> 'commit c7f00c29aa8'
> ("mtd: pxa3xx_nand: Increase the initial chunk size")
> 
> Signed-off-by: Chris Packham <judge.packham at gmail.com>
> Signed-off-by: Ofer Heifetz <oferh at marvell.com>
> Reviewed-by: Igal Liberman <igall at marvell.com>
> Cc: Stefan Roese <sr at denx.de>
> Cc: Simon Glass <sjg at chromium.org>
> ---
>   drivers/mtd/nand/pxa3xx_nand.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/nand/pxa3xx_nand.c b/drivers/mtd/nand/pxa3xx_nand.c
> index 575fdd2..835b419 100644
> --- a/drivers/mtd/nand/pxa3xx_nand.c
> +++ b/drivers/mtd/nand/pxa3xx_nand.c
> @@ -1376,7 +1376,7 @@ static int pxa3xx_nand_scan(struct mtd_info *mtd)
>   		goto KEEP_CONFIG;
>   
>   	/* Set a default chunk size */
> -	info->chunk_size = 512;
> +	info->chunk_size = PAGE_CHUNK_SIZE;
>   
>   	ret = pxa3xx_nand_sensing(host);
>   	if (ret) {
> 

Applied to u-boot-marvell/master

Thanks,
Stefan


More information about the U-Boot mailing list