Patchwork [MTD,CHIPS] Add JEDEC probe support for the SST38VF6401 flash chip

login
register
mail settings
Submitter zhangyd
Date Oct. 13, 2010, 5:54 p.m.
Message ID <1286992482-6009-1-git-send-email-zhangyd6@gmail.com>
Download mbox | patch
Permalink /patch/67952/
State New
Headers show

Comments

zhangyd - Oct. 13, 2010, 5:54 p.m.
Add SST38VF6401(64Mbit) chip to jedec_probe. Sorry for the wrong description of the flash size in last patch. 

Signed-off-by: yidong zhang<zhangyd6@gmail.com>
---
 drivers/mtd/chips/jedec_probe.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
Wolfram Sang - Oct. 15, 2010, 2:01 p.m.
On Wed, Oct 13, 2010 at 01:54:42PM -0400, zhangyd wrote:
> Add SST38VF6401(64Mbit) chip to jedec_probe. Sorry for the wrong description of the flash size in last patch. 

Can you explain why CFI can't be used?

> 
> Signed-off-by: yidong zhang<zhangyd6@gmail.com>
> ---
>  drivers/mtd/chips/jedec_probe.c |   13 +++++++++++++
>  1 files changed, 13 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c
> index d72a5fb..b7a1016 100644
> --- a/drivers/mtd/chips/jedec_probe.c
> +++ b/drivers/mtd/chips/jedec_probe.c
> @@ -163,6 +163,7 @@
>  #define SST49LF030A	0x001C
>  #define SST49LF040A	0x0051
>  #define SST49LF080A	0x005B
> +#define SST38VF6401	0x536B
>  #define SST36VF3203	0x7354
>  
>  /* Toshiba */
> @@ -1569,6 +1570,18 @@ static const struct amd_flash_info jedec_table[] = {
>  		}
>  	}, {
>  		.mfr_id		= CFI_MFR_ST,
> +		.dev_id		= SST38VF6401,
> +		.name		= "SST 38VF6401",
> +		.devtypes	= CFI_DEVICETYPE_X16,
> +		.uaddr		= MTD_UADDR_0X0AAA_0x555,
> +		.dev_size	= SIZE_8MiB,
> +		.cmd_set	= P_ID_AMD_STD,
> +		.nr_regions	= 1,
> +		.regions	= {
> +			ERASEINFO(0x10000,128),
> +		}
> +	}, {
> +		.mfr_id		= CFI_MFR_ST,
>  		.dev_id		= M29F800AB,
>  		.name		= "ST M29F800AB",
>  		.devtypes	= CFI_DEVICETYPE_X16|CFI_DEVICETYPE_X8,
> -- 
> 1.7.2.3
> 
> 
> ______________________________________________________
> Linux MTD discussion mailing list
> http://lists.infradead.org/mailman/listinfo/linux-mtd/
zhangyd - Oct. 16, 2010, 6:45 a.m.
hi Sang
   According to the datasheet, the flash has no externded Query table,
so i try it in the CFI probe mode it failed. The sector-erase size
operates the whole memory, so does the block-erase size. So i use the
JEDEC probe mode. Sorry for the noise.

On Fri, Oct 15, 2010 at 10:01 PM, Wolfram Sang <w.sang@pengutronix.de> wrote:
> On Wed, Oct 13, 2010 at 01:54:42PM -0400, zhangyd wrote:
>> Add SST38VF6401(64Mbit) chip to jedec_probe. Sorry for the wrong description of the flash size in last patch.
>
> Can you explain why CFI can't be used?
>
>>
>> Signed-off-by: yidong zhang<zhangyd6@gmail.com>
>> ---
>>  drivers/mtd/chips/jedec_probe.c |   13 +++++++++++++
>>  1 files changed, 13 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c
>> index d72a5fb..b7a1016 100644
>> --- a/drivers/mtd/chips/jedec_probe.c
>> +++ b/drivers/mtd/chips/jedec_probe.c
>> @@ -163,6 +163,7 @@
>>  #define SST49LF030A  0x001C
>>  #define SST49LF040A  0x0051
>>  #define SST49LF080A  0x005B
>> +#define SST38VF6401  0x536B
>>  #define SST36VF3203  0x7354
>>
>>  /* Toshiba */
>> @@ -1569,6 +1570,18 @@ static const struct amd_flash_info jedec_table[] = {
>>               }
>>       }, {
>>               .mfr_id         = CFI_MFR_ST,
>> +             .dev_id         = SST38VF6401,
>> +             .name           = "SST 38VF6401",
>> +             .devtypes       = CFI_DEVICETYPE_X16,
>> +             .uaddr          = MTD_UADDR_0X0AAA_0x555,
>> +             .dev_size       = SIZE_8MiB,
>> +             .cmd_set        = P_ID_AMD_STD,
>> +             .nr_regions     = 1,
>> +             .regions        = {
>> +                     ERASEINFO(0x10000,128),
>> +             }
>> +     }, {
>> +             .mfr_id         = CFI_MFR_ST,
>>               .dev_id         = M29F800AB,
>>               .name           = "ST M29F800AB",
>>               .devtypes       = CFI_DEVICETYPE_X16|CFI_DEVICETYPE_X8,
>> --
>> 1.7.2.3
>>
>>
>> ______________________________________________________
>> Linux MTD discussion mailing list
>> http://lists.infradead.org/mailman/listinfo/linux-mtd/
>
> --
> Pengutronix e.K.                           | Wolfram Sang                |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (GNU/Linux)
>
> iEYEARECAAYFAky4XqcACgkQD27XaX1/VRtKRQCfemn4m3IOVP15NugnbKdkbKgR
> yzoAn2NWzpp/F1GPUO+TW3vB3j9aZR2r
> =Ak1U
> -----END PGP SIGNATURE-----
>
>

Patch

diff --git a/drivers/mtd/chips/jedec_probe.c b/drivers/mtd/chips/jedec_probe.c
index d72a5fb..b7a1016 100644
--- a/drivers/mtd/chips/jedec_probe.c
+++ b/drivers/mtd/chips/jedec_probe.c
@@ -163,6 +163,7 @@ 
 #define SST49LF030A	0x001C
 #define SST49LF040A	0x0051
 #define SST49LF080A	0x005B
+#define SST38VF6401	0x536B
 #define SST36VF3203	0x7354
 
 /* Toshiba */
@@ -1569,6 +1570,18 @@  static const struct amd_flash_info jedec_table[] = {
 		}
 	}, {
 		.mfr_id		= CFI_MFR_ST,
+		.dev_id		= SST38VF6401,
+		.name		= "SST 38VF6401",
+		.devtypes	= CFI_DEVICETYPE_X16,
+		.uaddr		= MTD_UADDR_0X0AAA_0x555,
+		.dev_size	= SIZE_8MiB,
+		.cmd_set	= P_ID_AMD_STD,
+		.nr_regions	= 1,
+		.regions	= {
+			ERASEINFO(0x10000,128),
+		}
+	}, {
+		.mfr_id		= CFI_MFR_ST,
 		.dev_id		= M29F800AB,
 		.name		= "ST M29F800AB",
 		.devtypes	= CFI_DEVICETYPE_X16|CFI_DEVICETYPE_X8,