[PATCH] MTD: NAND: Select timings for Kioxia TH58NVG3S0HBAI4

Miquel Raynal miquel.raynal at bootlin.com
Fri Apr 29 01:16:38 PDT 2022


Hi Rickard,

rickaran at axis.com wrote on Fri, 29 Apr 2022 10:05:49 +0200:

> From: Rickard x Andersson <rickaran at axis.com>
> 
> Add timings for Kioxia/Toshiba TH58NVG3S0HBAI4. Timings
> for this memory matches the timings selected for
> TH58NVG2S3HBAI4.
> 
> This patch increases eraseblock write speed from 5248 KiB/s
> to 6864 KiB/s and erase block read speed from 8542 KiB/s
> to 18360 KiB/s
> 
> Tested on i.MX6SX.

Please change the title to something like:
"mtd: rawnand: kioxia: Add support for TH58NVG3S0HBAI4"

And we'll be good.

> 
> Signed-off-by: Rickard x Andersson <rickaran at axis.com>
> ---
>  drivers/mtd/nand/raw/nand_ids.c     | 3 +++
>  drivers/mtd/nand/raw/nand_toshiba.c | 6 ++++--
>  2 files changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/mtd/nand/raw/nand_ids.c b/drivers/mtd/nand/raw/nand_ids.c
> index d64adbd1ce6b..88c2440b47d8 100644
> --- a/drivers/mtd/nand/raw/nand_ids.c
> +++ b/drivers/mtd/nand/raw/nand_ids.c
> @@ -61,6 +61,9 @@ struct nand_flash_dev nand_flash_ids[] = {
>  	{"TH58NVG2S3HBAI4 4G 3.3V 8-bit",
>  		{ .id = {0x98, 0xdc, 0x91, 0x15, 0x76} },
>  		  SZ_2K, SZ_512, SZ_128K, 0, 5, 128, NAND_ECC_INFO(8, SZ_512) },
> +	{"TH58NVG3S0HBAI4 8G 3.3V 8-bit",
> +		{ .id = {0x98, 0xd3, 0x91, 0x26, 0x76} },
> +		  SZ_4K, SZ_1K, SZ_256K, 0, 5, 256, NAND_ECC_INFO(8, SZ_512)},
>  
>  	LEGACY_ID_NAND("NAND 4MiB 5V 8-bit",   0x6B, 4, SZ_8K, SP_OPTIONS),
>  	LEGACY_ID_NAND("NAND 4MiB 3,3V 8-bit", 0xE3, 4, SZ_8K, SP_OPTIONS),
> diff --git a/drivers/mtd/nand/raw/nand_toshiba.c b/drivers/mtd/nand/raw/nand_toshiba.c
> index cf4f37959421..d3d34d71921f 100644
> --- a/drivers/mtd/nand/raw/nand_toshiba.c
> +++ b/drivers/mtd/nand/raw/nand_toshiba.c
> @@ -287,8 +287,10 @@ static int toshiba_nand_init(struct nand_chip *chip)
>  	if (!strncmp("TC58NVG0S3E", chip->parameters.model,
>  		     sizeof("TC58NVG0S3E") - 1))
>  		tc58nvg0s3e_init(chip);
> -	if (!strncmp("TH58NVG2S3HBAI4", chip->parameters.model,
> -		     sizeof("TH58NVG2S3HBAI4") - 1))
> +	if ((!strncmp("TH58NVG2S3HBAI4", chip->parameters.model,
> +		     sizeof("TH58NVG2S3HBAI4") - 1)) ||
> +	    (!strncmp("TH58NVG3S0HBAI4", chip->parameters.model,
> +		     sizeof("TH58NVG3S0HBAI4") - 1)))
>  		th58nvg2s3hbai4_init(chip);
>  
>  	return 0;


Thanks,
Miquèl



More information about the linux-mtd mailing list